【发布时间】:2017-01-03 08:09:36
【问题描述】:
我的三星 S6 相机校准工作是进一步开发应用程序的第一步。 正确工作的应用程序的附加条件之一是禁用自动对焦。 我用过这样的东西:
mCamera.cancelAutoFocus();
Camera.Parameters mParam = mCamera.getParameters();
mParam.setFocusMode(Camera.Parameters.FOCUS_MODE_INFINITY);
mCamera.setParameters(mParam);
之前,我检查了我的设备上是否可以使用“无限远”对焦模式。 不过,在运行应用程序时,我可以清楚地看到焦点在根据帧中对象的距离而变化。 “固定”模式不可用。
我做错了吗? 我只想拥有在运行应用程序时不会改变的焦点。
我在 Android Studio 中使用 OpenCV3.1。
【问题讨论】:
-
拜托,你能说得更具体点吗?为什么要使用已弃用的 Camera API 1?你在哪里使用你的自动对焦禁用,我的意思是你在打开相机之前还是之前使用这个命令?您有任何与 logcat 相关的消息吗?
-
Camera API 看起来比 Camera2 更容易实现。我可以看到我把整个东西放在下面是一个错误:protected void onCreate(Bundle savedInstanceState) 首先,我打开相机,然后禁用自动对焦。
-
@uelordi 找到这个answer。这是我可以使用的东西,只是我不确定我可以从哪里调用
setFlashMode(或者在我的情况下是setFocusMode)。
标签: java android opencv autofocus