gpt4 book ai didi

c++ - 椭圆 block 之间的仿射变换

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:30:39 27 4
gpt4 key购买 nike

我是 OpenCV 的新手,正在学习进行一些图像处理。作为我项目的一部分,我遇到了将椭圆形式的图像补丁变形为目标椭圆的问题。据我所知,我需要计算两个补丁之间的仿射变换,然后将此变换扭曲到目标补丁中。浏览互联网寻求帮助,我没有找到计算两个椭圆 block 之间的仿射变换的方法。我在正确的轨道上吗?如果您能给我一些如何进行的建议或到哪里寻找更多信息,我将不胜感激。

最佳答案

您的元素是椭圆这一事实与变换的计算无关。变换对任意形状同样有效。假设你有关于原点 O 的仿射变换 [A] 和 [B],你想要 [A] 和 [B] 之间的变换。有几种方法可以考虑这样做,最简单的一种是从 [A] 到 O,然后从 O 到 [B] 的转换并将它们组合起来。 [A] 到 O 只是 [A] 的倒数,O 到 [B] 只是 [B] 所以

final_transform = [B]*inverse([A]);

here 是一个类似的问题,用 vector 表示求解同样有效。

要进行实际变形,您可以使用 cv::warpAffine

关于c++ - 椭圆 block 之间的仿射变换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12769913/

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