Подробное руководство можно получить из OpenCV4Android SDK .Посмотрите на их доступные примеры, в частности Tutorial 1 Basic. 0 Android Camera
Но, как это было в моем случае, для интенсивной обработки изображений, это будет медленнее, чем приемлемо для приложения обработки изображений в реальном времени.Хорошая замена для преобразования их байтового массива onPreviewFrame
в YUVImage:
YuvImage yuvImage = new YuvImage(frame, ImageFormat.NV21, width, height, null);
Создайте прямоугольник такого же размера, как изображение.
Создайте ByteArrayOutputStreamи передайте это, прямоугольник и значение сжатия для compressToJpeg ():
ByteArrayOutputStream baos = new ByteArrayOutputStream();
yuvimage.compressToJpeg(imageSizeRectangle, 100, baos);
byte [] imageData = baos.toByteArray();
Bitmap previewBitmap = BitmapFactory.decodeByteArray(imageData , 0, imageData .length);
Визуализация этих превью-фреймов на поверхности и использование лучших практик - это новое измерение.=) * * Один тысяча двадцать-шесть