使用opencv中匹配点对的坐标提取方式
更新时间:2020年06月04日 09:59:56 作者:仙女阳
这篇文章主要介绍了使用opencv中匹配点对的坐标提取方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
在opencv中,特征检测、描述、匹配都有集成的函数。vector<DMatch> bestMatches;用来存储得到的匹配点对。那么如何提取出其中的坐标呢?
int index1, index2; for (int i = 0; i < bestMatches.size(); i++)//将匹配的特征点坐标赋给point { index1 = bestMatches.at(i).queryIdx; index2 = bestMatches.at(i).trainIdx; cout << keyImg1.at(index1).pt.x << " " << keyImg1.at(index1).pt.y << " " << keyImg2.at(index2).pt.x << " " << keyImg2.at(index2).pt.y << endl; }
补充知识:OpenCV 如何获取一个连通域中的所有坐标点
#include "stdafx.h" #include "cv.h" #include "highgui.h" #include "cxcore.h" int main(int argc, char* argv[]) { IplImage* img; img = cvLoadImage("D:\\OOTT\\WEEK5\\2.png"); IplImage* gray = cvCreateImage(cvGetSize(img),IPL_DEPTH_8U,1); cvCvtColor(img,gray,CV_BGR2GRAY); cvThreshold(gray,gray,128,255,CV_THRESH_BINARY); CvMemStorage* storage = cvCreateMemStorage(); CvSeq * first_contour = NULL; int Ncontour = cvFindContours(gray,storage,&first_contour,sizeof(CvContour),CV_RETR_LIST); //Ncontour为cvFindContours函数返回的轮廓个数 for(CvSeq* c = first_contour;c!= NULL;c=c->h_next) { // cvDrawContours(img,c,cvScalar(255,255,0),cvScalar(255,0,255),0,2,8); cvNamedWindow("contours",CV_WINDOW_AUTOSIZE); // cvShowImage("contours",img); for(int k = 0;k <c->total;++k) { CvPoint* p = CV_GET_SEQ_ELEM(CvPoint,c,k); printf("(%d,%d)\n",p->x,p->y); } CvRect rect; rect = cvBoundingRect(c,0); cvFloodFill(img,cvPoint(img->width/2,img->height/2),cvScalar(255,255,255),cvScalar(20),cvScalar(20),NULL,4,NULL); cvShowImage("contours",img); int Num[500][500]; for (int i=0;i<(img->height-5);i++) for (int j=0;j<(img->width-5);j++) { CvScalar S0; S0=cvGet2D(img,i,j); if(S0.val[0] == 255) Num[i][j]=1; else Num[i][j]=0; printf("(%d,%d)\n",i,j); } } cvWaitKey(0); cvReleaseImage(&img); cvReleaseImage(&gray); cvDestroyWindow("contours"); return 0; }
以上这篇使用opencv中匹配点对的坐标提取方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Windows下python3安装tkinter的问题及解决方法
这篇文章主要介绍了Windows下python3安装tkinter问题及解决方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2020-01-01Python+Selenium实现自动化的环境搭建的步骤(图文)
这篇文章主要介绍了Python+Selenium实现自动化的环境搭建的步骤(图文),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-09-09Python爬虫 scrapy框架爬取某招聘网存入mongodb解析
这篇文章主要介绍了Python爬虫 scrapy框架爬取某招聘网存入mongodb解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2019-07-07Python报错SyntaxError:unexpected EOF while parsing的解决办法
在运行或编写一个程序时常会遇到错误异常,这时python会给你一个错误提示类名,告诉出现了什么样的问题,下面这篇文章主要给大家介绍了关于Python报错SyntaxError:unexpected EOF while parsing的解决办法,需要的朋友可以参考下2022-07-07python爬取w3shcool的JQuery课程并且保存到本地
本文主要介绍python爬取w3shcool的JQuery的课程并且保存到本地的方法解析。具有很好的参考价值。下面跟着小编一起来看下吧2017-04-04
最新评论