대학교 졸업 후 DVR (Digital Video Recorder) 을 프로그래밍할 기회가 있었습니다. DVR은 쉽게 다수의 CCTV 카메라 영상을 녹화해 저장하는 장치입니다. 제가 만든 제품이 부산 사직야구장에 설치되었으며, 현재는 시간이 오래되어 아마 다른 제품이 설치되어 있을 것입니다. 당시, 녹화용량을 줄이기 위해 동영상의 정지 영상을 한 프레임씩 가져와 이전 프레임과 비교해 픽셀의 변화가 있는 경우 (움직임 감지) 저장하는 방식으로 구현했던 기억이 납니다. 요즘은 영상처리기술이 얼마나 진보했나 싶어 자료를 찾아보다 OpenCV 를 이용해 쉽게 얼굴, 눈, 전신, 상체, 하체 등을 인식하는 방법이 있어 소개합니다. 이 프로그램은 Python + OpenCV + PyQt5를 이용해 제작되었습니다. 프로그램 실행파일의 경로에 아래에 소개된 Haar Cascades.xml 파일이 같이 위치해야 합니다. Pyinstaller로 제작된 실행파일 링크 (PyQt5와 OpenCV 모듈에 필한 dll, lib 가 모두 single exe로 포함되어 용량(약 80MB)이 큽니다) 좋아하는 배우인 이선균씨 얼굴을 핸드폰에 띄우고 노트북 웹캠으로 얼굴, 눈을 인식해 봤습니다. [실행 화면] OpenCV 를 이용해 만들었으므로, 컴퓨터 비전에 대한 지식이 없어도 무방합니다. 아래 동영상은 포토샵의 '레나' 이미지를 인식시켜 본 결과입니다. OpenCV 란? 실시간 컴퓨터 비전을 목적으로 인텔에서 C++로 만든 크로스 플랫폼 라이브러리 파이썬에서도 python -m pip install opencv-python 으로 설치 후 사용 가능 ...