我正在尝试使用适用于 Android 的 OpenCV 2.4.10 从一对 Google Glass 中的相机捕获高分辨率帧 (1280x720)。我已经CameraBridgeViewBase.CvCameraViewListener2
在我的 Activity 中实现了,并尝试在onCameraFrame
方法中抓取框架。到目前为止一切正常,我得到了一个 512x288 Mat 对象。
我的问题是 512x288 分辨率不足以满足我的需要。因此,我尝试以与 OpenCV 后面的示例 3 中相同的方式设置我的项目:http: //goo.gl/iDyqQj。问题是它只适用于低于 512x288 的分辨率,只要我将分辨率提高到这个水平以上,它就会默认恢复为 512x288(没有任何通知)。
我发现了一些建议, http: //goo.gl/X2wtM4,OpenCV将帧大小限制为屏幕分辨率的最大值。但谷歌眼镜的屏幕应该有 640x360 的分辨率?我尝试按照答案中的描述进行操作,但是当我覆盖calculateCameraFrameSize
并返回大于 512x288 的 Size-object 时,我得到了一个扭曲的框架(但尺寸更大,见下文)。
有人对如何使用 OpenCV 在 Google Glass 上捕获更高的分辨率有任何建议吗?