[发明专利]一种基于CUDA的单目立体匹配及加速的方法在审
申请号: | 202011178029.0 | 申请日: | 2020-10-29 |
公开(公告)号: | CN112001867A | 公开(公告)日: | 2020-11-27 |
发明(设计)人: | 左超;张晓磊;沈德同 | 申请(专利权)人: | 南京理工大学智能计算成像研究院有限公司 |
主分类号: | G06T5/00 | 分类号: | G06T5/00;G06T5/50 |
代理公司: | 北京翔瓯知识产权代理有限公司 11480 | 代理人: | 向维登 |
地址: | 210000 江苏省南京市建邺*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 cuda 立体 匹配 加速 方法 | ||
1.一种基于CUDA的单目立体匹配及加速的方法,其特征在于步骤如下:
步骤一:输入两幅图片并进行畸变校正;
步骤二:选定一个9×7的窗口,对两幅图片除去边缘部分的其它像素做Census变换,得到二进制码流;
步骤三:在视差范围内,依次选定第一幅图片中的像素点,遍历第二幅图范围内的各个像素点的二进制码流,计算汉明距离,得到初始的匹配成本Cost;
步骤四:对初始匹配成本Cost进行单目的SGM成本聚合,结合CUDA的共享内存机制以及线程之间的同步机制,将SGM分为4条独立的路径进行成本聚合;
步骤五:使用WTA算法选取能量函数最小所对应的视差图;
步骤六:使用Outlier算法进行离群点检测,得到需要的视差图;
步骤七:对步骤六得到的视差图使用亚像素插值算法进行优化;
步骤八:对步骤七得到的视差图使用自动去杂点算法进行优化。
2.根据权利要求1所述的基于CUDA的单目立体匹配及加速的方法,其特征在于步骤一中,输入一张参考面图片以及一张待测对象的图片后,采用移植Matlab相机标定工具箱的畸变校正代码的方法,并通过查找表的方式用CUDA代码实现图片的畸变校正。
3.根据权利要求1所述的基于CUDA的单目立体匹配及加速的方法,其特征在于步骤二中的Census变换具体为:在图像区域内定义一个矩形窗口,用这个矩形窗口遍历图像,再选取中心像素作为参考像素,将矩形窗口的每个像素的灰度值与参考像素的灰度值进行比较,灰度值大于参考值的像素记为0,灰度值小于参考值的像素记为1,最后再按位连接,得到变换后的结果为0和1组成的二进制码流,Census变换的过程由如下公式表示:
其中,
4.根据权利要求1所述的基于CUDA的单目立体匹配及加速的方法,其特征在于步骤三中,计算汉明距离得到初始匹配成本Cost,汉明距离为比较Census变换得到的二进制码流中二进制序列不同的个数。
5.根据权利要求1所述的基于CUDA的单目立体匹配及加速的方法,其特征在于步骤四中,4条独立的路径分为独立的4个成本聚合函数:
由左至右路径函数CostAggregationKernelLeftToRight,
由右至左路径函数CostAggregationKernelRightToLeft,
由上至右下路径函数CostAggregationKernelUpToDown,
由下至上路径函数CostAggregationKernelDownToUp。
6.根据权利要求1所述的基于CUDA的单目立体匹配及加速的方法,其特征在于步骤五中,WTA算法是指在某个像素的所有视差下的代价值中,选择最小代价值所对应的视差作为最优视差。
7.根据权利要求1所述的基于CUDA的单目立体匹配及加速的方法,其特征在于步骤六中,Outlier算法采用的是基于距离的离群点检测,离群点是指在设定的距离阈值内,对每个对象考察它的距离阈值领域内其他对象的个数,如果视差图中大多数对象都远离该对象,则该对象即被视为离群点。
8.根据权利要求1所述的基于CUDA的单目立体匹配及加速的方法,其特征在于步骤七中,亚像素是指相邻两相素之间的细分情况,输入值为二分之一、三分之一或四分之一,亚像素插值算法通过对每个像素被分为的更小的单元实施插值算法来提高WTA算法得到的整像素精度。
9.根据权利要求1所述的基于CUDA的单目立体匹配及加速的方法,其特征在于步骤八中,采用串行执行的方式来实现自动去杂点算法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京理工大学智能计算成像研究院有限公司,未经南京理工大学智能计算成像研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011178029.0/1.html,转载请声明来源钻瓜专利网。