CN111462199B - 基于gpu的快速散斑图像匹配方法 - Google Patents
基于gpu的快速散斑图像匹配方法 Download PDFInfo
- Publication number
- CN111462199B CN111462199B CN202010186978.7A CN202010186978A CN111462199B CN 111462199 B CN111462199 B CN 111462199B CN 202010186978 A CN202010186978 A CN 202010186978A CN 111462199 B CN111462199 B CN 111462199B
- Authority
- CN
- China
- Prior art keywords
- point
- pixel
- matching
- gpu
- corr
- 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
Classifications
-
- 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
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于GPU的快速散斑图像匹配方法。本发明使用投影仪向待测物投影散斑图案,后用两个相机同步采集投影图案并进行极线校正,利用计算机图形处理器逐像素地计算两幅图像的相关系数,找到左右相机的像素匹配点,再用二次多项式拟合找到其亚像素匹配点,由亚像素匹配点求出视差值。本发明相比于传统的散斑图像匹配,通过采用GPU加速单元极大地缩短了图像的匹配时间,提高了匹配效率。
Description
技术领域
本发明属于图像配准技术领域,具体为一种基于GPU的快速散斑图像匹配方法。
背景技术
基于散斑投影的三维成像是基于结构光的一类方法,整体上分为两种匹配方法:空间相关法和时间相关法。其中,空间相关法是向待测目标投影单幅散斑图来进行三维重建,测量的主要范围是动态场景或者运动中的目标物体,但是其精度较低,且这种方法容易在待测目标的曲率较高的或者边缘的区域发生点缺失现象,不利于获得比较完整的三维重建结果;与前者相比,时间相关法精度比较高,但是三维重建过程中需要向待测目标投影多幅不同的散斑,因此主要适用于静态的场景和目标,并不适用于动态目标的测量。二者对比,各有利弊,但是无论将来三维重建技术如何发展,匹配算法的匹配效率和匹配精度都是其研究的重点。
GPU即Graphics Process Unit,译为“图形处理器”。GPU是显示卡的核心部件,它决定了该显卡的档次和大部分性能,同时也是2D显示卡和3D显示卡的区别依据。今天的GPU不仅具备高质量和高性能图形处理能力,还可用于通用计算。今天,CPU已经不再局限于3D图像处理,GPU通用计算技术发展已经引起业界不少的关注,事实也证明在浮点运算、并行计算等部分计算方面,GPU可以提供数十倍乃至于上百倍于CPU的性能,GPU使显卡减少了对CPU的依赖,并进行部分原本CPU的工作,尤其是在3D图像处理时。GPU所采用的核心技术有硬体T&L、立方环境材质贴图和顶点混合、纹理压缩和凹凸映射贴图、双重纹理四像素256位渲染引擎等,而硬体T&L技术可以说是GPU的标志。
在三维重建过程中,一般需要利用两个或多个图像传感器采集图像,其类似于人眼视觉的机制,通过对采集到的同一场景的两幅或多幅图像进行立体匹配,通过立体匹配找出图像之间的视差,再利用图像采集的三角关系确定场景中人物或物体的深度信息。在立体匹配过程中,通过选择匹配算法、匹配基元、相似性判断标准进行,在完成匹配后,可以得出场景中物体的视差图。然而,在实际应用过程中,当立体匹配计算量较大时,难以实现实时的立体匹配效果。
发明内容
本发明的目的在于提供一种基于GPU的快速散斑图像匹配方法,通过计算机图像处理单元,加速散斑图像匹配流程,提高匹配效率。
实现本发明目的的技术解决方案为:一种基于GPU的快速散斑图像匹配方法,具体步骤为:
步骤1:构建双目散斑投影系统,并完成系统标定;
步骤2:投影散斑图案并同步采集一组图像,对于采集到的左右视图进行极线校正;
步骤3:逐像素地计算两幅图像的相关系数,将相关系数最大的点作为像素匹配点;
步骤4:根据像素点及其像素匹配点,用二次多项式进行拟合找到亚像素匹配点;
步骤5:计算亚像素匹配点与参考图像匹配点的差值,将该差值作为该像素点的像素值。
优选地,所述双目散斑投影系统包括投影仪、设置在投影仪两侧的相机,以及与相机连接的计算机,所述投影仪和相机相连。
优选地,分别计算左视图中点P与右视图中像素点的相关系数,将相关系数最大的点作为点P的像素匹配点,计算公式为:
式中,S表示点P所在的邻域,Scorr表示点Pcorr所在的邻域,IP、和/> 分别表示点P的灰度、点P所在的邻域S的平均灰度和点Pcorr的灰度、点Pcorr所在的邻域Scorr的平均灰度,点Pcorr为与左视图点P对应的右视图同一行上任意一点。
优选地,利用计算机图形处理器逐像素地并行计算两幅图像的相关系数。
优选地,利用计算机图形处理器逐像素地计算两幅图像的相关系数的具体过程为:
对于左视图上每一个有效区域内的点P,以点P为中心选取其周围9*9的邻域,对左视图邻域内的每一点,在右视图同一行上选取任意一点Pcorr,选取同样大小的邻域,计算左邻域与不同右邻域的相关系数,找到相关系数最大时Pcorr的位置,即为像素匹配点。
优选地,用二次多项式进行拟合找到亚像素匹配点的具体方法为:
对于左视图上P,选取其在右视图上的像素匹配点Pcorr左右共5个邻点Pi,i=1,2,...,5,分别计算P与Pi的相关系数;
根据得到的五个相关系数,用最小二乘法进行曲线拟合,找到拟合曲线的峰值位置,峰值处对应的坐标位置即为亚像素匹配点的位置。
优选地,用最小二乘法进行曲线拟合的具体过程为:
已知数据点(xi,yi),i=1,2,…,5,用二次函数p(x)=a0+a1x+a2x2作为近似拟合曲线,获得均方误差为:
为使得均方误差达到最小,由求极值的方法得到法方程:
由此,求出系数则拟合曲线的峰值位置为/>
本发明与现有技术相比,其显著优点为:一方面通过投散斑图像进行散斑编码,可以简化匹配过程,提高匹配准确率;另一方面本发明基于CUDA对立体匹配算法进行加速,采用GPU加速单元极大地缩短了左右图像的匹配时间,提高了匹配效率。
附图说明
图1为一种基于GPU的快速散斑图像匹配方法的流程示意图。
图2为双目散斑投影系统构造示意图。
图3为编程模型CUDA调用GPU时的线程结构层次示意图。
图4为散斑图像匹配示意图。
图5为散斑图像匹配结果示意图,其中(a)为相机左视图,(b)为相机右视图,(c)为传统匹配算法结果,(d)为本发明计算结果即视差图。
具体实施方式
一种基于GPU的快速散斑图像匹配方法,通过计算机图像处理单元,加速散斑图像匹配流程,提高匹配效率。
如图1所示,本发明基于GPU的快速散斑图像匹配方法的实现步骤如下:
步骤1:搭建测量系统(又称双目散斑投影系统),并完成系统标定。所述双目散斑投影系统包含一台计算机,两台相机和一台投影仪。投影仪和两个相机之间用触发线相连接,相机和计算机用数据线相连接。相机1与相机2关于投影仪对称放置,如图2所示。所述相机为黑白相机。
然后利用张正友标定算法(Z.Zhang,“A flexible new technique for cameracalibration.”IEEE Transactions on pattern analysis and machineintelligence.22(11),1330-1334(2000).)将整个系统标定到统一世界坐标系下,得到两个相机与投影仪在一个世界坐标系下的标定参数,并将这些参数转化为二维到三维,二维到二维的映射参数(K.Liu,Y.Wang,D.L.Lau,et al,“Dual-frequency pattern schemefor high-speed 3-D shape measurement.”Optics express.18(5):5229-5244(2010).)。
步骤2:利用投影仪投影散斑图案并利用两台相机同步采集一组图像,对于采集到的左右视图进行极线校正。对于传统的双目视觉而言,往往采用灰度以及灰度梯度等信息来进行匹配点的查找,这种方法非常耗时且有较大误差。并且,对于纹理信息非常均匀的物体而言,比如:白纸、白墙等,这种匹配的方法则几乎无法得出正确结果。通过投影散斑图像进行散斑编码后,一方面可以简化匹配过程,另一方面也可以提高准确率。
步骤3:利用计算机图形处理器(GPU)逐像素地计算两幅图像的相关系数,找到相关系数最大的像素匹配点。
对于左视角(相机1视角)下的某一个点,在右视角(相机2视角)下必定存在一个匹配点,这个匹配点的像素邻域灰度分布跟左视角下的点在理论上应该是完全一样的,在实际情况下两幅图像的相关系数可能不等于1,但也会是接近于1的一个数,分别计算左视图中点P与右视图中每个像素点的相关系数,将与点P相关系数最大的点作为点P的匹配点,相关系数计算公式为:
其中,S表示点P所在的邻域,Scorr表示点Pcorr所在的邻域,IP、和/> 分别表示点P的灰度、点P所在的邻域S的平均灰度和点Pcorr的灰度、点Pcorr所在的邻域Scorr的平均灰度,点Pcorr为与左视图点P对应的右视图同一行上任意一点。
利用此相关系数计算方法,能够较好的消除背景光强,保证相关系数分布具有良好的单峰性。
由于图像匹配为逐点计算过程,因此利用计算机图形处理器(GPU),将逐像素的串行计算过程转化为并行计算,大大缩短了计算时间。整个GPU调用时的线程结构层次如图3所示,在CUDA线程模型中,线程(Thread)是GPU的最小执行单元,能够完成一个最小的逻辑意义的操作,每个线程都有自己的指令地址计数器和寄存器状态,利用自身的数据执行当前的指令。多个线程位于一个最高维度为3的线程块(Block)中,每个块(Block)所能包含的线程(Thread)数量是有限制的,因为目前每个块内的所有线程都是在一个物理的处理器核中,并且共享了这个核有限的内存资源。当前的GPU中,每个块最多能执行1024个线程。线程块又通过一个最高维度为3的网格(Grid)来管理。线程块必须独立执行,而且能够以任意顺序,串行或者并行执行。
在编程过程中,使用GPU进行匹配计算的具体步骤为:首先读取待匹配的一组散斑图像数据,然后将数据从CPU拷贝至GPU。由于匹配计算为并行,因此对于左视图上每一个有效区域内的点P,以该点为中心,选取其周围9*9的邻域,并在右视图同一行上选取任意一点Pcorr,选取同样大小的邻域,计算左图像对应邻域与右图像对应邻域的相关系数,找到相关系数最大时点Pcorr的位置,即为像素匹配点,如图3所示。最后将匹配结果从GPU拷贝到CPU输出查看。
步骤4:用二次多项式拟合进一步找到亚像素匹配点。为了找到亚像素匹配点,用五点法对像素匹配点进行二次拟合。具体步骤如下:
首先,对于左视图上P,选取其在右视图上的匹配点Pcorr左右共5个邻点Pi,i=1,2,...,5,分别计算P与Pi的相关系数。
然后,根据得到的五个相关系数,用最小二乘法进行曲线拟合,找到拟合曲线的峰值位置,峰值处对应的坐标位置即为亚像素匹配点的位置。拟合的具体实现过程如下:
已知数据点(xi,yi),i=1,2,…,5,用二次函数p(x)=a0+a1x+a2x2作为近似拟合曲线,则均方误差为
要求其达到最小,由求极值的方法得到法方程:
由此,可以求出系数拟合曲线的峰值位置为/>
由于对于每个像素匹配点,拟合过程互相独立,因此该过程同样可以在GPU中进行。将左视图和初始匹配数据从CPU拷贝到GPU之后,对于每个像素匹配点,均用五点法进行拟合找到亚像素匹配点,再将匹配结果从GPU拷贝到CPU。
步骤五:用亚像素匹配点坐标xi与参考图像匹配点x的差值,则得到匹配点对应的视差值,即视差值d=xi-x,把每个像素点匹配之后计算得到的视差值作为该像素点的像素值。
为验证本发明的有效性,使用两台相机(型号acA640-750um,Basler),一台DLP投影仪(型号LightCrafter 4500PRO,TI)以及一台计算机构建了一套基于GPU的快速散斑图像匹配装置,如图2所示。相机最大分辨率为640×480,投影仪分辨率为912×1140。GPU则是NVidia公司推出的GeForce GTX760 T1OEM,其部分性能参数如表1所示。利用步骤一所述,标定相机参数,投影并采集一组散斑图像。利用步骤二,可以对采集到的图像进行极线校正。利用步骤三和步骤四,安装并配置CUDA,使用GPU对图像像素匹配和亚像素匹配过程进行加速,根据图像大小及GPU的性能,设置核函数的线程大小为256,则线程块数目为1200。匹配结果如图5所示,其中(a)为相机左视图,(b)为相机右视图,(c)为传统匹配算法结果,(d)为本发明计算结果。散斑图像匹配时间消耗对比如表2所示。
表1
表2
Claims (5)
1.一种基于GPU的快速散斑图像匹配方法,其特征在于,具体步骤为:
步骤1:构建双目散斑投影系统,并完成系统标定;
步骤2:投影散斑图案并同步采集一组图像,对于采集到的左右视图进行极线校正;
步骤3:逐像素地计算两幅图像的相关系数,将相关系数最大的点作为像素匹配点,计算公式为:
式中,S表示点P所在的邻域,Scorr表示点Pcorr所在的邻域,IP、和/> 分别表示点P的灰度、点P所在的邻域S的平均灰度和点Pcorr的灰度、点Pcorr所在的邻域Scorr的平均灰度,点Pcorr为与左视图点P对应的右视图同一行上任意一点;
步骤4:根据像素点及其像素匹配点,用二次多项式进行拟合找到亚像素匹配点,具体过程为:
已知数据点(xi,yi),i=1,2,…,5,用二次函数p(x)=a0+a1x+a2x2作为近似拟合曲线,获得均方误差为:
为使得均方误差达到最小,由求极值的方法得到法方程:
由此,求出系数则拟合曲线的峰值位置为/>
步骤5:计算亚像素匹配点与参考图像匹配点的差值,将该差值作为该像素点的像素值。
2.根据权利要求1所述的基于GPU的快速散斑图像匹配方法,其特征在于,所述双目散斑投影系统包括投影仪、设置在投影仪两侧的相机,以及与相机连接的计算机,所述投影仪和相机相连。
3.根据权利要求1~2任一所述的基于GPU的快速散斑图像匹配方法,其特征在于,利用计算机图形处理器逐像素地并行计算两幅图像的相关系数。
4.根据权利要求3所述的基于GPU的快速散斑图像匹配方法,其特征在于,利用计算机图形处理器逐像素地计算两幅图像的相关系数的具体过程为:
对于左视图上每一个有效区域内的点P,以点P为中心选取其周围9*9的邻域,对左视图邻域内的每一点,在右视图同一行上选取任意一点Pcorr,选取同样大小的邻域,计算左邻域与不同右邻域的相关系数,找到相关系数最大时Pcorr的位置,即为像素匹配点。
5.根据权利要求1所述的基于GPU的快速散斑图像匹配方法,其特征在于,用二次多项式进行拟合找到亚像素匹配点的具体方法为:
对于左视图上P,选取其在右视图上的像素匹配点Pcorr左右共5个邻点Pi,i=1,2,...,5,分别计算P与Pi的相关系数;
根据得到的五个相关系数,用最小二乘法进行曲线拟合,找到拟合曲线的峰值位置,峰值处对应的坐标位置即为亚像素匹配点的位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010186978.7A CN111462199B (zh) | 2020-03-17 | 2020-03-17 | 基于gpu的快速散斑图像匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010186978.7A CN111462199B (zh) | 2020-03-17 | 2020-03-17 | 基于gpu的快速散斑图像匹配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111462199A CN111462199A (zh) | 2020-07-28 |
CN111462199B true CN111462199B (zh) | 2023-08-04 |
Family
ID=71680845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010186978.7A Active CN111462199B (zh) | 2020-03-17 | 2020-03-17 | 基于gpu的快速散斑图像匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111462199B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112560844B (zh) * | 2020-12-09 | 2024-07-23 | 南京理工大学智能计算成像研究院有限公司 | 一种散斑图案自动识别的方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104331897B (zh) * | 2014-11-21 | 2017-03-29 | 天津工业大学 | 基于极线校正的亚像素级相位立体匹配方法 |
CN104537657A (zh) * | 2014-12-23 | 2015-04-22 | 西安交通大学 | 一种搜索并行gpu加速的激光散斑图像深度感知方法 |
CN106875443B (zh) * | 2017-01-20 | 2019-08-23 | 深圳大学 | 基于灰度约束的三维数字散斑的整像素搜索方法及装置 |
-
2020
- 2020-03-17 CN CN202010186978.7A patent/CN111462199B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111462199A (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107063129B (zh) | 一种阵列式并行激光投影三维扫描方法 | |
CN110514143B (zh) | 一种基于反射镜的条纹投影系统标定方法 | |
CN104268922B (zh) | 一种图像渲染方法及图像渲染装置 | |
CN104574501B (zh) | 一种针对复杂三维场景的高质量纹理映射方法 | |
US9117267B2 (en) | Systems and methods for marking images for three-dimensional image generation | |
WO2021203883A1 (zh) | 三维扫描方法、三维扫描系统和计算机可读存储介质 | |
CN103971404B (zh) | 一种高性价比的3d实景复制装置 | |
CN104596439A (zh) | 一种基于相位信息辅助的散斑匹配三维测量方法 | |
EP3382645B1 (en) | Method for generation of a 3d model based on structure from motion and photometric stereo of 2d sparse images | |
US9147279B1 (en) | Systems and methods for merging textures | |
CN103530907B (zh) | 基于图像的复杂三维模型绘制方法 | |
CN108195313A (zh) | 一种基于光强响应函数的高动态范围三维测量方法 | |
CN112525107A (zh) | 一种基于事件相机的结构光三维测量方法 | |
CN109934935A (zh) | 一种服装与人体图像穿帮、匹配迁移的方法与系统 | |
CN115631317B (zh) | 隧道衬砌正射影像生成方法及装置、存储介质、终端 | |
WO2023236725A1 (zh) | 一种三维测量方法、设备和存储介质 | |
CN111353997A (zh) | 一种基于条纹投影的实时三维面型缺陷检测方法 | |
Wang et al. | Voge: a differentiable volume renderer using gaussian ellipsoids for analysis-by-synthesis | |
JP4354708B2 (ja) | 多視点カメラシステム | |
Ravanelli et al. | A high-resolution photogrammetric workflow based on focus stacking for the 3D modeling of small Aegean inscriptions | |
Yang et al. | Flexible and fast calibration method for uni-directional multi-line structured light system | |
CN111462199B (zh) | 基于gpu的快速散斑图像匹配方法 | |
CN106157321B (zh) | 基于平面表面高动态范围图像的真实点光源位置测算方法 | |
CN116433841A (zh) | 一种基于全局优化的实时模型重建方法 | |
CN110458951A (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 |