一种使用无人机进行海上遇险人员自动搜救方法
【技术领域】
[0001]本发明涉及无人机搜救领域,计算机视觉领域,具体涉及使用无人机进行落水人 员搜救的方法。
【背景技术】
[0002] 对于海面遇险船只的人员搜救工作,传统方法使用飞机或者船只前往出事海域进 行搜救,使用人工对可疑区域内进行观察,这种方法对人力需求较高,并且会因为观察人员 的疲劳而产生漏判;若使用无人机采集落水区域的图像,并在远程控制台进行人工观察,则 会对无线带宽要求很高,无法实时传递高清图像,多架无人机会造成干扰,并且没有计算机 辅助的控制台仍然会造成观察人员的疲劳而产生误判。
[0003] 本发明使用无人机进行遇险人员的搜救工作,无人机有着机动灵活的优点,其成 本低于人工方式,由于无人机类似于飞机,会引起落水人员的注意并挥手,所以更易识别。 本发明通过使用无人机自带的摄像头进行图像采集,并将大部分识别工作放在机身进行处 理,减少了每一架无人机所占用的带宽,从而使得能够在相同区域内布放大量的无人机,提 高搜救的成功率。通过使用智能的检测算法,本发明能够实现无人机自动搜寻目标及路径 选择,从而减少了人力的需求。
【发明内容】
[0004] 本发明所要解决的技术问题是为了克服传统搜救方式大量使用人工进行检测,从 而容易因为观察人员的疲劳而产生漏判的缺点,提出了一种使用无人机进行自动检测落水 人员的方法。
[0005] 本发明解决其技术问题所采用的技术方案是:
[0006] -种使用无人机进行海上遇险人员自动搜救方法,包括带有遥感摄像头的无人 机,装配在无人机上用于与被搜救人员进行通讯的麦克风和喇叭,图像去噪模块,去除背景 色模块,特殊颜色检测模块,异常物体检测模块,挥手检测模块,检测结果处理模块,飞行控 制模块,控制台模块;所述的装配在无人机上用于与被搜救人员进行通讯的麦克风和喇叭, 其作用是用于在发现被搜救人员时,询问人员的情况,以及安抚搜救人员;所述的图像去噪 模块,用以对采集到的图像进行去噪处理;所述的去除背景色模块,用以将海面上的背景色 去除;所述的特殊颜色检测模块,对红色和橙色进行有针对性的检测,提取出海面上靠近红 色和橙色的图像;所述的异常物体检测模块,分别对去除背景色模块所得到的图像和特殊 颜色检测模块所得到的图像进行异常物体检测;所述的挥手检测模块,对于异常物体检测 模块检测出的异常物体进行进一步的挥手检测,检测出可能的遇险者;所述的检测结果处 理模块,对于所有检测出来的异常区域,按照检测出来区域存在遇险者的可能性大小进行 排序,并将结果发送给控制台模块;所述的飞行控制模块用于对无人机的飞行路径和观测 区域进行控制;控制台模块用于将检测出来的异常物体按照最大可能为遇险者的顺序展示 给监控人员,由监控人员进行最终筛选。
[0007] 所述的一种使用无人机进行海上遇险人员自动搜救方法,所需的设备为带有遥感 摄像头的无人机以及装配在无人机上用于与被搜救人员进行通讯的防水麦克风和防水喇 口八,该遥感摄像头,通常为垂直向下拍摄的广角摄像头;该防水麦克平时固定在无人机下, 并使用3米长的连接线进行连接,当发现落水者时,接收控制台的命令,无人机悬空,将防水 麦克放下,由落水者拾起,开始于控制台进行交流。
[0008] 所述的一种使用无人机进行海上遇险人员自动搜救方法,共包含图像去噪模块, 去除背景色模块,特殊颜色检测模块,异常物体检测模块,挥手检测模块,检测结果处理模 块,飞行控制模块,控制台模块。
[0009] 所述的图像去噪模块,在初始化过程中,其输入为包含遇险者、救生船和海面的彩 色图像集合,以及含有挥手动作的视频片段与不含有挥手动作的海上视频片段的集合,该 视频片段可以看成为一组视频帧的集合;在检测过程中,其输入为无人机的摄像头所摄的 彩色图像。对于输入的图像X,首先设置一个3X3维的窗口,考虑该图像X的每个像素点X(i, j),以该点为中心点的3X3维矩阵所对应的像素值分别为[X(i_l,j-1),X(i_l,j),X(i_l,j + l),X(i,j-l),X(i,j),X(i,j+l),X(i+l,j+l),X(i+l,j),X(j+l,j+l)]进行从大到小排列, 取其排在中间的值为新的像素 X' (i,j)所对应滤波后值,注意对于X的边界点,会出现其3 X 3维的窗口所对应的某些像素点不存在的情况,那么只需计算落在窗口内存在的像素点的 中间值即可,若窗口内为偶数个点,将排在中间两个像素值的平均值作为该像素点去噪后 的值XHj),从而,新的图像矩阵f即为滤波后所得的图片矩阵;待处理结束后,在初始化 阶段,将去噪处理过的遇险者、救生船和海面的彩色图像集合传递给去除背景模块和特殊 颜色检测模块,将去噪处理过的含有挥手动作的视频片段与不含有挥手动作的海上视频片 段的集合传递给挥手检测模块;在检测过程中,将去噪处理过的当前帧图片传递给除背景 模块和特殊颜色检测模块。
[0010] 所述的去除背景色模块,在初始化过程中,接收从图像去噪模块所传来的经过去 噪处理的遇险者、救生船和海面的彩色图像集合,对于该集合,选取所有的海面的彩色图像 构成集合为[Χι,Χ 2,···,Χη],其中每个图像Xi(i = l:n)的每个像素点Xi(a,b)有R,G,B三个分 量,分别用Xf以,i?),Xfζα,&)。计算集合中所有的像素点对应的R,G,B的平均值 ^11,811,于是得到了整个图像集合的背景颜色(^11,8 1〇并保存,对于包含遇险者、救生船 和海面的彩色图像集合的每张图片的每个像素点,分别减去(Κμ,Βμ),从而得到去除背景 的图片,再将该彩色图片变成灰度图像,从而得到了去除背景色的图像,将该图像传递给异 常物体检测模块;在检测过程中,对于图像去噪模块所传递来的经过去噪处理的海面图像, 将该图像的每个像素点分别减去在初始化过程中所计算出来的海面背景色(Κ μ,Βμ),再 将去除背景色的图片转换成灰度图像,最后将该灰度图片传递给异常物体检测模块。
[0011] 所述的将彩色图片变换成灰度图片的变换方法为:对于原始彩色图片X上的每一 个像素点所对应的R,G,B分量,不失一般性的用i和j表示,则该像素点对应的灰度图像f的 灰度值为X' (i,j)=〇.3XB/ (?,Β+Ο.δθΧΟ' (IjHO.llXlT (i,j),其中X' (i,j)为整数, 若所得结果为小数的话,仅取其整数部分,从而得到原始X的灰度图像V。
[0012] 所述的特殊颜色检测模块,接收由图像去噪模块所传递来的经过去噪处理的图像 X,对该图像提取靠近橙色和红色的区域。在初始化过程中,考虑到海面上大部分颜色为蓝 色绿色和白色,而海上救生衣、救生艇、信号以红色和橙色为主,所以,对红色和橙色的提取 方法为:对于图像上的每一像素点x(a,b),其R,G,B分量分别为Rx(a,b),Gx(a,b),B x(a,b), 首先取三个分量的最小值m i η,计算该分量对应的除去最小值mi η后的分量f x (a,b) = Rx (a, x(a,b) =Bx(a,b)-min,对于该去除最小值后的分量(f μ (&,13),6%(8,13),8\(&,13)),若1?\(&,13)>0,则说明当前区域有较大的红色分量,0为一个 阈值。对于去除最小值后的像素点0?%(3,13),6%( &,13),8%(&,13))所构成的图像,,单独提 取其彩色图像的红色分量R\,将R\(a,b)传递给异常物体检测模块。在检测过程中,第一 步,构造一个与图像X有着相同维度的矩阵M,其初始时每个元素都为0.第二步,对于每个像 素点,减去其最小分量,该方法与初始化过程中的方法相同,这里不再赘述;对于去除最小 值后的分量(1?%(3,13),6%(3,13),8\( &,13)),若1?%(&,13)>0,则说明当前区域有较大的红 色分量,而这些红色分量更大可能为救生衣、救生艇或者其他求救信号所发出的,Θ为一个 阈值。对于R%(a,b) > Θ所对应的点(a,b),将M(a,b)的值赋值为1。第三步,待所有像素点都 处理结束后,去除Μ中的孤立点;对于去除最小值后的像素点 b))所构成的图像X、单独提取其彩色图像的红色分量R%,将然后对于1?\的每一个像素点 (&沁),计算1?%(&,13)=1?%(&,13)乂1( &,13),这样做的目的是保留红色分量较多的图像区域 的灰度图,删去红色分量较少的图像区域的图像信息。待R%和Μ的每个点处理结束后,将R% 和Μ传递给异常物体检测模块。
[0013] 所述的去除Μ中的孤立点,其方法如下,设Μ为mX η维的矩阵,将该矩阵缩小为 Lm/2〇j X [η/20|维的矩阵,,其中[xj意为X整数部分。对于矩阵中的元素,(a,b),对应于 矩阵Μ的角点为(20\&+1,20\匕+1),(20\ &+20,20父匕+20)所围成的矩形区域,计算这个区 域的所有M(i,j)的平均值μ,若以> ε,ε为阈值,则,(a,b) = 1,否则,(a,b) = 0。待,的所有 元素计算完成后,根据^的每个点改变Μ中的对应矩阵区域的值,若,(a,b)=0,则其在Μ上 对应的区域(由(20\ &+1,20\&+1),(20\&+20,20\&+20)所围成的矩形区域)的所有点都 赋值为0,若,(a,b) = 1,则对应区域的所有点都赋值为1.从而完成对Μ中的孤立点的去除 和连通。
[0014] 所述的异常物体检测模块,在初始化的过程中,接收到从去除背景色模块传递来 的灰度图像X'和特殊颜色检测模块传递来的红色分量f u。我们需要对f所代表的数据集 和和R\所代表的数据集合分别构建分类器,从而得到分别对应于去除背景色模块输出图 像的分类器和特殊颜色检测模块输出图像的分类器,由于f和R%为同维度的图像,其每个 点的像素均为一个元素 Xla^)和R\(a,b),因此,这两个分类器的初始化方式相同,不失 一般性,我们对每个数据集和的每一张样本图片P,构建该图片P所对应的积分图PP,然后使 用所有积分图对级联分类器进行参数初始化,最后将训练所得的级联分类器保存起来用于 检测过程;在检测过程中,将接收到从接收到从去除背景色模块传递来的灰度图像f和特 殊颜色检测模块传递来的红色分量R%,对于这图片f按照窗口大小为ηΧη进行多层分割, 对于图片R\根据辅助信息,进行快速分割,对于分割后所得的所有子图片,构建其积分 图,最后用训练所得的各自对应的级联分类器进行分类筛选,得到所有异常物体的子图片, 将这些包含异常物体的子图片附带其在原始图片的坐标和帧信息传递给挥手检测模块。
[0015] 所述的构建图片P所对应的积分图PP,其过程为:
[0016] 对于图像P,我们从该矩阵的第1行第1列开始构造积分图,初始时设s(l,l)=P(l, 1),RR( 1,1) =P( 1,1),构造过程为一个二层循环:
[0017]
[0018] 从而构造出P分量所对应的积分图PP;
[0019]所述的使用积分图pp对级联分类器进行训练,其过程为:
[0020] 笛一朱.帝 々弱分悉恶的通教· Ιι?χ.?.η.θ')为:
[0021]
[0022] 其中f为特征函数,Θ为阈值,ρ取值为1或-1,X代表根据积分图ΡΡ所构建的子窗口, 对于每一个子窗口 x,f(x)为该子窗口 X对应于特征函数f的特征值。
[0023] 为了叙述方便,我们将子窗口 X的四个边界分别定义为左上点A,右上点B,左下点 0,右下点0,4与13的中心点为313,4与13的三分之一靠近A点为aab,三分之一靠近B点为abb,其 余类推,区域内的中心点用0来表示。则x(A)表示子窗口在左上点A的积分图所对应的值,其 余同理。
[0024] 则定义:
[0025] fi = [x(bd)+x(A)-x(B)-x(ac)]-[x(ac)+x(D)-x(bd)_x(C)],并且定义s = 1,t = 2;
[0026] f2=[x(A)+x(cd)-x(BC)-x(ab)]-[x(ab)+x(D)-x(B)_x(cd)],并且定义s = 2,t = 1;
[0027] f3=[x(A)+x(bbd)-x(aac)_x(B)]_2 X[x(bdd)+x(aac)-x(acc)_x(bbd)] + [x(D) + x(acc)-x(bdd)_x(C)],并且定义s = l,t = 3;
[0028] f4=[x(A)+x(ccd)-x(aab)-x(C)]-2 X[x(cdd)+x(aab)-x(abb)-x(ccd)] + [x(D) + x(abb)-x(B)_x(cdd)],并且定义s = 3,t = l;
[0029] f5=[x(A)+x(0)-x(ab)-x(ac)] + [x(D)+x(0)-x(bd)-x(cd)]-[x(ab)+x(bd)-x (B)-x(0)]-[x(ac)+x(cd)_x(0)-x(C)],并且定义s = 2,t = 2;
[0030] 第二步:构建积分图PP所对应的子窗口 x。该子窗口 x的选择过程如下:
[0031 ]定义自然数s和t,这两个数为子窗口的倍数,这两个数值的选定由特征函数给定, 于是,X所对应的子窗口区域为:[(i,j),( i,j+t X (b-1)),( i+s X (a-1),j),( i+s X (a-1),j +t X (b-1))],其中:i,j,a,b分别为从1开始递增的整数,并且能够保证i+s X (a-l)< n,j+t X (b-1 Η n成立的所有取值。
[0032]第三步:对于定义的5个特征函数,计算所有训练样本的所有RGB分量对应于当前 子窗口 X的特征值f(x),我们此称之为在当前RGB分量下当前子窗口 X的特征,如果当前窗口 下有wf个子窗口,那么一共有T = 3XwfX5个特征,每一个特征表示为ht。设海面上正常物 体的图片和异常物体的图片各有K张,则对分类器的训练过程如下:
[0033]