一种基于角点检测的集装箱轮廓定位方法

文档序号:10726419阅读:420来源:国知局
一种基于角点检测的集装箱轮廓定位方法
【专利摘要】本发明公开了一种基于角点检测的集装箱轮廓定位方法。它通过摄像头采集下方集装箱两侧的图像,利用集装箱锁孔粗定位和跟踪方法获得图像上下锁孔的粗定位区域并得到区域内图像I1,I2,新建一个和图像I1,I2大小一样的掩膜矩阵m1,m2,根据上下锁孔粗定位图像I1,I2和对应的掩膜矩阵m1,m2,利用Grabcut算法计算得到分割图像,再根据分割图像,采用获取最小外接矩形算法得到图像前景的最小外接矩形,将矩形其中一个顶点作为集装箱轮廓的角点,基于双目立体视觉技术将拐点的像素坐标转换为世界坐标并排序构成一个四边形即为集装箱轮廓。本发明能有效解决光线的干扰、锁孔前景和背景区分度不明显等不足,避免了光线不足条件下识别率低的问题,实现了集装箱轮廓的准确定位。
【专利说明】
一种基于角点检测的集装箱轮廓定位方法
技术领域
[0001] 本发明属于计算机视觉技术和图像处理技术领域,具体涉及一种基于角点检测的 集装箱轮廓定位方法。
【背景技术】
[0002] 随着集装箱运输的发展,使得集装箱船舶越来越大,货物集装箱化的比例不断提 高,集装箱运量不断上升。从航次经济核算分析,通过缩短集装箱船舶的停泊时间可以降低 停泊成本,提高集装箱运输船舶的航行效率并充分发挥船舶单位运输成本的优势,提高经 济效益。传统的手动控制抓取集装箱已经极大的影响了装卸速度。一台桥吊把集装箱从货 轮装到拖车上,过程要求操作精度高,劳动强度大,是比较耗时的一个环节,其中,在桥吊司 机将抓具对准集装箱锁孔这一环节花费的时间占主要部分。而提高装卸自动化的程度是提 高集装箱效率的有效途径,其关键内容就是减少桥吊司机对集装箱锁孔的定位时间并且提 升定位的准确性。
[0003] 为了解决集装箱轮廓定位的问题,国内外学术界、工业界提出了很多方案,其中与 本发明较为接近的技术方案包括:洪方年(基于图像处理技术的敞车装载集装箱定位系统 的研究与实现[D].西南交通大学,2009)利用安装在吊桥小车两侧的摄像机采集下方敞车 和集装箱的图像,采用间接的方法识别并测量敞车两侧边缘与集装箱边缘的距离,从而通 过数字显示,帮助司机准确定位。但是文中方法存在一些问题,例如集装箱在敞车内倾斜导 致二者的中心并不处于同一条直线上,其次在光线强烈以及夜晚灯光条件较差的时候定位 性能也较差,而且该方法只识别了敞车与集装箱左右两侧的边缘并没有识别上下两侧的边 缘,对于小车司机操控吊具带来不便。肖洋(基于单目视觉的集装箱箱位自动检测与定位技 术试验研究[D].上海海事大学,2007)采用单个摄像机采集集装箱图像,并通过Harris角点 探测算法识别集装箱边缘的角点,从而定位集装箱的位置,文中利用平面标靶测试模型模 拟集装箱实物。该方法存在的问题是实际的集装箱的4个角并不只是单纯的角点,而是有一 定宽度的角件,Harri s角点检测算法并不能很好地识别该类角点,同时会带来较大的误差。 发明专利(申请号:2006101165045,名称:港口运动集装箱卡车定位方法及装置)中利用摄 像头采集集装箱图像,检测集装箱上平面的前边缘和4个角点,然后将像素坐标转换到物理 坐标并以此定位集装箱的位置。该方法只检测了集装箱上平面的前边缘,导致识别准确率 并不高。
[0004] 综上所述,既要实现集装箱轮廓的准确定位,又要能很好地适应光线问题带来识 别率降低的难点,当前方法存在如下不足:(1)只定位集装箱两侧的边缘而不是四周的边 缘;(2)使用角点代替集装箱外侧轮廓顶点带来较大误差;(3)光线不足条件下识别率低等。 本发明针对这些问题提出了一种基于角点检测的集装箱轮廓定位方法。

【发明内容】

[0005] 为解决上述问题,本发明的目的在于提供一种基于角点检测的集装箱轮廓定位方 法。
[0006] 所述的一种基于角点检测的集装箱轮廓定位方法,其特征在于包括如下步骤:
[0007] 步骤1:首先用安装在吊具上的摄像头采集下方集装箱某一侧的图像;
[0008] 步骤2:然后利用集装箱锁孔粗定位和跟踪方法获得步骤1采集到的集装箱图像上 下锁孔的粗定位区域,并得到区域内图像Ιι, 12,其中高度为height,宽度为width,单位为像 素;
[0009] 步骤3:新建一个和图像Ιι,12大小一样的掩膜矩阵mi,m2或标记矩阵bi,b2,在mi,m2 或匕,132中用不同的值标记前景区域、背景区域和剩余区域;
[0010] 步骤4:得到上下锁孔粗定位图像中的锁孔边缘,具体为:根据上下锁孔粗定位图 像Ιι,12和对应的掩膜矩阵mi,m2,利用Grabcut算法进行处理;或根据上下锁孔粗定位图像 I!,1 2和对应的标记矩阵h,b2,利用分水岭算法进行处理;
[0011] 步骤5:根据步骤4得到上下锁孔粗定位的分割图像,分别获取其图像前景的最小 外接矩形,将上锁孔的最小外接矩形左上角的点作为集装箱轮廓的角点Q,将下锁孔的最 小外接矩形左下角的点作为集装箱轮廓的角点C 2;
[0012] 步骤6:用安装在吊具上的摄像头采集下方集装箱另一侧,即步骤1中相对的那侧 的图像,然后重复步骤2~5,获得另一侧的角点C 3和C4;
[0013]步骤7:基于双目立体视觉技术将(^,(:2,(:3,(: 4点的像素坐标转换为以吊具为参照 物建立的坐标系下的世界坐标,然后将这个四个世界坐标点按逆时针或顺时针排序,四个 点构成一个四边形即为集装箱轮廓,由此实现集装箱轮廓的定位。
[0014]所述的一种基于角点检测的集装箱轮廓定位方法,其特征在于步骤3中在掩膜矩 阵nu,m2中用不同的值标记前景区域、背景区域和剩余区域,背景设置为0,前景设置为1,剩 余区域设置为2,具体方法为:
[0015]步骤3.1:首先在m中的上侧和左侧设置两条值为0的线段作为背景区域,然后在m 中心位置设置一个值为1的矩形作为前景区域,最后将其他部分的值设置为2作为剩余区 域: 0, if .y = d or r = < d < width and 0 < d < height 1, if 0.5*(wid/h - /) < x < ().5*( width + /) and ,、
[0016] y)= V ' (1) 1 * 0.5Πheight - k) < v < Q.5Hheighr k) 2, else
[0017] 式中,(x,y)表示mi上的坐标,d表示线段到mi上侧边界或左侧边界的距离,width、 height表示图像1^12的宽度和高度,l、k表示设置的矩形的宽度和高度;
[0018] 步骤3.2:首先在肥中的下侧和左侧设置两条值为0的线段作为背景区域,然后在肥 中心位置设置一个值为1的矩形作为前景区域,最后将其他部分的值设置为2作为剩余区 域: 0, if λ = d or y - height - c/,0 < d < width and 0 <-d < height 1, if 0.5*( width -1)< x < ().5*( width + /) and 、
[0019] /77,{-Y, v) = < (2) "- 0.5*(heighr - k) < y < 0.5^(hcight + k) 2, else
[0020] 式中,(x,y)表示m2上的坐标,d表示线段到m2下侧边界或左侧边界的距离,width、 height表示图像1^12的宽度和高度,l、k表示设置的矩形的宽度和高度。
[0021] 所述的一种基于角点检测的集装箱轮廓定位方法,其特征在于步骤3中在标记矩 阵1^,132用不同的值标记前景区域、背景区域和剩余区域,其中前景区域、背景区域设置为不 同的值,剩余区域的值设置为0,具体方法为:
[0022] 步骤3.1:首先在匕中的上侧和左侧设置两条值为f的线段作为背景区域,然后在匕 中心位置设置一个值为g的矩形作为前景区域,最后将其他部分的值设置为〇作为剩余区 域: f \ if .r = d or y = i/,0 < d < width and 0 < d < height if, if 0.5^( width - /) < x < 0.5^( width -f /) and / 、
[0023] /?, (x, y) = \ ^ ( 3 ) 0.5^'{height ~ k) < y < eight -\- /<) 0, else
[0024] 式中,(x,y)表示bi上的坐标,d表示线段到bi上侧边界或左侧边界的距离,width、 height表示图像的宽度和高度,l、k表示设置的矩形的宽度和高度;
[0025] 步骤3.2:首先在132中的下侧和左侧设置两条值为f的线段作为背景区域,然后在132 中心位置设置一个值为g的矩形作为前景区域,最后将其他部分的值设置为0作为剩余区 域: /*, if -V = d or v = height - ^,() < d < width and 0 < d < height if,if 05^(\vidth -Γ) < x < 0.5^( vvvt/r/? + /) and .,.
[0026] %(爲 j) = ( Λ ) O.S^ihaght-k) < y < 0.^*{hcight + k) (),else
[0027] 式中,(x,y)表示b2上的坐标,d表示线段到匕下侧边界或左侧边界的距离,width、 height表示图像1^12的宽度和高度,l、k表示设置的矩形的宽度和高度。
[0028] 本发明的优点是:本发明能有效解决光线的干扰、锁孔前景和背景区分度不明显 等不足,避免了光线不足条件下识别率低的问题,实现了集装箱轮廓的准确定位。
【附图说明】
[0029]图1为本发明实施例步骤1采集的集装箱图像;
[0030]图2a为本发明实施例步骤2得到的上锁孔粗定位图像;
[0031]图2b为本发明实施例步骤2得到的下锁孔粗定位图像;
[0032]图3a为本发明实施例经过步骤4得到的上锁孔粗定位图像中锁孔的边缘图像;
[0033] 图3b为本发明实施例经过步骤4得到的下锁孔粗定位图像中锁孔的边缘图像;
[0034] 图4a为本发明实施例经过步骤5得到的集装箱轮廓上锁孔角点图像;
[0035] 图4b为本发明实施例经过步骤5得到的集装箱轮廓下锁孔角点图像;
[0036]图中:1_上锁孔粗定位图像中锁孔边缘,2-下锁孔粗定位图像中锁孔边缘,3-角点 &,4_角点〇2。
【具体实施方式】
[0037]下面结合实施例来详细阐述本发明一种基于角点检测的集装箱轮廓定位方法的
【具体实施方式】。
[0038]如图所示,本发明的一种基于角点检测的集装箱轮廓定位方法,包括如下步骤: [0039]步骤1:首先用安装在吊具上的摄像头采集下方集装箱某一侧的图像;在本实施例 中,如附图1;
[0040]步骤2:然后集装箱锁孔粗定位和跟踪方法获得集装箱图像上下锁孔的粗定位区 域并得到区域内图像Ιι,12,其中高度为height,宽度为width,单位为像素;在本实施例中, 上锁孔粗定位图像如附图2(a)、下锁孔粗定位图像如附图2(b),height =140、width =135, 所述的集装箱锁孔粗定位和跟踪方法在申请号为201610273182.9的文件中已公开,在此不 再详述;
[0041 ] 步骤3:新建一个和图像11,12大小一样的掩膜矩阵mi,m2,在mi,m2中用不同的值设 置前景、背景和剩余区域,其中背景设置为〇,前景设置为1,剩余区域设置为2:
[0042]步骤3.1:首先在m中的上侧和左侧设置两条值为0的线段作为背景区域,然后在m 中心位置设置一个值为1的矩形作为前景区域,最后将其他部分的值设置为2作为剩余区 域: 0, if τ = d or V = (6/,() < < width and 0 < c/ < height 1, if 0.5*( width - /) < x < 0.5'*{width + /) and ' ,
[0043] U; 1V 0.5*{height - k) < y < 0.5*(height + /〇 2, else
[0044] 式中,(x,y)表示mi上的坐标,d表示线段到mi上侧边界或左侧边界的距离,width、 height表示图像h,12的宽度和高度,1、k表示设置的矩形的宽度和高度;在本实施例中,d = 3、l = 80、k = 60;
[0045] 步骤3.2:首先在!112中的下侧和左侧设置两条值为0的线段作为背景区域,然后在111 2 中心位置设置一个值为1的矩形作为前景区域,最后将其他部分的值设置为2作为剩余区 域: 0, if .y = d or y = height - dS) < d < width and 0 < d < height 1,if 0.5*( width - /)<x< ().5*( width +/) and ,、
[0046] ' (2) 2 Q.5*[height - /0 < y <().5*(heighf + k) 2., else
[0047] 式中,(x,y)表示Π12上的坐标,d表示线段到Π12下侧边界或左侧边界的距离,width、 height表示图像h,12的宽度和高度,1、k表示设置的矩形的宽度和高度;在本实施例中,d = 3、l = 80、k = 60;
[0048] 本发明步骤3可以用分水岭法代替Grabcut算法进行处理,具体为新建一个和图像 Ii,I2大小一样的标记矩阵hte,在标记矩阵h,b 2用不同的值标记前景区域、背景区域和剩 余区域,其中前景区域、背景区域设置为不同的值,剩余区域的值设置为0,具体方法为:
[0049] 1)首先在匕中的上侧和左侧设置两条值为f的线段作为背景区域,然后在匕中心位 置设置一个值为g的矩形作为前景区域,最后将其他部分的值设置为〇作为剩余区域: /', if .y = cl or y = c/,0 < U < width and 0 < d < height if 0.5*( width - i) < x < 0.5*( width + /) and ,
[0050] /V (x, y) = l ° l 3 ) 0.5*(heighf - k) < y < 0.5*(height + /<) 0, else
[0051 ] 式中,(x,y)表示bi上的坐标,d表示线段到bi上侧边界或左侧边界的距离,width、 height表示图像1^12的宽度和高度,l、k表示设置的矩形的宽度和高度;
[0052] 2)首先在132中的下侧和左侧设置两条值为f的线段作为背景区域,然后在13 2中心位 置设置一个值为g的矩形作为前景区域,最后将其他部分的值设置为〇作为剩余区域: /,if X = d or >· = height-dS) <d < width and 0< d < height g, if 0.5*( width -!)<x< 0.5*( width +1) and , , x
[0053] h,(x, v) = - ( 4 ) * OS^iiteight - k) < y < Q.5^{hcight + k) 0, else
[0054] 式中,(x,y)表示b2上的坐标,d表示线段到匕下侧边界或左侧边界的距离,width、 height表示图像1^12的宽度和高度,l、k表示设置的矩形的宽度和高度。
[0055] 步骤4:根据上下锁孔粗定位图像Ιι, 12和对应的掩膜矩阵mi,m2,利用Grabcut算法 进行处理,或根据上下锁孔粗定位图像1^12和对应的标记矩阵b^bs,利用分水岭算法进行 处理,得到上锁孔粗定位图像中锁孔边缘1和下锁孔粗定位图像中锁孔边缘2如附图3a、3b;
[0056] 步骤5:根据步骤4得到上下锁孔粗定位的分割图像,分别获取其图像前景的最小 外接矩形,将上锁孔的最小外接矩形左上角的点作为集装箱轮廓的角点&3,将下锁孔的最 小外接矩形左下角的点作为集装箱轮廓的角点C 24;在本实施例中,如附图4a、图4b;
[0057] 步骤6:用安装在吊具上的摄像头采集下方集装箱另一侧的图像,即步骤1中相对 的那侧的图像,然后重复步骤2~5,获得另一侧的拐点C 3和C4;
[0058] 步骤7:基于双目立体视觉技术将Q,C2,C3,C4点的像素坐标转换为以吊具为参数 物建立的坐标系下的世界坐标,然后将这个四个世界坐标点按逆时针或顺时针排序,四个 点构成一个四边形即为集装箱轮廓,由此实现集装箱轮廓的定位。
[0059] 本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护 范围的不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技 术人员根据本发明构思所能够想到的等同技术手段。
【主权项】
1. 一种基于角点检测的集装箱轮廓定位方法,其特征在于包括如下步骤: 步骤1:首先用安装在吊具上的摄像头采集下方集装箱某一侧的图像; 步骤2:然后利用集装箱锁孔粗定位和跟踪方法获得步骤1采集到的集装箱图像上下锁 孔的粗定位区域,并得到区域内图像Ii,l2,其中高度为height,宽度为wi化h,单位为像素; 步骤3:新建一个和图像Ii, 12大小一样的掩膜矩阵mi ,m2或标记矩阵bi ,b2,在mi ,m2或bi, b2中用不同的值标记前景区域、背景区域和剩余区域; 步骤4:得到上下锁孔粗定位图像中的锁孔边缘,具体为:根据上下锁孔粗定位图像II, I沸对应的掩膜矩阵虹,m2,利用Grabcut算法进行处理;或根据上下锁孔粗定位图像Ii, 12和 对应的标记矩阵bi,b2,利用分水岭算法进行处理; 步骤5:根据步骤4得到上下锁孔粗定位的分割图像,分别获取其图像前景的最小外接 矩形,将上锁孔的最小外接矩形左上角的点作为集装箱轮廓的角点Ci,将下锁孔的最小外 接矩形左下角的点作为集装箱轮廓的角点C2 ; 步骤6:用安装在吊具上的摄像头采集下方集装箱另一侧,即步骤1中相对的那侧的图 像,然后重复步骤2~5,获得另一侧的角点C3和C4; 步骤7:基于双目立体视觉技术将Cl,C2,C3,C4点的像素坐标转换为W吊具为参照物建立 的坐标系下的世界坐标,然后将运个四个世界坐标点按逆时针或顺时针排序,四个点构成 一个四边形即为集装箱轮廓,由此实现集装箱轮廓的定位。2. 根据权利要求1所述的一种基于角点检测的集装箱轮廓定位方法,其特征在于步骤3 中在掩膜矩阵mi,m2中用不同的值标记前景区域、背景区域和剩余区域,背景区域设置为0, 前景区域设置为1,剩余区域设置为2,具体方法为: 步骤3.1:首先在mi中的上侧和左侧设置两条值为0的线段作为背景区域,然后在mi中屯、 位置设置一个值为1的矩形作为前景区域,最后将其他部分的值设置为2作为剩余区域:) 式中,(x,y)表示mi上的坐标,d表示线段到mi上侧边界或左侧边界的距离,width、 height表示图像Ii,l2的宽度和高度,l、k表示设置的矩形的宽度和高度; 步骤3.2:首先在m2中的下侧和左侧设置两条值为0的线段作为背景区域,然后在m2中屯、 位置设置一个值为1的矩形作为前景区域,最后将其他部分的值设置为2作为剩余区域:式中,(X,y)表示m2上的坐标,d表示线段到m2下侧边界或左侧边界的距离,width、 height表示图像Ii,l2的宽度和高度,l、k表示设置的矩形的宽度和高度。3. 根据权利要求1所述的一种基于角点检测的集装箱轮廓定位方法,其特征在于步骤3 中在标记矩阵bi,te用不同的值标记前景区域、背景区域和剩余区域,其中前景区域、背景区 域设置为不同的值,剩余区域的值设置为0,具体方法为: 步骤3.1:首先在bi中的上侧和左侧设置两条值为f的线段作为背景区域,然后在bi中屯、 位置设置一个值为g的矩形作为前景区域,最后将其他部分的值设置为0作为剩余区域:式中,(x,y)表示bi上的坐标,d表示线段到bi上侧边界或左侧边界的距离,width、 height表示图像Ii,l2的宽度和高度,l、k表示设置的矩形的宽度和高度; 步骤3.2:首先在b2中的下侧和左侧设置两条值为f的线段作为背景区域,然后在b2中屯、 位置设置一个值为g的矩形作为前景区域,最后将其他部分的值设置为0作为剩余区域:式中,(x,y)表示b2上的坐标,d表示线段到b2下侧边界或左侧边界的距离,width、 height表示图像Ii,l2的宽度和高度,l、k表示设置的矩形的宽度和高度。
【文档编号】G06T7/00GK106097332SQ201610403107
【公开日】2016年11月9日
【申请日】2016年6月7日
【发明人】高飞, 李定谢尔, 令狐乾锦, 汪韬, 葛粟, 葛一粟, 卢书芳, 肖刚
【申请人】浙江工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1