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 파일을 받으시면 됩니다.
'진행중인 프로젝트 > 미니 프로젝트' 카테고리의 다른 글
06. U-Net을 활용한 Car Segmentation from Scratch ( 안드로이드 ) (1) | 2019.09.21 |
---|---|
05. Car Number Plate Detector ( 안드로이드 ) (0) | 2019.09.21 |
04. OCR_EMNIST ( 안드로이드 ) (0) | 2019.09.20 |
02_Cats And Dogs Classifier ( 안드로이드 ) (1) | 2019.08.23 |
01_Neural Style Transfer (0) | 2019.08.23 |