안드로이드 개발 질문/답변
(글 수 45,052)
이분 소스를 가져왔습니다.
http://billmccord.github.com/OpenCV-Android/
에뮬레이터 상에서 웹캠의 영상을 받아서 페이스 디텍트 하는 예제인데요..
에뮬레이터에서는 정상적으로 구동되는걸 확인했습니다.
이걸 폰에서 돌려보기 위해서... Socket 카메라 부분은 다 삭제해 버리고...SurfaceView 와 Camera 클래스를 구성해줬습니다.
그리고 SurfaceView 에서 PreviewCallback 으로 이미지를 넘겨주는 식으로 처리했습니다.
OpenCVSample, QTWebcamBroadcaster 두 프로젝트는 닫아버리고... VideoEmulation 프로젝트에서만 작업을 했습니다.
그런데 화면에는 나오질 않습니다. 아니... 들어간 데로 나옵니다. 카메라의 영상이 똑같이 나오는걸 보니 SurfaceView 에서 정상적으로 Bitmap 을 넘겨받은것은 확실한데요... OpenCV 쪽에서 제대로 처리를 못해주고 있는것 같습니다.
로그를 보면... 이런식으로 나오는거 보니... 인식은 하는것 같습니다.
또 사람얼굴이 없는곳에서는 FACES_DETECTED 가 항상 0 인걸 보면 제대로 얼굴을 인식한건 맞는것 같습니다만....좌표가 이상하고 실제 화면에 아무것도 그려지질 않습니다.
저 좌표로 Rect 를 그려봤더니 화면 왼쪽위 구석에만 자꾸 그려지더군요.
03-31 07:49:50.053: VERBOSE/MyCameraSurface(3345): FACES_DETECTED 3
03-31 07:49:50.133: DEBUG/dalvikvm(3345): GC_FOR_MALLOC freed 31 objects / 577320 bytes in 49ms
03-31 07:49:50.133: DEBUG/dalvikvm(3345): [ 03-31 07:49:50.133 3345:0xd33 S/CVJNI ]
03-31 07:49:50.133: DEBUG/dalvikvm(3345): Total Time to findAllFaces: 0.283783
03-31 07:49:50.133: DEBUG/VideoEmulation(3345): Face #0: Rect(0, 35 - 39, 39)
03-31 07:49:50.133: DEBUG/VideoEmulation(3345): Face #1: Rect(37, 39 - 39, 39)
03-31 07:49:50.133: DEBUG/VideoEmulation(3345): Face #2: Rect(76, 39 - 39, 39)
무엇이 문제일까요... 조금의 힌트라도 부탁드리겠습니다. 도통 여기서 진도가 나가질 않습니다.
감사합니다.
http://billmccord.github.com/OpenCV-Android/
에뮬레이터 상에서 웹캠의 영상을 받아서 페이스 디텍트 하는 예제인데요..
에뮬레이터에서는 정상적으로 구동되는걸 확인했습니다.
이걸 폰에서 돌려보기 위해서... Socket 카메라 부분은 다 삭제해 버리고...SurfaceView 와 Camera 클래스를 구성해줬습니다.
그리고 SurfaceView 에서 PreviewCallback 으로 이미지를 넘겨주는 식으로 처리했습니다.
OpenCVSample, QTWebcamBroadcaster 두 프로젝트는 닫아버리고... VideoEmulation 프로젝트에서만 작업을 했습니다.
그런데 화면에는 나오질 않습니다. 아니... 들어간 데로 나옵니다. 카메라의 영상이 똑같이 나오는걸 보니 SurfaceView 에서 정상적으로 Bitmap 을 넘겨받은것은 확실한데요... OpenCV 쪽에서 제대로 처리를 못해주고 있는것 같습니다.
로그를 보면... 이런식으로 나오는거 보니... 인식은 하는것 같습니다.
또 사람얼굴이 없는곳에서는 FACES_DETECTED 가 항상 0 인걸 보면 제대로 얼굴을 인식한건 맞는것 같습니다만....좌표가 이상하고 실제 화면에 아무것도 그려지질 않습니다.
저 좌표로 Rect 를 그려봤더니 화면 왼쪽위 구석에만 자꾸 그려지더군요.
03-31 07:49:50.053: VERBOSE/MyCameraSurface(3345): FACES_DETECTED 3
03-31 07:49:50.133: DEBUG/dalvikvm(3345): GC_FOR_MALLOC freed 31 objects / 577320 bytes in 49ms
03-31 07:49:50.133: DEBUG/dalvikvm(3345): [ 03-31 07:49:50.133 3345:0xd33 S/CVJNI ]
03-31 07:49:50.133: DEBUG/dalvikvm(3345): Total Time to findAllFaces: 0.283783
03-31 07:49:50.133: DEBUG/VideoEmulation(3345): Face #0: Rect(0, 35 - 39, 39)
03-31 07:49:50.133: DEBUG/VideoEmulation(3345): Face #1: Rect(37, 39 - 39, 39)
03-31 07:49:50.133: DEBUG/VideoEmulation(3345): Face #2: Rect(76, 39 - 39, 39)
무엇이 문제일까요... 조금의 힌트라도 부탁드리겠습니다. 도통 여기서 진도가 나가질 않습니다.
감사합니다.



