Memory의 종류 및 고려해야 할 점
1. 전원을 차단 시 특성에 의한 구분
1) 지워지는 것
- RAM: Random Access Memory
2) 지워지지 않는 것
- ROM: Read Only Memory
2. 세부 종류
1) RAM
SRAM
2) ROM
Flash
EEPROM
3. 메모리가 필요한 예시
1) 전원이 꺼져도 없어지지 않아야 한다: 코드
2) 프로그램 실행: 실제 실행되는 Binary -> 코드가 변환하여 Upload
3) 프로그램 실행 시 사용되고, 전원이 꺼져도 없어지지 않아야 하는것: Setting 값 등
-> 설명: 코드는 전원이 꺼져도 없어지지 않아야 하니까 ROM 의 한 종류인 Flash 에 저장이 된다. 그리고 전원이 들어오면 실행이 되어야 하기 때문에 이 코드를 RAM Memory 에 올리고 MCU 가 실행 된다. 보통은 RAM 영역에서 실행하고 전원을 끄면 RAM의 내용이 지워지면 되지만 Setting 값 들(모니터의 밝기 등)은 저장되어 있는 것이 고객이 사용하기에 편리하기 때문에 이런 특성을 가진 변수를 저장할 때는 ROM의 한 종류인 EEPROM을 사용한다. EEPROM은 같은 ROM인 Flash에 비해 read/write 속도가 느리고 쓰는 횟수도 제한되어(10만번) 있다.
4. 실제 사용하고 싶은 MCU 를 선택 할 때 고려할 것
- 사용할 코드의 크기 -> Flash
- 실제 프로그램에 실행 시 RAM에 올릴 코드의 크기 -> SRAM
- 전원이 꺼져도 계속 값이 유지되어야 하는 값들 -> EEPROM
-> 동일 Family 의 MCU 라도 메모리 크기에 의한 Chip 이 따로 있는 이유이다.
참조: http://www.icbanq.com/pbloger/board_View.aspx?number=965
SRAM 은 DRAM에 비하여 5배 빠르며 비싸다.
Static의 의미는 전기를 주는 한 데이터가 지워지지 않는다는 의미이며, Dynamic은 1초마다 refresh(Capacitor에 전자를 채워 주는 것)를 해 줘야 데이터가 유지된다.
보통 MCU의 RAM에 SRAM만 있는 이유는 속도 때문이라고 생각한다.
참조: http://yeslab.tistory.com/20
용량이 큰 경우에는 돈이 중요하기 때문이다.
참조: http://terms.naver.com/entry.nhn?docId=1180951&cid=40942&categoryId=32832
flash 와 EEPROM의 비교
flash 는 싸며 빠르며 큰 block 단위로 지우고 쓸 수 있다.
EERPOM은 상대적으로 비싸며 느리며 작은 block 단위로 지우고 쓸 수 있다.
적은 크기의 데이터를 쓴다면 EEPROM 이 맞고 큰 크기의 데이터가 필요하며 flash 가 맞다.
flash 안에서도 program flash, data flash 를 나누어서 쓰고 있는데 말 그대로 프로그램 code가 저장되는 곳이 program flash 이며 사용할 데이터(setting 값 같은) 를 저장하는 곳이 data flash 이다.
EEPROM, program flash, data flash 중 어떤 것을 선택할지는 기능과 가격을 고려해서 사요할 것이며 유사 프로젝트에서 경험적으로 진행 할 것이라고 생각한다.
그리고 ROM(Read Only Memory) write 의 횟수가 적다는 의미이지(주로 사용하는 기능이 Read) write가 안된다는 말이 아니다.
참조1/2: https://en-sg.knowledgebase.renesas.com/English_Content/MCUMPU/Basic_Information/What_is_the_difference_between_%22program_ROM%22_and_%22data_flash%22%3F
참조2/2: https://en.wikipedia.org/wiki/Flash_memory
EEPROM 크기가 작기 때문에 필요한 경우가 많은데 가격이 비싸다 그래서 가격이 싼 flash memory를 EEPROM 과 같이 쓰기 위해서 emulation을 한다. 문제는 flash가 하나의 큰 블럭 단위로 지우고 쓰기 때문에 EEPROM 과 같이 작은 단위의 블록으로 활용하려면 이를 위한 알고리즘이 필요하다. 결국 flash memory를 하나의 블럭을 전부 쓴 다음에만 지우는 것이 필요하게 된다.
참조1/2: https://www.ecnmag.com/article/2007/09/benefits-flash-eeprom-re-programming-end-application-becomes-easy
참조2/2: https://electronics.stackexchange.com/questions/258851/flash-eeprom-emulation
DDR 도 RAM 으로 사용하는 메모리의 한 종류
Program Flash, Data Flash, SRAM 으로 기본 메모리가 이루어져 있고
이 중 Flash 에서 Flash NVM(64KB), SRAM 중에서 Flash RAM(4KB) 을 사용하여 EEPROM Emulation 을 진행한다 이렇게 되면 EEPROM 을 10년 사용할 수 있게 된다.
2017년 4월 28일 금요일
2017년 4월 23일 일요일
Image Process Pipeline
Image Sensor 에서 이미지를 획득(Acquisition) 한 다음 이미지 프로세싱을 수행하고 이 이미지 프로세싱을 나열한 것이 pipeline 이다. 이 pipeline 이 지나면 최종 이미지(YUV 이미지?)가 생성된다.
So what purpose does ISP have? Well, pixels are sensitive to light between some set of wavelengths, essentially they’re color agnostic.
ISP 의 목적은 무엇인가? pixel은 빛에 민감하다(관련된 특성은 빛 파장이며, 이 때 색은 감지하지 못한다(agnostic, 불가지론의).)
The way to get a color image out is to put a filter on top, usually a bayer pattern color filter, then interpolate the color of the pixels adjacent.
색을 얻는 방법은 필터를 센서 위에 두는 것이다, 보통 베이어 패턴의 색 필터를 사용한다. 그 후에는 interpolate로 주변 픽셀의 색을 구한다. (한 픽셀은 R, G, B 중 한가지만 얻을 수 있기 때문에)
Your 8 MP CMOS doesn’t sense red green and blue for each pixel, it senses one color for each, then ISP guesses the color based on what’s next to it. This is called demosaicing, and it’s probably the primary job of ISP, and there are many secret sauce methods to computing this interpolated image.
8메가의 CMOS 센서는 빨간색, 녹색, 파란색을 각 픽셀에서 얻지 못한다. 하나가지 색만 감지해 낼 수 있다. 그리고 ISP는 주변의 색을 추측 해 낸다. 이것을 demosic 한다고 한다. 이것이 ISP의 가장 기본적인 일이다. 그리고 ISP는 이 interpolate 된 이미지를 가지고 많은 일을 한다.
In addition ISP does all the other housekeeping, it controls autofocus, exposure, and white balance for the camera system.
ISP는 autofocus, exposure, white balance 도 한다.
Recently correcting for lens imperfections like vignetting or color shading imparted by the imperfect lens system (which you’ll add right back in with instagram, you heathen) has been added, along with things like HDR recombining, noise reduction, other filtering, face or object detection, and conversion between color spaces.
최근에는 lens의 불완전함(비네팅, 컬러 쉐이딩 - 렌즈의 불완전함 때문에 생긴) 을 바로 잡기도 하며 HDR recombining, noise reduction, 다른 filtering, 얼굴 인식, 물체 인식, 색 공간간의변환 등도 수행 합니다.
There’s variance between the features that ISP does, but this is really the controller for getting that bayer data into a workable image array.
ISP 에서 하는 일은 ISP의 종류에 따라 다양 하지만, bayer를 사용 가능한 image array 로 만든 다음 그것을 조작 하는 것임은 틀림 없습니다.
참조
http://www.anandtech.com/show/6777/understanding-camera-optics-smartphone-camera-trends/4
https://www.einfochips.com/blog/consumer-electronics/a-peek-inside-your-camera-i-image-signal-processing-isp-pipeline.html
https://www.einfochips.com/blog/consumer-electronics/a-peek-inside-your-camera-ii-image-sensor-modules.html
So what purpose does ISP have? Well, pixels are sensitive to light between some set of wavelengths, essentially they’re color agnostic.
ISP 의 목적은 무엇인가? pixel은 빛에 민감하다(관련된 특성은 빛 파장이며, 이 때 색은 감지하지 못한다(agnostic, 불가지론의).)
The way to get a color image out is to put a filter on top, usually a bayer pattern color filter, then interpolate the color of the pixels adjacent.
색을 얻는 방법은 필터를 센서 위에 두는 것이다, 보통 베이어 패턴의 색 필터를 사용한다. 그 후에는 interpolate로 주변 픽셀의 색을 구한다. (한 픽셀은 R, G, B 중 한가지만 얻을 수 있기 때문에)
Your 8 MP CMOS doesn’t sense red green and blue for each pixel, it senses one color for each, then ISP guesses the color based on what’s next to it. This is called demosaicing, and it’s probably the primary job of ISP, and there are many secret sauce methods to computing this interpolated image.
8메가의 CMOS 센서는 빨간색, 녹색, 파란색을 각 픽셀에서 얻지 못한다. 하나가지 색만 감지해 낼 수 있다. 그리고 ISP는 주변의 색을 추측 해 낸다. 이것을 demosic 한다고 한다. 이것이 ISP의 가장 기본적인 일이다. 그리고 ISP는 이 interpolate 된 이미지를 가지고 많은 일을 한다.
In addition ISP does all the other housekeeping, it controls autofocus, exposure, and white balance for the camera system.
ISP는 autofocus, exposure, white balance 도 한다.
Recently correcting for lens imperfections like vignetting or color shading imparted by the imperfect lens system (which you’ll add right back in with instagram, you heathen) has been added, along with things like HDR recombining, noise reduction, other filtering, face or object detection, and conversion between color spaces.
최근에는 lens의 불완전함(비네팅, 컬러 쉐이딩 - 렌즈의 불완전함 때문에 생긴) 을 바로 잡기도 하며 HDR recombining, noise reduction, 다른 filtering, 얼굴 인식, 물체 인식, 색 공간간의변환 등도 수행 합니다.
There’s variance between the features that ISP does, but this is really the controller for getting that bayer data into a workable image array.
ISP 에서 하는 일은 ISP의 종류에 따라 다양 하지만, bayer를 사용 가능한 image array 로 만든 다음 그것을 조작 하는 것임은 틀림 없습니다.
참조
http://www.anandtech.com/show/6777/understanding-camera-optics-smartphone-camera-trends/4
https://www.einfochips.com/blog/consumer-electronics/a-peek-inside-your-camera-i-image-signal-processing-isp-pipeline.html
https://www.einfochips.com/blog/consumer-electronics/a-peek-inside-your-camera-ii-image-sensor-modules.html
Image Sensor
Image Processing 을 이해하기 위한 Image Sensor 종류 확인
보통 CMOS 센서를 쓰고, 빛의 양(회색 빛)을 숫자로 받을 수 있으며 색을 확인하기 위하여 Bayer filter 를 사용하여 interpolation 을 하면 digitize(숫자화, 여기서는 양자화 까지 포함?) 된, matrix 형태의 이미지를 받을 수있다.
궁금한 것은 sensor 의 셋팅을 통하여 센서에서 받는 이미지의 값이 달라지고 이것이 최종 이미지 품질을 변화시킬 텐데
sensor 셋팅을 통해서 할 수있는 일들이 무엇인지 궁금하다. 왜냐하면 이미지 프로세싱과 구분이 잘 안되기 때문이다.
아래 내용 참조: https://en.wikipedia.org/wiki/Image_sensor
An image sensor or imaging sensor is a sensor that detects and conveys the information that constitutes an image. It does so by converting the variable attenuation of light waves (as they pass through or reflect off objects) into signals, small bursts of current that convey the information. The waves can be light or other electromagnetic radiation. Image sensors are used in electronic imaging devices of both analog and digital types, which include digital cameras, camera modules, medical imaging equipment, night vision equipment such as thermal imaging devices, radar, sonar, and others. As technology changes, digital imaging tends to replace analog imaging.
이미지 센서 혹은 이미징 센서는 이미지 정보를 감지하고 전달한다. 빛 파장의 가변감쇄를 통하여(통과 시키거나 반사하면서) 시그널이나, 적은 저항으로 이미지 정보를 저장한다. 그 파자은 빛이나 다른 전자기복사가 될 수 있다. 이미지 센서는 전자 이미지 장치(아날로그, 디지털 타입 모두)에 사용된다. 디지털 카메라, 카메라 모듈, 의료 이미징 장비, 야간 투시경 장비(열 감지 장치, 레이다, 음향포정장치 등)에 사용된다. 기술이 변화하면서 디지털 이미징은 아날로그 이미징으로 옮겨가고 있다.
Early analog sensors for visible light were video camera tubes. Currently, used types are semiconductor charge-coupled devices (CCD) or active pixel sensors in complementary metal–oxide–semiconductor (CMOS) or N-type metal-oxide-semiconductor (NMOS, Live MOS) technologies. Analog sensors for invisible radiation tend to involve vacuum tubes of various kinds. Digital sensors include flat panel detectors.
초기 사람에게 보이는 영역(가시광)을 위한 아날로그 센서는 비디오 카메라 튜브 였습니다. 현재 사용되는 센서의 타입은 반도체 CCD(charge-coupled devices)나 active Pixel sensor인 CMOS(complementary metal–oxide–semiconductor) 혹은 NMOS(N-type metal-oxide-semiconductor) 기술 입니다. 보이지 않는 영역을 위한 아날로그 센서는 다양한 vaccum tube를 포함하고 있습니다. 디지털 센서는 평평한 판넬 감지기를 포함합니다.
CCD vs CMOS technology
Today, most digital cameras use a CMOS sensor, because CMOS sensors perform better than CCDs. An example is the fact that they incorporate an integrated circuit, helping reduce costs. CCD is still in use for cheap low entry cameras, but weak in burst mode.[1] Both types of sensor accomplish the same task of capturing light and converting it into electrical signals.
오늘, 대부분의 디지털 카메라는 CMOS 센서를 사용한다. 왜냐하면 CMOS 센서는 CCD 보다 나은 성능을 내기 때문이다(-.-;). 예를 들면 CMOS는 가격을 줄이는 데 도움이 되는 집적회로를 포함하고 있다. CCD는 보통 싼 기본기능이 탑재된 카메라에 쓰인다. 하지만 독점 방식에 약하다. 두개의 (센서)타입 모두 빛을 캡쳐해서 전자 시그널로 변환하는 기능을 수행한다.
Each cell of a CCD image sensor is an analog device. When light strikes the chip it is held as a small electrical charge in each photo sensor. The charges in the line of pixels nearest to the (one or more) output amplifiers are amplified and output, then each line of pixels shifts its charges one line closer to the amplifier(s), filling the empty line closest to the amplifiers(s). This process is then repeated until all the lines of pixels have had their charge amplified and output.[2]
CCD 이미지 센서의 각 셀은 아날로그 장치이다. 빛이 센서의 개별 칩(픽셀)에 부딧힐 때 작은 전하가 생긴다. 아웃풋 증폭기와 가까운 row 픽셀 라인의 전하들은 증폭되고 아웃풋 된다(?) 그리고 각 픽셀 라인은 그 전하를 가장 가까운 빈 라인을 채우면서 한 라인 가까운 증폭기에 시프트 시킨다. 이프로세스는 모든 픽셀 라인이 전하로 채워질 때까지 계속된다.
A CMOS image sensor has an amplifier for each pixel compared to the few amplifiers of a CCD. This results in less area for the capture of photons than a CCD, but this problem has been overcome by using microlenses in front of each photodiode, which focus light into the photodiode that would have otherwise hit the amplifier and not be detected.[3] Some CMOS imaging sensors also use Back-side illumination to increase the number of photons that hit the photodiode.
CMOS 이미지 센서는 각 픽셀에 증폭기가 달려있어 상대적으로 적은 CCD 와 비교된다. 이 차이가 적은 포톤을 잡는 특징을 만들었지만, 이 문제는 각 포토다이오드 앞에 빛을 포토다이오드에 포커스 하게 해주는 마이크로렌즈를 사용함으로써 빛이 증폭기를 비춰서 디텍트 되지 않을수 있는 위험을 없애 주었다. 일부 CMOS 이미지 센서는 뒷면 조명을 사용하여 포토 다이오드를 치는 포톤의 수를 증가시켜 주었다.(?)
CMOS sensors can potentially be implemented with fewer components, use less power, and/or provide faster readout than CCD sensors.[4] They are also less vulnerable to static electricity discharges.
CMOS 센서는 CCD보다 잠재적으로 적은 수, 적은 파워 그리고 빠른 해독이 가능하다. 그리고 정전기에도 덜 연약하다.
Another hybrid CCD/CMOS architecture, sold under the name "sCMOS," consists of CMOS readout integrated circuits (ROICs) that are bump bonded to a CCD imaging substrate – a technology that was developed for infrared staring arrays and now adapted to silicon-based detector technology.[5] Another approach is to utilize the very fine dimensions available in modern CMOS technology to implement a CCD like structure entirely in CMOS technology. This can be achieved by separating individual poly-silicon gates by a very small gap. These hybrid sensors are still in the research phase and can potentially harness the benefits of both CCD and CMOS imagers.[6]
또 다른 CCD/CMOS 를 조합한 구조는, 'sCMOS' 라고 하며, CMOS 해독 집적회로(ROICs) 가 CCD 이미지 기판에 붙어 있다 - 이 기술은 적외선 응시 배열 때문에 만들어 졌으며 지금은 실리콘 기반의 탐지 기술에도 적용 되고 있다. ...
Performance
There are many parameters that can be used to evaluate the performance of an image sensor, including dynamic range, signal-to-noise ratio, and low-light sensitivity. For sensors of comparable types, the signal-to-noise ratio and dynamic range improve as the size increases.
Color separation
There are several main types of color image sensors, differing by the type of color-separation mechanism:
color 를 sensing 하기 위하면 몇가지 다른 방법이 있다.
1) Bayer filter sensor,
low-cost and most common, using a color filter array that passes red, green, or blue light to selected pixel sensors, forming interlaced grids sensitive to red, green, and blue – the missing color samples are interpolated using a demosaicing algorithm. In order to avoid interpolated color information, techniques like color co-site sampling use a piezo mechanism to shift the color sensor in pixel steps. The Bayer filter sensors also include back-illuminated sensors, where the light enters the sensitive silicon from the opposite side of where the transistors and metal wires are, such that the metal connections on the devices side are not an obstacle for the light, and the efficiency is higher.[7][8]
2) Foveon X3 sensor,
using an array of layered pixel sensors, separating light via the inherent wavelength-dependent absorption property of silicon, such that every location senses all three color channels.
3) 3CCD,
using three discrete image sensors, with the color separation done by a dichroic prism.
보통 CMOS 센서를 쓰고, 빛의 양(회색 빛)을 숫자로 받을 수 있으며 색을 확인하기 위하여 Bayer filter 를 사용하여 interpolation 을 하면 digitize(숫자화, 여기서는 양자화 까지 포함?) 된, matrix 형태의 이미지를 받을 수있다.
궁금한 것은 sensor 의 셋팅을 통하여 센서에서 받는 이미지의 값이 달라지고 이것이 최종 이미지 품질을 변화시킬 텐데
sensor 셋팅을 통해서 할 수있는 일들이 무엇인지 궁금하다. 왜냐하면 이미지 프로세싱과 구분이 잘 안되기 때문이다.
아래 내용 참조: https://en.wikipedia.org/wiki/Image_sensor
An image sensor or imaging sensor is a sensor that detects and conveys the information that constitutes an image. It does so by converting the variable attenuation of light waves (as they pass through or reflect off objects) into signals, small bursts of current that convey the information. The waves can be light or other electromagnetic radiation. Image sensors are used in electronic imaging devices of both analog and digital types, which include digital cameras, camera modules, medical imaging equipment, night vision equipment such as thermal imaging devices, radar, sonar, and others. As technology changes, digital imaging tends to replace analog imaging.
이미지 센서 혹은 이미징 센서는 이미지 정보를 감지하고 전달한다. 빛 파장의 가변감쇄를 통하여(통과 시키거나 반사하면서) 시그널이나, 적은 저항으로 이미지 정보를 저장한다. 그 파자은 빛이나 다른 전자기복사가 될 수 있다. 이미지 센서는 전자 이미지 장치(아날로그, 디지털 타입 모두)에 사용된다. 디지털 카메라, 카메라 모듈, 의료 이미징 장비, 야간 투시경 장비(열 감지 장치, 레이다, 음향포정장치 등)에 사용된다. 기술이 변화하면서 디지털 이미징은 아날로그 이미징으로 옮겨가고 있다.
Early analog sensors for visible light were video camera tubes. Currently, used types are semiconductor charge-coupled devices (CCD) or active pixel sensors in complementary metal–oxide–semiconductor (CMOS) or N-type metal-oxide-semiconductor (NMOS, Live MOS) technologies. Analog sensors for invisible radiation tend to involve vacuum tubes of various kinds. Digital sensors include flat panel detectors.
초기 사람에게 보이는 영역(가시광)을 위한 아날로그 센서는 비디오 카메라 튜브 였습니다. 현재 사용되는 센서의 타입은 반도체 CCD(charge-coupled devices)나 active Pixel sensor인 CMOS(complementary metal–oxide–semiconductor) 혹은 NMOS(N-type metal-oxide-semiconductor) 기술 입니다. 보이지 않는 영역을 위한 아날로그 센서는 다양한 vaccum tube를 포함하고 있습니다. 디지털 센서는 평평한 판넬 감지기를 포함합니다.
CCD vs CMOS technology
Today, most digital cameras use a CMOS sensor, because CMOS sensors perform better than CCDs. An example is the fact that they incorporate an integrated circuit, helping reduce costs. CCD is still in use for cheap low entry cameras, but weak in burst mode.[1] Both types of sensor accomplish the same task of capturing light and converting it into electrical signals.
오늘, 대부분의 디지털 카메라는 CMOS 센서를 사용한다. 왜냐하면 CMOS 센서는 CCD 보다 나은 성능을 내기 때문이다(-.-;). 예를 들면 CMOS는 가격을 줄이는 데 도움이 되는 집적회로를 포함하고 있다. CCD는 보통 싼 기본기능이 탑재된 카메라에 쓰인다. 하지만 독점 방식에 약하다. 두개의 (센서)타입 모두 빛을 캡쳐해서 전자 시그널로 변환하는 기능을 수행한다.
Each cell of a CCD image sensor is an analog device. When light strikes the chip it is held as a small electrical charge in each photo sensor. The charges in the line of pixels nearest to the (one or more) output amplifiers are amplified and output, then each line of pixels shifts its charges one line closer to the amplifier(s), filling the empty line closest to the amplifiers(s). This process is then repeated until all the lines of pixels have had their charge amplified and output.[2]
CCD 이미지 센서의 각 셀은 아날로그 장치이다. 빛이 센서의 개별 칩(픽셀)에 부딧힐 때 작은 전하가 생긴다. 아웃풋 증폭기와 가까운 row 픽셀 라인의 전하들은 증폭되고 아웃풋 된다(?) 그리고 각 픽셀 라인은 그 전하를 가장 가까운 빈 라인을 채우면서 한 라인 가까운 증폭기에 시프트 시킨다. 이프로세스는 모든 픽셀 라인이 전하로 채워질 때까지 계속된다.
A CMOS image sensor has an amplifier for each pixel compared to the few amplifiers of a CCD. This results in less area for the capture of photons than a CCD, but this problem has been overcome by using microlenses in front of each photodiode, which focus light into the photodiode that would have otherwise hit the amplifier and not be detected.[3] Some CMOS imaging sensors also use Back-side illumination to increase the number of photons that hit the photodiode.
CMOS 이미지 센서는 각 픽셀에 증폭기가 달려있어 상대적으로 적은 CCD 와 비교된다. 이 차이가 적은 포톤을 잡는 특징을 만들었지만, 이 문제는 각 포토다이오드 앞에 빛을 포토다이오드에 포커스 하게 해주는 마이크로렌즈를 사용함으로써 빛이 증폭기를 비춰서 디텍트 되지 않을수 있는 위험을 없애 주었다. 일부 CMOS 이미지 센서는 뒷면 조명을 사용하여 포토 다이오드를 치는 포톤의 수를 증가시켜 주었다.(?)
CMOS sensors can potentially be implemented with fewer components, use less power, and/or provide faster readout than CCD sensors.[4] They are also less vulnerable to static electricity discharges.
CMOS 센서는 CCD보다 잠재적으로 적은 수, 적은 파워 그리고 빠른 해독이 가능하다. 그리고 정전기에도 덜 연약하다.
Another hybrid CCD/CMOS architecture, sold under the name "sCMOS," consists of CMOS readout integrated circuits (ROICs) that are bump bonded to a CCD imaging substrate – a technology that was developed for infrared staring arrays and now adapted to silicon-based detector technology.[5] Another approach is to utilize the very fine dimensions available in modern CMOS technology to implement a CCD like structure entirely in CMOS technology. This can be achieved by separating individual poly-silicon gates by a very small gap. These hybrid sensors are still in the research phase and can potentially harness the benefits of both CCD and CMOS imagers.[6]
또 다른 CCD/CMOS 를 조합한 구조는, 'sCMOS' 라고 하며, CMOS 해독 집적회로(ROICs) 가 CCD 이미지 기판에 붙어 있다 - 이 기술은 적외선 응시 배열 때문에 만들어 졌으며 지금은 실리콘 기반의 탐지 기술에도 적용 되고 있다. ...
Performance
There are many parameters that can be used to evaluate the performance of an image sensor, including dynamic range, signal-to-noise ratio, and low-light sensitivity. For sensors of comparable types, the signal-to-noise ratio and dynamic range improve as the size increases.
Color separation
There are several main types of color image sensors, differing by the type of color-separation mechanism:
color 를 sensing 하기 위하면 몇가지 다른 방법이 있다.
1) Bayer filter sensor,
low-cost and most common, using a color filter array that passes red, green, or blue light to selected pixel sensors, forming interlaced grids sensitive to red, green, and blue – the missing color samples are interpolated using a demosaicing algorithm. In order to avoid interpolated color information, techniques like color co-site sampling use a piezo mechanism to shift the color sensor in pixel steps. The Bayer filter sensors also include back-illuminated sensors, where the light enters the sensitive silicon from the opposite side of where the transistors and metal wires are, such that the metal connections on the devices side are not an obstacle for the light, and the efficiency is higher.[7][8]
2) Foveon X3 sensor,
using an array of layered pixel sensors, separating light via the inherent wavelength-dependent absorption property of silicon, such that every location senses all three color channels.
3) 3CCD,
using three discrete image sensors, with the color separation done by a dichroic prism.
2017년 4월 22일 토요일
Video compression picture types(I, P, B frames)
계기: i frame 과 p frame 이 무엇이고 그 차이점을 이해하기 하기 위하여
I‑frame (Intra-coded picture)
사진의 모든 정보, P-frame과 B-frame은 이미지의 일부(압축된)만 가지고 있으므로 I-frame에 비해 크기가 작다.
P-frame (Predicted picture)
이전 이미지에서 변경된 정보만을 가지고 있는 frame. delta-frames 라고도 부른다.
B-frame(Bi-predictive picture)
지금, 이전, 그리고 다음의 프레임의 다른 점을 저장하여 더(P-frame 보다?) 공간을 줄이는 것
참조: https://en.wikipedia.org/wiki/Video_compression_picture_types
I‑frame (Intra-coded picture)
사진의 모든 정보, P-frame과 B-frame은 이미지의 일부(압축된)만 가지고 있으므로 I-frame에 비해 크기가 작다.
P-frame (Predicted picture)
이전 이미지에서 변경된 정보만을 가지고 있는 frame. delta-frames 라고도 부른다.
B-frame(Bi-predictive picture)
지금, 이전, 그리고 다음의 프레임의 다른 점을 저장하여 더(P-frame 보다?) 공간을 줄이는 것
참조: https://en.wikipedia.org/wiki/Video_compression_picture_types
VGA와 HD의 차이점
VGA: Video Graphics Array
HD: High Definition
풀HD는 :1080i/p (1920*1080)의 픽셜갯수를 갖은 영상!!
HD는 : 720i/p (1280* 720)의 픽셜의 갯수를 갖은 영상!!
VGA는: (640*480 ) 의 픽셜의 갯수를 갖은 영상이라고 생각하면 됩니다
Video Connector 종류
참조: http://www.bobaedream.co.kr/board/bulletin/view.php?code=tour&No=410315
HD: High Definition
풀HD는 :1080i/p (1920*1080)의 픽셜갯수를 갖은 영상!!
HD는 : 720i/p (1280* 720)의 픽셜의 갯수를 갖은 영상!!
VGA는: (640*480 ) 의 픽셜의 갯수를 갖은 영상이라고 생각하면 됩니다
Video Connector 종류
참조: http://www.bobaedream.co.kr/board/bulletin/view.php?code=tour&No=410315
HDR 과 SDR
HDR: High Dynamic Range
SDR: Standard Dynamic Range
Dynamic Range: ratio between the largest and smallest values that a certain quantity can assume.
SDR: the dynamic range of images/rendering/video using a conventional gamma curve.
참조: http://communityforums.rogers.com/t5/blogs/blogarticlepage/blog-id/CommunityBlog/article-id/806
conventional: 전통적인
gamma correction: 목적은 인간 시각의 비선형성에 맞추어 정보를 부호화하려는 것이므로, 많은 경우 감마 부호화(gamma encoding)라는 표현이 더 적합하다. 인간 시각은 카메라의 다이나믹 레인지보다 훨씬 높은 명암차이를 감지할 수 있으며 색상이나 해상도차이에 비해 명암의 차이에 민감하다. 디스플레이 장치의 발전에 따라서 다이나믹 레인지를 보다 잘 표현하기 위해서 기존의 영상 시스템의 활용성을 높이면서 시각에 민감한 부분의 데이터를 보다 효율적으로 압축 전달하기 위한 방향으로 gamma encoding이 개발, 발전 되고 있다.
참조
1) https://en.wikipedia.org/wiki/Gamma_correction
2) https://ko.wikipedia.org/wiki/%EA%B0%90%EB%A7%88_%EB%B3%B4%EC%A0%95
SDR: Standard Dynamic Range
Dynamic Range: ratio between the largest and smallest values that a certain quantity can assume.
SDR: the dynamic range of images/rendering/video using a conventional gamma curve.
참조: http://communityforums.rogers.com/t5/blogs/blogarticlepage/blog-id/CommunityBlog/article-id/806
conventional: 전통적인
gamma correction: 목적은 인간 시각의 비선형성에 맞추어 정보를 부호화하려는 것이므로, 많은 경우 감마 부호화(gamma encoding)라는 표현이 더 적합하다. 인간 시각은 카메라의 다이나믹 레인지보다 훨씬 높은 명암차이를 감지할 수 있으며 색상이나 해상도차이에 비해 명암의 차이에 민감하다. 디스플레이 장치의 발전에 따라서 다이나믹 레인지를 보다 잘 표현하기 위해서 기존의 영상 시스템의 활용성을 높이면서 시각에 민감한 부분의 데이터를 보다 효율적으로 압축 전달하기 위한 방향으로 gamma encoding이 개발, 발전 되고 있다.
참조
1) https://en.wikipedia.org/wiki/Gamma_correction
2) https://ko.wikipedia.org/wiki/%EA%B0%90%EB%A7%88_%EB%B3%B4%EC%A0%95
2017년 4월 17일 월요일
Simplicity(C 언어) 사용 시 Terminology
대상: Chip C8051-F560
CLI: Command Line Interface
HCI: Human–computer interaction
SMbus: The System Management Bus (abbreviated to SMBus or SMB) is a single-ended simple two-wire bus for the purpose of lightweight communication.
숫자 뒤의 'U'
C 언어에서 기본으로 int 이므로 뒤에 U 를 쓰면 unsigned 가 된다.
참조: http://stackoverflow.com/questions/9029974/what-does-u-mean-after-a-number
Interrupt
TCON: Timer Control
Edge/Level triggered interrupt 두 방법의 차이
Edge Trigger 는 rising 혹은 falling edge 가 발생할 때 interrupt 가 발생되는 것
Level Trigger 는 특정 Level이 될 때 interrupt 가 발생되는 것
참조: https://electronics.stackexchange.com/questions/21886/what-does-edge-triggered-and-level-triggered-mean
IT01CF: INT0/INT1 Configuration
IT01CF = 0x0E -> (00001110)
IN0PL: 1 => INT0 Polarity, 1: INT0 input is active high
IN0SL: INT0 Port Pin Selection Bits
IN0SL[2:0]:110 => 110: Select P1.6
Timer
When the 8-bit count overflows, the output signal is asserted. The output signal may thereby trigger an interrupt at the processor or set a bit that the processor can read. To restart the timer, software reloads the count register with the same or a different initial value.
참조: http://www.embedded.com/electronics-blogs/beginner-s-corner/4024440/Introduction-to-Counter-Timers
vector
http://www.keil.com/forum/6306/
https://en.wikipedia.org/wiki/Interrupt_vector_table
SFR
Special Function Register:
SFR Page: pages when reading or modifying SFRs.
SFR Page[7:0] = 00001111 (control_page)
SFR Page[7:0] = 00000000 (active_page)
PCA (Programmable Counter Array)
PCA 주요특징.
• 16-bit time base.
• Programmable clock divisor and clock source selection.
• Up to three independently-configurable channels
• 8, 9, 10, 11 and 16-bit PWM modes (edge-aligned operation).
• Frequency output mode.
• Capture on rising, falling or any edge.
• Compare function for arbitrary waveform generation.
• Software timer (internal compare) mode.
• Integrated watchdog timer.
참조: http://igotit.tistory.com/296
Push-Pull/Open Drain 출력 설정
This answer is general to processors and peripherals, and has an SRAM specific comment at the end, which is probably pertinent to your specific RAM and CPU.
Output pins can be driven in three different modes:
• open drain - a transistor connects to low and nothing else
• open drain, with pull-up - a transistor connects to low, and a resistor connects to high
• push-pull - a transistor connects to high, and a transistor connects to low (only one is operated at a time)
• Input pins can be a gate input with a:
• pull-up - a resistor connected to high
• pull-down - a resistor connected to low
• pull-up and pull-down - both a resistor connected to high and a resistor connected to low (only useful in rare cases).
참조: https://electronics.stackexchange.com/questions/28091/push-pull-open-drain-pull-up-pull-down
crossbar
참조: https://www.reddit.com/r/AskElectronics/comments/1ggdd6/what_is_the_crossbar_in_a_microcontroller_and_how/
ASCII
0x0d : carriage return (\r)
0x0a : new line ( \n)
SBIT
SFR 에 개별적으로 접근하기 위한 방법
SBIT (TI0, SFR_SCON0, 1); // UART0 TX Interrupt Flag
SBIT (RI0, SFR_SCON0, 0); // UART0 RX Interrupt Flag
참조: http://www.fsinc.com/reference/html/com9agk.htm
Pin Configuration
핀 구성을 도와주는 프로그램이 들어 있다.
그 툴로 셋팅을 하면 Register를 셋팅하는 코드가 나오니 그 코드를 사용하면 된다.
Config2.exe
CLI: Command Line Interface
HCI: Human–computer interaction
SMbus: The System Management Bus (abbreviated to SMBus or SMB) is a single-ended simple two-wire bus for the purpose of lightweight communication.
숫자 뒤의 'U'
C 언어에서 기본으로 int 이므로 뒤에 U 를 쓰면 unsigned 가 된다.
참조: http://stackoverflow.com/questions/9029974/what-does-u-mean-after-a-number
Interrupt
TCON: Timer Control
Edge/Level triggered interrupt 두 방법의 차이
Edge Trigger 는 rising 혹은 falling edge 가 발생할 때 interrupt 가 발생되는 것
Level Trigger 는 특정 Level이 될 때 interrupt 가 발생되는 것
참조: https://electronics.stackexchange.com/questions/21886/what-does-edge-triggered-and-level-triggered-mean
IT01CF: INT0/INT1 Configuration
IT01CF = 0x0E -> (00001110)
IN0PL: 1 => INT0 Polarity, 1: INT0 input is active high
IN0SL: INT0 Port Pin Selection Bits
IN0SL[2:0]:110 => 110: Select P1.6
Timer
When the 8-bit count overflows, the output signal is asserted. The output signal may thereby trigger an interrupt at the processor or set a bit that the processor can read. To restart the timer, software reloads the count register with the same or a different initial value.
참조: http://www.embedded.com/electronics-blogs/beginner-s-corner/4024440/Introduction-to-Counter-Timers
vector
http://www.keil.com/forum/6306/
https://en.wikipedia.org/wiki/Interrupt_vector_table
SFR
Special Function Register:
SFR Page: pages when reading or modifying SFRs.
SFR Page[7:0] = 00001111 (control_page)
SFR Page[7:0] = 00000000 (active_page)
PCA (Programmable Counter Array)
PCA 주요특징.
• 16-bit time base.
• Programmable clock divisor and clock source selection.
• Up to three independently-configurable channels
• 8, 9, 10, 11 and 16-bit PWM modes (edge-aligned operation).
• Frequency output mode.
• Capture on rising, falling or any edge.
• Compare function for arbitrary waveform generation.
• Software timer (internal compare) mode.
• Integrated watchdog timer.
참조: http://igotit.tistory.com/296
Push-Pull/Open Drain 출력 설정
This answer is general to processors and peripherals, and has an SRAM specific comment at the end, which is probably pertinent to your specific RAM and CPU.
Output pins can be driven in three different modes:
• open drain - a transistor connects to low and nothing else
• open drain, with pull-up - a transistor connects to low, and a resistor connects to high
• push-pull - a transistor connects to high, and a transistor connects to low (only one is operated at a time)
• Input pins can be a gate input with a:
• pull-up - a resistor connected to high
• pull-down - a resistor connected to low
• pull-up and pull-down - both a resistor connected to high and a resistor connected to low (only useful in rare cases).
참조: https://electronics.stackexchange.com/questions/28091/push-pull-open-drain-pull-up-pull-down
crossbar
참조: https://www.reddit.com/r/AskElectronics/comments/1ggdd6/what_is_the_crossbar_in_a_microcontroller_and_how/
ASCII
0x0d : carriage return (\r)
0x0a : new line ( \n)
SBIT
SFR 에 개별적으로 접근하기 위한 방법
SBIT (TI0, SFR_SCON0, 1); // UART0 TX Interrupt Flag
SBIT (RI0, SFR_SCON0, 0); // UART0 RX Interrupt Flag
참조: http://www.fsinc.com/reference/html/com9agk.htm
Pin Configuration
핀 구성을 도와주는 프로그램이 들어 있다.
그 툴로 셋팅을 하면 Register를 셋팅하는 코드가 나오니 그 코드를 사용하면 된다.
Config2.exe
피드 구독하기:
글 (Atom)