本发明涉及一种无人车相机系统。
背景技术:
无人车为了实现其无人驾驶的目的,环境感知能力是关键。相机是环境感知一种重要手段。传统固定相机在无人车跟踪过程中视野受限,并且通常采用一个单目相机难以获得环境的深度信息。传统相机系统中无人车在跟踪过程中,当目标的遮挡和相机运动会给跟踪过程带来很大问题。
技术实现要素:
本发明要解决的技术问题:提供一种无人车相机系统,该系统具有短基线相机阵列和宽基线相机阵列的组合将产生多个视差和深度图,可以获得无人车周围环境精确的深度信息。短基线相机阵列的加入实现用于跟踪被遮挡物体的合成孔径成像,即实现了去遮挡,同时将有助于捕获高分辨率图像,并且具有多重曝光模式有助于获得高动态融合图像。
本发明的技术方案:一种无人车相机系统,其特征在于,包括:两个单目相机(01)、相机阵列(02)、无人车(03)、3个云台(04)和数据处理系统(05),所述云台(04)安装在无人车(03)上两侧和中间三个位置,用于调节对应相机的拍摄方向;两个单目相机(01)分别安装在无人车(03)两侧的云台(04)上,用于获取无人车周围环境的图像信息;相机阵列(02)安装在无人车(03)中间的云台(04)上,用于获取无人车周围环境以及跟踪目标的图像信息;数据处理系统(05)安装在无人车内部,其与单目相机(01)和相机阵列(02)以及云台(04)连接,用于控制云台,以及获取相机所捕获图像信息数据以及处理图像信息;
所述的相机云台(04)是一种三轴动态自稳云台。该云台不仅可以根据数据处理系统(05)传来的数据进行控制,还可以根据无人车运动情况进行实时补偿,有很好稳定性;
所述相机阵列(02)是由m行n列共mxn个相机组成的窄基线相机阵列,m或n=3-5。该阵列有助于捕获高分辨率图像,并且还可以通过数据处理系统(05)设置相机阵列(02)中相机按时间顺序交替曝光,实现多重曝光模式的相机阵列获得高动态融合图像;
所述实现跟踪被遮挡物体的合成孔径成像,其特征在于,相机阵列结合了一种去遮挡高分辨率成像算法(1)具体如下:
对于目标前只有一个遮挡物。每个相机捕获的每个图像可以被认为是背景层b和遮挡层o的叠加,表示如下:
yi=ki·oi+(1-ki)·bi(1)
其中i∈{1,2,...,m×n}表示相机阵列(02)中相机的标号;k是掩模,出现遮挡物像素时k等于1,否则为0;这里‘·’表示逐元素乘法,1表示全一矢量。虽然上述模型只有一个遮挡层,但可以扩展到多个遮挡层。
用xb表示想要得到的高分辨率背景矢量。xb与捕获的低分辨率背景矢量bi具有以下关系:
bi=mixb(2)
其中
mi=drwb,i(3)
在式中,wb,i表示对于相机阵列(02)中i相机的背景变形矩阵;d和r分别表示抽取和模糊算子。通过将(2)代入(1)式中,并且由于ki·yi=ki·oi,可以得到:
(1-ki)·yi+ki·mixb=bi(4)
通过将相机阵列(02)中相机i∈{1,2,...,m×n}对应ki,yi,mi和bi整合成k,y,m和b,可以把上式写成:
(1-k)·y+k·mxb=b(5)
k,xb,b可以用以下算法(1)计算:
初始化k0和
第一步:
第二步:
第三步:
重复步骤1,2,3直到k,xb,b的值收敛。
在算法(1)中,kt,xb和bt是迭代t时k,xb,b的估计。
所述
这种方法可以模糊场景中的遮挡,并保持背景识别,是合成孔径方法的超分辨率版本。这是因为m中定义的不匹配的单应性保护了背景,而其他方法可能会破坏背景。然而lr反卷积的直接应用会引入高频噪声,因此在迭代的过程中加入huberprevious先验,huber函数定义如下:
其中α是自由参数。我们将它用作迭代过程的先验函数,如下所示:
其中z是归一化常数,v是先验强度,通常根据经验选择,dc测量图像在参数集合c在定义方向和位置上图像的梯度,如下所示:
dm,n,1x=xm,n-1-2xm,n+xm,n+1(9)
dm,n,2x=0.5xm+1,n-1-xm,n+0.5xm-1,n+1(10)
dm,n,3x=xm-1,n-2xm,n+xm+1,n(11)
dm,n,4x=0.5xm-1,n-1-xm,n+0.5xm+1,n+1(12)
huber先验可以和lr反卷积组合成如下表达式:
这样算法(1)可以写成如下形式:
初始化k0和
第一步:
第二步:
重复步骤1,2,直到k,xb,b的值收敛;
所述
首先使用sift来检测场景中的特征点;然后使用ransac算法根据特征点估计单应性。我们将其表示为hb,.假设背景特征点多于遮挡特征点。估计的hb应该适合背景但不适合遮挡。然后排除那些适合hb的点,并再次进行ransac以找到单应性ho。其余的,适合ho的特征点属于遮挡。因此可以分离背景和遮挡的特征点。
这里将遮挡的特征点视为寻找掩模的“种子”。对于每个种子,我们最初设置一个以它为中心的小窗口。然后每个窗口的四个边界将迭代地增长并停止,直到它到达遮挡边界。然后将所有窗口合并在一起以形成遮罩。更具体地,窗口基于概率函数生长如下:
其中lq,i指的是由阵列相机中相机i拍摄图像中窗口的第q个边界的像素;
其中sq表示窗口第y个边界的增长步长,而smax是我们允许的最大增长。因此,在每次迭代中,窗口的第y个边框将在其法线方向上向外移动sq像素。两个相邻边框的长度也将相应调整。当所有窗口停止生长时,它们被组合在一起形成掩模。对于具有矩形形状的物体,掩模可以非常好地适合遮挡。对于具有不规则形状的物体,这种方法仍然可以获得遮挡物体的掩模。
与现有技术相比,本发明的优点在于:
1、本发明具有短基线相机阵列和宽基线相机阵列的组合将产生多个视差和深度图,可以获得无人车周围环境精确的深度信息。
2、本发明中相机阵列加入实现用于跟踪被遮挡物体的合成孔径成像,即实现了去遮挡。
3、本发明中相机阵列加入有助于捕获高分辨率图像,并且具有多重曝光模式有助于获得高动态融合图像。
4、本发明采用三轴动态自稳云台。该云台不仅可以根据数据处理系统(05)传来的数据进行控制,还可以根据无人车运动情况进行实时补偿,有很好稳定性;
附图说明:
图1是本发明的结构示意图;
图中:01、单目相机,02、相机阵列,03、无人车,04、云台,05数据处理系统。
具体实施方式:
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
参考图1,一种无人车相机系统,其特征在于,包括:两个单目相机(01)、相机阵列(02)、无人车(03)、3个云台(04)和数据处理系统(05),所述云台(04)安装在无人车(03)上两侧和中间三个位置,用于调节对应相机的拍摄方向;两个单目相机(01)分别安装在无人车(03)两侧的云台(04)上,用于获取无人车周围环境的图像信息;相机阵列(02)安装在无人车(03)中间的云台(04)上,用于获取无人车周围环境以及跟踪目标的图像信息;数据处理系统(05)安装在无人车内部,其与单目相机(01)和相机阵列(02)以及云台(04)连接,用于控制云台,以及获取相机所捕获图像信息数据以及处理图像信息;
所述的相机云台(04)是一种三轴动态自稳云台。该云台不仅可以根据数据处理系统(05)传来的数据进行控制,还可以根据无人车运动情况进行实时补偿,有很好稳定性;
所述相机阵列(02)是由m行n列共mxn个相机组成的窄基线相机阵列,m或n=3-5。该阵列有助于捕获高分辨率图像,并且还可以通过数据处理系统(05)设置相机阵列(02)中相机按时间顺序交替曝光,实现多重曝光模式的相机阵列获得高动态融合图像;
所述实现跟踪被遮挡物体的合成孔径成像,其特征在于,相机阵列结合了一种去遮挡高分辨率成像算法(1)具体如下:
对于目标前只有一个遮挡物。每个相机捕获的每个图像可以被认为是背景层b和遮挡层o的叠加,表示如下:
yi=ki·oi+(1-ki)·bi(1)
其中i∈{1,2,...,m×n}表示相机阵列(02)中相机的标号;k是掩模,出现遮挡物像素时k等于1,否则为0;这里‘·’表示逐元素乘法,1表示全一矢量。虽然上述模型只有一个遮挡层,但可以扩展到多个遮挡层。
用xb表示想要得到的高分辨率背景矢量。xb与捕获的低分辨率背景矢量bi具有以下关系:
bi=mixb(2)
其中
mi=drwb,i(3)
在式中,wb,i表示对于相机阵列(02)中i相机的背景变形矩阵;d和r分别表示抽取和模糊算子。通过将(2)代入(1)式中,并且由于ki·yi=ki·oi,可以得到:
(1-ki)·yi+ki·mixb=bi(4)
通过将相机阵列(02)中相机i∈{1,2,...,m×n}对应ki,yi,mi和bi整合成k,y,m和b,可以把上式写成:
(1-k)·y+k·mxb=b(5)
k,xb,b可以用以下算法(1)计算:
初始化k0和
第一步:
第二步:
第三步:
重复步骤1,2,3直到k,xb,b的值收敛。
在算法(1)中,kt,xb和bt是迭代t时k,xb,b的估计。
所述
这种方法可以模糊场景中的遮挡,并保持背景识别,是合成孔径方法的超分辨率版本。这是因为m中定义的不匹配的单应性保护了背景,而其他方法可能会破坏背景。然而lr反卷积的直接应用会引入高频噪声,因此在迭代的过程中加入huberprevious先验,huber函数定义如下:
其中α是自由参数。我们将它用作迭代过程的先验函数,如下所示:
其中z是归一化常数,v是先验强度,通常根据经验选择,dc测量图像在参数集合c在定义方向和位置上图像的梯度,如下所示:
dm,n,1x=xm,n-1-2xm,n+xm,n+1(9)
dm,n,2x=0.5xm+1,n-1-xm,n+0.5xm-1,n+1(10)
dm,n,3x=xm-1,n-2xm,n+xm+1,n(11)
dm,n,4x=0.5xm-1,n-1-xm,n+0.5xm+1,n+1(12)
huber先验可以和lr反卷积组合成如下表达式:
这样算法(1)可以写成如下形式:
初始化k0和
第一步:
第二步:
重复步骤1,2,直到k,xb,b的值收敛;
所述
首先使用sift来检测场景中的特征点;然后使用ransac算法根据特征点估计单应性。我们将其表示为hb,.假设背景特征点多于遮挡特征点。估计的hb应该适合背景但不适合遮挡。然后排除那些适合hb的点,并再次进行ransac以找到单应性ho。其余的,适合ho的特征点属于遮挡。因此可以分离背景和遮挡的特征点。
这里将遮挡的特征点视为寻找掩模的“种子”。对于每个种子,我们最初设置一个以它为中心的小窗口。然后每个窗口的四个边界将迭代地增长并停止,直到它到达遮挡边界。然后将所有窗口合并在一起以形成遮罩。更具体地,窗口基于概率函数生长如下:
其中lq,i指的是由阵列相机中相机i拍摄图像中窗口的第q个边界的像素;
其中sq表示窗口第y个边界的增长步长,而smax是我们允许的最大增长。因此,在每次迭代中,窗口的第y个边框将在其法线方向上向外移动sq像素。两个相邻边框的长度也将相应调整。当所有窗口停止生长时,它们被组合在一起形成掩模。对于具有矩形形状的物体,掩模可以非常好地适合遮挡。对于具有不规则形状的物体,这种方法仍然可以获得遮挡物体的掩模。