ios – 如何将自动对焦添加到AVCaptureSession?迅速

ios – 如何将自动对焦添加到AVCaptureSession?迅速,第1张

概述我正在使用AVFoundation识别文本并执行OCR.如何添加自动对焦?当用户点击屏幕时,我不希望有黄色方块的东西,我只是想让它自动关注对象,例如xyk. 这是我的会话代码. func setupSession() { session = AVCaptureSession() session.sessionPreset = AVCaptureSessionPresetHigh le 我正在使用AVFoundation识别文本并执行OCR.如何添加自动对焦?当用户点击屏幕时,我不希望有黄色方块的东西,我只是想让它自动关注对象,例如xyk.

这是我的会话代码.

func setupSession() {  session = AVCaptureSession()  session.sessionPreset = AVCaptureSessionPresetHigh  let camera = AVCaptureDevice     .defaultDeviceWithMediaType(AVMediaTypeVIDeo)  do { input = try AVCaptureDeviceinput(device: camera) } catch { return }  output = AVCaptureStillimageOutput()  output.outputSettings = [ AVVIDeoCodecKey: AVVIDeoCodecJPEG ]  guard session.canAddinput(input)     && session.canAddOutput(output) else { return }  session.addinput(input)  session.addOutput(output)  prevIEwLayer = AVCaptureVIDeoPrevIEwLayer(session: session)  prevIEwLayer!.vIDeoGravity = AVLayerVIDeoGravityResizeAspect  prevIEwLayer!.connection?.vIDeoOrIEntation = .Portrait  vIEw.layer.addSublayer(prevIEwLayer!)  session.startRunning()}
解决方法 在我的6S上,默认的相机对焦模式是.ContinuousautoFocus,它持续关注占据相机视野大部分的任何物体.听起来就像你想要的那样.

您可以检查您的相机是否支持自动对焦:

camera.isFocusModeSupported(.ContinuousautoFocus)

如果尚未设置,请将其设置为:

try! camera.lockForConfiguration()camera.focusMode = .ContinuousautoFocuscamera.unlockForConfiguration()
总结

以上是内存溢出为你收集整理的ios – 如何将自动对焦添加到AVCaptureSession?迅速全部内容,希望文章能够帮你解决ios – 如何将自动对焦添加到AVCaptureSession?迅速所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1102257.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-28
下一篇2022-05-28

发表评论

登录后才能评论

评论列表(0条)

    保存