시간이 갈수록 머신비전 장비 성능의 요구 사항이 더 까다로워지고 있다. 이에 Line scan 카메라도 다양한 기능과 성능 변화가 일어났다. Line scan 카메라보다 진화된 Dual Line scan 카메라, TDI Line scan 카메라 등 다양한 형태와 방식의 카메라들이 시장에 선보이고 있다. 이 글에서는 산업용 카메라로 널리 쓰이는 Line scan 카메라의 종류와 특징에 대해 알아본다.




Line Scan 카메라의 기본 원리


일상생활에서 복사기를 이용해 본 경험이 있다면 복사를 할 때 긴 불빛이 한 방향으로 일정하게 움직이는 것을 본 적이 있을 것이다. 이때 조명에 붙어있는 이미지 센서가 복사할 용지를 차례대로 읽고 이를 다시 출력하는 것이 복사기의 원리이다. Line scan 카메라는 복사기와 같은 원리로 동작한다. 이처럼 Line scan 카메라에서 사용하는 이미지 센서는 Area scan 카메라에서 사용하는 이미지 센서와 달리 1개의 라인만으로 이루어져 있다. 즉, Line scan 카메라는 단 1개의 라인만으로 개체 전부를 촬영하며 개체 또는 카메라 자체가 움직이면서 촬영하는 방식을 사용한다. 

이미지 센서는 카메라가 노출하는 동안 개체에 비치는 빛에 비례하는 광전자 전하를 각 픽셀에 축적하고, 노출이 끝나면 전체 픽셀 라인의 전하는 판독 레지스터로 전송된다. 판독 레지스터가 픽셀 전하를 이동시키고, 카메라가 이들을 증폭하고 보정하여 디지털화하여 전하로 출력한다. 이렇게 전하를 시키는 동안 다음 픽셀 라인이 동시에 노출된다. 

노출과 판독을 할 수 있는 최대 속도를 "Line rate"라고 하며, kHz(킬로헤르츠) 단위를 사용하는데, 빠르게 움직이는 개체의 움직임을 촬영하려면 고속 Line rate가 필요하다. 판독 속도를 향상하기 위해서는 여러 개의 ‘탭(판독 레지스터를 따르는 판독 지점)’을 사용하면 된다. 



일반적으로 Line scan 카메라가 Area scan 카메라보다 불편하다고 생각할 수 있지만, Area scan 카메라는 개체를 정지시키고 난 다음 촬영해야만 하지만 Line scan 카메라는 컨베이어 벨트와 같이 움직이는 개체를 촬영할 수 있으므로 산업 현장에서는 오히려 Line scan 카메라가 더욱 유용하게 쓰일 수 있다. 



위 그림을 보면, 픽셀의 수에 따라 높이에 대한 제약이 있는 Area scan 카메라보다 Line scan 카메라는 높이에 대한 제약이 없다는 장점이 있으며, 이러한 특징으로 인해 공정에 사용되는 카메라의 수를 줄일 수 있다는 장점을 한눈에 볼 수 있다. Dual line scan 카메라는 Single line scan 카메라보다 개선된 신호대잡음비(SNR)와 노출 조정을 갖췄다. 


Line scan 카메라를 사용할 때 장점

  • 픽셀 당 가격(Price/pixel): Area scan 카메라를 사용할 때보다 더 높은 해상도의 이미지를 훨씬 저렴한 비용으로 촬영할 수 있다.
  • 다이내믹 레인지(Dynamic range): 다른 이미지 캡처 방식보다 다이내믹 레인지가 훨씬 높다.
  • 높은 픽셀 충전율(High pixel fill-factor): 감도를 극대화할 수 있다.
  • 스미어(Smear) 없는 이미지: 큰 비용을 사용해야 하는 스트로보(Strobe) 또는 다루기 어려운 셔터 없이 고속으로 이동하는 개체를 촬영할 수 있다.
  • 프로세싱 효율: Line scan 카메라를 사용하면 프레임 오버랩 없이 원활하게 이미지를 촬영한다. 프레임 오버랩은 고속 고해상도 장비에서 소중한 프로세싱 대역폭(bandwidth)을 점유하는 중복 데이터를 말한다.


TDI Line Scan 카메라


투명한 셀로판지에 아주 흐릿한 동그라미 하나가 그려져 있다. 이때, 이 셀로판지와 똑같이 흐릿한 동그라미가 그려진 셀로판지를 1개 더 겹쳐 보면, 겹치기 전보다 동그라미가 조금 선명해진다. 그렇다면, 수십 장을 겹쳐 놓으면 셀로판지 위에 그려진 동그라미는 확실하게 모습을 드러낸다.



TDI(Time Delayed Integration) Line scan 카메라는 바로 이와 같은 원리로 만들어졌다. 기존의 Line scan 카메라는 Area scan 카메라보다 적은 수의 픽셀만 사용한다는 경제성과 검사할 부분의 길이 한계가 없다는 장점이 있지만, 노출 시간이 짧아 감도가 약하다는 단점도 가지고 있었다. 

이러한 단점을 극복한 TDI Line scan 기술은 앞에서 언급한 예와 같이 셀로판지를 겹쳐 놓듯 여러 개의 라인 픽셀을 사용하여 검사체를 중복으로 촬영하여 더 선명한 이미지를 만들 수 있다.



위 그림과 같이 개체가 1→2→3의 방향으로 이동한다면, 개체의 이동에 따라 카메라에 내장된 TDI Line scan 이미지 센서의 각 스테이지에 이미지들이 중첩되며 선명한 상을 맺게 된다. TDI Line scan 기술은 스테이지에서 동일한 이미지를 여러 번 촬영해야 하므로 개체의 이동 속도에 맞춰 뒤의 스테이지가 앞의 스테이지보다 조금 늦게 이미지를 촬영한다. 이러한 특성으로 인해 "Time Delayed"라는 이름으로 붙게 되었다. TDI Line scan 기술은 정확히 같은 이미지를 촬영한 후 이를 중첩해 선명한 상을 얻으므로 카메라의 촬영 속도와 개체의 이동 속도를 동기화시키는 것이 중요하다.


하지만, 이런 번거로움에도 불구하고 높은 조도를 지닌 Metal Halide와 같은 광원을 조명으로 사용해야 하는 일반 Line scan 카메라보다 조금 적은 조도를 지닌 LED와 같은 조명을 사용하더라도 높은 선명도를 구현할 수 있어 조명의 설치 비용과 유지 비용를 줄일 수 있고, 일반적인 Line scan 카메라를 사용하여 설치할 수 없는 고속 장비에도 장착할 수 있는 점 등 많은 장점이 있다.



고속 Color Line Scan 이미징

    Color line scan 카메라는 다양한 파장의 빛을 감지하기 위해 행 방향 픽셀에 다양한 컬러 필터를 장착하거나 다양한 컬러 필터를 가진 센서 픽셀 라인을 사용한다. 일반적으로 사용되는 필터는 R(Red, 적색), G(Green, 녹색), B(Blue, 청색)이지만, 원격 위성 탐사와 같은 분야에서 사용되는 일부 장비는 다른 필터 유형을 사용한다.

    Color line scan 카메라에는 필수적인 기능이 몇 가지 있다. 첫 번째로 Color line scan 카메라와 함께 사용하는 렌즈는 상당한 색수차를 없애기 위해 컬러를 보정해야 한다. 렌즈가 평면상의 같은 초점에서 서로 다른 파장의 빛에 초점을 맞추지 못하면 색수차가 발생하는데, 이때 가장자리 주변의 색이 줄무늬로 나타난다.

    또한, 개체 표면과 수직인 방향으로 카메라가 일반적인 각도로 개체를 바라보면 일부 원근 왜곡이 있을 수 있다. 원근 왜곡은 개체에 1/거리로 비례하므로 픽셀의 서로 다른 컬러 라인에 대해 약간씩 다르게 나타난다. 따라서 픽셀 각 라인은 약간씩 다른 크기를 가지고 개체 표면에 투영되는 픽셀의 모양이 되므로 높은 정밀도의 컬러 측정에서 오류가 발생할 수 있다. 개체 표면에 카메라가 수직인지 확인하는 것은 Color line scan 카메라뿐만 아니라 Monochrome line scan 카메라도 마찬가지다.


    3Chip 카메라


    3CCD 또는 3CMOS 등과 같은 3Chip Line-scan 카메라는 프리즘 기반 다이크로닉 빔 스플리터로 RGB 컬러를 분리한다. 파장 분리를 위한 광학 간섭을 사용하고, 필터 라인 모양은 일반적으로 평탄 특성(Flat response)과 급격하게 감소(Sharp drop-off)하는 특성을 가진다. 3개의 센서로 촬영한 RGB 이미지가 결합한 후 컬러 이미지로 복원되며 RGB 컬러는 공통 광축으로 이동하여 공통된 위치에서 개체를 캡처한다. 이로써, 이 기술의 Color registration(컬러 카메라에서 완전한 컬러 이미지를 생성하기 위해 3개의 원색 이미지를 올바르게 겹치도록 하는 것)을 향상하고, 평평하지 않은 표면, 회전물, 낙화물 등을 검사할 수 있다.

    3Chip Line scan 카메라의 단점은 비싼 카메라 비용과 더 비싼 광학 렌즈 비용이다. 프리즘이 백 포컬 시프트(Back-focal shift)와 수차를 발생시키므로 카메라는 특수하게 설계된 렌즈와 함께 사용해야 한다. 3Chip 카메라의 바디는 프리즘과 이미지 센서 3개를 장착해야 하므로 일반적으로 크다.


    Trilinear 카메라


    대부분 장비에서는 실리콘 다이 상에 제조된 각 R, G, B 채널 등 3개의 Linear 배열을 사용하는 Trilinear 기술을 채택한다. 동작 중 각 Linear 배열은 동시에 원색 중 하나를 캡처하지만 이동하는 개체는 약간 다른 위치를 촬영한다. 컬러 필터는 실리콘 웨이퍼에 코팅된 흡착 염료 및 안료이다. Line scan 이미징은 일반적으로 집중적인 조명을 필요로 하므로 컬러 필터는 높은 내광성(7~8 단위)을 가져야 한다. 색상을 악화시키지 않기 위해 최대 250°C 의 열 안정성이 중요하다.


    풀 컬러 이미지로 컬러 채널 3개를 결합하려면 일반적으로 첫 번째와 두 번째 배열을 세 번째로 일치시키는 버퍼링 공간 보정을 참조하여 공간 분리를 보상해야 한다. Trilinear 기술은 카메라 디자인을 단순화시키므로 높은 이미지 품질을 제공하지만 작은 크기로 사용할 수 있다. 또한, 표준 렌즈 사용으로 장비의 총 소유 비용을 줄일 수 있다.


    높은 컬러 이미지 품질, 높은 속도, 적은 비용 등을 특징으로 하는 Trilinear color 카메라는 자동 광학 검사(AOI:Automatic Optical Inspection)를 위한 Color line scan 이미징 분야에서 매력적인 가격대성능비를 제공한다.


    Color line scan 카메라는 인쇄물 이미징에 특히 유용하다. 이 작업을 위해 라인당 1개의 컬러 필터를 가진 “Trilinear” 카메라를 사용하면 각각의 이미지 픽셀이 완벽하게 RGB 컬러를 측정할 수 있다. 서로 다른 컬러 센서의 픽셀 라인은 각 픽셀의 크기만큼 지연하여 촬영하므로 이미지로 통합하면 개체를 자연스럽게 표현할 수 있다.

    Bilinear 카메라


    Bilinear 카메라는 Trilinear 카메라와 많은 장점을 공유하지만, 실리콘 다이 상에 제조된 Linear 배열이 2개라는 차이가 있다. Bilinear 배열의 라인 2개는 공간 보정에 대한 필요성을 최소화시킬 수 있도록 바로 옆에 위치한다. Bilinear 이미지 센서는 픽셀당 2개의 원색만 캡처할 수 있으므로 풀 컬러 이미지를 구축하려면 3번째 컬러는 보간해야 한다.

    공간 크로스토크는 특정 센서 구조로 개선할 수 있다. 스펙트럼 크로스토크는 특정 컬러 필터 배열로 감소시킬 수 있기 때문이다. 새로운 Bilinear color CCD/CMOS 카메라는 스펙트럼 크로스토크를 줄이기 위해 Bayer 패턴 또는 다양한 RG/BG 컬러 패턴을 사용한다. 스펙트럼 오버랩을 줄일 수 있도록 R과 B 채널은 서로 옆에 위치한다. 또한, 흑백 채널로도 사용할 수 있는 100% Fill factor 단일 G 채널을 제공한다.

    Bilinear 카메라는 Trilinear 카메라보다 더 적은 비용으로 구매할 수 있고, 전자 제품 제조, 식품 검사, 재료 분류 등의 분야에서 적합하게 사용할 수 있다. 


    보다 다양하고 구체적인 머신비전 카메라 제품은 앤비젼 홈페이지에서 확인할 수 있다.


     필진 소개



    비전군, Mr Vision

    앤비젼 공식 블로그의 마스코트.(비전군 & 비전양)

    에어리어 스캔 카메라(Area scan camera)의 몸과 고해상도 렌즈(Super resolution lens)인 얼굴로 머신비전의 알짜배기 정보를 전파하는 지적인 소년



    Posted by 비전만

    댓글을 달아 주세요

    1. 임용탁 2016.12.14 16:20  댓글주소  수정/삭제  댓글쓰기

      머신비전 장비 제작가능하신지 알고 싶습니다.
      가능하시면 연락주세요.
      010-9904-8200

      • Favicon of https://blog.envision.co.kr BlogIcon 비전만 2016.12.19 10:55 신고  댓글주소  수정/삭제

        임용탁님 안녕하세요 앤비젼은 머신비전 장비를 직접 제작하지 않고, 장비에 들어가는 component를 공급합니다. 감사합니다.

    2. Favicon of http://www.igisolution.com BlogIcon 최송웅 2016.12.29 12:09  댓글주소  수정/삭제  댓글쓰기

      Line Scanner를 활용한 유리표면 오염 검사 장비를 제작하려고 합니다.
      업무협의가 가능한지요?
      HomePage에 문의했습니다만,
      연락이 없고 전화도 안되어 문의드립니다.
      가능하시면 연락바랍니다.
      010-3231-7084

    3. 2018.03.13 09:26  댓글주소  수정/삭제  댓글쓰기

      비밀댓글입니다

    [카메라 기술 백서 #4]머신비전에서 노이즈가 최소화 된 영상을 촬영하는 방법_Calibration


      앞서 카메라에서 발생하는 노이즈에 대해 살펴 보았다. 노이즈는 그런 이유로 그렇게 발생한다는 것은 알겠는데 어떻게 노이즈를 제거하는 가에 대해서는 이번 포스팅에서 다루겠다. 이번 포스팅을 읽기에 앞서 먼저 지난 포스팅에서 설명한 노이즈 종류를 살펴보자.(아래 글 제목 클릭)


    [머신비전]영상 품질을 결정하는 '카메라 노이즈' 파헤치기



     NOISE

     Dark

     White

     Fixed Pattern Noise

     Dark FPN

     Photo response non-uniformity

     Temporal Noise

     Dark random noise

     Photon shot noise


    먼저 고정된 형태를 가지고 있는 노이즈인 Dark FPN과 Photo response non-uniformity(PRNU)는 Camera Calibration을 통해 제거 가능하다. 



      위측의 그래프는 입사되는 광량에 대비한 A, B, C 픽셀 각각의 출력을 나타낸 그래프 이다. 먼저 Pixel B는 사용자가 원하는 반응도를 가지는 Pixel이며 빛이 없을 때 0값을 출력하고 빛이 강해짐에 따라 사용자가 원하는 적당한 출력을 가진다. 그러나 Pixel A는 빛이 없음에도 일정량의 출력을 가지고 있고 Pixel C는 더 많은 출력 값을 가진다. 그리고 빛의 양이 증가함에 따라 Pixel A는 Pixel B에 비해 더 빠르게 출력 값이 증가하고 Pixel C는 Pixel B에 비해 더 느리게 출력 값이 증가한다. 빛이 없을 때 나타나는 출력 값은 Dark FPN이며 빛에 대해 서로 다른 반응을 보이는 것은 PRNU라는 것은 이미 알고 있으리라 생각한다. 이런 Dark FPN과 PRNU를 Calibration을 통해 제거하는 방법을 설명하기 위해 위의 그래프를 수식으로 비유해 보면 아래처럼 표현할 수 있다. +값으로 표기된 부분은 Offset dark signal이며 x값으로 표기된 부분은 반응도 즉 감도라 할 수 있다.


    Pixel A : output=2.5 x Illumination +15

    Pixel B : output=2 x Illumination +0

    Pixel C : output=1.5 x Illumination +25


      결론부터 말하면 Pixel A와 Pixel C의 수식을 Pixel B과 같이 변경하는 것이 Camera의 Calibration 이다. Pixel A에 15를 빼고 2/2.5를 곱하면 Pixel B와 같은 수식을 얻을 수 있다는 것은 쉽게 계산 가능할 것이다. 마찬가지로 Pixel C에는 25를 빼고 2/1.5를 곱함으로 Pixel B와 같은 수식을 얻을 수 있다. 여기서 빼는 값은 카메라 calibration에서 FPN coefficient 라 부르고 곱하는 값은 PRNU coefficient라 부른다. 그리고 수식을 변화 시키는 과정에서 보듯 FPN coefficient를 PRNU coefficient보다 먼저 적용시켜야 정상적으로 수식 변환이 일어난다. 

     종종 Camera의 Calibration에 대해 카메라의 출력 값을 변경시킴으로 왜곡된 결과가 나올 것이라는 잘못된 선입견을 가지고 있는 분들이 있으나 이는 물리적으로 발생할 수 밖에 없는 각 Pixel의 반응도를 일관성 있게 조정하는 작업으로 카메라의 성능 향상에 분명한 도움을 준다.


      고정된 패턴 형태로 발생하는 노이즈는 Calibration으로 제거가 가능하나 시간에 따라 달라지는 랜덤 한 노이즈는 사실상 user level에서 제거하기는 쉽지 않다. 여기서는 가장 간단하게 제거할 수 있는 방법을 소개하겠다. 과거 포스팅에서 설명한대로 Temporal noise는 양자화된 광자의 Random 성에 의해 발생하므로 완전히 제거하는 것은 불가능하며 감소시키는 방법을 사용해야 한다. N개의 광자를 받을 때 발생하는 노이즈의 편차는 sqrt(N)이 되며 SNR 공식에 따라 SNR은 N / sqrt(N) 이 된다. SNR을 늘리기 위해서는 N값을 무한정 높여야 하며 N 값을 높인다는 것은 쉽게 말해 많은 빛을 받아 들인다는 것이다. 그러나 Pixel은 제한된 공간을 가지고 있으므로 User가 하나의 Pixel이 무한정 많은 빛을 받을 수 있도록 하는 것은 센서를 변경하지 않고는 불가능하다. User가 할 수 있는 방법은 한정된 공간을 가진 Pixel을 수번 반복하여 사용함으로써 더 많은 N 값을 확보할 수 있다. 그림으로 쉽게 설명해 보면. 아래와 같이 강수량 측정을 위한 비커를 1사용함으로써 발생하는 오차를 줄이기 위해 동일한 비커를 8개 사용하여 측정하는 것이다. 




      이런 방법을 통해 user는 N의 값을 8배로 늘릴 수 있으며 결과적으로 SNR 값은 2.8배(sqrt(8)) 만큼 증가하게 된다. 이런 방법은 카메라 제조사에서도 사용하고 있으며 Multi-line을 이용한 line scan에서 감도를 증가시키지 않고 노이즈를 향상하는 방법으로 사용하거나 Area scan에서 Multi shot 기능을 통해 구현된다.



     필진 소개



    목한상, Kyle Mok

    (앤비젼 Product Engineer/카메라 담당)


    사진가가 되고 싶었던... 그래서 카메라와 함께 일하는...

    카메라 담당 Product Engineer



    Posted by 비전만

    댓글을 달아 주세요

    1. 엠브이텍 연구소 2015.11.25 08:35  댓글주소  수정/삭제  댓글쓰기

      음.. 그럼 결론적으로 PRNU 노이즈 제거는 Multishot의 Mean을 구하는 개념인거나 마찬가지인것인데.. 멀티라인스캔 제외하고 에어리어카메라로 고속으로 무빙하는 오브젝트를 촬영하는 경우에 대해서는 적용이 안될 듯 싶은데 이것은 솔루션이 있나요?

      • Favicon of http://envision.kr BlogIcon 목한상 2015.11.25 16:49  댓글주소  수정/삭제

        먼저 용어 정리가 필요할 듯 합니다. PRNU 노이즈는 개별 pixel의 감도 차이라 할수 있고 Multishot을 통해 제거하는 노이즈는 시간에 따라 랜덤한 shot noise입니다.

        고속 무빙 오브젝트를 촬영시 랜덤하게 발생하는 shot noise제거에 관한 솔루션을 문의하신 것으로 보이기에 이에 대한 답변을 드립니다.

        만약 필요한 해상도가 4M (2048 x 2048)이라고 가정하면 영상을 16M (4096 x 4096)으로 동일 FOV를 촬영합니다. 그리고 각 4개 pixel을 Average 하는 방법을 사용하게 되면 비슷한 효과를 얻을 수 있을 것으로 생각됩니다.

        각 4개의 pixel의 합을 이용해서 4M로 출력하게 되면 4배 높은 감도를 얻을 수 있고(pixel binning과 같은 개념) 평균을 이용해서 4M로 출력하면 랜덤 노이즈에 대한 이득을 얻을 수 있습니다.

        그러나 일반적으로 고속 moving object 촬영시에는 노출시간이 필연적으로 짧아지고 경우에 따라서는 Gain을 사용해야 하는 경우도 있습니다. 위 방법 적용이전에 충분한 조명을 확보하는 것이 첫번째라 생각합니다.

    2. 넥스 2017.10.19 23:17  댓글주소  수정/삭제  댓글쓰기

      블로거님, 안녕하세요
      글을 잘 보고 많은 지식을 얻어갑니다!
      하나 여쭤보고 싶은 내용이 있는데요,
      1개의 고정된 Pixel을 반복 사용(위에서는 8번)하여 N값을 높힌다고 설명해 주셨는데,
      '반복 사용한다'라는 의미가 잘 이해가 가지 않아서요..
      Pixel을 reset하기 전에 8 time의 광량을 저장해서 사용한다는 의미인가요?
      자세한 설명을 부탁드립니다.