【问题标题】:Setting the cameras focus in ios7 xcode. opencv在 ios7 xcode 中设置相机焦点。 opencv
【发布时间】:2014-07-23 00:05:28
【问题描述】:

我正在制作一个 ios 7 应用程序,它将校准我的 iphone 内在函数,然后使用 2 个 iphone 重建 3d 点。为此,我需要在运行 opencv 棋盘校准时锁定焦点。然后,当我使用这种内在校准来重建和检测物体时,我需要将手机焦点设置并锁定回运行内在校准时使用的相同值。

那么如何将我的 iphone 相机的焦点设置为给定值?我做了一些谷歌搜索,但什么也没发现。

干杯。

【问题讨论】:

    标签: ios iphone xcode opencv ios7


    【解决方案1】:

    抱歉,在 iOS 7 中您不能这样做。您可以锁定焦点,但无法将其设置为特定点(也无法读取焦点位置,请看)。您的对焦控制仅限于锁定、解锁和设置对焦偏差(近物体、远物体或全范围)。您可以监控设备当前是否正在对焦。但就是这样。

    因此,如果您正在为 iOS 7 进行开发,那么您就不走运了;另一方面,如果您可以使用 iOS 8 作为基准...

    【讨论】:

      【解决方案2】:

      我假设您将使用 AVFoundation。还有其他关于如何设置 AVCaptureSession 的问题/答案。设置好设备后,您可以像这样设置焦点模式:

              AVCaptureDevice *device = [[self getActiveVideoDeviceInput] device];
              NSError *error = nil;
              if ([device lockForConfiguration:&error])
              {
                  if ([device isFocusModeSupported:AVCaptureFocusModeLocked])
                  {
                      [device setFocusMode:AVCaptureFocusModeLocked];
                  }
                  [device unlockForConfiguration];
              }
              else
              {
                  NSLog(@"%@", error);
              }
      

      所以基本上,你会在某个时候设置你的焦点模式,然后你可以在一个属性中存储那个模式是什么。然后,您可以稍后根据您的要求更新/更改它。

      此外,本文档详细说明了三种可能的对焦模式:

      https://developer.apple.com/library/mac/documentation/AudioVideo/Conceptual/AVFoundationPG/Articles/04_MediaCapture.html

      【讨论】:

        猜你喜欢
        • 2015-04-12
        • 2021-01-04
        • 2015-07-24
        • 1970-01-01
        • 1970-01-01
        • 2012-07-10
        • 2017-04-24
        • 1970-01-01
        相关资源
        最近更新 更多