2. Camera

 

 

 구성

 

 

위의 그림은 CCD Camera의 일반적 구성을 나타내고 있다.

Machine Vision에서 사용되는 중요한 요소 중의 하나인 Camera는 Image를 촬상하는 부분(Image Acquisition Unit)과 Video Signal을 출력(Image Output Unit)하는 두 가지 부분으로 나눌 수 있다. Image Acquisition Unit은 최근에는 특수한 용도(Anti-Radiation) 외에는 사용하지 않는 Pick-up Tube나 CCD 소자로 구성된다. Image Output Unit은 Machine Vision에서 직접 사용되는 Video Signal을 만들어 주는 부분으로 표준(Standard) Camera의 경우 국제 표준 규격(CCIR:Comite Consultatif International des Radio communications or EIA:Electronics Industries Association) 중 하나에 맞춰 출력한다

일반적으로 Digital(RS-422) Video Signal을 출력하는 비표준(Non-Standard) Camera의 경우는 각 Camera Maker 별로 특수한 Format을 갖는다. 물론 이러한 Non-Standard Signal은 기능적인 면에서 Standard Signal에 비해 우수한 몇 가지의 특성이 있지만 성능 대비 가격적인 면에서 Standard Camera의 장점이 있기 때문에 완전히 대체하기는 힘들다

중요한 Non-Standard Camera의 하나로는 피 실험체의 실제 자료를Processing부로 전달하기 위하여 CCD 소자용 Camera 내부 Clock을 출력하여 주는 Pixel Clock Output 기능을 제공하는 Camera가 있다. 이러한 Pixel Clock Output 기능은 높은 Accuracy를 요구하는 Application에서 필요하다

다른 하나는 움직이는 물체의 입력을 용이하게 하기 위하여 고안된 Trigger Input 기능을 갖고 있는 Camera를 들 수 있다. 이는 불규칙하게 들어오는 피 실험체를 Sensor등과 연계하여 필요한 위치에서 정확하게 촬상할 수 있게 해준다.

 

 

 Image Acquisition 

 

Pixel이라 불리는 개별의 빛에 감응하는 sensor들로 이루어진 CCD(Charge Coupled Device) Chip을 사용하는 영상입력장치(Image Acquisition Unit)가 주류를 이루며 이는 예전의 Tube Type에 비하여 작고, 가벼우며, 빠르게 반응하고, 나은 선형성(linearity)을 갖고 있을 뿐만 아니라 기계적인 충격, 자기장이나 광학적 변화에도 강하다. 또한 높은 생산성으로 대량생산이 가능해서 낮은 가격을 유지할 수 있다.

 CCD는 빛(wavelength 400nm - 1000nm)을 부하(charge)로 변화시키고 읽는 주기일 때 Voltage로 바뀌어 출력하게 된다. 2개의 광자(photon)는 1개의 전자(electron)를 발생시키며 50,000개의 전자가 1V로 출력된다. 또한 온도에 의해서도 전자는 생성되며(Dark Current) 이것은 불필요한 Noise의 원인이 된다. 빛이 없는 상태라 해도 Dark Current에 의해 일반 온도(room temperature)에서 1분 정도만 경과하면 CCD는 포화 상태가 된다. Dark Current는 7Kelvin(절대온도 단위)마다 배가되기 때문에 CCD 소자의 온도에 따른 Noise의 발생량은 엄청나다.

위의 이유로 노광시간(Exposure Time)이 Camera에 있어 매우 중요한 요소가 된다. 대표적인 Exposure Time을 제어하는 방법으로는 일반 사진기에 적용되는 기계적 Shutter를 들 수 있지만 다행히도 CCD 소자에서는 우리가 electronic Shutter라 부르는, 전자회로로 exposure Time을 제어할 수 있는 기능을 가지고 있다.(Exposure Time은 종종 Integration Time으로 불린다). 대부분의 CCD Camera는 수동식(Manual)과 자동식(Automatic)의 두가지 방법으로 Exposure Time을 제어할 수 있다. 우리가 Shutter Speed라 부르는 Manual Type Control은 보통 1/50s부터 1/10000s까지 8단계 혹은 15단계로 구분되어 있으며, Automatic Type은 들어오는 빛의 양을 스스로 감지하여 Camera에서 자동적으로 시간을 제어하는 것을 말한다

Standard Camera에 있어 EIA의 경우는 1/60s이며 CCIR의 경우는 1/50s이다. Camera에 들어오는 빛의 양이 위의 Exposure Time(1/60s or 1/50s)만으로 충분하지 않다면 우리는 Gain Control을 사용해야 한다. 대부분의 Camera는 Manual Gain과 Automatic Gain Control이 준비되어 있다.

다음으로 중요한 요소로는 CCD소자의 해상도(Resolution)를 들 수 있다. 최근 Machine Vision에서 많이 사용되는 고해상 Camera는 수평으로 768, 수직으로 494 Pixels 정도이며 (CCIR 756x561), 이는 유효화소로 CCD 자체는 우리가 Optical Darkness라 부르는 좀더 많은 Pixel을 포함하고 있다

또한 CCD 소자의 실제 사용되는 영역의 크기도 하나의 요소가 된다. 이는 Tube 시절부터 Lens등을 결정하는데 사용되었다. 주파수별 응답 특성도 빼놓을 수 없는 중요한 요소의 하나로 좋은 Camera 일수록 적외선 Filter (Infrared Cut Filter)등을 사용하여 가시파장(400nm-700nm)에서만 균일하게 응답하는 특성을 지니고 있다. 물론 경우에 따라서는 Near Infrared(근적외선) 대역을 필요로 하며 이를 위해서 750nm에서 우수한 응답 특성을 지닌 소자도 있으며 그렇게 비싸지 않은 가격에 구할 수 있다. 하지만 자외선(Ultraviolet)이나 원적외선(Far Infrared)을 위한 Standard CCD는 없다. UV의 경우는 특수한 CCD가 공급되고 있으며 IR의 경우는 완전히 다른 기술(Non-Contact Thermometer)을 사용해야 하며 물론 비싸다.

 CCD Chip 자체는 Color에 따라 응답하는 특성이 없으므로 Color Camera는 빛을 Filter와 Prism을 이용하여 적녹청(Red, Green, Blue)의 삼요소로 분리한다. Color Camera는 보통 아래의 두 가지 방법 중 하나의 방법을 사용하여 Color를 구분한다. 하나는 흔히 우리가 3CCD Camera라 부르는 것으로 먼저 Prism으로 빛을 분리하여 각 color(Red, Green, Blue)별 Filter를 통해 각각의 CCD로 인가하는 것으로, 3개의 Monochrome Camera와 Filter, Prism 그리고 DSP를 사용하여 Color화하는 것이라 할 수 있다. 이것은 높은 해상도(High Resolution, High Color Quality)를 자랑하지만 특수한(Non 'C' mount) Lens를 사용해야하고 가격도 비싸다. 다른 하나는 하나의 CCD에 하나의 Filter를 사용한다. Mosaic Filter라고 부르는 이 Color Filter는 CCD의 각 Pixel에 1:1로 설계되어 사람의 눈에 있는 색 세포와 유사한 형태라 볼 수 있다. 이 Camera는 위의 3CCD Camera에 비해 가격은 낮은 편이지만 해상도는 나쁘다(Low Resolution)

아주 고해상의 Image Quality를 요구하는 Application을 위한 고해상도 CCD Array Camera가 있지만 아주 비싸기 때문에 우리가 흔히 Line Scan Camera라 부르는 1차원(Linear) Sensor Array를 응용하여 사용하는 경우가 많다.  이의 예로는 최근에 문서 및 그림의 입력 장치로 많이 사용되는 고해상도 Scanner를 들 수 있다

흔히 1차원(Sound, Acoustic)에서 사용하는 해상도는 Sampling 정의(Nyquist Frequency 의 2배 이상으로 Sampling해야함)에 입각한 최대 Sampling Rate를 기준으로 할 수 있지만 우리가 흔히 CCD Chip상에 있는 수평, 수직 Sensor의 수로 Camera 해상도(Resolution)를 표시하는 2차원(Image)의 경우는 CCD Chip이 Sampling을 담당하는 Device이므로 1차원의 경우와 같이 설명할 수 없다. 오히려 Processing Speed가 빠른 최근에는 주변의 Sensor에 Charge된 값을 참고하는 Sub-Pixel 개념을 도입하여 해상도를 높일 수 있다. 하지만 이러한 Sub-Pixel 기술은 CCD Chip Sensor와 Image Memory가 1:1로 정확하게 일치할 때(Camera의 Pixel Clock과 Grabber의 A/D Clock이 동기 될 때)에 그 정밀도를 인정할 수 있다.(물론 그렇지 않은 경우에도 상당한 효과가 있다.)

 

 

 Output Unit

 

 Camera의 Output Unit은 Acquisition된 영상을 Image Processing Device에 정확히 전달하여야 한다. 표준 Camera에 있어서는 전술한바와 같이 국제적 표준인 EIA(RS-170) 혹은 CCIR에 기술된 사양에 준한 Video Signal을 출력하여야 한다. Color에 있어서는 EIA에서는 NTSC(RS-170a)를 CCIR에서는 PAL과 SECAM을 표준으로 한다

구시대의 Tube Camera와 TV Screen의 Flicker를 방지하기 위해 Interlacing 방법을 기준으로 제정된 이러한 Standard들은 Odd Line과 Even Line을 번갈아 출력하므로 완성된 한 Frame의 Data를 요구하는 Image Processing 분야에서는 문제가 된다. 이러한 Odd와 Even Field을 합한 한 화면(Full Frame)을 완성하기 위해서는 EIA의 경우는 525 Line(Visible 485)에 1/30초 CCIR은 625 Line(Visible 575)에 1/25초가 소요된다

 1 Line을 Display 한 후 다음 Line의 시작점으로 회기(Retrace)하는 동안 Line의 시작을 알리는 H-Sync와 이 Sync Pulse 전후에 Black Level을 표시하는 Front Porch와 Back Porch가 포함 된다. V-Sync는 Field의 시작을 알리며 이는 Frame당 EIA 40 Pulse CCIR 50 Pulse로 구성된다. 즉 전술한 바와 같이 유용한 Line은 EIA 485 Line, CCIR 575 Line이 된다

표준 Video Signal의 경우 바로 위에서 설명한 H-Sync와 V-Sync에 의해 동기화 된다. 하지만 Pixel의 경우는 EIA, CCIR 공히 화면 비율이 4:3이므로 EIA 647(=485*4/3)Pixel, CCIR 767(=575*4/3)Pixel로 구성되고 이러한 Pixel들로부터 Data를 받기 위해서는 EIA 12.3MHz, CCIR 14.75MHz의 Clock을 사용하여야 하며 이를 Pixel Clock이라 부른다.

Television에서의 수평 해상도는 한쌍의 흑백 line을 얼마나 정확하게 구분하나로 평가할 수 있다. 즉 최고 해상도의 EIA Camera라면 323.5(CCIR:383.5)쌍의 수직선이 각각 최고의 Scale 값과 최소의 Scale 값을 갖아야 한다. 이러한 사각파형이라 해도 우리눈의 시각계는 이를 정현파형으로 인식할 수 있기 때문에 이를 최고 해상도라 할 수 있으며 이는 6.15(CCIR:7.375)MHz의 주파수를 갖는다. 따라서 모든 Video Component들은 6.15 ~ 7.375MHz의 Band Width를 갖아야하지만 Standard는 낮은 Band Width도 허용하기 때문에 일반적으로 위의 예보다 낮은 해상도를 갖는다. Camera나 Monitor의 Quality는 흔히 TV lines(TV 본)로 불리는 몇 개의 수직선을 구분하여 입력하고 표시할 수 있나를 가지고 표시한다. 많이 사용되는 감시 Camera의 경우는 보통 300본(TV Lines)이며 고해상 Camera의 경우는 550본 혹은 그 이상이다. 하지만 이러한 숫자는 공공기관에서 검증된 것이 아니므로 가끔 600본이라고 과장 광고되는 제품이 550본보다 더 나쁜 경우도 있다.

특정 영역의 Scale값을 강조할 수 있는 기능을 Gamma Correction이라 부르며 이는 Tube Screen의 비선형(Non-Linear) 특성에서 왔다. 감시 Camera의 경우는 중간 Level의 값이 강조되는 Gamma 0.45를 많이 사용하며 이보다 더 강조되는 0.25를 쓰는 Camera도 있다. 하지만 Machine Vision에서는 Linear(선형)한 특성의 Gamma 1을 선호하며 Sub Pixel Algorithm은 이러한 특성에 기인하여 만들어진다

 선두에 말한 바와 같이 전자(electronic) shutter는 CCD chip의 노광시간(Exposure Time)을 조절하는데 사용된다. 만약에 대상물체에 빛을 많이 투사할 수 없다면 Shutter Speed를 늦추어야할 것이다. Standard에서는 최소 Shutter Speed가 EIA의 경우 1/60Sec(CCIR:1/50Sec)이다. 대상물체가 움직이고 있다면 Shutter Speed는 빨라져야 하지만 이럴 경우 Video signal이 약하여 Data가 제대로 전달되지 못하는 경우가 있다. 이럴 때 Gain을 사용하여 Video signal을 증폭(Amplitude)할 수 있다. 보통 장시간 노광(Long Time Exposure)을 사용하기 힘든 경우에 최대 1:10 혹은 1:20으로 증폭한다. Gain Control에는 자동으로 1Vpp로 증폭하는 Automatic Gain Control(AGC)과 Switch로 조절하는 Manual Gain Control(MGC)이 있으며, 감시 Camera의 경우는 AGC를 선호하지만 Machine Vision에서는 Noise등을 염려하여 Video Signal의 Gain 보다는 오히려 조명장치를 활용하여 빛의 양을 조절한다

몇 개의 입력 장치(Camera)로부터 Signal을 입력할 때 한 Camera에서 다음 Camera로 입력원을 바꾸면 수 Frame Time의 안정화 시간을 필요로 한다. 물론 이러한 시간은 Application에 따라 문제가 될 수도 있고 그렇지 않을 수도 있다. 다행히도 대부분의 Machine Vision용 Camera는 외부동기를 받을 수 있게 설계되어 있으며 이를 적절히 활용하여 위의 불필요한 시간을 제거할 수 있다. Genlock(External Synchronization)은 다음의 3가지 방법을 사용할 수 있다.

1

처음 Camera의 Sync 출력을 다음 Camera로, 그 Camera의 출력을 다음 Camera로 연결하는 것이다. 하지만 최초의 Camera와 최후의 Camera 사이에는 상당한 지연시간(Delay Time)이 상존하고 있어 위험한 방법이다.

2

Video Sync Generator로부터 각각의 camera를 병렬로 연결한다

3

Sync Generator의 TTL 출력을 각 Camera의 Sync 입력 단에 병렬로 연결한다. 보통 고급의 Frame Grabber에는 Sync 출력 기능이 있으며 이를 많이 활용한다.

  Color Signal의 출력은 보통 Composite, Y/C, RGB의 3가지 방법이 있다.
Composite Signal은 Standard Luminance(brightness) Signal(RS-170 or CCIR)에  Chrominance(Color) Signal을 실은 형태로 출력하는 것으로 NTSC, PAL, SECAM의 규격이 있다. 하지만 이렇게 두 가지의 signal을 하나로 합하여 출력하는 것은 서로의 간섭에 의하여 불완전한 Image를 출력하는 원인이 될 수 있다. 따라서 Luminance와 Chrominance 출력을 분리한 Y/C 출력은 Composite에 비하여 좋은 방법이며 저가의 Frame Grabber에서도 지원하므로 가격 대 성능 비가 상대적으로 좋다고 하겠다. 하지만 가장 좋은 방법은 삼원색의 출력을 Brightness 형태로 출력하는 RGB Signal이다. 3CCD Camera의 경우는 High Quality 1CCD Camera와 같이 가장 좋은 상태를 유지하는 RGB Out put을 기본적으로 갖으며, 상대적으로 가격이 저렴한 Camera의 경우는 Y/C와 Composite를 저가의 Camera의 경우는 Composite 단일 출력을 갖는다 

 

 

Pixel Clock

 

 

  앞서 설명한 바와 같이 Standard Video signal에서는 H-Sync와 V-Sync만을 가지고 동기를 맞추며 Pixel Base의 Sync는 존재하지 않는다. 따라서 CCD Chip의 각 Cell과 Image memory의 각 Pixel은 1:1로 대응하기가 어렵다. 하지만 최근의 빠른 Processor Base의 Vision System에서는 Gray Scale 분석을 통한 Sub-Pixel Algorithm이 보편화되는 추세이며, 이의 정밀도를 보장하기 위해서는 Frame Grabber 내부의 Pixel Clock 대신에 Camera의 Pixel Clock을 이용한 Mapping이 이루어져야 한다. 물론 이는 높은 정밀도의 측정을 목적으로 하는 Machine Vision System에서 사용되며 일반적인 Application에서는 필요 없는 경우가 많다.

 

 

Trigger Mechanism

 

 

  생산 공정 중에 검사하는 경우 검사 대상물체가 Camera 앞에 왔을 때 정확하게 입력(Acquisition)할 필요가 있다. 이럴 경우 사용되는 것이 Trigger Mechanism이다. 대상 물체가 정해진 위치에 오면 Signal을 출력하고 이 출력을 받은 Grabber는 Camera를 Reset/Restart 하며 Exposure Time을 인가하고(Double Pulse Exposure Control) Start Line부터 입력을 받는다. 물론 이때 Exposure Time Control 대신에 Strobe를 사용하여 이송되는 물체의 정지화상을 받을 수 있다. 하지만 이렇게 유용하고 또 많이 사용되는 Trigger Mechanism은 현재 표준화되어 있지 않다. 모든 Camera 회사와 Frame Grabber 회사들은 고유의 Trigger Mechanism을 갖고 있으며 Application 개발자는 이점에 유의하여 Camera와 Grabber를 선정하여야 한다. Trigger Mechanism은 Asynchronous shutter 혹은 Field on demand라 불리기도 한다.

 

 

Progressive Scan

 

 

  오래 전에 고안된 Interlace 기법은 현재의 Machine Vision에서는 많은 문제를 야기하고 있다. 위의 Trigger Mechanism에서 든 예를 보자. Camera는 Odd Line은 정상적으로 출력하지만 Even Line에 대한 대책은 없다(Comb Effect). 따라서 Even Line을 포기하고 Field Mode로 Odd Line만 가지고 Processing하거나 보다 나은 해상도를 위해서는 Non-interlace의 비표준(Non-Standard) Signal이 필요하다. 이러한 비표준 Camera를 Progressive Scan Camera라 한다. 현재는 각 Camera 공급 업체에서 여러 해상도와 방식으로 출하하고 있으며 Odd Line과 Even Line을 동시에 출력하여 1/60Sec에 한 Frame을 출력하는 Dual Tab Progressive Scan Camera 같이 종류도 있다. 물론 이러한 Camera는 특수한 Frame Grabber를 사용하여야 하며 그 목적상 Trigger Mechanism과 같이 사용되는 경우가 많다

 

 

Long-Time Integration

 

 

 Exposure Time을 최장으로 하고(EIA:1/60Sec, CCIR:1/50Sec at Standard) 최대 Gain을 사용하여도 빛이 부족하여 Image가 불명확할 때는 Integration Time을 연장하는 방법을 고려하여야 한다. 하지만 전술한 바와 같은 Noise의 발생은 어쩔 수 없다. 보통 상온에서는 10Sec(2*10-4Lux) 이상 Expose할 수 없다. 대상물이 안정적이라면 Digitize된 Image를 계속 더하는 방법도 하나의 Noise 대책이 될 수 있다. Noise의 발생이 온도에 따라 기하 급수적으로 늘어나므로 온도를 낮추면 보다 오랜 시간 동안 Exposure할 수 있다. 예로 Air Cooling의 경우 는 15분(2*10-6Lux), Water Cooling의 경우는 3시간까지도 Exposure(2*10-7Lux) 가능하다. 이렇게 오랜 시간 동안 Expose할 수 있는 Camera의 경우엔 Image Buffer Memory를 갖고 Integration하는 동안엔 그 전의 Image를 Display할 수 있어야 Standard Signal에 대응할 수 있다.

 

 

 Summary

 

1

한 개의 CCD Cell은 두 개의 Photon을 1개의 Electron으로 변환하며 50,000개의 Electron이 1V를 생성한다.

2

상온에서는 10초 이상 Exposure할 수 없다.

3

TV Line(TV 본)응 Television에서부터 출발했으며 최대로 표시하거나 입력할 수 있는 흑백의 수직선(Vertical Line) 개수이다

4

3CCD Color Camera에 있어서는 Camera Maker에서 추천한 Lens를 사용하여야 하며 그렇지 않을 경우 Quality를 보장할 수 없다.

5

Comb Effect는 움직이는 물체를 입력할 때 발생하며 이는 Odd Line Scan 후 Even Line을 Scan하기 때문에 발생한다. 이러한 현상을 배제하려면 ODD Field만 입력하거나 Progressive Scan Camera를 사용하여야 한다

6

Sub-Pixel 연산은 Pixel Clock을 이용하여 1:1 Mapping을 할 때 그 정확도가 보장된다.

7

Pixel Clock을 사용하는 경우에 불연속의 Pixel Clock은 오히려 사용하지 않는 것 보다 도 못하다.

8

Trigger Mechanism은 이해 하기는 쉬우나 Standard가 없기 때문에Camera와 Frame Grabber 선정에 신중을 기해야 한다.