gpt4 book ai didi

ios - 为什么 Vision 框架无法对齐两个图像?

转载 作者:行者123 更新时间:2023-12-02 10:40:23 25 4
gpt4 key购买 nike

我正在尝试使用相机拍摄两张图像,并使用 iOS Vision 框架对齐它们:

func align(firstImage: CIImage, secondImage: CIImage) {
let request = VNTranslationalImageRegistrationRequest(
targetedCIImage: firstImage) {
request, error in
if error != nil {
fatalError()
}
let observation = request.results!.first
as! VNImageTranslationAlignmentObservation
secondImage = secondImage.transformed(
by: observation.alignmentTransform)
let compositedImage = firstImage!.applyingFilter(
"CIAdditionCompositing",
parameters: ["inputBackgroundImage": secondImage])
// Save the compositedImage to the photo library.
}

try! visionHandler.perform([request], on: secondImage)
}

let visionHandler = VNSequenceRequestHandler()

但这会产生严重未对齐的图像:

enter image description here

enter image description here

enter image description here

你可以看到我尝试了三种不同类型的场景——特写主体、室内场景和室外场景。我尝试了更多的户外场景,结果几乎每一个都是一样的。

我预计在最坏的情况下会出现轻微的错位,但不会完全错位。出了什么问题?

我没有将图像的方向传递给 Vision 框架,但这不应该是对齐图像的问题。这仅适用于面部检测之类的问题,其中旋转的面部不会被检测为面部。在任何情况下,输出图像都有正确的方向,所以方向不是问题。

我的合成代码工作正常。只有Vision框架有问题。如果我删除对 Vision 框架的调用,将电话放在三脚架上,则构图可以完美运行。没有错位。所以问题是Vision框架。

这是在 iPhone X 上。

如何让 Vision 框架正常工作?我可以告诉它使用陀螺仪、加速度计和指南针数据来改善对准吗?

最佳答案

您应该将 secondImage 设置为 targetImage,并使用 firstImage 执行处理程序。
我用你的复合方式。

关于ios - 为什么 Vision 框架无法对齐两个图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48717723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com