具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例的技术方案进行描述。
本发明实施例提出了一种图像处理方法、设备及可移动平台。其中,该图像处理方法可由图像处理系统执行,或者,该图像处理方法可由可移动平台执行。其中,该可移动平台可以包括但不限于无人机、无人船、地面机器人、智能小车、无人车等。当该图像处理方法由图像处理系统执行时,该图像处理系统可包括于该可移动平台中。在一些实施方式中,图像处理系统可以为一个具体的图像处理设备,并且与可移动平台之间可以通过无线通信连接方式建立通信连接,或者与可移动平台之间通过有线通信连接方式建立通信连接。在另一些实施方式中,图像处理系统还可以为分布式的形式,其所包含的各个部件或装置可以分布式地设置在可移动平台,并且各个部件或装置之间可以通过有线、无线、通信总线等方式连接,并且图像处理系统与可移动平台也可以通信连接。
在本申请实施例中,图像处理系统包括双目摄像装置。该双目摄像装置用于采集周围环境的左目视图和右目视图,包括但不限于可见光相机、灰度相机或红外相机等。可选的,双目摄像装置可以通过承载装置配置在图像处理系统的机身上。
在本申请实施例中,图像处理系统还可包括点云传感器。该点云传感器用于采集环境的三维点云。其中,三维点云包括各个三维点的特征信息,即环境中特征点的三维信息。该点云传感器包括但不限于激光雷达传感器、毫米波雷达传感器和超声波雷达传感器等。
当图像处理方法由可移动平台执行时,该可移动平台可包括上述的双目摄像装置和点云传感器,其描述可参照图像处理系统中的双目摄像装置和点云传感器的描述,在此不再赘述。
在某些实施例中,该可移动平台还可包括通信装置,用于与控制终端进行通信。该控制终端用于对该可移动平台进行控制。该控制终端可以为手机、平板电脑、遥控器或其他穿戴式设备(手表或手环)等,本申请实施例不做限定。
为了便于对本申请的方案进行理解,下面先对现有的基于双目摄像装置进行距离测量的原理进行介绍。
请参阅图1,图1为本发明实施例公开的一种现有的基于双目摄像装置进行距离测量的原理示意图。如图1所示,双目摄像装置中的左目摄像装置采集环境的左目视图110,双目摄像装置中的右目摄像装置采集环境的右目视图120。L1为左目摄像装置的光轴,L2为右目摄像装置的光轴。基线距离B为左目摄像装置的投影中心C1和右目摄像装置的投影中心C2之间的距离。P(xc,yc,zc)点为左目摄像装置和右目摄像装置在同一时刻观看时空物体的同一特征点。P(xc,yc,zc)点在左目视图110中的坐标为Pleft=(xleft,yleft),P(xc,yc,zc)点在右目视图120中的坐标为Pright=(xright,yright)。而左目视图110和右目视图120处于同一个Y平面,则特征点P的图像坐标中的Y坐标相等,即yleft=yright=y。由三角几何关系可以得到如下公式(1):
其中,f为双目摄像装置的焦距。由于左目视图110和右目视图120之间对于P(xc,yc,zc)点的视差Disparity=xleft-xright,则特征点P在该双目摄像装置的坐标系下的三维坐标,可通过如下所示的公式(2)进行计算得到。
可见,视差可根据P(xc,yc,zc)点的深度信息得到。然而,该方法的误差随着物体的距离增加而增加,对双目摄像装置拍摄的左目视图110和右目视图120进行匹配,无法准确地确定出P(xc,yc,zc)点的深度信息。进而无法根据P(xc,yc,zc)点的深度信息准确地确定出P(xc,yc,zc)点对应的视差,进而导致无法准确地确定出与P(xc,yc,zc)点之间的距离。
因此,为了能够准确地确定出双目摄像装置拍摄的左目视图110和右目视图120之间的视差图,本申请实施例提供了一种图像处理方法、系统及可移动平台。以下进一步对该图像处理方法进行详细地介绍。
请参阅图2,图2为本发明实施例公开的一种图像处理方法的流程示意图。如图2所示,该图像处理方法可包括步骤201~203。上述步骤201~203可以由图像处理系统执行,也可以由可移动平台执行。可选的,具体可以由可移动平台的图像处理系统执行。其中:
201、通过双目摄像装置采集环境的第一视图和第二视图,并通过点云传感器采集该环境的三维点云。
在本申请实施例中,双目摄像装置为左右双目摄像装置,相应的,当第一视图为左目视图时,第二视图为右目视图;当第一视图为右目视图时,第二视图为左目视图。可以理解的是,双目的排列方式也可以为其他方向的排列,例如竖排的双目,此时第一视图与第二视图与前述类似。
202、将该三维点云投影至该第一视图,与该第一视图的部分像素点进行匹配得到先验视差。
在本申请实施例中,先验视差为第一视图的部分像素点的视差值,该先验视差可以理解为根据三维点云得到的准确的视差值。由于三维点云和第一视图分别为双目摄像装置和点云传感器在同一环境下采集的特征点的集合,将三维点云投影至第一视图,可获取第一视图与三维点云中匹配的像素点。然后,根据第一视图的部分像素点对应的三维点云的三维信息,可计算第一视图的部分像素点的先验视差。
例如,请参照图3,图3为本申请实施例提供的一种第一视图的示意图。如图3所示,该第一视图中包括多个像素点。其中,实心点表示为第一视图中与三维点云匹配的部分像素点,空心点表示为第一视图中与三维点云不匹配的像素点。结合图1进行举例说明,P点为三维点云中的一个三维点。在第一视图为左目视图110时,将三维点云投影至第一视图,则第一视图中与三维点云中匹配的像素点为Pleft,可根据P点对应的三维信息计算左目视图110中Pleft的先验视差。
203、根据该先验视差得到该第一视图和该第二视图之间的视差图。
视差图是以图像中的任一图像为基准,其大小为该基准图像的大小,元素值为视差值的图像。在本申请实施例中,第一视图和第二视图之间的视差图以第一图像为基准图像,用于描述第二视图与第一视图之间的视差值。
可以理解,根据三维点云确定第一视图中的部分像素点准确的视差值,即先验视差。再根据先验视差就可得到第一视图和该第二视图之间准确的视差图。因此,通过实施图2所描述的方法,能够计算出第一视图和该第二视图之间准确的视差图,有利于提高确定距离的准确性。
请参阅图4,图4为本发明实施例公开的另一种图像处理方法的流程示意图。其中,步骤402~404为上述步骤202的具体实施方式。如图4所示,该图像处理方法可包括步骤401~405。上述步骤401~405可以由图像处理系统执行,也可以由可移动平台执行。可选的,具体可以由可移动平台的图像处理系统执行。其中:
401、通过双目摄像装置采集环境的第一视图和第二视图,并通过点云传感器采集该环境的三维点云。
其中,步骤401可参照步骤201的描述,在此不在赘述。
402、将该三维点云投影至该第一视图,与该第一视图的部分像素点进行匹配。
在本申请实施例中,步骤402的具体实施方式包括:根据该双目摄像装置与该点云传感器之间的位置关系,将该三维点云投影至该第一视图,与该第一视图的部分像素点进行匹配。
可以理解,根据双目摄像装置与点云传感器之间的位置关系,将三维点云投影至第一视图,可提高三维点云与第一视图的匹配程度,从而有利于提高确定先验视差的准确性。
需要说明的是,上述步骤并不构成对本申请实施例的限定,实际应用中,还可以采用其他实施方式将三维点云投影至第一视图。例如,根据该双目摄像装置与该点云传感器之间的位置关系和该双目摄像装置的外参,将该三维点云投影至该第一视图,与该第一视图的部分像素点进行匹配。其中,双目摄像装置的外参包括双目摄像装置中左目摄像装置和右目摄像装置之间的位置关系,例如平移向量和旋转矩阵等,在此不做限定。可见,根据双目摄像装置与点云传感器之间的位置关系和该双目摄像装置的外参,将三维点云投影至第一视图,可进一步提高三维点云与第一视图的匹配程度。
403、根据该部分像素点对应的三维点云的三维信息确定该部分像素点对应的先验深度,该先验深度为部分像素点的深度参考信息。
在本申请实施例中,部分像素点的深度参考信息可以理解为部分像素点的准确的深度信息,可以是三维点云的三维信息中的一维信息。例如,深度参考信息可以是三维点云的三维信息中Z轴的值。
例如,如图1所示,P点为三维点云中的一个三维点,在第一视图为左目视图110时,将三维点云投影至第一视图,则第一视图中与三维点云中匹配的像素点为Pleft。Pleft对应的先验深度为点云传感器检测到的P点的Z轴的值。
404、根据该部分像素点对应的先验深度确定先验视差。
可选的,根据该部分像素点对应的先验深度确定先验视差的具体实施方式为:根据双目摄像装置的内参和部分像素点的深度信息确定先验视差。
其中,双目摄像装置的内参可包括焦距、投影中心、倾斜系数和畸变系数等,在此不做限定。一般情况下,相机的内参是不随时间变化的。
可以理解,根据双目摄像装置的内参和部分像素点的深度信息确定先验视差,可提高确定先验视差的准确性。
405、根据该先验视差得到该第一视图和该第二视图之间的视差图。
通过实施图4所描述的方法,通过双目摄像装置采集环境的第一视图和第二视图,并通过点云传感器采集该环境的三维点云。然后将该三维点云投影至该第一视图,与该第一视图的部分像素点进行匹配,根据该部分像素点对应的三维点的三维信息确定该部分像素点对应的先验深度,即该先验深度为根据三维点云确定第一视图中的部分像素点准确的深度信息。最后根据该部分像素点对应的先验深度确定先验视差,根据该先验视差得到该第一视图和该第二视图之间的视差图,能够计算出第一视图和该第二视图之间准确的视差图,有利于提高确定距离的准确性。
请参阅图5,图5为本发明实施例公开的又一种图像处理方法的流程示意图。其中,步骤503和步骤504为上述步骤203的具体实施方式。如图5所示,该图像处理方法可包括步骤501~504。上述步骤501~504可以由图像处理系统执行,也可以由可移动平台执行。可选的,具体可以由可移动平台的图像处理系统执行。其中:
501、通过双目摄像装置采集环境的第一视图和第二视图,并通过点云传感器采集该环境的三维点云。
502、将该三维点云投影至该第一视图,与该第一视图的部分像素点进行匹配,得到先验视差。
其中,步骤501和步骤502可分别参照步骤201和步骤202的描述,在此不在赘述。
503、根据该第一视图和该第二视图获取目标相似度。
在本申请实施例中,目标相似度为第一视图和第二视图之间的相似度。步骤503可包括以下步骤A1和步骤A2,其中:
A1、对该第一视图进行特征提取,得到第一特征图,并且对该第二视图进行特征提取,得到第二特征图。
其中,特征提取用于识别视图中的特征点,并提取该特征点对应的特征值,以使根据该特征点和其对应的特征值得到的特征图可与其它的视图进行区别。以车辆进行举例说明,特征点包括车辆中可明显与其它物体进行区分的部位。例如,车辆边界的角、车灯、后视镜等。通过特征提取可得到该车辆中的特征图,以识别该特征图为车辆的图像。
可选的,步骤A1的具体实施方式包括:按照census变换算法对第一视图进行特征提取,得到第一特征图,并且按照census变换算法对第二视图进行特征提取,得到第二特征图。
其中,census变换算法属于非参数图像变换的一种,它能够较好地检测出图像中的局部结构特征,如边缘、角点特征等。其实质是将图像像素的灰度值编码成二进制码流,以此来获取邻域像素灰度值相对于中心像素灰度值的大小关系。具体的,将中心像素作为参考像素,在图像区域定义一个矩形窗口。将矩形窗口中每个像素的灰度值与参考像素的灰度值进行比较,灰度值小于或等于参考值的像素标记为0,大于参考值的像素标记为1,最后再将它们按位连接得到变换后的结果,变换后的结果是由0和1组成的二进制码流。
可以理解,分别按照census变换算法对第一视图和第二视图进行特征提取,保留了窗口中像素的位置特征,能够减少光照差异引起的误匹配,提高了局部特征的提取效率和准确率,从而提高第一特征图和第二特征图的准确性。
A2、确定该第一特征图和该第二特征图之间的目标相似度。
可选的,步骤A2的具体实施方式包括:计算第一特征图和第二特征图之间的汉明距离,确定汉明距离为第一特征图和第二特征图之间的目标相似度。
其中,汉明距离表示两个(相同长度)字对应位不同的数量。对两个字符串进行异或运算,并统计结果为1的个数,那么这个数就是汉明距离。需要说明的是,汉明距离越小即相似度越高。
可以理解,基于第一视图和第二视图之间的汉明距离得到第一视图和第二视图,可提高确定目标相似度的准确性。
通过实施步骤A1和步骤A2,提供了具体的实施算法,可提高确定目标相似度的稳定性和准确性。
可选的,步骤503的具体实施方式包括:按照census变换算法对第一视图进行特征提取,得到第一特征图,并且按照census变换算法对第二视图进行特征提取,得到第二特征图;计算第一特征图和第二特征图之间的汉明距离,确定汉明距离为第一特征图和第二特征图之间的目标相似度。
可以理解,经过census变换后的图像使用汉明距离计算相似度,就是在视差图中找出与参考像素点相似度最高的点,而汉明距离正是视差图像素与参考像素相似度的度量。如此,可进一步提高确定目标相似度的准确性。
504、根据该先验视差和该目标相似度得到该第一视图和该第二视图之间的视差图。
可选的,步骤504的具体实施方式包括步骤B1和步骤B2,其中:
B1、根据该先验视差和该目标相似度构造优化求解模型。
其中,优化求解模型是以先验视差和目标相似度为已知参数,求解第一视图和第二视图之间的视差图的模型。可选的,该优化求解模型可以为条件概率分布模型,该条件概率分布模型的数学表达公式为:P(Y|X)。其中,X是已知变量,即本申请实施例中的先验视差和目标相似度,Y都是随机变量。该条件概率分布模型可以理解为在不确定环境下的因果推导模型,即求解Y的概率最大值,也就是最优的视差图。
可选的,该条件概率分布模型可以为条件随机场(conditional random field,CRF)。该条件随机场是一种鉴别式机率模型,是条件概率分布模型的一种,表示的是给定一组输入随机变量X的条件下另一组输出随机变量Y的马尔可夫随机场。在本申请实施例中,以条件随机场计算第一视图和第二视图之间的视差图,可提高获取视图差的准确性。
B2、根据该优化求解模型,得到该第一视图和该第二视图之间的视差图。
通过实施步骤B1和步骤B2,可根据先验视差和目标相似度得到的优化求解模型,计算第一视图和第二视图之间的视图差,提高了获取视图差的准确性。
通过实施图5所描述的方法,通过双目摄像装置采集环境的第一视图和第二视图,并通过点云传感器采集该环境的三维点云。然后将该三维点云投影至该第一视图,与该第一视图的部分像素点进行匹配得到先验视差,即该先验视差为根据三维点云确定第一视图中的部分像素点准确的视差值。最后根据该第一视图和该第二视图获取目标相似度,根据该先验视差和该目标相似度得到该第一视图和该第二视图之间的视差图,从而进一步提高了确定视差图的准确性,有利于提高确定距离的准确性。
请参见图6,图6为本申请实施例中提供的一种图像处理系统的结构示意图,该图像处理系统包括存储器601、处理器602、双目摄像装置603和点云传感器604。可选的,存储器601、处理器602、双目摄像装置603和点云传感器604可通过通信系统605相连。
存储器601,用于存储程序指令。存储器601可以包括易失性存储器(volatilememory),例如随机存取存储器(random-access memory,RAM);存储器601也可以包括非易失性存储器(non-volatile memory),例如快闪存储器(flash memory),固态硬盘(solid-state drive,SSD)等;存储器601还可以包括上述种类的存储器的组合。
处理器602可以包括中央处理器(central processing unit,CPU)。处理器602还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specificintegrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)等。上述PLD可以是现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)等。
在本申请实施例中,所述双目摄像装置603,用于采集环境的第一视图和第二视图;
所述点云传感器604,用于采集所述环境的三维点云;
所述处理器602调用所述存储器601中的程序指令用于执行以下步骤:
将所述三维点云投影至所述第一视图,与所述第一视图的部分像素点进行匹配,得到先验视差;
根据所述先验视差,得到所述第一视图和所述第二视图之间的视差图。
可选的,处理器602将所述三维点云投影至所述第一视图,与所述第一视图的部分像素点进行匹配,得到先验视差的方式具体为:
将所述三维点云投影至所述第一视图,与所述第一视图的部分像素点进行匹配;
根据所述部分像素点对应的三维点云的三维信息确定所述部分像素点对应的先验深度,所述先验深度为所述部分像素点的深度参考信息;
根据所述部分像素点对应的先验深度确定先验视差。
可选的,处理器602将所述三维点云投影至所述第一视图,与所述第一视图的部分像素点进行匹配的方式具体为:
根据所述双目摄像装置与所述点云传感器之间的位置关系,将所述三维点云投影至所述第一视图,与所述第一视图的部分像素点进行匹配。
可选的,处理器602根据所述部分像素点的深度信息确定先验视差的方式具体为:
根据所述双目摄像装置的内参和所述部分像素点的深度信息确定先验视差。
可选的,处理器602根据所述先验视差,得到所述第一视图和所述第二视图之间的视差图的方式具体为:
根据所述第一视图和所述第二视图获取目标相似度;
根据所述先验视差和所述目标相似度,得到所述第一视图和所述第二视图之间的视差图。
可选的,处理器602根据所述第一视图和所述第二视图获取目标相似度的方式具体为:
对所述第一视图进行特征提取,得到第一特征图,并且对所述第二视图进行特征提取,得到第二特征图;
确定所述第一特征图和所述第二特征图之间的目标相似度。
可选的,处理器602对所述第一视图进行特征提取,得到第一特征图,并且对所述第二视图进行特征提取,得到第二特征图的方式具体为:
按照census变换算法对所述第一视图进行特征提取,得到第一特征图,并且按照census变换算法对所述第二视图进行特征提取,得到第二特征图。
可选的,处理器502确定所述第一特征图和所述第二特征图之间的目标相似度的方式具体为:
计算所述第一特征图和所述第二特征图之间的汉明距离;
确定所述汉明距离为所述第一特征图和所述第二特征图之间的目标相似度。
可选的,处理器602根据所述先验视差和所述目标相似度,得到所述第一视图和所述第二视图之间的视差图的方式具体为:
根据所述先验视差和所述目标相似度构造优化求解模型;
根据所述优化求解模型,得到所述第一视图和所述第二视图之间的视差图。
可选的,所述优化求解模型为条件概率分布模型。
可选的,所述条件概率分布模型为条件随机场。
基于同一发明构思,本申请实施例中提供的图像处理系统解决问题的原理与本申请方法实施例相似,因此图像处理系统的实施可以参见方法的实施,图像处理系统的有益效果可以参见方法的有益效果,为简洁描述,在这里不再赘述。
请参见图7,图7为本申请实施例中提供的一种可移动平台的结构示意图。可移动平台可以为车辆、无人机、地面机器人、智能小车等。该可移动平台包括存储器701、处理器702、双目摄像装置703和点云传感器704。可选的,存储器701、处理器702、双目摄像装置703和点云传感器704可通过通信系统605相连。
其中,存储器701和处理器702可参照图6中的描述,在此不在赘述。
在本申请实施例中,所述双目摄像装置703,用于采集环境的第一视图和第二视图;
所述点云传感器704,用于采集所述环境的三维点云;
所述处理器702调用所述存储器701中的程序指令用于执行以下步骤:
将所述三维点云投影至所述第一视图,与所述第一视图的部分像素点进行匹配,得到先验视差;
根据所述先验视差,得到所述第一视图和所述第二视图之间的视差图。
可选的,处理器702将所述三维点云投影至所述第一视图,与所述第一视图的部分像素点进行匹配,得到先验视差的方式具体为:
将所述三维点云投影至所述第一视图,与所述第一视图的部分像素点进行匹配;
根据所述部分像素点对应的三维点云的三维信息确定所述部分像素点对应的先验深度,所述先验深度为所述部分像素点的深度参考信息;
根据所述部分像素点对应的先验深度确定先验视差。
可选的,处理器702将所述三维点云投影至所述第一视图,与所述第一视图的部分像素点进行匹配的方式具体为:
根据所述双目摄像装置与所述点云传感器之间的位置关系,将所述三维点云投影至所述第一视图,与所述第一视图的部分像素点进行匹配。
可选的,处理器702根据所述部分像素点的深度信息确定先验视差的方式具体为:
根据所述双目摄像装置的内参和所述部分像素点的深度信息确定先验视差。
可选的,处理器702根据所述先验视差,得到所述第一视图和所述第二视图之间的视差图的方式具体为:
根据所述第一视图和所述第二视图获取目标相似度;
根据所述先验视差和所述目标相似度,得到所述第一视图和所述第二视图之间的视差图。
可选的,处理器702根据所述第一视图和所述第二视图获取目标相似度的方式具体为:
对所述第一视图进行特征提取,得到第一特征图,并且对所述第二视图进行特征提取,得到第二特征图;
确定所述第一特征图和所述第二特征图之间的目标相似度。
可选的,处理器702对所述第一视图进行特征提取,得到第一特征图,并且对所述第二视图进行特征提取,得到第二特征图的方式具体为:
按照census变换算法对所述第一视图进行特征提取,得到第一特征图,并且按照census变换算法对所述第二视图进行特征提取,得到第二特征图。
可选的,处理器702确定所述第一特征图和所述第二特征图之间的目标相似度的方式具体为:
计算所述第一特征图和所述第二特征图之间的汉明距离;
确定所述汉明距离为所述第一特征图和所述第二特征图之间的目标相似度。
可选的,处理器702根据所述先验视差和所述目标相似度,得到所述第一视图和所述第二视图之间的视差图的方式具体为:
根据所述先验视差和所述目标相似度构造优化求解模型;
根据所述优化求解模型,得到所述第一视图和所述第二视图之间的视差图。
可选的,所述优化求解模型为条件概率分布模型。
可选的,所述条件概率分布模型为条件随机场。
基于同一发明构思,本申请实施例中提供的可移动平台解决问题的原理与本申请方法实施例相似,因此可移动平台的实施可以参见方法的实施,可移动平台的有益效果可以参见方法的有益效果,为简洁描述,在这里不再赘述。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。
在本申请实施例中还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时,实现本申请实施例图2、图4和图5所对应实施例中描述的图像处理方法,在此不再赘述。
所述计算机可读存储介质可以是前述任一实施例所述的图像处理系统或可移动平台的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是图像处理系统或可移动平台的外部存储设备,例如可移动平台上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括所述控图像处理系统或可移动平台的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述图像处理系统或所述可移动平台所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。