2012-06-27 3 views
3

저는 안드로이드 휴대 전화를 기반으로하는 시각 장애인을위한 돈 인식 시스템을 개발하고 있습니다. 이를 위해 OpenCV를 이미지 처리 프레임 워크로 사용하고 있습니다. 사각형 감지 모듈을 구현했으며 완벽하게 작동합니다.Android OpenCV 프로젝트의 성능 향상

전화 카메라는 초당 30 프레임을 방출하므로 처리 속도가 매우 느립니다. 나는 canny edge detection 알고리즘을 사용한다. 출력 결과는 Android SurfaceView에 그려집니다. 이 속도를 높이려는 제안이 있습니까? SurfaceViewGLSurfaceView으로 바꾸는 것은 어떨까요? 속도가 증가할까요?

내 장치에는 듀얼 코어 프로세서가 있습니다. 멀티 코어 프로그래밍은 어떻습니까? (안드로이드 용)

내 장치는 삼성 Galaxy S2입니다. OpenGL은 매우 (예, OpenGL을 확실히 빠른) 속도를 증가한다면

enter image description here

+0

내가 아는 한, SurfaceView는 소프트웨어 렌더링에만 사용됩니다. 하드웨어 가속을 위해 OpenGL을 사용하는 것을 고려해야합니다. –

+0

하드웨어 가속, 정확한 지점을 알고 싶습니다. 이런 상황에서 도움이 될까요 ?? – user1476945

+0

@Astor가 말했듯이, 성능 손실이 렌더링과 관련이있을 때만 도움이 될 것입니다. 그렇지 않으면 이미지 처리 코드를 개선해야합니다. –

답변

5

그것은 말할 어렵다.

그리기 및 OpenCV 계산에 소요되는 시간을 알아보기 위해 응용 프로그램을 벤치마킹하지 않는 이유는 무엇입니까?

:

  • 로드 한 화상과 확인에서 OpenCV (을 표시하지 않고) N 회 계산
  • 부하 동일한 이미지 표시 그것을 N

결과 비교. OpenCV가 (대략) 80 %의 시간이 소요된다면 OpenCV 알고리즘을 반드시 개선해야합니다. 그렇지 않으면 OpenGL을 사용하여 이미지를 표시하십시오.