티스토리 뷰

사용자 삽입 이미지


OpenCV 중에서 cvcam 을 이용해 카메라에 연결하고 영상을 받아서 파일로 저장하는 클래스와 이를 이용한 예제 응용 프로그램입니다. cvcam으로 카메라에 연결하면 보통 창을 띄워서 프리뷰를 계속 돌리는데, 창이 새로 뜨는게 싫다면 참고해보세요.

첨부된 압축파일을 풀고 debug 폴더를 보면 실행파일과 실행에 필요한 dll 파일들이 있고.. proxytrans.ax 모듈을 등록해줘야 하는데 이건 RegisterModule.bat 파일을 실행하면 됩니다.

메모리 주소로 넘겨주는 캡쳐는 파일로 저장한 것을 단순히 메모리에 적재시켜서 주소와 길이를 넘겨주는 것이므로 착오 없기를 바랍니다. JPEG 파일을 그대로 메모리에 올려달라고 요구해서리.. OpenCV에는 JPEG 파일로 저장하는거 말고 변환만 하는 그런 함수같은게 없는 것 같드라구요. c_temp.jpg로 일단 파일 캡쳐를 한 후 이걸 메모리로 불러와서 주소를 넘겨줍니다. 제대로 넘어왔는지 확인해보기 위해 응용에서 그대로 test.jpg 라는 파일로 저장을 하는 것이구요.

용량 관계로 OpenCV는 포함하지 않았으므로 OpenCV 1.0을 설치 후 컴파일 가능하며, 아마 DirectX SDK도 설치해야 돌아갈겁니다. 최신의 DirectX SDK는 directshow 관련 샘플들이 없어서 그냥 9.0 SDK로 설치해서 작업했네요. 이런 저런 경로 설정은 알아서들 하시구요. VS.NET 2005 에서 작업했습니다. Release 빌드하면 어째선지 비스타에서 문제가 생기네요. XP에선 별 문제 없던데.

자세한 내용은 첨부된 압축파일을 풀고 나오는 doc 파일을 보시기 바랍니다.


Updated : 2008. 07. 29
Mutex & Event 를 사용해서 스레드 동기화 : 작업 완료 시기와 결과 반환 시기가 일치함
파일 저장 후 이를 다시 메모리에 적재해 주소를 반환하는 것은 의미가 없어서 그냥 삭제
MFC제공 함수 배제(CCamControl 클래스에 한함. win32 console, win32 app 등에서 문제 없도록)
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크