椭圆形斑块之间的仿射变换
Affine transform between elliptical patches
我是OpenCV的新手,我正在学习做一些图像处理。作为我项目的一部分,我遇到了将椭圆形式的图像补丁扭曲为目标椭圆的问题。据我了解,我需要计算两个补丁之间的仿射变换,然后将此变换扭曲为目标补丁。浏览互联网寻求帮助,我没有找到计算两个椭圆补丁之间的仿射变换的方法。我走在正确的轨道上吗?如果您能给我一些如何进行或在哪里查找更多信息的建议,我将不胜感激。
元素是省略号的事实与转换的计算无关。 变换在任意形状上同样有效。 假设你对某个原点 O 有仿射变换 [A] 和 [B],你想要 [A] 和 [B] 之间的变换。 有几种方法可以考虑这样做,最简单的一种是将转换从 [A] 转换为 O,然后从 O 转换为 [B] 并将它们组合在一起。 [A] 到 O 只是 [A] 的逆数,O 到 [B] 只是 [B] 所以
final_transform = [B]*inverse([A]);
这是一个类似的问题,用向量表示求解同样有效。
要进行实际的翘曲,您可以使用cv::warpAffine
相关文章:
- 仿射密码解密,输出大小写不同
- 在特征中显示仿射变换
- 简单仿射密码加密解密
- 可视化:如何使用R&T向量仿射变换Point3D?
- OpenCV中的Hessian-仿射检测器
- C++ 中的仿射密码加密
- 仿射旋转矩阵
- 如何为仿射变换创建形状的OpenCV垫[3,2]
- 如何获得具有3x3矩阵的仿射变换
- 椭圆形斑块之间的仿射变换
- 将旋转应用于特征::仿射3f
- 如何将特征::Matrix4f转换为特征::仿射3f
- 我的仿射变换发生了一些奇怪的事情
- 结合两个仿射变换矩阵在OpenCV
- 如何连接仿射变换函数与事件从程序
- 仿射插值变换
- 在示例代码中运行仿射转换时出错。
- 与旋转相对于任意点的OpenCV warpa仿射
- 使用dlib在图像上应用仿射变换
- 如何用平移、旋转和缩放来反转一个仿射变换