CN103065321B - 一种图像特征点匹配模块的面向对象系统框架建立方法 - Google Patents
一种图像特征点匹配模块的面向对象系统框架建立方法 Download PDFInfo
- Publication number
- CN103065321B CN103065321B CN201310006501.6A CN201310006501A CN103065321B CN 103065321 B CN103065321 B CN 103065321B CN 201310006501 A CN201310006501 A CN 201310006501A CN 103065321 B CN103065321 B CN 103065321B
- Authority
- CN
- China
- Prior art keywords
- characteristic point
- point
- image
- descriptor
- matching
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Image Analysis (AREA)
Abstract
本发明涉及一种图像特征点匹配模块的面向对象系统框架建立方法,利用软件开发过程的面向对象的思想,将多幅图像进行特征点提取,构建特征点描述子表达的特征点的数据结构,选择算法根据特征点描述子数据结构生成派生类,派生出包括特征点和特征点描述子信息的特征点实体类,建立特征点超空间划分的树状结构,搜索匹配以获得两幅图像甚至多幅图像间的匹配关系。为进一步基于多幅图像的三维重建算法提供数据支撑,为特征点匹配算法的研究提供系统框架。
Description
技术领域
本发明涉及一种图像信息处理方法,特别涉及一种图像特征点匹配模块的面向对象系统框架建立方法。
背景技术
特征点检测与匹配是计算机视觉中的最基本的问题,它在众多视觉任务中,比如图像识别、图像理解和三维重构等等,都有重要应用,因为长期受到研究者的普遍关注,并且文献中已有大量的研究报道。
图像的特征点通常是指图像中的角点、曲率较大的边缘点和块状结构点等。与图像边缘特征一样,特征点也是图像的最基本特征,是图像分析、图像理解和三维重构中的最基本要素。特征点检测一直是研究者普遍关注的问题,通过长期研究文献中已出现了大量的检测方法。常用的检测方法分为三类:基于图像灰度的方法,基于图像梯度的方法,以及基于图像二阶微分的方法。
图像特征点描述在文献中也有很多方法,目前最流行的是基于直方图的方法。例如SIFT描述、GLOH描述和DAISY描述都是创建梯度方向和位置方向的直方图;SpinImage描述子创建边缘点的位置直方图;ShapeContex描述是创建边缘点的位置直方图。在不同的特征描述方法中,利用的局部图像信息通常是不同的。例如,SpinImage利用灰度值的空间分布信息,SIFT和GLOH利用了方向梯度大小的空间分布信息。近年来,局部二元模式被用于特征描述,并且取得了与SIFT描述相当的效果。CS-LBP通过统计中心对称的局部对称的局部三元模式的直方图进行特征描述,CS-STP则通过统计中心对称的局部三元模式的直方图进行特征描述。可以说,众多的特征描述方法以及特征匹配方法各有优缺点,其经验公式和适应范围皆不相同,为了方便研究者对特征点描述算法和匹配方法进行比较性的研究,本发明提出了一种图像特征点匹配模块的面向对象系统框架建立方法。
发明内容
本发明是针对现有图像特征点匹配算法存在可扩展性不足的问题,提出了一种图像特征点匹配模块的面向对象系统框架建立方法,利用软件开发过程的面向对象的思想,将多幅图像进行特征点提取,建立特征点超空间划分的树状结构,搜索匹配以获得两幅图像甚至多幅图像间的匹配关系。
本发明的技术方案为:一种图像特征点匹配模块的面向对象系统框架建立方法,包括如下步骤:
1)电脑采集n幅图像数据,在多幅图像上进行特征点提取;
2)构建特征点描述子表达的特征点的数据结构,数据结构包括构造特征点类型和构造特征点描述子基础类,
构造特征点类型:特征点的位置信息和特征点坐标变换方法;
构造特征点描述子基础类CFeatureDescriptor:
a)特征点描述子表:描述子表中存放的特征点特征的全部数据信息;
b)特征点描述子的生成算法;
c)特征点描述子匹配算法;
d)特征点描述子匹配修正算法;
e)特征点描述子的特征点或非特征点的扩散算法;
f)特征点描述子搜索运算;
3)选择算法根据特征点描述子数据结构生成派生类,派生出包括特征点和特征点描述子信息的特征点实体类;
4)将采集的任意一幅图的特征点划分为树状空间,形成初始匹配集,选取其他图针对初始匹配集进行特征点扫描;
5)根据匹配关系函数对多幅图像匹配点进行匹配扫描,得到多幅图像间的匹配关系,即得到图像由匹配关系类建立的链表结构。
所述步骤3)中算法可选
Harris算子类CHarrisDescriptor、
Harris-Affine算子CHarris_AffineDescriptor类、
Hessian-Affine算子CHessian_AffineDescriptor类、
SIFT算法基础CSIFTDescriptor类、
LIOP算法基础CLIOPDescriptor类。
所述步骤4)中树状空间可用二叉树状结构:在维空间的个特征点上进行搜索,在维上找出某一个最大方差维,并在这一维上的中值点上画超平面,将维空间分成左半超平面和又半超平面,并记录超平面的最大方差维的数值,将其作为划分左分支和右分支的基准,继续左分支和右分支上执行上述的步骤,直到某分支上仅剩余一个特征点,将其称为叶子分支,结束递归循环。
所述步骤5)中匹配扫描是一个在树状空间上进行查找的过程,如对于第二幅待匹配图像而言,第一幅图像作为初始匹配集,则将第一幅图像的特征点划分为树状空间,而在第二幅图像中按照扫描的方式,从1号索引点开始进行扫描直到最后一个,假设目前搜索到第个特征点,根据其特征描述子所确定在超平面空间的位置,确定出该节点在特征空间树状结构的哪个节点处,从而建立有限特征点的匹配关系,匹配关系函数为匹配距离是否小于设定值,就可以判断特征点是否与该点具有匹配关系,如小于确认为具有匹配关系加入匹配关系列表。
本发明的有益效果在于:本发明图像特征点匹配模块的面向对象系统框架建立方法,为进一步基于多幅图像的三维重建算法提供数据支撑,为特征点匹配算法的研究提供系统框架。
附图说明
图1为本发明图像特征点匹配模块的面向对象系统框架建立流程图;
图2为本发明图像特征点匹配模块的面向对象系统基础类库图;
图3为本发明图像特征点匹配模块的面向对象系统框架建立实施例采集图像1图;
图4为本发明图像特征点匹配模块的面向对象系统框架建立实施例采集图像2图;
图5为本发明图像特征点匹配模块的面向对象系统框架建立实施例匹配结果图;
图6为本发明图像特征点匹配模块的面向对象系统框架建立匹配关系库图。
具体实施方式
一、首先图像特征点匹配模块的面向对象系统框架建立所需环境:
硬件环境最低配置:
1)有源摄像头配置
CPU:奔腾1.6Ghz
内存:256MB
声卡:需要语音监听、双向对讲时必备
硬盘:需要录制图像,应不低于40G
2)其他硬件设备
300M-11N无线路由器(两台),WD-500M电力载波器(两台),笔记本电脑(两台以上)。
软件环境:
操作系统:32、64位Windows2000/WindowsXP/Windows2003/WindowsVista/Windows7,MacOS等操作系统。
浏览器:InternetExplorer/MozillaFirefox/GoogleBrowser
网络协议:TCP/IP。
二、其次如图1所示图像特征点匹配模块的面向对象系统框架建立流程图,电脑采集n幅图像数据,在多幅图像上进行特征点提取及特征描述子的构造,形成各个图像的特征描述子集合;使用DavidG.Lowe提出的尺度不变特征描述子(ScaleInvariantFeatureTransform,SIFT)对多幅图像进行特征点的提取,提取后的单个描述子除特征点的亚像素级位置外,还包括了特征点的128维的灰度值方图最大方向的角度数值描述;构建特征点描述子表达的特征点的数据结构,选择算法根据特征点描述子数据结构生成派生类,双派生出包括特征点和特征点描述子信息的特征点实体类;建立特征点超空间划分的树状结构,将特征点描述子进行超空间区域的匹配扫描;根据匹配关系函数对匹配点进行搜索后得到多幅图像匹配关系,即匹配的特征点。
三、如图2所示图像特征点匹配模块的面向对象系统基础类库图,本实施例中采用的是大小为653×490的图像,共获得1004个特征点。为了扩大程序对算法的适用程度,需要构造一个能够满足各种描述子表达的特征点的表示数据结构。
1、构造特征点类CFeaturePoint如下内容:
1)特征点的位置信息,如横坐标和纵坐标的亚像素级别的位置;
2)特征点坐标变换方法,如仿射变换等;
2、构造特征点描述子基础类CFeatureDescriptor如下内容,第一项是数据信息,后五项是描述了该类中所应用的所有算法:
1)特征点描述子表,描述子表中存放了特征点特征的全部数据信息;
2)特征点描述子的生成算法;
3)特征点描述子匹配算法;
4)特征点描述子匹配修正算法;
5)特征点描述子的特征点(非特征点)的扩散算法;
6)特征点描述子搜索运算。
有了特征点描述子的基础类以后,根据这个基础类可以生成多个派生类,包括:
著名的Harris算子类CHarrisDescriptor、
Harris-Affine算子CHarris_AffineDescriptor类、
Hessian-Affine算子CHessian_AffineDescriptor类、
SIFT算法基础CSIFTDescriptor类、
LIOP算法基础CLIOPDescriptor类,LIOP算法是我国中科院自动化所的学者提出的一套基于局部灰度序模式的特征描述方法等,这里的类具有开放性,用户可以根据自己的算法需求定义出自己的算法类,可方便的进行算法之间的比较性研究。
这里根据特征点以及特征点描述子的派生类,双派生出包括特征点和特征点描述子信息的特征点实体类。至此,就构成了特征点描述字的实体类,该实体类的实例化就是所得到的某个特征点描述,利用C++的模板技术,还可以将特征点链接成链表形式,如形成特征点链FeaturePoints,方便遍历、修改等操作。
根据特征描述子集合的匹配关系,形成初始匹配集,并确认初始基本矩阵,特征点链FeaturePoints的表示方法对于多个图像间的搜索过程的运算量较大,通常会先将特征点链转换成一种树状表达方法后,再进行多幅图像的特征点匹配。本实施例采用一种对空间分割的二叉树的方法,将n维表达的特征点描述字进行超空间区域的划分。
特征点描述子类CFeatureDescriptor的特征点描述子表m_Feature所表达的特征点如下公式:
(公式1)
(公式2)
表示特征点的链表,该链表中的各个节点表示维的特征点,假设目前一共生成了个特征点。可以这样认为,它们共同构成了在维空间的个点。从而问题转变成为对这个点的划分以便能够执行快速的匹配策略。
建立一种二叉树状结构:在维空间的个点上进行搜索,在维上找出某一个最大方差维,并在这一维上的中值点上画超平面,将维空间分成左半超平面和又半超平面,并记录超平面的最大方差维的数值,将其作为划分左分支和右分支的基准。继续左分支和右分支上执行上述的步骤,直到某分支上仅剩余一个特征点,将其称为叶子分支,结束递归循环。该二叉树的构成函数为:
BiTree_Creat(FeaturePointsps,Tree_node*kd_root);输入为特征点链,输出为树状结构的一个指针,树状结构的内容如下:
structTree_node
{
intindex;空间分割的索引值
doublefeaturevalue;空间分割的特征值
boolleaf;是否为叶子节点
FeaturePoints*features;该节点下的所有特征点;
intn;特征点个数;
structTree_node*kd_left;左子树
structTree_node*kd_right;右子树
};
如图3、4、5所示,匹配过程是一个在二叉树划分的空间上进行查找的过程,如对于第二幅待匹配图像而言,第一幅图像为查找对象,则将第一幅图像的特征点划分为树状空间,而在第二幅图像中按照扫描的方式,从1号索引点开始进行扫描直到最后一个。假设目前搜索到第个特征点,根据其特征描述子所确定在超平面空间的位置,就可以确定出该节点在特征空间树状结构的哪个节点处,从而建立有限特征点的匹配关系,根据匹配公式(3),就可以判断特征点是否与该点具有匹配关系。设为待匹配图像某个特征点的描述子,为树状节点有限特征点内的某个特征点描述子,则匹配关系函数如下。
(公式3)
公式中,为匹配距离,当匹配距离小于3时,则认为两个特征点是近似的,具有匹配关系,加入到匹配集合中。
对所有的点进行匹配后,匹配关系列表就建立了。
(公式4)
公式中,为第幅匹配图像的特征点集,为幅图像的统一的特征点匹配关系集合。最后根据匹配关系利用最小二乘算法计算出匹配矩阵,从而实现图像间的坐标转换。
如图6所示匹配关系库图,本实施例将特征点匹配关系作为一个基础类CMatched_Feature,第一项匹配特征点是数据信息,后三项是描述了该类中所应用的所有算法,在该类中包括了:
1)匹配特征点;
2)特征点超空间二叉树的划分函数;
3)匹配点的搜索函数;
4)匹配关系函数;
在程序中,匹配关系集合是由匹配关系类建立的链表结构,后续的匹配矩阵生成及图像间的坐标旋转是通过另外建立三维重建系统框架实现的。从图3、4、5的实验数据可以看出,在背景比较复杂的情况下,基于SIFT算法的特征匹配方法也展现出众多的错误匹配点,基于本发明的对象系统框架,算法研究者非常方便的进一步的进行算法的完善工作。
Claims (2)
1.一种图像特征点匹配模块的面向对象系统框架建立方法,包括如下步骤:
1)电脑采集n幅图像数据,在多幅图像上进行特征点提取;
2)构建特征点描述子表达的特征点的数据结构,数据结构包括构造特征点类型和构造特征点描述子基础类,
构造特征点类型:特征点的位置信息和特征点坐标变换方法;
构造特征点描述子基础类CFeatureDescriptor:
a)特征点描述子表:描述子表中存放的特征点特征的全部数据信息;
b)特征点描述子的生成算法;
c)特征点描述子匹配算法;
d)特征点描述子匹配修正算法;
e)特征点描述子的特征点或非特征点的扩散算法;
f)特征点描述子搜索运算;
3)选择算法根据特征点描述子数据结构生成派生类,派生出包括特征点和特征点描述子信息的特征点实体类;
4)将采集的任意一幅图的特征点划分为树状空间,形成初始匹配集,选取其他图针对初始匹配集进行特征点扫描;
5)根据匹配关系函数对多幅图像匹配点进行匹配扫描,得到多幅图像间的匹配关系,即得到图像由匹配关系类建立的链表结构;
其特征在于,所述步骤4)中树状空间采用二叉树状结构:在维空间的个特征点上进行搜索,在维上找出某一个最大方差维,并在这一维上的中值点上画超平面,将维空间分成左半超平面和右半超平面,并记录超平面的最大方差维的数值,将其作为划分左分支和右分支的基准,继续左分支和右分支上执行上述的步骤,直到某分支上仅剩余一个特征点,将其称为叶子分支,结束递归循环。
2.根据权利要求1所述图像特征点匹配模块的面向对象系统框架建立方法,其特征在于,所述步骤5)中匹配扫描是一个在树状空间上进行查找的过程:对第k幅待匹配图像,k≤n,将在前的第k-1幅图像作为初始匹配集,则将第k-1幅图像的特征点划分为树状空间,而在第k幅图像中按照扫描的方式,从1号索引点开始进行扫描直到最后一个,假设目前搜索到第个特征点,根据其特征描述子所确定在超平面空间的位置,确定出该特征点在特征空间树状结构的哪个节点处,从而建立有限特征点的匹配关系,匹配关系函数为匹配距离是否小于设定值,就可以判断该特征点是否与该节点具有匹配关系,如小于确认为具有匹配关系加入匹配关系列表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310006501.6A CN103065321B (zh) | 2013-01-09 | 2013-01-09 | 一种图像特征点匹配模块的面向对象系统框架建立方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310006501.6A CN103065321B (zh) | 2013-01-09 | 2013-01-09 | 一种图像特征点匹配模块的面向对象系统框架建立方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103065321A CN103065321A (zh) | 2013-04-24 |
CN103065321B true CN103065321B (zh) | 2016-05-25 |
Family
ID=48107938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310006501.6A Expired - Fee Related CN103065321B (zh) | 2013-01-09 | 2013-01-09 | 一种图像特征点匹配模块的面向对象系统框架建立方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103065321B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104166988B (zh) * | 2014-07-10 | 2017-06-06 | 北京工业大学 | 一种融入稀疏匹配信息的立体图像同步分割方法 |
CN104679011B (zh) * | 2015-01-30 | 2017-07-11 | 南京航空航天大学 | 基于稳定分支特征点的图像匹配导航方法 |
CN104615988A (zh) * | 2015-02-04 | 2015-05-13 | 四川中科腾信科技有限公司 | 一种图像识别方法 |
CN106910210B (zh) * | 2017-03-03 | 2018-09-11 | 百度在线网络技术(北京)有限公司 | 用于生成图像信息的方法和装置 |
CN111324806A (zh) * | 2018-12-14 | 2020-06-23 | 阿里巴巴集团控股有限公司 | 结构化模板的更新方法和装置以及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140624A (zh) * | 2007-10-18 | 2008-03-12 | 清华大学 | 图像匹配方法 |
CN101877007A (zh) * | 2010-05-18 | 2010-11-03 | 南京师范大学 | 融合空间方位关系语义的遥感图像检索方法 |
CN101944183A (zh) * | 2010-09-02 | 2011-01-12 | 北京航空航天大学 | 一种利用sift树进行物体识别的方法 |
-
2013
- 2013-01-09 CN CN201310006501.6A patent/CN103065321B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101140624A (zh) * | 2007-10-18 | 2008-03-12 | 清华大学 | 图像匹配方法 |
CN101877007A (zh) * | 2010-05-18 | 2010-11-03 | 南京师范大学 | 融合空间方位关系语义的遥感图像检索方法 |
CN101944183A (zh) * | 2010-09-02 | 2011-01-12 | 北京航空航天大学 | 一种利用sift树进行物体识别的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103065321A (zh) | 2013-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Shavit et al. | Introduction to camera pose estimation with deep learning | |
Kanungo et al. | An efficient k-means clustering algorithm: Analysis and implementation | |
CN103065321B (zh) | 一种图像特征点匹配模块的面向对象系统框架建立方法 | |
US8638327B2 (en) | Tiled projections for planar processing of round earth data | |
CN107292949A (zh) | 场景的三维重建方法、装置及终端设备 | |
CN102194133B (zh) | 基于数据聚类的适应性图像sift特征匹配方法 | |
Ryu et al. | Improved informed RRT* using gridmap skeletonization for mobile robot path planning | |
CN102208033B (zh) | 基于数据聚类的鲁棒sift特征匹配方法 | |
Deng et al. | An efficient online direction-preserving compression approach for trajectory streaming data | |
CN105320764A (zh) | 一种基于增量慢特征的3d模型检索方法及其检索装置 | |
Yang et al. | Multi-view semantic learning network for point cloud based 3D object detection | |
Cao et al. | Robust bundle adjustment for large-scale structure from motion | |
CN102496033B (zh) | 基于mr计算框架的图像sift特征匹配方法 | |
Cao et al. | Fast incremental structure from motion based on parallel bundle adjustment | |
Zhu et al. | An improved RANSAC algorithm based on similar structure constraints | |
Chen et al. | An improved dense-to-sparse cross-modal fusion network for 3D object detection in RGB-D images | |
Feng et al. | Research of temporal information index strategy based on HBase | |
Suciu et al. | Big data technology for scientific applications | |
CN105354243B (zh) | 基于归并聚类的并行化频繁概率子图搜索方法 | |
Cao et al. | Evaluation of local features for structure from motion | |
Tushev et al. | Parallel algorithms for effective correspondence problem solution in computer vision | |
Li et al. | Remote sensing image segmentation based on Hadoop cloud platform | |
Sun et al. | A local spectral feature based face recognition approach for the one-sample-per-person problem | |
Yan et al. | A general multi-graph matching approach via graduated consistency-regularized boosting | |
CN103514434A (zh) | 一种图像识别方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160525 Termination date: 20190109 |
|
CF01 | Termination of patent right due to non-payment of annual fee |