
Opencv学习
PYIPHANG
努力成为一个无用的人
展开
-
在利用compute函数提取SURF特征描述子时发现的一些问题
前言在提取特征点之后,我们往往需要采取一定的策略来对特征点进行匹配,但在某些场合,库中提供的匹配也许并不能满足我们的需求,需要我们自己来实现匹配算法。因此,这就要求我们对提取出来的特征描述子进行操作。compute方法可以提取特征点的特征描述子,并存储在一个矩阵(Mat)中,但是当我查看源码,想搞清楚矩阵中元素与特征点的对应关系时,却发现compute的函数说明似乎有点问题。提取特征描述子的步...原创 2019-05-02 21:12:34 · 908 阅读 · 0 评论 -
关于win7+VS2017环境下的opencv-contirb配置的一个坑
问题背景由于课题需要用到SURF detector, 我依照网上的一下教程,把opencv-contrib的配置了一遍。但是,当我写了一个小demo来测试模块是否能正常使用的时候,程序能正常编译,但是无法调用SURF模块,其中error信息如下图:error的大致意思是,SURF这个算法现在要收费了,建议我们在cmake的时候设置 OPENCV_ENABLE_NONFREE这个选项,然后再re...原创 2019-05-02 21:16:50 · 318 阅读 · 0 评论 -
opencv与matlab中的imread()函数差异
问题背景今天在做图像分块的时候,为了验证代码的正确性,我用matlab读取了一张图片,并把opencv的分块结果与这张图片的像素点做对比,但是,我发现两者的差异有点大,具体的现象如下图:图1.cv分块代码结果图图2.matlab读取的图片/center>从图1可以看出。程序是从(0,0),(0,8)两个点作为图像块的左上顶点,把图像分为8x8的块,但是,在对比图2的数据后,发现图...原创 2019-05-03 20:57:05 · 1294 阅读 · 0 评论 -
opencv中特征匹配的2NN算法
前言在提取了图像的特征点,并形成特征描述子后,我们往往需要对两张图片(本质上是两个mat)进行特征点匹配·,opencv提供的匹配方法有两种,分别是FLANN以及暴力匹配。暴力匹配思路最为简单,就是图1的一个特征描述子A,与图2的所有特征描述子均进行一次距离计算(一般为欧氏距离),距离最小的点即为A点在图2的匹配点。FLANN我没有详细的了解,据说是基于概率的思想,只找到一个差不多相近的点,而不...原创 2019-05-20 22:54:03 · 2930 阅读 · 3 评论 -
opencv的多图拼接
相关API1. hconcat这个函数可以用平凑函数原型void cv::hconcat(InputArray src1, InputArray src2,OutputArray dst ) void cv::hconcat(const Mat * src, size_t nsrc, outputArray dst )第一个比较简单,就把src1和src2合并再放到dst 中,...原创 2019-05-30 09:37:30 · 2547 阅读 · 5 评论 -
opencv的掩膜操作
掩膜操作原理掩膜操作我觉得个人理解是一个比较宽泛的概念,其中一种用途如下图所示:可见,掩膜图中,像素值为1的像素表示原始图中可以复制掩膜可以控制原始图有哪些像素可以被复制到效果图中。实现copyTo方法:S1.copyTo(a, b);a是目的图像,就是那你要把掩膜的结果放在哪里。b就掩膜的模版实验结果原图:模版:掩膜结果:...原创 2019-05-30 22:03:35 · 605 阅读 · 0 评论 -
opencv-contrib编译-win10+vs2019环境
材料opencv文件https://opencv.orgopencv-contribhttps://github.com/opencv/opencv_contrib/releases编译工具:cmake(一路默认安装就行)https://cmake.org/files/v3.11/cmake-3.11.3-win64-x64.msi**注意事项:contrib文件的版本号一定要与...原创 2019-08-11 18:09:11 · 1785 阅读 · 0 评论