CN110197499B - 一种基于计算机视觉的集装箱安全起吊监测方法 - Google Patents
一种基于计算机视觉的集装箱安全起吊监测方法 Download PDFInfo
- Publication number
- CN110197499B CN110197499B CN201910443526.XA CN201910443526A CN110197499B CN 110197499 B CN110197499 B CN 110197499B CN 201910443526 A CN201910443526 A CN 201910443526A CN 110197499 B CN110197499 B CN 110197499B
- Authority
- CN
- China
- Prior art keywords
- container
- vehicle body
- detection
- lock catch
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/50—Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于计算机视觉的集装箱安全起吊监测方法,本发明并行处理头尾摄像头拍摄到的视频数据,其中每个线程处理步骤如下:1.获取初始化数据,设置监测信号的初始值。2.获取待检测区域。3.对待检测区域用滑动窗口方法提取固定大小区域特征。4.对集装箱锁扣检测进行训练,并用训练好的模型对测试图片进行检测,保留是正样本的概率值大于阈值的区域。5.筛选保留下的区域,取最有可能是锁扣的区域作为跟踪目标。6.跟踪锁扣和车体的运动。7.分析锁扣和车体的运动关系,给出集装箱是否被安全吊起结果。8.结合两个线程处理的结果,给出最终的检测结果。本发明为集装箱起吊监测提供了实时的、高效的监测方法。
Description
技术领域
本发明涉及集装箱起吊监测技术、图像处理、计算机视觉等领域,具体涉及一种基于计算机视觉的集装箱安全起吊监测方法。
背景技术
在集装箱起吊作业中,存在多种安全隐患。其中发生概率最高的是在集装箱起吊的过程中,集装箱和运输车的锁扣未被解开,导致运送集装箱的车体也被吊起,锁扣未解锁会对运输车以及驾驶员带来严重的生命和财产损失。现有的方法需要地面人工配合,进行人工示警,人工的方法效率低而且成本高。文献“港口集装箱起吊的自动监控[J].机械制造,2009,47(06):72-75.”中提出将激光扫描技术应用到集装箱起吊的安全监控中,但是采用激光技术这种解决方案的成本高,不经济。随着计算机视觉处理技术的不断发展,以及基于视觉目标检测算法的不断完善,越来越多应用把基于视觉的检测技术应用于实际应用中,例如基于计算机视觉的车辆检测,车牌检测等等。
发明内容
发明目的:在集装箱起吊作业过程中,需要对集装箱和运输车连接的锁扣进行检查是否已被解开来确保集装箱被正确的起吊,防止意外发生。本发明基于此应用,提出了一种基于锁扣检测和跟踪的集装箱起吊监测方法。该方法通过相机获取视频数据,通过目标检测算法对集装箱的锁扣进行定位并跟踪锁扣和车体,然后对锁扣和运输车的运动进行分析,对运输车被吊起的情况进行报警,防止车体被吊起导致事故发生。
本发明具体包括如下步骤:
步骤1:获取初始化数据,设置监测信号的初始值;
步骤2:根据初始信号以及先验知识人为设定第一帧图像需要检测的感兴趣区域Roidetect;由于集装箱起吊时,吊塔所在位置固定,卡车停靠的位置固定,所以相同尺寸的集装箱和相同位置的摄像头检测的区域固定。为了节省检测的时间提高效率,根据吊车控制系统给出的集装箱尺寸和摄像头位置信息,可以设置不同的待检测区域Roidetect,该区域为检测系统进行锁扣检测的区域,即其他区域不进行锁扣的检测。
步骤3:对感兴趣区域Roidetect提取方向直方图HOG特征;根据初始化信号,在感兴趣Roidetect内用滑动窗口方法提取固定大小的区域,对每个区域有都计算HOG特征。方向直方图(Histogram of oriented gradient,HOG)特征是一种在计算机视觉与图像处理中进行物体检测的特征描述子。它通过计算和同济图像局部区域的梯度方向直方图来构成特征。
步骤4:进行集装箱锁扣检测;
步骤5:获取锁扣所在位置;
步骤6:跟踪锁扣和车体的运动;
步骤7:分析锁扣和车体的运动关系,给出集装箱是否被安全起吊结果;
步骤8:对两个摄像头采集的视频数据进行并行处理,分别执行步骤1~步骤7,得到两个结果,如果其中一个检测结果是危险起吊,则给出最终的检测结果危险信号,如果两个结果都表示危险起吊,则给出最终的检测结果为安全信号,否则继续读取下一帧视频图像,执行步骤1~步骤7。
步骤1包括如下步骤:
步骤1-1:获取初始化数据:通过吊车控制系统获取集装箱的尺寸信息和摄像头的位置信息,初始化摄像头位置和集装箱尺寸大小;
集装箱的尺寸包括两种型号:6.1m和12.2m;
摄像头位置分为头部摄像头和尾部摄像头,分别表示为HEAD_CAM和END_CAM,
则一共分为四种视频数据,分别为头部摄像头6.1m集装箱、尾部摄像头6.1m集装箱、头部摄像头12.2米集装箱和尾部摄像头12.2m集装箱,分别记为HEAD_6、END_6、HEAD_12和END_12;
集装箱大小以及摄像头位置的不同具体反映对检测模块的影响为检测的位置和待检测锁扣的大小不同,需要对不同摄像头和不同集装箱尺寸给出不同的初始化数据。
步骤1-2:初始化监测信号,监测信号包括起吊信号signal1,检测信号signal2,跟踪信号signal3,结束信号signal4;
起吊信号signal1为监测开始的激发信号,初始化为false,即只有当起吊信号signal1为true时才进行集装箱安全起吊的监测;集装箱被吊起一定高度(20cm左右)后,确保相抵锁位置能被摄像头捕捉后,吊车控制系统给出起吊信号,然后再设置起吊信号为true,开始检测;
检测信号signal2为图像进行检测的激发信号,初始为true,本方法只进行一次集装箱锁扣的检测,一旦检测到集装箱锁扣就将检测信号signal2设置为false,之后不再对视频进行集装箱锁扣的检测操作;
跟踪信号signal3为跟踪集装箱锁扣的激发信号,初始化为false,只有当检测锁扣得到的概率值大于设定阈值(0.8)时,才将跟踪信号signal3设置为true,进行跟踪操作,否则不进行跟踪操作;
结束信号signal4为监测结束的激发信号,一旦给出危险或者安全信号,则激发结束信号signal4,结束该视频的监测。
步骤3包括如下步骤:
步骤3-1,将第一帧图像灰度化(将图像看做一个x,y,z(灰度)的三维图像);
步骤3-2,采用Gamma校正法对图像进行颜色空间的标准化,即归一化;目的是调节图像的对比度,降低图像局部的阴影和光照变化所造成的影响,同时可以抑制噪音的干扰;
步骤3-3,在感兴趣Roidetect内用滑动窗口方法生成N个固定大小的区域,对每个区域通过步骤3-4~3-9计算方向直方图HOG特征;
步骤3-4,计算图像每个像素的梯度,包括大小和方向:主要是为了捕获轮廓信息,同时进一步弱化光照的干扰。
d1(x,y)=I(x1,y1)-I(x0,y0)
…
dn(x,y)=I(xn,yn)-I(x0,y0)
将单元格的梯度方向360°均匀划分为9个方向块,其中I(x0,y0)表示要计算的点的像素值,I(x0,y0)…I(xn,yn)表示9个方向的像素值,dn(x,y)表示像素点(x0,y0)处9个方向的梯度,其中n的取值范围是1~9。
每个像素的梯度g表示为:
步骤3-5,将图像划分成小单元格(例如6*6像素/单元格);
步骤3-6,统计每个单元格的梯度直方图(不同梯度的个数),即形成每个单元格的描述子;
步骤3-7,将每Z1个单元格组成一个图像块(例如3*3个单元格/图像块,即Z1取值为9),一个图像块内所有单元格的特征描述串联起来便得到该图像块的方向直方图HOG特征描述子;
步骤3-8,将图像内的所有图像块的方向直方图HOG特征描述子串联起来就能够得到要检测的目标的方向直方图HOG特征,所述要检测的目标的方向直方图HOG特征就是最终的可供分类使用的特征向量;
HOG特征构建梯度直方图是在单元格中完成,方向块的个数决定了方向的范围。在本发明中采用的9个方向块的直方图来统计单元格中的梯度信息,即将梯度方向0~360分为9个方向块。
步骤3-9,最后将计算得到的每个区域的方向直方图HOG特征作为该区域的局部特征。
步骤4包括:
步骤4-1:训练分类器:采集大量集装箱检测的样本图像(3000张),并通过人工标记的方法标记出集装箱锁扣的位置,生成集装箱锁扣的正样本,在样本图像中除锁扣位置外随机生成负样本,同时控制正负样本比例为1:3,提取正样本和负样本的方向直方图HOG特征,通过线性支持向量机SVM训练分类器;因为集装箱锁扣边缘特征明显,所以HOG特征可以有效的捕捉锁扣的特征。
步骤4-2:分类:通过步骤2~3得到的每个区域的HOG特征,然后输入到训练好的线性支持向量机SVM分类得到每个区域是正样本的概率值F,只保留概率值大于设定值(0.8)的M个区域SM,对于四种视频数据HEAD_6、END_6、HEAD_12和END_12中的是正样本的概率值大于设定值的区域,用白色框表示。
步骤5包括:对保留下的M个概率值大于阈值的区域SM,为防止产生误检,计算概率值前k(一般取3)个区域中心之间的像素欧式距离z,若z小于或等于阈值(20个像素),则判定k个区域检测的是同一个锁扣区域,取k个区域中概率值F最大的区域作为锁扣所在位置;若z大于设定阈值(20个像素),则通过投票法,对概率值为前j(一般取5)个进行投票,并取投票个数最多的区域作为锁扣所在位置。
步骤6包括:若集装箱锁扣检测结果的概率值大于设定阈值(0.8),则对集装箱锁扣和车体进行跟踪,首先根据锁扣的位置,设定集装箱锁扣下面一定距离(25个像素)的区域为车体,通过核相关滤波算法KCF(High-Speed Tracking with KernelizedCorrelation Filters)跟踪器跟踪锁扣和车体运动;否则不进行跟踪。KCF跟踪器对光照变化,遮挡,非刚性形变,运动模糊,背景杂乱和旋转等视频均能跟踪良好,比较适合跟踪目标。
步骤7包括:
在步骤6中,通过跟踪器分别得到集装箱和车体在图像中的实时位置信息,从而得到集装箱和车体相对于原位置的运动方向和距离:记车体的初始位置为Carori,集装箱初始位置为Containerori,车体的实时位置信息为Carpos,集装箱的实时位置信息为Containerpos;
集装箱起吊有两种情况,一种是危险起吊,另一种是安全起吊;
集装箱被危险起吊分为如下四种情况:
第一种情况,若集装箱的视频检测的锁扣被锁住,例如视频是12m头部视频,头部检测的锁扣被锁住,在视频中反应为车体和集装箱一起被吊起,一起向上运动。若根据步骤6跟踪得到的车体被起吊向上运动超过上升阈值thresoldris(例如40个像素),即Carpos-Carori>thresoldris,则为危险起吊;
第二种情况,若集装箱的视频检测端的另一端锁扣被锁住,由于另一端被吊起,所以检测端在视频中反应为车体和集装箱一起向下运动。若根据步骤6跟踪得到的车体向下运动超过下降阈值thresolddown(例如15个像素),即Carori-Carpos>thresolddown,则很可能是检测端的另一端锁扣被锁住,则为危险起吊;
第三种情况,在集装箱被吊起一定像素距离(25个像素)之后车子还有下降量,此策略为了应对车体被吊起之后有一定反弹,在吊起一定高度之后再去判断,如果有下降量,则判定是车子另外一端被吊起导致检测端车体下降,为危险起吊;
第四种情况,车子在起吊过程中开走情况:为了应对车子开走的情况,加入一个新的判断。当车体被吊起一定高度(25个像素)之后,若检测到车体有下降量,则检测是否是由车子开走而导致车体下降的,若由步骤6跟踪车体运动判定车体未开走,则为危险信号;
集装箱安全起吊分为如下两种情况:
第一种情况,集装箱以及被吊起到特定高度(120个像素)且没有检测到危险情况,则判定集装箱被安全起吊;
第二种情况,在集装箱吊起的过程中,根据如下公式计算tanθ:
其中,θ表示车体在视频中的移动角度,如果tanθ<thresh(一般取值为0.36),则判定车子移动,则输出安全信号,否则输出危险信号。
车体可能会发生移动,在视频的所反映的是车体按照斜上方的方向上运动,所以这种情况容易导致车体向上运动超过阈值,导致误检。所以,本方法通过分析车体的运动角度,若角度低于给定阈值,则判定车子移动,则输出安全信号。
所述检测是否是由车子开走而导致车体下降的,具体包括:
计算f帧之后视频中y轴方向上的变化量Δy=Carpos·y-Carori·y,以及x轴方向上的变化量Δx=Carpos·x-Carori·x,其中x,y分别表示图像中的像素横坐标、纵坐标,计算tanθ:
其中,θ表示车体在视频中的移动角度,如果tanθ大于阈值thresh(一般取值为0.36),说明y轴方向变化很大,表示车子另外一端被吊起导致检测端下降,则输出危险信号,否则输出安全信号。
车子开走会导致车体的移动,大部分是在图像的x轴方向上的移动,不过有少部分是在图像的y轴方向上的移动。头部车子在图像上显示是斜上方向开的,x轴方向和y轴方向值都是变大的。而尾部看到的是斜下方向,x轴方向值增大,y轴方向值减小。本发明是通过车体在视频中的移动角度θ来判断是否是车开走的情况。
本发明并行对头部和尾部摄像头采集的视频数据进行处理,分别对集装箱锁扣进行检测,跟踪和运行分析,最后反馈集装箱是否被安全起吊的结果。一旦其中一个检测结果给出的信号是危险信号,那么就立即反馈给吊塔,集装箱被危险的吊起。若两个线程处理视频都未给出危险信号,则认为集装箱起吊是安全的。
基于视觉的集装箱监测方法主要分别三个模块,检测模块、跟踪模块和报警模块。检测模块负责定位集装箱锁扣位置和车体位置。跟踪模块负责跟踪集装箱锁扣和车体。报警模块通过分析集装箱车车体的运动关系,然后结合头尾视频输出结果,输出车体是否被安全的信号。
有益效果:本发明实现了基于计算机视觉的集装箱安全起吊监测方法。在集装箱起吊过程中,可能因为锁扣未打开导致车体被危险的起吊,本方法实现了实时的集装箱起吊监测,可以对危险的起吊情况进行及时报警。相对于传统的人工报警或者用激光进行报警的方法,本方法可能大大的降低成本。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述或其他方面的优点将会变得更加清楚。
图1为本发明基于计算机视觉集装箱安全期待哦监测方法对每个摄像头采集到的图像数据进行处理的流程图。
图2a是长为6m的集装箱尾部摄像头拍摄的图像,白色框为待检测区域。
图2b为长为6m的集装箱头部摄像头拍摄的图像,白色框为待检测区域。
图2c为长为12m的集装箱尾部摄像头拍摄的图像,白色框为待检测区域。
图2d为长为12m的集装箱头部摄像头拍摄的图像,白色框为待检测区域。
图3a是长为6m的集装箱尾部摄像头拍摄的图像,其中检测结果只保留了大于设定阈值的框,用白色框框出。
图3b是长为6m的集装箱头部摄像头拍摄的图像,其中检测结果只保留了大于设定阈值的框,用白色框框出。
图3c是长为12m的集装箱尾部摄像头拍摄的图像,其中检测结果只保留了大于设定阈值的框,用白色框框出。
图3d是长为12m的集装箱头部摄像头拍摄的图像,其中检测结果只保留了大于设定阈值的框,用白色框框出。
图4a是长为6m的集装箱尾部摄像头拍摄的图像,通过步骤5处理之后,筛选出的最大概率的区域作为集装箱锁扣的位置,用黑色框框出。
图4b是长为6m的集装箱头部摄像头拍摄的图像,通过步骤5处理之后,筛选出的最大概率的区域作为集装箱锁扣的位置,用黑色框框出。
图4c是长为12m的集装箱尾部摄像头拍摄的图像,通过步骤5处理之后,筛选出的最大概率的区域作为集装箱锁扣的位置,用黑色框框出。
图4d是长为12m的集装箱头部摄像头拍摄的图像,通过步骤5处理之后,筛选出的最大概率的区域作为集装箱锁扣的位置,用黑色框框出。
图5a为视频检测端集装箱锁扣未解锁,运输处被吊车的情况。
图5b为视频检测端的另一端集装箱锁扣未解锁,运输车被吊起的情况。
图6a为安全起吊的情况。
图6b为集装箱被起吊的过程中,车子开走的情况,这种情况直接反馈安全信号。
图7为考虑到运输车在起吊的过程中开走的情况可能会导致误检,通过分析运输车的运动方向判断是否是危险吊起的示意图。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
本发明并行对头部和尾部摄像头采集的视频数据进行处理,分别进行集装箱锁扣检测和跟踪,然后分别反馈集装箱是否被安全起吊的结果。一旦其中一个线程的检测结果给出的信号是危险信号,那么就立即反馈集装箱被危险吊起的信号,若头尾两个视频数据监测的结果都是安全的,认为集装箱是安全的。
具体地说,如图1所示,本发明公开了基于计算机视觉处理方法的港口集装箱起吊安全监测方法,并行对头尾两个摄像头采集的视频数据进行处理。基于视觉的集装箱监测方法主要分别三个模块,检测模块、跟踪模块和报警模块。
(1)检测模块负责定位集装箱锁扣位置和车体位置。
(2)跟踪模块负责跟踪集装箱锁扣和车体。
(3)报警模块通过分析集装箱车车体的运动关系,然后结合头尾视频输出结果,输出车体是否被安全的信号。
其中对每个摄像头的处理步骤如下:
步骤1:获取初始化数据,设置监测信号的初始值。监测信号包括起吊信号signal1,检测信号signal2,跟踪信号signal3,结束信号signal4。
步骤1-1:初始化数据。
集装箱的尺寸主要有两种型号:6.1m和12.2m。
摄像头位置分为头部和尾部摄像头,分别表示为HEAD_CAM和END_CAM。
所以一共分为四种视频数据,分别为头部摄像头6.1m集装箱、尾部摄像头6.1m集装箱、头部摄像头12.2米集装箱和尾部摄像头12.2m集装箱,分别记为HEAD_6、END_6、HEAD_12和END_12。
如图2a,图2b,图2c和图2d所示,分别是END_6、HEAD_6、END_12和HEAD_12拍摄的集装箱的图片,其中待检测的区域已经用框框出。集装箱大小以及摄像头位置的不同具体反映对检测模块的影响为检测的位置和待检测锁扣的大小不同,需要对不同摄像头和不同集装箱尺寸给出不同的初始化数据。
通过吊车控制系统获取集装箱的尺寸信息和摄像头的位置信息,初始化摄像头位置和集装箱尺寸大小。
步骤1-2:初始化监测信号。
起吊信号signal1为集装箱监测系统开始的激发信号,初始化为false,即只有当起吊信号signal1为true时才进行集装箱安全起吊的监测。集装箱被吊起一定高度(20cm左右)后,确保相抵锁位置能被摄像头捕捉后,吊车控制系统给出起吊信号,然后在设置起吊信号为true,开始检测。
检测信号signal2为图像进行检测的激发信号,初始也为true,本方法只进行一次集装箱锁扣的检测,一旦检测到集装箱锁扣就将检测信号signal2设置为false,之后不再对视频进行集装箱锁扣的检测操作。
跟踪信号signal3为跟踪集装箱锁扣的激发信号,初始化为false。只有当检测锁扣得到的概率值大于一定阈值(0.8)时,才将跟踪信号signal3设置为true,进行跟踪操作,否则不进行跟踪操作。
结束信号signal4为集装箱监测系统的结束的激发信号。一旦系统给出危险或者安全信号,则激发结束信号signal4,结束该视频的监测。
步骤2:获得检测区域,根据初始信号获得第一帧图像需要检测的感兴趣区域Roidetect,如图3所示。由于集装箱起吊时,吊塔所在位置固定,卡车停靠的位置固定,所以相同尺寸的集装箱和相同位置的摄像头检测的区域固定。为了节省检测的时间提高效率,根据吊车控制系统给出的集装箱尺寸和摄像头位置信息,可以设置不同的待检测区域Roidetect,该区域为检测系统进行锁扣检测的区域,即其他区域不进行锁扣的检测。
步骤3:对感兴趣区域Roidetect提取特征。根据初始化信号,在感兴趣Roidetect内用滑动窗口方法提取固定大小的区域,对每个区域有都计算HOG特征。方向直方图(Histogramof oriented gradient,HOG)特征是一种在计算机视觉与图像处理中进行物体检测的特征描述子。它通过计算和同济图像局部区域的梯度方向直方图来构成特征。提取HOG特征步骤:
1)灰度化(将图像看做一个x,y,z(灰度)的三维图像);
2)采用Gamma校正法对输入图像进行颜色空间的标准化(归一化);目的是调节图像的对比度,降低图像局部的阴影和光照变化所造成的影响,同时可以抑制噪音的干扰;
3)在感兴趣Roidetect内用滑动窗口方法生成N个固定大小的区域,对每个区域通过步骤4~9计算HOG特征。
4)计算图像每个像素的梯度(包括大小和方向);主要是为了捕获轮廓信息,同时进一步弱化光照的干扰。
d1(x,y)=I(x1,y1)-I(x0,y0)
…
dn(x,y)=I(xn,yn)-I(x0,y0)
将单元格的梯度方向360°均匀划分为9个方向块,其中I(x0,y0)表示要计算的点的像素值,I(xn,yn)表示9个方向的像素值,dn(x,y)表示像素点(xo,y0)处9个方向的梯度,其中n的取值范围是1~9。
每个像素的梯度g表示为:
5)将图像划分成小单元格(例如6*6像素/单元格);
6)统计每个单元格的梯度直方图(不同梯度的个数),即可形成每个单元格的描述子;
7)将每几个单元格组成一个图像块(例如3*3个单元格/图像块),一个图像块内所有单元格的特征描述子串联起来便得到该图像块的HOG特征描述子。
8)将图像image内的所有图像块的HOG特征描述子串联起来就可以得到该image(要检测的目标)的HOG特征描述子了。这个就是最终的可供分类使用的特征向量。
HOG特征构建梯度直方图是在单元格中完成,方向块的个数决定了方向的范围。在实验中采用的9个方向块的直方图来统计单元格中的梯度信息,即将梯度方向0~360分为9个方向块。
9)最后将计算得到的每个区域的HOG特征作为该区域的局部特征。
步骤4:集装箱锁扣检测是一个机器学习的过程,可以分为训练阶段和测试阶段;
步骤4-1:训练阶段,采集大量集装箱检测的样本图像(3000张),并通过人工标记的方法标记出集装箱锁扣的位置,生成集装箱锁扣的正样本。在样本图像中除锁扣位置外随机生成负样本,同时控制正负样本比例为1:3。提取正样本和负样本的HOG特征,通过线性支持向量机SVM训练分类器。因为集装箱锁扣边缘特征明显,所以HOG特征可以有效的捕捉锁扣的特征。
步骤4-2:分类阶段。通过步骤2~3得到的每个区域的HOG特征,然后输入到训练好的线性支持向量机SVM分类得到每块区域是正样本的概率值,只保留阈值大于设定值的区域SM,如图3a、图3b、图3c和图3d所示,分别是END_6、HEAD_6、END_12和HEAD_12是正样本的概率值大于设定值的区域,用白色框表示。
步骤5:对保留下的M个概率值大于阈值的区域SM,为防止产生误检,本方法计算概率值前k(3)个区域中心之间的像素欧式距离,若具体在设定阈值内,则认为他们检测的同一个锁扣区域,取概率值最大的区域作为锁扣所在位置。若它们中心的像素欧式距离大于设定阈值(20个像素),则通过投票法,对概率值为前j(一般取5)个进行投票,并取投票个数最多的区域作为锁扣所在位置,如图4a、图4b、图4c和图4d所示,分别为END_6、HEAD_6、END_12和HEAD_12筛选的最终结果用黑色的框框出。
步骤6:跟踪锁扣和车体的运动。若集装箱锁扣检测结果的概率值大于一定阈值(0.8),则对集装箱锁扣和车体进行跟踪,否则不进行跟踪。首先通过检测阶段检测出集装箱锁扣的位置,然后设定集装箱锁扣下面一定距离(25个像素)的区域为车体,分别通过核相关滤波算法KCF(High-Speed Tracking with Kernelized Correlation Filters)跟踪器跟踪锁扣和车体运动。KCF跟踪器对光照变化,遮挡,非刚性形变,运动模糊,背景杂乱和旋转等视频均能跟踪良好,比较适合我们的跟踪目标。
步骤7:分析锁扣和车体的运动关系,给出集装箱是否被安全起吊结果。通过跟踪器可以分别得到集装箱和车体的是在图像中的实时位置信息,进而可以得到集装箱和车体相对于原位置的运动方向和距离。记车体的初始位置为Carori,集装箱初始位置为Containerori,车体的实时位置信息为Carpos,集装箱的实时位置信息为Containerpos。
集装箱起吊有两种情况,一种是危险起吊,另一种是安全起吊。
集装箱被危险起吊一般分为四种情况:
(1)若集装箱的视频检测的锁扣被锁住,例如视频是12m头部视频,头部检测的锁扣被锁住,在视频中反应为车体和集装箱一起被吊起,一起向上运动。若根据步骤6跟踪得到的车体被起吊向上运动超过上升阈值即Carpos-Carori>thresoldris(40像素),则很有可能是被危险起吊,如图5a所示。
(2)若集装箱的视频检测端的另一端锁扣被锁住,由于另一端被吊起,所以检测端在视频中反应为车体和集装箱一起向下运动。若根据步骤6跟踪得到的车体向下运动距离超过下降阈值即Carori-Carpos>thresolddown(15个像素),则很可能是检测端的另一端锁扣被锁住,则为危险起吊,如图5b所示。
(3)在集装箱被吊起一定像素距离之后车子还有下降量。此策略为了应对车体被吊起之后有一定反弹,在吊起一定高度之后再去判断,如果有下降量,则认为是车子另外一端被吊起导致检测端车体下降,为危险起吊。
(4)车子在起吊过程中开走情况。为了应对车子开走的情况,加入一个新的判断。当车体被吊起一定高度(25个像素)之后,若检测到车体有下降量,那么进入下一个判断,检测是否是由车子开走而导致车体下降的。
检测是否是由车子开走而导致车体下降。车子开走会导致车体的移动,大部分是在x方向上的移动,不过有少部分是在y方向上的移动。头部车子在图像上显示是斜上方向开的,x方向和y方向值都是变大的。而尾部看到的是斜下方向,x方向值增大,y方向值减小。本方法通过车体在视频中的移动角度θ来判断是否是车开走的情况。通过计算f帧之后视频中y方向上的变化量Δy=Carpos·y-Carori·y,以及x方向上的变化量Δx=Carpos·x-Carori·x。其中x,y分别表示图像中的像素横纵坐标。
求变化的斜率是否在一定阈值内,如果大于这个阈值(0.36),说明y方向变化很大,是否车子另外一端被吊起导致检测端下降。如图7所示,
集装箱安全起吊分为两种情况:
(1)集装箱以及被吊起到特定高度即Containerpos-Containerori>liftup(120个像素),且没有检测到危险情况,则认为集装箱被安全起吊,如图6a所示。
(2)在集装箱吊起的过程中,车体可能会发生移动,在视频的所反映的是车体按照斜上方的方向上运动,所以这种情况容易导致车体向上运动超过阈值,导致误检。所以,本方法通过分析车体的运动角度,若角度低于给定阈值(20°),则认为车子移动,则输出安全信号,如图6b所示。
步骤8:结合两个线程处理的结果:如果其中一个线程检测结果是危险,那么给出最终的检测结果危险信号,如果两个线程都未给出危险信号,则给出最终的检测结果为安全信号。
否则继续读取下一帧,执行步骤6。
本发明提供了一种基于计算机视觉的集装箱安全起吊监测方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。
Claims (1)
1.一种基于计算机视觉的集装箱安全起吊监测方法,其特征在于,包括如下步骤:
步骤1:获取初始化数据,设置监测信号的初始值;
步骤2:根据初始信号设定第一帧图像需要检测的感兴趣区域Roidetect;
步骤3:对感兴趣区域Roidetect提取方向直方图HOG特征;
步骤4:进行集装箱锁扣检测;
步骤5:获取锁扣所在位置;
步骤6:跟踪锁扣和车体的运动;
步骤7:分析锁扣和车体的运动关系,给出集装箱是否被安全起吊结果;
步骤8:对两个摄像头采集的视频数据进行并行处理,分别执行步骤1~步骤7,得到两个结果,如果其中一个检测结果是危险起吊,则给出最终的检测结果危险信号,如果两个结果都未表示危险起吊,则给出最终的检测结果为安全信号,否则继续读取下一帧视频图像,执行步骤1~步骤7;
步骤1包括如下步骤:
步骤1-1:获取初始化数据:获取集装箱的尺寸信息和摄像头的位置信息,初始化摄像头位置和集装箱尺寸大小,集装箱的尺寸包括两种型号:6.1m和12.2m;
摄像头位置分为头部摄像头和尾部摄像头,分别表示为HEAD_CAM和END_CAM,
则一共分为四种视频数据,分别为头部摄像头6.1m集装箱、尾部摄像头6.1m集装箱、头部摄像头12.2米集装箱和尾部摄像头12.2m集装箱,分别记为HEAD_6、END_6、HEAD_12和END_12;
步骤1-2:初始化监测信号,监测信号包括起吊信号signal1,检测信号signal2,跟踪信号signal3,结束信号signal4;
起吊信号signal1为监测开始的激发信号,初始化为false,即只有当起吊信号signal1为true时才进行集装箱安全起吊的监测;集装箱被吊起一定高度后,确保相抵锁位置能被摄像头捕捉后,吊车控制系统给出起吊信号,然后再设置起吊信号为true,开始检测;
检测信号signal2为图像进行检测的激发信号,初始为true,一旦检测到集装箱锁扣就将检测信号signal2设置为false,之后不再对视频进行集装箱锁扣的检测操作;
跟踪信号signal3为跟踪集装箱锁扣的激发信号,初始化为false,只有当检测锁扣得到的概率值大于一定阈值时,才将跟踪信号signal3设置为true,进行跟踪操作,否则不进行跟踪操作;
结束信号signal4为监测结束的激发信号,一旦给出危险或者安全信号,则激发结束信号signal4,结束该视频的监测;
步骤3包括如下步骤:
步骤3-1,将第一帧图像灰度化;
步骤3-2,采用Gamma校正法对图像进行颜色空间的标准化,即归一化;
步骤3-3,在感兴趣Roidetect内用滑动窗口方法生成N个固定大小的区域,对每个区域通过步骤3-4~3-9计算方向直方图HOG特征;
步骤3-4,计算图像每个像素的梯度,包括大小和方向:
d1(x,y)=I(x1,y1)-I(x0,y0)
…
dn(x,y)=I(xn,yn)-I(x0,y0)
将单元格的梯度方向360°均匀划分为9个方向块,其中I(x0,y0)表示要计算的点的像素值,I(x0,y0)...I(xn,yn)表示9个方向的像素值,dn(x,y)表示像素点(x0,y0)处9个方向的梯度,其中n的取值范围是1~9;
每个像素的梯度g表示为:
步骤3-5,将图像划分成小单元格;
步骤3-6,统计每个单元格的梯度直方图,即形成每个单元格的描述子;
步骤3-7,将每Z1个单元格组成一个图像块,一个图像块内所有单元格的特征描述子串联起来便得到该图像块的方向直方图HOG特征描述子;
步骤3-8,将图像内的所有图像块的方向直方图HOG特征描述子串联起来就能够得到要检测的目标的方向直方图HOG特征,所述要检测的目标的方向直方图HOG特征就是最终的可供分类使用的特征向量;
步骤3-9,最后将计算得到的每个区域的方向直方图HOG特征作为该区域的局部特征;
步骤4包括:
步骤4-1:训练分类器:采集大量集装箱检测的样本图像,并标记出集装箱锁扣的位置,生成集装箱锁扣的正样本,在样本图像中除锁扣位置外随机生成负样本,同时控制正负样本比例为1∶3,提取正样本和负样本的方向直方图HOG特征,通过线性支持向量机SVM训练分类器;
步骤4-2:分类:通过步骤2~3得到的每个区域的HOG特征,然后输入到训练好的线性支持向量机SVM分类得到每个区域是正样本的概率值F,只保留概率值大于设定值的M个区域SM;
步骤5包括:对保留下的M个概率值大于阈值的区域SM,计算概率值前k个区域中心之间的像素欧式距离z,若z小于或等于阈值,则判定k个区域检测的是同一个锁扣区域,取k个区域中概率值F最大的区域作为锁扣所在位置;若z大于设定阈值,则通过投票法,对概率值为前j个进行投票,并取投票个数最多的区域作为锁扣所在位置;
步骤6包括:若由步骤4-2得到的集装箱锁扣检测结果的概率值大于设定阈值,则对集装箱锁扣和车体进行跟踪,首先根据锁扣的位置,设定集装箱锁扣下面一定距离的区域为车体,通过核相关滤波算法KCF跟踪器跟踪锁扣和车体运动;否则不进行跟踪;
步骤7包括:
在步骤6中,通过跟踪器分别得到集装箱和车体在图像中的实时位置信息,从而得到集装箱和车体相对于原位置的运动方向和距离:记车体的初始位置为Carori,集装箱初始位置为Containerori,车体的实时位置信息为Carpos,集装箱的实时位置信息为Containerpos;
集装箱起吊有两种情况,一种是危险起吊,另一种是安全起吊;
集装箱被危险起吊分为如下四种情况:
第一种情况,若集装箱的视频检测的锁扣被锁住,在视频中反应为车体和集装箱一起被吊起,一起向上运动;若根据步骤6跟踪车体得到的车体起吊向上运动距离超过上升阈值thresoldris,即Carpos-Carori>thresoldris,则为危险起吊;
第二种情况,若集装箱的视频检测端的另一端锁扣被锁住,由于另一端被吊起,所以检测端在视频中反应为车体和集装箱一起向下运动;若根据步骤6跟踪车体得到的车体向下运动距离超过下降阈值thresolddown,即Carori-Carpos>thresolddown,则很可能是检测端的另一端锁扣被锁住,为危险起吊;
第三种情况,在集装箱被吊起一定像素距离之后车子还有下降量,则判定是车子另外一端被吊起导致检测端车体下降,为危险起吊;
第四种情况,车子在起吊过程中开走情况:当车体被吊起一定高度之后,若检测到车体有下降量,则检测是否是由车子开走而导致车体下降的,若由步骤6跟踪车体运动判定车体未开走,则为危险起吊;
集装箱安全起吊分为如下两种情况:
第一种情况,集装箱以及被吊起到特定高度且没有检测到危险情况,则判定集装箱被安全起吊;
第二种情况,在集装箱吊起的过程中,根据如下公式计算tanθ:
其中,θ表示车体在视频中的移动角度,如果tanθ<thresh,则判定车子移动,则输出安全信号,否则输出危险信号;
所述检测是否是由车子开走而导致车体下降的,具体包括:
计算f帧之后视频中y轴方向上的变化量Δy=Carpos·y-Carori·y,以及x轴方向上的变化量Δx=Carpos·x-Carori·x,其中x,y分别表示图像中的像素横坐标、纵坐标;计算tanθ:
其中,θ表示车体在视频中的移动角度,如果tanθ大于阈值thresh,说明y轴方向变化很大,表示车子另外一端被吊起导致检测端下降,则输出危险信号,否则输出安全信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910443526.XA CN110197499B (zh) | 2019-05-27 | 2019-05-27 | 一种基于计算机视觉的集装箱安全起吊监测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910443526.XA CN110197499B (zh) | 2019-05-27 | 2019-05-27 | 一种基于计算机视觉的集装箱安全起吊监测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110197499A CN110197499A (zh) | 2019-09-03 |
CN110197499B true CN110197499B (zh) | 2021-02-02 |
Family
ID=67753120
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910443526.XA Active CN110197499B (zh) | 2019-05-27 | 2019-05-27 | 一种基于计算机视觉的集装箱安全起吊监测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110197499B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113420646B (zh) * | 2021-06-22 | 2023-04-07 | 天津港第二集装箱码头有限公司 | 一种基于深度学习的锁站连接锁检测系统及方法 |
CN114155438B (zh) * | 2021-12-07 | 2024-10-29 | 南京飞衍智能科技有限公司 | 一种集装箱装卸安全检测方法和系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105956619B (zh) * | 2016-04-27 | 2019-05-24 | 浙江工业大学 | 一种集装箱锁孔粗定位和跟踪方法 |
US20170349084A1 (en) * | 2016-06-06 | 2017-12-07 | The Heil Co. | Locking Mechanism For Roll Off Hoist Containers |
CN107527347B (zh) * | 2017-10-11 | 2020-01-14 | 南京大学 | 基于计算机视觉图像处理的港口集装箱起吊安全监测方法 |
CN107680092B (zh) * | 2017-10-12 | 2020-10-27 | 中科视拓(北京)科技有限公司 | 一种基于深度学习的集装箱锁扣检测及预警方法 |
CN108090895B (zh) * | 2017-11-28 | 2021-07-06 | 浙江工业大学 | 一种基于图像处理的集装箱锁孔轮廓提取方法 |
CN108491851B (zh) * | 2018-01-29 | 2020-07-31 | 江苏大学 | 一种基于机器视觉的集装箱锁孔快速识别与吊具纠偏方法 |
CN208516809U (zh) * | 2018-07-06 | 2019-02-19 | 上海振华重工(集团)股份有限公司 | 图像识别技术的集卡防吊起系统 |
CN108792951B (zh) * | 2018-07-06 | 2024-04-23 | 上海振华重工(集团)股份有限公司 | 图像识别技术的集卡防吊起方法、系统、设备及存储介质 |
-
2019
- 2019-05-27 CN CN201910443526.XA patent/CN110197499B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110197499A (zh) | 2019-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109993056B (zh) | 一种识别车辆违章行为的方法、服务器及存储介质 | |
CN108564814B (zh) | 一种基于图像的停车场车位检测方法及装置 | |
Polishetty et al. | A next-generation secure cloud-based deep learning license plate recognition for smart cities | |
CN105260744B (zh) | 一种货运列车钩尾扁销部位故障的自动在线诊断方法及系统 | |
US7734097B1 (en) | Detecting objects in images with covariance matrices | |
CN105447503B (zh) | 基于稀疏表示lbp和hog融合的行人检测方法 | |
CN107680092B (zh) | 一种基于深度学习的集装箱锁扣检测及预警方法 | |
CN105894701B (zh) | 输电线路防外破大型施工车辆的识别报警方法 | |
CN102819733B (zh) | 一种快速的街景图像中人脸的检测模糊方法 | |
CN105740886B (zh) | 一种基于机器学习的车标识别方法 | |
CN110197499B (zh) | 一种基于计算机视觉的集装箱安全起吊监测方法 | |
CN110348451A (zh) | 铁路集装箱装卸过程中的箱号自动采集及识别方法 | |
CN107315990B (zh) | 一种基于xcs-lbp特征的行人检测算法 | |
Bedruz et al. | Real-time vehicle detection and tracking using a mean-shift based blob analysis and tracking approach | |
Sanyuan et al. | Car plate character extraction under complicated environment | |
CN108275530A (zh) | 一种基于机器学习的电梯安全预警方法 | |
CN118154535A (zh) | 一种基于数字视觉信号的中小跨桥梁多参数监测系统 | |
CN110516547B (zh) | 一种基于加权非负矩阵分解的套牌车辆检测方法 | |
CN113177557B (zh) | 一种基于机器视觉和深度学习的防打保龄的方法和系统 | |
CN113205687B (zh) | 一种基于视频监控的酒驾车辆轨迹识别系统 | |
CN115321361A (zh) | 一种轮胎式集装箱起重机视觉自动对位系统 | |
Xiong et al. | High Speed Front-Vehicle Detection Based on Video Multi-feature Fusion | |
CN118537819B (zh) | 一种低算力的帧差法道路车辆视觉识别方法、介质及系统 | |
Zhao et al. | Comparative analysis of several vehicle detection methods in urban traffic scenes | |
Theagarajan et al. | Robust visual rear ground clearance estimation and classification of a passenger vehicle |
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 |