使用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 相关文章推荐
将Django框架和遗留的Web应用集成的方法
Jul 24 Python
在Mac OS上使用mod_wsgi连接Python与Apache服务器
Dec 24 Python
Python 查找字符在字符串中的位置实例
May 02 Python
PyCharm设置每行最大长度限制的方法
Jan 16 Python
详解opencv Python特征检测及K-最近邻匹配
Jan 21 Python
Python 实现微信防撤回功能
Apr 29 Python
Pandas DataFrame中的tuple元素遍历的实现
Oct 23 Python
通过Turtle库在Python中绘制一个鼠年福鼠
Feb 03 Python
python连接打印机实现打印文档、图片、pdf文件等功能
Feb 07 Python
如何基于windows实现python定时爬虫
May 01 Python
Python爬虫模拟登陆哔哩哔哩(bilibili)并突破点选验证码功能
Dec 21 Python
用Python提取PDF表格的方法
Apr 11 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
PHP错误Warning:mysql_query()解决方法
2015/10/24 PHP
解决ThinkPHP下使用上传插件Uploadify浏览器firefox报302错误的方法
2015/12/18 PHP
微信公众号判断用户是否已关注php代码解析
2016/06/24 PHP
php微信公众号开发(2)百度BAE搭建和数据库使用
2016/12/15 PHP
PHP与Web页面的交互示例详解二
2020/08/04 PHP
重定向实现代码
2006/11/20 Javascript
解析jquery中的ajax缓存问题
2013/12/19 Javascript
使用js判断TextBox控件值改变然后出发事件
2014/03/07 Javascript
Lua表达式和控制结构学习笔记
2014/12/15 Javascript
js动态创建及移除div的方法
2015/06/03 Javascript
javascript实现文字无缝滚动效果
2017/08/26 Javascript
nginx+vue.js实现前后端分离的示例代码
2018/02/12 Javascript
Node.js 路由的实现方法
2019/06/05 Javascript
JavaScript实现移动端弹窗后禁止滚动
2020/05/25 Javascript
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
2021/03/01 Vue.js
python使用正则表达式分析网页中的图片并进行替换的方法
2015/03/26 Python
Python查找两个有序列表中位数的方法【基于归并算法】
2018/04/20 Python
TensorFlow实现随机训练和批量训练的方法
2018/04/28 Python
Pythonic版二分查找实现过程原理解析
2020/08/11 Python
python+playwright微软自动化工具的使用
2021/02/02 Python
css3和jquery实现自定义checkbox和radiobox组件
2014/04/22 HTML / CSS
利用CSS3实现折角效果实例源码
2016/09/28 HTML / CSS
利用简洁的图片预加载组件提升html5移动页面的用户体验
2016/03/11 HTML / CSS
外贸业务员求职自荐信分享
2013/09/21 职场文书
机械专业应届生求职信
2013/09/21 职场文书
公司离职证明范本
2014/01/13 职场文书
《掌声》教学反思
2014/02/23 职场文书
2014年元旦感言
2014/03/06 职场文书
新疆民族团结演讲稿
2014/08/27 职场文书
战略性融资合作协议书范本
2014/10/17 职场文书
业务员辞职信范文
2015/03/02 职场文书
2015年医院创卫工作总结
2015/04/22 职场文书
2015年生产部工作总结范文
2015/05/25 职场文书
公司仓库管理制度
2015/08/04 职场文书
2017大学生寒假社会实践心得体会
2016/01/14 职场文书
浅谈Python numpy创建空数组的问题
2021/05/25 Python