sách gpt4 ai đã đi

opencv - opencv,模板匹配

In lại 作者:行者123 更新时间:2023-12-02 17:53:08 27 4
mua khóa gpt4 Nike

我正在为某些项目使用opencv。并有应解决的任务。
任务很简单。我有一张主图片,并且有一个模板,而不是将主图片与模板进行比较。我使用matchTemplate()函数。我只是好奇一下。
在文档中,我发现以下信息:
为了识别匹配区域,我们必须通过滑动将模板图像与源图像进行比较。
通过滑动,我们的意思是将补丁一次移动一个像素(从左到右,从上到下)。在每个位置,都会计算一个指标,以便表示该位置的匹配程度是“好”还是“差”(或补丁与源图像特定区域的相似程度)。
对于T在I上的每个位置,都将度量存储在结果矩阵(R)中。 R中的每个位置均包含匹配指标。

因此,例如,您有主要图片和模板。而且您知道至少在主图片中有一个模板条目。而且效果很好。但是,如果您不知道主画面0或10中有多少个模板?有什么计算方法吗?应该使用哪种算法?如何理解结果矩阵中的度量标准?
Cảm ơn trước.

1 Câu trả lời

matchTemplate()函数创建一个新的矩阵,其中每个像素都包含给定模板在该点与图像匹配的值。为了检测与模板匹配的所有区域,您需要遍历结果矩阵并检查每个像素是否超过某个阈值。
如果像素超过阈值,则表示它是图像中与模板匹配的区域的左上角。一个简单的实现可能看起来像这样:

double PATT_THRESH = 0.4
IplImage *result = cvCreateImage(cvSize(imageW, imageH), IPL_DEPTH_32F, 1);
vector foundTemplates;
cvMatchTemplate(image, pattern, result, CV_TM_SQDIFF_NORMED);
for (int i = 0 ; i < result->width ; ++i) {
for (int j = 0 ; j < result->height ; ++j) {
if (cvGet2D(result, j, i).val[0] < PATT_THRESH) {
foundTemplates.push_back(cvPoint(i, j);
}
}

}

我不知道您使用的是哪种语言,但是很容易翻译成其他语言。希望能有所帮助。

关于opencv - opencv,模板匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14810997/

27 4 0
Bài viết được đề xuất: opencv - 打印关键点描述符
Bài viết được đề xuất: c# - 使用Emgu进行数据集的PCA
Bài viết được đề xuất: android - FeatureDetector.detect()函数错误
Bài viết được đề xuất: OpenCV 图像加载问题
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com