CN109242769B - 一种图像处理方法和装置 - Google Patents
一种图像处理方法和装置 Download PDFInfo
- Publication number
- CN109242769B CN109242769B CN201811520307.9A CN201811520307A CN109242769B CN 109242769 B CN109242769 B CN 109242769B CN 201811520307 A CN201811520307 A CN 201811520307A CN 109242769 B CN109242769 B CN 109242769B
- Authority
- CN
- China
- Prior art keywords
- point
- target
- target image
- image layer
- image
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 17
- 241000251468 Actinopterygii Species 0.000 claims abstract description 245
- 238000012546 transfer Methods 0.000 claims abstract description 31
- 238000000605 extraction Methods 0.000 claims abstract description 7
- 238000013507 mapping Methods 0.000 claims description 131
- 238000000034 method Methods 0.000 claims description 83
- 230000007704 transition Effects 0.000 claims description 62
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 50
- 239000011159 matrix material Substances 0.000 claims description 50
- 230000009466 transformation Effects 0.000 claims description 49
- 238000012545 processing Methods 0.000 claims description 28
- 238000012876 topography Methods 0.000 claims description 21
- 238000010276 construction Methods 0.000 claims description 15
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 claims description 8
- 239000010931 gold Substances 0.000 claims description 8
- 229910052737 gold Inorganic materials 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 230000008901 benefit Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 34
- 238000010586 diagram Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 8
- 238000012937 correction Methods 0.000 description 8
- 239000011521 glass Substances 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G06T3/047—
-
- G06T3/147—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20016—Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
Abstract
本发明实施例公开了一种图像处理方法和装置,所述方法包括:构建第一鱼眼图像和第二鱼眼图像对应的第一金字塔模型和第二金字塔模型;获得第一金字塔模型中的初始图像特征点对应的目标图像特征点,在第二金字塔模型的目标图像层中获得初始图像特征点对应的极线,基于目标图像特征点和极线在目标图像层中搜索目标最优点;若目标图像层的层数大于目标图像特征点的层数,将目标最优点与极线投影到目标图像层的下一图像层,确定在下一图像层中的目标最优点,直至目标最优点所在层次与目标图像特征点的层次一致,则建立目标图像特征点与此时的目标最优点之间的位置匹配关系。采用本发明,可以提高图像特征提取的准确性,同时提高图像数据处理的效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种图像处理方法和装置。
背景技术
随着图像技术的不断发展,图像技术的应用领域也越发广泛,对于某些需要在多维空间进行定位的产品,比如VR头盔、快递机器人、自动驾驶车等,都需要基于鱼眼图像特征点的匹配进行定位,但是此间匹配的过程比较复杂,计算机相关软件的计算量大且繁复,因此对鱼眼图像特征点进行匹配的技术方案的准确性和效率都提出了更高的要求。
现有中对鱼眼图像特征点进行匹配的方案通常为:对原始的鱼眼图像进行畸变校正,提取校正之后的鱼眼图像上的特征点和描述子,进行描述子之间的匹配,通过描述子之间的匹配结果确定特征点之间的匹配位置从而实现定位。
由上可知,由于进行畸变校正之后的鱼眼图像的图像信息会有所丢失,而且提取图像的描述子计算量较大,通过提取到的特征点和描述子进行位置匹配会导致定位不准确且效率不高。
发明内容
本发明实施例提供一种图像处理方法和装置,可以提高图像特征点匹配的准确性和效率。
本发明一方面提供了一种图像处理方法,包括:
构建第一鱼眼图像对应的第一金字塔模型,构建第二鱼眼图像对应的第二金字塔模型,所述第一金字塔模型和所述第二金字塔模型分别包括多个不同分辨率的图像层;
提取所述第一鱼眼图像在所述第一金字塔模型的任一图像层的初始图像特征点,将所述第二金字塔模型中具有最小分辨率的图像层确定为目标图像层;
根据鱼眼相机模型和三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到初始映射点,并根据所述初始图像特征点、所述初始映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵;
以所述初始映射点为中心点在所述目标图像层中获取过渡图像块,根据所述仿射变换矩阵对应的逆仿射变换矩阵,将所述过渡图像块映射到所述初始图像特征点所在图像层,在所述初始图像特征点所在图像层中得到所述过渡图像块对应的目标图像块,并确定所述目标图像块的中心点为目标图像特征点;
获取所述初始图像特征点映射到所述目标图像层中的目标极线;
根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,在所述第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。
其中,所述构建第一鱼眼图像对应的第一金字塔模型,构建第二鱼眼图像对应的第二金字塔模型,包括:
获取所述第一鱼眼图像和所述第二鱼眼图像;
根据分辨率倍数阈值构建所述第一鱼眼图像对应的所述第一金字塔模型,所述第一金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值;
根据分辨率倍数阈值构建所述第二鱼眼图像对应的所述第二金字塔模型,所述第二金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值。
其中,所述根据鱼眼相机模型和三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到初始映射点,并根据所述初始图像特征点、所述初始映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵,包括:
根据所述鱼眼相机模型和所述三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到所述初始映射点;
在所述初始图像特征点所在图像层中获取关联特征点,所述关联特征点是以所述初始图像特征点为中心的附近特征点;
根据所述鱼眼相机模型和所述三维空间将所述关联特征点映射到所述目标图像层,在所述目标图像层中得到关联映射点;
根据所述初始图像特征点与所述关联特征点之间的位置关系、所述初始映射点以及所述关联映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵。
其中,所述根据所述鱼眼相机模型和所述三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到所述初始映射点,包括:
根据所述鱼眼相机模型、鱼眼相机内参,将所述初始图像特征点映射到三维平面上,得到初始三维点;
根据所述第一鱼眼图像对应的鱼眼相机和所述第二鱼眼图像对应的鱼眼相机之间的相对位置、相对旋转信息,将所述初始三维点转换到所述第二鱼眼图像的相机坐标系下,得到过渡三维点;
将所述过渡三维点映射到所述第二鱼眼图像的相机坐标系下具有单位深度信息的平面上,得到过渡映射点;
对所述过渡映射点进行单点坐标变换,并根据所述鱼眼相机模型将变换后的过渡映射点投影到所述目标图像层中,得到所述初始映射点。
其中,所述获取所述初始图像特征点映射到所述目标图像层中的目标极线,包括:
将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最小深度信息的平面上,得到最小映射点;
将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最大深度信息的平面上,得到最大映射点;
将所述最小映射点和所述最大映射点的连线,确定为初始极线线段;
对所述初始极线线段中的每个极线点进行单点坐标变换,并根据所述鱼眼相机模型将变换后的每个极线点投影到所述目标图像层中,得到所述目标极线。
其中,所述根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,在所述第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系,包括:
根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,确定所述目标图像特征点在所述目标图像层中的最优点,作为目标最优点;
若所述目标图像层的层数大于所述目标图像特征点在所述第一金字塔模型中的层数,则将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层,基于投影后的目标最优点与投影后的目标极线确定在所述下一图像层中的最优点,并将所述下一图像层确定为所述目标图像层,将所述下一图像层中的最优点确定为所述目标最优点;
若所述目标图像层在所述第二金字塔模型中的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致,则建立所述目标图像特征点与最后一次所确定的所述目标最优点之间的位置匹配关系。
其中,所述将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层,基于投影后的目标最优点与投影后的目标极线确定在所述下一图像层中的目标最优点,包括:
将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层;
基于目标搜索范围,在投影后的目标极线中,确定以投影后的目标最优点为中心点的待搜索极线线段;
获取在所述下一图像层中的所述待搜索极线线段上的目标最优点。
其中,所述建立所述目标图像特征点与最后一次所确定的所述目标最优点之间的位置匹配关系,包括:
以所述目标图像特征点为中心在所述目标图像块中获取局部图像块,并将最后一次所确定的所述目标最优点作为调整点,并在所述调整点所在的图像层中获取以所述调整点为中心点的调整图像块,所述调整图像块的尺寸与所述局部图像块的尺寸相同;
根据雅克比、所述调整图像块中的像素值、所述局部图像块中的像素值,确定所述调整图像块的位置调整参数,根据所述位置调整参数调整所述调整图像块的位置;
当所述位置调整参数对应的模满足收敛条件时,将位置调整后的所述调整图像块的中心点确定为已调整最优点,建立所述目标图像特征点与所述已调整最优点之间的位置匹配关系。
其中,所述根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,确定所述目标图像特征点在所述目标图像层中的最优点,作为目标最优点,包括:
基于所述目标极线确定所述目标图像特征点在所述目标图像层中对应的多个待匹配点,并根据所述多个待匹配点生成每个待匹配点分别对应的待定图像块;
分别获取每个待定图像块与所述目标图像块之间的相似度,根据所述相似度确定所述多个待匹配点中的最优待匹配点和次优待匹配点;
若所述最优待匹配点和所述次优待匹配点满足目标条件,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
其中,所述基于所述目标极线确定所述目标图像特征点在所述目标图像层中对应的多个待匹配点,包括:
在所述目标极线上确定待搜索极线线段,在所述待搜索极线线段上按照像素长度阈值依次搜索像素点,并将搜索到的像素点确定为所述目标图像特征点在所述目标图像层上对应的多个待匹配点。
其中,所述根据所述多个待匹配点生成每个待匹配点分别对应的待定图像块,包括:
通过对所述多个待匹配点作双线性插值处理,分别生成以每个待匹配点为中心点的待定图像块,所述待定图像块的尺寸与所述目标图像块的尺寸相同;
则所述分别获取每个待定图像块与所述目标图像块之间的相似度包括:
根据所述每个待定图像块中的像素值和所述目标图像块中的像素值,分别获取所述每个待定图像块与所述目标图像块之间的相似度。
其中,所述若所述最优待匹配点和次优待匹配点满足目标条件,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点,包括:
获取所述最优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第一相似度,并获取所述次优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第二相似度;
若所述第一相似度大于相似度阈值,且所述第一相似度与所述第二相似度之间的差值大于差值阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
其中,所述若所述最优待匹配点和次优待匹配点满足目标条件,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点,包括:
获取所述最优待匹配点与所述次优待匹配点所在位置之间的像素距离;
若所述像素距离小于像素距离阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
本发明另一方面提供了一种图像处理装置,包括:
模型构建模块,用于构建第一鱼眼图像对应的第一金字塔模型,构建第二鱼眼图像对应的第二金字塔模型,所述第一金字塔模型和所述第二金字塔模型分别包括多个不同分辨率的图像层;
特征点提取模块,用于提取所述第一鱼眼图像在所述第一金字塔模型的任一图像层的初始图像特征点,将所述第二金字塔模型中具有最小分辨率的图像层确定为目标图像层;
矩阵生成模块,用于根据鱼眼相机模型和三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到初始映射点,并根据所述初始图像特征点、所述初始映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵;
特征点确定模块,用于以所述初始映射点为中心点在所述目标图像层中获取过渡图像块,根据所述仿射变换矩阵对应的逆仿射变换矩阵,将所述过渡图像块映射到所述初始图像特征点所在图像层,在所述初始图像特征点所在图像层中得到所述过渡图像块对应的目标图像块,并确定所述目标图像块的中心点为目标图像特征点;
极线获取模块,用于获取所述初始图像特征点映射到所述目标图像层中的目标极线;
最优点匹配模块,用于根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,在所述第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。
其中,所述模型构建单元包括:
第一获取单元,用于获取所述第一鱼眼图像和所述第二鱼眼图像;
第一构建单元,用于根据分辨率倍数阈值构建所述第一鱼眼图像对应的所述第一金字塔模型,所述第一金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值;
第二构建单元,用于根据分辨率倍数阈值构建所述第二鱼眼图像对应的所述第二金字塔模型,所述第二金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值。
其中,所述矩阵生成模块包括:
第一映射单元,用于根据所述鱼眼相机模型和所述三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到所述初始映射点;
第二获取单元,用于在所述初始图像特征点所在图像层中获取关联特征点,所述关联特征点是以所述初始图像特征点为中心的附近特征点;
第二映射单元,用于根据所述鱼眼相机模型和所述三维空间将所述关联特征点映射到所述目标图像层,在所述目标图像层中得到关联映射点;
生成单元,用于根据所述初始图像特征点与所述关联特征点之间的位置关系、所述初始映射点以及所述关联映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵。
其中,所述第一映射单元包括:
第一映射子单元,用于根据所述鱼眼相机模型、鱼眼相机内参,将所述初始图像特征点映射到三维平面上,得到初始三维点;
转换子单元,用于根据所述第一鱼眼图像对应的鱼眼相机和所述第二鱼眼图像对应的鱼眼相机之间的相对位置、相对旋转信息,将所述初始三维点转换到所述第二鱼眼图像的相机坐标系下,得到过渡三维点;
第二映射子单元,用于将所述过渡三维点映射到所述第二鱼眼图像的相机坐标系下具有单位深度信息的平面上,得到过渡映射点;
处理子单元,用于对所述过渡映射点进行单点坐标变换,并根据所述鱼眼相机模型将变换后的过渡映射点投影到所述目标图像层中,得到所述初始映射点。
其中,所述极线获取模块包括:
第三映射单元,用于将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最小深度信息的平面上,得到最小映射点;
第四映射单元,用于将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最大深度信息的平面上,得到最大映射点;
第一确定单元,用于将所述最小映射点和所述最大映射点的连线,确定为初始极线线段;
处理单元,用于对所述初始极线线段中的每个极线点进行单点坐标变换,并根据所述鱼眼相机模型将变换后的每个极线点投影到所述目标图像层中,得到所述目标极线。
其中,所述最优点匹配模块包括:
第二确定单元,用于根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,确定所述目标图像特征点在所述目标图像层中的最优点,作为目标最优点;
投影单元,用于若所述目标图像层的层数大于所述目标图像特征点在所述第一金字塔模型中的层数,则将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层,基于投影后的目标最优点与投影后的目标极线确定在所述下一图像层中的最优点,并将所述下一图像层确定为所述目标图像层,将所述下一图像层中的最优点确定为所述目标最优点;
建立单元,用于若所述目标图像层在所述第二金字塔模型中的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致,则建立所述目标图像特征点与最后一次所确定的所述目标最优点之间的位置匹配关系。
其中,所述投影单元包括:
投影子单元,用于将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层;
第一确定子单元,用于基于目标搜索范围,在投影后的目标极线中,确定以投影后的目标最优点为中心点的待搜索极线线段;
第一获取子单元,用于获取在所述下一图像层中的所述待搜索极线线段上的目标最优点。
其中,所述建立单元包括:
第二获取子单元,用于以所述目标图像特征点为中心在所述目标图像块中获取局部图像块,并将最后一次所确定的所述目标最优点作为调整点,并在所述调整点所在的图像层中获取以所述调整点为中心点的调整图像块,所述调整图像块的尺寸与所述局部图像块的尺寸相同;
第三确定子单元,用于根据雅克比、所述调整图像块中的像素值、所述局部图像块中的像素值,确定所述调整图像块的位置调整参数,根据所述位置调整参数调整所述调整图像块的位置;
建立子单元,用于当所述位置调整参数对应的模满足收敛条件时,将位置调整后的所述调整图像块的中心点确定为已调整最优点,建立所述目标图像特征点与所述已调整最优点之间的位置匹配关系。
其中,所述第二确定单元包括:
生成子单元,用于基于所述目标极线确定所述目标图像特征点在所述目标图像层中对应的多个待匹配点,并根据所述多个待匹配点生成每个待匹配点分别对应的待定图像块;
第二确定子单元,用于分别获取每个待定图像块与所述目标图像块之间的相似度,根据所述相似度确定所述多个待匹配点中的最优待匹配点和次优待匹配点;
判定子单元,用于若所述最优待匹配点和所述次优待匹配点满足目标条件,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
其中,所述生成子单元具体用于:
在所述目标极线上确定待搜索极线线段,在所述待搜索极线线段上按照像素长度阈值依次搜索像素点,并将搜索到的像素点确定为所述目标图像特征点在所述目标图像层上对应的多个待匹配点。
其中,所述生成子单元还具体用于:
用于通过对所述多个待匹配点作双线性插值处理,分别生成以每个待匹配点为中心点的待定图像块,所述待定图像块的尺寸与所述目标图像块的尺寸相同;
则所述第二确定子单元具体用于:
根据所述每个待定图像块中的像素值和所述目标图像块中的像素值,分别获取所述每个待定图像块与所述目标图像块之间的相似度。
其中,所述判定子单元包括:
第三获取子单元,用于获取所述最优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第一相似度,并获取所述次优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第二相似度;
第四确定子单元,用于若所述第一相似度大于相似度阈值,且所述第一相似度与所述第二相似度之间的差值大于差值阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
其中,所述判定子单元还包括:
第四获取子单元,用于获取所述最优待匹配点与所述次优待匹配点所在位置之间的像素距离;
第五确定子单元,用于若所述像素距离小于像素距离阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
本发明另一方面提供了一种图像处理装置,包括:处理器和存储器;
所述处理器和存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如本发明实施例中一方面中的方法。
本发明实施例另一方面提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如本发明实施例中一方面中的方法。
本发明实施例通过构建第一鱼眼图像和第二鱼眼图像对应的第一金字塔模型和第二金字塔模型;提取第一金字塔模型中的任一图像层的目标图像特征点,将目标图像特征点投影到第二金字塔模型中的目标图像层,根据极线在第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。由此可见,在对图像特征点进行位置匹配的过程中,并未对鱼眼图像进行描述子的提取,从而减少了匹配过程中的计算量,提高了匹配效率,且通过极线搜索的方法进行特征点的匹配,可以基于未经畸变校正的原始鱼眼图像得到较准确的特征点的匹配位置,从而提高了匹配的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本发明实施例提供的一种图像处理场景示意图;
图1b是本发明实施例提供的另一种图像处理场景示意图;
图2是本发明实施例提供的一种图像处理方法的流程示意图;
图3a是本发明实施例提供的另一种图像处理方法的流程示意图;
图3b是本发明实施例提供的一种初始图像特征点的优化过程示意图;
图3c是本发明实施例提供的另一种图像处理方法的流程示意图;
图3d是本发明实施例提供的另一种图像处理方法的流程示意图;
图3e是本发明实施例提供的一种图像特征点匹配的场景示意图;
图4是本发明实施例提供的一种图像特征点匹配的流程示意图;
图5是本发明实施例提供的一种图像特征点匹配的原理示意图;
图6是本发明实施例提供的另一种图像处理方法的流程示意图;
图7是本发明实施例提供的一种目标最优点的位置优化方法的流程示意图;
图8是本发明实施例提供的一种图像处理装置的结构示意图;
图9是本发明实施例提供的一种位置匹配单元的结构示意图;
图10是本发明实施例提供的另一种图像处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1a,是本发明实施例提供的一种图像处理场景示意图。如图1a所示,针对双目鱼眼匹配的方法,以VR(Virtual Reality,虚拟现实)眼镜为例进行说明,VR眼镜机体中带有双目鱼眼相机(见图1a,包括鱼眼相机100a和鱼眼相机100b),通过该双目鱼眼相机,可以得到两张不同视角但包含全部或部分相同的图像特征的鱼眼图像(见图1a,即鱼眼图像200a和鱼眼图像200b),创建鱼眼图像200a对应的金字塔模型,创建鱼眼图像200b对应的金字塔模型,所述鱼眼图像200a和鱼眼图像200b对应的金字塔模型中都包含了多个图像层(见图1a,以4层金字塔模型为例,金字塔的层数具体根据实际应用场景决定,在此不作限制),鱼眼图像200a对应的金字塔模型中的图像层a1、图像层a2、图像层a3、图像层a4的图像均对应来自鱼眼图像200a,鱼眼图像200b对应的金字塔模型中的图像层a1、图像层a2、图像层a3、图像层a4的图像均对应来自鱼眼图像200b。且鱼眼图像200a对应的金字塔模型和鱼眼图像200b对应的金字塔模型中相邻两个图像层之间都具有相同的图像分辨率倍数,例如,鱼眼图像200a对应的金字塔模型中图像层a1的分辨率为鱼眼图像200a的分辨率,图像层a2的分辨率为鱼眼图像200a的分辨率的50%,图像层a3的分辨率为鱼眼图像200a的25%,图像层a4的分辨率为鱼眼图像200a的12.5%;同理,鱼眼图像200b对应的金字塔模型中图像层a1的分辨率为鱼眼图像200b的分辨率,图像层a2的分辨率为鱼眼图像200b的分辨率的50%,图像层a3的分辨率为鱼眼图像200b的25%,图像层a4的分辨率为鱼眼图像200b的12.5%。提取鱼眼图像200a对应的金字塔模型中任一图像层的图像特征点,在鱼眼图像200b对应的金字塔模型中匹配与该图像特征点对应相同的图像特征点的位置,通过匹配到的位置,建立上述同一特征点对应不同金字塔模型中的不同位置之间的位置匹配关系,可选的,还可以提取鱼眼图像200b对应的金字塔模型中任一图像层的图像特征点,在鱼眼图像200a对应的金字塔模型中匹配与该图像特征点对应相同的图像特征点的位置,通过匹配到的位置,建立上述同一特征点对应不同金字塔模型中的不同位置之间的位置匹配关系。上述图像特征点的提取与位置匹配的过程是相对的,可以根据实际应用场景,提取上述鱼眼图像200a和鱼眼图像200b中任一鱼眼图像中的图像特征点,进行图像特征点的匹配过程。通过本发明实施例提供的方法得到的上述位置匹配关系,进一步地,VR眼镜可以将上述位置匹配关系输出给下一个计算模块,比如SLAM(simultaneous localization and mapping,同步定位与建图),计算出头盔在三维空间中的位置,从而实现定位。
请参见图1b,是本发明实施例提供的另一种图像处理场景示意图。如图1b所述,针对多目鱼眼匹配的方法,以快递机器人为例进行说明,快递机器人机身内包含多个鱼眼相机,通过所述多个鱼眼相机可以得到若干张具备不同视角但包含全部或部分相同图像特征的鱼眼图像,分别建立上述若干张鱼眼图像中的每个鱼眼图像分别对应的金字塔模型,将上述多张鱼眼图像分别对应的金字塔模型进行两两分组,每一组中的两个金字塔模型之间图像特征点的位置匹配原理均与上述鱼眼图像200a和鱼眼图像200b之间的图像特征点的位置匹配原理相同,因此,快递机器人可以基于所述若干个位置匹配关系实现更加精确的定位。
进一步地,请参见图2,是本发明实施例提供的一种图像处理方法的流程示意图。同时请一并参见图3a、图3b、图3c、图3d以及图3e,其中,图3a、图3c以及图3d是本发明实施例提供的另一种图像处理方法的流程示意图,其中,图3b是本发明实施例提供的一种初始图像特征点的优化过程示意图,图3e是本发明实施例提供的一种图像特征点匹配的场景示意图。如图2所示,所述方法可以包括:
步骤S101,构建第一鱼眼图像对应的第一金字塔模型,构建第二鱼眼图像对应的第二金字塔模型,所述第一金字塔模型和所述第二金字塔模型分别包括多个不同分辨率的图像层;
具体的,构建第一鱼眼图像对应的第一金字塔模型。在此说明,图像金字塔是图像多尺度表达的一种,是一种以多分辨率来解释图像的有效但概念简单的结构。一幅图像的金字塔是一系列以金字塔形状排列的分辨率逐步降低,且来源于同一张原始图像的图像集合。图像的金字塔通过梯次向下采样获得,层级越高,则图像越小,分辨率越低。由此可以理解,图3d中第一金字塔模型包括多个不同分辨率的图像层(图3d中以4层金字塔模型为例进行说明,金字塔模型的层数具体根据实际应用场景决定,在此不作限制),且每一图像层的图像均来自于对上述第一鱼眼图像的采样,从图像层c4依次至图像层c1,图像越大,分辨率越高,例如,图像层c4的分辨率为第一鱼眼图像的12.5%,图像层c3的分辨率为第一鱼眼图像的25%,图像层c2的分辨率为第一鱼眼图像的50%,图像层c1的分辨率为第一鱼眼图像的分辨率。同理,构建第二鱼眼图像对应的第二金字塔模型,所述第二金字塔模型包括多个不同分辨率的图像层(同样,以4层金字塔模型为例进行说明,金字塔的层数具体根据实际应用场景决定,在此不作限制),且每一图像层的图像来自于对第二鱼眼图像的采样,从图像层d4依次至图像层d1,图像越大,分辨率越高,例如,图像层d4的分辨率为第二鱼眼图像的12.5%,图像层d3的分辨率为第二鱼眼图像的25%,图像层d2的分辨率为第二鱼眼图像的50%,图像层d1的分辨率为第二鱼眼图像的分辨率。在此需要进行说明的是,在实际进行金字塔模型的构建时,上述第二金字塔模型中包含的图像层的层数应不小于上述第一金字塔模型中包含的图像层的层数。
步骤S102,提取所述第一鱼眼图像在所述第一金字塔模型的任一图像层的初始图像特征点,将所述第二金字塔模型中具有最小分辨率的图像层确定为目标图像层;
具体的,提取上述第一鱼眼图像在上述第一金字塔模型的每一图像层中的全部图像特征点,由于每个图像特征点进行位置匹配的过程均相同,所以为更好地理解本方案,本发明实施例选取上述提取到的图像特征点中的一个特征点进行描述,将选取的该图像特征点称之为初始图像特征点,并对初始图像特征点进行位置匹配说明。
其中,将上述第二金字塔模型中具有最小分辨率的图像层,即层级最高的图像层(即图3d中第二金字塔模型中的图像层d4),确定为目标图像层。
步骤S103,根据鱼眼相机模型和三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到初始映射点,并根据所述初始图像特征点、所述初始映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵;
进一步地,请一并参见图3a,图3a中包含的步骤S1031-步骤S1033是对步骤S103的具体实现方式的详细描述。
步骤S1031,在所述初始图像特征点所在图像层中获取关联特征点,所述关联特征点是以所述初始图像特征点为中心的附近特征点;
具体的,在所述初始图像特征点所在的图像层中,取在所述初始图像特征点的右边距离所述初始图像特征点a个像素的像素点,记该像素点的像素位置为px_u,所述关联特征点包括像素位置为px_u的像素点,同时取在所述初始图像特征点的下边距离所述初始图像特征点a个像素的像素点,记该像素点的像素位置为px_v,所述关联特征点包括像素位置为px_v的像素点。其中,像素距离a的像素值具体根据实际应用场景决定,此处不作限制,比如将a取为5个像素距离。其中,所述附近特征点为与所述初始图像特征点的距离为指定像素距离的像素点,如该指定像素距离可以为5个像素点的距离,本发明实施例具体取相对于初始图像特征点左边的附近特征点和下方的附近特征点作为关联特征点,当然也可以取其他位置上的附近特征点,这里不进行赘述。
步骤S1032,根据所述鱼眼相机模型、鱼眼相机内参,将所述初始图像特征点映射到三维平面上,得到初始三维点;
具体的,此处鱼眼相机模型可以是ATAN模型,令鱼眼相机的内参为KA,则有:
其中,fx和fy分别是鱼眼相机在x轴和y轴上的焦距,cx和cy是图像上的光学中心。则对应的初始三维点P(X,Y,Z)的计算过程如下:
首先,将该上述初始图像特征点映射到深度为1的三维平面上,记该三维点坐标为(x,y) ,如下:
然后,根据鱼眼相机模型,对上述通过映射得到的三维点坐标进行单点坐标变换,得到变换之后的三维点的坐标(xu,yu),本发明实施例所提到的单点坐标变换是指只对映射位置的单个坐标点进行坐标变换,并不需要对整张图片进行畸变校正。其中,对坐标(xu,yu)计算过程如下:
、
进一步地,假设上述经过单点坐标变换之后的三维点的深度为。则对应的初始三维点的坐标P(X,Y,Z)的计算如下,
由此可以得到初始三维点P在三维空间下的坐标。
步骤S1033,根据所述第一鱼眼图像对应的鱼眼相机和所述第二鱼眼图像对应的鱼眼相机之间的相对位置、相对旋转信息,将所述初始三维点转换到所述第二鱼眼图像的相机坐标系下,得到过渡三维点;
具体的,假设第一鱼眼图像对应的鱼眼相机相对于第二鱼眼图像对应的鱼眼相机的相对位置为t,相对旋转为R,则将所述初始三维点P转换到第二鱼眼图像的相机坐标系下,得到PB(XB, YB, ZB),其计算表达式如下:
PB=RP+t,
由此可以得到过渡三维点PB。
步骤S1034,将所述过渡三维点映射到所述第二鱼眼图像的相机坐标系下具有单位深度信息的平面上,得到过渡映射点;
具体的,所述过渡三维点在第二鱼眼图像的相机坐标系下的,深度为1(即单位深度)的平面上的映射为(xBu, yBu),表示为:
过渡三维点经映射之后称之为过渡映射点,过渡三维点PB在中的每一个深度,都对应一个在鱼眼相机B坐标系下的深度为1的平面上的映射点(xBu, yBu),将该映射点称之为过渡映射点,即所述过渡映射点为(xBu, yBu)。
步骤S1035,对所述过渡映射点进行单点坐标变换,并根据所述鱼眼相机模型将变换后的过渡映射点投影到所述目标图像层中,得到所述初始映射点;
具体的,对深度为1的平面上的过渡映射点(xBu, yBu)进行单点坐标变换,得到变换之后的过渡映射点(xBd, yBd),其计算过程如下:
其中,第二鱼眼图像所对应的相机模型可以为ATAN模型,假设其鱼眼相机内参为KB,则:
将计算得到点(xBd, yBd)投影到第二鱼眼图像对应的第二金字塔模型中的目标图像层,记投影点为Pc(uc, vc),其计算过程如下:
由此,综合上面的过程,就把第一鱼眼图像上的初始图像特征点映射到了第二鱼眼图像上的对应点Pc(uc, vc),即得到了初始映射点Pc(uc, vc),记该初始映射点的像素位置为px_dcur 。
步骤S1036,根据所述鱼眼相机模型和所述三维空间将所述关联特征点映射到所述目标图像层,在所述目标图像层中得到关联映射点;
具体的,所述关联特征点映射到所述目标图像层得到关联映射点的过程与所述初始图像特征点映射到所述目标图像层得到初始映射点的过程一致,具体请参见图3a所对应的实施例中对步骤S1032到步骤S1035所作的描述,此处不再赘述。其中,记上述两个关联特征点对应的两个关联映射点中的一个关联映射点的像素位置为px_du,另一个关联映射点的像素位置为px_dv 。
步骤S1037,根据所述初始图像特征点与所述关联特征点之间的位置关系、所述初始映射点以及所述关联映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵;
具体的,通过上述关联特征点对应两个关联映射点的位置px_du 和px_dv,以及初始映射点的位置px_dcur,可以计算出仿射变换矩阵A_cur_ref,其中,;。本发明实施例提出的仿射变换可以直接基于两张原始的鱼眼图像而实现;而且本发明实施例也不需要计算出整个图像的仿射变换,本发明实施例通过实现单个图像特征点周围小图块的仿射变换,可以避免严重畸变的鱼眼图像上的不同位置的仿射变换差别过大而导致得到的仿射变换不准确的问题;由于鱼眼图像的畸变严重,用传统的特征点匹配方法,在两幅鱼眼图像上面进行特征点匹配的效果会比较差,而本发明实施例用一个图像特征点(即初始图像特征点)以及两个关联点(即关联特征点)映射的方法,避开了在另外一张图像上寻找图像特征点并进行图像特征点匹配的过程,由此计算出来的仿射变换能更准确地表示该特征点周围小图块的仿射变换。
步骤S104,以所述初始映射点为中心点在所述目标图像层中获取过渡图像块,根据所述仿射变换矩阵对应的逆仿射变换矩阵,将所述过渡图像块映射到所述初始图像特征点所在图像层,在所述初始图像特征点所在图像层中得到所述过渡图像块对应的目标图像块,并确定所述目标图像块的中心点为目标图像特征点;
具体的,以上述初始映射点为中心点,生成指定大小的过渡图像块,比如以上述初始映射点为中心点,生成10*10的过渡图像块。通过步骤S1037得到的仿射变换矩阵A_cur_ref 可以计算出仿射变换矩阵的逆仿射变换矩阵A_ref _cur ,则可以通过所述逆仿射变换矩阵A_ref _cur,得到上述过渡图像块中的每一个像素点的位置坐标(相对于初始映射点的像素位置)对应在所述初始图像特征点所在的图像层中的位置坐标,称之为映射后的位置坐标。将第一鱼眼图像中的上述映射后的位置坐标处的像素点组成与所述过渡图像块尺寸大小一致的目标图像块,并将该目标图像块的中心点确定为所述目标图像特征点。可见,目标图像块中的像素点依然属于第一鱼眼图像中的像素点,所以目标图像块并不是畸变后的图像,依然属于鱼眼图像,因此,在后续的图块匹配过程中,依然是对鱼眼图像进行匹配,而不是对畸变后的图像进行匹配。由于鱼眼图像是畸变非常严重的图像,对于三维空间中的某一个点,它在两幅鱼眼图像中的成像会有较大的差别,所以,用传统的图像特征点匹配的方法,很难对鱼眼图像进行处理,只能用图块匹配的方法;但是如果使用图块匹配的方法,需要充分考虑鱼眼图像的严重畸变的特性,即需要计算第二鱼眼图像上的图块,与第一鱼眼图像上的图块的对应关系。本发明实施例中并没有使用传统的对鱼眼图像进行畸变校正的方法,因为本发明实施例中第一鱼眼图像和第二鱼眼图像上进行匹配的图块,都是原始畸变的图块;由于鱼眼图像是畸变非常严重的图像,对于三维空间中的某一个点,该点在第一鱼眼图像和第二鱼眼图像中的成像会有较大的差别,所以本发明实施例通过采用逆仿射变换的方法,来更新初始图像特征点,以得到目标图像特征点,进而基于目标图像特征点能够对第一鱼眼图像和第二鱼眼图像中的畸变图块,进行准确的匹配。
进一步地,请一并参见图3b,图3b是本发明实施例提供的一种初始图像特征点的优化过程示意图。参见图3b,第一鱼眼图像对应的第一金字塔模型中包括图像层c1、图像层c2、图像层c3以及图像层c4,第二鱼眼图像对应的第二金字塔模型中包括图像层d1、图像层d2、图像层d3以及图像层d4。在所述第一金字塔模型中的图像层c2中选取初始图像特征点,在所述初始图像特征点附近选取两个关联特征点,所述关联特征点相对于所述初始图像特征点的位置具体根据实际应用场景决定,此处不作限制。将所述初始图像特征点与所述两个关联特征点投影到三维空间下,得到初始图像特征点对应的初始三维点以及关联特征点对应的两个三维点,并将上述得到的初始三维点与关联特征点对应的两个三维点映射到鱼眼相机模型下,得到初始三维点对应的过渡三维点与所述关联特征点的两个三维点对应的过渡三维点。将上述3个过渡三维点投影到目标图像层(即图3b中的图像层d4),得到初始图像特征点对应的初始映射点以及上述两个关联特征点对应的两个关联映射点。通过所述初始映射点与所述关联映射点的位置坐标,可以计算得到仿射变换矩阵,通过所述仿射变换矩阵得到所述仿射变换矩阵的逆仿射变换矩阵。取所述初始映射点为中心点,在图像层d4中生成以所述初始图像特征点为中心点的过渡图像块,所述过渡图像块的尺寸大小具体根据实际应用场景决定,此处不作限制。通过上述得到的逆仿射变换矩阵得到所述过渡图像块对应在所述图像层c2中的与所述过渡图像块尺寸大小一致的图像块,将该图像块称之为目标图像块,取所述目标图像块的中心点为所述目标图像特征点。
步骤S105,获取所述初始图像特征点映射到所述目标图像层中的目标极线;
进一步地,请一并参见图3c,图3c中包含的步骤S1051-步骤S1054是对步骤S105的具体实现方式的详细描述。
步骤S1051,将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最小深度信息的平面上,得到最小映射点;
具体的,所述过渡三维点PB 的深度为,所述过渡三维点在深度范围dmin 到dmax内的每一个深度,都对应在所述第二鱼眼图像的相机坐标系下有一个映射点(xBu, yBu)。则取所述过渡三维点的深度为深度范围内的最小值dmin ,以该最小深度dmin将所述过渡三维点映射到所述第二鱼眼图像的相机坐标系下,得到最小映射点。
步骤S1052,将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最大深度信息的平面上,得到最大映射点;
具体的,所述过渡三维点的深度范围参见上述步骤S1051的描述,取所述过渡三维点的深度为深度范围内的最大值dmax ,以该最大深度dmax将所述过渡三维点映射到所述第二鱼眼图像的相机坐标系下,得到最大映射点。
步骤S1053,将所述最小映射点和所述最大映射点的连线,确定为初始极线线段;
具体的,将上述步骤S1051得到的最小映射点与步骤S1052得到的最大映射点进行连线,将该连线确定为所述初始极线线段。其中,上述初始三维点的深度在dmin 与dmax 范围之间时,对应在上述第二鱼眼图像的相机坐标系下的映射点落在上述初始极线线段上,即上述初始三维点在深度范围dmin 与dmax之间的每一个深度对应在上述第二鱼眼图像的相机坐标系下的全部映射点构成了上述初始极线线段。
步骤S1054,对所述初始极线线段中的每个极线点进行单点坐标变换,并根据所述鱼眼相机模型将变换后的每个极线点投影到所述目标图像层中,得到所述目标极线;
具体的,对上述初始极线线段中的每一个极线点作单点坐标变换,将所述极线点对应的像素点的位置坐标记为(xBC,yBC),将经变换处理之后的极线点的位置坐标记为(xBD,yBD),且上述鱼眼相机模型可以ATAN模型,其参数为wB,则计算过程如下:
将第二鱼眼图像的相机坐标系下的初始极线线段上的每一个极线点都作上述单点坐标变换的操作,根据鱼眼相机的ATAN模型,将作变换的每一个极线点都投影到第二鱼眼图像的第二金字塔模型中的目标图像层中,上述投影后的全部极线点组成了所述目标图像层中的所述目标极线。
步骤S106,根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,根据所述极线在所述第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系;
进一步地,请一并参见图3d,图3d中包含的步骤S1061-步骤S1063是对步骤S106的具体实现方式的详细描述。
步骤S1061,根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,确定所述目标图像特征点在所述目标图像层中的最优点,作为目标最优点;
具体的,根据目标极线的初始搜索范围,确定进行搜索的待搜索极线线段,在确定的待搜索极线线段上按照指定像素长度依次搜索匹配位置。以搜索到的多个匹配位置为中心点,分别生成所述多个匹配位置对应的多个图像块,同时以上述目标图像特征点为中心点,生成与上述匹配位置对应的图像块尺寸一致的图像块。通过将上述多个匹配位置对应的多个图像块分别与上述目标图像特征点对应的图像块作图像块间的相似度对比,得到上述多个匹配位置中的最优匹配位置和次优匹配位置,若所述最优匹配位置与次优匹配位置满足指定目标条件,则将得到的最优匹配位置处的像素点称之为上述最优点,并定义为目标最优点。其中,所述指定目标条件包括:上述得到的最优匹配位置对应的图像块与目标图像特征点对应的图像块之间的相似度满足指定相似度阈值,或者,上述得到的最优匹配位置与次优匹配位置之间的像素距离满足指定像素距离阈值。
步骤S1062,若所述目标图像层的层数大于所述目标图像特征点在所述第一金字塔模型中的层数,则将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层,基于投影后的目标最优点与投影后的目标极线确定在所述下一图像层中的最优点,并将所述下一图像层确定为所述目标图像层,将所述下一图像层中的最优点确定为所述目标最优点;
具体的,若是上述目标图像层的层数大于目标图像特征点在第一金字塔模型中的层数,则将在目标图像层得到的目标最优点和目标最优点所在的目标极线投影到第二金字塔模型中目标图像层的下一图像层,基于投影后的目标最优点可以确定投影后的目标极线在该下一图像层中的待搜索极线线段。比如以投影后的目标最优点为中心点,在目标极线的正负方向上确定4个像素长度的的线段,将该线段作为待搜索极线线段,即此待搜索极线线段为以投影后的目标最优点为中心点,长度为8个像素的极线线段。并再次执行步骤S1031中的操作,得到在该下一图像层中的最优点。将该下一图像层称之为目标图像层,即将该下一图像层定义为更新之后的目标图像层,同时将该下一图像层中的最优点称之为目标最优点,即将在该下一图像层中得到的最优点定义为更新之后的目标最优点。重新比较此时更新之后的目标图像层在第二金字塔模型中的层数与目标图像特征点在第一金字塔模型中的层数,若是更新之后的目标图像层在第二金字塔模型中的层数大于目标图像特征点在第一金字塔模型中的层数,则重复上述操作,将更新之后的目标最优点和更新之后的目标最优点所在的极线投影到更新之后的目标最优点所在的图像层的下一图像层,得到在更新之后的目标图像层的下一图像层中的目标最优点,进行第二轮更新,循环进行上述更新投影操作,直到最后一次更新的目标图像层在第二金字塔模型中的层数不大于目标图像特征点在第一金字塔模型中的层数。
进一步地,请参见图3e,图3e是本发明实施例提供的一种图像特征点匹配的场景示意图,参见图3e,上述过程具体为,选取第一金字塔模型中图像层c2上的一个图像特征点,将该图像特征点定义为初始图像特征点,将该初始图像特征点进行上述图2所对应的实施例中步骤S103-步骤S104的操作,得到该初始图像特征点对应的目标图像特征点,将第二金字塔模型中的图像层d4定义为目标图像层,根据图2所对应的实施例中的步骤S105得到在图像层d4中的目标极线,根据步骤S1031得到在所述目标极线的初始搜索范围内的所述目标图像特征点对应的最优点,并将该最优点称之为目标最优点,即定义该最优点为目标最优点,且上述目标图像层的层数为4大于目标图像特征点在第一金字塔模型中的层数2,则将所述目标最优点和所述目标最优点所在的目标极线投影到第二金字塔模型中的图像层d3,同样根据步骤S1031得到在投影后的目标极线上目标图像特征点对应的最优点,将在第二图像金字塔模型中的图像层d3称之为目标图像层,即定义图像层d3为更新之后的目标图像层,将在第二金字塔模型中的图像层d3上得到的最优点称之为目标最优点,即定义d3上得到的最优点定义为更新之后的目标最优点。上述经过第一次更新之后的目标图像层的层数为3大于目标图像特征点在第一金字塔模型中的层数2,将此时更新后的目标最优点和更新后的目标最优点所在的目标极线投影到第二金字塔模型中的图像层d2,同样根据步骤S1031得到在投影后的目标极线上目标图像特征点对应的最优点,将在第二图像金字塔模型中的图像层d2称之为目标图像层,即定义图像层d2为更新之后的目标图像层,将在第二金字塔模型中的图像层d2上得到的最优点称之为目标最优点,即定义图像层d2上得到的最优点为更新之后的目标最优点。上述经过第二次更新的目标图像层的层数为2等于目标图像特征点在第一金字塔模型中的层数2,停止上述投影的操作,最终,确定的目标图像层为第二金字塔模型中的图像层d2,确定的目标最优点为在第二金字塔模型中的图像层d2上得到的最优点。
步骤S1063,若所述目标图像层在所述第二金字塔模型中的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致,则建立所述目标图像特征点与最后一次所确定的所述目标最优点之间的位置匹配关系;
具体的,当上述循环投影的过程停止时,其中,循环投影具体指将在第二金字塔模型中的某一图像层得到的目标最优点与目标极线投影到该图像层的下一图像层,将在该下一图像层得到的目标最优点与目标极线继续投影到该下一图像层的下一图像层,重复进行上述投影的动作,直到投影之后的图像层的层数与目标图像特征点在第一金字塔模型中的层数一致,则停止投影。当目标图像层在第二金字塔模型中的图像层的层数等于目标最优点在第一金字塔模型中的图像层的层数,建立目标图像特征点与最后一次定义的目标最优点之间的位置匹配关系。对在第一金字塔模型中提取到的图像特征点一次进行上述位置匹配操作,得到第一金字塔模型中提取到的每一图像特征点对应的位置匹配关系,通过将上述每一图像特征点对应的位置匹配关系输入到另一个计算模块,可以实现设备的定位。例如VR眼镜可以将上述位置匹配关系输出给下一个计算模块,比如SLAM(simultaneouslocalization and mapping,同步定位与建图),计算出该VR眼镜对应的头盔在三维空间中的位置。
本发明实施例通过构建第一鱼眼图像和第二鱼眼图像对应的第一金字塔模型和第二金字塔模型;提取第一金字塔模型中的任一图像层的目标图像特征点,将目标图像特征点投影到第二金字塔模型中的目标图像层,根据极线在第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。由此可见,在对图像特征点进行位置匹配的过程中,并未对鱼眼图像进行描述子的提取,从而减少了匹配过程中的计算量,提高了匹配效率,且通过极线搜索的方法进行特征点的匹配,可以基于未经畸变校正的原始鱼眼图像得到较准确的特征点的匹配位置,从而提高了匹配的准确性。
进一步地,请参见图4,是本发明实施例提供的一种图像特征点匹配的流程示意图。如图4所示,步骤S201-步骤S207的步骤是对上述图3d所对应实施例中步骤S1061的具体描述,即步骤S201-步骤S207是本发明实施例提供的一种目标最优点匹配的具体流程,具体可以包括如下步骤:
步骤S201,在所述目标极线上确定待搜索极线线段,在所述待搜索极线线段上按照像素长度阈值依次搜索像素点,并将搜索到的像素点确定为所述目标图像特征点在所述目标图像层上对应的多个待匹配点;
具体的,在目标极线上确定待搜索的极线线段(即初始搜索范围),在该待搜索的极线线段上按照指定的像素长度依次搜索像素点,比如按照1个像素长度在待搜索极线线段上依次搜索所述像素点,将搜索到的像素点确定为目标图像特征点在目标图像层上对应的多个待匹配点。
步骤S202,通过对所述多个待匹配点作双线性插值处理,分别生成以每个待匹配点为中心点的待定图像块,所述待定图像块的尺寸与所述目标图像块的尺寸相同;
具体的,由于在目标极线上搜索到的多个待匹配点很大概率不在图像的像素点上,上述多个待匹配点对应在图像中的像素值也不会是整数,为了更准确地表示上述多个待匹配点周围的图块,通常需要对上述得到的多个待匹配点作双线性插值处理,从而可以通过双线性插值分别计算得到上述每一个待匹配点对应的像素值。其中,双线性插值又称为双线性内插,指在两个方向分别进行一次线性插值,原始的线性插值,指在一个方向(一般指x轴方向或是y轴方向)上进行插值,但若是插值的方向与上述一个方向不在一个方向上,则需要在两个方向(一般指x轴方向和y轴方向)上进行插值。因此以上述多个待匹配点分别作为中心点,可以生成经单点坐标变换之后的图像上的每个待匹配点对应的待定图像块,该待定图像块与所述目标图像块的尺寸大小一致,比如分别生成以每个待匹配点对应的像素点为中心点的10*10图像块。
步骤S203,根据所述每个待定图像块中的像素值和所述目标图像块中的像素值,分别获取所述每个待定图像块与所述目标图像块之间的相似度,根据所述相似度确定所述多个待匹配点中的最优待匹配点和次优待匹配点;
具体的,获取上述每个待定图像块中包含的像素值,同时获取上述目标图像块中包含的像素值,通过指定的图块相似度算法,得到每个待定图像块与第一目标图像块之间的相似度。比如通过SSD(Sum of Squared Differences,差的平方和)算法计算上述相似度,主要为分别计算每个待定图像块中包含的像素值与第一目标图像块中包含的像素值间的差值的平方和,若某个待定图像块对应的平方和的值越小,则该待定图像块与第一目标图像块之间的相似度越大,反之,若某个待定图像块对应的平方和的值越大,则该待定图像块与第一目标图像块之间的相似度越小。又比如通过皮尔森相关系数计算每个待定图像块和第一目标图像块之间的相关度,其中,皮尔森相关系数又称为皮尔森积矩相关系数,是一种线性相关系数,通过相关系数r(r的取值范围为-1到+1)来描述两者间的线性相似度,r的绝对值越趋向于1,则表明比较的两者间的相关度越大,r的绝对值越趋于0,则表明比较的两者间的相关度越小。通过计算每个待定图像块中包含的像素值与目标图像块中包含的协方差和标准差,得到每个待定图像块对应的协方差与标准差的比值(协方差与标准差的比值即是皮尔森相关系数),比较上述得到的每个待定图像块对应的皮尔森相关系数与数值1的接近程度,若某个待定图像块对应的比值越接近数值1,则表明该待定图像块与目标图像块之间的相似度越大,反之,若某个待定图像块对应的比值越接近数值0,则表明该待定图像块与目标图像块之间的相似度越小。
其中,将上述计算的相似度中数值最大的相似度对应的待定图像块对应的待匹配点称之为最优待匹配点,将上述计算的相似度中数值为第二大的相似度对应的待定图像块对应的待匹配点称之为次优待匹配点。
步骤S204,获取所述最优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第一相似度,并获取所述次优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第二相似度;
具体的,获取上述通过步骤S203得到的最优待匹配点对应的待定图像块与目标图像块之间的相似度,并将该相似度定义为第一相似度,同时获取上述通过步骤S203得到的次优待匹配点对应的待定图像块与目标图像块之间的相似度,并将该相似度定义为第二相似度。
其中,执行步骤S204之后,进行下述步骤S205至步骤S207的操作,需要进行说明的是,步骤S205描述的一种判定目标最优点的方法与步骤S206和步骤S207共同描述的一种判定目标最优点的方法为两种并列的方法,若是上述第一相似度和第二相似度满足上述步骤S205或者步骤S206和步骤S207描述的判定目标最优点的方法的任一种方法中所包含的条件,则将上述最优待匹配点称之为目标图像特征点在目标图像层中的最优点,并将该最优点定义为目标最优点。
步骤S206,若所述第一相似度大于相似度阈值,且所述第一相似度与所述第二相似度之间的差值大于差值阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点;
具体的,获取预先设定的相似度的限定范围,若是上述第一相似度在设定的相似度的限定范围内,则比较第一相似度与第二相似度之间的差值,获取预先设定的相似度差值的限定范围,若是第一相似度与第二相似度之间的差值在设定的相似度差值范围内,则将上述最优待匹配点称之为目标图像特征点在目标图像层中的最优点,并将该最优点定义为目标最优点。
步骤S207,获取所述最优待匹配点与所述次优待匹配点所在位置之间的像素距离;
具体的,计算得到最优待匹配点与次优待匹配点在其所在的目标极线上的间隔像素距离。
步骤S208,若所述像素距离小于像素距离阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点;
具体的,获取预先设定的最优待匹配点与次优待匹配点之间的像素距离的限定范围,若上述计算得到的最优待匹配点与次优待匹配点在其所在的目标极线上的间隔像素距离,在上述像素距离的限定范围之内,则将该最优待匹配点称之为在目标图像层中的最优点,并定义该最优点为目标最优点。比如设定最优待匹配点与次优待匹配点之间的像素距离的限定范围为数值范围0-4,则只要上述计算得到的最优待匹配点与次优待匹配点在其所在的目标极线上的间隔像素距离不大于4,则将该最优待匹配点称之为在目标图像层中的最优点,并定义该最优点为目标最优点。
进一步地,请参见图5,图5是本发明实施例提供的一种图像特征点匹配的原理示意图。确定目标图像特征点投影到目标图像层的目标极线的初始搜索范围(即图5中的待搜索极线线段),在所述待搜索极线线段上按照指定像素长度依次搜索匹配的像素点,将搜索到的像素点确定为待匹配点,见图5,即目标图像层中的5个待匹配点,通过分别对图5中的目标图像特征点和5个待匹配点作双线性插值处理,得到以目标图像特征点为中心点的目标图像块,同时得到分别以5个待匹配点为中心点的5个待定图像块,并将该5个待定图像块分别与目标图像块进行相似度的计算,比较计算得到的每个待定图像块与目标图像块之间的相似度,取相似度的数值为最大的待定图像块对应的中心点(即相似度的数值为最大的待定图像块对应的待匹配点)为最优待匹配点,取相似度的数值为第二大的待定图像块对应的中心点(即相似度的数值为第二大的待定图像块对应的待匹配点)为次优待匹配点,若是该最优待匹配点对应的待定图像块与目标图像块之间的相似度与次优待匹配点对应的待定图像块与目标图像块之间的相似度满足指定目标条件(指定目标条件具体参见上述步骤S205至步骤S207,在此不再进行赘述),则将该最优待匹配点确定为目标图像层中的最优点,并将该最优点定义为目标最优点。
请参见图6,图6是本发明实施例提供的另一种图像处理方法的流程示意图。如图6所示,所述方法可以包括如下步骤:
步骤S301,获取所述第一鱼眼图像和所述第二鱼眼图像;
具体的,通过鱼眼相机获取上述第一鱼眼图像和第二鱼眼图像,可选的,上述鱼眼相机来自于VR眼镜、快递机器人、无人驾驶车等所有需要在鱼眼图像之间进行图像特征点匹配的产品或者设备,通过鱼眼图像之间的图像特征点的匹配结果,可以实现在多维空间中的位置定位。上述第一鱼眼图像和第二鱼眼图像为两幅通过鱼眼相机在同一位置的不同视角下得到的图像,且该两幅图像之中包含有全部或者部分相同的图像特征(即同一位置的景象)。
步骤S302,根据分辨率倍数阈值构建所述第一鱼眼图像对应的所述第一金字塔模型,所述第一金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值;根据分辨率倍数阈值构建所述第二鱼眼图像对应的所述第二金字塔模型,所述第二金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值,所述第一金字塔模型和所述第二金字塔模型分别包括多个不同分辨率的图像层;
具体的,获取预先设定的金字塔模型的分辨率倍数阈值,即金字塔模型中相邻两个图像层之间的分辨率倍数,按照该分辨率倍数创建第一鱼眼图像对应的第一金字塔模型和第二鱼眼图像对应的第二金字塔模型,上述第一金字塔模型和第二金字塔模型分别包括多个不同分辨率的图像层。由于第一鱼眼图像与第二鱼眼图像中包含有全部或部分相同的图像特征,因此,第一金字塔模型与第二金字塔模型中同样包含有相同的图像特征点,由此,可以进行下述同一图像特征点对应不同鱼眼图像的金字塔模型中的位置匹配。对应的,上述将目标极线和目标最优点向下一层图像进行投影时,所述目标极线和所述目标最优点在图像层中的坐标对应扩大倍数为上述分辨率倍数阈值。
步骤S303,提取所述第一鱼眼图像在所述第一金字塔模型的任一图像层的初始图像特征点,将所述第二金字塔模型中具有最小分辨率的图像层确定为目标图像层。
步骤S304,根据鱼眼相机模型和三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到初始映射点,并根据所述初始图像特征点、所述初始映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵。
步骤S305,以所述初始映射点为中心点在所述目标图像层中获取过渡图像块,根据所述仿射变换矩阵对应的逆仿射变换矩阵,将所述过渡图像块映射到所述初始图像特征点所在图像层,在所述初始图像特征点所在图像层中得到所述过渡图像块对应的目标图像块,并确定所述目标图像块的中心点为目标图像特征点。
步骤S306,获取所述初始图像特征点映射到所述目标图像层中的目标极线。
步骤S307,根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,在所述第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。
其中,步骤S303的具体实现过程请参见图2所对应的实施例中对步骤S102的描述,步骤S304的具体实现过程请参见图2所对应的实施例中对步骤S103的描述,步骤S305的具体实现过程请参见图2所对应的实施例中对步骤S104的描述,步骤S306的具体实现过程请参见图2所对应的实施例中对步骤S105的描述,步骤S307的具体实现过程请参见图2所对应的实施例中对步骤S106的描述,这里将不再进行赘述。
本发明实施例通过构建第一鱼眼图像和第二鱼眼图像对应的第一金字塔模型和第二金字塔模型;提取第一金字塔模型中的任一图像层的目标图像特征点,将目标图像特征点投影到第二金字塔模型中的目标图像层,根据极线在第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。由此可见,在对图像特征点进行位置匹配的过程中,并未对鱼眼图像进行描述子的提取,从而减少了匹配过程中的计算量,提高了匹配效率,且通过极线搜索的方法进行特征点的匹配,可以基于未经畸变校正的原始鱼眼图像得到较准确的特征点的匹配位置,从而提高了匹配的准确性。
请参见图7,图7是本发明实施例提供的一种目标最优点的位置优化方法的流程示意图,其中,图7中的步骤S401-步骤S403是在上述图6最后一个步骤S307中最后一次得到的目标最优点进行优化,并建立优化位置与所述目标最优点之间的位置匹配关系的操作。所述方法可以包括:
步骤S401,以所述目标图像特征点为中心在所述目标图像块中获取局部图像块,并将最后一次所确定的所述目标最优点作为调整点,并在所述调整点所在的图像层中获取以所述调整点为中心点的调整图像块,所述调整图像块的尺寸与所述局部图像块的尺寸相同;
具体的,以所述目标图像特征点为中心在所述目标图像块中获取局部图像块,比如以目标图像特征点为中心,在所述目标图像块中取8*8的局部图像块。将通过步骤S307最后一次得到的目标最优点最为调整点,并以所述调整点为中心点,在所述调整点所在的图像层中获取与上述局部图像块大小相同的图像块,将该图像块称之为调整图像块,比如,以所述调整点为中心点,在所述调整点所在的图像层中取8*8的调整图像块。
步骤S402,根据雅克比、所述调整图像块中的像素值、所述局部图像块中的像素值,确定所述调整图像块的位置调整参数,根据所述位置调整参数调整所述调整图像块的位置;
具体的,将上述调整图像块记为IB8,该调整图像块中的每一个像素值记为IB8(u’),将上述局部图像块记为IA8,该局部图像块中的每一个像素点的像素值为IA8(u)。通过所述局部图像块对所述调整图像块进行位置的优化调整,使得所述调整图像块的像素位置为最佳位置。其中,所述调整图像块的优化表达式如下:
其中,雅克比计算如下:
其中,m为亮度偏移值,为调整图像块上的雅克比,调整图像块的中的像素点的像素值关于位置(即像素坐标的横坐标,纵坐标)的雅克比,即是通过该像素点对应在像素坐标中的相邻右边的一个像素点的像素值与其对应在像素坐标中的相邻左边的一个像素点的的像素值相减,和该像素点对应在像素坐标中的相邻下边的一个像素点的像素值与其对应在像素坐标中的相邻上边的一个像素点的像素值相减,得到的梯度。
对调整图像块上的所有的像素点都进行上述优化的操作,然后用高斯牛顿法进行迭代,表达式如下:
对调整图像块中的像素点进行优化后的每次迭代之后,调整图像块的位置对应更新一次,记第二鱼眼图像中所述目标图像特征点对应的匹配位置为ssd_best,即将ssd_best更新一次,其中,ssd_best= ssd_best-u,即通过上述操作不断对调整图像块进行位置调整,其中,u为上述调整参数。
步骤S403,当所述位置调整参数对应的模满足收敛条件时,将位置调整后的所述调整图像块的中心点确定为已调整最优点,建立所述目标图像特征点与所述已调整最优点之间的位置匹配关系;
具体的,上述对调整图像块中的像素点进行优化之后的迭代的操作最多进行10次,如果迭代的过程中某次位置调整的模||u||(即上述调整参数的模)小于0.03,就认为收敛了,则退出迭代,此时得到调整图像块的最佳匹配位置,认为匹配成功,将此时的调整图像块的中心点的像素点称之为已调整最优点。记所述调整最优点的位置坐标为uv_best,则uv_best=ssd_best,即位置坐标为所述uv_best的像素位置为第一鱼眼图像对应的金字塔模型上的所述目标图像特征点在第二鱼眼图像对应的金字塔模型上的最佳匹配位置,建立上述已调整最优点与所述目标图像特征点之间的位置匹配关系。
请参见图8,图8是本发明实施例提供的一种图像处理装置的结构示意图。如图8所示,所述图像处理装置1可以包括:模型构建模块11,特征点提取模块12,矩阵生成模块13,特征点确定模块14,极线获取模块15,最优点匹配模块16;
模型构建模块11,用于构建第一鱼眼图像对应的第一金字塔模型,构建第二鱼眼图像对应的第二金字塔模型,所述第一金字塔模型和所述第二金字塔模型分别包括多个不同分辨率的图像层;
特征点提取模块12,用于提取所述第一鱼眼图像在所述第一金字塔模型的任一图像层的初始图像特征点,将所述第二金字塔模型中具有最小分辨率的图像层确定为目标图像层;
矩阵生成模块13,用于根据鱼眼相机模型和三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到初始映射点,并根据所述初始图像特征点、所述初始映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵;
特征点确定模块14,用于以所述初始映射点为中心点在所述目标图像层中获取过渡图像块,根据所述仿射变换矩阵对应的逆仿射变换矩阵,将所述过渡图像块映射到所述初始图像特征点所在图像层,在所述初始图像特征点所在图像层中得到所述过渡图像块对应的目标图像块,并确定所述目标图像块的中心点为目标图像特征点;
极线获取模块15,用于获取所述初始图像特征点映射到所述目标图像层中的目标极线;
最优点匹配模块16,用于根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,在所述第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。
其中,所述模型构建模块11,特征点提取模块12,矩阵生成模块13,特征点确定模块14,极线获取模块15,最优点匹配模块16的具体功能实现方式可以参见图2对应实施例中的步骤S101-步骤S106,这里不再进行赘述。
进一步地,参见图8,所述模型构建单元11还包括第一获取单元111,第一构建单元112,第二构建单元113;
第一获取单元111,用于获取所述第一鱼眼图像和所述第二鱼眼图像;
第一构建单元112,用于根据分辨率倍数阈值构建所述第一鱼眼图像对应的所述第一金字塔模型,所述第一金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值;
第二构建单元113,用于根据分辨率倍数阈值构建所述第二鱼眼图像对应的所述第二金字塔模型,所述第二金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值。
其中,所述第一获取单元111,第一构建单元112,第二构建单元113的具体功能实现方式可以参见图6对应实施例中的步骤S301-步骤S302,这里不再进行赘述。
进一步地,参见图8,所述矩阵生成模块13还包括第一映射单元131,第二获取单元132,第二映射单元133,生成单元134;
第一映射单元131,用于根据所述鱼眼相机模型和所述三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到所述初始映射点;
第二获取单元132,用于在所述初始图像特征点所在图像层中获取关联特征点,所述关联特征点是以所述初始图像特征点为中心的附近特征点;
第二映射单元133,用于根据所述鱼眼相机模型和所述三维空间将所述关联特征点映射到所述目标图像层,在所述目标图像层中得到关联映射点;
生成单元134,用于根据所述初始图像特征点与所述关联特征点之间的位置关系、所述初始映射点以及所述关联映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵。
其中,所述第一映射单元131,第二获取单元132,第二映射单元133,生成单元134的具体功能实现方式可以参见图3a对应实施例中的步骤S1031-步骤S1037,这里不再进行赘述。
进一步地,参见图8,所述第一映射单元131还包括第一映射子单元1311,转换子单元1312,第二映射子单元1313,处理子单元1314;
第一映射子单元1311,用于根据所述鱼眼相机模型、鱼眼相机内参,将所述初始图像特征点映射到三维平面上,得到初始三维点;
转换子单元1312,用于根据所述第一鱼眼图像对应的鱼眼相机和所述第二鱼眼图像对应的鱼眼相机之间的相对位置、相对旋转信息,将所述初始三维点转换到所述第二鱼眼图像的相机坐标系下,得到过渡三维点;
第二映射子单元1313,用于将所述过渡三维点映射到所述第二鱼眼图像的相机坐标系下具有单位深度信息的平面上,得到过渡映射点;
处理子单元1314,用于对所述过渡映射点进行单点坐标变换,并根据所述鱼眼相机模型将变换后的过渡映射点投影到所述目标图像层中,得到所述初始映射点。
其中,所述第一映射子单元1311,转换子单元1312,第二映射子单元1313,处理子单元1314的具体功能实现方式可以参见图3a对应实施例中的步骤S1032-步骤S1035,这里不再进行赘述。
进一步地,参见图8,所述极线获取模块15还包括第三映射单元151,第四映射单元152,第一确定单元153,处理单元154;
第三映射单元151,用于将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最小深度信息的平面上,得到最小映射点;
第四映射单元152,用于将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最大深度信息的平面上,得到最大映射点;
第一确定单元153,用于将所述最小映射点和所述最大映射点的连线,确定为初始极线线段;
处理单元154,用于对所述初始极线线段中的每个极线点进行单点坐标变换处理,并根据所述鱼眼相机模型将变换后的每个极线点投影到所述目标图像层中,得到所述目标极线。
其中,所述第三映射单元151,第四映射单元152,第一确定单元153,处理单元154的具体功能实现方式可以参见图3b对应实施例中的步骤S1051-步骤S1054,这里不再进行赘述。
进一步地,参见图8,所述最优点匹配模块还包括16第二确定单元161,投影单元162,建立单元163;
第二确定单元161,用于根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,确定所述目标图像特征点在所述目标图像层中的最优点,作为目标最优点;
投影单元162,用于若所述目标图像层的层数大于所述目标图像特征点在所述第一金字塔模型中的层数,则将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层,基于投影后的目标最优点与投影后的目标极线确定在所述下一图像层中的最优点,并将所述下一图像层确定为所述目标图像层,将所述下一图像层中的最优点确定为所述目标最优点;
建立单元163,用于若所述目标图像层在所述第二金字塔模型中的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致,则建立所述目标图像特征点与最后一次所确定的所述目标最优点之间的位置匹配关系。
其中,所述第二确定单元161,投影单元162,建立单元163的具体功能实现方式可以参见图3c对应实施例中的步骤S1061-步骤S1063,这里不再进行赘述。
进一步地,参见图8,所述投影单元162还包括投影子单元1621,第一确定子单元1622,第一获取子单元1623;
投影子单元1621,用于将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层;
第一确定子单元1622,用于基于目标搜索范围,在投影后的目标极线中,确定以投影后的目标最优点为中心点的待搜索极线线段;
第一获取子单元1623,用于获取在所述下一图像层中的所述待搜索极线线段上的目标最优点。
其中,所述第一确定子单元1622和第一获取子单元1623的具体功能实现方式可以参见图4对应实施例中的步骤S201-步骤S207,这里不再进行赘述。
进一步地,参见图8,所述建立单元163还包括第二获取子单元1631,第三确定子单元1632,建立子单元1633;
第二获取子单元1631,用于以所述目标图像特征点为中心在所述目标图像块中获取局部图像块,并将最后一次所确定的所述目标最优点作为调整点,并在所述调整点所在的图像层中获取以所述调整点为中心点的调整图像块,所述调整图像块的尺寸与所述局部图像块的尺寸相同;
第三确定子单元1632,用于根据雅克比、所述调整图像块中的像素值、所述局部图像块中的像素值,确定所述调整图像块的位置调整参数,根据所述位置调整参数调整所述调整图像块的位置;
建立子单元1633,用于当所述位置调整参数对应的模满足收敛条件时,将位置调整后的所述调整图像块的中心点确定为已调整最优点,建立所述目标图像特征点与所述已调整最优点之间的位置匹配关系。
其中,所述第二获取子单元1631,第三确定子单元1632,建立子单元1633的具体功能实现方式可以参见图7对应实施例中的步骤S401-步骤S403,这里不再进行赘述。
进一步地,参见图8,所述第二确定单元161还包括生成子单元1611,第二确定子单元1612,判定子单元1613;
生成子单元1611,用于基于所述目标极线确定所述目标图像特征点在所述目标图像层中对应的多个待匹配点,并根据所述多个待匹配点生成每个待匹配点分别对应的待定图像块;
第二确定子单元1612,用于分别获取每个待定图像块与所述目标图像块之间的相似度,根据所述相似度确定所述多个待匹配点中的最优待匹配点和次优待匹配点;
判定子单元1613,用于若所述最优待匹配点和所述次优待匹配点满足目标条件,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
其中,所述生成子单元1611具体用于:
在所述目标极线上确定待搜索极线线段,在所述待搜索极线线段上按照像素长度阈值依次搜索像素点,并将搜索到的像素点确定为所述目标图像特征点在所述目标图像层上对应的多个待匹配点。
其中,所述生成子单元1611还具体用于:
用于通过对所述多个待匹配点作双线性插值处理,分别生成以每个待匹配点为中心点的待定图像块,所述待定图像块的尺寸与所述目标图像块的尺寸相同;
则所述第二确定子单元1612具体用于:
根据所述每个待定图像块中的像素值和所述目标图像块中的像素值,分别获取所述每个待定图像块与所述目标图像块之间的相似度。
其中,所述生成子单元1611,第二确定子单元1612,判定子单元1613的具体功能实现方式可以参见图4对应实施例中的步骤S201-步骤S207,这里不再进行赘述。
进一步地,参见图8,所述判定子单元1613还包括第三获取子单元16131,第四确定子单元16132;
第三获取子单元16131,用于获取所述最优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第一相似度,并获取所述次优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第二相似度;
第四确定子单元16132,用于若所述第一相似度大于相似度阈值,且所述第一相似度与所述第二相似度之间的差值大于差值阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
其中,所述第三获取子单元16131,第四确定子单元16132的具体功能实现方式可以参见图4对应实施例中的步骤S204-步骤S205,这里不再进行赘述。
进一步地,参见图8,所述判定子单元1613还包括第四获取子单元16133,第五确定子单元16134;
第四获取子单元16133,用于获取所述最优待匹配点与所述次优待匹配点所在位置之间的像素距离;
第五确定子单元16134,用于若所述像素距离小于像素距离阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
其中,所述第四获取子单元16133,第五确定子单元16134的具体功能实现方式可以参见图4对应实施例中的步骤S206-步骤S207,这里不再进行赘述。
本发明实施例通过构建第一鱼眼图像和第二鱼眼图像对应的第一金字塔模型和第二金字塔模型;提取第一金字塔模型中的任一图像层的目标图像特征点,将目标图像特征点投影到第二金字塔模型中的目标图像层,根据极线在第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。由此可见,在对图像特征点进行位置匹配的过程中,并未对鱼眼图像进行描述子的提取,从而减少了匹配过程中的计算量,提高了匹配效率,且通过极线搜索的方法进行特征点的匹配,可以基于未经畸变校正的原始鱼眼图像得到较准确的特征点的匹配位置,从而提高了匹配的准确性。
请参见图10,是本发明实施例提供的另一种图像处理装置的结构示意图。如图10所示,所述图像处理装置2可以包括:处理器21,网络接口24和存储器25,此外,所述图像处理装置2还可以包括:鱼眼摄像头23,和至少一个通信总线22。其中,通信总线22用于实现这些组件之间的连接通信。其中,鱼眼摄像头23至少存在两个。存储器24可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器24可选的还可以是至少一个位于远离前述处理器21的存储装置。如图10所示,作为一种计算机存储介质的存储器24中可以包括操作系统、网络通信模块、摄像模块以及设备控制应用程序。
在图10所示的图像处理装置2中,网络接口24可提供网络通讯功能;而鱼眼摄像头23主要用于获取鱼眼图像;而处理器21可以用于调用存储器24中存储的设备控制应用程序,以实现:
构建第一鱼眼图像对应的第一金字塔模型,构建第二鱼眼图像对应的第二金字塔模型,所述第一金字塔模型和所述第二金字塔模型分别包括多个不同分辨率的图像层;
提取所述第一鱼眼图像在所述第一金字塔模型的任一图像层的初始图像特征点,将所述第二金字塔模型中具有最小分辨率的图像层确定为目标图像层;
根据鱼眼相机模型和三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到初始映射点,并根据所述初始图像特征点、所述初始映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵;
以所述初始映射点为中心点在所述目标图像层中获取过渡图像块,根据所述仿射变换矩阵对应的逆仿射变换矩阵,将所述过渡图像块映射到所述初始图像特征点所在图像层,在所述初始图像特征点所在图像层中得到所述过渡图像块对应的目标图像块,并确定所述目标图像块的中心点为目标图像特征点;
获取所述初始图像特征点映射到所述目标图像层中的目标极线;
根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,在所述第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。
在一个实施例中,所述处理器21在执行所述构建第一鱼眼图像对应的第一金字塔模型,构建第二鱼眼图像对应的第二金字塔模型,具体执行以下步骤:
基于鱼眼摄像头23获取所述第一鱼眼图像和所述第二鱼眼图像;
根据分辨率倍数阈值构建所述第一鱼眼图像对应的所述第一金字塔模型,所述第一金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值;
根据分辨率倍数阈值构建所述第二鱼眼图像对应的所述第二金字塔模型,所述第二金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值。
在一个实施例中,所述处理器21在执行所述根据鱼眼相机模型和三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到初始映射点,并根据所述初始图像特征点、所述初始映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵,具体执行以下步骤:
根据所述鱼眼相机模型和所述三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到所述初始映射点;
在所述初始图像特征点所在图像层中获取关联特征点,所述关联特征点是以所述初始图像特征点为中心的附近特征点;
根据所述鱼眼相机模型和所述三维空间将所述关联特征点映射到所述目标图像层,在所述目标图像层中得到关联映射点;
根据所述初始图像特征点与所述关联特征点之间的位置关系、所述初始映射点以及所述关联映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵。
在一个实施例中,所述处理器21在执行所述根据所述鱼眼相机模型和所述三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到所述初始映射点,具体执行以下步骤:
根据所述鱼眼相机模型、鱼眼相机内参,将所述初始图像特征点映射到三维平面上,得到初始三维点;
根据所述第一鱼眼图像对应的鱼眼相机和所述第二鱼眼图像对应的鱼眼相机之间的相对位置、相对旋转信息,将所述初始三维点转换到所述第二鱼眼图像的相机坐标系下,得到过渡三维点;
将所述过渡三维点映射到所述第二鱼眼图像的相机坐标系下具有单位深度信息的平面上,得到过渡映射点;
对所述过渡映射点进行单点坐标变换,并根据所述鱼眼相机模型将变换后的过渡映射点投影到所述目标图像层中,得到所述初始映射点。
在一个实施例中,所述处理器21在执行所述获取所述初始图像特征点映射到所述目标图像层中的目标极线,具体执行以下步骤:
将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最小深度信息的平面上,得到最小映射点;
将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最大深度信息的平面上,得到最大映射点;
将所述最小映射点和所述最大映射点的连线,确定为初始极线线段;
对所述初始极线线段中的每个极线点进行单点坐标变换,并根据所述鱼眼相机模型将变换后的每个极线点投影到所述目标图像层中,得到所述目标极线。
在一个实施例中,所述处理器21在执行所述根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,在所述第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系,具体执行以下步骤:
根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,确定所述目标图像特征点在所述目标图像层中的最优点,作为目标最优点;
若所述目标图像层的层数大于所述目标图像特征点在所述第一金字塔模型中的层数,则将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层,基于投影后的目标最优点与投影后的目标极线确定在所述下一图像层中的最优点,并将所述下一图像层确定为所述目标图像层,将所述下一图像层中的最优点确定为所述目标最优点;
若所述目标图像层在所述第二金字塔模型中的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致,则建立所述目标图像特征点与最后一次所确定的所述目标最优点之间的位置匹配关系。
在一个实施例中,所述处理器21在执行所述将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层,基于投影后的目标最优点与投影后的目标极线确定在所述下一图像层中的目标最优点,具体执行以下步骤:
将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层;
基于目标搜索范围,在投影后的目标极线中,确定以投影后的目标最优点为中心点的待搜索极线线段;
获取在所述下一图像层中的所述待搜索极线线段上的目标最优点。
在一个实施例中,所述处理器21在执行所述建立所述目标图像特征点与最后一次所确定的所述目标最优点之间的位置匹配关系,具体执行以下步骤:
以所述目标图像特征点为中心在所述目标图像块中获取局部图像块,并将最后一次所确定的所述目标最优点作为调整点,并在所述调整点所在的图像层中获取以所述调整点为中心点的调整图像块,所述调整图像块的尺寸与所述局部图像块的尺寸相同;
根据雅克比、所述调整图像块中的像素值、所述局部图像块中的像素值,确定所述调整图像块的位置调整参数,根据所述位置调整参数调整所述调整图像块的位置;
当所述位置调整参数对应的模满足收敛条件时,将位置调整后的所述调整图像块的中心点确定为已调整最优点,建立所述目标图像特征点与所述已调整最优点之间的位置匹配关系。
在一个实施例中,所述处理器21在执行所述根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,确定所述目标图像特征点在所述目标图像层中的最优点,作为目标最优点,具体执行以下步骤:
基于所述目标极线确定所述目标图像特征点在所述目标图像层中对应的多个待匹配点,并根据所述多个待匹配点生成每个待匹配点分别对应的待定图像块;
分别获取每个待定图像块与所述目标图像块之间的相似度,根据所述相似度确定所述多个待匹配点中的最优待匹配点和次优待匹配点;
若所述最优待匹配点和所述次优待匹配点满足目标条件,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
在一个实施例中,所述处理器21在执行所述基于所述目标极线确定所述目标图像特征点在所述目标图像层中对应的多个待匹配点,具体执行以下步骤:
在所述目标极线上确定待搜索极线线段,在所述待搜索极线线段上按照像素长度阈值依次搜索像素点,并将搜索到的像素点确定为所述目标图像特征点在所述目标图像层上对应的多个待匹配点。
在一个实施例中,所述处理器21在执行所述根据所述多个待匹配点生成每个待匹配点分别对应的待定图像块,具体执行以下步骤:
通过对所述多个待匹配点作双线性插值处理,分别生成以每个待匹配点为中心点的待定图像块,所述待定图像块的尺寸与所述目标图像块的尺寸相同;
则所述分别获取每个待定图像块与所述目标图像块之间的相似度包括:
根据所述每个待定图像块中的像素值和所述目标图像块中的像素值,分别获取所述每个待定图像块与所述目标图像块之间的相似度。
在一个实施例中,所述处理器21在执行所述若所述最优待匹配点和次优待匹配点满足目标条件,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点,具体执行以下步骤:
获取所述最优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第一相似度,并获取所述次优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第二相似度;
若所述第一相似度大于相似度阈值,且所述第一相似度与所述第二相似度之间的差值大于差值阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
在一个实施例中,所述处理器21在执行所述若所述最优待匹配点和次优待匹配点满足目标条件,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点,具体执行以下步骤:
获取所述最优待匹配点与所述次优待匹配点所在位置之间的像素距离;
若所述像素距离小于像素距离阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
本发明实施例通过构建第一鱼眼图像和第二鱼眼图像对应的第一金字塔模型和第二金字塔模型;提取第一金字塔模型中的任一图像层的目标图像特征点,将目标图像特征点投影到第二金字塔模型中的目标图像层,根据极线在第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。由此可见,在对图像特征点进行位置匹配的过程中,并未对鱼眼图像进行描述子的提取,从而减少了匹配过程中的计算量,提高了匹配效率,且通过极线搜索的方法进行特征点的匹配,可以基于未经畸变校正的原始鱼眼图像得到较准确的特征点的匹配位置,从而提高了匹配的准确性。
应当理解,本发明实施例中所描述的图像处理装置2可执行前文图2至图7任一个所对应实施例中对所述图像处理方法的描述,也可执行前文图8或图9所对应实施例中对所述图像处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且所述计算机存储介质中存储有前文提及的图像处理装置1所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图2至图7任一个所对应实施例中对所述图像处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (15)
1.一种图像处理方法,其特征在于,包括:
构建第一鱼眼图像对应的第一金字塔模型,构建第二鱼眼图像对应的第二金字塔模型,所述第一金字塔模型和所述第二金字塔模型分别包括多个不同分辨率的图像层;
提取所述第一鱼眼图像在所述第一金字塔模型的任一图像层的初始图像特征点,将所述第二金字塔模型中具有最小分辨率的图像层确定为目标图像层;
根据鱼眼相机模型和三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到初始映射点,并根据所述初始图像特征点、所述初始映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵;
以所述初始映射点为中心点在所述目标图像层中获取过渡图像块,根据所述仿射变换矩阵对应的逆仿射变换矩阵,将所述过渡图像块映射到所述初始图像特征点所在图像层,在所述初始图像特征点所在图像层中得到所述过渡图像块对应的目标图像块,并确定所述目标图像块的中心点为目标图像特征点;
获取所述初始图像特征点映射到所述目标图像层中的目标极线;
根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,在所述第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。
2.根据权利要求1所述的方法,其特征在于,所述构建第一鱼眼图像对应的第一金字塔模型,构建第二鱼眼图像对应的第二金字塔模型,包括:
获取所述第一鱼眼图像和所述第二鱼眼图像;
根据分辨率倍数阈值构建所述第一鱼眼图像对应的所述第一金字塔模型,所述第一金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值;
根据分辨率倍数阈值构建所述第二鱼眼图像对应的所述第二金字塔模型,所述第二金字塔模型中任意相邻两个图像层之间的图像分辨率比例为所述分辨率倍数阈值。
3.根据权利要求1所述的方法,其特征在于,所述根据鱼眼相机模型和三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到初始映射点,并根据所述初始图像特征点、所述初始映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵,包括:
根据所述鱼眼相机模型和所述三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到所述初始映射点;
在所述初始图像特征点所在图像层中获取关联特征点,所述关联特征点是以所述初始图像特征点为中心的附近特征点;
根据所述鱼眼相机模型和所述三维空间将所述关联特征点映射到所述目标图像层,在所述目标图像层中得到关联映射点;
根据所述初始图像特征点与所述关联特征点之间的位置关系、所述初始映射点以及所述关联映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵。
4.根据权利要求3所述的方法,其特征在于,所述根据所述鱼眼相机模型和所述三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到所述初始映射点,包括:
根据所述鱼眼相机模型、鱼眼相机内参,将所述初始图像特征点映射到三维平面上,得到初始三维点;
根据所述第一鱼眼图像对应的鱼眼相机和所述第二鱼眼图像对应的鱼眼相机之间的相对位置、相对旋转信息,将所述初始三维点转换到所述第二鱼眼图像的相机坐标系下,得到过渡三维点;
将所述过渡三维点映射到所述第二鱼眼图像的相机坐标系下具有单位深度信息的平面上,得到过渡映射点;
对所述过渡映射点进行单点坐标变换,并根据所述鱼眼相机模型将变换后的过渡映射点投影到所述目标图像层中,得到所述初始映射点。
5.根据权利要求4所述的方法,其特征在于,所述获取所述初始图像特征点映射到所述目标图像层中的目标极线,包括:
将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最小深度信息的平面上,得到最小映射点;
将与所述初始图像特征点对应的所述过渡三维点,映射到所述第二鱼眼图像的相机坐标系下具有最大深度信息的平面上,得到最大映射点;
将所述最小映射点和所述最大映射点的连线,确定为初始极线线段;
对所述初始极线线段中的每个极线点进行单点坐标变换,并根据所述鱼眼相机模型将变换后的每个极线点投影到所述目标图像层中,得到所述目标极线。
6.根据权利要求1所述的方法,其特征在于,所述根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,在所述第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系,包括:
根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,确定所述目标图像特征点在所述目标图像层中的最优点,作为目标最优点;
若所述目标图像层的层数大于所述目标图像特征点在所述第一金字塔模型中的层数,则将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层,基于投影后的目标最优点与投影后的目标极线确定在所述下一图像层中的最优点,并将所述下一图像层确定为所述目标图像层,将所述下一图像层中的最优点确定为所述目标最优点;
若所述目标图像层在所述第二金字塔模型中的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致,则建立所述目标图像特征点与最后一次所确定的所述目标最优点之间的位置匹配关系。
7.根据权利要求6所述的方法,其特征在于,所述将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层,基于投影后的目标最优点与投影后的目标极线确定在所述下一图像层中的目标最优点,包括:
将所述目标最优点与所述目标极线投影到所述目标图像层的下一图像层;
基于目标搜索范围,在投影后的目标极线中,确定以投影后的目标最优点为中心点的待搜索极线线段;
获取在所述下一图像层中的所述待搜索极线线段上的目标最优点。
8.根据权利要求6所述的方法,其特征在于,所述建立所述目标图像特征点与最后一次所确定的所述目标最优点之间的位置匹配关系,包括:
以所述目标图像特征点为中心在所述目标图像块中获取局部图像块,并将最后一次所确定的所述目标最优点作为调整点,并在所述调整点所在的图像层中获取以所述调整点为中心点的调整图像块,所述调整图像块的尺寸与所述局部图像块的尺寸相同;
根据雅克比、所述调整图像块中的像素值、所述局部图像块中的像素值,确定所述调整图像块的位置调整参数,根据所述位置调整参数调整所述调整图像块的位置;
当所述位置调整参数对应的模满足收敛条件时,将位置调整后的所述调整图像块的中心点确定为已调整最优点,建立所述目标图像特征点与所述已调整最优点之间的位置匹配关系。
9.根据权利要求6所述的方法,其特征在于,所述根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,确定所述目标图像特征点在所述目标图像层中的最优点,作为目标最优点,包括:
基于所述目标极线确定所述目标图像特征点在所述目标图像层中对应的多个待匹配点,并根据所述多个待匹配点生成每个待匹配点分别对应的待定图像块;
分别获取每个待定图像块与所述目标图像块之间的相似度,根据所述相似度确定所述多个待匹配点中的最优待匹配点和次优待匹配点;
若所述最优待匹配点和所述次优待匹配点满足目标条件,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
10.根据权利要求9所述的方法,其特征在于,所述基于所述目标极线确定所述目标图像特征点在所述目标图像层中对应的多个待匹配点,包括:
在所述目标极线上确定待搜索极线线段,在所述待搜索极线线段上按照像素长度阈值依次搜索像素点,并将搜索到的像素点确定为所述目标图像特征点在所述目标图像层上对应的多个待匹配点。
11.根据权利要求9所述的方法,其特征在于,所述根据所述多个待匹配点生成每个待匹配点分别对应的待定图像块,包括:
通过对所述多个待匹配点作双线性插值处理,分别生成以每个待匹配点为中心点的待定图像块,所述待定图像块的尺寸与所述目标图像块的尺寸相同;
则所述分别获取每个待定图像块与所述目标图像块之间的相似度包括:
根据所述每个待定图像块中的像素值和所述目标图像块中的像素值,分别获取所述每个待定图像块与所述目标图像块之间的相似度。
12.根据权利要求9所述的方法,其特征在于,所述若所述最优待匹配点和次优待匹配点满足目标条件,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点,包括:
获取所述最优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第一相似度,并获取所述次优待匹配点对应的待定图像块与所述目标图像块之间的相似度,作为第二相似度;
若所述第一相似度大于相似度阈值,且所述第一相似度与所述第二相似度之间的差值大于差值阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
13.根据权利要求9所述的方法,其特征在于,所述若所述最优待匹配点和次优待匹配点满足目标条件,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点,包括:
获取所述最优待匹配点与所述次优待匹配点所在位置之间的像素距离;
若所述像素距离小于像素距离阈值,则将所述最优待匹配点确定为所述目标图像特征点在所述目标图像层中的最优点,并作为目标最优点。
14.一种图像处理装置,其特征在于,包括:
模型构建模块,用于构建第一鱼眼图像对应的第一金字塔模型,构建第二鱼眼图像对应的第二金字塔模型,所述第一金字塔模型和所述第二金字塔模型分别包括多个不同分辨率的图像层;
特征点提取模块,用于提取所述第一鱼眼图像在所述第一金字塔模型的任一图像层的初始图像特征点,将所述第二金字塔模型中具有最小分辨率的图像层确定为目标图像层;
矩阵生成模块,用于根据鱼眼相机模型和三维空间将所述初始图像特征点映射到所述目标图像层,在所述目标图像层中得到初始映射点,并根据所述初始图像特征点、所述初始映射点,生成所述第一鱼眼图像和所述第二鱼眼图像之间的仿射变换矩阵;
特征点确定模块,用于以所述初始映射点为中心点在所述目标图像层中获取过渡图像块,根据所述仿射变换矩阵对应的逆仿射变换矩阵,将所述过渡图像块映射到所述初始图像特征点所在图像层,在所述初始图像特征点所在图像层中得到所述过渡图像块对应的目标图像块,并确定所述目标图像块的中心点为目标图像特征点;
极线获取模块,用于获取所述初始图像特征点映射到所述目标图像层中的目标极线;
最优点匹配模块,用于根据所述目标图像块与所述目标极线上的多个待匹配点对应的待定图像块之间的相似度,在所述第二金字塔模型中逐层依次获取所述目标图像特征点对应的目标最优点,直至获取到的所述目标最优点所在图像层的层次与所述目标图像特征点在所述第一金字塔模型中的层次一致时,停止获取下一图像层中的目标最优点,并建立所述目标图像特征点与最后一次获取到的目标最优点之间的位置匹配关系。
15.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1-13任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811520307.9A CN109242769B (zh) | 2018-12-13 | 2018-12-13 | 一种图像处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811520307.9A CN109242769B (zh) | 2018-12-13 | 2018-12-13 | 一种图像处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109242769A CN109242769A (zh) | 2019-01-18 |
CN109242769B true CN109242769B (zh) | 2019-03-19 |
Family
ID=65073921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811520307.9A Active CN109242769B (zh) | 2018-12-13 | 2018-12-13 | 一种图像处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109242769B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111898396A (zh) * | 2019-05-06 | 2020-11-06 | 北京四维图新科技股份有限公司 | 障碍物检测方法和装置 |
CN112241967B (zh) * | 2019-07-16 | 2023-08-25 | 北京地平线机器人技术研发有限公司 | 目标跟踪方法、装置、介质和设备 |
CN112233153A (zh) * | 2020-09-27 | 2021-01-15 | 北京迈格威科技有限公司 | 图像匹配方法、装置、电子设备及存储介质 |
CN112308768B (zh) * | 2020-10-19 | 2023-09-08 | 武汉中科通达高新技术股份有限公司 | 一种数据处理方法、装置、电子设备以及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010086540A (ja) * | 2008-10-01 | 2010-04-15 | Fuji Xerox Co Ltd | 特徴記述子ベクトル生成方法、システムおよびプログラム |
CN102607526A (zh) * | 2012-01-03 | 2012-07-25 | 西安电子科技大学 | 双介质下基于双目视觉的目标姿态测量方法 |
CN105335977A (zh) * | 2015-10-28 | 2016-02-17 | 苏州科达科技股份有限公司 | 摄像系统及目标对象的定位方法 |
CN106504237A (zh) * | 2016-09-30 | 2017-03-15 | 上海联影医疗科技有限公司 | 确定匹配点对的方法及图像获取方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4962382B2 (ja) * | 2008-03-31 | 2012-06-27 | 富士通株式会社 | 画像間対応付けプログラム、画像間対応付け装置および画像間対応付け方法 |
US10062005B2 (en) * | 2015-03-17 | 2018-08-28 | Teledyne Scientific & Imaging, Llc | Multi-scale correspondence point matching using constellation of image chips |
-
2018
- 2018-12-13 CN CN201811520307.9A patent/CN109242769B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010086540A (ja) * | 2008-10-01 | 2010-04-15 | Fuji Xerox Co Ltd | 特徴記述子ベクトル生成方法、システムおよびプログラム |
CN102607526A (zh) * | 2012-01-03 | 2012-07-25 | 西安电子科技大学 | 双介质下基于双目视觉的目标姿态测量方法 |
CN105335977A (zh) * | 2015-10-28 | 2016-02-17 | 苏州科达科技股份有限公司 | 摄像系统及目标对象的定位方法 |
CN106504237A (zh) * | 2016-09-30 | 2017-03-15 | 上海联影医疗科技有限公司 | 确定匹配点对的方法及图像获取方法 |
Non-Patent Citations (2)
Title |
---|
Real-Time Indoor Localization of Service Robots Using Fisheye Camera and Laser Pointers;Zhaopeng Gu 等;《Proceedings of the 2014 IEEE International Conference on Robotics and Biomimetics》;20141105;1-5 |
基于图像的球面场景构造研究与实现;杨燕;《中国优秀硕士学位论文全文数据库 信息科技辑》;20080715(第7期);I138-607 |
Also Published As
Publication number | Publication date |
---|---|
CN109242769A (zh) | 2019-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109242769B (zh) | 一种图像处理方法和装置 | |
CN113096234B (zh) | 利用多张彩色图片生成三维网格模型的方法及装置 | |
CN106157307B (zh) | 一种基于多尺度cnn和连续crf的单目图像深度估计方法 | |
CN108665491A (zh) | 一种基于局部参考点的快速点云配准方法 | |
Hartley et al. | L/sub/spl infin//minimization in geometric reconstruction problems | |
CN105809712B (zh) | 一种高效大位移光流估计方法 | |
CN108335353A (zh) | 动态场景的三维重建方法、装置和系统、服务器、介质 | |
US8514224B2 (en) | Three-dimensional modeling apparatus and method using grid structure | |
WO2015188445A1 (zh) | 点云三维模型重建方法及系统 | |
CN106778928A (zh) | 图像处理方法及装置 | |
CN109308459A (zh) | 基于手指注意力模型和关键点拓扑模型的手势估计方法 | |
CN109754459B (zh) | 一种用于构建人体三维模型的方法及系统 | |
CN110381268A (zh) | 生成视频的方法,装置,存储介质及电子设备 | |
CN107341846A (zh) | 一种实时显示大规模三维重建场景的方法及设备 | |
CN109658450A (zh) | 一种基于无人机的快速正射影像生成方法 | |
CN110443883A (zh) | 一种基于dropblock的单张彩色图片平面三维重建方法 | |
CN109658443A (zh) | 立体视觉匹配方法及系统 | |
CN111402412A (zh) | 数据采集方法及装置、设备、存储介质 | |
Vespa et al. | Adaptive-resolution octree-based volumetric SLAM | |
CN109147025A (zh) | 一种面向rgbd三维重建的纹理生成方法 | |
US11514660B1 (en) | Scene recognition method, training method and device based on pyramid attention | |
CN106251281B (zh) | 一种基于形状插值的图像渐变方法 | |
CN105608732B (zh) | 一种三角网格模型的优化方法 | |
CN104751508B (zh) | 3d立体影视制作中新视图的全自动快速生成及补全方法 | |
CN108629809A (zh) | 一种精确高效的立体匹配方法 |
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 |