我扩展了一个 OpenCV4Android 示例(基于 2.4.3.1 中的 JavaCameraView)以在我的应用程序中进行一些视觉处理。该处理适用于 2.3.3 及更高版本,但任何 4.x 手机除外。我已经研究了这个问题,似乎问题在于使用了以下行:
mCamera.setPreviewDisplay(null);
显然 ICS 不喜欢被交给一个空的surfaceView。在 4.x 上的结果是屏幕看起来是黑色的,并且没有传递给 onPreviewFrame() 的帧。
我真的很感激这方面的任何帮助!
完整的代码可以在这里找到。