CN104599247B - 图像校正方法及装置 - Google Patents
图像校正方法及装置 Download PDFInfo
- Publication number
- CN104599247B CN104599247B CN201510003719.5A CN201510003719A CN104599247B CN 104599247 B CN104599247 B CN 104599247B CN 201510003719 A CN201510003719 A CN 201510003719A CN 104599247 B CN104599247 B CN 104599247B
- Authority
- CN
- China
- Prior art keywords
- region
- mtd
- mrow
- msub
- pixel
- 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.)
- Active
Links
Landscapes
- Image Processing (AREA)
Abstract
本发明公开一种图像校正方法及装置,属于地图技术领域。方法包括获取素材图像和全景图中待校正的第一目标图像区域;从素材图像中截取与第一目标图像区域匹配的第二目标图像区域后,进行变形,得到第三目标图像区域;在第三目标图像区域中确定第四目标图像区域;对第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域;将第五目标图像区域拼接至全景图中,得到校正后的全景图。本发明通过获取全景图中发生错位的第一目标图像区域,从素材图像中截取出与第一目标图像区域相匹配的第二目标图像区域后,对第二目标图像区域进行变形等处理,将处理后的区域拼接至全景图中,从而可修复全景图中的错位的区域,提高全景图的视觉观赏性。
Description
技术领域
本发明涉及地图技术领域,特别涉及一种图像校正方法及装置。
背景技术
随着地图技术的迅速发展,出现了越来越多的全景图,用户能够根据全景图,获得城市、街道或其它环境的360度全景。其中,全景图是由图像拍摄设备于某一固定点进行360度拍摄,分别得到各个角度的图像后,通过拼接算法将各个图像拼接而成。在拼接各个图像时,在两个图像的边缘可能会出现对不齐的情况,使得全景图中两幅图像的边界出现错位。
当错位区域出现在全景图中的道路区域、楼房区域等区域时,由于这些对象具有很强的结构性,因此,会让用户觉得全景图严重失真、视觉观赏性差。为了避免该种情况发生,需要对全景图中存在错位的区域进行校正。
发明内容
为了解决相关技术的问题,本发明实施例提供了一种图像校正方法及装置。所述技术方案如下:
第一方面,提供了一种图像校正方法,所述方法包括:
获取素材图像和全景图中待校正的第一目标图像区域;
根据所述素材图像中的像素点和所述第一目标图像区域中的像素点,从所述素材图像中截取与所述第一目标图像区域匹配的第二目标图像区域;
对所述第二目标图像区域进行变形,得到第三目标图像区域,所述第三目标图像区域中像素点的位置与对应像素点在所述第一目标图像区域中的位置之间的距离最小;
根据所述第三目标图像区域的缩放以及所述第三目标图像区域轮廓上的像素点,在所述第三目标图像区域中确定第四目标图像区域;
对所述第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域;
将所述第五目标图像区域拼接至所述全景图中,得到校正后的全景图。
第二方面,提供了一种图像校正装置,所述装置包括:
获取模块,用于获取素材图像和全景图中待校正的第一目标图像区域;
截取模块,用于根据所述素材图像中的像素点和所述第一目标图像区域中的像素点,从所述素材图像中截取与所述第一目标图像区域匹配的第二目标图像区域;
变形模块,用于对所述第二目标图像区域进行变形,得到第三目标图像区域,所述第三目标图像区域中像素点的位置与对应像素点在所述第一目标图像区域中的位置之间的距离最小;
确定模块,用于根据所述第三目标图像区域的缩放以及所述第三目标图像区域轮廓上的像素点,在所述第三目标图像区域中确定第四目标图像区域;
处理模块,用于对所述第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域;
拼接模块,用于将所述第五目标图像区域拼接至所述全景图中,得到校正后的全景图。
本发明实施例提供的技术方案带来的有益效果是:
通过获取全景图中发生错位的第一目标图像区域,并从素材图像中截取出与第一目标图像区域相匹配的第二目标图像区域后,对第二目标图像区域进行变形,得到第三目标图像区域,进一步从第三目标图像中确定拼接至全景图中的最优的第四目标图像区域,并对第四目标图像区域内像素点的像素值进行处理,得到最终的第五目标图像区域后,将第五目标图像区域拼接至全景图中,从而实现对全景图中错位区域的校正,使得可以修复全景图中存在错位的区域,能够避免全景图出现失真的情况,提高了全景图的视觉观赏性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种图像校正方法所涉及的应用环境示意图;
图2是本发明另一实施例提供的一种图像校正方法的流程图;
图3是本发明另一实施例提供的一种图像校正方法的流程图;
图4是本发明另一实施例提供的一种素材图像的示意图;
图5是本发明另一实施例提供的一种双线性插值法的过程示意图;
图6是本发明另一实施例提供的一种对第三目标图像区域进行放大操作、缩小操作的结果示意图;
图7是本发明另一实施例提供的一种三角剖分结果示意图;
图8是本发明另一实施例提供的一种x与i、i+1及i-1之间的关系示意图;
图9是本发明另一实施例提供的一种校正后的全景图的示意图;
图10是本发明另一实施例提供的一种图像校正装置结构示意图;
图11是本发明另一实施例提供的一种移动终端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
如图1所示,其示出了本发明一实施例提供的一种图像校正方法所涉及的应用环境示意图。在拼接全景图拍摄设备拍摄到的各个图像,以生成全景图时,在两幅图像的拼接处容易出现错位的区域。如图1所示,其示出了一种全景图的示意图,图1中道路所在的区域发生了错位,如图1中虚线框所示。为了对全景图中存在错位的区域进行处理,本发明实施例提供了一种图像校正方法。当然,图1及后续各个实施例仅以错位区域出现在道路区域为例进行说明。事实上,错位区域可能发生在全景图中任意两个图像相拼接的区域,本发明实施例对此不作具体限定。
结合图1所示的应用环境示意图,图2是根据一示例性实施例提供的一种图像校正方法的流程图。如图2所示,本发明实施例提供的方法流程包括:
201、获取素材图像和全景图中待校正的第一目标图像区域。
202、根据素材图像中的像素点和第一目标图像区域中的像素点,从素材图像中截取与第一目标图像区域匹配的第二目标图像区域。
203、对第二目标图像区域进行变形,得到第三目标图像区域,其中,第三目标图像区域中像素点的位置与对应像素点在第一目标图像区域中的位置之间的距离最小。
204、根据第三目标图像区域的缩放以及第三目标图像区域轮廓上的像素点,在第三目标图像区域中确定第四目标图像区域。
205、对第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域。
206、将第五目标图像区域拼接至全景图中,得到校正后的全景图。
本发明实施例提供的方法,通过获取全景图中发生错位的第一目标图像区域,并从素材图像中截取出与第一目标图像区域相匹配的第二目标图像区域后,对第二目标图像区域进行变形,得到第三目标图像区域,进一步从第三目标图像中确定拼接至全景图中的最优的第四目标图像区域,并对第四目标图像区域内像素点的像素值进行处理,得到最终的第五目标图像区域后,将第五目标图像区域拼接至全景图中,从而实现对全景图中错位区域的校正,使得可以修复全景图中存在错位的区域,能够避免全景图出现失真的情况,提高了全景图的视觉观赏性。
在另一个实施例中,根据素材图像中的像素点和第一目标图像区域中的像素点,从素材图像中截取与第一目标图像区域匹配的第二目标图像区域,包括:
根据第一目标图像区域中的像素点,提取第一目标图像区域中的至少一个第一特征点;
根据素材图像中的像素点,提取素材图像中的至少一个第二特征点;
将每个第一特征点分别与至少一个第二特征点进行匹配,得到与每个第一特征点匹配的匹配特征点;
从素材图像中截取包括所有匹配特征点的区域作为第二目标图像区域。
在另一个实施例中,根据第一目标图像区域中的像素点,提取第一目标图像区域中的至少一个第一特征点,包括:
根据第一目标图像区域中的像素点,通过最大稳定极值区域提取算法,确定第一目标图像区域中的第一最大稳定极值区域;
通过SIFT(Scale-invariant feature transform,尺度不变特征变换)算法,提取第一最大稳定极值区域中的至少一个第一SIFT特征点,将至少一个第一SIFT特征点作为至少一个第一特征点;
根据素材图像中的像素点,提取素材图像中的至少一个第二特征点,包括:
根据素材图像中的像素点,通过最大稳定极值区域提取算法,确定素材图像中的第二最大稳定极值区域;
通过SIFT算法,提取第二最大稳定极值区域中的至少一个第二SIFT特征点,将至少一个第二SIFT特征点作为至少一个第二特征点。
在另一个实施例中,对第二目标图像区域进行变形,得到第三目标图像区域,包括:
对于每个第一特征点,确定第一特征点在第一目标图像区域中的第一位置;
在第二目标图像区域中分割出预设数值的指定大小的矩形网格;
对于每个匹配特征点,根据匹配特征点所在矩形网格的四个顶点的位置,采用双线性插值法确定匹配特征点在第二目标图像区域中的第二位置;
根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,得到与第一特征点匹配的匹配特征点变形后的第三位置,其中,对第一特征点的变形使第一特征点的第一位置与对应匹配特征点的第三位置之间的距离最小,对各个矩形网格的变形为相似变换;
根据每个匹配特征点的第三位置,确定第三目标图像区域。
在另一个实施例中,根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,得到与第一特征点匹配的匹配特征点变形后的第三位置,包括:
根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,将总能量项为指定数值时与第一特征点匹配的匹配特征点的位置,作为与第一特征点匹配的匹配特征点变形后的第三位置,所述指定数值为变形过程中通过如下公式计算得到的总能量项的各个能量值中的最小值:
其中,
Vq=[x0,y0,x1,y1,K,xq-1,yq-1]T
E=EP+λES
式中,E为总能量项;EP为位置项,用于约束每个匹配特征点的第三位置,使每个匹配特征点在第三目标图像区域中的第三位置与对应第一特征点在第一目标图像区域中的第一位置之间的距离最小,(xi,s,yi,s)和(xi,r,yi,r)分别为第一特征点i在第一目标图像区域中的第一位置和与第一特征点i匹配的匹配特征点在第三目标图像中的第三位置;ES为保形项,用于约束对每个矩形网格的变形,使对每个矩形网格的变形为相似变换,Nq为矩形网格的数量;I为单位矩阵;λ为常系数。
在另一个实施例中,根据第三目标图像区域的缩放以及第三目标图像区域轮廓上的像素点,在第三目标图像区域中确定第四目标图像区域,包括:
对第三目标图像区域进行放大操作,得到第一区域;
对第三目标图像区域进行缩小操作,得到第二区域;
将第一区域和第二区域以第三目标图像区域的中心点为基准叠放在一起时未重叠的区域,获取为目标区域;
沿第三目标图像区域的轮廓上像素点的梯度方向,确定目标区域的分割线;
根据目标区域中各个像素点的像素值,在目标区域中查找路径能量最低的封闭路径,将由封闭路径围成的区域作为第四目标图像区域,其中,封闭路径的起始点为分割线上的第一像素点、结束点为分割线上的第二像素点。
在另一个实施例中,对第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域,包括:
对第四目标图像区域进行三角剖分,得到第四目标图像区域中的多个三角形;
对于一个三角形,根据第四目标图像区域的轮廓上各个像素点的坐标,确定三角形顶点的均值坐标;
根据第四目标图像区域的轮廓上各个像素点的像素值及各个三角形顶点的均值坐标,确定每个三角形的顶点像素值;
根据每个三角形的顶点像素值,采用线性插值法确定第四目标图像区域中每个像素点的像素值;
根据第四目标图像区域中每个像素点的像素值,确定第五目标图像区域。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
结合图1所示的应用环境示意图及图2所对应实施例的内容,图3是根据一示例性实施例提供的一种图像校正方法的流程图。如图3所示,本发明实施例提供的方法流程包括:
301、获取素材图像和全景图中待校正的第一目标图像区域。
其中,第一目标图像区域为全景图中存在错位的区域,该第一目标图像区域可以由终端用户通过视觉比对确定,或者,该第一目标图像区域还可以由终端根据图片分析方法确定,本发明实施例对此不作赘述。
如果由终端用户通过视觉比对实现,则在获取第一目标图像区域时,可以提供预设形状的选择框。在此种情况下,当终端检测到对该选择框的调整操作,如对整个选择框的拖拽操作或对选择框某个边框的拖拽操作时,将选择框内的区域作为第一目标图像区域。其中,该预设形状可以为矩形,也可以为圆形、正方形等。结合图1,该预设形状为矩形。
可选地,在获取到第一目标图像区域后,可以适当扩展获取到的第一目标图像区域的面积,以确保该第一目标图像区域能够完全包括全景图中的错位区域。
素材图像为使用图像拍摄设备拍摄到的图像,该素材图像中所展示的景色包括第一目标图像区域所展示的景色。结合图1,第一目标图像区域可以为图1中虚线框所包围的道路区域。在此基础上,素材图像应该为一张能够包括图1虚线框所包围道路区域的图像。如图4所示,其示出了一种素材图像的示意图。其中,图4中的(a)图为一张素材图像。如图4中的(a)图所示,该素材图像所展示的景色包括图1虚线框所包围的道路区域。
在获取素材图像时,提供素材图像选项,并由人工选择素材图像。在此基础上,可以将该素材图像选项被选中后,由人工操作导入的图像作为获取到的素材图像。也就是说,图像校正装置将素材图像选项被选中后,导入图像校正装置预设区域的图像作为获取到的素材图像。
302、根据第一目标图像区域中的像素点,提取第一目标图像区域中的至少一个第一特征点,根据素材图像中的像素点,提取素材图像中的至少一个第二特征点。
其中,第一特征点为能够表征第一目标图像区域特征的像素点,第二特征点为能够表征素材图像特征的像素点。在本发明实施例中,通过提取第一目标图像区域中的至少一个第一特征点及素材图像中的至少一个第二特征点,使得后续在对图像进行校正时,可以从第二特征点中筛选出与每个第一特征点匹配的匹配特征点,并仅对包括各个匹配特征点的第二目标图像区域进行处理来实现,从而可以缩小对素材图像的处理区域,进而可以避免因处理素材图像中的所有像素点而导致图像校正过程的计算量很大的问题。
在根据第一目标图像区域中的像素点,提取第一目标图像区域中的至少一个第一特征点时,包括但不限于通过如下步骤3021和步骤3022实现:
3021、根据第一目标图像区域中的像素点,通过最大稳定极值区域提取算法,确定第一目标图像区域中的第一最大稳定极值区域。
其中,最大稳定极值区域能够很好地标识图像的特征,且该区域为图像中最稳定的区域。即使图像被平移、旋转或经过各种变换后,也可以通过最大稳定极值区域提取算法,将最大稳定极值区域检测出来。因此,本发明实施例在提取第一目标图像区域的第一特征点时,可以先确定该第一目标图像区域的最大稳定极值区域。关于通过最大稳定极值区域提取算法,确定第一目标图像区域中的第一最大稳定极值区域的方式,可以参见最大稳定极值区域提取算法的具体实现流程,本发明实施例对此不进行具体描述。
3022、通过SIFT算法,提取第一最大稳定极值区域中的至少一个第一SIFT特征点,将至少一个第一SIFT特征点作为至少一个第一特征点。
SIFT特征点具有尺度变化不变性,也就是说,即使图像的尺度发生变化,SIFT特征点的一些属性能够保持不变。因此,在提取标识图像特征的特征点时,可以提取图像的SIFT特征点,并将SIFT特征点作为图像的特征点。在本发明实施例中,将第一最大稳定极值区域中的至少一个第一SIFT特征点作为至少一个第一特征点。其中,在通过SIFT算法,提取第一最大稳定极值区域中的至少一个第一SIFT特征点时,可以通过如下步骤来实现:
第一步、对第一最大稳定极值区域中的所有像素点进行尺度空间极值检测,得到该第一最大稳定极值区域中的各个极值点。
第二步、对检测到的各个极值点进行筛选,以去除对比度低的不稳定极值点或由于边缘效应造成的不稳定极值点,得到第一最大稳定极值区域中的关键特征点。
第三步、为各个关键特征点分配主方向,以使各个关键特征点具备旋转不变性。其中,对于一个关键特征点,其主方向由以该关键特征点为中心的邻域内所有像素点的梯度方向确定。
第四步、建立每个关键特征点的描述子,得到第一最大稳定极值区域中的至少一个SIFT特征点。其中,一个关键特征点的描述子包括位置、尺度及主方向。结合图1,图1中虚线框内的空心圆圈即可以表示提取到的至少一个SIFT特征点。
进一步地,在根据素材图像中的像素点,提取素材图像中的至少一个第二特征点时,可以根据素材图像中的像素点,通过最大稳定极值区域提取算法,确定素材图像中的第二最大稳定极值区域;通过SIFT算法,提取第二最大稳定极值区域中的至少一个第二SIFT特征点,将至少一个第二SIFT特征点作为至少一个第二特征点。该过程的原理与上述步骤3021和步骤3022的原理一致,具体可参见上述步骤3021和步骤3022的内容,在此不再赘述。
需要说明的是,提取第一目标图像区域的第一特征点和提取素材图像的第二特征点可以同时进行,也可以分先后顺序进行。例如,可以先提取第一目标图像区域的第一特征点,后提取素材图像的第二特征点;也可以先提取素材图像的第二特征点,再提取第一目标图像区域的第一特征点。
303、将每个第一特征点分别与至少一个第二特征点进行匹配,得到与每个第一特征点匹配的匹配特征点后,从素材图像中截取包括所有匹配特征点的区域作为第二目标图像区域。
其中,对于一个第一特征点来说,在确定与该第一特征点匹配的第二特征点时,可以将该第一特征点分别与至少一个第二特征点进行匹配来实现。具体地,可以通过如下方式确定与该第一特征点匹配的第二特征点:
首先,计算该第一特征点与每个第二特征点的欧式距离;然后,从所有欧式距离中,查找与该第一特征点欧式距离最近的第二特征点a、欧式距离次近的第二特征点b,并将该第一特征点与第二特征点a之间的欧式距离标记为第一欧式距离,将该第一特征点与第二特征点b之间的欧式距离标记为第二欧式距离;最后,计算第一欧式距离与第二欧式距离的比值,并判断该比值是否小于指定阈值;当该比值小于指定阈值时,确定第二特征点a为与该第一特征点匹配的匹配特征点,否则,该第二特征点a不为与该第一特征点匹配的匹配特征点,需要重新查找与该第一特征点匹配的匹配特征点。结合图4,图4的(a)图中各个空心圆圈指代与图1所示的每个第一特征点匹配的匹配特征点。
进一步地,素材图像中可能包括很多与第一目标图像区域无关的区域,当对素材图像的整个区域均进行处理时,会造成计算量很大的问题。而由于匹配特征点为与各个第一特征点匹配的像素点,且匹配特征点也能够标识素材图像的特征,因此,在进行图像处理时,可以从素材图像中截取包括所有匹配特征点的区域作为第二目标图像区域。在后续进行图像校正时,仅对该第二目标图像区域进行处理。
其中,在截取包括所有匹配特征点的第二目标区域之前,可以预设第二目标图像区域的指定形状。该指定形状可以为矩形、正方形、圆形等。如图4中的(b)图所示,其示出了一种第二目标图像区域的示意图,在图4中的(b)图中,该指定形状为矩形,各个空心圆圈即为与每个第一特征点匹配的匹配特征点。
通过从素材图像中截取出第二目标图像区域,使得图像校正过程可以仅对第二目标图像区域进行处理,不仅能够大大减少计算量,从而能够优化处理速度,而且使得图像校正过程具有针对性。
其中,步骤302和步骤303为根据素材图像中的像素点和第一目标图像区域中的像素点,从素材图像中截取与第一目标图像区域匹配的第二目标图像区域的具体实现方式。当然,在具体实施时,还可以由用户手动选取第二目标图像区域等,本发明实施例对此不作具体限定。
304、对第二目标图像区域进行变形,得到第三目标图像区域,其中,第三目标图像区域中像素点的位置与对应像素点在第一目标图像区域中的位置之间的距离最小。
本发明实施例将对第二目标图像区域进行变形后得到的区域,定义为第三目标图像区域。本发明实施例提供的变形方法,使第三目标图像区域中像素点的位置与对应像素点在第一目标图像区域中的位置之间的距离最小,以确保后续拼接至全景图中的区域能够很好地替代第一目标图像区域。另外,为了确保变形后各个像素点之间的位置关系能够与对应像素点在第二目标图像区域中的位置关系保持相同,本发明实施例对第二目标图像区域的变形为相似变换。也就是说,在对第二目标图像区域进行变形时,保持第二目标图像区域的形状不变,即不改变图形中每一个角的大小,而仅改变第二目标图像区域的大小、方向或像素点的位置等。
具体地,在对第二目标图像区域进行变形,得到第三目标图像区域时,包括但不限于通过如下步骤3041至步骤3045来实现:
3041、对于每个第一特征点,确定第一特征点在第一目标图像区域中的第一位置。
其中,第一特征点的第一位置可以用坐标表示。在确定第一特征点的第一位置时,可以在第一目标图像区域中选择一个像素点作为原点,分别以水平方向和竖直方向为X轴和Y轴建立直角坐标系;确定该第一特征点在该直角坐标系下的坐标,将将该直角坐标系下的坐标作为该第一特征点的第一位置。对于每个第一特征点均确定其在该直角坐标系下的坐标,即可确定每个第一特征点的第一位置。
3042、在第二目标图像区域中分割出预设数值的指定大小的矩形网格。
其中,该预设数值可以根据需要设定。例如,该预设数值可以为20*20=400个。该指定大小可以根据第二目标图像区域的尺寸及该预设数值确定。例如,如果第二目标图像区域为4厘米*2厘米的矩形区域,且该预设数值为20*20,则每个矩形网格的指定大小为0.2厘米*0.1厘米。
3043、对于每个匹配特征点,根据匹配特征点所在矩形网格的四个顶点的位置,采用双线性插值法确定匹配特征点在第二目标图像区域中的第二位置。
在分割出预设数值的矩形网格后,可以确定每个矩形网格的四个顶点的位置。其中,每个矩形网格的四个顶点的位置可以通过其坐标来表示。进一步地,对于落在某个矩形网格中的一个匹配特征点的位置,可以根据该匹配特征点所在矩形网格的四个顶点的位置,采用双线性插值法确定。
其中,在根据该匹配特征点所在矩形网格的四个顶点的位置,采用双线性插值法确定某一个匹配特征点的位置时,可以通过如下方式实现:
例如,如图5所示,其示出了本发明另一实施例提供的一种双线性插值法的过程示意图。如果某一个矩形网格的四个顶点的位置用坐标分别表示为Q11=(x1,y1)、Q12=(x1,y2)、Q21=(x2,y1)以及Q22=(x2,y2),则可以先根据Q11和Q12进行水平方向的插值,得到R1和R2。其中:
然后,根据Q21和Q22进行竖直方向的插值,得到P。其中,P点坐标表示为:
通过双线性差值法确定各个匹配特征点的第二位置,能够建立各个匹配特征点与其所在矩形网格四个顶点之间的位置关系,确保可以通过调节矩形网格四个顶点的位置来调整匹配特征点的位置。由于在调整矩形网格四个顶点的位置时,易于保证其形状不变,因此,能够保证各个像素点之间的位置关系保持不变,从而保证变形为相似变换。
3044、根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,得到与第一特征点匹配的匹配特征点变形后的第三位置,其中,对第一特征点的变形使第一特征点的第一位置与对应匹配特征点的第三位置之间的距离最小,对各个矩形网格的变形为相似变换。
在本发明实施例中,可以通过变形过程中涉及的总能量项来对变形过程进行约束。具体地,在根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形时,将总能量项E为指定数值时与第一特征点匹配的匹配特征点的位置,作为与第一特征点匹配的匹配特征点变形后的第三位置,其中,指定数值为变形过程中通过如下公式计算得到的总能量项的各个能量值中的最小值:
其中,变形过程涉及的公式如下:
Vq=[x0,y0,x1,y1,...,xq-1,yq-1]T (7)
E=EP+λES (8)
式中,E为总能量项;EP为位置项,用于约束每个匹配特征点的第三位置,使每个匹配特征点在第三目标图像区域中的第三位置与对应第一特征点在第一目标图像区域中的第一位置之间的距离最小,(xi,s,yi,s)和(xi,r,yi,r)分别为第一特征点i在第一目标图像区域中的第一位置和与第一特征点i匹配的匹配特征点在第三目标图像中的第三位置;ES为保形项,用于约束对每个矩形网格的变形,使对每个矩形网格的变形为相似变换,Nq为矩形网格的数量;I为单位矩阵;λ为常系数,例如,λ可以为10。
具体地,变形过程通过迭代计算实现。每次迭代时,先假设各个矩形网格四个顶点的位置;然后,根据各个匹配特征点所在的矩形网格四个顶点的位置,通过双线性插值法确定各个匹配特征点的第三位置;进一步地,根据上述公式(4)-(8)得到该次迭代过程的一个能量值。如此重复,变形过程会计算得到很多个能量值,本发明实施例将这些能量值中的最小值定义为指定数值。当能量项达到指定数值时,各个匹配特征点所在的位置即为最终的第三位置。
3045、根据每个匹配特征点的第三位置,确定第三目标图像区域。
在通过变形确定每个匹配特征点的第三位置后,将变形得到的区域确定为第三目标图像区域。其中,第三目标图像区域中每个匹配特征点的位置为第三位置。
305、根据第三目标图像区域的缩放以及第三目标图像区域轮廓上的像素点,在第三目标图像区域中确定第四目标图像区域。
其中,在根据第三目标图像区域的缩放以及第三目标图像区域轮廓上的像素点,在第三目标图像区域中确定第四目标图像区域时,包括但不限于通过如下步骤3051至步骤3055来实现:
3051、对第三目标图像区域进行放大操作,得到第一区域。
其中,在对第三目标图像区域进行放大操作时,可以保持第三目标图像区域的形状不变,并结合第三目标图像区域的形状实现。例如,当第三目标图像为矩形时,可以按照预设比例将第三目标图像区域的长和宽均增加预设数值倍。其中,该预设数值倍可以为0.5倍、1倍等。
3052、对第三目标图像区域进行缩小操作,得到第二区域。
该步骤的原理同上述步骤3051的原理一致,在此不再赘述。如图6所示,其示出了一种对第三目标图像区域进行放大操作、缩小操作的结果示意图。在图6中(a)图中,601表示第三目标图像区域,602表示第一区域,603表示第二区域。
3053、将第一区域和第二区域以第三目标图像区域的中心点为基准叠放在一起时未重叠的区域,获取为目标区域。
具体地,在获取目标区域时,可以第三目标图像的中心点为基准,将第一区域和第二区域的中心点均与第三目标图像区域的中心点叠放在一起,并将第一区域和第二区域叠放在一起后未重叠的区域作为目标区域,即目标区域为一个环形封闭区域。结合图6中的(a)图,该目标区域可以通过图6中(a)图中的604表示。
3054、沿第三目标图像区域的轮廓上像素点的梯度方向,确定目标区域的分割线。
其中,该像素点可以为第三目标图像区域的轮廓上的任意一个像素点,该像素点的梯度方向可以根据梯度算法确定。在沿第三目标图像区域的轮廓上像素点的梯度方向,确定目标区域的分割线时,可以将梯度方向的贯穿环形封闭区域的外环和内环的直线确定为分割线。结合图6中的(a)图,目标区域中的605即可以表示目标区域的一条分割线,该分割线贯穿该目标区域的内环与外环。
3055、根据目标区域中各个像素点的像素值,在目标区域中查找路径能量最低的封闭路径,将由封闭路径围成的区域作为第四目标图像区域,其中,封闭路径的起始点为分割线上的第一像素点、结束点为分割线上的第二像素点。
其中,第一像素点和第二像素点可以为分割线上的同一个像素点,也可以为分割线上的任意两个不同像素点。
路径能量可以通过如下公式来表示:
其中,表示从第一像素点到第二像素点的一条封闭路径;p表示该封闭路径上的每一个像素点;K为一个向量,包括Kr、Kg和Kb三个分量;R(p)、G(p)、B(p)表示p点的RGB值。
由于目标区域中从第一像素点至第二像素点的封闭路径有多个,因此,在查找路径能量最低的封闭路径时,可以通过迭代算法实现。具体地,可以通过如下步骤来实现:
第一步、预先分别为K和E设置一个初始值,例如,将K的初始值设置为(0,0,0),并根据经验将E的初始值设置为Emin。
第二步、对于分割线上的一个第一像素点和一个第二像素点,采用单源最短路径迪杰斯特拉算法,找到一条从第一像素点至第二像素点的能量最低的最优封闭路径。
第三步、对于分割线上的每个像素点,均采用第二步中的方法,找到一条从第一像素点至第二像素点的能量最低的最优封闭路径后,将每次通过第二步查找到的能量最低的最优封闭路径的能量值进行比对,得到路径能量最低的封闭路径作为最终能量最低封闭路径Ω,并得到该最终能量最低封闭路径Ω的路径能量E。
第四步、判断E是否小于Emin。当E小于Emin时,根据Ω上的每个像素点,通过公式(9)计算出新的K,并通过第二步和第三步的方法,查找到新的最终能量最低封闭路径Ω',直至确定的最终能量最低封闭路径的能量E'大于E时,停止迭代,将E'对应的封闭路径作为步骤3055查找到的路径能量最低的封闭路径。当E大于Emin时,将该E对应的封闭路径作为步骤3055查找到的路径能量最低的封闭路径。结合图6,图6的(b)图中的606即可以表示查找到的路径能量最低的封闭路径。
306、对第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域。
其中,在对第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域时,包括但不限于通过如下步骤3061至步骤3065来实现:
3061、对第四目标图像区域进行三角剖分,得到第四目标图像区域中的多个三角形。
其中,在对第四目标图像区域进行三角剖分时,应该满足剖分后的每个小区域都是曲边三角形,且任何两个曲边三角形要么不相交,要么共用一条边,即任意两个曲边三角形不能同时交两条或两条以上的边。如图7所示,其示出了一种三角剖分结果示意图。图7中整个区域即为第四目标图像区域,图7中的各个三角形即为对第四目标图像区域进行三角剖分得到的多个三角形。
3062、对于一个三角形,根据第四目标图像区域的轮廓上各个像素点的坐标,确定该三角形顶点的均值坐标。
其中,在根据第四目标图像区域的轮廓上各个像素点的坐标,确定该三角形顶点的均值坐标时,包括但不限于通过如下公式实现:
式中,pi为第四目标图像区域的轮廓上的像素点i的坐标,x为该三角形的顶点,αi为i与i+1之间的夹角,αi-1为i与i-1之间的夹角。如图8所示,其示出了一种x与i、i+1及i-1之间的关系示意图。
3063、根据第四目标图像区域的轮廓上各个像素点的像素值及各个三角形顶点的均值坐标,确定每个三角形的顶点像素值。
其中,在根据第四目标图像区域的轮廓上各个像素点的像素值及各个三角形顶点的均值坐标,确定每个三角形的顶点像素值时,可以根据第四目标图像区域的轮廓上各个像素点的像素值、坐标值及各个三角形顶点的均值坐标,通过线性插值的方法实现。
3064、根据每个三角形的顶点像素值,采用线性插值法确定第四目标图像区域中每个像素点的像素值。
该步骤为确定每个三角形区域内的各个像素点的像素值的步骤。对于一个三角形内的各个像素点的像素值,可以根据该三角形的顶点像素值,通过线性插值法计算得到。
3065、根据第四目标图像区域中每个像素点的像素值,确定第五目标图像区域。
通过上述步骤3061至步骤3064,可以得到对第四目标图像区域中的每个像素点处理后的像素值。通过该处理后各个像素点的像素值,得到第五目标图像区域。也就是说,第五目标图像区域与第四目标图像区域的轮廓形状相同,仅是部分或全部像素点的像素值与第四目标图像区域中的像素值不同而已。
通过对第四目标图像区域中的各个像素点的像素值进行处理,确保处理后各个像素点的像素值与全景图中除第一目标图像区域外的其它区域的像素点能够很好地匹配,避免因像素值差异大而使全景图像的视觉观赏性不够良好的问题,从而可以达到无缝拼接的效果。
307、将第五目标图像区域拼接至全景图中,得到校正后的全景图。
为了校正全景图中的错位区域,在得到第五目标图像后,将第五目标图像拼接至全景图中,以替换全景图中的第一目标图像区域,得到校正后的全景图。其中,在将第五目标图像区域拼接至全景图中时,可以通过图像拼接算法实现。如图9所示,其示出了一种校正后的全景图的示意图。
本发明实施例提供的方法,通过获取全景图中发生错位的第一目标图像区域,并从素材图像中截取出与第一目标图像区域相匹配的第二目标图像区域后,对第二目标图像区域进行变形,得到第三目标图像区域,进一步从第三目标图像中确定拼接至全景图中的最优的第四目标图像区域,并对第四目标图像区域内像素点的像素值进行处理,得到最终的第五目标图像区域后,将第五目标图像区域拼接至全景图中,从而实现对全景图中错位区域的校正,使得可以修复全景图中存在错位的区域,能够避免全景图出现失真的情况,提高了全景图的视觉观赏性。
图10是根据一示例性实施例提供的一种图像校正装置的结构示意图,该图像校正装置可以用于执行上述图2或图3所对应实施例提供的图像校正方法。如图10所示,该图像校正装置包括:
获取模块1001,用于获取素材图像和全景图中待校正的第一目标图像区域;
截取模块1002,用于根据素材图像中的像素点和第一目标图像区域中的像素点,从素材图像中截取与第一目标图像区域匹配的第二目标图像区域;
变形模块1003,用于对第二目标图像区域进行变形,得到第三目标图像区域,其中,第三目标图像区域中像素点的位置与对应像素点在第一目标图像区域中的位置之间的距离最小;
确定模块1004,用于根据第三目标图像区域的缩放以及第三目标图像区域轮廓上的像素点,在第三目标图像区域中确定第四目标图像区域;
处理模块1005,用于对第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域;
拼接模块1006,用于将第五目标图像区域拼接至全景图中,得到校正后的全景图。
本发明实施例提供的装置,通过获取全景图中发生错位的第一目标图像区域,并从素材图像中截取出与第一目标图像区域相匹配的第二目标图像区域后,对第二目标图像区域进行变形,得到第三目标图像区域,进一步从第三目标图像中确定拼接至全景图中的最优的第四目标图像区域,并对第四目标图像区域内像素点的像素值进行处理,得到最终的第五目标图像区域后,将第五目标图像区域拼接至全景图中,从而实现对全景图中错位区域的校正,使得可以修复全景图中存在错位的区域,能够避免全景图出现失真的情况,提高了全景图的视觉观赏性。
在另一个实施例中,截取模块1002包括:
第一提取单元,用于根据第一目标图像区域中的像素点,提取第一目标图像区域中的至少一个第一特征点;
第二提取单元,用于根据素材图像中的像素点,提取素材图像中的至少一个第二特征点;
匹配单元,用于将每个第一特征点分别与至少一个第二特征点进行匹配,得到与每个第一特征点匹配的匹配特征点;
截取单元,用于从素材图像中截取包括所有匹配特征点的区域作为第二目标图像区域。
在另一个实施例中,第一提取单元包括:
第一确定子单元,用于根据第一目标图像区域中的像素点,通过最大稳定极值区域提取算法,确定第一目标图像区域中的第一最大稳定极值区域;
第一提取子单元,用于通过SIFT算法,提取第一最大稳定极值区域中的至少一个第一SIFT特征点,将至少一个第一SIFT特征点作为至少一个第一特征点;
第二提取单元包括:
第二确定子单元,用于根据素材图像中的像素点,通过最大稳定极值区域提取算法,确定素材图像中的第二最大稳定极值区域;
第二提取子单元,用于通过SIFT算法,提取第二最大稳定极值区域中的至少一个第二SIFT特征点,将至少一个第二SIFT特征点作为至少一个第二特征点。
在另一个实施例中,变形模块1003包括:
第一确定单元,用于对于每个第一特征点,确定第一特征点在第一目标图像区域中的第一位置;
分割单元,用于在第二目标图像区域中分割出预设数值的指定大小的矩形网格;
第二确定单元,用于对于每个匹配特征点,根据匹配特征点所在矩形网格的四个顶点的位置,采用双线性插值法确定匹配特征点在第二目标图像区域中的第二位置;
变形单元,用于根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,得到与第一特征点匹配的匹配特征点变形后的第三位置,其中,对第一特征点的变形使第一特征点的第一位置与对应匹配特征点的第三位置之间的距离最小,对各个矩形网格的变形为相似变换;
第三确定单元,用于根据每个匹配特征点的第三位置,确定第三目标图像区域。
在另一个实施例中,变形单元用于根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,将总能量项为指定数值时与第一特征点匹配的匹配特征点的位置,作为与第一特征点匹配的匹配特征点变形后的第三位置,其中,指定数值为变形过程中通过如下公式计算得到的总能量项的各个能量值中的最小值:
其中,
Vq=[x0,y0,x1,y1,...,xq-1,yq-1]T
E=EP+λES
式中,E为总能量项;EP为位置项,用于约束每个匹配特征点的第三位置,使每个匹配特征点在第三目标图像区域中的第三位置与对应第一特征点在第一目标图像区域中的第一位置之间的距离最小,(xi,s,yi,s)和(xi,r,yi,r)分别为第一特征点i在第一目标图像区域中的第一位置和与第一特征点i匹配的匹配特征点在第三目标图像中的第三位置;ES为保形项,用于约束对每个矩形网格的变形,使对每个矩形网格的变形为相似变换,Nq为矩形网格的数量;I为单位矩阵;λ为常系数。
在另一个实施例中,确定模块1004包括:
放大单元,用于对第三目标图像区域进行放大操作,得到第一区域;
缩小单元,用于对第三目标图像区域进行缩小操作,得到第二区域;
获取单元,用于将第一区域和第二区域以第三目标图像区域的中心点为基准叠放在一起时未重叠的区域,获取为目标区域;
第四确定单元,用于沿第三目标图像区域的轮廓上像素点的梯度方向,确定目标区域的分割线;
查找单元,用于根据目标区域中各个像素点的像素值,在目标区域中查找路径能量最低的封闭路径,将由封闭路径围成的区域作为第四目标图像区域,其中,封闭路径的起始点为分割线上的第一像素点、结束点为分割线上的第二像素点。
在另一个实施例中,处理模块1005包括:
剖分单元,用于对第四目标图像区域进行三角剖分,得到第四目标图像区域中的多个三角形;
第五确定单元,用于对于一个三角形,根据第四目标图像区域的轮廓上各个像素点的坐标,确定三角形顶点的均值坐标;
第六确定单元,用于根据第四目标图像区域的轮廓上各个像素点的像素值及各个三角形顶点的均值坐标,确定每个三角形的顶点像素值;
第七确定单元,用于根据每个三角形的顶点像素值,采用线性插值法确定第四目标图像区域中每个像素点的像素值;
第八确定单元,用于根据第四目标图像区域中每个像素点的像素值,确定第五目标图像区域。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
请参考图11,其示出了本发明实施例所涉及的终端的结构示意图,该终端可以用于实施上述图2或图3所对应实施例提供的图像校正方法。具体来讲:
终端1100可以包括RF(Radio Frequency,射频)电路110、包括有一个或一个以上计算机可读存储介质的存储器120、输入单元130、显示单元140、传感器150、音频电路160、WiFi(Wireless Fidelity,无线保真)模块170、包括有一个或者一个以上处理核心的处理器180、以及电源190等部件。本领域技术人员可以理解,图11中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器180处理;另外,将涉及上行的数据发送给基站。通常,RF电路110包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(CodeDivision Multiple Access,码分多址)、WCDMA(Wideband Code Division MultipleAccess,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(ShortMessaging Service,短消息服务)等。
存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端1100的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器120还可以包括存储器控制器,以提供处理器180和输入单元130对存储器120的访问。
输入单元130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元130可包括触敏表面131以及其他输入设备132。触敏表面131,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面131上或在触敏表面131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面131。除了触敏表面131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及终端1100的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元140可包括显示面板141,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板141。进一步的,触敏表面131可覆盖显示面板141,当触敏表面131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图11中,触敏表面131与显示面板141是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面131与显示面板141集成而实现输入和输出功能。
终端1100还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在终端1100移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端1100还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路160、扬声器161,传声器162可提供用户与终端1100之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一终端,或者将音频数据输出至存储器120以便进一步处理。音频电路160还可能包括耳塞插孔,以提供外设耳机与终端1100的通信。
WiFi属于短距离无线传输技术,终端1100通过WiFi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图11示出了WiFi模块170,但是可以理解的是,其并不属于终端1100的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器180是终端1100的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行终端1100的各种功能和处理数据,从而对终端进行整体监控。可选的,处理器180可包括一个或多个处理核心;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
终端1100还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源190还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端1100还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端的显示单元是触摸屏显示器,终端还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。所述一个或者一个以上程序包含用于执行以下操作的指令:
获取素材图像和全景图中待校正的第一目标图像区域;
根据素材图像中的像素点和第一目标图像区域中的像素点,从素材图像中截取与第一目标图像区域匹配的第二目标图像区域;
对第二目标图像区域进行变形,得到第三目标图像区域,其中,第三目标图像区域中像素点的位置与对应像素点在第一目标图像区域中的位置之间的距离最小;
根据第三目标图像区域的缩放以及第三目标图像区域轮廓上的像素点,在第三目标图像区域中确定第四目标图像区域;
对第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域;
将第五目标图像区域拼接至全景图中,得到校正后的全景图。
假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,终端的存储器中还包含用于执行以下操作的指令:根据素材图像中的像素点和第一目标图像区域中的像素点,从素材图像中截取与第一目标图像区域匹配的第二目标图像区域,包括:
根据第一目标图像区域中的像素点,提取第一目标图像区域中的至少一个第一特征点;
根据素材图像中的像素点,提取素材图像中的至少一个第二特征点;
将每个第一特征点分别与至少一个第二特征点进行匹配,得到与每个第一特征点匹配的匹配特征点;
从素材图像中截取包括所有匹配特征点的区域作为第二目标图像区域。
在第二种可能的实施方式作为基础而提供的第三种可能的实施方式中,终端的存储器中还包含用于执行以下操作的指令:根据第一目标图像区域中的像素点,提取第一目标图像区域中的至少一个第一特征点,包括:
根据第一目标图像区域中的像素点,通过最大稳定极值区域提取算法,确定第一目标图像区域中的第一最大稳定极值区域;
通过SIFT算法,提取第一最大稳定极值区域中的至少一个第一SIFT特征点,将至少一个第一SIFT特征点作为至少一个第一特征点;
根据素材图像中的像素点,提取素材图像中的至少一个第二特征点,包括:
根据素材图像中的像素点,通过最大稳定极值区域提取算法,确定素材图像中的第二最大稳定极值区域;
通过SIFT算法,提取第二最大稳定极值区域中的至少一个第二SIFT特征点,将至少一个第二SIFT特征点作为至少一个第二特征点。
在第二种可能的实施方式作为基础而提供的第四种可能的实施方式中,终端的存储器中还包含用于执行以下操作的指令:对第二目标图像区域进行变形,得到第三目标图像区域,包括:
对于每个第一特征点,确定第一特征点在第一目标图像区域中的第一位置;
在第二目标图像区域中分割出预设数值的指定大小的矩形网格;
对于每个匹配特征点,根据匹配特征点所在矩形网格的四个顶点的位置,采用双线性插值法确定匹配特征点在第二目标图像区域中的第二位置;
根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,得到与第一特征点匹配的匹配特征点变形后的第三位置,其中,对第一特征点的变形使第一特征点的第一位置与对应匹配特征点的第三位置之间的距离最小,对各个矩形网格的变形为相似变换;
根据每个匹配特征点的第三位置,确定第三目标图像区域。
在第四种可能的实施方式作为基础而提供的第五种可能的实施方式中,终端的存储器中还包含用于执行以下操作的指令:根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,得到与第一特征点匹配的匹配特征点变形后的第三位置,包括:
根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,将总能量项为指定数值时与第一特征点匹配的匹配特征点的位置,作为与第一特征点匹配的匹配特征点变形后的第三位置,其中,指定数值为变形过程中通过如下公式计算得到的总能量项的各个能量值中的最小值:
其中,
Vq=[x0,y0,x1,y1,...,xq-1,yq-1]T
E=EP+λES
式中,E为总能量项;EP为位置项,用于约束每个匹配特征点的第三位置,使每个匹配特征点在第三目标图像区域中的第三位置与对应第一特征点在第一目标图像区域中的第一位置之间的距离最小,(xi,s,yi,s)和(xi,r,yi,r)分别为第一特征点i在第一目标图像区域中的第一位置和与第一特征点i匹配的匹配特征点在第三目标图像中的第三位置;ES为保形项,用于约束对每个矩形网格的变形,使对每个矩形网格的变形为相似变换,Nq为矩形网格的数量;I为单位矩阵;λ为常系数。
在第一种可能的实施方式作为基础而提供的第六种可能的实施方式中,终端的存储器中还包含用于执行以下操作的指令:根据第三目标图像区域的缩放以及第三目标图像区域轮廓上的像素点,在第三目标图像区域中确定第四目标图像区域,包括:
对第三目标图像区域进行放大操作,得到第一区域;
对第三目标图像区域进行缩小操作,得到第二区域;
将第一区域和第二区域以第三目标图像区域的中心点为基准叠放在一起时未重叠的区域,获取为目标区域;
沿第三目标图像区域的轮廓上像素点的梯度方向,确定目标区域的分割线;
根据目标区域中各个像素点的像素值,在目标区域中查找路径能量最低的封闭路径,将由封闭路径围成的区域作为第四目标图像区域,其中,封闭路径的起始点为分割线上的第一像素点、结束点为分割线上的第二像素点。
在第一种可能的实施方式作为基础而提供的第七种可能的实施方式中,终端的存储器中还包含用于执行以下操作的指令:对第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域,包括:
对第四目标图像区域进行三角剖分,得到第四目标图像区域中的多个三角形;
对于一个三角形,根据第四目标图像区域的轮廓上各个像素点的坐标,确定三角形顶点的均值坐标;
根据第四目标图像区域的轮廓上各个像素点的像素值及各个三角形顶点的均值坐标,确定每个三角形的顶点像素值;
根据每个三角形的顶点像素值,采用线性插值法确定第四目标图像区域中每个像素点的像素值;
根据第四目标图像区域中每个像素点的像素值,确定第五目标图像区域。
本发明实施例提供的终端,通过获取全景图中发生错位的第一目标图像区域,并从素材图像中截取出与第一目标图像区域相匹配的第二目标图像区域后,对第二目标图像区域进行变形,得到第三目标图像区域,进一步从第三目标图像中确定拼接至全景图中的最优的第四目标图像区域,并对第四目标图像区域内像素点的像素值进行处理,得到最终的第五目标图像区域后,将第五目标图像区域拼接至全景图中,从而实现对全景图中错位区域的校正,使得可以修复全景图中存在错位的区域,能够避免全景图出现失真的情况,提高了全景图的视觉观赏性。
本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质存储有一个或者一个以上程序,该一个或者一个以上程序被一个或者一个以上的处理器用来执行图像校正方法,该方法包括:
获取素材图像和全景图中待校正的第一目标图像区域;
根据素材图像中的像素点和第一目标图像区域中的像素点,从素材图像中截取与第一目标图像区域匹配的第二目标图像区域;
对第二目标图像区域进行变形,得到第三目标图像区域,其中,第三目标图像区域中像素点的位置与对应像素点在第一目标图像区域中的位置之间的距离最小;
根据第三目标图像区域的缩放以及第三目标图像区域轮廓上的像素点,在第三目标图像区域中确定第四目标图像区域;
对第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域;
将第五目标图像区域拼接至全景图中,得到校正后的全景图。
假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,终端的存储器中还包含用于执行以下操作的指令:根据素材图像中的像素点和第一目标图像区域中的像素点,从素材图像中截取与第一目标图像区域匹配的第二目标图像区域,包括:
根据第一目标图像区域中的像素点,提取第一目标图像区域中的至少一个第一特征点;
根据素材图像中的像素点,提取素材图像中的至少一个第二特征点;
将每个第一特征点分别与至少一个第二特征点进行匹配,得到与每个第一特征点匹配的匹配特征点;
从素材图像中截取包括所有匹配特征点的区域作为第二目标图像区域。
在第二种可能的实施方式作为基础而提供的第三种可能的实施方式中,终端的存储器中还包含用于执行以下操作的指令:根据第一目标图像区域中的像素点,提取第一目标图像区域中的至少一个第一特征点,包括:
根据第一目标图像区域中的像素点,通过最大稳定极值区域提取算法,确定第一目标图像区域中的第一最大稳定极值区域;
通过SIFT算法,提取第一最大稳定极值区域中的至少一个第一SIFT特征点,将至少一个第一SIFT特征点作为至少一个第一特征点;
根据素材图像中的像素点,提取素材图像中的至少一个第二特征点,包括:
根据素材图像中的像素点,通过最大稳定极值区域提取算法,确定素材图像中的第二最大稳定极值区域;
通过SIFT算法,提取第二最大稳定极值区域中的至少一个第二SIFT特征点,将至少一个第二SIFT特征点作为至少一个第二特征点。
在第二种可能的实施方式作为基础而提供的第四种可能的实施方式中,终端的存储器中还包含用于执行以下操作的指令:对第二目标图像区域进行变形,得到第三目标图像区域,包括:
对于每个第一特征点,确定第一特征点在第一目标图像区域中的第一位置;
在第二目标图像区域中分割出预设数值的指定大小的矩形网格;
对于每个匹配特征点,根据匹配特征点所在矩形网格的四个顶点的位置,采用双线性插值法确定匹配特征点在第二目标图像区域中的第二位置;
根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,得到与第一特征点匹配的匹配特征点变形后的第三位置,其中,对第一特征点的变形使第一特征点的第一位置与对应匹配特征点的第三位置之间的距离最小,对各个矩形网格的变形为相似变换;
根据每个匹配特征点的第三位置,确定第三目标图像区域。
在第四种可能的实施方式作为基础而提供的第五种可能的实施方式中,终端的存储器中,还包含用于执行以下操作的指令:根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,得到与第一特征点匹配的匹配特征点变形后的第三位置,包括:
根据第一特征点的第一位置,对与第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,将总能量项为指定数值时与第一特征点匹配的匹配特征点的位置,作为与第一特征点匹配的匹配特征点变形后的第三位置,其中,指定数值为变形过程中通过如下公式计算得到的总能量项的各个能量值中的最小值:
其中,
Vq=[x0,y0,x1,y1,K,xq-1,yq-1]T
E=EP+λES
式中,E为总能量项;EP为位置项,用于约束每个匹配特征点的第三位置,使每个匹配特征点在第三目标图像区域中的第三位置与对应第一特征点在第一目标图像区域中的第一位置之间的距离最小,(xi,s,yi,s)和(xi,r,yi,r)分别为第一特征点i在第一目标图像区域中的第一位置和与第一特征点i匹配的匹配特征点在第三目标图像中的第三位置;ES为保形项,用于约束对每个矩形网格的变形,使对每个矩形网格的变形为相似变换,Nq为矩形网格的数量;I为单位矩阵;λ为常系数。
在第一种可能的实施方式作为基础而提供的第六种可能的实施方式中,终端的存储器中还包含用于执行以下操作的指令:根据第三目标图像区域的缩放以及第三目标图像区域轮廓上的像素点,在第三目标图像区域中确定第四目标图像区域,包括:
对第三目标图像区域进行放大操作,得到第一区域;
对第三目标图像区域进行缩小操作,得到第二区域;
将第一区域和第二区域以第三目标图像区域的中心点为基准叠放在一起时未重叠的区域,获取为目标区域;
沿第三目标图像区域的轮廓上像素点的梯度方向,确定目标区域的分割线;
根据目标区域中各个像素点的像素值,在目标区域中查找路径能量最低的封闭路径,将由封闭路径围成的区域作为第四目标图像区域,其中,封闭路径的起始点为分割线上的第一像素点、结束点为分割线上的第二像素点。
在第一种可能的实施方式作为基础而提供的第七种可能的实施方式中,终端的存储器中还包含用于执行以下操作的指令:对第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域,包括:
对第四目标图像区域进行三角剖分,得到第四目标图像区域中的多个三角形;
对于一个三角形,根据第四目标图像区域的轮廓上各个像素点的坐标,确定三角形顶点的均值坐标;
根据第四目标图像区域的轮廓上各个像素点的像素值及各个三角形顶点的均值坐标,确定每个三角形的顶点像素值;
根据每个三角形的顶点像素值,采用线性插值法确定第四目标图像区域中每个像素点的像素值;
根据第四目标图像区域中每个像素点的像素值,确定第五目标图像区域。
本发明实施例提供的计算机可读存储介质,通过获取全景图中发生错位的第一目标图像区域,并从素材图像中截取出与第一目标图像区域相匹配的第二目标图像区域后,对第二目标图像区域进行变形,得到第三目标图像区域,进一步从第三目标图像中确定拼接至全景图中的最优的第四目标图像区域,并对第四目标图像区域内像素点的像素值进行处理,得到最终的第五目标图像区域后,将第五目标图像区域拼接至全景图中,从而实现对全景图中错位区域的校正,使得可以修复全景图中存在错位的区域,能够避免全景图出现失真的情况,提高了全景图的视觉观赏性。
本发明实施例中提供了一种图形用户接口,该图形用户接口用在终端上,该终端包括触摸屏显示器、存储器和用于执行一个或者一个以上的程序的一个或者一个以上的处理器;该图形用户接口包括:
获取素材图像和全景图中待校正的第一目标图像区域;
根据所述素材图像中的像素点和所述第一目标图像区域中的像素点,从所述素材图像中截取与所述第一目标图像区域匹配的第二目标图像区域;
对所述第二目标图像区域进行变形,得到第三目标图像区域,所述第三目标图像区域中像素点的位置与对应像素点在所述第一目标图像区域中的位置之间的距离最小;
根据所述第三目标图像区域的缩放以及所述第三目标图像区域轮廓上的像素点,在所述第三目标图像区域中确定第四目标图像区域;
对所述第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域;
将所述第五目标图像区域拼接至所述全景图中,得到校正后的全景图。
本发明实施例提供的图形用户接口,通过获取全景图中发生错位的第一目标图像区域,并从素材图像中截取出与第一目标图像区域相匹配的第二目标图像区域后,对第二目标图像区域进行变形,得到第三目标图像区域,进一步从第三目标图像中确定拼接至全景图中的最优的第四目标图像区域,并对第四目标图像区域内像素点的像素值进行处理,得到最终的第五目标图像区域后,将第五目标图像区域拼接至全景图中,从而实现对全景图中错位区域的校正,使得可以修复全景图中存在错位的区域,能够避免全景图出现失真的情况,提高了全景图的视觉观赏性。
需要说明的是:上述实施例提供的图像校正装置在校正图像时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的图像校正装置与图像校正方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种图像校正方法,其特征在于,所述方法包括:
获取素材图像和全景图中待校正的第一目标图像区域;
根据所述素材图像中的像素点和所述第一目标图像区域中的像素点,从所述素材图像中截取与所述第一目标图像区域匹配的第二目标图像区域,所述第二目标图像区域是所述素材图像中包括所有匹配特征点的区域,所述匹配特征点是所述素材图像中与所述第一目标图像区域的至少一个第一特征点相匹配的特征点;
对所述第二目标图像区域进行变形,得到第三目标图像区域,所述第三目标图像区域中像素点的位置与对应像素点在所述第一目标图像区域中的位置之间的距离最小;
根据所述第三目标图像区域的缩放以及所述第三目标图像区域轮廓上的像素点,在所述第三目标图像区域中确定第四目标图像区域;
对所述第四目标图像区域进行三角剖分,得到所述第四目标图像区域中的多个三角形;
对于一个三角形,根据所述第四目标图像区域的轮廓上各个像素点的坐标,确定所述三角形顶点的均值坐标;
根据所述第四目标图像区域的轮廓上各个像素点的像素值及各个三角形顶点的均值坐标,确定每个三角形的顶点像素值;
根据所述每个三角形的顶点像素值,采用线性插值法确定所述第四目标图像区域中每个像素点的像素值;
根据所述第四目标图像区域中每个像素点的像素值,确定第五目标图像区域;
将所述第五目标图像区域拼接至所述全景图中,得到校正后的全景图。
2.根据权利要求1所述的方法,其特征在于,所述根据所述素材图像中的像素点和所述第一目标图像区域中的像素点,从所述素材图像中截取与所述第一目标图像区域匹配的第二目标图像区域,包括:
根据所述第一目标图像区域中的像素点,提取所述第一目标图像区域中的所述至少一个第一特征点;
根据所述素材图像中的像素点,提取所述素材图像中的至少一个第二特征点;
将每个第一特征点分别与所述至少一个第二特征点进行匹配,得到与所述每个第一特征点匹配的所述匹配特征点;
从所述素材图像中截取包括所有所述匹配特征点的区域作为第二目标图像区域。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一目标图像区域中的像素点,提取所述第一目标图像区域中的至少一个第一特征点,包括:
根据所述第一目标图像区域中的像素点,通过最大稳定极值区域提取算法,确定所述第一目标图像区域中的第一最大稳定极值区域;
通过尺度不变特征变换SIFT算法,提取所述第一最大稳定极值区域中的至少一个第一SIFT特征点,将所述至少一个第一SIFT特征点作为所述至少一个第一特征点;
所述根据所述素材图像中的像素点,提取所述素材图像中的至少一个第二特征点,包括:
根据所述素材图像中的像素点,通过所述最大稳定极值区域提取算法,确定所述素材图像中的第二最大稳定极值区域;
通过所述SIFT算法,提取所述第二最大稳定极值区域中的至少一个第二SIFT特征点,将所述至少一个第二SIFT特征点作为所述至少一个第二特征点。
4.根据权利要求2所述的方法,其特征在于,所述对所述第二目标图像区域进行变形,得到第三目标图像区域,包括:
对于每个第一特征点,确定所述第一特征点在所述第一目标图像区域中的第一位置;
在所述第二目标图像区域中分割出预设数值的指定大小的矩形网格;
对于每个匹配特征点,根据所述匹配特征点所在矩形网格的四个顶点的位置,采用双线性插值法确定所述匹配特征点在所述第二目标图像区域中的第二位置;
根据所述第一特征点的第一位置,对与所述第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,得到与所述第一特征点匹配的匹配特征点变形后的第三位置,其中,对所述第一特征点的变形使所述第一特征点的第一位置与对应匹配特征点的第三位置之间的距离最小,对各个矩形网格的变形为相似变换;
根据每个匹配特征点的第三位置,确定第三目标图像区域。
5.根据权利要求4所述的方法,其特征在于,所述根据所述第一特征点的第一位置,对与所述第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,得到与所述第一特征点匹配的匹配特征点变形后的第三位置,包括:
根据所述第一特征点的第一位置,对与所述第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,将总能量项为指定数值时与所述第一特征点匹配的匹配特征点的位置,作为与所述第一特征点匹配的匹配特征点变形后的第三位置,所述指定数值为变形过程中通过如下公式计算得到的总能量项的各个能量值中的最小值:
其中,
<mrow>
<msub>
<mi>E</mi>
<mi>P</mi>
</msub>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>K</mi>
</munderover>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>x</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>s</mi>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>x</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>r</mi>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>+</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>K</mi>
</munderover>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>s</mi>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>y</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>r</mi>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
<mrow>
<msub>
<mi>E</mi>
<mi>S</mi>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<msub>
<mi>N</mi>
<mi>q</mi>
</msub>
</mfrac>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>q</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<msub>
<mi>N</mi>
<mi>q</mi>
</msub>
</munderover>
<mo>|</mo>
<mo>|</mo>
<mrow>
<mo>(</mo>
<msub>
<mi>A</mi>
<mi>q</mi>
</msub>
<msup>
<mrow>
<mo>(</mo>
<mrow>
<msubsup>
<mi>A</mi>
<mi>q</mi>
<mi>T</mi>
</msubsup>
<msub>
<mi>A</mi>
<mi>q</mi>
</msub>
</mrow>
<mo>)</mo>
</mrow>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
<msubsup>
<mi>A</mi>
<mi>q</mi>
<mi>T</mi>
</msubsup>
<mo>-</mo>
<mi>I</mi>
<mo>)</mo>
</mrow>
<msub>
<mi>V</mi>
<mi>q</mi>
</msub>
<mo>|</mo>
<msup>
<mo>|</mo>
<mn>2</mn>
</msup>
</mrow>
<mrow>
<msub>
<mi>A</mi>
<mi>q</mi>
</msub>
<mo>=</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<msub>
<mi>x</mi>
<mn>0</mn>
</msub>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<msub>
<mi>y</mi>
<mn>0</mn>
</msub>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>y</mi>
<mn>0</mn>
</msub>
</mtd>
<mtd>
<msub>
<mi>x</mi>
<mn>0</mn>
</msub>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>x</mi>
<mrow>
<mi>q</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<msub>
<mi>y</mi>
<mrow>
<mi>q</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>y</mi>
<mrow>
<mi>q</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mtd>
<mtd>
<msub>
<mi>x</mi>
<mrow>
<mi>q</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
Vq=[x0,y0,x1,y1,...,xq-1,yq-1]T
E=EP+λES
式中,E为总能量项;EP为位置项,用于约束每个匹配特征点的第三位置,使每个匹配特征点在所述第三目标图像区域中的第三位置与对应第一特征点在第一目标图像区域中的第一位置之间的距离最小,(xi,s,yi,s)和(xi,r,yi,r)分别为第一特征点i在第一目标图像区域中的第一位置和与所述第一特征点i匹配的匹配特征点在第三目标图像中的第三位置;ES为保形项,用于约束对每个矩形网格的变形,使对所述每个矩形网格的变形为相似变换,Nq为矩形网格的数量;I为单位矩阵;λ为常系数。
6.根据权利要求1所述的方法,其特征在于,所述根据所述第三目标图像区域的缩放以及所述第三目标图像区域轮廓上的像素点,在所述第三目标图像区域中确定第四目标图像区域,包括:
对所述第三目标图像区域进行放大操作,得到第一区域;
对所述第三目标图像区域进行缩小操作,得到第二区域;
将所述第一区域和所述第二区域以所述第三目标图像区域的中心点为基准叠放在一起时未重叠的区域,获取为目标区域;
沿所述第三目标图像区域的轮廓上像素点的梯度方向,确定所述目标区域的分割线;
根据所述目标区域中各个像素点的像素值,在所述目标区域中查找路径能量最低的封闭路径,将由所述封闭路径围成的区域作为第四目标图像区域,所述封闭路径的起始点为所述分割线上的第一像素点、结束点为所述分割线上的第二像素点。
7.一种图像校正装置,其特征在于,所述装置包括:
获取模块,用于获取素材图像和全景图中待校正的第一目标图像区域;
截取模块,用于根据所述素材图像中的像素点和所述第一目标图像区域中的像素点,从所述素材图像中截取与所述第一目标图像区域匹配的第二目标图像区域,所述第二目标图像区域是所述素材图像中包括所有匹配特征点的区域,所述匹配特征点是所述素材图像中与所述第一目标图像区域的至少一个第一特征点相匹配的特征点;
变形模块,用于对所述第二目标图像区域进行变形,得到第三目标图像区域,所述第三目标图像区域中像素点的位置与对应像素点在所述第一目标图像区域中的位置之间的距离最小;
确定模块,用于根据所述第三目标图像区域的缩放以及所述第三目标图像区域轮廓上的像素点,在所述第三目标图像区域中确定第四目标图像区域;
处理模块,用于对所述第四目标图像区域中各个像素点的像素值进行处理,得到第五目标图像区域;
拼接模块,用于将所述第五目标图像区域拼接至所述全景图中,得到校正后的全景图;
其中,所述处理模块包括:
剖分单元,用于对所述第四目标图像区域进行三角剖分,得到所述第四目标图像区域中的多个三角形;
第五确定单元,用于对于一个三角形,根据所述第四目标图像区域的轮廓上各个像素点的坐标,确定所述三角形顶点的均值坐标;
第六确定单元,用于根据所述第四目标图像区域的轮廓上各个像素点的像素值及各个三角形顶点的均值坐标,确定每个三角形的顶点像素值;
第七确定单元,用于根据所述每个三角形的顶点像素值,采用线性插值法确定所述第四目标图像区域中每个像素点的像素值;
第八确定单元,用于根据所述第四目标图像区域中每个像素点的像素值,确定第五目标图像区域。
8.根据权利要求7所述的装置,其特征在于,所述截取模块包括:
第一提取单元,用于根据所述第一目标图像区域中的像素点,提取所述第一目标图像区域中的所述至少一个第一特征点;
第二提取单元,用于根据所述素材图像中的像素点,提取所述素材图像中的至少一个第二特征点;
匹配单元,用于将每个第一特征点分别与所述至少一个第二特征点进行匹配,得到与所述每个第一特征点匹配的所述匹配特征点;
截取单元,用于从所述素材图像中截取包括所有所述匹配特征点的区域作为第二目标图像区域。
9.根据权利要求8所述的装置,其特征在于,所述第一提取单元包括:
第一确定子单元,用于根据所述第一目标图像区域中的像素点,通过最大稳定极值区域提取算法,确定所述第一目标图像区域中的第一最大稳定极值区域;
第一提取子单元,用于通过尺度不变特征变换SIFT算法,提取所述第一最大稳定极值区域中的至少一个第一SIFT特征点,将所述至少一个第一SIFT特征点作为所述至少一个第一特征点;
所述第二提取单元包括:
第二确定子单元,用于根据所述素材图像中的像素点,通过所述最大稳定极值区域提取算法,确定所述素材图像中的第二最大稳定极值区域;
第二提取子单元,用于通过所述SIFT算法,提取所述第二最大稳定极值区域中的至少一个第二SIFT特征点,将所述至少一个第二SIFT特征点作为所述至少一个第二特征点。
10.根据权利要求8所述的装置,其特征在于,所述变形模块包括:
第一确定单元,用于对于每个第一特征点,确定所述第一特征点在所述第一目标图像区域中的第一位置;
分割单元,用于在所述第二目标图像区域中分割出预设数值的指定大小的矩形网格;
第二确定单元,用于对于每个匹配特征点,根据所述匹配特征点所在矩形网格的四个顶点的位置,采用双线性插值法确定所述匹配特征点在所述第二目标图像区域中的第二位置;
变形单元,用于根据所述第一特征点的第一位置,对与所述第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,得到与所述第一特征点匹配的匹配特征点变形后的第三位置,其中,对所述第一特征点的变形使所述第一特征点的第一位置与对应匹配特征点的第三位置之间的距离最小,对各个矩形网格的变形为相似变换;
第三确定单元,用于根据每个匹配特征点的第三位置,确定第三目标图像区域。
11.根据权利要求10所述的装置,其特征在于,所述变形单元用于根据所述第一特征点的第一位置,对与所述第一特征点匹配的匹配特征点的第二位置及各个矩形网格进行变形,将总能量项为指定数值时与所述第一特征点匹配的匹配特征点的位置,作为与所述第一特征点匹配的匹配特征点变形后的第三位置,所述指定数值为变形过程中通过如下公式计算得到的总能量项的各个能量值中的最小值:
其中,
<mrow>
<msub>
<mi>E</mi>
<mi>P</mi>
</msub>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>K</mi>
</munderover>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>x</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>s</mi>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>x</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>r</mi>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
<mo>+</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>K</mi>
</munderover>
<msup>
<mrow>
<mo>(</mo>
<msub>
<mi>y</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>s</mi>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mi>y</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>r</mi>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mn>2</mn>
</msup>
</mrow>
<mrow>
<msub>
<mi>E</mi>
<mi>S</mi>
</msub>
<mo>=</mo>
<mfrac>
<mn>1</mn>
<msub>
<mi>N</mi>
<mi>q</mi>
</msub>
</mfrac>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>q</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<msub>
<mi>N</mi>
<mi>q</mi>
</msub>
</munderover>
<mo>|</mo>
<mo>|</mo>
<mrow>
<mo>(</mo>
<msub>
<mi>A</mi>
<mi>q</mi>
</msub>
<msup>
<mrow>
<mo>(</mo>
<mrow>
<msubsup>
<mi>A</mi>
<mi>q</mi>
<mi>T</mi>
</msubsup>
<msub>
<mi>A</mi>
<mi>q</mi>
</msub>
</mrow>
<mo>)</mo>
</mrow>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
<msubsup>
<mi>A</mi>
<mi>q</mi>
<mi>T</mi>
</msubsup>
<mo>-</mo>
<mi>I</mi>
<mo>)</mo>
</mrow>
<msub>
<mi>V</mi>
<mi>q</mi>
</msub>
<mo>|</mo>
<msup>
<mo>|</mo>
<mn>2</mn>
</msup>
</mrow>
<mrow>
<msub>
<mi>A</mi>
<mi>q</mi>
</msub>
<mo>=</mo>
<mfenced open = "[" close = "]">
<mtable>
<mtr>
<mtd>
<msub>
<mi>x</mi>
<mn>0</mn>
</msub>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<msub>
<mi>y</mi>
<mn>0</mn>
</msub>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>y</mi>
<mn>0</mn>
</msub>
</mtd>
<mtd>
<msub>
<mi>x</mi>
<mn>0</mn>
</msub>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
<mtd>
<mo>.</mo>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>x</mi>
<mrow>
<mi>q</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mtd>
<mtd>
<mrow>
<mo>-</mo>
<msub>
<mi>y</mi>
<mrow>
<mi>q</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mrow>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<msub>
<mi>y</mi>
<mrow>
<mi>q</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mtd>
<mtd>
<msub>
<mi>x</mi>
<mrow>
<mi>q</mi>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msub>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
</mtr>
</mtable>
</mfenced>
</mrow>
Vq=[x0,y0,x1,y1,...,xq-1,yq-1]T
E=EP+λES
式中,E为总能量项;EP为位置项,用于约束每个匹配特征点的第三位置,使每个匹配特征点在所述第三目标图像区域中的第三位置与对应第一特征点在第一目标图像区域中的第一位置之间的距离最小,(xi,s,yi,s)和(xi,r,yi,r)分别为第一特征点i在第一目标图像区域中的第一位置和与所述第一特征点i匹配的匹配特征点在第三目标图像中的第三位置;ES为保形项,用于约束对每个矩形网格的变形,使对所述每个矩形网格的变形为相似变换,Nq为矩形网格的数量;I为单位矩阵;λ为常系数。
12.根据权利要求7所述的装置,其特征在于,所述确定模块包括:
放大单元,用于对所述第三目标图像区域进行放大操作,得到第一区域;
缩小单元,用于对所述第三目标图像区域进行缩小操作,得到第二区域;
获取单元,用于将所述第一区域和所述第二区域以所述第三目标图像区域的中心点为基准叠放在一起时未重叠的区域,获取为目标区域;
第四确定单元,用于沿所述第三目标图像区域的轮廓上像素点的梯度方向,确定所述目标区域的分割线;
查找单元,用于根据所述目标区域中各个像素点的像素值,在所述目标区域中查找路径能量最低的封闭路径,将由所述封闭路径围成的区域作为第四目标图像区域,所述封闭路径的起始点为所述分割线上的第一像素点、结束点为所述分割线上的第二像素点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510003719.5A CN104599247B (zh) | 2015-01-04 | 2015-01-04 | 图像校正方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510003719.5A CN104599247B (zh) | 2015-01-04 | 2015-01-04 | 图像校正方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104599247A CN104599247A (zh) | 2015-05-06 |
CN104599247B true CN104599247B (zh) | 2018-04-24 |
Family
ID=53124997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510003719.5A Active CN104599247B (zh) | 2015-01-04 | 2015-01-04 | 图像校正方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104599247B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105516597B (zh) * | 2015-12-30 | 2018-11-13 | 完美幻境(北京)科技有限公司 | 一种全景拍摄处理方法及装置 |
CN105611169B (zh) * | 2015-12-31 | 2019-06-25 | 联想(北京)有限公司 | 图像获取方法和电子设备 |
CN106683058A (zh) * | 2016-12-26 | 2017-05-17 | 上海联影医疗科技有限公司 | 医学图像的校正方法及其装置 |
CN106815809B (zh) * | 2017-03-31 | 2020-08-25 | 联想(北京)有限公司 | 一种图片处理方法和装置 |
CN107945113B (zh) * | 2017-11-17 | 2019-08-30 | 北京天睿空间科技股份有限公司 | 局部图像拼接错位的矫正方法 |
CN107959793B (zh) * | 2017-11-29 | 2021-02-05 | 努比亚技术有限公司 | 一种图像处理方法及终端、存储介质 |
CN110009594B (zh) * | 2019-03-26 | 2021-04-09 | 北京奇艺世纪科技有限公司 | 一种图像处理方法、装置及电子设备 |
CN110619611B (zh) * | 2019-09-09 | 2023-04-18 | 北京迈格威科技有限公司 | 图像校正标定方法、装置、计算机设备和存储介质 |
CN111640056B (zh) * | 2020-05-22 | 2023-04-11 | 构范(厦门)信息技术有限公司 | 一种模型自适应变形方法及系统 |
CN111679777B (zh) * | 2020-06-12 | 2021-09-07 | 贝壳技术有限公司 | 全景图生成方法及系统和对象模型生成方法及系统 |
CN113344068B (zh) * | 2021-05-31 | 2023-10-17 | 北京达佳互联信息技术有限公司 | 素材处理方法、装置、电子设备及计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101276465A (zh) * | 2008-04-17 | 2008-10-01 | 上海交通大学 | 广角图像自动拼接方法 |
CN101877140A (zh) * | 2009-12-18 | 2010-11-03 | 北京邮电大学 | 一种基于全景图的全景虚拟游方法 |
CN103854272A (zh) * | 2012-11-28 | 2014-06-11 | 比亚迪股份有限公司 | 全景泊车系统自动找点匹配方法 |
CN103886569A (zh) * | 2014-04-03 | 2014-06-25 | 北京航空航天大学 | 连续帧多特征点无人机侦察图像并行与匹配精度约束的拼接方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100488685B1 (ko) * | 2002-08-22 | 2005-05-11 | 한국과학기술원 | 자동 영상등록 및 보정을 위한 영상 처리방법 |
-
2015
- 2015-01-04 CN CN201510003719.5A patent/CN104599247B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101276465A (zh) * | 2008-04-17 | 2008-10-01 | 上海交通大学 | 广角图像自动拼接方法 |
CN101877140A (zh) * | 2009-12-18 | 2010-11-03 | 北京邮电大学 | 一种基于全景图的全景虚拟游方法 |
CN103854272A (zh) * | 2012-11-28 | 2014-06-11 | 比亚迪股份有限公司 | 全景泊车系统自动找点匹配方法 |
CN103886569A (zh) * | 2014-04-03 | 2014-06-25 | 北京航空航天大学 | 连续帧多特征点无人机侦察图像并行与匹配精度约束的拼接方法 |
Non-Patent Citations (4)
Title |
---|
A Shape-Preserving Approach to Image Resizing;Guo-Xin Zhang等;《Computer Graphics Forum》;20091231;第28卷(第7期);第1897-1906页 * |
INSPORAMA:INS-Aided Misalignment Correction in Feature-Based Panoramic Image Stitching;Yuan Gao等;《2012 IEEE International Conference on Multimedia and Expo Workshops》;20121231;第659-第664页 * |
基于SIFT特征跟踪匹配的视频拼接方法;张朝伟等;《计算机工程与应用》;20081231;第44卷(第10 期);第169-172、191页 * |
基于特征匹配的全自动图像拼接算法研究;严磊;《中国优秀硕士学位论文全文数据库 信息科技辑》;20100715(第07期);第1-76页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104599247A (zh) | 2015-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104599247B (zh) | 图像校正方法及装置 | |
WO2019233229A1 (zh) | 一种图像融合方法、装置及存储介质 | |
CN106296617B (zh) | 人脸图像的处理方法及装置 | |
CN104134230B (zh) | 一种图像处理方法、装置及计算机设备 | |
CN104135609B (zh) | 辅助拍照方法、装置及终端 | |
CN103488403B (zh) | 界面布局切换方法、装置和移动终端 | |
CN106204423B (zh) | 一种基于增强现实的图片调整方法、装置及终端 | |
CN106778585A (zh) | 一种人脸关键点跟踪方法和装置 | |
CN103455969B (zh) | 图像处理的方法及装置 | |
CN109120818A (zh) | 一种图像处理方法、装置与设备 | |
US20160314099A1 (en) | Webpage generating method and apparatus | |
US9760998B2 (en) | Video processing method and apparatus | |
CN108156374B (zh) | 一种图像处理方法、终端及可读存储介质 | |
CN103714161B (zh) | 图像缩略图的生成方法、装置和终端 | |
CN108346175B (zh) | 一种人脸图像修复方法、装置及存储介质 | |
WO2019109990A1 (zh) | 利用本地图片作为背景的拍照方法、存储介质及移动终端 | |
CN104463105B (zh) | 路牌识别方法及装置 | |
CN103826065B (zh) | 一种图像处理方法和装置 | |
CN106371086B (zh) | 一种测距的方法和装置 | |
CN108195390A (zh) | 一种导航方法、装置及移动终端 | |
CN107111882A (zh) | 条纹集合查找方法、装置以及系统 | |
CN106558039A (zh) | 一种人像处理方法及装置 | |
CN104122981B (zh) | 应用于移动终端的拍照方法、拍照装置及移动终端 | |
CN104751404A (zh) | 一种图像变换的方法及装置 | |
US20200259994A1 (en) | Photo taking control method and system based on mobile terminal, and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20170830 Address after: 100084 Haidian District Tsinghua Yuan Beijing No. 1 Applicant after: Tsinghua University Applicant after: Shenzhen Tencent Computer System Co., Ltd. Address before: The South Road in Guangdong province Shenzhen city Fiyta building 518000 floor 5-10 Nanshan District high tech Zone Applicant before: Shenzhen Tencent Computer System Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |