【问题标题】:Warping an image to another plane将图像扭曲到另一个平面
【发布时间】:2023-03-05 00:22:01
【问题描述】:

我有一个 Mat 形式的图像。我正在使用opencv c++。 我想将此图像扭曲到另一个平面。我将原始图像划分为 15x15 网格。所有的网格点都被认为是原始顶点。我正在做一些操作并在新平面上获取目标顶点。所有原始网格顶点在新平面中都有对应的目标顶点。如何根据目标顶点和原始顶点将图像扭曲到新平面。

我正在考虑这样做 -> 在原始平面和新平面中获取每个四边形并找到它们之间的单应性。现在以某种方式将每个四边形扭曲到新平面,但我不知道该怎么做。有人可以建议我如何执行此操作或其他更好的方法吗?

【问题讨论】:

  • 这是一次性的事情,还是必须在应用程序中经常发生的事情?
  • 会发生多次
  • 你能举出例子(图片)吗?你需要什么类型的扭曲,仿射,透视,线性插值网格?

标签: c++ opencv homography


【解决方案1】:

计算每个网格的 Homography 并计算地图。地图(x0,y0)= x1,y1。目标平面上的位置 (x0, y0) 映射到源平面上的 (x1, y1)。即 [ax1 ay1 a]T = H [x0, y0, 1]T

然后使用cv::remap

【讨论】:

    猜你喜欢
    • 2020-09-29
    • 2016-12-12
    • 1970-01-01
    • 2016-01-07
    • 2012-07-20
    • 2012-10-10
    • 1970-01-01
    • 2017-07-25
    • 2016-07-25
    相关资源
    最近更新 更多