一种图像的拼接方法和装置转让专利

申请号 : CN201710494989.X

文献号 : CN107292822B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王琳王西颖

申请人 : 北京奇艺世纪科技有限公司

摘要 :

本发明提供了一种图像的拼接方法和装置,本发明根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、以及预先计算得到的在所述第一重叠区域和所述第二重叠区域中对应的像素点的颜色差异值和边缘差异值,构建差异矩阵。由于对应的像素点的偏移值是区分近景物体和远景物体的主要特征,远景物体对应的偏移值较小,近景物体对应的偏移值较大。此外,根据所述差异矩阵,将所述第一重叠区域和所述第二重叠区域进行拼接时,选取的是差异值较小的拼接缝,而差异值较小时,对应的偏移值也较小,此时最优拼接缝会在图像中的远景物体处形成,不会在图像中的近景物体处形成,进而使拼接的效果较自然。

权利要求 :

1.一种图像的拼接方法,其特征在于,包括:

计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值;

根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、以及预先计算得到的在所述第一重叠区域和所述第二重叠区域中对应的像素点的颜色差异值和边缘差异值,构建差异矩阵,其中包括:根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、颜色差异值和边缘差异值,计算得到在所述第一重叠区域和所述第二重叠区域中对应的像素点的差异值;根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的差异值,构建差异矩阵;

根据所述差异矩阵,将所述第一重叠区域和所述第二重叠区域进行拼接。

2.根据权利要求1所述的拼接方法,其特征在于,计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值,包括:将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对;

根据每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标,计算每个所述匹配特征点对的差异向量;

将在所述第一重叠区域中提取的多个第一预设特征点与在所述第二重叠区域中提取的多个第二预设特征点进行匹配,得到多个预设匹配特征点对;

根据每个所述匹配特征点对的差异向量以及每个所述预设匹配特征点对的预设差异向量,计算在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值。

3.根据权利要求2所述的拼接方法,其特征在于,将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对之前,还包括:分别获取所述第一重叠区域和所述第二重叠区域;

分别将所述第一重叠区域和所述第二重叠区域均匀划分成n个区域,其中,n为正整数且n>1;

对所述第一重叠区域划分的每个区域提取预设数量的第一特征点以及对所述第二重叠区域划分的每个区域提取所述预设数量的第二特征点。

4.根据权利要求2所述的拼接方法,其特征在于,将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对,包括:采用尺度不变特征变换SIFT算法,对在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行SIFT特征匹配,得到多个匹配特征点对。

5.根据权利要求2所述的拼接方法,其特征在于,根据每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标,计算每个所述匹配特征点对的差异向量,包括:将每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标的差值作为每个所述匹配特征点对的差异向量。

6.根据权利要求2所述的拼接方法,其特征在于,根据每个所述匹配特征点对的差异向量以及每个所述预设匹配特征点对的预设差异向量,计算在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值,包括:采用Delaunay三角剖分算法,将所述第一重叠区域对应的拓扑结构划分成m个三角形;

其中,划分得到的每个三角形的每个顶点为所述匹配特征点对内的第一特征点、或者为所述预设匹配特征点对内的第一预设特征点,且每个三角形内部有且仅包含一个像素点,m为正整数且m>1;

根据划分得到的每个三角形的三个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形内部的像素点的偏移值;

根据位于每个三角形边上的每个像素点所在的三角形边的两个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形边上的像素点的偏移值。

7.一种图像的拼接装置,其特征在于,包括:

计算模块,用于计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值;

构建模块,用于根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、以及预先计算得到的在所述第一重叠区域和所述第二重叠区域中对应的像素点的颜色差异值和边缘差异值,构建差异矩阵,所述构建模块包括:差异值计算子模块,用于根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、颜色差异值和边缘差异值,计算得到在所述第一重叠区域和所述第二重叠区域中对应的像素点的差异值;构建子模块,用于根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的差异值,构建差异矩阵;

拼接模块,用于根据所述差异矩阵,将所述第一重叠区域和所述第二重叠区域进行拼接。

8.根据权利要求7所述的拼接装置,其特征在于,所述计算模块包括:

第一匹配子模块,用于将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对;

第一计算子模块,用于根据每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标,计算每个所述匹配特征点对的差异向量;

第二匹配子模块,用于将在所述第一重叠区域中提取的多个第一预设特征点与在所述第二重叠区域中提取的多个第二预设特征点进行匹配,得到多个预设匹配特征点对;

第二计算子模块,用于根据每个所述匹配特征点对的差异向量以及每个所述预设匹配特征点对的预设差异向量,计算在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值。

9.根据权利要求8所述的拼接装置,其特征在于,还包括:

获取模块,用于所述第一匹配子模块将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对之前,分别获取所述第一重叠区域和所述第二重叠区域;

划分模块,用于分别将所述第一重叠区域和所述第二重叠区域均匀划分成n个区域,其中,n为正整数且n>1;

提取模块,用于对所述第一重叠区域划分的每个区域提取预设数量的第一特征点以及对所述第二重叠区域划分的每个区域提取所述预设数量的第二特征点。

10.根据权利要求8所述的拼接装置,其特征在于,所述第一匹配子模块包括:匹配单元,用于采用尺度不变特征变换SIFT算法,对在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行SIFT特征匹配,得到多个匹配特征点对。

11.根据权利要求8所述的拼接装置,其特征在于,所述第一计算子模块包括:计算单元,用于将每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标的差值作为每个所述匹配特征点对的差异向量。

12.根据权利要求8所述的拼接装置,其特征在于,所述第二计算子模块包括:三角形划分单元,用于采用Delaunay三角剖分算法,将所述第一重叠区域对应的拓扑结构划分成m个三角形;其中,划分得到的每个三角形的每个顶点为所述匹配特征点对内的第一特征点、或者为所述预设匹配特征点对内的第一预设特征点,且每个三角形内部有且仅包含一个像素点,m为正整数且m>1;

第一偏移值计算单元,用于根据划分得到的每个三角形的三个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形内部的像素点的偏移值;

第二偏移值计算单元,用于根据位于每个三角形边上的每个像素点所在的三角形边的两个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形边上的像素点的偏移值。

说明书 :

一种图像的拼接方法和装置

技术领域

[0001] 本发明涉及图像处理技术领域,更具体的说,涉及一种图像的拼接方法和装置。

背景技术

[0002] 随着智能显示设备的普及,多目摄像头的全景图像拍照已经成为了很多硬件智能显示设备所必须配备的功能。
[0003] 现有技术中,当通过多目摄像头拍摄得到两幅图像时,再将两幅图像的重叠区域进行拼接时,首先求取每幅图像的重叠区域上的每个像素点的灰度值和边缘值(索贝尔sobel边缘值或者canny边缘值),将两幅图像中的重叠区域对应的像素点的灰度值的差值作为颜色差异值,将两幅图像中的重叠区域对应的像素点的边缘值的差值作为边缘差异值,根据每幅图像的重叠区域对应的像素点的颜色差异值和边缘差异值构建差异矩阵,进而根据差异矩阵得到最优拼接缝,能够将两幅图像进行拼接。
[0004] 在图像拼接完成后,发现当两幅图像的重叠区域中有近景物体时,最优拼接缝一般会穿过近景物体,造成图像拼接不自然。
[0005] 因此,亟需一种当两幅图像的重叠区域有近景物体时,图像拼接较自然的方法。

发明内容

[0006] 有鉴于此,本发明提供一种图像的拼接方法和装置,以解决现有技术中当两幅图像的重叠区域有近景物体时,图像拼接不自然的问题。
[0007] 为解决上述技术问题,本发明采用了如下技术方案:
[0008] 一种图像的拼接方法,包括:
[0009] 计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值;
[0010] 根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、以及预先计算得到的在所述第一重叠区域和所述第二重叠区域中对应的像素点的颜色差异值和边缘差异值,构建差异矩阵;
[0011] 根据所述差异矩阵,将所述第一重叠区域和所述第二重叠区域进行拼接。
[0012] 优选地,计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值,包括:
[0013] 将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对;
[0014] 根据每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标,计算每个所述匹配特征点对的差异向量;
[0015] 将在所述第一重叠区域中提取的多个第一预设特征点与在所述第二重叠区域中提取的多个第二预设特征点进行匹配,得到多个预设匹配特征点对;
[0016] 根据每个所述匹配特征点对的差异向量以及每个所述预设匹配特征点对的预设差异向量,计算在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值。
[0017] 优选地,将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对之前,还包括:
[0018] 分别获取所述第一重叠区域和所述第二重叠区域;
[0019] 分别将所述第一重叠区域和所述第二重叠区域均匀划分成n个区域,其中,n为正整数且n>1;
[0020] 对所述第一重叠区域划分的每个区域提取预设数量的第一特征点以及对所述第二重叠区域划分的每个区域提取所述预设数量的第二特征点。
[0021] 优选地,将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对,包括:
[0022] 采用尺度不变特征变换SIFT算法,对在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行SIFT特征匹配,得到多个匹配特征点对。
[0023] 优选地,根据每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标,计算每个所述匹配特征点对的差异向量,包括:
[0024] 将每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标的差值作为每个所述匹配特征点对的差异向量。
[0025] 优选地,根据每个所述匹配特征点对的差异向量以及每个所述预设匹配特征点对的预设差异向量,计算在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值,包括:
[0026] 采用Delaunay三角剖分算法,将所述第一重叠区域对应的拓扑结构划分成m个三角形;其中,划分得到的每个三角形的每个顶点为所述匹配特征点对内的第一特征点、或者为所述预设匹配特征点对内的第一预设特征点,且每个三角形内部有且仅包含一个像素点,m为正整数且m>1;
[0027] 根据划分得到的每个三角形的三个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形内部的像素点的偏移值;
[0028] 根据位于每个三角形边上的每个像素点所在的三角形边的两个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形边上的像素点的偏移值。
[0029] 优选地,根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、以及预先计算得到的在所述第一重叠区域和所述第二重叠区域中对应的像素点的颜色差异值和边缘差异值,构建差异矩阵,包括:
[0030] 根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、颜色差异值和边缘差异值,计算得到在所述第一重叠区域和所述第二重叠区域中对应的像素点的差异值;
[0031] 根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的差异值,构建差异矩阵。
[0032] 一种图像的拼接装置,包括:
[0033] 计算模块,用于计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值;
[0034] 构建模块,用于根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、以及预先计算得到的在所述第一重叠区域和所述第二重叠区域中对应的像素点的颜色差异值和边缘差异值,构建差异矩阵;
[0035] 拼接模块,用于根据所述差异矩阵,将所述第一重叠区域和所述第二重叠区域进行拼接。
[0036] 优选地,所述计算模块包括:
[0037] 第一匹配子模块,用于将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对;
[0038] 第一计算子模块,用于根据每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标,计算每个所述匹配特征点对的差异向量;
[0039] 第二匹配子模块,用于将在所述第一重叠区域中提取的多个第一预设特征点与在所述第二重叠区域中提取的多个第二预设特征点进行匹配,得到多个预设匹配特征点对;
[0040] 第二计算子模块,用于根据每个所述匹配特征点对的差异向量以及每个所述预设匹配特征点对的预设差异向量,计算在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值。
[0041] 优选地,还包括:
[0042] 获取模块,用于所述第一匹配子模块将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对之前,分别获取所述第一重叠区域和所述第二重叠区域;
[0043] 划分模块,用于分别将所述第一重叠区域和所述第二重叠区域均匀划分成n个区域,其中,n为正整数且n>1;
[0044] 提取模块,用于对所述第一重叠区域划分的每个区域提取预设数量的第一特征点以及对所述第二重叠区域划分的每个区域提取所述预设数量的第二特征点。
[0045] 优选地,所述第一匹配子模块包括:
[0046] 匹配单元,用于采用尺度不变特征变换SIFT算法,对在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行SIFT特征匹配,得到多个匹配特征点对。
[0047] 优选地,所述第一计算子模块包括:
[0048] 计算单元,用于将每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标的差值作为每个所述匹配特征点对的差异向量。
[0049] 优选地,所述第二计算子模块包括:
[0050] 三角形划分单元,用于采用Delaunay三角剖分算法,将所述第一重叠区域对应的拓扑结构划分成m个三角形;其中,划分得到的每个三角形的每个顶点为所述匹配特征点对内的第一特征点、或者为所述预设匹配特征点对内的第一预设特征点,且每个三角形内部有且仅包含一个像素点,m为正整数且m>1;
[0051] 第一偏移值计算单元,用于根据划分得到的每个三角形的三个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形内部的像素点的偏移值;
[0052] 第二偏移值计算单元,用于根据位于每个三角形边上的每个像素点所在的三角形边的两个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形边上的像素点的偏移值。
[0053] 优选地,所述构建模块包括:
[0054] 差异值计算子模块,用于根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、颜色差异值和边缘差异值,计算得到在所述第一重叠区域和所述第二重叠区域中对应的像素点的差异值;
[0055] 构建子模块,用于根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的差异值,构建差异矩阵。
[0056] 相较于现有技术,本发明具有以下有益效果:
[0057] 本发明提供了一种图像的拼接方法和装置,本发明根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、以及预先计算得到的在所述第一重叠区域和所述第二重叠区域中对应的像素点的颜色差异值和边缘差异值,构建差异矩阵。由于对应的像素点的偏移值是区分近景物体和远景物体的主要特征,远景物体对应的偏移值较小,近景物体对应的偏移值较大。此外,根据所述差异矩阵,将所述第一重叠区域和所述第二重叠区域进行拼接时,选取的是差异值较小的拼接缝,而差异值较小时,对应的偏移值也较小,此时最优拼接缝会在图像中的远景物体处形成,不会在图像中的近景物体处形成,进而使拼接的效果较自然。

附图说明

[0058] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0059] 图1为本发明提供的一种图像的拼接方法的方法流程图;
[0060] 图2为本发明提供的另一种图像的拼接方法的方法流程图;
[0061] 图3为本发明提供的又一种图像的拼接方法的方法流程图;
[0062] 图4为本发明提供的一种图像的拼接装置的结构示意图;
[0063] 图5为本发明提供的另一种图像的拼接装置的结构示意图。

具体实施方式

[0064] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0065] 本发明实施例提供了一种图像的拼接方法,参照图1,包括:
[0066] S11、计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值;
[0067] 其中,在第一重叠区域会有多个像素点,在第二重叠区域会有多个像素点,第一重叠区域中的多个像素点与第二重叠区域中的多个像素点会有对应关系,对应于同一拍摄物的两个像素点为对应的像素点,如第一重叠区域中的一个像素点与第二重叠区域中的一个像素点均为树尖的像素点,则这两个像素点为对应的像素点。
[0068] S12、根据在第一重叠区域和第二重叠区域中对应的像素点的偏移值、以及预先计算得到的在第一重叠区域和第二重叠区域中对应的像素点的颜色差异值和边缘差异值,构建差异矩阵;
[0069] 具体的,步骤S12,包括:
[0070] 1)根据在第一重叠区域和第二重叠区域中对应的像素点的偏移值、颜色差异值、边缘差异值,计算得到在第一重叠区域和第二重叠区域中对应的像素点的差异值;
[0071] 其中,对应的像素点的差异值代表对应的像素点的差异大小。
[0072] 具体的,计算在第一重叠区域和第二重叠区域中对应的像素点的差异值时,分别为对应的像素点的偏移值、颜色差异值和边缘差异值设置有权重,其中,对应的像素点的偏移值的权重最大。
[0073] 需要说明的一点是,在第一重叠区域和第二重叠区域中对应的像素点的颜色差异值和边缘差异值是需要提前计算出来,其中,将第一重叠区域和第二重叠区域对应的像素点的灰度值的差值作为颜色差异值,将第一重叠区域和第二重叠区域对应的像素点的边缘值的差值作为边缘差异值。
[0074] 将在第一重叠区域和第二重叠区域中对应的像素点的偏移值、颜色差异值、边缘差异值分别乘以各自对应的权重,即得到在第一重叠区域和第二重叠区域中对应的像素点的差异值。
[0075] 2)根据在第一重叠区域和第二重叠区域中对应的像素点的差异值,构建差异矩阵。
[0076] 将在第一重叠区域和第二重叠区域中对应的像素点的差异值,按照像素点的位置关系进行排列,得到差异矩阵。
[0077] 本步骤中,首先求取出在第一重叠区域和第二重叠区域中对应的像素点的差异值,进而为构建差异矩阵提供数值依据。
[0078] S13、根据差异矩阵,将第一重叠区域和第二重叠区域进行拼接。
[0079] 根据差异矩阵,可以采用动态规划算法将第一重叠区域和第二重叠区域进行拼接。
[0080] 具体的,根据差异矩阵,采用动态规划算法求取最优拼接缝,得到最优拼接缝后,将第一重叠区域和第二重叠区域按照最优拼接缝进行拼接即可。
[0081] 本实施例中,根据在第一重叠区域和第二重叠区域中对应的像素点的偏移值、以及预先计算得到的在第一重叠区域和第二重叠区域中对应的像素点的颜色差异值和边缘差异值,构建差异矩阵。由于对应的像素点的偏移值是区分近景物体和远景物体的主要特征,远景物体对应的偏移值较小,近景物体对应的偏移值较大。此外,根据差异矩阵,将第一重叠区域和第二重叠区域进行拼接时,选取的是差异值较小的拼接缝,而差异值较小时,对应的偏移值也较小,此时最优拼接缝会在图像中的远景物体处形成,不会在图像中的近景物体处形成,进而使拼接的效果较自然。
[0082] 在上述实施例的基础上,步骤S11包括:
[0083] S21、将在第一重叠区域中提取的多个第一特征点与在第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对;
[0084] 其中,第一重叠区域为待拼接的两幅图像中的第一幅图像中的重叠区域;第二重叠区域为待拼接的两幅图像中的第二幅图像中的重叠区域。
[0085] 具体的,S21包括:
[0086] 采用尺度不变特征变换SIFT算法,对在第一重叠区域中提取的多个第一特征点与在第二重叠区域中提取的多个第二特征点进行SIFT特征匹配,得到多个匹配特征点对。
[0087] 需要说明的是,得到多个匹配特征点对后,可以采用随机采用一致性RANSAC算法来剔除匹配奇异点,具体的,匹配奇异点是得到的多个匹配特征点对中,匹配度较差的匹配特征点对。匹配奇异点会使后期图像拼接时,拼接效果不佳,进而需要剔除匹配奇异点。
[0088] 本步骤中,采用尺度不变特征变换SIFT算法得到多个匹配特征点对的方式为得到多个匹配特征点对的一种实施方式,只要是能够得到多个匹配特征点对的实施方式均属于本发明的保护范围。
[0089] 可选的,在本实施例的基础上,步骤S21之前,还包括:
[0090] 1)分别获取所述第一重叠区域和所述第二重叠区域;
[0091] 2)分别将第一重叠区域和第二重叠区域均匀划分成n个区域,其中,n为正整数且n>1;
[0092] 2)对第一重叠区域划分的每个区域提取预设数量的第一特征点以及对第二重叠区域划分的每个区域提取预设数量的第二特征点。
[0093] 具体的,由于在提取第一特征点或者第二特征点时,提取的是亮度比较大或者是边缘强度较大的像素点,当亮度比较大或者是边缘强度较大的像素点比较集中时,在后期求取在第一重叠区域和第二重叠区域中对应的像素点的偏移值时,会出现特征点位置较集中,不容易计算对应的像素点的偏移值的情况,因此需要将提取的特征点均匀分布。
[0094] 将获取的第一重叠区域和获取的第二重叠区域均匀划分成n个区域,其中,划分时,可以将第一重叠区域和第二重叠区域划分成三角形、长方形或者多边形等,只要保证划分时是均匀划分即可。均匀划分是为了保证提取的特征点在整个区域中分布较均匀,不会出现特征点位置较集中,不容易计算对应的像素点的偏移值的情况。
[0095] 此后,对第一重叠区域划分的每个区域提取预设数量的第一特征点以及对第二重叠区域划分的每个区域提取预设数量的第二特征点。
[0096] 其中预设数量是工作人员根据待拼接的两幅图像的图像复杂程度进行选取的。
[0097] 本实施例中,分别将获取的第一重叠区域和获取的第二重叠区域均匀划分成n个区域,对第一重叠区域划分的每个区域提取预设数量的第一特征点以及对第二重叠区域划分的每个区域提取预设数量的第二特征点。能够保证提取的特征点均匀分布在第一重叠区域和第二重叠区域。
[0098] S22、根据每个匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标,计算每个匹配特征点对的差异向量;
[0099] 具体的,步骤S22包括:
[0100] 将每个匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标的差值作为每个匹配特征点对的差异向量。
[0101] 详细来说,每个匹配特征点对在第一重叠区域中的第一特征点有一个空间位置坐标,每个匹配特征点对在第二重叠区域中的第二特征点有一个空间位置坐标,将第一特征点的空间位置坐标与第二特征点的空间位置坐标的差值作为每个匹配特征点对的差异向量。
[0102] 其中,差异向量代表了每个匹配特征点对的空间位置差值。
[0103] S23、将在第一重叠区域中提取的多个第一预设特征点与在第二重叠区域中提取的多个第二预设特征点进行匹配,得到多个预设匹配特征点对;
[0104] 其中,在第一重叠区域中会选取多个第一预设特征点,在第二重叠区域中会选取多个第二预设特征点,多个第一预设特征点与多个第二预设特征点会对应组成多个预设匹配特征点对。
[0105] 需要说明的是,每个预设匹配特征点对的预设差异向量为(∞,∞)。选取多个预设匹配特征点对的目的是为了使最终拼接时,最优拼接缝不在第一重叠区域和第二重叠区域之外的区域。
[0106] S24、根据每个匹配特征点对的差异向量以及每个预设匹配特征点对的预设差异向量,计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值。
[0107] 具体的,选取的每个匹配特征点对的差异向量以及每个预设匹配特征点对的预设差异向量知道了,但是在第一重叠区域、第二重叠区域内其余的对应的像素点的差异值是未知的。其中,差异向量和差异值是可以相互推导的。
[0108] 其中,差异值与在第一重叠区域和第二重叠区域中对应的像素点的偏移值有关,所以需要计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值。
[0109] 本实施例中,通过每个匹配特征点对的差异向量以及每个预设匹配特征点对的预设差异向量,能够计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值,进而能够为构建差异矩阵提供数据支持。
[0110] 可选的,在上述任一实施例的基础上,参照图3,步骤S24包括:
[0111] S31、采用Delaunay三角剖分算法,将第一重叠区域对应的拓扑结构划分成m个三角形;
[0112] 其中,划分得到的每个三角形的每个顶点为匹配特征点对内的第一特征点,或者为预设匹配特征点对内的第一预设特征点、且每个三角形内部有且仅包含一个像素点,m为正整数且m>1。
[0113] 需要说明的是,第一重叠区域对应的拓扑结构与第二重叠区域对应的拓扑结构相同,此时也可以采用Delaunay三角剖分算法,将第二重叠区域对应的拓扑结构划分成m个三角形。
[0114] S32、根据划分得到的每个三角形的三个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形内部的像素点的偏移值;
[0115] 第一重叠区域的拓扑结构中包含多个像素点,每个像素点可能位于划分得到的三角形的内部或者是三角形边上,当一个像素点位于三角形内部时,根据划分得到的每个三角形的三个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,即(Δx,Δy),根据Δx和Δy的数值,采用双性差值算法,计算位于每个三角形内部的像素点的偏移值。
[0116] S33、根据位于每个三角形边上的每个像素点所在的三角形边的两个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形边上的像素点的偏移值。
[0117] 当一个像素点位于三角形边上时,由于可能会同时处于两个三角形的公共边上,此时采用位于三角形内部的像素点的偏移值的计算方法,就会存在不知道选哪个三角形的顶点的问题。因此,当计算位于三角形边上的像素点的偏移值时,采用该像素点所在的三角形边的两个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形边上的像素点的偏移值。
[0118] 本实施例中,采用Delaunay三角剖分算法,将第一重叠区域对应的拓扑结构划分成m个三角形,进而能够根据双性差值算法,计算位于每个三角形边上和内部的像素点的偏移值,为构建差异矩阵提供依据。
[0119] 可选的,本发明的另一实施例中提供了一种图像的拼接装置,参照图4,包括:
[0120] 计算模块101,用于计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值;
[0121] 构建模块102,用于根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、以及预先计算得到的在所述第一重叠区域和所述第二重叠区域中对应的像素点的颜色差异值和边缘差异值,构建差异矩阵;
[0122] 拼接模块103,用于根据所述差异矩阵,将所述第一重叠区域和所述第二重叠区域进行拼接。
[0123] 可选的,进一步,所述构建模块102包括:
[0124] 差异值计算子模块,用于根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值、颜色差异值和边缘差异值,计算得到在所述第一重叠区域和所述第二重叠区域中对应的像素点的差异值;
[0125] 构建子模块,用于根据在所述第一重叠区域和所述第二重叠区域中对应的像素点的差异值,构建差异矩阵。
[0126] 本实施例中,根据在第一重叠区域和第二重叠区域中对应的像素点的偏移值、以及预先计算得到的在第一重叠区域和第二重叠区域中对应的像素点的颜色差异值和边缘差异值,构建差异矩阵。由于对应的像素点的偏移值是区分近景物体和远景物体的主要特征,远景物体对应的偏移值较小,近景物体对应的偏移值较大。此外,根据差异矩阵,将第一重叠区域和第二重叠区域进行拼接时,选取的是差异值较小的拼接缝,而差异值较小时,对应的偏移值也较小,此时最优拼接缝会在图像中的远景物体处形成,不会在图像中的近景物体处形成,进而使拼接的效果较自然。
[0127] 需要说明的是,本实施例中的各个模块的工作过程,请参照上述实施例中的相应部分,在此不再赘述。
[0128] 可选的,本发明的另一实施例中,参照图5,所述计算模块101包括:
[0129] 第一匹配子模块1011,用于将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对;
[0130] 第一计算子模块1012,用于根据每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标,计算每个所述匹配特征点对的差异向量;
[0131] 第二匹配子模块1013,用于将在所述第一重叠区域中提取的多个第一预设特征点与在所述第二重叠区域中提取的多个第二预设特征点进行匹配,得到多个预设匹配特征点对;
[0132] 第二计算子模块1014,用于根据每个所述匹配特征点对的差异向量以及每个所述预设匹配特征点对的预设差异向量,计算在所述第一重叠区域和所述第二重叠区域中对应的像素点的偏移值。
[0133] 可选的,进一步,还包括:
[0134] 获取模块,用于所述第一匹配子模块将在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行匹配,得到多个匹配特征点对之前,分别获取所述第一重叠区域和所述第二重叠区域;
[0135] 划分模块,用于分别将所述第一重叠区域和所述第二重叠区域均匀划分成n个区域,其中,n为正整数且n>1;
[0136] 提取模块,用于对所述第一重叠区域划分的每个区域提取预设数量的第一特征点以及对所述第二重叠区域划分的每个区域提取所述预设数量的第二特征点。
[0137] 可选的,进一步,所述第一匹配子模块1011包括:
[0138] 匹配单元,用于采用尺度不变特征变换SIFT算法,对在所述第一重叠区域中提取的多个第一特征点与在所述第二重叠区域中提取的多个第二特征点进行SIFT特征匹配,得到多个匹配特征点对。
[0139] 可选的,进一步,所述第一计算子模块1012包括:
[0140] 计算单元,用于将每个所述匹配特征点对内第一特征点的空间位置坐标与第二特征点的空间位置坐标的差值作为每个所述匹配特征点对的差异向量。
[0141] 本实施例中,通过每个匹配特征点对的差异向量以及每个预设匹配特征点对的预设差异向量,能够计算在第一重叠区域和第二重叠区域中对应的像素点的偏移值,进而能够为构建差异矩阵提供数据支持。
[0142] 需要说明的是,本实施例中各个模块或者单元的工作过程,请参照上述实施例中的相应说明,在此不再赘述。
[0143] 可选的,本发明的另一实施例中,所述第二计算子模块1014包括:
[0144] 三角形划分单元,用于采用Delaunay三角剖分算法,将所述第一重叠区域对应的拓扑结构划分成m个三角形;其中,划分得到的每个三角形的每个顶点为所述匹配特征点对内的第一特征点、或者为所述预设匹配特征点对内的第一预设特征点,且每个三角形内部有且仅包含一个像素点,m为正整数且m>1;
[0145] 第一偏移值计算单元,用于根据划分得到的每个三角形的三个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形内部的像素点的偏移值;
[0146] 第二偏移值计算单元,用于根据位于每个三角形边上的每个像素点所在的三角形边的两个顶点分别对应的匹配特征点对的差异向量或者每个预设匹配特征点对的预设差异向量,采用双性差值算法,计算位于每个三角形边上的像素点的偏移值。
[0147] 本实施例中,采用Delaunay三角剖分算法,将第一重叠区域对应的拓扑结构划分成m个三角形,进而能够根据双性差值算法,计算位于每个三角形边上和内部的像素点的偏移值,为构建差异矩阵提供依据。
[0148] 需要说明的是,本实施例中各个模块或者单元的工作过程,请参照上述实施例中的相应说明,在此不再赘述。
[0149] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。