ImageHandler 0.0.1 버전 주소 => 링크



최근에 CNN을 다루면서 기본적인 컴퓨터 비전 알고리즘과 OpenCV 및 Qt의 복습 필요성을 느껴서 만들어본 프로젝트 입니다.

기존의 픽셀 및 기하학적 변형 알고리즘들 위주로 했던 0.0.1버전에서 OpenCV 라이브러리를 추가해서 이미지 이외에 영상처리 알고리즘을 적용했습니다.

Qt에서 QML을 이용해서 이전 보다 UI를 개선했습니다.. 



< 메인화면 >


ImageProcessing과 VideoPocessing으로 나누어져 있습니다.





ImageProcessing의 하위메뉴는 다음과 같습니다.

Smooth : 가우시안 블러 적용

Erode : Erode 모폴로지 연산 적용

Dilate : Dilate 모폴로지 연산 적용

Contours : 경계선 추출 알고리즘 

H Lines : 수평선 경계 추출 

V Lindes : 수직선 경계 추출

Laplacian : 라플라시안 필터 적용

Canny : 캐니 필터 적용



< 원본 이미지 로드 화면 >




< 블러 적용>



< 라플라시안 필터 적용>



< Suzuki85 알고리즘 기반 Contours 검출 (링크 : 논문) >



VideoProcessing의 하위메뉴는 다음과 같습니다.


비디오 로드

Subtract BG :  MOG2 알고리즘 기반의 전경 추출 ( 링크 : OpenCV Documentation )

Detect Color : inRange 함수를 이용한 HSV 공간에서의 특정 구간에 해당하는 픽셀만 추출하는 마스크 적용.

Open Cam : 컴퓨터에 연결된 캠을 출력합니다 ( 저는 캠이 없어서 Android에서 송출하는 RTSP 통신을 이용해서 받았습니다. videoCap -> open부분만 바꿔주세요.)

FaceDetect : Haar Cascade기반 Frontal Face 검출.

Yolo : Yolo v3를 이용한 80개 클래스 검출


< 비디오 로드 >



<위와 같은 영상에서의 전경 추출 마스크 >



< Haar Cascade 기반 얼굴 추출 ( 참고링크 : 설명 잘 되어있는 블로그 ) >



< YOLO 알고리즘 기반 객체 검출 ( 참고 링크 : 스탠포드 Andrew an 교수님의 Cousera 강의 )>





Ps.


OpenCV 복습차원에서 만들었는데. OpenCV + Qt + QML로 구성된 자료가 워낙 없어서 필요한분 있을까 올려봅니다.


관련 소스들을 토대로 CNN 모델 성능을 개선 시켜볼 예정입니다.


소스는 하단에 있고 궁금하신점 있으시면 댓글 달아주세요. Yolo 관련 파일은 <링크> 에서 원하시는 모델과 weight 파일을 받으시면 됩니다.


ImageHandler_0.0.2.zip












+ Recent posts