2012-03-10 13 views
7

Próbuję przechwycić obraz z podglądu kamery i przekonwertować go do obiektu Mat za pomocą OpenCV. Zarejestrowałem metodę callbak public void onPreviewFrame(byte[] data, Camera camera), więc odbieram wszystkie klatki podglądu z kamery, ale nie mogę jej przekonwertować na obiekt Mat OpenCV.Konwertuj ramkę podglądu na Androida na Matę OpenCV

obecnie używam następujący kod do konwersji podgląd data do obiektu Mat:

Mat previewFrameMat = new Mat(1, data.length, CvType.CV_8U); 
previewFrameMat.put(0, 0, data); 

Czy to jest poprawny sposób to zrobić? Czy używam właściwego typu obrazu (CvType.CV_8U)?

Odpowiedz

8

Czy widziałeś, jak robią to próbki OpenCV?

mYuv = new Mat(getFrameHeight() + getFrameHeight()/2, 
    getFrameWidth(), CvType.CV_8UC1); 

.... 

mYuv.put(0, 0, data); 

Pełna źródłowy można znaleźć w pakiecie z systemem Android od SourceForge lub tutaj: http://code.opencv.org/projects/opencv/repository/entry/trunk/opencv/samples/android/tutorial-1-addopencv/src/org/opencv/samples/tutorial1/Sample1View.java

+0

Dzięki. nie mogę uwierzyć, że to przegapiłem. – Muzikant

Powiązane problemy