我为 Android 操作系统开发应用程序,它可以帮助您在相机的帮助下进行绘图。应用程序以从相机槽捕获帧的方式工作onPreviewFrame(byte[] data, Camera camera)
,并从这里将图片转换为二进制黑/白。一般应用程序有效,但我有以下问题:
通过 onPreviewFrame 捕获图像真的很慢。现在我跳过帧,但方法仍然很慢。
YuvImage yuvImage = new YuvImage(data, ImageFormat.NV21, width, height, null); ByteArrayOutputStream baos = new ByteArrayOutputStream(); yuvImage.compressToJpeg(new Rect(0,0,width, height), 100, baos); byte [] imageData = baos.toByteArray(); Bitmap bmp = BitmapFactory.decodeByteArray(imageData , 0, imageData .length); bmp = Bitmap.createScaledBitmap(bmp, surfaceView.getMeasuredHeight(), surfaceView.getMeasuredWidth(), false); Bitmap bmps = ImageHelper.rotate(bmp, kot);
有什么方法可以更快地获取图片吗?
我还注意到每几帧图片都不相同(不同的直方图),尽管手机完全静止并且光线相同。