使用opencv中匹配点对的坐标提取方式


Posted in Python onJune 04, 2020

在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 如何获取一个连通域中的所有坐标点

使用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中匹配点对的坐标提取方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在RedHat系Linux上部署Python的Celery框架的教程
Apr 07 Python
python判断一个集合是否包含了另外一个集合中所有项的方法
Jun 30 Python
在Python的Flask框架中验证注册用户的Email的方法
Sep 02 Python
在django中使用自定义标签实现分页功能
Jul 04 Python
python截取两个单词之间的内容方法
Dec 25 Python
python写程序统计词频的方法
Jul 29 Python
Python reduce函数作用及实例解析
May 08 Python
Python参数传递对象的引用原理解析
May 22 Python
使用pth文件添加Python环境变量方式
May 26 Python
opencv 图像加法与图像融合的实现代码
Jul 08 Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
Jan 27 Python
Python爬取梨视频的示例
Jan 29 Python
Python实现计算图像RGB均值方式
Jun 04 #Python
用python按照图像灰度值统计并筛选图片的操作(PIL,shutil,os)
Jun 04 #Python
Python flask框架实现浏览器点击自定义跳转页面
Jun 04 #Python
python 图像判断,清晰度(明暗),彩色与黑白实例
Jun 04 #Python
完美解决ARIMA模型中plot_acf画不出图的问题
Jun 04 #Python
Python使用Matlab命令过程解析
Jun 04 #Python
Python flask框架端口失效解决方案
Jun 04 #Python
You might like
PHP5在Apache下的两种模式的安装
2006/09/05 PHP
php合并数组array_merge函数运算符加号与的区别
2008/10/31 PHP
深入解析PHP的Yii框架中的event事件机制
2016/03/17 PHP
学习ExtJS fit布局使用说明
2009/10/08 Javascript
21个JavaScript事件(Events)属性汇总
2014/12/02 Javascript
ECMAScript中函数function类型
2015/06/03 Javascript
jquery性能优化高级技巧
2015/08/24 Javascript
js根据手机客户端浏览器类型,判断跳转官网/手机网站多个实例代码
2016/04/30 Javascript
总结javascript中的六种迭代器
2016/08/16 Javascript
原生JS取代一些JQuery方法的简单实现
2016/09/20 Javascript
IE8中jQuery.load()加载页面不显示的原因
2018/11/15 jQuery
JS Thunk 函数的含义和用法实例总结
2020/04/08 Javascript
微信小程序语音同步智能识别的实现案例代码解析
2020/05/29 Javascript
[01:35]2014DOTA2西雅图邀请赛 专访狐狸妈青春献给刀塔
2014/07/08 DOTA
[04:05]TI9战队采访 - Natus Vincere
2019/08/22 DOTA
Python数据结构与算法之图的广度优先与深度优先搜索算法示例
2017/12/14 Python
Python实现字典按照value进行排序的方法分析
2017/12/23 Python
python实现微信小程序自动回复
2018/09/10 Python
Python3获取拉勾网招聘信息的方法实例
2019/04/03 Python
Python利用sqlacodegen自动生成ORM实体类示例
2019/06/04 Python
python 实现性别识别
2020/11/21 Python
HTML5无刷新改变当前url的代码
2017/03/15 HTML / CSS
最新茶叶店创业计划书
2014/01/14 职场文书
酒店总经理欢迎词
2014/01/15 职场文书
喝酒检查书范文
2014/02/23 职场文书
大学生社会实践自我鉴定
2014/03/24 职场文书
优秀党支部书记事迹材料
2014/05/29 职场文书
会计学专业求职信
2014/07/17 职场文书
企业法人授权委托书
2014/09/25 职场文书
2014三年级班主任工作总结
2014/12/05 职场文书
党的群众路线教育实践活动先进个人材料
2014/12/24 职场文书
2016十一国庆节感言
2015/12/09 职场文书
机关干部正风肃纪心得体会
2016/01/15 职场文书
浅谈Python中的正则表达式
2021/06/28 Python
如何用Python搭建gRPC服务
2021/06/30 Python
Java实现HTML转为Word的示例代码
2022/06/28 Java/Android