앤비젼 필진에게 물어봐~!(페인트의 비전 인식률 향상 방안에 대하여)


‘앤비젼의 필진에게 물어봐~!’는 여러분들의 질문에 성심성의껏 답변드리도록 하겠습니다 :) 

언제든지 궁금한 사항이 있으시면 댓글 을 통해 문의 남겨주세요! (비밀 댓글은 이름 & 이메일을 기재해주시면, 답글 혹은 이메일로 필진들의 답변을 전송해 드립니다.)


Q. 안녕하십니까 비젼 인식률 향상방안에 대해 고민하고 있어 질문을 좀 드리려 합니다.

제작품 일부분에 페인트를 칠하고 그것을 인식하는 것이 목적입니다.

이때 페인트와 같은 색상의 조명을 쬐어 인식률을 높일 수 있을 지 의문이 들었습니다. 


현재는 백색광의 조명을 사용중입니다. 부품에 따라 페인트의 색상이 다른데 현재처럼 백색광의 조명을 계속 이용하는 것이 좋을 지, 아니면 페인트의 색상에 따라 맞는 조명을 사용하는 것이 인식률에 좋을 지 문의드립니다.


그리고 백색광의 조명을 사용한다면 어떤 색상의 페인트를 사용하는 것이 인식률에 좋은지도 알고 싶습니다! 


박강환 (광학 필진)


A. 안녕하세요? 문의 주셔서 감사합니다.

기본적으로 물체가 가지고 있는 색은 해당 물체가 특정 파장에서 높은 반사율을 가지고 있기 때문에 나타납니다.

그러므로 만약 특정 색깔을 가지고 있는 페인트를 사용할 경우 페인트의 색과 비슷한 파장을 가지고 있는 조명을 사용한다면 해당 페인트는 좀더 밝게 표시될 것입니다.

또는 해당 페인트와 보색 관계의 조명을 사용할 경우에는 페인트는 어두운 색으로 표시될 것입니다.

 

이를 좀더 쉽게 예를 들어 설명하도록 하겠습니다.


아래의 그림과 같이 파란색의 셔츠를 입은 남자가 붉은색의 스포츠카를 타고 녹색의 수풀 옆을 달리고 있습니다.

이 사진에서는 빛의 삼원색인 Red, Green, Blue가 잘 표현이 되어 있습니다.


원본 컬러 이미지

원본 흑백 이미지


이 그림에 각각 Red, Green, Blue의 조명을 비춘다고 가정할 경우 각각의 조명에서 아래와 같은 이미지를 얻게 됩니다.


01

02

03

Red 조명 (차가 밝아짐) 

Green 조명 

(수풀이 좀더 밝아지고 차가 어두워짐)

Blue 조명 (셔츠가 밝아짐)


위의 그림과 같이 다른 조명을 사용하게 될 경우 그 조명의 파장과 비슷한 색을 가지고 있는 물체들의 밝기가 가장 밝은 것을 확인하실 수 있습니다.


또한 반대로 그 조명과 보색관계에 있는 색이 가장 어둡게 나오는 것도 확인할 수 있습니다.

보색은 위의 그림에서 서로 마주보고 있는 표입니다. Red(R)의 경우 보색은 Blue Green(BG)가 됩니다.

백색광에서 가장 잘 보이는 색은 모든 빛을 반사하거나 흡수하는 백색과 흑색입니다.


정세영 필진(광학 필진)


A. 모노카메라든, 컬러카메라든, 기본적으로 인식하고자 하는 물체의 색과 같은 색의 조명을 사용하면 인식률을 높일 수 있습니다. 이 물체 외의 부분에서는 색이 다르므로, 조명이 덜 반사하기 때문에, 인식하고자 하는 물체가 확 드러나겠죠. 


백색광의 경우, 모든 색을 포함하기 때문에 각 물체의 색생에 해당되는 빛이 반사되기 때문에 인식률을 높이지는 못할 것 같네요.


목한상(카메라 필진)


A. 중요한 부분은 배경색(제작품)이 무엇이며 페인트 색이 무엇인가 입니다. 두 색깔이 다르다면 단 파장의 빛을 사용하는 것은 무조건 도움이 됩니다. 파장 별 반사율을 가정해 보면 아래같이 나올 수 있고 이때 백색광을 쓰면 모든 빛이 반사되니 구분이 어려울 텐데 단파장을 쓰면 겹쳐지는 부분을 피할 수 있을 것 같네요.


제작품이라는 것이 무엇인지가 중요할 것 같아요 금속이라면 페인트가 어둡게 보이는 파장으로 사용하고 금속 아닌 다른 형태라면 앞서 설명한 방법이 유효할 것 같아요.


 필진 소개



비전군, Mr Vision

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

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



Posted by 비전만

댓글을 달아 주세요

  1. 2016.06.21 10:11  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다

[PCI 기술 백서 #3]PCI Compliance 형태 및 Data 전송 기술


4. PCI Slot 사용 시 주의 사항


지난 두 개의 Chapter를 통하여서 PCI Compliance에 대하여 알아보았습니다. 이번 Chapter에서는 PCI를 보다 잘 사용하기 위하여 설정 부분 및 발생할 수 있는 문제점에 대해서 알아보도록 하겠습니다.

  • ASPM

ASPM(Active State Power Management)는 PCI express 기반의 직렬링크 전송 장치의 전원을 관리하여 주는 Protocol입니다. ASPM은 BIOS 또는 Windows Vista이상의 전원 옵션을 통하여 관리가 가능합니다. ASPM의 주된 목적은 PC 내의 전체적인 전원 소비를 줄이는데 목적이 있으며, 대부분의 노트북의 배터리의 수명을 높이고자 사용을 합니다.

하지만, 저전력 모드의 경우, PCIe의 clock을 줄이거나, 아예 멈춰버리기 때문에, PCIe를 사용하는 장치는 동작이 멈추거나 오동작을 하게 되므로, 머신 비전에서 카메라의 데이터를 받을 수 있도록 돕는 Frame Grabber의 오동작을 막기 위해서는 ASPM기능을 꺼두셔야 합니다.


Figure 1. BIOS에서 ASPM 설정


  Windows Vista 이후의 버전에서는 Windows 제어판의 전원 옵션을 통하여 ASPM에 대한 설정이 가능합니다. 따라서, GPU 또는 Frame Grabber와 같이 PCI Express를 사용하는 장치의 경우, 최대 성능으로 동작하도록 설정하기 위해서는 BIOS 및 Windows 전원 옵션에서 반드시 ASPM 설정을 Disable 또는 해제로 설정을 해주셔야 합니다.


Figure 2. Windows 전원 옵션에서의 ASPM 설정


  • Diagram 및 PCIe Slot

  Main Board를 사용하면서 범하기 쉬운 실수 중 한 가지는 PCIe의 Slot 형태가 16x의 크기라면 Slot도 동일하게 PCIe 16x로 동작하고 있다고 착각을 하는 경우가 많이 있습니다. 아래의 PCI Express Slot을 보면서 설명을 드리도록 하겠습니다.


Figure 3. PCI-E 4x(in 16x Slot)


위의 Slot을 자세히 보시면, Slot의 크기나 Pin의 개수를 볼 때, 16x의 Slot인 것이 확실합니다. 하지만, Pin을 잘 살펴보면, 연결되는 부분의 핀이 Slot의 절반 부분까지는 존재하지만, 이후 부분에서는 존재하지 않는 것을 보실 수 있습니다. 앞서 설명 드렸던 것과 같이 PCI Express는 Serial 방식의 통신이므로, 반드시 Transmit data와 Receive data 영역이 나눠져 있습니다. 따라서 만약 통신을 할 수 있는 Pin이 부족하다는 의미는 Transmit Data와 Receive Data 영역 또한 줄어들었단 의미를 나타내며, 이 것으로 인하여 Slot은 실제 16x 사이즈의 Slot이나 동작은 4x으로 밖에 동작을 하지 못한다는 것을 의미합니다.



Figure 4. X8DTG-QF의 Diagram 중 일부

  

위의 Diagram을 보시면, Slot 1,2의 경우 다른 Slot과 다르게 Data bus는 PCI-E x4로 동작하는 것을 볼 수 있습니다. 따라서, Slot에 장착하여 사용하실 경우에는 위의 사항을 반드시 고려하시어 사용하여 주셔야 합니다.

그리고 이전 Chapter에서 말씀 드린 것과 같이 PCI-E는 Serial 방식이며, 높은 Bandwidth를 가질 수 있도록 하기 위해서는 Clock을 높인다고 이야기하였습니다. 상식적으로는 상위 버전 2.0에서 하위 버전 1.0을 지원하는 것이 옳다고 할 수 있으나, 간헐적으로 호환성에서의 문제가 발생을 하기도 합니다. 따라서 장치의 Specification을 확인하여, 지원하는 규격이 PCI-E 1.0 또는 2.0을 지원하는지 확인하여야 하며, 만약 1.0을 지원할 경우에는 BIOS에서 Slot에 대한 설정 변경이 필요합니다PCI-E 1.0으로 변경을 위해서는 BIOS Setting으로 들어가서 PCI Express의 Link Speed를 Gen1으로 변경하여 주시면 됩니다.




 필진 소개



윤춘범, Donald Yoon

(앤비젼 Application Engineer)

새로운 분야에 대한 탐구 정신으로 

다방면에서 활약하는 Applicaition Enginner



Posted by 비전만

댓글을 달아 주세요

[PCI 기술 백서 #2] PCI Compliance 형태 및 Data 전송 기술


3. PCI Express 란?

   

  지난 포스팅(2014/07/02 - [머신비전 기술 백서/기타] - PCI Compliance 형태 및 Data 전송 기술 #1_머신비전 실무 기술)에서 다뤘던 PCI 및 PCI-X 방식을 Parallel 방식을 사용하고 있습니다. PCI 및 PCI-X를 처음 사용하던 시기에는 사용하기 위한 속도에서 문제가 없었지만, 기술이 발전하고, 외부 입력 장치의 데이터 통신의 양이 많아짐에 따라서 더 빠른 고속 Data 전송 기술이 필요하게 되었습니다. Parallel 방식의 최대 단점은 속도를 개선하기 위해서는 Clock Frequency를 변경하거나 전송 통로를 연장하는 방식을 사용해야 하는데, 이미 한 차례 연장된 type인 PCI-X에서 확장하기에는 Main Board의 허용공간이 많지 않았고, Clock Frequency를 변경하기 위해서는 Parallel 방식에서의 신호 왜곡이 필요하지만, 이미 기술적인 한계에 도달하여 있었습니다. 따라서 이 부분을 개선하고자 Bus width 및 Clock Frequency를 높이기에 유리한 Serial 방식이 제안 되었고, PCI SIG에서 2002년 PCI Express interface를 만들게 됩니다.

  PCIe의 Pin-map을 살펴보시면, 아시겠지만, PCIe는 Lane을 통하여 전송하도록 설계되었습니다. Lane은 일반적으로 자동차가 다니는 도로라고 생각하시면 됩니다. 일반적으로 자동차 도로는 일방통행을 제외하고는 중앙선을 기준으로 차량이 반대로 다니게 되는데, PCIe도 동일하게 Transmit Lane과 Receive Lane이 존재하고 있어서, CPU로부터 데이터를 output하는 역할 또는 외부 장치로부터 Data를 input 할 수 있도록 되어 있습니다. 또한, 많은 Lane이 존재한다는 의미는 그 만큼 많은 자동차가 이동할 수 있다는 의미가 되기 때문에, Lane이 많을수록 많은 Data 전송이 가능합니다. 그리고 Lane이 증가하는 만큼 물리적으로 전송pin이 길어지게 됩니다.


Figure 1. PCIe 1x의 SOL6MCLB


Figure 2. PCIe 4x의 Xcelera PX4


Figure 3. PCIe 8x의 Xcelera-HS PX8


Figure 4. PCIe의 PinOut


  기존의 PCI 및 PCI-X의 경우, 전원 공급에서 form factor가 버전에 따라 다르게 제작되어, Universal PCI 규격을 사용하지 않을 경우에는 Slot에 장착조차 되지 않았습니다. 하지만, PCIe에서는 전원 공급에서의 부분이 1-11번 pin을 통하여 전달되도록 되어있습니다.


Figure 5. PCIe 전원부 PinOut


PCIe의 규격에서 속도를 높이기 위해서는 앞서서 설명을 드린 것과 같이 Clock Frequency를 높임으로 속도를 증가시키고 있습니다. Clock Frequency를 다른 부분에서는 Transfer rate르 부르기도 하는데, 쉽게 말하자면, 초당 보내는 bits라고 보시면 됩니다.


PCIe의 규격은 1.0부터 현재 많은 Main board에 적용되어진 3.0 그리고 차세대 Main board에 적용 될 4.0까지 Compliance되어 있습니다. 1.0부터 4.0까지 단계별로 변경될 때, Clock이 2배로 증가하며, 증가하는 만큼 전송 가능한 data도 2배로 증가하게 됩니다. 


PCI-Express

Standard

Lanes

Clock

Total Pin

Bandwidth

PCIe 1.0

1x

2.5GHz

36

512MB/s

4x

2.5GHz

64

2GB/s(Duplex)

8x

2.5GHz

98

4GB/s(Duplex)

16x

2.5GHz

164

8GB/s(Duplex)

PCIe 2.0

1x

5GHz

36

1GB/s

4x

5GHz

64

4GB/s(Duplex)

8x

5GHz

98

8GB/s(Duplex)

16x

5GHz

164

16GB/s(Duplex)

PCIe 3.0

1x

8GHz

36

2GB/s

4x

8GHz

64

8GB/s(Duplex)

8x

8GHz

98

16GB/s(Duplex)

16x

8GHz

164

32GB/s(Duplex)

 필진 소개



윤춘범, Donald Yoon

(앤비젼 Application Engineer)

새로운 분야에 대한 탐구 정신으로 

다방면에서 활약하는 Applicaition Enginner



Posted by 비전만

댓글을 달아 주세요

[PCI 기술 백서 #1]PCI Compliance 형태 및 Data 전송 기술

  우리가 흔히 사용하는 Graphic Card나 LAN card와 같이 외부 입출력 장치를 연결하기 위해서는 PC 메인 보드의 Slot을 흔히 사용합니다. 그 Slot의 종류는 1991년에 Intel을 중심으로 규격으로 제창된 PCI 부터 현재에는 PCIe 3.0까지 많은 변화들을 거치게 되었습니다. 특히 PCI 규격은 CPU와 데이터 이동 경로인 bus 사이에 bridge 회로를 구성하기 때문에, CPU의 종류에 관계 없이 사용할 수 있으며, bus mastering을 통하여 slot에 설치된 외부 입출력 장치에서 직접 bus에 대한 제어가 가능하여 필요 시 데이터를 우선 전송할 수 있는 특성을 가지고 있습니다.


  앞으로 이어질 3챕터를 통하여 Slot의 종류에 대하여 알아보고, Slot에 제약되는 Bandwidth 및 최대 성능으로 이어질 수 있는 Setting에 대해서 알아보도록 하겠습니다.


1. 'PCI'란 무엇인가?


PCI는 Peripheral Component Interconnection의 약자로 앞서 이야기한 것처럼 1991년 Intel의 중심으로 CPU와 주변 장치의 고속 데이터 전송에 대하여 제창된 규격을 뜻합니다. 현재는 PC를 32/64bit OS를 주로 사용하고 있지만, PCI가 제창될 시절에는 16bit에서 막 32bit로 넘어오는 시기였으며, 그 당시에 사용하던 ISA slot은 Graphic 출력이 높아짐에 따라 속도에서 한계를 나타나게 되었습니다.


Figure 1. ISA Slot


이에 맞춰서 Intel architecture lab에서는 ISA 대체 규격으로 PCI를 개발을 진행하였으며, 1993년 규격을 표준으로 채택하게 되며, 32bit와 64bit PCI가 동시에 발표 되었으나, 주로 32bit PCI를 사용되게 되었습니다.


PCI Slot의 형태는 중간 사이 홈에 따라서, 3.3V PCI Slot과 5V PCI Slot으로 구분이 됩니다. 외부 장치의 보호를 위하여 인가되는 전원에 따라서 Slot의 홈의 위치를 구분한 것입니다. 그 외의 대부분의 외부 장치는 Universal PCI Card로 제작이 되어 3.3V나 5V에서 모두 사용할 수 있도록 설계되었기 때문에, Universal PCI로 제작되었다면, PCI slot에 상관없이 장착하시면 됩니다.


Figure 2. 3.3V 32-bit PCI Slot


Figure 3. 5V 32-bit PCI Slot


Figure 4. Universal PCI Card(MeteorII-DIG)


 PCI

Standard

Bits Depth

Clock

Bandwidth

Feature 

PCI 2.3

32bits

 33MHz

 133MB/s

5V, 가장 흔한 방식

 66MHz

 266MB/s

3.3V, 거의 쓰이지 않음

PCI 64

32bits

 33MHz

 266MB/s

5V, 초기 서버 급 메인보드 채용

 66MHz

 533MB/s

PCI-X 전 서버 급 메인모드에서 쓰임


2. PCI-X란 무엇인가?

  

  PCI-X는 컴퓨터 내의 데이터 이동 속도를 66MHz에서 133MHz로 기존의 PCI Slot을 확장(64pin)하였다고 보시면 됩니다. 기존 PCI 64bit의 66MHz 방식과 동일하게 64bit에서 66MHz 사용 시 533MB/s의 Data Bandwidth를 가질 수 있습니다. 만약 133MHz로 동작하게 된다면, 1.06GB/s의 데이터 전송을 가능하게 합니다. 하지만, PCI-X는 PCI의 제품과 bits depth 차로 인하여 완벽한 호환 동작을 하지 않으며, 반대로 PCI-X 카드를 PCI에 설치하게 될 경우에는 속도저하가 생기게 됩니다. 간략하게 말씀 드리자면, 외장 카드 또는 Slot 중에서 속도가 느린 쪽에 맞추어 동작한다고 생각하시면 됩니다.


PCI-X 역시 Slot의 홈의 위치에 따라서 사용할 수 있는 외장 카드가 제한이 됩니다. 기존 PCI 방식에서 확장이 된 방식이기 때문에, 3.3V PCI-X Slot과 5V PCI-X Slot으로 나뉘며, 두 슬롯에 동시에 사용 가능한 Universal PCI-X Card가 있습니다.


Figure 5. 3.3V PCI-X Slot


Figure 6. Universal PCI-X Card (SOL6MCL)


PCI - X

 Standard

 Bits Depth

 Clock

 Bandwidth

PCI-X 1.0

64bits

66MHz

533MB/s

100MHz

800MB/s

133MHz

1600MB/s

 PCI-X 2.0(DDR)

64bits

133MHz

2132MB/s

PCI-X 2.0(QDR)

64bits

133MHz 

4264MB/s


 필진 소개



윤춘범, Donald Yoon

(앤비젼 Application Engineer)

새로운 분야에 대한 탐구 정신으로 

다방면에서 활약하는 Applicaition Enginner



Posted by 비전만

댓글을 달아 주세요