Ios专业相机软件:iOS相机焦点值(how to focus an iphone camera)

有没有办法从 iPhone 相机自动对焦获得焦点值?

我想使用这些数据来计算从 iPhone 到焦点物体的距离。

3

显然这是一个老问题,但由于有一个选项来获得一个“lense 值”,因为 iOS8 它应该出现在这里。

自 iOS8 以来,您可以通过键值观察lensPosition从镜头中获取焦点值。它是CaptureDevice类的属性,该类是Foundation框架的一部分。

所以在你的相机类的某个地方设置观察者:

// Assuming _device is an object of the `CaptureDevice` class
[_device addObserver:self forKeyPath:@"lensPosition" options:NSKeyValueObservingOptionNew context:nil];

在你用作观察者的类中:

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
    if ([keyPath isEqualToString:@"lensPosition"]) {
        NSLog(@"change: %@", change);
        NSLog(@"lens position: %f", [change[@"new"] floatValue]);
    }
}

镜头的位置将显示为从 0 到 1 的标量值。您也可以手动设置镜头位置。您可以在 Apple 文档中找到有关managing the lens position的更多信息。

最后,与所有key-value observer一样,不要忘记删除观察者。

注意:镜头是设备中的机械部件,通过弹簧移动镜头来进行对焦。因此,数值因设备和情况而异。

0

我不认为有这样的事情作为一个焦点值。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(850)
Ios免费签名工具:免费在线 UML工具(uml online)
上一篇
Ios软件更新出错:iOS中的 NSUserDefaults正在随机消失和重新出现
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(47条)