我想对从摄像头获取的像素进行一些图像处理。
问题在于从摄像头获取的像素旋转了90度。
我在onPreviewFrame(byte[] data, Camera camera)
方法中获取像素。
我尝试了camera.setDisplayOrientation(90);
,它可以以正确的方向显示视频,但是我仍然收到了旋转后的像素,如文档所述:
这不会影响通过Android.Hardware.Camera.IPreviewCallback.OnPreviewFrame(Byte[], Android.Hardware.Camera)传递的字节数组的顺序,JPEG图片或录制的视频。
我还尝试了以下方法:
parameters.setRotation(90);
camera.setParameters(parameters);
但是那并没有起作用。
我正在使用Android 2.2
上面的图片显示了使用camera.setDisplayOrientation(90);
时的SurfaceView。
第二张图片是从data
数组中获取的,在onPreviewFrame(byte[] data, Camera camera)
中得到。正如您所看到的,data
数组被旋转了。
libyuv
。在Android上,它会自动选择一个NEON实现,从而带来巨大的改进。 - Alex Cohn