동적화소변화율을 고려한 움직이는 물체검출

지난주에 OpenCV를 이용해 화상카메라로부터 영상을 받아, 움직이는 물체를 검출해 보는 코드를 작성해 보았는데, 여기에 자동으로 움직이는 물체가 있을 시에 그 영상을 캡춰받아 자동으로 저장하도록 해보았다.

회사에서 퇴근하는 아무개님(초상권을 위해 모자이크 처리 ㅡㅡ;)
문제는 영상에서 움직이는 물체가 있는지 없는지의 기준이 필요한데, 그 기준을 동적화소변이율을 사용하였다. 동적화소변이율은 영상을 구성하고 있는 전체 화소값(0~255)에서 변화된 화소값의 차이를 다시 백분율로 계산한 것이다. 이 동적화소변화율은 그냥 어찌 저찌 해서 직접 만들어낸 공식이므로 영상관련 책을 암만… 찾아봐도 않나온다. ㅡ_ㅡ; 그래서 자세한 수식을 제시하면…

동적화소변이율=((모든 바뀐 픽셀 차이값의 합)/(영상을 구성하는 픽셀수*255))*100

사용하고 있는 화상카메라를 기준으로 했을때 동적화소변이율이 0.5% 미만일 경우 화면상에 움직이는 물체가 없다고 판단했을때 정확히 일치했다. 그리고 0.5이상일때부터 영상에 움직이는 물체가 나타나기 시작했다가 1% 이상일때 움직이는 물체가 화면의 중앙에 위치한 상태였다. 동적화소변이율이 1%일때의 영상을 날짜와 시간을 파일명으로 해서 저장하도록 했다.

다음 단계는 움직이는 물체가 “누구(Who)”인지를 자동으로 판별해 내는 것..! 두둥~! 이를 위해 필요한 알고리즘은 무엇인가?

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다