一种基于OpenCV图像处理的二维碎片拼接系统及方法技术方案

技术编号:34434185 阅读:15 留言:0更新日期:2022-08-06 16:15
本发明专利技术公开一种基于OpenCV图像处理的二维碎片拼接系统及方法。系统提供碎片的预处理功能,包括以下几个处理模式:(a)图片灰度处理;(b)图片二值化处理;(c)图片边缘提取以及多边形拟合处理。使传输的碎片数据尽可能的达到最好的可拼接状态。因为需要使用不同的拼接算法处理不同的拼接场景,使用两种拼接算法:(a)类多边形步骤拼接;(b)快速拼接。该系统适合个人及中小团队使用,对图像碎片进行整合复原成图片原来的样貌,提高个人或者团队对碎片的研究效率。本系统实现系统的快速移植,成为便捷移动、操作简单易上手的系统。操作简单易上手的系统。操作简单易上手的系统。

【技术实现步骤摘要】
一种基于OpenCV图像处理的二维碎片拼接系统及方法


[0001]本专利技术属于计算机视觉领域,尤其是一种基于OpenCV图像处理的二维碎片拼接方法。

技术介绍

[0002]目前,业内存在许多关于这方面的研究:
[0003](a)一种基于形状匹配的碎纸片拼接,这类算法是以观察轮廓为主,找到能很好拼接上轮廓片段,从而达到碎片匹配拼接的目的;
[0004](b)基于轮廓角特征局部匹配[4],这个算法抓住碎片可局部角匹配从而找到全局碎片匹配的形式,从而达到多块碎片匹配拼接的目的;
[0005](c)广度优先搜索的全局匹配[5],这个算法以碎片如何拼接为主题,当我们成功找到匹配碎片以及匹配位置时,能够在计算机上实现碎片拼接复原的一种算法。
[0006]以上算法是基于碎片形状、边缘特征的匹配拼接的理论研究。
[0007]当然也存在基于内容的拼接算法,如:
[0008](a)边缘内容的向量匹配[6],此算法抓住碎片能够匹配往往边缘内容是一致的思想,基于边缘灰度信息的匹配方法,从而达到碎片的匹配拼接;
[0009](b)彩色图像碎片全自动拼接[7],此算法主要是以RGB图像的另一种角度,将RGB图像转换成HSV图像,作者认为HSV得到的效果往往比灰度信息得到的效果要好,因此采用此种方法实现匹配拼接。
[0010]以上是基于碎片边缘内容的匹配拼接理论研究。
[0011]综上所述,现有研究技术存在的问题是:上面所说的几种拼接算法,可以说是目前为止比较好的二维碎片拼接思想,也是相对来说比较新颖的算法研究。但是这些研究大都主要在理论以及简单的操作实践可行性上,其中相关的研究成果繁多,实现方式上也仅只是一个实验,或者专门于某种碎片的拼接算法系统上,真正的一款类似的集成多种碎片拼接算法的适应多种情况的软件系统还没有,在相关论文研究中也没有明确涉及到。

技术实现思路

[0012]针对现有技术存在的问题,本专利技术提供了一种基于OpenCV图像处理的二维碎片拼接方法。
[0013]本方法是这样构思的,一种基于OpenCV图像处理的二维碎片拼接方法。所述二维碎片拼接方法,使用OpenCV进行图片灰度处理,二值化处理,图片边缘提取以及多边形拟合处理。使传输的碎片数据尽可能的达到最好的可拼接状态。为需要使用不同的拼接算法处理不同的拼接场景,使用两种拼接算法:(a)类多边形步骤拼接;(b)快速拼接。
[0014]一种基于二维碎片拼接系统以及方法包括以下步骤:
[0015]步骤一,碎片上传模块收集大量图像碎片作为二维碎片拼接系统的元数据。
[0016]步骤二,碎片预处理模块对所有碎片进行灰度化处理
[0017]步骤三,碎片预处理模块对所有碎片进行二值化处理。
[0018]步骤四,碎片预处理模块对得到的二值图像进行边缘查找,使用的函数是OpenCV的findContours,本质是对二值图像进行拓扑分析,得到外边界、孔边界以及他们的层次关系。
[0019]步骤五,碎片预处理模块对得到的边缘信息碎片进行多边形,得到碎片的角点。
[0020]步骤六,步骤五得到的角点以及步骤四得到的边缘信息,对每张碎片进行处理得到边缘灰度序列以及边缘长度序列。
[0021]步骤七,拼接选择模块根据不同的场景选择类多边形拼接或者快速拼接算法。
[0022]步骤八,若手动拼接则可以重新进行其他碎片拼接,将手动拼接的二次碎片压入碎片栈中,并重复步骤一到七。
[0023]进一步,所述碎片上传模块中首先需要采集需要拼接的大量二维碎片,这个模块主要为系统提供将要拼接的图片碎片并上传到后台存储,以便后续的操作。
[0024]进一步,所述碎片预处理模块,将上传到后台的图像碎片进行参数设定,如类多边形拼接需要计算边界长度和灰度值等参数有,快速拼接需要角点角度等参数,并预览根据设定的参数之后的效果。根据效果的呈现,调整参数,以得到较好的图像预处理参数,为后续拼接结果得到最正确的答案提供保障。
[0025]进一步,所述拼接选择模块包括类多边形拼接和快速拼接算法,所述类多边形拼接算法具体步骤包括:
[0026](1)随机从碎片序列选取一张图片(从碎片序列中弹出),分别对剩下的每一张碎片的每一条边进行长度匹配,采用的是线段距离的差的绝对值,得到匹配信息序列(这个序列主要存储的是能匹配的边的信息以及匹配的值,采用的是与字典树类似的数据结构)。
[0027](2)从(1)中的匹配信息序列中选取最小的匹配信息。
[0028](3)当最小匹配信息只有一个时,直接根据序列中的记录的拼接部位,将两碎片拼接(同时将即将要拼接的碎片弹出碎片序列),拼接后的结果图压入碎片序列的末尾。
[0029](4)当最小匹配信息有多个时,将其分别与最小匹配信息的边进行灰度值匹配检测,得到数值最符合,也就是最小的一个。两碎片根据记录的匹配部位拼接(同时将即将要拼接的碎片弹出碎片序列),拼接后的结果图压入碎片序列的末尾。
[0030](5)碎片序列的数量,如果等于1,即拼接完成,输出结果图。如果大于1,重复图片拼接阶段的步骤。
[0031]所述快速拼接算法具体步骤包括:
[0032](1)对每二个图像依次进行俩俩匹配,匹配方法是LCS动态规划算法。得到并保存匹配系数以及匹配位置。
[0033](2)通过(1)可以得到一张无向图,图中的每个顶点代表一副图像的轮廓信息,连接顶点的边代表两副碎片图像的匹配系数。
[0034](3)从该图中生成一个匹配系数总和最大的一颗树(其实就是最小生成树算法),用优先队列和BFS(广度优先搜索)实现,再记录这棵树的每一条边。
[0035](4)遍历每一条边,根据之前记录的轮廓匹配位置,依次对该边对应的二个顶点即碎片图像进行拼接,最后就可以得到完整的拼接后的图像。
[0036]通常不规则图形可以拟合成多边形,多边形就存在角点。碎片能够拼接在一起,往
往取决的就是角点与角点之间的吻合匹配,当一个顶点所形成的向量的夹角是凹的45
°
,能与之匹配的就是凸的45
°
,当出现此类情况则选择使用快速拼接方法,否则使用类多边形拼接算法。
[0037]综上所述,本专利技术的优点及积极效果为:本专利技术步骤简明,在非常多的数据量下,相比现有技术,本专利技术的方法可以使计算量大幅度减少;另一方面,最后的拼接图片正确率达到较高水平,本专利技术提出的基于OpenCV的二维碎片拼接方法无需人工参与处理图像的过程,通过系统自身的动态调整,可以使各个拼接方法完成的图片正确率达到较高水平,当有不同的拼接需求时,可以使用不同的拼接方法。对于有大量数据碎片的的数据量,现有技术不能同时用多种拼接方法和预处理进行图像拼接,本专利技术可以在很少的时间内达到最高正确率和最大数据量的拼接效果。
附图说明
[0038]图1是基于OpenCV图像处理的二维碎片拼接系统及方法的流本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于OpenCV图像处理的二维碎片拼接系统,包括碎片上传模块,碎片预处理模块,拼接结果展示模块,其特征在于:图片上传模块中首先需要采集需要拼接的大量二维碎片,这个模块主要为系统提供将要拼接的图片碎片并上传到后台存储,以便后续的操作;图片预处理模块,在此模块中,将上传到后台的图像碎片进行参数设定,此参数由所提供的不同拼接算法确定,并预览根据设定的参数之后的效果,根据效果的呈现,调整参数,以得到较好的图像预处理参数,为后续拼接结果得到最正确的答案提供保障;拼接方法选择模块,功能限定;拼接过程及结果展示模块:根据上一步提供的参数作为依据,使用算法将碎片整合成完整的复原图。2.一种基于OpenCV图像处理的二维碎片拼接方法,其特征在于,所述的二维碎片拼接系统以及方法包括以下步骤:步骤一,碎片上传模块收集大量图像碎片作为二维碎片拼接系统的元数据;步骤二,碎片预处理模块对所有碎片进行灰度化处理;步骤三,碎片预处理模块对所有碎片进行二值化处理;步骤四,碎片预处理模块对得到的二值图像进行边缘查找,本质是对二值图像进行拓扑分析,得到外边界、孔边界以及他们的层次关系;步骤五,碎片预处理模块对得到的边缘信息碎片进行多边形整合,得到碎片的角点;步骤六,步骤五得到的角点以及步骤四得到的边缘信息,对每张碎片进行处理得到边缘灰度序列以及边缘长度序列;步骤七,拼接模块根据不同的场景选择类多边形拼接或者快速拼接算法;步骤八,若手动拼接则可以重新进行其他碎片拼接,将手动拼接的二次碎片压入碎片栈中,并重复步骤一到七。3.根据权利要求2所述基于OpenCV图像处理的二维碎片拼接方法,其特征在于,所述类多边形拼接算法具体步骤包括:(1)随机从碎片序列选取一张图片即从碎片序列中弹出,分别对剩下的每一张碎片的每一...

【专利技术属性】
技术研发人员:沈玉龙闫文成夏翔薛天琳袁思林
申请(专利权)人:西安电子科技大学西电科大青岛计算技术研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1