본 논문에서는 SURF 알고리즘을 이용하여 PCB에 발생하는 불량 중 한 형태인 쇼트-서킷 불량을 탐지하는 기술을 제안한다. 제안하는 방법의 기본적인 절차는 SURF를 이용하여 샘플 영상과 입력된 영상에서 특징점 추출, 특징점 매칭 및 매칭 결과를 이용한 원근변환 수행, 검사 위치 관심영역 추출, 이진화 및 쇼트-서킷 추출, 결과 검증 순이다. 본 논문에서 제안하는 방식은 수작업으로 진행되는 후 공정의 특징 상, 검사하고자 하는 PCB의 놓여진 위치와 각도가 균일하지 않고 제각각으로 놓여 있는 경우에도 강건하게 쇼트-서킷 불량을 탐지하는 것에 중점을 두고 있다. 이 방법은 PCB가 놓여진 위치와 각도가 다양한 경우에도 불량을 탐지할 수 있음을 보이며, 탐지율 및 탐지시간 관점에서 기존의 수작업으로 검사하는 경우보다 우수함을 실험을 통하여 보인다.
본 논문에서는 SURF 알고리즘을 이용하여 PCB에 발생하는 불량 중 한 형태인 쇼트-서킷 불량을 탐지하는 기술을 제안한다. 제안하는 방법의 기본적인 절차는 SURF를 이용하여 샘플 영상과 입력된 영상에서 특징점 추출, 특징점 매칭 및 매칭 결과를 이용한 원근변환 수행, 검사 위치 관심영역 추출, 이진화 및 쇼트-서킷 추출, 결과 검증 순이다. 본 논문에서 제안하는 방식은 수작업으로 진행되는 후 공정의 특징 상, 검사하고자 하는 PCB의 놓여진 위치와 각도가 균일하지 않고 제각각으로 놓여 있는 경우에도 강건하게 쇼트-서킷 불량을 탐지하는 것에 중점을 두고 있다. 이 방법은 PCB가 놓여진 위치와 각도가 다양한 경우에도 불량을 탐지할 수 있음을 보이며, 탐지율 및 탐지시간 관점에서 기존의 수작업으로 검사하는 경우보다 우수함을 실험을 통하여 보인다.
In this paper, we propose a new short-circuit detecting method which can detect bad short-circuits, one of bad types occurring in PCB(Printed Circuit Board), by using SURF(Speeded-Up Robust Features) algorithm. The basic procedure in the proposed method sequentially consists of extracting features f...
In this paper, we propose a new short-circuit detecting method which can detect bad short-circuits, one of bad types occurring in PCB(Printed Circuit Board), by using SURF(Speeded-Up Robust Features) algorithm. The basic procedure in the proposed method sequentially consists of extracting features from both sample and inputted images by SURF, performing perspective transform by feature matching and matching results, extracting check areas of interest, binary coding and extracting short-circuits, and verifying results. The proposed method focuses on the robustness which can detect bad short-circuits even though the position and angle of PCB are not uniform and arbitrarily placed. Experimental results show that our method enables to detect bad short-circuits regardless of the location and angle of PCB placed variously and validate that the proposed method outperforms the conventional methods detecting bad short-circuits manually on the aspect of both the detection rate and time.
In this paper, we propose a new short-circuit detecting method which can detect bad short-circuits, one of bad types occurring in PCB(Printed Circuit Board), by using SURF(Speeded-Up Robust Features) algorithm. The basic procedure in the proposed method sequentially consists of extracting features from both sample and inputted images by SURF, performing perspective transform by feature matching and matching results, extracting check areas of interest, binary coding and extracting short-circuits, and verifying results. The proposed method focuses on the robustness which can detect bad short-circuits even though the position and angle of PCB are not uniform and arbitrarily placed. Experimental results show that our method enables to detect bad short-circuits regardless of the location and angle of PCB placed variously and validate that the proposed method outperforms the conventional methods detecting bad short-circuits manually on the aspect of both the detection rate and time.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
하지만이 방법은 소벨 에지를 특징으로 사용하여 에지가 많이 검출되는 PCB의 특징 상, 통상적으로 우수한 검출율을 보이지만, PCB의 에지 검출 여부에 따라 검출률이 달라질 수 있으며 PCB 회로도의 에지가 주로 곡선으로 나타난 경우 기대 이하의 검출율을 보였다. 따라서 본 논문에서는 환경변화에 불변하는 특징점을 찾는 알고리즘 중, 우수한 성능으로 잘 알려진 SIFT[2]에 견줄만한 성능을 보이면서도 속도를 크게 개선한 알고리즘인 SURF(Speeded-Up Robust Features)[3] 알고리즘을 사용하여 정형화 영상과 입력 영상을 매칭하여 입력영상을 정형화 시킨 후, 쇼트-서킷(서로 떨어져 있어야 하는 회로가 땜납(Solder)의 점성에 의해 서로 엉겨 붙어 합선되는 불량 현상)의 유무를 검사하는 방법을 제안한다.
본 논문에서는 샘플 영상에 쇼트-서킷이 발생할 수 있는 지점에 마우스를 이용한 인터페이스를 제공하여 [그림 9]와 같이 사각형의 관심 영역을 지정하도록 설계하였다.
본 방법은 기존의 불량 검사 시스템의 단점인 자유롭게 위치하거나 회전된 PCB 영상에서 불량을 검출하는 방법을 제안하였다. 이 방법은 전 공정이 수작업으로 진행되는 후공정과 같은 기존의 불량 검사 시스템이 적용되기 어려운 부분에서도 불량 검출을 자동화 할 수 있다는 장점이 있어 SMT 공정을 제외한 여러 공정에서 유용하게 쓰일 수 있는 방법이다.
제안 방법
단 이 방법은 유사도가 가장 높은 1개의 특징은 매칭이 100% 정확하다는 전제하에 사용할 수 있는 방법이므로, 흰 배경과 같이 특징으로 사용되기 어려운 영역이 특징으로 선정된 경우에는 유사도가 가장 높더라도 매칭 결과가 기대 이하인 경우가 많기 때문에 잡음 제거에 사용할 수 없다. 따라서 유사도가 가장 높은 특징점 n개를 추출 후, 샘플 영상과 입력 영상 각각에 대해 가장 유사도가 높은 점 I1으로 다른 특징점들과의 거리를 산출한 후, 거리를 1:1로 비교한다. 이 과정을 통해 샘플 영상과 입력 영상간의 거리 비교값 평균이 일정 이상 차이가 날 경우 해당 특징점 I1는 기준점에서 제외되고 그 다음으로 유사도가 높은 점 I2를 기준점 후보로 사용한다.
본 논문에서는 H. Bay, A. Ess, T. Tuytelaars 와 L.V.Gool[3]가 제안한 고속 특징 추출 방법인 SURF를 사용하여 PCB 영상에서 특징을 추출한다. SURF는 근사화된 헤이시안 행렬식의 회선을 통해 특징 점을 추출하는 알고리즘이다.
이 때, 전혀 유사하지 않은 특징 백터끼리 매칭 될 수 있기 때문에 가중치를 두어 유사도가 일정 수치 이하일 경우 가장 유사한 특징일 경우라도 매칭시키지 않는다. 본 논문에서는 유사도가 80%를 넘지 않을 경우 매칭을 포기하였다. [그림 7]은 샘플 영상과 입력 영상 간에 매칭된 특징들을 보여준다.
이 과정을 통해 샘플 영상과 입력 영상간의 거리 비교값 평균이 일정 이상 차이가 날 경우 해당 특징점 I1는 기준점에서 제외되고 그 다음으로 유사도가 높은 점 I2를 기준점 후보로 사용한다. 본 논문에서는 최대 3개의 특징점을 기준점 후보로 사용하였으며, 거리 비교값 평균이 15% 이상 차이가 날 경우 해당 특징점을 기준점 후보에서 제외하였다.
영상 또는 찾고자 하는 객체의 크기에 불변하지 않는 특징을 얻기 위해서 영상의 크기를 변경하지 않고 근사화된 사각 필터의 크기를 변화시켜 특징을 추출한다. 이때 식 (1)을 이용해 얻은 적분 영상을 본 필터와 회선하면 4개의 픽셀값만 이용하여 고속으로 특징점을 찾을 수 있다.
영상 촬영 방법은 PCB에 휴대폰용 카메라를 조립하는 후공정 라인에서 삼각대와 아크릴판을 이용하여 제작한 간이 암실을 이용하여 5프레임 간격으로 촬영하였다.
2로 사용하였으며 본 논문에서도 동일하게 적용하였다. 이렇게 생성한 특징점들이 회전에 불변하는 특성을 갖게 하기 위해서 특징점을 중심으로 하는 주변영역 6s 반경 내의 픽셀들에 대해 Haar 웨이블릿 필터[그림 4]를 이용하여 가로 방향의 웨이블릿 특징(dx)와 세로 방향의 웨이블릿 특징(dy)을 계산한다. 여기서 s = 1.
이후 원근 변환 과정을 거친 입력 영상에서 샘플 영상에 설정한 위치와 동일한 영역을 추출한 후 해당 위치에서 쇼트-서킷이 발생하였는지 검사하는 과정을 수행한다. 쇼트-서킷이란 서로 떨어져 있어야 하는 회로가 부품의 접착을 위해 도포하는 땜납의 점성에 의해 서로 엉겨 붙어 합선되는 불량 현상으로 본 논문에서는 레이블링을 이용하여 땜납의 개수를 확인하는 방법을 통해 불량 유무를 확인한다.
정형화를 위한 샘플 영상과 카메라에서 입력받은 영상[그림 6]에 위에서 설명한 SURF를 이용하여 특징을 각각 추출하고, 샘플 영상의 4개의 특징 백터를 입력 영상에서 검출한 각 특징의 특징 백터와 1:1 비교하여 가장 유사한 특징끼리 매칭을 수행한다.
제안하는 방법의 기본적인 절차는 제각각으로 놓여진 부품의 영상을 촬영한 후, SURF 알고리즘을 이용하여 각각 특징을 찾고, 유사한 특징을 1:1 매칭한 후, 원근 변환을 이용하여 영상을 정형화 하고, 정형화 된 영상에서 불량이 존재할 수 있는 후보영역에 대해 쇼트-서킷 유무를 측정하여 최종적으로 쇼트-서킷 불량을 탐지한다.
카메라의 초점거리가 고정되어 있고, 촬영하고자 하는 객체가 해당 초점거리를 벗어나지 않는다면 각각의 특징 점의 위치는 모두 다르게 나타나겠지만, 객체의 특정한한 점에서 각 특징점간의 거리는 변하지 않으므로 본 논문에서는 기준점을 마련한 후, 해당 기준점과 각 특징점 간의 거리를 측정하여 유사도를 산출한다. 산출식은 식 (3)과 같다.
대상 데이터
입력받은 영상은 VGA 해상도(640×480)의 그레이스케일 영상을 사용하였으며, 실험에 사용된 영상은 불량품 27개를 서로 다른 위치와 각도로 놓고 촬영한 100장의 영상 및 동일한 방법으로 촬영한 양품 영상 50개를 사용하였다. 모델은 휴대폰을 구성하는 메인 PCB 3종을 사용하였으며 영상의 개수와 구성은 [표 1]과 같다.
본 실험에 사용한 컴퓨터는 Intel Pentium Ducal-Core CPU 2.70GHz, 2.71GHz CPU와 4GB RAM을 사용하였으며, 그래픽카드는 Nvidia GeForce 8600, 운영체제는 Windows 7, 사용언어는 C#을 사용하였다. 카메라는 Point Grey 사의 FFMV-03M2M와 Microsoft LifeCam VX-3000 Webcam 두 개를 혼용하여 테스트를 수행하였다.
입력받은 영상은 VGA 해상도(640×480)의 그레이스케일 영상을 사용하였으며, 실험에 사용된 영상은 불량품 27개를 서로 다른 위치와 각도로 놓고 촬영한 100장의 영상 및 동일한 방법으로 촬영한 양품 영상 50개를 사용하였다.
71GHz CPU와 4GB RAM을 사용하였으며, 그래픽카드는 Nvidia GeForce 8600, 운영체제는 Windows 7, 사용언어는 C#을 사용하였다. 카메라는 Point Grey 사의 FFMV-03M2M와 Microsoft LifeCam VX-3000 Webcam 두 개를 혼용하여 테스트를 수행하였다.
이론/모형
식 (6)을 이용하여 산출한 원근 변환 행렬을 입력 영상의 각 픽셀값에 대입하면 [그림 8]과 같이 샘플영상과 동일한 각도 및 위치로 변환할 수 있다. 변환 시 픽셀값이 존재하지 않는 일부 영역이 발생할 수 있으며, 이는 B-스플라인 보간법을 이용하여 보간하였다.
의 회선 결과 값을 의미한다. 하지만 본 방법은 근사화된 헤이시안 검출기를 사용한다. 근사화된 헤이시안 검출기는 그림 [그림 3-a]과 같은 형태를 띄는 미분 필터를 사용하는 대신, [그림 3-b]와 같은 근사화된 사각 필터를 사용한다.
성능/효과
뿐만 아니라 기존의 SMT 자동검사장비는 고정된 PCB에 적용되기 떄문에 로봇팔을 이용하여 PCB의 여러 부분을 나누어 촬영할 수 있으며, 카메라의 해상도가 낮은 경우에도 상당히 정밀하게 불량 유무를 측정할 수 있지만, 본 방법은 SURF를 적용하기 위해서 하나의 카메라로 PCB의 전체적인 부분을 촬영하기 때문에 고해상도 카메라가 필요할 뿐만 아니라, 1mm~2mm 이하의 소형 부품의 경우에는 불량 유무를 탐지할 수 없으며, 전체 영상에서도 육안으로 확인할 수 있는 쇼트-서킷 불량과 같은 일부 불량만 탐지할 수 있었다.
Erdogan[1]은 유전자 알고리즘을 기반으로 한 검사 시스템을 제안하였다. 하지만이 방법은 소벨 에지를 특징으로 사용하여 에지가 많이 검출되는 PCB의 특징 상, 통상적으로 우수한 검출율을 보이지만, PCB의 에지 검출 여부에 따라 검출률이 달라질 수 있으며 PCB 회로도의 에지가 주로 곡선으로 나타난 경우 기대 이하의 검출율을 보였다. 따라서 본 논문에서는 환경변화에 불변하는 특징점을 찾는 알고리즘 중, 우수한 성능으로 잘 알려진 SIFT[2]에 견줄만한 성능을 보이면서도 속도를 크게 개선한 알고리즘인 SURF(Speeded-Up Robust Features)[3] 알고리즘을 사용하여 정형화 영상과 입력 영상을 매칭하여 입력영상을 정형화 시킨 후, 쇼트-서킷(서로 떨어져 있어야 하는 회로가 땜납(Solder)의 점성에 의해 서로 엉겨 붙어 합선되는 불량 현상)의 유무를 검사하는 방법을 제안한다.
후속연구
그럼에도 불구하고 본 방법은 수작업으로 진행되는 공정 중간에서 불량을 빠르게 탐지할 수 있다는 장점이 있기 때문에 SURF가 아닌 다른 특징 추출 알고리즘을 적용하거나 SURF 알고리즘을 개선하여 영상을 보다 정확하게 원근 변환하는 방법을 지속적으로 연구하고, 고해상도 카메라의 사용 또는 여러 카메라를 이용하여 분할 촬영하는 방법 등을 적용하여 쇼트-서킷 이외의 보다 정밀한 촬영을 요하는 불량의 검출을 탐지하는 연구를 지속한다면 좋은 결과가 있을 것으로 판단된다.
질의응답
핵심어
질문
논문에서 추출한 답변
쇼트-서킷이란 무엇인가?
이후 원근 변환 과정을 거친 입력 영상에서 샘플 영상에 설정한 위치와 동일한 영역을 추출한 후 해당 위치에서 쇼트-서킷이 발생하였는지 검사하는 과정을 수행한다. 쇼트-서킷이란 서로 떨어져 있어야 하는 회로가 부품의 접착을 위해 도포하는 땜납의 점성에 의해 서로 엉겨 붙어 합선되는 불량 현상으로 본 논문에서는 레이블링을 이용하여 땜납의 개수를 확인하는 방법을 통해 불량 유무를 확인한다.
원근 변환 행렬은 언제 필요한가?
매칭된 특징점 간의 관계를 이용하여 입력 영상을 샘플 영상과 동일하게 변환하는 작업을 수행하여야 하는데이 때 필요한 것이 바로 원근 변환 행렬이다. 원근 변환 행렬의 기본 식은 식 (4)와 같다.
후공정의 자동 검사는 사람이 직접 수작업으로 부품을 조립하기 때문에 어떤 제약이 따르는가?
하지만 SMT 공정에 비해 후공정의 자동 검사는 수많은 제약이 따른다. 첫 번째 문제는 사람이 직접 수작업으로 부품을 조립하기 때문에 컨베이어벨트를 통해 이동하는 제품의 위치를 정형화 하기 어렵다는 것이다. 자동으로 진행되는 SMT 공정의 경우에는 실장 시 약간의 틀어짐도 불량에 영향을 미치기 때문에 [그림 1-a]와 같이 컨베이어벨트에 단단히 고정되어 정형화 된 형태를 띄고 있다.
참고문헌 (6)
S. Mashohor, J. R. Evans and A. T. Erdogan, "Automatic Hybrid Genetic Algorithm Based Printed Circuit Board Inspection", In First NASA/ESA Conference on Adaptive Hardware and Systems(AHS 2006). 2006.
D. G. Lowe, "Object Recognition from Local Scale-Invariant Features", In International Conference on Computer Vision, pp. 1150-1157, 1999.
H. Bay, A. Ess, T. Tuytelaars and L.V. Gool "Speeded-Up Robust Features(SURF)", Computer Vision and Image Understanding 110(3):346-359, 2008.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.