0
我正在开发一款Android应用程序,它可以逐帧拍摄相机数据并计算每一帧的像素颜色平均值。问题是,虽然每秒调用相机回调onPreviewFrame(byte[] data, Camera camera)
约24次,但如果我在相机回调中进行计算,则回调频率会显着减慢到每秒8-10次回调,这太低。如何更快地执行相机数据计算?
例如:
mCamera.setPreviewCallbackWithBuffer(new Camera.PreviewCallback() {
@Override
public void onPreviewFrame(byte[] data, Camera camera) {
Log.e(tag, "Frame");
}
}
打印 “帧” 大约每秒24次,这是很好的。但是,
mCamera.setPreviewCallbackWithBuffer(new Camera.PreviewCallback() {
@Override
public void onPreviewFrame(byte[] data, Camera camera) {
//do heavy calculations with data array
Log.e(tag, "Frame");
}
}
每秒打印“帧”约8次。
有什么方法可以加速摄像机的回调频率,同时仍然对帧数据执行操作?
你试过OpenCv吗? –