현실감각 0% :: [C#, openCVSharp] SURF를 이용한 PCB 쇼트-서킷(short circuit) 검출

컴퓨터 관련 2011. 11. 10. 14:17

[C#, openCVSharp] SURF를 이용한 PCB 쇼트-서킷(short circuit) 검출




저번 포스팅에 썼던 SURF를 이용하여 수작업으로 조립하는 사이드키 납땜부분의 쇼트-서킷(이하 쇼트) 검출 프로그램 개발!





순서는...

일단 입력영상을 SURF를 이용하여 원근변환(Perspective Transform) 적용 후





검출영역을 ROI로 설정하고, Otsu 알고리즘으로 이진화 한 후에 레이블링해서 레이블 개수로 판별-_-;
뭐 아직 연구개발 초창기니까-_-;;;;;;

 


이놈은 쇼트 난 영상 결과. 맨 아래 깔끔한 영상은 비교영상이다.



이녀석은 양품


귀찮아서 대충 레이블링으로 쇼트 여부를 검출하였지만, 모폴로지 연산과 컨투어, 컨벡스헐 등을 잘 조합하면 훨씬 좋은(그래봤자 openCV에서 전부 제공하는 기본 영상처리지만...ㅋㅋㅋㅋ) 성능을 보일것으로 판단된다.

최신 논문들도 좀 보고 계속 공부해야하는데 단순한 영상처리 소스 몇개 조합해서 하루하루 대충 수습하는 중..ㅠㅠ 과장님 죄송합니다.ㅠㅠ SQMS도 해야하고, 자재관리하는 프로그램도 만들어야하고, 인사관리시스템 급여부분도 만들어야하고, 각종 버그도 수정해야하고... 시간이 없어요.ㅠㅠ흑흐그흐그그휴ㅜㅠ

소스는 저번 포스팅에 있는 SURF 소스에 ROI 설정부분과 레이블링 소스만 추가(-_-;;)