【问题标题】:How to stretch/modify an image to a given template?如何将图像拉伸/修改为给定模板?
【发布时间】:2016-09-07 14:35:03
【问题描述】:

我有一个包含三角形轮廓的图像。

我还有一张带有相同三角形的纸,研究人员允许黑猩猩在上面涂色。然后我给那张纸拍照。

我想处理这张照片并对其进行操作,以使照片中的三角形现在就像参考图像文件中的三角形一样,即使照片必须被拉伸、旋转等。

我发现 opencv 的模板匹配似乎可以处理第一位 - 识别照片中的参考模板。但是现在我需要找到方法来修改照片以适应模板。

谁能给我指出一个开始的好地方?

【问题讨论】:

  • 一张照片将是一个好的开始......

标签: opencv image-processing


【解决方案1】:

您正在寻找的是找到两个图像之间的仿射变换。找到它们之间的转换后,将其应用到照片上。

为了找到仿射变换,您需要在两张图像之间找到一组 3 个对应点。在您的情况下,一个不错的选择将只是三角形的 3 个顶点。为了在 opencv 中获得变换,请使用 getAffineTransform。

然后使用 opencv warpAffine 对照片图像应用变换。

您可以在此找到一个很好的教程 http://docs.opencv.org/3.0-beta/doc/py_tutorials/py_imgproc/py_geometric_transformations/py_geometric_transformations.html

【讨论】:

    猜你喜欢
    • 2011-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-11
    • 1970-01-01
    • 2014-03-29
    相关资源
    最近更新 更多