【问题标题】:Detecting image translation with OpenCV使用 OpenCV 检测图像翻译
【发布时间】:2013-02-12 22:38:00
【问题描述】:

我需要做一个简单的任务:有一个参考图像,计算另一个图像的像素平移,同时考虑到没有缩放没有旋转,只是平移:(x, y)。有了这个,这是最简单的方法吗?自相关?特征提取?我想根本不需要特征提取,因为这是一项简单的任务。

任何帮助将不胜感激, 干杯,

【问题讨论】:

  • 我已经将 SURF 用于立体视觉算法,但在这种情况下,我无法使用 SURF,因为它占用了太多 CPU。因此,考虑到这个简单的问题,我需要一种简单的方法。您的评论根本没有建设性,我只是想在这里提问,因为我想很多人都知道我的问题的正确简单答案。
  • 谢谢 bsdnoobz,我想这就是我想要的。我会试着告诉你。
  • @DídacPérez 很遗憾,我们不能相信您的任务是否简单。您可能认为问题很简单,但可能并非如此。如果您可以包含您正在处理的内容的代表性图像,那么就有可能判断问题是否真的很简单。

标签: c++ opencv image-processing computer-vision


【解决方案1】:

我终于找到了实现我目标的解决方案:

// Prepare required variables
cv::Point point;
cv::Mat correlation;
double max_val;

// Compute the template matching
cv::matchTemplate(image_crop, ref_crop, correlation, cv::TM_CCORR_NORMED);

// Find the position of the max point
cv::minMaxLoc(correlation, NULL, &max_val, NULL, &point);

其中点变量包含平移坐标 x 和 y。

【讨论】:

    猜你喜欢
    • 2020-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    • 2016-09-15
    • 2013-01-14
    • 2016-03-28
    相关资源
    最近更新 更多