2013-11-26 2 views
3

Android에서 기본 OpenCV (최신 버전 : OpenCV-2.4.7-android-sdk)를 사용하려고합니다. OpenCV에서 제공하는 모든 샘플은 다시 카메라와 가로보기를 사용합니다. I는 다음과 같이 변경 수행해야합니다안드로이드 네이티브 OpenCV와 함께 세로보기에서 정면 카메라를 사용하는 방법

  1. 정면 카메라를
  2. 세로
  3. 기록 비디오

우선이 코드를 추가합니다 "mOpenCvCameraView.setCameraIndex (1);" 정면 카메라를 사용합니다. 작동하지만 화면에 표시된 이미지가 회전합니다 (아래로 내려). OpenCV에서 플립 기능을 사용하여 올바르게 표시해야합니다. 그러나 이미지 데이터도 뒤집 힙니다. 이미지 처리를하고 싶습니다. 조 변경 및 반전 작업을 수행해야합니다. 나는이 단계를 시도했다. 정말 시간이 많이 걸립니다. 심지어 나는 아무것도하지 않으며, 비디오는 실시간이 아닙니다.

둘째로, 뒤집기 프로세스를 피하기 위해 XML 파일을 "android : screenOrientation ="portrait ""로 수정하여 세로보기를 사용하려고합니다. 그것은 또한 작동하지만 여기에 문제가 있습니다, 이미지의 일부만이 화면에 보여 질 수 있습니다. 이미지가 잘린 것처럼 보입니다. 이 문제는 매우 일반적입니다. 나는 많이 봤지만 해결책을 찾을 수 없다. Android에서 CameraView 클래스를 사용하면 기본 카메라 앱을 사용하게됩니다. 괜찮 았지만 Jave/Android가 처음 이래로 OpenCV로 이미지 데이터를 조작하는 방법을 모르겠습니다.

마지막으로, 처리 된 이미지를 비디오에 저장하고 싶습니다. 나는 OpenCV가이 기능을 제공하지 않는다는 것을 알아 차렸다.

누구든지이 문제를 해결할 수 있습니까? 감사.

답변

0

당신은 내 솔루션 here.

난 그냥 "onCameraFrame"이벤트에 입력 한 후 이미지를 조작 할 볼 수 있습니다.

짧은 설명 : 입력 행렬을 변형하고 뒤집어 크기를 화면에 맞게 변경했습니다.

희망이있었습니다.

+0

위에서 언급 한 것처럼이 방법을 시도했습니다. 그러나 비디오는 매우 느립니다. 그것이 디버그 모드에 있는지 모르겠습니다? – user3036886

관련 문제