ios - VNImageBasedRequest regionOfInterest 不在规范化范围内

标签 ios coreml apple-vision

我正在尝试访问图像的特定部分以对图像的用户定义区域执行 VNCoreMLRequest。我在某些感兴趣的区域出现错误,而其他区域则很好。每个区域都被归一化。

以下两个方面的工作:

regionOfInterest    CGRect  (origin = (x = 0.49538024164889838, y = 0.31979695431472077), size = (width = 0.26865671641791045, height = 0.24492385786802032))

regionOfInterest    CGRect  (origin = (x = 0.13290689410092396, y = 0.28807106598984761), size = (width = 0.24733475479744135, height = 0.19416243654822332))

但以下两个区域不起作用:

regionOfInterest    CGRect  (origin = (x = 0.15422885572139303, y = 0.87563451776649747), size = (width = 0.29992892679459843, height = 0.32106598984771573))

错误消息:“感兴趣区域 [0.148543, 0.874365, 0.319829, 0.31599] 不在 [0 0 1 1] 的规范化范围内”

regionOfInterest    CGRect  (origin = (x = 0.57640369580668083, y = 0.90862944162436543), size = (width = 0.24307036247334754, height = 0.36928934010152287))

有人可以指出我没有看到的内容吗?也许我对 regionOfInterest

有一些不理解的地方

最佳答案

这是因为你的 y + height > 1,所以感兴趣区域比图像大。我正在使用类似的东西

        let x = max((regionOfIntres.origin.x - 0.1), 0)
        let y = max((regionOfIntres.origin.y - 0.1), 0)

        let width = min((regionOfIntres.size.width + 0.2), (1 - x))
        let height = min((regionOfIntres.size.height + 0.2), (1 - y))

关于ios - VNImageBasedRequest regionOfInterest 不在规范化范围内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49825719/

相关文章:

ios - 使用 AVFoundation 获得裁剪视频的意外结果

ios - 如何在 iOS 中创建文件别名?

ios - 自动生成的 CoreML 类使用了冲突的初始值设定项

python - 将 PyTorch 模型与 CoreML 一起使用时的输入维度 reshape

ios - 适用于 iOS 的 Google Mobile Vision 对源图像大小有任何限制吗?

iphone - iOS模拟器中的内部存储器

ios - UICollectionView 选择和取消选择问题

ios - 如何使用不接受实时输入的 CoreML 在 Swift 中创建一个简单的相机应用程序?

ios - 通过 Color Swift 过滤图像中的像素

ios - 在 iPhone XS 上使用 ARKit2 和 Vision (VNDetectFaceRectanglesRequest) 时如何修复 IOAF 代码 GPU 错误