CN115760981A - 一种基于目标检测和iou匹配的双目立体匹配方法 - Google Patents
一种基于目标检测和iou匹配的双目立体匹配方法 Download PDFInfo
- Publication number
- CN115760981A CN115760981A CN202211451030.5A CN202211451030A CN115760981A CN 115760981 A CN115760981 A CN 115760981A CN 202211451030 A CN202211451030 A CN 202211451030A CN 115760981 A CN115760981 A CN 115760981A
- Authority
- CN
- China
- Prior art keywords
- target
- binocular
- matching
- image
- detection
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 134
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000012549 training Methods 0.000 claims description 13
- 238000012937 correction Methods 0.000 claims description 9
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 4
- 238000002372 labelling Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 3
- 238000005516 engineering process Methods 0.000 description 3
- 241000207199 Citrus Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 235000020971 citrus fruits Nutrition 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000013100 final test Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Image Processing (AREA)
Abstract
本发明涉及图像处理技术领域,具体涉及一种基于目标检测和iou匹配的双目立体匹配方法,包括使用张正友标定法对双目相机并标定校正;通过校正后的双目相机拍摄双目左右图像;隔离并记录双目左右图像的独立区域;使用目标检测模型分别检测左图像和右图像,得到最终检测结果;基于最终检测结果获取左图像和右图像目标检测框的坐标并编号;对左右图像目标框依次进行IoU匹配,得到目标匹配结果;对目标匹配结果与独立区域进行拼接还原双目图像,得到最终匹配结果,本发明具有极大的实用价值并且极大地节约了计算资源,从而解决现有的双目立体匹配方法手计算资源因素影响较大的问题。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种基于目标检测和iou匹配的双目立体匹配方法。
背景技术
随着计算机图像处理技术的发展,双目视觉技术逐渐成为计算机视觉领域中研究的热点问题。
双目视觉技术通常被应用在移动抓取机器人等设备上帮助机器人抓取三维空间中的目标,首先需要对双目相机进行标定校正,然后获取双目图像并识别目标,再结合立体匹配方法获取目标在双目图像中的匹配点,最后利用几何关系计算出目标的三维空间中的位置。
其中双目立体匹配是一项具有挑战性的任务,目前的匹配方法主要包括基于区域的匹配方法、基于特征的匹配方法以及基于相位的匹配方法。尽管上述立体匹配算法取得了较大的突破,但是其依然受光照、计算资源等因素影响较大。
发明内容
本发明的目的在于提供一种基于目标检测和iou匹配的双目立体匹配方法,旨在解决现有的双目立体匹配方法手计算资源因素影响较大的问题。
为实现上述目的,本发明提供了一种基于目标检测和iou匹配的双目立体匹配方法,包括以下步骤:
使用张正友标定法对双目相机并标定校正;
通过校正后的所述双目相机拍摄双目左右图像;
隔离并记录所述双目左右图像的独立区域;
使用目标检测模型分别检测左图像和右图像,得到最终检测结果;
基于所述最终检测结果获取所述左图像和所述右图像目标检测框的坐标并编号;
对左右图像目标框依次进行IoU匹配,得到目标匹配结果;
对所述目标匹配结果与所述独立区域进行拼接还原双目图像,得到最终匹配结果。
其中,所述使用张正友标定法对双目相机并标定校正,包括:
制作一个黑白棋盘格标定板;
使用双目相机拍摄不同位置及角度状态下的所述黑白棋盘格标定板30次,得到30对双目左右图像;
将所述30对双目左右图像分别输入到Matlab 2018b双目标定工具箱进行角点检测标定,得到双目相机的标定参数;
通过所述双目相机的标定参数将所述左右图像旋转并平移到共面和极线共线的位置,完成校正。
其中,所述通过所述双目相机的标定参数将所述左右图像旋转并平移到共面和极线共线的位置,完成校正,包括:
将标定参数传入到Opencv库函数cv2.stereoRectify()中进行计算立体校正后的映射矩阵;
采用所述库函数cv2.remap()与校正后得到的映射矩阵将原图像重映射到图像上,完成校正。
其中,所述使用目标检测模型分别检测左图像和右图像,包括:
使用所述双目相机对目标进行拍摄1000张图片用于构建目标数据集,并对所述目标数据集进行标注;
在Pytorch框架下搭建基础网络的SSD目标检测模型;
将标注后的所述目标数据集输入到所述SSD目标检测模型进行训练,得到目标检测模型的训练权重;
在Pytorch框架下使用库函数torch.device()将模型加载到GPU显卡,以及使用库函数torch.load()载入所述目标检测模型的训练权重启动所述目标检测模型;
分别将所述左图像和所述右图像输入到重启后的所述目标检测模型进行特征提取,得到最终检测结果。
其中,所述对左右图像目标框依次进行IoU匹配,得到目标匹配结果,包括:
将所述左图像的检测框集合作为第一参照对象,将所述右图像的检测框集合作为第一待匹配对象;
计算所述第一参照对象集合中的各个检测框与所述第一待匹配对象集合中的各个检测框的IoU值,得到第一检测框序号;
将所述右图像的检测框集合作为第二参照对象,将所述左图像的检测框集合作为第二待匹配对象;
计算所述第二参照对象集合中的各个检测框与所述第二待匹配对象集合中的各个检测框的IoU值,得到第二检测框序号;
若所述第一检测框序号和所述第二检测框序号相同则目标匹配成功,并以检测框的中心点作为目标的匹配点,得到目标匹配结果。
本发明的一种基于目标检测和iou匹配的双目立体匹配方法,使用张正友标定法对双目相机并标定校正;通过校正后的所述双目相机拍摄双目左右图像;隔离并记录所述双目左右图像的独立区域;使用目标检测模型分别检测左图像和右图像,得到最终检测结果;基于所述最终检测结果获取所述左图像和所述右图像目标检测框的坐标并编号;对左右图像目标框依次进行IoU匹配,得到目标匹配结果;对所述目标匹配结果与所述独立区域进行拼接还原双目图像,得到最终匹配结果,本发明通过结合深度学习目标检测方法及IoU匹配方法对双目图像中识别的目标进行立体匹配,具有极大的实用价值并且极大地节约了计算资源,本发明的双目立体匹配方法,可以应用于目标的双目测距和三维空间定位等领域,从而解决现有的双目立体匹配方法手计算资源因素影响较大的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的一种基于目标检测和iou匹配的双目立体匹配方法的流程图。
图2是本发明提供的一种基于目标检测和iou匹配的双目立体匹配方法的步骤流程图;
图3是本发明的目标检测模型。
图4是是本发明IoU匹配方法的伪代码。
图5是本发明的实例。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
请参阅图1至图5,本发明提供一种基于目标检测和iou匹配的双目立体匹配方法,包括以下步骤:
S1使用张正友标定法对双目相机并标定校正;
S11制作一个黑白棋盘格标定板;
具体的,首先制作一个黑白棋盘格标定板,每个黑白方格尺寸为30mm,黑白方格阵列数为12×9。
S12使用双目相机拍摄不同位置及角度状态下的所述黑白棋盘格标定板30次,得到30对双目左右图像;
具体的,使用双目相机拍摄不同位置及角度状态下的黑白棋盘格标定板30次,获得30对双目左右图像。
S13将所述30对双目左右图像分别输入到Matlab 2018b双目标定工具箱进行角点检测标定,得到双目相机的标定参数;
具体的,将30对双目左右图像分别输入到Matlab 2018b双目标定工具箱进行角点检测标定,以此来估算每幅图像空间点与图像点之间关系的单应性矩阵,并采用最小二乘法来估计相机的畸变系数,获得双目相机的标定参数。
S14通过所述双目相机的标定参数将所述左右图像旋转并平移到共面和极线共线的位置,完成校正。
S141将标定参数传入到Opencv库函数cv2.stereoRectify()中进行计算立体校正后的映射矩阵;
具体的,将标定参数传入到Opencv库函数cv2.stereoRectify()中进行计算立体校正后的映射矩阵。
S142采用所述库函数cv2.remap()与校正后得到的映射矩阵将原图像重映射到图像上,完成校正。
具体的,采用库函数cv2.remap()与校正后获得的映射矩阵将原图像重映射到图像上,获得标定校正后的双目图像。
S2通过校正后的所述双目相机拍摄双目左右图像;
具体的,拍摄获取双目左右图像。
S3隔离并记录所述双目左右图像的独立区域;
具体的,由双目成像模型可知:基线长度固定情况下,当双目相机的工作距离最小时即可获得双目相机的最大公共视野,因此根据双目相机的最小工作距离来确定隔离独立区域的的尺寸大小,并对双目左右图像的独立区域进行裁剪并记录裁剪尺寸。
S4使用目标检测模型分别检测左图像和右图像,得到最终检测结果;
S41使用所述双目相机对目标进行拍4摄1000张图片用于构建目标数据集,并对所述目标数据集进行标注;
具体的,使用双目相机对目标进行拍摄1000张图片用于构建目标数据集,并将数据集中出现的目标运用labelimg软件对目标进行标注,获得每个目标的真实框。
S42在Pytorch框架下搭建基础网络的SSD目标检测模型;
具体的,在Pytorch框架下搭建以VGG16作为基础网络的SSD目标(柑橘)检测模型,如图3所示,其中模型包括六个预测特征层,首先以VGG16网络中的Conv4_3layer作为第一个尺度为38×38×512的预测特征层,然后以VGG16网络中的Conv5_3layer前面的所有层作为骨干网络,并在VGG16的尾部采用步距为1的3×3×1024卷积核和1×1×1024卷积核进行卷积操作后获得第二个尺度为19×19×1024的预测特征层,并继续在第二个预测特征层后采用步距为1的1×1×256卷积核和步距为2的3×3×512卷积核进行卷积操作后获得第三个尺度为10×10×512的预测特征层,再继续在第三个预测特征层后采用步距为1的1×1×128的卷积核和步距为2的3×3×256卷积核进行卷积操作后获得第四个尺度为5×5×256的预测特征层,然后继续在第四个预测特征层后采用步距为1的1×1×128的卷积核和步距为1的3×3×256卷积核进行卷积操作后获得第五个尺度为3×3×256的预测特征层,最后在在第五个预测特征层后采用步距为1的1×1×128卷积核和3×3×256卷积核进行卷积操作后获得第六个尺度为1×1×256的预测特征层。
S43将标注后的所述目标数据集输入到所述SSD目标检测模型进行训练,得到目标检测模型的训练权重;
具体的,将已标注好的目标数据集按8:1:1的比例划分为训练集、验证集和测试集,并将其输入到SSD目标检测模型进行训练,获得目标检测模型的训练权重。
S44在Pytorch框架下使用库函数torch.device()将模型加载到GPU显卡,以及使用库函数torch.load()载入所述目标检测模型的训练权重启动所述目标检测模型;
具体的,在Pytorch框架下使用库函数torch.device()将模型加载到GPU显卡,以及使用库函数torch.load()载入模型训练权重启动目标检测模型。
S45分别将所述左图像和所述右图像输入到重启后的所述目标检测模型进行特征提取,得到最终检测结果。
具体的,分别将左图像和右图像输入到目标检测模型进行特征提取,SSD目标检测模型在6个不同大小的特征层上生成不同尺度的默认框用于检测目标,其中较低的特征层可以用来检测较小的目标,较高的特征层可以用来检测较大的目标,然后在检测到目标后采用边界框回归以及softmax函数分类,最后采用非极大值抑制算法滤除多余检测框获得最终检测结果。
S5基于所述最终检测结果获取所述左图像和所述右图像目标检测框的坐标并编号;
具体的,分别获得左图像和右图像目标检测框的坐标并编号;
具体地,,根据左右图像的检测结果将检测框编号后得到左检测框集合L={li(xi,yi,wi,hi)∣i=1,2,3,…,n}和右图像检测框集合R={rg(xg,yg,wg,hg)∣g=1,2,3,…,m};其中li和rg分别为左图像中第i个检测框和右图像中第g个检测框,(xi,yi,wi,hi)和(xg,yg,wg,hg)分别为左图像第i个和右图像第g个检测框中心点的横坐标、纵坐标、宽及高,n和m分别代表左图像和右图像的检测框数量。
S6对左右图像目标框依次进行IoU匹配,得到目标匹配结果;
S61将所述左图像的检测框集合作为第一参照对象,将所述右图像的检测框集合作为第一待匹配对象;
具体的,将左图像的检测框集合作为参照对象,将右图像的检测框集合作为待匹配对象。
S62计算所述第一参照对象集合中的各个检测框与所述第一待匹配对象集合中的各个检测框的IoU值,得到第一检测框序号;
具体的,依次计算参照对象集合中的各个检测框与待匹配对象集合中的各个检测框的IoU值,获得在参照对象集合中与待匹配对象集合中IoU值最大的检测框序号。
S63将所述右图像的检测框集合作为第二参照对象,将所述左图像的检测框集合作为第二待匹配对象;
具体的,将右图像的检测框集合作为参照对象,将左图像的检测框集合作为待匹配对象。
S64计算所述第二参照对象集合中的各个检测框与所述第二待匹配对象集合中的各个检测框的IoU值,得到第二检测框序号;
具体的,依次计算参照对象集合中的各个检测框与待匹配对象集合中的各个检测框的IoU值,获得在参照对象集合中与待匹配对象集合中IoU值最大的检测框序号。
S65若所述第一检测框序号和所述第二检测框序号相同则目标匹配成功,并以检测框的中心点作为目标的匹配点,得到目标匹配结果。
具体的,若两次获得IoU值最大的对应检测框序号相同则目标匹配成功,并以检测框的中心点作为目标的匹配点,获得目标的匹配结果。
IoU值根据公式(1)计算;
其中,Lbox和Rbox分别为参照对象检测框和待匹配对象检测框,area()为面积计算函数,∪为求并集,∩为求交集。
S7对所述目标匹配结果与所述独立区域进行拼接还原双目图像,得到最终匹配结果。
具体的,恢复双目图像并获得目标匹配结果,具体地,利用步骤3)裁剪的独立区域尺寸进行拼接还原双目图像,获得最终的匹配结果。
以上所揭露的仅为本发明一种基于目标检测和iou匹配的双目立体匹配方法较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (5)
1.一种基于目标检测和iou匹配的双目立体匹配方法,其特征在于,包括以下步骤:
使用张正友标定法对双目相机并标定校正;
通过校正后的所述双目相机拍摄双目左右图像;
隔离并记录所述双目左右图像的独立区域;
使用目标检测模型分别检测左图像和右图像,得到最终检测结果;
基于所述最终检测结果获取所述左图像和所述右图像目标检测框的坐标并编号;
对左右图像目标框依次进行IoU匹配,得到目标匹配结果;
对所述目标匹配结果与所述独立区域进行拼接还原双目图像,得到最终匹配结果。
2.如权利要求1所述的一种基于目标检测和iou匹配的双目立体匹配方法,其特征在于,
所述使用张正友标定法对双目相机并标定校正,包括:
制作一个黑白棋盘格标定板;
使用双目相机拍摄不同位置及角度状态下的所述黑白棋盘格标定板30次,得到30对双目左右图像;
将所述30对双目左右图像分别输入到Matlab 2018b双目标定工具箱进行角点检测标定,得到双目相机的标定参数;
通过所述双目相机的标定参数将所述左右图像旋转并平移到共面和极线共线的位置,完成校正。
3.如权利要求2所述的一种基于目标检测和iou匹配的双目立体匹配方法,其特征在于,
所述通过所述双目相机的标定参数将所述左右图像旋转并平移到共面和极线共线的位置,完成校正,包括:
将标定参数传入到Opencv库函数cv2.stereoRectify()中进行计算立体校正后的映射矩阵;
采用所述库函数cv2.remap()与校正后得到的映射矩阵将原图像重映射到图像上,完成校正。
4.如权利要求3所述的一种基于目标检测和iou匹配的双目立体匹配方法,其特征在于,
所述使用目标检测模型分别检测左图像和右图像,包括:
使用所述双目相机对目标进行拍摄1000张图片用于构建目标数据集,并对所述目标数据集进行标注;
在Pytorch框架下搭建基础网络的SSD目标检测模型;
将标注后的所述目标数据集输入到所述SSD目标检测模型进行训练,得到目标检测模型的训练权重;
在Pytorch框架下使用库函数torch.device()将模型加载到GPU显卡,以及使用库函数torch.load()载入所述目标检测模型的训练权重启动所述目标检测模型;
分别将所述左图像和所述右图像输入到重启后的所述目标检测模型进行特征提取,得到最终检测结果。
5.如权利要求4所述的一种基于目标检测和iou匹配的双目立体匹配方法,其特征在于,
所述对左右图像目标框依次进行IoU匹配,得到目标匹配结果,包括:
将所述左图像的检测框集合作为第一参照对象,将所述右图像的检测框集合作为第一待匹配对象;
计算所述第一参照对象集合中的各个检测框与所述第一待匹配对象集合中的各个检测框的IoU值,得到第一检测框序号;
将所述右图像的检测框集合作为第二参照对象,将所述左图像的检测框集合作为第二待匹配对象;
计算所述第二参照对象集合中的各个检测框与所述第二待匹配对象集合中的各个检测框的IoU值,得到第二检测框序号;
若所述第一检测框序号和所述第二检测框序号相同则目标匹配成功,并以检测框的中心点作为目标的匹配点,得到目标匹配结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211451030.5A CN115760981A (zh) | 2022-11-18 | 2022-11-18 | 一种基于目标检测和iou匹配的双目立体匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211451030.5A CN115760981A (zh) | 2022-11-18 | 2022-11-18 | 一种基于目标检测和iou匹配的双目立体匹配方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115760981A true CN115760981A (zh) | 2023-03-07 |
Family
ID=85333394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211451030.5A Pending CN115760981A (zh) | 2022-11-18 | 2022-11-18 | 一种基于目标检测和iou匹配的双目立体匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115760981A (zh) |
-
2022
- 2022-11-18 CN CN202211451030.5A patent/CN115760981A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110809786B (zh) | 校准装置、校准图表、图表图案生成装置和校准方法 | |
CN105453546B (zh) | 图像处理装置、图像处理系统和图像处理方法 | |
CN115240121A (zh) | 一种用于增强行人局部特征的联合建模方法和装置 | |
CN102567724B (zh) | 图像校正系统及方法 | |
CN109479082B (zh) | 图象处理方法及装置 | |
CN106815869B (zh) | 鱼眼相机的光心确定方法及装置 | |
CN112308925B (zh) | 可穿戴设备的双目标定方法、设备及存储介质 | |
CN110146030A (zh) | 基于棋盘格标志法的边坡表面变形监测系统和方法 | |
CN111461113B (zh) | 一种基于变形平面物体检测网络的大角度车牌检测方法 | |
CN102486829B (zh) | 图像分析系统及方法 | |
CN106919944A (zh) | 一种基于orb算法的大视角图像快速识别方法 | |
CN111915485A (zh) | 一种特征点稀疏工件图像的快速拼接方法及系统 | |
CN113379845A (zh) | 一种相机标定方法及装置、电子设备及存储介质 | |
CN113129383A (zh) | 手眼标定方法、装置、通信设备及存储介质 | |
CN111383264A (zh) | 一种定位方法、装置、终端及计算机存储介质 | |
JP3350822B2 (ja) | 画像上のエッジ検出方法 | |
Tezaur et al. | A new non-central model for fisheye calibration | |
CN115760981A (zh) | 一种基于目标检测和iou匹配的双目立体匹配方法 | |
CN117830435A (zh) | 基于三维重建的多相机系统标定方法 | |
CN115330825B (zh) | 一种折反射图像边缘检测方法、装置及可读存储介质 | |
JP6843552B2 (ja) | 画像処理装置、画像処理方法およびプログラム。 | |
CN114549613A (zh) | 基于深度超分辨率网络的结构位移测量方法及装置 | |
JPH10289315A (ja) | 視差算出装置、距離算出装置およびこれらの方法 | |
CN113160059A (zh) | 一种水下图像拼接方法、装置及存储介质 | |
CN113808070A (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 |