6/11/2011

Simple Video Security

프로그램 시연영상: Release_mode.avi

소스코드VideoSecurity.zip

프로그램 실행파일program.zip

 

1. 개발환경

. 개발 언어: C#

. 개발 툴: Visual Studio 2010 – Windows Version

. 기타요소

— EmguCV Library

— .NET Framework v3.5

— Logitech QuickCam S7500

 

2. 프로젝트 소개

. 목표

본 프로그램은 침입자가 있는지 검사해주는 프로그램이다. 빈 사무실 같은 곳에 프로그램을 가동시키면, 기준 영상에 변화가 생기면 침입자가 들어온 것으로 판단해 해당 영상을 PC에 저장한다.

. Flow

  1. 비디오 스트림으로부터 인풋 이미지를 캡쳐한다.
  2. 받아온 인풋 이미지를 Gray 이미지로 변환한다.
  3. 기존 이미지에서 인풋 이미지를 뺀다.
  4. 3번 결과로 나온 이미지를 Thresholding 한다.
  5. 4번 결과로 나온 이미지를 모폴로지 연산을 통해 노이즈를 제거한다.
  6. 변화된 부분의 비율을 검사해 일정 비율 이상이면 침입자가 발생한 것으로 판단해 이미지를 저장한다.

Video Security 프로그램은 ‘그림 1. 일반적인 영상처리 프로세스’를 참고해 영상처리 프로세스를 생성했다. Video Security 프로그램의 영상처리 프로세스는 ‘그림 2’에서 확인할 수 있다.

image
그림 1. 일반적인 영상처리 프로세스

 

image
그림 2. Video Security 프로그램 영상처리 프로세스

 

. UI

  • 검사 시작 버튼: 웹캠으로부터 실시간으로 영상을 받아들인다.
  • 기준영상 등록 버튼: 현재 웹캠으로부터 받아들이는 한 Frame의 영상을 캡쳐해 비교대상 사진으로 씀
  • 영상 크기조절 트랙 바: 웹캠으로부터 받아들이는 영상의 크기를 조정한다.
  • 검출결과 저장위치 설정 버튼: 검출결과 저장 폴더를 설정하는 버튼이다.
  • 카메라 입력: 웹캠으로부터 받아들이는 영상이 출력되는 곳
  • 기준영상: 기준영상 등록 버튼을 통해 입력된 기준 영상이 보여지는 곳
  • 기준 영상과 현재 영상의 차: 기준영상 – 현재 인풋영상의 Gray 이미지를 출력하는 곳
  • 잡음제거 영상: 차 영상을 모폴로지 연산을 통해 잡음을 제거한 영상

image
그림 3. Video Security 프로그램 UI

 

 

. 프로그램 실행 결과

그림 5처럼 침입자가 발생하면 왼쪽 위의 이미지를 지정된 폴더에 저장한다.

image
그림 4. 기준 영상이 등록된 프로그램 실행 화면



image
그림 5. 침입자가 발생했을 때 프로그램 실행 화면

댓글 없음:

댓글 쓰기