gpt4 book ai didi

android - 具有相同焦点的各种照片

转载 作者:行者123 更新时间:2023-11-29 17:56:33 31 4
gpt4 key购买 nike

我需要用相同的焦距拍摄几张照片。我研究了一段时间,似乎这是不可能的。

主要目的是进行简单的自动对焦,然后对所有下一张照片使用相同的距离,而不再调用自动对焦。

Android 的 API 有一些有趣的方法,例如:

FOCUS_MODE_FIXED

但是,我无法设置固定焦点的值。它设置在超焦距处。

还有一个方法:

getFocusDistances (float[] output).

但是没有“ setter ”来设置所需的焦距。

我可以实现我的目标还是不可能?

PD:一些代码解释了我如何设置 Camera.parameters 以及我如何管理 AF:

    AutoFocusCallback aF = new AutoFocusCallback(){

@Override
public void onAutoFocus(boolean arg0, Camera arg1) {
if(arg0==true){
Log.d("preview", " Autofocus callback!");
parameters.setFocusMode("fixed");
updateParameters();
}

}};

public static void updateParameters(){
if(camera==null){}
else{
camera.setParameters(parameters);

}

单击 focusAutoButton 时:

    @Override
public void onClick(View v) {

Preview.parameters.setFocusMode("auto");
Log.d("focus: ","auto");
Preview.updateParameters();
Preview.camera.autoFocus(preview.aF);

}});

最佳答案

详细信息因设备而异,但您应该能够将焦点模式设置为 FOCUS_MODE_AUTO,然后调用 Camera.autoFocus()一次设置焦距。除非您再次明确调用 autoFocus(),否则焦距不应改变。

请注意,有些设备不支持自动对焦,因此在请求自动对焦时最好采取防御措施:

try {
Parameters params = camera.getParameters();
if (!Parameters.FOCUS_MODE_AUTO.equals(params.getFocusMode())) {
params.setFocusMode(Parameters.FOCUS_MODE_AUTO);
camera.setParameters(params);
}
camera.autoFocus(new Camera.AutoFocusCallback() {
public void onAutoFocus(boolean success, Camera camera) {
// if (success) { ... }
}
} );
} catch (RuntimeException e) {
// Can't use autofocus...
}

关于android - 具有相同焦点的各种照片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18917384/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com