【发布时间】:2018-07-27 01:04:36
【问题描述】:
假设我有一张装满物品的架子的图片。在架子的某个地方,我有一个盒子。使用盒子的模板图像,我试图使用 opencv 模板匹配在架子上找到盒子。
如果我在架子上找到盒子,我需要检查盒子是否与我的模板图像中的盒子大小相同,如果不是,我将抛出异常。但是我不知道如何检查匹配图像的大小,我什至不知道是否可以。图像并不总是一个盒子,所以它有时会弯曲或混合边缘。
所以我需要做的是在找到与模板匹配的图像的一部分后,我想检查该部分的大小是否与模板图像的大小相同。有谁知道我如何做到这一点?
【问题讨论】:
-
一些问题:您的相机与拍摄模板时的姿势相同吗?你的架子总是一样的吗?
-
相机总是相同的姿势和货架总是相同的大小。我觉得我可以只计算数学部分中的像素,但是当我尝试时我被卡住了。
-
如果您知道模板中框的大小,将其与 ECC (cv::findECCtransform) 匹配,然后求解其单应矩阵,您将得到以世界单位表示的框大小(您将获得比例和旋转因子)从模板到图像
标签: c++ opencv template-matching