이번 포스트에서는 Bayer Conversion 에 대해서 알아보도록 하겠습니다.
일반적으로 이미지는 흑백과 컬러 이미지로 구분이 됩니다. 아직 많은 비전 검사에서는 Monochrome 이미지가 사용되고 있지만, Color 센서의 사용도 증가하고 있습니다. 하지만 특수한 센서를 제외하고 대부분의 Color 이미지는 Bayer sensor format을 채택한 센서로부터 획득됩니다. 그럼 Bayer Sensor란 무엇이고 Bayer Conversion 의 목적은 무엇일까요?
이 포스트에서 자세한 설명을 하기에는 내용이 길어질 것 같으니 아래 페이지로 대신하겠습니다.
많은 분이 오해하는 것 중 하나는 “Bayer 센서로 획득된 이미지는 color이다” 입니다. 일정 부분은 맞다고 할 수 있지만, 우리가 일반적으로 알고 있는 Color 이미지는 아닙니다.

Bayer 센서는 하나의 Pixel이 하나의 Color만 가지고 있기 때문에 Bayer 센서로 획득된 이미지를 Monochrome 이미지로 출력하면 아래와 같습니다.

따라서 우리가 이 이미지를 Color 이미지로 부르기 위해서는 각 Pixel이 R/G/B 3가지 정보를 모두 가지고 있어야 합니다. 예를 들어 우리가 많이 사용하는 모니터도 렌즈로 확대해서 자세히 보면 아래와 같이 구성되어 있습니다. RGB 3개의 Sub pixel이 모여서 하나의 Pixel을 구성합니다.

Bayer Conversion Algorithm
그렇다면 Bayer sensor에서 획득된 이미지를 어떻게 RGB Color로 변환 할 수 있을까요? 여러 개의 Bayer 변환 알고리즘이 있지만 가장 많이 사용하는 알고리즘은 Bilinear conversion 알고리즘입니다. 아래와 같이 인접한 Pixel에서 나머지의 Color 정보를 가지고 오는 방식입니다. 어렵지 않죠?

이 방식은 알고리즘이 간단하며 대부분의 Image processing library에서 사용하는 방식입니다. 하지만 이 방식에는 제한이 있습니다. 만약 아래와 같이 Pixel 단위로 Object가 변하는 조건이라면 인접 Pixel의 Color가 동일한 Object의 Color를 표현하지 않기 때문에 Color 노이즈가 발생합니다. 이 노이즈를 Zipper artifacts 또는 False color artifacts라고 부릅니다.

이 노이즈를 개선하는 방법은 간단합니다. Bayer sensor가 아닌 True color의 센서를 사용하는 것입니다. 하지만 True color 센서는 해상도에서 제한이 있고 가격이 고가인 경우가 대부분입니다. 그렇다면 Zipper artifact를 개선하는 방법은 무엇일까요? 3×3 Bilinear conversion이 아닌 개선된 Bayer conversion 알고리즘을 사용하는 것입니다.
다음 이미지와 같이 다양한 Bayer 변환 알고리즘이 있습니다. Bilinear conversion 알고리즘보다 Zipper artifact가 많이 개선된 알고리즘도 존재합니다. 하지만 개선이 된 만큼 연산량이 많기 때문에 변환 속도가 길어지는 단점도 고려해야 합니다.
Zipper Artifact의 개선 알고리즘↓




이런 내용을 바탕으로 실제 머신 비전에서 사용하는 제품을 살펴봅시다.
Image processing에서 가장 많이 사용하는 HALCON Library입니다. 아래와 같이 3×3과 5×5의 Bayer 변환 Mask 사이즈를 선택할 수 있으며 Bilinear와 Bilinear_dir 등을 사용할 수 있습니다.


2개의 옵션 성능을 비교하면 Zipper artifact가 선명하게 개선된 점을 확인 할 수 있습니다.

Matrox의 MIL인 경우 3개의 Bayer 변환 알고리즘을 제공합니다.

OpenCV에서도 다양한 Bayer 변환 알고리즘을 제공합니다.

이런 변환 알고리즘은 모두 Software에서 진행이 되므로 CPU 및 PC 성능에 영향을 받습니다. 그래서 요즘 출시가 되는 Frame garbber에서는 Onboard Bayer 변환 알고리즘을 제공하고 있습니다. Onboard Bayer 변환인 경우 CPU Load가 없기 때문에 Realtime의 변환이 가능합니다. (Realtime이지만 Frame grabber의 Onboard memory와 PCI-e 대역폭으로 인해 속도의 제한이 있습니다.)
마지막으로 뷰웍스 제품 중 Pixel shifting 카메라가 있습니다. VN과 VNP 제품인데 이 제품은 Bayer sensor를 사용했지만 29M 이상의 True color 이미지를 제공합니다.

더욱 자세한 사항은 아래 페이지의 제품 정보를 참고 해 주세요.
Comments are closed.