为什么 Breakfast Finder 示例代码在将其添加到新的 xcodeproj 文件后会导致空白屏幕?
Why does the Breakfast Finder sample code result in a blank screen after adding it to a new xcodeproj file?
目标
我正在尝试将 Breakfast Finder sample code 的对象检测功能应用于我的应用程序。当我将我的个人模型添加到 Breakfast Finder 示例代码并 运行 它时,它会检测到我的对象并显示标签。
问题
当我尝试将示例代码添加到测试应用程序(新的 xcodeproj 文件)时,我无法获取实时摄像头画面。我只收到安全弹出窗口和空白屏幕。
我做了什么来解决这个问题
- 复制
ViewController
和 ViewObjectRecognitionViewController
swift 文件
- Link
ViewController
中 @IBOutlet
的预览视图引用出口 - 第 17 行
- 添加 mlmodel 文件(来自示例代码,不是我的 mlmodel 文件)
- 将
NSCameraUsageDescription
添加到信息文件(带有值)。
在另一次尝试中,我尝试从示例代码复制所有文件(swift、plist、mlmodel 等)并解决连接问题,但遇到了同样的问题。
最后的想法
为什么将 Breakfast Finder 示例代码添加到新的 xcodeproj 文件后会出现空白屏幕?我从来没有处理过实时摄像头,所以我可能忽略了一个简单的问题。我在 ios15 上有一个 iPhone XR 运行ning。您可以在示例代码 here 或 google 早餐查找器中找到 link。
我终于注意到故事板中的视图控制器实际上是 VisionObjectRecognitionViewController。所以我通过执行以下操作替换了视图控制器:
- 在 main.storyboard
的文档大纲中选择了 View Controller
- 选择了屏幕右上角的身份检查器
- 将 class 更改为 VisionObjectRecognitionViewController(在执行此步骤之前,您需要将 VisionObjectRecognitionViewController.swift 文件添加到项目中)
然后,这就解决了!我不仅可以看到实时视频源,还可以看到我的模型检测对象!感谢@Iker Solozabal 在另一个问题上提供 similar steps。
目标
我正在尝试将 Breakfast Finder sample code 的对象检测功能应用于我的应用程序。当我将我的个人模型添加到 Breakfast Finder 示例代码并 运行 它时,它会检测到我的对象并显示标签。
问题
当我尝试将示例代码添加到测试应用程序(新的 xcodeproj 文件)时,我无法获取实时摄像头画面。我只收到安全弹出窗口和空白屏幕。
我做了什么来解决这个问题
- 复制
ViewController
和ViewObjectRecognitionViewController
swift 文件 - Link
ViewController
中@IBOutlet
的预览视图引用出口 - 第 17 行 - 添加 mlmodel 文件(来自示例代码,不是我的 mlmodel 文件)
- 将
NSCameraUsageDescription
添加到信息文件(带有值)。
在另一次尝试中,我尝试从示例代码复制所有文件(swift、plist、mlmodel 等)并解决连接问题,但遇到了同样的问题。
最后的想法
为什么将 Breakfast Finder 示例代码添加到新的 xcodeproj 文件后会出现空白屏幕?我从来没有处理过实时摄像头,所以我可能忽略了一个简单的问题。我在 ios15 上有一个 iPhone XR 运行ning。您可以在示例代码 here 或 google 早餐查找器中找到 link。
我终于注意到故事板中的视图控制器实际上是 VisionObjectRecognitionViewController。所以我通过执行以下操作替换了视图控制器:
- 在 main.storyboard 的文档大纲中选择了 View Controller
- 选择了屏幕右上角的身份检查器
- 将 class 更改为 VisionObjectRecognitionViewController(在执行此步骤之前,您需要将 VisionObjectRecognitionViewController.swift 文件添加到项目中)
然后,这就解决了!我不仅可以看到实时视频源,还可以看到我的模型检测对象!感谢@Iker Solozabal 在另一个问题上提供 similar steps。