CN109978760A - 一种图像拼接方法及装置 - Google Patents
一种图像拼接方法及装置 Download PDFInfo
- Publication number
- CN109978760A CN109978760A CN201711445096.2A CN201711445096A CN109978760A CN 109978760 A CN109978760 A CN 109978760A CN 201711445096 A CN201711445096 A CN 201711445096A CN 109978760 A CN109978760 A CN 109978760A
- Authority
- CN
- China
- Prior art keywords
- image
- spliced
- grid
- characteristic point
- homography matrix
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 239000011159 matrix material Substances 0.000 claims abstract description 242
- 239000000284 extract Substances 0.000 claims abstract description 9
- 238000000605 extraction Methods 0.000 claims description 17
- 238000004422 calculation algorithm Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 11
- 238000010606 normalization Methods 0.000 claims description 3
- 238000009826 distribution Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 8
- 238000003860 storage Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 230000004927 fusion Effects 0.000 description 3
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 200000000007 Arterial disease Diseases 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
本申请实施例提供了一种图像拼接方法及装置,方法包括:获取基础拼接图像和待拼接图像,提取基础拼接图像和待拼接图像的特征点,确定多个匹配特征点对,根据确定的多个匹配特征点对,计算每一待拼接图像的单应矩阵,根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域,根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立,对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵,根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接基础拼接图像和至少一张待拼接图像。应用本申请实施例,解决了图像拼接的错位和重影的问题。
Description
技术领域
本申请涉及图像处理技术领域,特别是涉及一种图像拼接方法及装置。
背景技术
为了解决单镜头摄像机视场角狭窄的问题,多镜头全景摄像机应运而生。多镜头全景摄像机可以同时采集不同方向的多路图像,并且进行拼接,得到大视角的全景图像。
目前,图像的拼接方法包括:获取至少一张待拼接图像和基础拼接图像,其中,待拼接图像以基础拼接图像为基础,例如将待拼接图像转换至基础拼接图像的坐标系中;确定待拼接图像和基础拼接图像中每两张图像的匹配特征点对;根据匹配特征点对的坐标,确定每一待拼接图像针对基础拼接图像的单应矩阵;根据单应矩阵拼接待拼接图像和基础拼接图像。
实际应用中,一张图像是具有深度信息,图像中不同物***于不同的平面,深度信息不同,如图像中一个人站在一个建筑前,这张图像中人和建筑的深度信息是不同的,这就造成图像中特征分布不均匀。在图像中特征分布不均匀的情况下,若采用单一单应矩阵拼接图像,很可能造成拼接图像出现错位和重影的问题。
发明内容
本申请实施例的目的在于提供一种图像拼接方法及装置,以解决图像拼接的错位和重影问题。具体技术方案如下:
一方面,本申请实施例提供了一种图像拼接方法,所述方法包括:
获取基础拼接图像和至少一张待拼接图像;
提取所述基础拼接图像和所述至少一张待拼接图像的特征点;
对所述至少一张待拼接图像和所述基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对;
根据确定的多个匹配特征点对中特征点的坐标,计算每一待拼接图像针对所述基础拼接图像的单应矩阵;
根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域;
根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立;
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵;
根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接所述基础拼接图像和所述至少一张待拼接图像。
在本申请的一个实施例中,所述提取所述基础拼接图像和所述至少一张待拼接图像的特征点的步骤,包括:
依据SIFT(Scale-invariant feature transform,尺度不变特征变换)算法提取所述至少一张待拼接图像和所述基础拼接图像中的特征点。
在本申请的一个实施例中,所述对所述至少一张待拼接图像和所述基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对的步骤,包括:
对于所述至少一张待拼接图像和所述基础拼接图像中每一张图像的每一特征点,计算其他图像的特征点的描述算子与该特征点的描述算子间的欧式距离;所述其他图像为所述至少一张待拼接图像和所述基础拼接图像中除该图像外的图像;将该特征点与欧式距离最小的描述算子对应的特征点构成匹配特征点对。
在本申请的一个实施例中,在对所述至少一张待拼接图像和所述基础拼接图像中每两张图像的特征点进行匹配之前,所述方法还包括:
对于提取的每一特征点,利用该特征点邻域像素的梯度信息建立360度梯度直方图,获得该特征点在空间上的描述算子;归一化该特征点的描述算子。
在本申请的一个实施例中,所述根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域的步骤,包括:
对于每一待拼接图像,采用以下步骤确定该待拼接图像的重叠区域:
确定该待拼接图像的四个顶点在所述基础拼接图像所在平面上的横坐标和纵坐标;
确定匹配图像的四个顶点在所述基础拼接图像所在平面上的横坐标和纵坐标;所述匹配图像为与该待拼接图像的特征点组成匹配特征点对的特征点所在的图像;
确定第一横坐标、第二横坐标、第一纵坐标和第二纵坐标;所述第一横坐标为该待拼接图像四个顶点的最小横坐标和所述匹配图像四个顶点的最小横坐标中的最大值;所述第二横坐标为该待拼接图像四个顶点的最大横坐标和所述匹配图像四个顶点的最大横坐标中的最小值;所述第一纵坐标为该待拼接图像四个顶点的最小纵坐标和所述匹配图像四个顶点的最小纵坐标中的最大值;所述第二纵坐标为该待拼接图像四个顶点的最大纵坐标和所述匹配图像四个顶点的最大纵坐标中的最小值;
由所述第一横坐标、所述第二横坐标、所述第一纵坐标和所述第二纵坐标,确定该待拼接图像与所述匹配图像的重叠区域。
在本申请的一个实施例中,所述根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立的步骤,包括:
从每一待拼接图像对应的所有匹配特征点对的重投影误差中,获取最大重投影误差和最小重投影误差;
根据最大重投影误差和最小重投影误差,对每一待拼接图像的重叠区域进行第一网格建立。
在本申请的一个实施例中,所述根据最大重投影误差和最小重投影误差,对每一待拼接图像的重叠区域进行第一网格建立的步骤,包括:
对于每一待拼接图像,根据以下公式,对该待拼接图像的重叠区域进行第一网格建立:
其中,△hi为该待拼接图像的第i个第一网格内特征点所在匹配特征点对的重投影误差,△hmin为获取的该待拼接图像对应的最小重投影误差,△hmax为获取的该待拼接图像对应的最大重投影误差,N为正整数;i的取值范围为0~N-1。
在本申请的一个实施例中,所述对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵的步骤,包括:
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值;
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格外特征点所在匹配特征点对的权值;
对于每一待拼接图像的每一第一网格,根据该第一网格内特征点所在匹配特征点对的权值和该第一网格外特征点所在匹配特征点对的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第一网格的单应矩阵。
在本申请的一个实施例中,所述根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值的步骤,包括:
对于该第一网格内的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w*为该特征点所在匹配特征点对的权值,γ为该第一网格的权值,γ的取值范围为0~1,M为该第一网格内包括在匹配特征点对中的特征点的个数。
在本申请的一个实施例中,所述根据该第一网格的权值,确定该第一网格外特征点所在匹配特征点对的权值的步骤,包括:
对于该第一网格外的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w'*为该特征点所在匹配特征点对的权值,t*为该特征点的坐标,ti为该第一网格内第i个包括在匹配特征点对中特征点的坐标。
在本申请的一个实施例中,所述根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接所述基础拼接图像和所述至少一张待拼接图像的步骤,包括:
根据预设参数,对每一待拼接图像的非重叠区域进行第二网格建立;所述非重叠区域为每一待拼接图像中除重叠区域外的区域;
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵;
根据每一第一网格的单应矩阵和每一第二网格的单应矩阵,拼接所述基础拼接图像和所述至少一张待拼接图像。
在本申请的一个实施例中,所述对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵的步骤,包括:
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值;
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第二网格的单应矩阵。
在本申请的一个实施例中,所述根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值的步骤,包括:
根据以下公式,确定该第二网格相邻的其他第二网格的权值:
其中,wj为该第二网格相邻的第j个其他第二网格的权值,Qj为该第二网格相邻的第j个其他第二网格的权值比例,Qi为该第二网格相邻的第i个其他第二网格的权值比例,S为与该第二网格相邻的其他第二网格的总个数。
在本申请的一个实施例中,每一第二网络的大小相等。
二方面,本申请实施例提供了一种图像拼接装置,所述装置包括:
获取单元,用于获取基础拼接图像和至少一张待拼接图像;
提取单元,用于提取所述基础拼接图像和所述至少一张待拼接图像的特征点;
匹配单元,用于对所述至少一张待拼接图像和所述基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对;
计算单元,用于根据确定的多个匹配特征点对中特征点的坐标,计算每一待拼接图像针对所述基础拼接图像的单应矩阵;
确定单元,用于根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域;
建立单元,用于根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立;
调整单元,用于对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵;
拼接单元,用于根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接所述基础拼接图像和所述至少一张待拼接图像。
在本申请的一个实施例中,所述提取单元,具体用于:
依据SIFT算法提取所述至少一张待拼接图像和所述基础拼接图像中的特征点。
在本申请的一个实施例中,所述匹配单元,具体用于:
对于所述至少一张待拼接图像和所述基础拼接图像中每一张图像的每一特征点,计算其他图像的特征点的描述算子与该特征点的描述算子间的欧式距离;所述其他图像为所述至少一张待拼接图像和所述基础拼接图像中除该图像外的图像;将该特征点与欧式距离最小的描述算子对应的特征点构成匹配特征点对。
在本申请的一个实施例中,所述装置还包括:
获得单元,用于对于提取的每一特征点,利用该特征点邻域像素的梯度信息建立360度梯度直方图,获得该特征点在空间上的描述算子;
归一化单元,用于对于提取的每一特征点,归一化该特征点的描述算子。
在本申请的一个实施例中,所述确定单元,具体用于对于每一待拼接图像,确定该待拼接图像的重叠区域,包括:
第一确定子单元,用于确定该待拼接图像的四个顶点在所述基础拼接图像所在平面上的横坐标和纵坐标;
第二确定子单元,用于确定匹配图像的四个顶点在所述基础拼接图像所在平面上的横坐标和纵坐标;所述匹配图像为与该待拼接图像的特征点组成匹配特征点对的特征点所在的图像;
第三确定子单元,用于确定第一横坐标、第二横坐标、第一纵坐标和第二纵坐标;所述第一横坐标为该待拼接图像四个顶点的最小横坐标和所述匹配图像四个顶点的最小横坐标中的最大值;所述第二横坐标为该待拼接图像四个顶点的最大横坐标和所述匹配图像四个顶点的最大横坐标中的最小值;所述第一纵坐标为该待拼接图像四个顶点的最小纵坐标和所述匹配图像四个顶点的最小纵坐标中的最大值;所述第二纵坐标为该待拼接图像四个顶点的最大纵坐标和所述匹配图像四个顶点的最大纵坐标中的最小值;
第四确定子单元,用于由所述第一横坐标、所述第二横坐标、所述第一纵坐标和所述第二纵坐标,确定该待拼接图像与所述匹配图像的重叠区域。
在本申请的一个实施例中,所述建立单元,包括:
获取子单元,用于从每一待拼接图像对应的所有匹配特征点对的重投影误差中,获取最大重投影误差和最小重投影误差;
第一建立子单元,用于根据最大重投影误差和最小重投影误差,对每一待拼接图像的重叠区域进行第一网格建立。
在本申请的一个实施例中,所述第一建立子单元,具体用于:
对于每一待拼接图像,根据以下公式,对该待拼接图像的重叠区域进行第一网格建立:
其中,△hi为该待拼接图像的第i个第一网格内特征点所在匹配特征点对的重投影误差,△hmin为获取的该待拼接图像对应的最小重投影误差,△hmax为获取的该待拼接图像对应的最大重投影误差,N为正整数;i的取值范围为0~N-1。
在本申请的一个实施例中,所述调整单元,包括:
第五确定子单元,用于对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值;
第六确定子单元,用于对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格外特征点所在匹配特征点对的权值;
第一调整子单元,用于对于每一待拼接图像的每一第一网格,根据该第一网格内特征点所在匹配特征点对的权值和该第一网格外特征点所在匹配特征点对的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第一网格的单应矩阵。
在本申请的一个实施例中,所述第五确定子单元,具体用于:
对于每一待拼接图像的每一第一网格内的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w*为该特征点所在匹配特征点对的权值,γ为该第一网格的权值,γ的取值范围为0~1,M为该第一网格内包括在匹配特征点对中的特征点的个数。
在本申请的一个实施例中,所述第六确定子单元,具体用于:
对于每一待拼接图像的每一第一网格外的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w'*为该特征点所在匹配特征点对的权值,t*为该特征点的坐标,ti为该第一网格内第i个包括在匹配特征点对中特征点的坐标。
在本申请的一个实施例中,所述拼接单元,包括:
第二建立子单元,用于根据预设参数,对每一待拼接图像的非重叠区域进行第二网格建立;所述非重叠区域为每一待拼接图像中除重叠区域外的区域;
第二调整子单元,用于对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵;
拼接子单元,用于根据每一第一网格的单应矩阵和每一第二网格的单应矩阵,拼接所述基础拼接图像和所述至少一张待拼接图像。
在本申请的一个实施例中,所述第二调整子单元,具体用于:
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值;
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第二网格的单应矩阵。
在本申请的一个实施例中,所述第二调整子单元,具体用于:
对于每一待拼接图像的每一第二网格,根据以下公式,确定该第二网格相邻的其他第二网格的权值:
其中,wj为该第二网格相邻的第j个其他第二网格的权值,Qj为该第二网格相邻的第j个其他第二网格的权值比例,Qi为该第二网格相邻的第i个其他第二网格的权值比例,S为与该第二网格相邻的其他第二网格的总个数。
在本申请的一个实施例中,每一第二网络的大小相等。
三方面,本申请实施例提供了一种电子设备,包括处理器和存储器;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的计算机程序,实现上述任一图像拼接方法步骤。
四方面,本申请实施例提供了一种机器可读存储介质,所述机器可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一图像拼接方法步骤。
本申请实施例中,在确定每一待拼接图像针对基础拼接图像的单应矩阵后,根据匹配特征点对间的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立,重投影误差为体现特征的一个重要参数,根据重投影误差可以将特征相近的特征点建立在一个第一网格中,进而,对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵,避免了特征分布不均匀的图像采用单一单应矩阵的问题,根据每一第一网格的单应矩阵,拼接基础拼接图像和待拼接图像,在图像中特征分布不均匀的情况下,有效解决了图像拼接的错位和重影的问题。当然,实施本申请的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的图像拼接方法的第一种流程示意图;
图2为本申请实施例提供的待拼接图像的第一种示意图;
图3为本申请实施例提供的图像拼接方法的第二种流程示意图;
图4为本申请实施例提供的权值比例的一种分配图;
图5为本申请实施例提供的待拼接图像的第二种示意图;
图6为本申请实施例提供的图像拼接装置的第一种结构示意图;
图7为本申请实施例提供的图像拼接装置的第二种结构示意图;
图8为本申请实施例提供的图像拼接装置的第三种结构示意图;
图9为本申请实施例提供的图像拼接装置的第四种结构示意图;
图10为本申请实施例提供的图像拼接装置的第五种结构示意图;
图11为本申请实施例提供的电子设备的一种结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,采用单一单应矩阵进行图像拼接时,在图像中特征分布不均匀的情况下,很可能造成拼接图像出现错位和重影的问题。
为解决图像拼接的错位和重影的问题,本申请实施例提供了一种图像拼接方法及装置。参考图1,图1为本申请实施例提供的图像拼接方法的第一种流程示意图,该方法包括:
S101:获取基础拼接图像和至少一张待拼接图像。
在本申请的一个实施例中,图像采集装置每采集到一张图像,就可以从图像采集装置获取到该采集的图像,在获取到多张图像后,可以从这多张图像中随机的选取一张图像作为基础拼接图像,其他图像作为待拼接图像。
在本申请的一个实施例中,图像采集装置每采集到一张图像,可以将图像存储至数据库,获取待拼接图像和基础拼接图像时,可以从数据库中获取多张图像,从这多张图像中随机的选取一张图像作为基础拼接图像,其他图像作为待拼接图像。
在本申请实施例中,图像采集装置可以为多镜头全景摄像机、单镜头摄像机等。
S102:提取基础拼接图像和至少一张待拼接图像的特征点。
在本申请的一个实施例中,为了提高提取特征点的合理性,依据SIFT算法提取待拼接图像和基础拼接图像中的特征点。
例如,可以先以采用SIFT算法构建尺度空间,提取待拼接图像和基础拼接图像的特征点,SIFT算法鲁棒性好,通过SIFT算法提取的特征点具有放缩不变性和一定的抗噪性。
在本申请的一个实施例中,对于提取的每一特征点,可以利用该特征点邻域像素的梯度信息建立360度梯度直方图,生成高维的空间描述子,即获得了该特征点在空间上的描述算子,这可以使特征点具有旋转不变性;对获得的高维空间描述算子进行归一化处理,获得该特征点的描述向量,这将使得特征点具有了对比不变性。通过具有旋转不变性、对比不变性的特征点计算单应矩阵,有效提高了计算得到单应矩阵的准确性。
S103:对至少一张待拼接图像和基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对。
在本申请的一个实施例中,对于获取的待拼接图像和基础拼接图像中每一张图像的每一特征点,计算其他图像的特征点的描述算子与该特征点的描述算子间的欧式距离,其中,其他图像为获取的待拼接图像和基础拼接图像中除该图像外的图像;将该特征点与欧式距离最小的描述算子对应的特征点构成匹配特征点对。
例如,获取到基础拼接图像A和待拼接图像B、C,其中,图像A中提取的特征点有p01、p02,图像B中提取的特征点有p03、p04,图像C中提取的特征点有p05。
图像A的特征点与图像B的特征点匹配:计算p01的描述算子与p03的描述算子间的欧式距离d1;计算p01的描述算子与p04的描述算子间的欧式距离d2;计算p02的描述算子与p03的描述算子间的欧式距离d3;计算p02的描述算子与p04的描述算子间的欧式距离d4。
图像A的特征点与图像C的特征点匹配:计算p01的描述算子与图像C的p05的描述算子间的欧式距离d5;计算p02的描述算子与图像C的p05的描述算子间的欧式距离d6。
图像B的特征点与图像C的特征点匹配:计算p03的描述算子与图像C的p05的描述算子间的欧式距离d7;计算p04的描述算子与图像C的p05的描述算子间的欧式距离d8。
针对图像A中的特征点p01,确定的欧式距离有:d1、d2、d5。若d1<d2<d5,d1对应p03,则p01与p03构成匹配特征点对。
针对图像A中的特征点p02,确定的欧式距离有:d3、d4、d6。若d4<d3<d6,d4对应p04,则p02与p04构成匹配特征点对。
针对图像B中的特征点p03,确定的欧式距离有:d1、d3、d5。若d1<d3<d5,d1对应p01,则p03与p01构成匹配特征点对。
针对图像B中的特征点p04,确定的欧式距离有:d2、d4、d6。若d4<d2<d6,d2对应p02,则p04与p02构成匹配特征点对。
针对图像C中的特征点p05,确定的欧式距离有:d5、d6、d7、d8。若d7<d5<d6<d8,d7对应p03,则p05与p03构成匹配特征点对。
在本申请的一个实施例中,对于一个特征点,在确定了与该特征点的描述算子间欧式距离最小的描述算子后,可以判断该最小的欧式距离是否小于距离阈值;若小于,则将该特征点与该最小的欧式距离的描述算子对应的特征点构成匹配特征点对;否则,则确定该特征点不能与其他特征点构成匹配特征点对,在后续计算单应矩阵,拼接图像时,可以不考虑该特征点。
在本申请的一个实施例中,可以采用k-dtree(k-dimensional tree,k维空间树)对计算欧式距离的算法进行加速;还可以采用RANSAC(Random Sample Consensus,随机样本匹配)算法和双选匹配原则对算法进行优化筛选,以提高确定匹配特征点对的准确度。
S104:根据确定的多个匹配特征点对中特征点的坐标,计算每一待拼接图像针对基础拼接图像的单应矩阵。
在本申请的实施例中,单应矩阵为:
若一个匹配特征点对中两个特征点的坐标分别为[x,y]和[x',y'],表示单应矩阵的第i列;
可以根据公式
和
构建正定方程,如下
根据矩阵A,构建最优单应矩阵的求取方程:
公式(6)中,hi表示第i个匹配特征点对对应的单应矩阵;对矩阵A进行SVD(Singular Value Decomposition,奇异值分解),可以得到:
公式(7)中C最小特征值λ对应的特征向量vmin即为最优的单应矩阵H。
在本申请的实施例中,假定h33为1,这样,通过4个匹配特征点对,即通过8个特征点构建8个正定方程,就可以确定出匹配特征点对中特征点所在两张图像的单应矩阵。
在本申请的实施例中,若一个待拼接图像中的特征点与基础拼接图像中的特征点构成匹配特征点对,则可以直接确定出该待拼接图像针对基础拼接图像的单应矩阵;
若一个待拼接图像中的特征点与另一个待拼接图像中的特征点构成匹配特征点对,而另一个待拼接图像中的特征点又与基础拼接图像中的特征点构成匹配特征点对。例如,待拼接图像有X、Y,基础拼接图像有Z,待拼接图像X中的特征点与待拼接图像Y中的特征点构成匹配特征点对,待拼接图像Y中的特征点与基础拼接图像Z中的特征点构成匹配特征点对,则需要计算从待拼接图像X针对待拼接图像Y的单应矩阵1,并计算出待拼接图像Y针对基础拼接图像Z的单应矩阵2;结合单应矩阵1和单应矩阵2,计算出待拼接图像X针对基础拼接图像Z的单应矩阵3。
S105:根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域。
在本申请的一个实施例中,对于每一待拼接图像,采用以下步骤确定该待拼接图像的重叠区域:
S1051:确定该待拼接图像的四个顶点在基础拼接图像所在平面上的横坐标和纵坐标。
S1052:确定匹配图像的四个顶点在基础拼接图像所在平面上的横坐标和纵坐标。
这里,匹配图像为与该待拼接图像的特征点组成匹配特征点对的特征点所在的图像。例如,待拼接图像B中的特征点与基础拼接图像A中的特征点组成了匹配特征点对,则基础拼接图像A为待拼接图像B的匹配图像,待拼接图像B为基础拼接图像A的匹配图像。
S1053:确定第一横坐标、第二横坐标、第一纵坐标和第二纵坐标。
其中,第一横坐标为该待拼接图像四个顶点的最小横坐标和匹配图像四个顶点的最小横坐标中的最大值;第二横坐标为该待拼接图像四个顶点的最大横坐标和匹配图像四个顶点的最大横坐标中的最小值;第一纵坐标为该待拼接图像四个顶点的最小纵坐标和匹配图像四个顶点的最小纵坐标中的最大值;第二纵坐标为该待拼接图像四个顶点的最大纵坐标和匹配图像四个顶点的最大纵坐标中的最小值。
S1054:由第一横坐标、第二横坐标、第一纵坐标和第二纵坐标,确定该待拼接图像与匹配图像的重叠区域。
上述该待拼接图像与匹配图像的重叠区域即为该待拼接图像的重叠区域。
例如,获取到A、B、C这3张图像,以图像A为基础拼接图像,B和C为待拼接图像,图A为图像B的匹配图像、图像B为图像C的匹配图像;
图像A的宽度为W1,高度为L1,图像A的四个顶点的坐标为t11(0,0)、t12(0,L1)、t13(W1,0)、t14(W1,L1);图像A的最小横坐标为0,最大横坐标为W1,最小纵坐标为0,最大纵坐标为L1;
对于图像B,根据求得的图像B的单应矩阵,将图像B投影至图像A的平面上时,图像B的四个顶点的坐标为t21(x21,y21)、t22(x22,y22)、t23(x23,y23)、t24(x24,y24);
xmin 1=min(x21,x22,x23,x24);
xmax 1=max(x21,x22,x23,x24);
ymin 1=min(y21,y22,y23,y24);
ymax 1=max(y21,y22,y23,y24);
根据xmin 1、xmax 1、ymin 1、ymax 1,以及图像A的最小横坐标为0,最大横坐标为W1,最小纵坐标为0,最大纵坐标为L1,确定图像B的重叠区域的左下角坐标(umin 1,vmin 1)和右上角坐标(umax 1,vmax 1):
umin 1=max(xmin 1,0);
vmin 1=max(ymin 1,0);
umax 1=max(xmax 1,W1);
vmax 1=max(ymax 1,L1);
由左下角坐标(umin 1,vmin 1)和右上角坐标(umax 1,vmax 1)确定出的矩形区域可以作为图像B的重叠区域。
对于图像C,根据求得的图像C的单应矩阵,将图像C投影至图像A的平面上时,图像C的四个顶点的坐标为t31(x31,y31)、t32(x32,y32)、t33(x33,y33)、t34(x34,y34);
xmin 2=min(x31,x32,x33,x34);
xmax 2=max(x31,x32,x33,x34);
ymin 2=min(y31,y32,y33,y34);
ymax 2=max(y31,y32,y33,y34);
根据xmin 2、xmax 2、ymin 2、ymax 2、以及上述xmin 1、xmax 1、ymin 1、ymax 1,确定图像C的重叠区域的左下角坐标(umin 2,vmin 2)和右上角坐标(umax 2,vmax 2):
umin 2=max(xmin 2,xmin 1);
vmin 2=max(ymin 2,ymin 1);
umax 2=max(xmax 2,xmax 1);
vmax 2=max(ymax 2,ymax 1);
由左下角坐标(umin 2,vmin 2)和右上角坐标(umax 2,vmax 2)确定出的矩形区域可以作为图像C的重叠区域。
本申请实施例中,还可以采用其他方式确定待拼接图像的重叠区域。例如,获取待拼接图像中匹配特征点在基础拼接图像所在平面上的最大横坐标、最小横坐标、最大纵坐标和最小纵坐标,将获取的4个坐标确定出的矩形区域可以作为该待拼接图像的重叠区域,本申请实施例对此不进行限定。这里,匹配特征点为与匹配图像中的特征点组成匹配特征点对中的特征点。
在确定了一待拼接图像的重叠区域后,该待拼接图像中除重叠区域外的区域可以确定为该待拼接图像的非重叠区域。
S106:根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立。
在本申请的一个实施例中,可以通过以下公式确定匹配特征点对的重投影误差:
公式(8)中,△h为匹配特征点对的单应矩阵误差,这里也可以称为匹配特征点对间的重投影误差;为匹配特征点对中两个特征点的齐次坐标,分别为对于公式(8)中H,若未对图像建立网格,该H为初始计算得到的单应矩阵,确定的重投影误差为:该图像中的特征点所在匹配特征点对的重投影误差;若对图像建立了网格,该H为一个网格的单应矩阵,确定的重投影误差为:该网格中的特征点所在匹配特征点对的重投影误差。
通过公式(8)可以计算得到所有匹配特征点对间的重投影误差,得到范数||△h||1。这里,范数||△h||1是有符号的:
对于每一待拼接图像,在确定了该待拼接图像中特征点所在的匹配特征点对的重投影误差,即该待拼接图像对应的匹配特征点对的重投影误差,为便于描述以下称为该待拼接图像对应的重投影误差,从该待拼接图像对应的所有重投影误差中,获取最大重投影误差△hmax和最小重投影误差△hmin,此时,重投影误差区域为△hmin-△hmax,根据△hmax和△hmin,对该待拼接图像的重叠区域进行第一网格建立。
一种实现方式中,可以根据根据△hmax和△hmin,通过以下公式,对该待拼接图像的重叠区域进行第一网格建立:
其中,△hi为该待拼接图像的第i个第一网格内特征点所在匹配特征点对的重投影误差,N为正整数;i的取值范围为0~N-1。
在特征分布不均匀时通常会导致图像拼接效果失真的问题,尤其是对于图像采集装置的视场角较大时,待拼接图像的非重叠区域的边缘图像区域与匹配特征点中的特征点的距离过大,将导致扭曲现象。
根据公式(10)将重投影误差区域划分为N个区间,每个区间中的特征点建立在同一第一网格中,这样,如图2所示的待拼接图像,图2中白色区域为重叠区域,在白色区域建立的网格为第一网格,灰色区域为非重叠区域,依据公式(10)对重叠区域建立了第一网格,第一网格的大小可能不等,但每一第一网格内特征点所在匹配特征点对的重投影误差在一定范围内,即一个第一网格内特征点的特征相近,对于每一第一网格,保证了该第一网格内特征的均匀,依据该第一网格的单应矩阵拼接图像,可以有效地解决该第一网格内图像拼接的错位和重影的问题。
S107:对于每一待拼接图像的每一第一网格,根据该第一网格内特征点的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵。
在本申请的一个实施例中,对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值,以及确定该第一网格外特征点所在匹配特征点对的权值;对于每一待拼接图像的每一第一网格,根据该第一网格内特征点所在匹配特征点对的权值和该第一网格外特征点所在匹配特征点对的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第一网格的单应矩阵。
一种实现方式中,在建立第一网格后,对于每一待拼接图像的每一第一网格内的每一特征点,可以根据该第一网格的权值,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w*为该特征点所在匹配特征点对的权值,M为该第一网格内匹配特征点的个数,γ为该第一网格的权值,γ的取值范围为0~1。
这里,根据实际需要,γ可以通过人为调节控制,以降低较低置信度匹配特征点对单应矩阵求取的影响。匹配特征点为匹配特征点对中的特征点。
对于每一待拼接图像的每一第一网格外的每一特征点,可以根据该第一网格的权值,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w'*为该特征点所在匹配特征点对的权值,M为该第一网格内匹配特征点的个数,t*为该特征点的坐标,ti为该第一网格内第i个匹配特征点的坐标。匹配特征点为匹配特征点对中的特征点。
对于每一待拼接图像的每一第一网格,在确定该第一网格内特征点所在匹配特征点对的权值和该第一网格外特征点所在匹配特征点对的权值之后,根据该第一网格内特征点所在匹配特征点对的权值和该第一网格外特征点所在匹配特征点对的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第一网格的单应矩阵。
如上,对于一待拼接图像的一个第一网格,根据公式(11)(12)对公式(5)中的矩阵A进行迭代:
基于公式(13)及公式(6),可以确定该第一网格的单应矩阵为:
对公式(14)中的矩阵WA进行SVD,可以得到该第一网格的单应矩阵。
S108:根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接基础拼接图像和至少一张待拼接图像。
在本申请的一个实施例中,对于每一待拼接图像,依据每一第一网格的单应矩阵将待拼接图像的重叠区域投影至基础拼接图像所在的平面,依据待拼接图像的单应矩阵将该待拼接图像的非重叠区域投影至基础拼接图像所在的平面,利用图割算法查找图像的最优拼接缝,之后在最优拼接缝两侧进行扩边,对拼接图像建立高斯卷积图像,利用不同卷积核的卷积图像进行下采样,进行做差建立拉普拉斯图像,并对各层建立相应的权重表,并根据权重表进行图像的融合,最后对融合后的图像进行恢复,生成原始分辨率下的融合图像。
本申请实施例中,每一第一网格内的特征分布较为均匀,依据每一第一网格的单应矩阵拼接基础拼接图像和至少一张待拼接图像,避免了重叠区域中特征分布不均匀的图像采用单一单应矩阵的问题,根据每一第一网格的单应矩阵,拼接基础拼接图像和待拼接图像,在重叠区域中特征分布不均匀的情况下,有效解决了图像拼接的错位和重影的问题。
实际应用中,若待拼接图像的非重叠区域与重叠区域中的匹配特征点较远,则在非重叠区域的位置会发生较为严重的扭曲与变形,原因如下:
1)非重叠区域与匹配特征点距离较远,使得权值过大而造成拼接图像折痕和扭曲;
2)特征点分布不均匀,一般近景的特征点多,远景的特征点少,这造成非重叠区域的权值过度性不均匀,因此在远离匹配特征点,尤其是在边缘处会发生折痕的现象,某些特定场景还会产生黑洞。
在本申请的一个实施例中,为了降低非重叠区域中出现扭曲与变形的现象,参考图3,图3为本申请实施例提供的图像拼接方法的第二种流程示意图,该方法包括:
S301:获取基础拼接图像和至少一张待拼接图像。
S302:提取基础拼接图像和至少一张待拼接图像的特征点。
S303:对至少一张待拼接图像和基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对。
S304:根据确定的多个匹配特征点对中特征点的坐标,计算每一待拼接图像针对基础拼接图像的单应矩阵。
S305:根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域。
S306:根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立。
S307:对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵。
步骤S301-S307与步骤S101-S107相同,此处不再赘述。
S308:根据预设参数,对每一待拼接图像的非重叠区域进行第二网格建立。
这里,非重叠区域为每一待拼接图像中除重叠区域外的区域。示例性地,在本发明实施例中,每一第二网格的大小可以不等,也可以大小相等。
对于一张待拼接图像,如果每一第二网格的大小相同,依据每一第二网格的单应矩阵拼接基础拼接图像和至少一张待拼接图像,可以保证图像拼接的非重叠区域的平滑过渡,降低非重叠区域中出现扭曲与变形的现象。
上述预设参数可以为建立的网格数量,也可以为网格的大小,本申请实施例对此不进行限定。
S309:对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵。
在本申请的一个实施例中,对于每一待拼接图像的每一第二网格,可以根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值。对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第二网格的单应矩阵。
一种实现方式中,对于每一待拼接图像的每一第二网格,可以根据该第二网格相邻的其他第二网格的权值比例,通过以下公式,确定该第二网格相邻的其他第二网格的权值:
其中,wj为该第二网格相邻的第j个其他第二网格的权值,Qi为该第二网格相邻的第i个其他第二网格的权值比例,S为与该第二网格相邻的其他第二网格的总个数。
在本申请实施例中,第二网格的权值比例可以由人为的调节控制。例如,设置竖直方向的第二网格的权值比例大于水平方向的第二网格的权值比例,如图4所示的权值比例分配图,图4中不同方向分别了不同的权值比例,其中,竖直方向的权值比例最大,水平方向的权值比例最小,这可以有效的满足人眼对竖直方向的错位要敏感于水平方向的错位的需求。
对于每一待拼接图像的每一第二网格,在确定该第二网格相邻的其他第二网格的权值之后,根据该第二网格相邻的其他第二网格的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第二网格的单应矩阵:
公式(16)中,H*为该第二网格的单应矩阵,wj为该第二网格相邻的第j个第二网格的权值,hj为该第二网格相邻的第j个第二网格的单应矩阵。
例如,如图5所示的待拼接图像,该待拼接图像中网格1、2、3为重叠区域的网格,网格4、5、6、7、8、9为非重叠区域的网格;当前根据公式(2)-(14)确定了网格1的单应矩阵h1、网格2的单应矩阵h2、网格3的单应矩阵h3的单应矩阵。
对于网格4,相邻的已知单应矩阵的网格有网格1、2,结合图4所示的权值比例分配图,可以得知,对于网格4来说,网格1的权值比例为1,网格2的权值比例为2,此时,可以确定网格1的权值w41为:1/(1+2)=1/3;可以确定网格2的权值w42为:2/(1+2)=2/3;网格4的单应矩阵h4为:
对于网格5,相邻的已知单应矩阵的网格有网格1、2和网格4,结合图4所示的权值比例分配图,可以得知,对于网格5来说,网格1的权值比例为2,网格2的权值比例为1,网格4的权值比例为4,此时,可以确定网格1的权值w51为:2/(2+1+4)=2/7;可以确定网格2的权值w52为:1/(2+1+4)=1/7;可以确定网格4的权值w53为:4/(2+1+4)=4/7;网格5的单应矩阵h5为:
依次类推,分别可以求得网格6、7、8、9的单应矩阵。
S310:根据每一第一网格的单应矩阵和每一第二网格的单应矩阵,拼接基础拼接图像和至少一张待拼接图像。
在本申请的一个实施例中,对于每一待拼接图像,可以依据每一第一网格的单应矩阵将待拼接图像的重叠区域投影至基础拼接图像所在的平面,依据每一第二网格的单应矩阵将待拼接图像的非重叠区域投影至基础拼接图像所在的平面,利用图割算法查找图像的最优拼接缝,之后在最优拼接缝两侧进行扩边,对拼接图像建立高斯卷积图像,利用不同卷积核的卷积图像进行下采样,进行做差建立拉普拉斯图像,并对各层建立相应的权重表,并根据权重表进行图像的融合,最后对融合后的图像进行恢复,生成原始分辨率下的融合图像。
应用本申请实施例,在确定每一待拼接图像针对基础拼接图像的单应矩阵后,根据匹配特征点对间的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立,重投影误差为体现特征的一个重要参数,根据重投影误差可以将特征相近的特征点建立在一个第一网格中,进而,对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵,避免了特征分布不均匀的图像采用单一单应矩阵的问题,根据每一第一网格的单应矩阵,拼接基础拼接图像和待拼接图像,在图像中特征分布不均匀的情况下,有效解决了图像拼接的错位和重影的问题。
与图像拼接方法实施例对应,本申请实施例还提供了一种图像拼接装置。参考图6,图6为本申请实施例提供的图像拼接装置的一种结构示意图,所述装置包括:
获取单元601,用于获取基础拼接图像和至少一张待拼接图像;
提取单元602,用于提取基础拼接图像和至少一张待拼接图像的特征点;
匹配单元603,用于对至少一张待拼接图像和基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对;
计算单元604,用于根据确定的多个匹配特征点对中特征点的坐标,计算每一待拼接图像针对基础拼接图像的单应矩阵;
确定单元605,用于根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域;
建立单元606,用于根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立;
调整单元607,用于对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵;
拼接单元608,用于根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接基础拼接图像和至少一张待拼接图像。
在本申请的一个实施例中,提取单元602,具体可以用于:
依据SIFT算法提取至少一张待拼接图像和基础拼接图像中的特征点。
在本申请的一个实施例中,匹配单元603,具体可以用于:
对于至少一张待拼接图像和基础拼接图像中每一张图像的每一特征点,计算其他图像的特征点的描述算子与该特征点的描述算子间的欧式距离;其他图像为至少一张待拼接图像和基础拼接图像中除该图像外的图像;将该特征点与欧式距离最小的描述算子对应的特征点构成匹配特征点对。
在本申请的一个实施例中,上述图像拼接装置还可以包括:
获得单元,用于对于提取的每一特征点,利用该特征点邻域像素的梯度信息建立360度梯度直方图,获得该特征点在空间上的描述算子;
归一化单元,用于对于提取的每一特征点,归一化该特征点的描述算子。
在本申请的一个实施例中,确定单元605,具体可以用于对于每一待拼接图像,确定该待拼接图像的重叠区域,参考图7所示的图像拼接装置的第二种结构示意图,基于图6,该装置中,确定单元605可以包括:
第一确定子单元6051,用于确定该待拼接图像的四个顶点在基础拼接图像所在平面上的横坐标和纵坐标;
第二确定子单元6052,用于确定匹配图像的四个顶点在基础拼接图像所在平面上的横坐标和纵坐标;匹配图像为与该待拼接图像的特征点组成匹配特征点对的特征点所在的图像;
第三确定子单元6053,用于确定第一横坐标、第二横坐标、第一纵坐标和第二纵坐标;第一横坐标为该待拼接图像四个顶点的最小横坐标和匹配图像四个顶点的最小横坐标中的最大值;第二横坐标为该待拼接图像四个顶点的最大横坐标和匹配图像四个顶点的最大横坐标中的最小值;第一纵坐标为该待拼接图像四个顶点的最小纵坐标和匹配图像四个顶点的最小纵坐标中的最大值;第二纵坐标为该待拼接图像四个顶点的最大纵坐标和匹配图像四个顶点的最大纵坐标中的最小值;
第四确定子单元6054,用于由第一横坐标、第二横坐标、第一纵坐标和第二纵坐标,确定该待拼接图像与匹配图像的重叠区域。
在本申请的一个实施例中,参考图8所示的图像拼接装置的第三种结构示意图,基于图6,该装置中,建立单元606可以包括:
获取子单元6061,用于从每一待拼接图像对应的所有匹配特征点对的重投影误差中,获取最大重投影误差和最小重投影误差;
第一建立子单元6062,用于根据最大重投影误差和最小重投影误差,对每一待拼接图像的重叠区域进行第一网格建立。
在本申请的一个实施例中,第一建立子单元,具体可以用于:
对于每一待拼接图像,根据以下公式,对该待拼接图像的重叠区域进行第一网格建立:
其中,△hi为该待拼接图像的第i个第一网格内特征点所在匹配特征点对的重投影误差,△hmin为获取的该待拼接图像对应的最小重投影误差,△hmax为获取的该待拼接图像对应的最大重投影误差,N为正整数;i的取值范围为0~N-1。
在本申请的一个实施例中,参考图9所示的图像拼接装置的第四种结构示意图,基于图6,调整单元607可以包括:
第五确定子单元6071,用于对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值;
第六确定子单元6072,用于对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格外特征点所在匹配特征点对的权值;
第一调整子单元6073,用于对于每一待拼接图像的每一第一网格,根据该第一网格内特征点所在匹配特征点对的权值和该第一网格外特征点所在匹配特征点对的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第一网格的单应矩阵。
在本申请的一个实施例中,第五确定子单元6071,具体可以用于:
对于每一待拼接图像的每一第一网格内的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w*为该特征点所在匹配特征点对的权值,γ为该第一网格的权值,γ的取值范围为0~1,M为该第一网格内包括在匹配特征点对中的特征点的个数。
在本申请的一个实施例中,第六确定子单元6072,具体可以用于:
对于每一待拼接图像的每一第一网格外的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w'*为该特征点所在匹配特征点对的权值,t*为该特征点的坐标,ti为该第一网格内第i个包括在匹配特征点对中特征点的坐标。
在本申请的一个实施例中,参考图10所示的图像拼接装置的第五种结构示意图,基于图6,拼接单元608可以包括:
第二建立子单元6081,用于根据预设参数,对每一待拼接图像的非重叠区域进行第二网格建立;非重叠区域为每一待拼接图像中除重叠区域外的区域;
第二调整子单元6082,用于对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵;
拼接子单元6083,用于根据每一第一网格的单应矩阵和每一第二网格的单应矩阵,拼接基础拼接图像和至少一张待拼接图像。
在本申请的一个实施例中,第二调整子单元6082,具体可以用于:
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值;
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第二网格的单应矩阵。
在本申请的一个实施例中,第二调整子单元6082,具体可以用于:
对于每一待拼接图像的每一第二网格,根据以下公式,确定该第二网格相邻的其他第二网格的权值:
其中,wj为该第二网格相邻的第j个其他第二网格的权值,Qj为该第二网格相邻的第j个其他第二网格的权值比例,Qi为该第二网格相邻的第i个其他第二网格的权值比例,S为与该第二网格相邻的其他第二网格的总个数。
在本申请的一个实施例中,每一第二网络的大小相等。
应用本申请实施例,在确定每一待拼接图像针对基础拼接图像的单应矩阵后,根据匹配特征点对间的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立,重投影误差为体现特征的一个重要参数,根据重投影误差可以将特征相近的特征点建立在一个第一网格中,进而,对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵,避免了特征分布不均匀的图像采用单一单应矩阵的问题,根据每一第一网格的单应矩阵,拼接基础拼接图像和待拼接图像,在图像中特征分布不均匀的情况下,有效解决了图像拼接的错位和重影的问题。
与图像拼接方法实施例对应,本申请实施例还提供了一种电子设备。该电子设备包括处理器和存储器;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的计算机程序,实现上述图像拼接方法。
如图11所示电子设备,包括处理器1101和存储器1103。另外,电子设备还可以通信接口1102和通信总线1104,其中,处理器1101、通信接口1102、存储器1103通过通信总线1104完成相互间的通信;
存储器1103,用于存放计算机程序;
处理器1101,用于执行存储器上所存放的计算机程序时,实现图像拼接方法。其中,图像拼接方法包括:
获取基础拼接图像和至少一张待拼接图像;
提取基础拼接图像和至少一张待拼接图像的特征点;
对至少一张待拼接图像和基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对;
根据确定的多个匹配特征点对中特征点的坐标,计算每一待拼接图像针对基础拼接图像的单应矩阵;
根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域;
根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立;
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵;
根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接基础拼接图像和至少一张待拼接图像。
在本申请的一个实施例中,提取基础拼接图像和至少一张待拼接图像的特征点的步骤,可以包括:
依据SIFT算法提取至少一张待拼接图像和基础拼接图像中的特征点。
在本申请的一个实施例中,对至少一张待拼接图像和基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对的步骤,可以包括:
对于至少一张待拼接图像和基础拼接图像中每一张图像的每一特征点,计算其他图像的特征点的描述算子与该特征点的描述算子间的欧式距离;其他图像为至少一张待拼接图像和基础拼接图像中除该图像外的图像;将该特征点与欧式距离最小的描述算子对应的特征点构成匹配特征点对。
在本申请的一个实施例中,在对至少一张待拼接图像和基础拼接图像中每两张图像的特征点进行匹配之前,上述图像拼接方法还可以包括:
对于提取的每一特征点,利用该特征点邻域像素的梯度信息建立360度梯度直方图,获得该特征点在空间上的描述算子;归一化该特征点的描述算子。
在本申请的一个实施例中,根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域的步骤,可以包括:
对于每一待拼接图像,采用以下步骤确定该待拼接图像的重叠区域:
确定该待拼接图像的四个顶点在基础拼接图像所在平面上的横坐标和纵坐标;
确定匹配图像的四个顶点在基础拼接图像所在平面上的横坐标和纵坐标;匹配图像为与该待拼接图像的特征点组成匹配特征点对的特征点所在的图像;
确定第一横坐标、第二横坐标、第一纵坐标和第二纵坐标;第一横坐标为该待拼接图像四个顶点的最小横坐标和匹配图像四个顶点的最小横坐标中的最大值;第二横坐标为该待拼接图像四个顶点的最大横坐标和匹配图像四个顶点的最大横坐标中的最小值;第一纵坐标为该待拼接图像四个顶点的最小纵坐标和匹配图像四个顶点的最小纵坐标中的最大值;第二纵坐标为该待拼接图像四个顶点的最大纵坐标和匹配图像四个顶点的最大纵坐标中的最小值;
由第一横坐标、第二横坐标、第一纵坐标和第二纵坐标,确定该待拼接图像与匹配图像的重叠区域。
在本申请的一个实施例中,根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立的步骤,可以包括:
从每一待拼接图像对应的所有匹配特征点对的重投影误差中,获取最大重投影误差和最小重投影误差;
根据最大重投影误差和最小重投影误差,对每一待拼接图像的重叠区域进行第一网格建立。
在本申请的一个实施例中,根据最大重投影误差和最小重投影误差,对每一待拼接图像的重叠区域进行第一网格建立的步骤,可以包括:
对于每一待拼接图像,根据以下公式,对该待拼接图像的重叠区域进行第一网格建立:
其中,△hi为该待拼接图像的第i个第一网格内特征点所在匹配特征点对的重投影误差,△hmin为获取的该待拼接图像对应的最小重投影误差,△hmax为获取的该待拼接图像对应的最大重投影误差,N为正整数;i的取值范围为0~N-1。
在本申请的一个实施例中,对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵的步骤,可以包括:
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值;
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格外特征点所在匹配特征点对的权值;
对于每一待拼接图像的每一第一网格,根据该第一网格内特征点所在匹配特征点对的权值和该第一网格外特征点所在匹配特征点对的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第一网格的单应矩阵。
在本申请的一个实施例中,根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值的步骤,可以包括:
对于该第一网格内的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w*为该特征点所在匹配特征点对的权值,γ为该第一网格的权值,γ的取值范围为0~1,M为该第一网格内包括在匹配特征点对中的特征点的个数。
在本申请的一个实施例中,根据该第一网格的权值,确定该第一网格外特征点所在匹配特征点对的权值的步骤,可以包括:
对于该第一网格外的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w'*为该特征点所在匹配特征点对的权值,t*为该特征点的坐标,ti为该第一网格内第i个包括在匹配特征点对中特征点的坐标。
在本申请的一个实施例中,根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接基础拼接图像和至少一张待拼接图像的步骤,可以包括:
根据预设参数,对每一待拼接图像的非重叠区域进行第二网格建立;非重叠区域为每一待拼接图像中除重叠区域外的区域;
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵;
根据每一第一网格的单应矩阵和每一第二网格的单应矩阵,拼接基础拼接图像和至少一张待拼接图像。
在本申请的一个实施例中,对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵的步骤,可以包括:
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值;
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第二网格的单应矩阵。
在本申请的一个实施例中,根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值的步骤,可以包括:
对于每一待拼接图像的每一第二网格,根据以下公式,确定该第二网格相邻的其他第二网格的权值:
其中,wj为该第二网格相邻的第j个其他第二网格的权值,Qj为该第二网格相邻的第j个其他第二网格的权值比例,Qi为该第二网格相邻的第i个其他第二网格的权值比例,S为与该第二网格相邻的其他第二网格的总个数。
在本申请的一个实施例中,每一第二网络的大小相等。
应用本申请实施例,在确定每一待拼接图像针对基础拼接图像的单应矩阵后,根据匹配特征点对间的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立,重投影误差为体现特征的一个重要参数,根据重投影误差可以将特征相近的特征点建立在一个第一网格中,进而,对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵,避免了特征分布不均匀的图像采用单一单应矩阵的问题,根据每一第一网格的单应矩阵,拼接基础拼接图像和待拼接图像,在图像中特征分布不均匀的情况下,有效解决了图像拼接的错位和重影的问题。
上述通信总线1104可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(Extended Industry Standard Architecture,扩展工业标准结构)总线等。该通信总线1104可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口1102用于上述电子设备与其他设备之间的通信。
存储器1103可以包括RAM(Random Access Memory,随机存取存储器),也可以包括NVM(Non-Volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,存储器1103还可以是至少一个位于远离前述处理器的存储装置。
处理器1104可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processing,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例还提供了一种机器可读存储介质,机器可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现图像拼接方法。其中图像拼接方法包括:
获取基础拼接图像和至少一张待拼接图像;
提取基础拼接图像和至少一张待拼接图像的特征点;
对至少一张待拼接图像和基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对;
根据确定的多个匹配特征点对中特征点的坐标,计算每一待拼接图像针对基础拼接图像的单应矩阵;
根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域;
根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立;
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵;
根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接基础拼接图像和至少一张待拼接图像。
在本申请的一个实施例中,提取基础拼接图像和至少一张待拼接图像的特征点的步骤,可以包括:
依据SIFT算法提取至少一张待拼接图像和基础拼接图像中的特征点。
在本申请的一个实施例中,对至少一张待拼接图像和基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对的步骤,可以包括:
对于至少一张待拼接图像和基础拼接图像中每一张图像的每一特征点,计算其他图像的特征点的描述算子与该特征点的描述算子间的欧式距离;其他图像为至少一张待拼接图像和基础拼接图像中除该图像外的图像;将该特征点与欧式距离最小的描述算子对应的特征点构成匹配特征点对。
在本申请的一个实施例中,在对至少一张待拼接图像和基础拼接图像中每两张图像的特征点进行匹配之前,上述图像拼接方法还可以包括:
对于提取的每一特征点,利用该特征点邻域像素的梯度信息建立360度梯度直方图,获得该特征点在空间上的描述算子;归一化该特征点的描述算子。
在本申请的一个实施例中,根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域的步骤,可以包括:
对于每一待拼接图像,采用以下步骤确定该待拼接图像的重叠区域:
确定该待拼接图像的四个顶点在基础拼接图像所在平面上的横坐标和纵坐标;
确定匹配图像的四个顶点在基础拼接图像所在平面上的横坐标和纵坐标;匹配图像为与该待拼接图像的特征点组成匹配特征点对的特征点所在的图像;
确定第一横坐标、第二横坐标、第一纵坐标和第二纵坐标;第一横坐标为该待拼接图像四个顶点的最小横坐标和匹配图像四个顶点的最小横坐标中的最大值;第二横坐标为该待拼接图像四个顶点的最大横坐标和匹配图像四个顶点的最大横坐标中的最小值;第一纵坐标为该待拼接图像四个顶点的最小纵坐标和匹配图像四个顶点的最小纵坐标中的最大值;第二纵坐标为该待拼接图像四个顶点的最大纵坐标和匹配图像四个顶点的最大纵坐标中的最小值;
由第一横坐标、第二横坐标、第一纵坐标和第二纵坐标,确定该待拼接图像与匹配图像的重叠区域。
在本申请的一个实施例中,根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立的步骤,可以包括:
从每一待拼接图像对应的所有匹配特征点对的重投影误差中,获取最大重投影误差和最小重投影误差;
根据最大重投影误差和最小重投影误差,对每一待拼接图像的重叠区域进行第一网格建立。
在本申请的一个实施例中,根据最大重投影误差和最小重投影误差,对每一待拼接图像的重叠区域进行第一网格建立的步骤,可以包括:
对于每一待拼接图像,根据以下公式,对该待拼接图像的重叠区域进行第一网格建立:
其中,△hi为该待拼接图像的第i个第一网格内特征点所在匹配特征点对的重投影误差,△hmin为获取的该待拼接图像对应的最小重投影误差,△hmax为获取的该待拼接图像对应的最大重投影误差,N为正整数;i的取值范围为0~N-1。
在本申请的一个实施例中,对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵的步骤,可以包括:
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值;
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格外特征点所在匹配特征点对的权值;
对于每一待拼接图像的每一第一网格,根据该第一网格内特征点所在匹配特征点对的权值和该第一网格外特征点所在匹配特征点对的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第一网格的单应矩阵。
在本申请的一个实施例中,根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值的步骤,可以包括:
对于该第一网格内的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w*为该特征点所在匹配特征点对的权值,γ为该第一网格的权值,γ的取值范围为0~1,M为该第一网格内包括在匹配特征点对中的特征点的个数。
在本申请的一个实施例中,根据该第一网格的权值,确定该第一网格外特征点所在匹配特征点对的权值的步骤,可以包括:
对于该第一网格外的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w'*为该特征点所在匹配特征点对的权值,t*为该特征点的坐标,ti为该第一网格内第i个包括在匹配特征点对中特征点的坐标。
在本申请的一个实施例中,根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接基础拼接图像和至少一张待拼接图像的步骤,可以包括:
根据预设参数,对每一待拼接图像的非重叠区域进行第二网格建立;非重叠区域为每一待拼接图像中除重叠区域外的区域;
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵;
根据每一第一网格的单应矩阵和每一第二网格的单应矩阵,拼接基础拼接图像和至少一张待拼接图像。
在本申请的一个实施例中,对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵的步骤,可以包括:
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值;
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第二网格的单应矩阵。
在本申请的一个实施例中,根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值的步骤,可以包括:
对于每一待拼接图像的每一第二网格,根据以下公式,确定该第二网格相邻的其他第二网格的权值:
其中,wj为该第二网格相邻的第j个其他第二网格的权值,Qj为该第二网格相邻的第j个其他第二网格的权值比例,Qi为该第二网格相邻的第i个其他第二网格的权值比例,S为与该第二网格相邻的其他第二网格的总个数。
在本申请的一个实施例中,每一第二网络的大小相等。
应用本申请实施例,在确定每一待拼接图像针对基础拼接图像的单应矩阵后,根据匹配特征点对间的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立,重投影误差为体现特征的一个重要参数,根据重投影误差可以将特征相近的特征点建立在一个第一网格中,进而,对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵,避免了特征分布不均匀的图像采用单一单应矩阵的问题,根据每一第一网格的单应矩阵,拼接基础拼接图像和待拼接图像,在图像中特征分布不均匀的情况下,有效解决了图像拼接的错位和重影的问题。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于图像拼接装置、电子设备、机器可读存储介质实施例而言,由于其基本相似于图像拼接方法实施例,所以描述的比较简单,相关之处参见图1-图5所示的图像拼接方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
Claims (29)
1.一种图像拼接方法,其特征在于,所述方法包括:
获取基础拼接图像和至少一张待拼接图像;
提取所述基础拼接图像和所述至少一张待拼接图像的特征点;
对所述至少一张待拼接图像和所述基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对;
根据确定的多个匹配特征点对中特征点的坐标,计算每一待拼接图像针对所述基础拼接图像的单应矩阵;
根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域;
根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立;
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵;
根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接所述基础拼接图像和所述至少一张待拼接图像。
2.根据权利要求1所述的方法,其特征在于,所述提取所述基础拼接图像和所述至少一张待拼接图像的特征点的步骤,包括:
依据尺度不变特征变换SIFT算法提取所述至少一张待拼接图像和所述基础拼接图像中的特征点。
3.根据权利要求1所述的方法,其特征在于,所述对所述至少一张待拼接图像和所述基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对的步骤,包括:
对于所述至少一张待拼接图像和所述基础拼接图像中每一张图像的每一特征点,计算其他图像的特征点的描述算子与该特征点的描述算子间的欧式距离;所述其他图像为所述至少一张待拼接图像和所述基础拼接图像中除该图像外的图像;将该特征点与欧式距离最小的描述算子对应的特征点构成匹配特征点对。
4.根据权利要求3所述的方法,其特征在于,在对所述至少一张待拼接图像和所述基础拼接图像中每两张图像的特征点进行匹配之前,所述方法还包括:
对于提取的每一特征点,利用该特征点邻域像素的梯度信息建立360度梯度直方图,获得该特征点在空间上的描述算子;归一化该特征点的描述算子。
5.根据权利要求1所述的方法,其特征在于,所述根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域的步骤,包括:
对于每一待拼接图像,采用以下步骤确定该待拼接图像的重叠区域:
确定该待拼接图像的四个顶点在所述基础拼接图像所在平面上的横坐标和纵坐标;
确定匹配图像的四个顶点在所述基础拼接图像所在平面上的横坐标和纵坐标;所述匹配图像为与该待拼接图像的特征点组成匹配特征点对的特征点所在的图像;
确定第一横坐标、第二横坐标、第一纵坐标和第二纵坐标;所述第一横坐标为该待拼接图像四个顶点的最小横坐标和所述匹配图像四个顶点的最小横坐标中的最大值;所述第二横坐标为该待拼接图像四个顶点的最大横坐标和所述匹配图像四个顶点的最大横坐标中的最小值;所述第一纵坐标为该待拼接图像四个顶点的最小纵坐标和所述匹配图像四个顶点的最小纵坐标中的最大值;所述第二纵坐标为该待拼接图像四个顶点的最大纵坐标和所述匹配图像四个顶点的最大纵坐标中的最小值;
由所述第一横坐标、所述第二横坐标、所述第一纵坐标和所述第二纵坐标,确定该待拼接图像与所述匹配图像的重叠区域。
6.根据权利要求1所述的方法,其特征在于,所述根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立的步骤,包括:
从每一待拼接图像对应的所有匹配特征点对的重投影误差中,获取最大重投影误差和最小重投影误差;
根据最大重投影误差和最小重投影误差,对每一待拼接图像的重叠区域进行第一网格建立。
7.根据权利要求6所述的方法,其特征在于,所述根据最大重投影误差和最小重投影误差,对每一待拼接图像的重叠区域进行第一网格建立的步骤,包括:
对于每一待拼接图像,根据以下公式,对该待拼接图像的重叠区域进行第一网格建立:
其中,△hi为该待拼接图像的第i个第一网格内特征点所在匹配特征点对的重投影误差,△hmin为获取的该待拼接图像对应的最小重投影误差,△hmax为获取的该待拼接图像对应的最大重投影误差,N为正整数;i的取值范围为0~N-1。
8.根据权利要求1所述的方法,其特征在于,所述对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵的步骤,包括:
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值;
对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格外特征点所在匹配特征点对的权值;
对于每一待拼接图像的每一第一网格,根据该第一网格内特征点所在匹配特征点对的权值和该第一网格外特征点所在匹配特征点对的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第一网格的单应矩阵。
9.根据权利要求8所述的方法,其特征在于,所述根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值的步骤,包括:
对于该第一网格内的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w*为该特征点所在匹配特征点对的权值,γ为该第一网格的权值,γ的取值范围为0~1,M为该第一网格内包括在匹配特征点对中的特征点的个数。
10.根据权利要求8所述的方法,其特征在于,所述根据该第一网格的权值,确定该第一网格外特征点所在匹配特征点对的权值的步骤,包括:
对于该第一网格外的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w'*为该特征点所在匹配特征点对的权值,t*为该特征点的坐标,ti为该第一网格内第i个包括在匹配特征点对中特征点的坐标。
11.根据权利要求1所述的方法,其特征在于,所述根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接所述基础拼接图像和所述至少一张待拼接图像的步骤,包括:
根据预设参数,对每一待拼接图像的非重叠区域进行第二网格建立;所述非重叠区域为每一待拼接图像中除重叠区域外的区域;
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵;
根据每一第一网格的单应矩阵和每一第二网格的单应矩阵,拼接所述基础拼接图像和所述至少一张待拼接图像。
12.根据权利要求11所述的方法,其特征在于,所述对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵的步骤,包括:
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值;
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第二网格的单应矩阵。
13.根据权利要求12所述的方法,其特征在于,所述根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值的步骤,包括:
根据以下公式,确定该第二网格相邻的其他第二网格的权值:
其中,wj为该第二网格相邻的第j个其他第二网格的权值,Qj为该第二网格相邻的第j个其他第二网格的权值比例,Qi为该第二网格相邻的第i个其他第二网格的权值比例,S为与该第二网格相邻的其他第二网格的总个数。
14.根据权利要求11-13任一项所述的方法,其特征在于,每一第二网络的大小相等。
15.一种图像拼接装置,其特征在于,所述装置包括:
获取单元,用于获取基础拼接图像和至少一张待拼接图像;
提取单元,用于提取所述基础拼接图像和所述至少一张待拼接图像的特征点;
匹配单元,用于对所述至少一张待拼接图像和所述基础拼接图像中每两张图像的特征点进行匹配,确定多个匹配特征点对;
计算单元,用于根据确定的多个匹配特征点对中特征点的坐标,计算每一待拼接图像针对所述基础拼接图像的单应矩阵;
确定单元,用于根据每一待拼接图像的单应矩阵,确定每一待拼接图像的重叠区域;
建立单元,用于根据匹配特征点对的重投影误差,对每一待拼接图像的重叠区域进行第一网格建立;
调整单元,用于对于每一待拼接图像的每一第一网格,根据该第一网格的权值,调整该待拼接图像的单应矩阵,获得该第一网格的单应矩阵;
拼接单元,用于根据每一待拼接图像的单应矩阵和每一第一网格的单应矩阵,拼接所述基础拼接图像和所述至少一张待拼接图像。
16.根据权利要求15所述的装置,其特征在于,所述提取单元,具体用于:
依据尺度不变特征变换SIFT算法提取所述至少一张待拼接图像和所述基础拼接图像中的特征点。
17.根据权利要求15所述的装置,其特征在于,所述匹配单元,具体用于:
对于所述至少一张待拼接图像和所述基础拼接图像中每一张图像的每一特征点,计算其他图像的特征点的描述算子与该特征点的描述算子间的欧式距离;所述其他图像为所述至少一张待拼接图像和所述基础拼接图像中除该图像外的图像;将该特征点与欧式距离最小的描述算子对应的特征点构成匹配特征点对。
18.根据权利要求17所述的装置,其特征在于,所述装置还包括:
获得单元,用于对于提取的每一特征点,利用该特征点邻域像素的梯度信息建立360度梯度直方图,获得该特征点在空间上的描述算子;
归一化单元,用于对于提取的每一特征点,归一化该特征点的描述算子。
19.根据权利要求15所述的装置,其特征在于,所述确定单元,具体用于对于每一待拼接图像,确定该待拼接图像的重叠区域,包括:
第一确定子单元,用于确定该待拼接图像的四个顶点在所述基础拼接图像所在平面上的横坐标和纵坐标;
第二确定子单元,用于确定匹配图像的四个顶点在所述基础拼接图像所在平面上的横坐标和纵坐标;所述匹配图像为与该待拼接图像的特征点组成匹配特征点对的特征点所在的图像;
第三确定子单元,用于确定第一横坐标、第二横坐标、第一纵坐标和第二纵坐标;所述第一横坐标为该待拼接图像四个顶点的最小横坐标和所述匹配图像四个顶点的最小横坐标中的最大值;所述第二横坐标为该待拼接图像四个顶点的最大横坐标和所述匹配图像四个顶点的最大横坐标中的最小值;所述第一纵坐标为该待拼接图像四个顶点的最小纵坐标和所述匹配图像四个顶点的最小纵坐标中的最大值;所述第二纵坐标为该待拼接图像四个顶点的最大纵坐标和所述匹配图像四个顶点的最大纵坐标中的最小值;
第四确定子单元,用于由所述第一横坐标、所述第二横坐标、所述第一纵坐标和所述第二纵坐标,确定该待拼接图像与所述匹配图像的重叠区域。
20.根据权利要求15所述的装置,其特征在于,所述建立单元,包括:
获取子单元,用于从每一待拼接图像对应的所有匹配特征点对的重投影误差中,获取最大重投影误差和最小重投影误差;
第一建立子单元,用于根据最大重投影误差和最小重投影误差,对每一待拼接图像的重叠区域进行第一网格建立。
21.根据权利要求20所述的装置,其特征在于,所述第一建立子单元,具体用于:
对于每一待拼接图像,根据以下公式,对该待拼接图像的重叠区域进行第一网格建立:
其中,△hi为该待拼接图像的第i个第一网格内特征点所在匹配特征点对的重投影误差,△hmin为获取的该待拼接图像对应的最小重投影误差,△hmax为获取的该待拼接图像对应的最大重投影误差,N为正整数;i的取值范围为0~N-1。
22.根据权利要求15所述的装置,其特征在于,所述调整单元,包括:
第五确定子单元,用于对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格内特征点所在匹配特征点对的权值;
第六确定子单元,用于对于每一待拼接图像的每一第一网格,根据该第一网格的权值,确定该第一网格外特征点所在匹配特征点对的权值;
第一调整子单元,用于对于每一待拼接图像的每一第一网格,根据该第一网格内特征点所在匹配特征点对的权值和该第一网格外特征点所在匹配特征点对的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第一网格的单应矩阵。
23.根据权利要求22所述的装置,其特征在于,所述第五确定子单元,具体用于:
对于每一待拼接图像的每一第一网格内的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w*为该特征点所在匹配特征点对的权值,γ为该第一网格的权值,γ的取值范围为0~1,M为该第一网格内包括在匹配特征点对中的特征点的个数。
24.根据权利要求22所述的装置,其特征在于,所述第六确定子单元,具体用于:
对于每一待拼接图像的每一第一网格外的每一特征点,通过以下公式确定该特征点所在匹配特征点对的权值:
其中,w'*为该特征点所在匹配特征点对的权值,t*为该特征点的坐标,ti为该第一网格内第i个包括在匹配特征点对中特征点的坐标。
25.根据权利要求15所述的装置,其特征在于,所述拼接单元,包括:
第二建立子单元,用于根据预设参数,对每一待拼接图像的非重叠区域进行第二网格建立;所述非重叠区域为每一待拼接图像中除重叠区域外的区域;
第二调整子单元,用于对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,调整该待拼接图像的单应矩阵,获得该第二网格的单应矩阵;
拼接子单元,用于根据每一第一网格的单应矩阵和每一第二网格的单应矩阵,拼接所述基础拼接图像和所述至少一张待拼接图像。
26.根据权利要求25所述的装置,其特征在于,所述第二调整子单元,具体用于:
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值比例,确定该第二网格相邻的其他第二网格的权值;
对于每一待拼接图像的每一第二网格,根据该第二网格相邻的其他第二网格的权值,调整该待拼接图像的单应矩阵,将调整后的单应矩阵作为该第二网格的单应矩阵。
27.根据权利要求26所述的装置,其特征在于,所述第二调整子单元,具体用于:
对于每一待拼接图像的每一第二网格,根据以下公式,确定该第二网格相邻的其他第二网格的权值:
其中,wj为该第二网格相邻的第j个其他第二网格的权值,Qj为该第二网格相邻的第j个其他第二网格的权值比例,Qi为该第二网格相邻的第i个其他第二网格的权值比例,S为与该第二网格相邻的其他第二网格的总个数。
28.根据权利要求25-27任一项所述的装置,其特征在于,每一第二网络的大小相等。
29.一种电子设备,其特征在于,包括处理器和存储器;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的计算机程序,实现权利要求1-14任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711445096.2A CN109978760B (zh) | 2017-12-27 | 2017-12-27 | 一种图像拼接方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711445096.2A CN109978760B (zh) | 2017-12-27 | 2017-12-27 | 一种图像拼接方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109978760A true CN109978760A (zh) | 2019-07-05 |
CN109978760B CN109978760B (zh) | 2023-05-02 |
Family
ID=67072419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711445096.2A Active CN109978760B (zh) | 2017-12-27 | 2017-12-27 | 一种图像拼接方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109978760B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111738918A (zh) * | 2020-05-08 | 2020-10-02 | 普宙机器人科技(武汉)有限公司 | 一种基于无人机云端服务器计算的全景拼接方法和*** |
CN112561924A (zh) * | 2020-12-02 | 2021-03-26 | 中国科学院新疆生态与地理研究所 | 一种自动获取多景图像最大重叠区域的方法、终端及可读存储介质 |
CN112801870A (zh) * | 2021-01-28 | 2021-05-14 | 中南大学 | 一种基于网格优化的图像拼接方法,拼接***及可读存储介质 |
WO2021120407A1 (zh) * | 2019-12-17 | 2021-06-24 | 大连理工大学 | 一种基于多对双目相机的视差图像拼接与可视化方法 |
CN113052900A (zh) * | 2021-04-23 | 2021-06-29 | 深圳市商汤科技有限公司 | 一种位置确定方法及装置、电子设备和存储介质 |
CN113205457A (zh) * | 2021-05-11 | 2021-08-03 | 华中科技大学 | 一种微观图像拼接方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102084650A (zh) * | 2009-05-12 | 2011-06-01 | 华为终端有限公司 | 远程呈现***、方法及视频采集设备 |
CN103873758A (zh) * | 2012-12-17 | 2014-06-18 | 北京三星通信技术研究有限公司 | 全景图实时生成的方法、装置及设备 |
CN104392416A (zh) * | 2014-11-21 | 2015-03-04 | 中国电子科技集团公司第二十八研究所 | 一种运动场景的视频拼接方法 |
CN106960442A (zh) * | 2017-03-01 | 2017-07-18 | 东华大学 | 基于单目红外的夜间机器人视觉大视场三维构建方法 |
-
2017
- 2017-12-27 CN CN201711445096.2A patent/CN109978760B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102084650A (zh) * | 2009-05-12 | 2011-06-01 | 华为终端有限公司 | 远程呈现***、方法及视频采集设备 |
CN103873758A (zh) * | 2012-12-17 | 2014-06-18 | 北京三星通信技术研究有限公司 | 全景图实时生成的方法、装置及设备 |
CN104392416A (zh) * | 2014-11-21 | 2015-03-04 | 中国电子科技集团公司第二十八研究所 | 一种运动场景的视频拼接方法 |
CN106960442A (zh) * | 2017-03-01 | 2017-07-18 | 东华大学 | 基于单目红外的夜间机器人视觉大视场三维构建方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021120407A1 (zh) * | 2019-12-17 | 2021-06-24 | 大连理工大学 | 一种基于多对双目相机的视差图像拼接与可视化方法 |
US11350073B2 (en) | 2019-12-17 | 2022-05-31 | Dalian University Of Technology | Disparity image stitching and visualization method based on multiple pairs of binocular cameras |
CN111738918A (zh) * | 2020-05-08 | 2020-10-02 | 普宙机器人科技(武汉)有限公司 | 一种基于无人机云端服务器计算的全景拼接方法和*** |
CN112561924A (zh) * | 2020-12-02 | 2021-03-26 | 中国科学院新疆生态与地理研究所 | 一种自动获取多景图像最大重叠区域的方法、终端及可读存储介质 |
CN112801870A (zh) * | 2021-01-28 | 2021-05-14 | 中南大学 | 一种基于网格优化的图像拼接方法,拼接***及可读存储介质 |
CN112801870B (zh) * | 2021-01-28 | 2022-05-17 | 中南大学 | 一种基于网格优化的图像拼接方法,拼接***及可读存储介质 |
CN113052900A (zh) * | 2021-04-23 | 2021-06-29 | 深圳市商汤科技有限公司 | 一种位置确定方法及装置、电子设备和存储介质 |
CN113205457A (zh) * | 2021-05-11 | 2021-08-03 | 华中科技大学 | 一种微观图像拼接方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN109978760B (zh) | 2023-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109978760A (zh) | 一种图像拼接方法及装置 | |
CN105453131B (zh) | 图像的自动调整 | |
US9224189B2 (en) | Method and apparatus for combining panoramic image | |
CN105389787A (zh) | 一种全景图像拼接方法及装置 | |
US7865013B2 (en) | System and method for registration of cubic fisheye hemispherical images | |
WO2020134528A1 (zh) | 目标检测方法及相关产品 | |
CN107665479A (zh) | 一种特征提取方法、全景拼接方法及其装置、设备及计算机可读存储介质 | |
Mistry et al. | Image stitching using Harris feature detection | |
CN105303514A (zh) | 图像处理方法和装置 | |
Jung et al. | Robust upright adjustment of 360 spherical panoramas | |
CN104170371B (zh) | 实现自助合影的方法和照相设备 | |
EP3496386A1 (en) | Guiding method and device for photography composition | |
Furnari et al. | Distortion adaptive Sobel filters for the gradient estimation of wide angle images | |
CN110288511A (zh) | 基于双相机图像的最小化误差拼接方法、装置、电子设备 | |
Joshi | OpenCV with Python by example | |
CN108629810A (zh) | 双目相机的标定方法、装置及终端 | |
Bastanlar et al. | Multi-view structure-from-motion for hybrid camera scenarios | |
CN109598674A (zh) | 一种图像拼接方法及装置 | |
CN111353325A (zh) | 关键点检测模型训练方法及装置 | |
KR101348681B1 (ko) | 영상탐지시스템의 다중센서 영상정렬방법 및 이를 이용한 영상탐지시스템의 다중센서 영상정렬장치 | |
CN106997366B (zh) | 数据库构建方法、增强现实融合追踪方法及终端设备 | |
CN112037130B (zh) | 一种自适应图像拼接融合方法、装置、电子设备及存储介质 | |
CN111161138B (zh) | 用于二维全景图像的目标检测方法、装置、设备、介质 | |
CN111091117B (zh) | 用于二维全景图像的目标检测方法、装置、设备、介质 | |
Jung et al. | Upright adjustment of 360 spherical panoramas |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |