CN110677599B - 一种重建360度全景视频图像的系统和方法 - Google Patents

一种重建360度全景视频图像的系统和方法 Download PDF

Info

Publication number
CN110677599B
CN110677599B CN201910940825.4A CN201910940825A CN110677599B CN 110677599 B CN110677599 B CN 110677599B CN 201910940825 A CN201910940825 A CN 201910940825A CN 110677599 B CN110677599 B CN 110677599B
Authority
CN
China
Prior art keywords
coordinate system
pixel
video image
camera
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
Application number
CN201910940825.4A
Other languages
English (en)
Other versions
CN110677599A (zh
Inventor
石美红
薛海伟
刘宝宝
段俊瑞
温宗周
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Polytechnic University
Original Assignee
Xian Polytechnic University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xian Polytechnic University filed Critical Xian Polytechnic University
Priority to CN201910940825.4A priority Critical patent/CN110677599B/zh
Publication of CN110677599A publication Critical patent/CN110677599A/zh
Application granted granted Critical
Publication of CN110677599B publication Critical patent/CN110677599B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2624Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects for obtaining an image which is composed of whole input images, e.g. splitscreen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/122Improving the 3D impression of stereoscopic images by modifying image signal contents, e.g. by filtering or adding monoscopic depth cues

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

本发明公开了一种重建360度全景视频图像的系统和方法,首先,基于标定板的黑白相间的棋盘格内角点检测,采用张正友标定法,求解得到4个鱼眼相机的各自内、外参数与畸变系数;接着,基于方形标记块图的外角点检测,求解得到在世界坐标系下4个鱼眼相机的外参数;最后,根据鱼眼相机的内、外参数和畸变系数,利用布局的4个鱼眼摄像头间相对位置关系固定不变的特点,基于NXP S32V234FS的4核处理器,采用时空重叠并行流水线处理机制,对各鱼眼摄像头拍摄的视频图像进行拼接融合处理,构建在世界坐标空间下的360度全景视频图像;本发明的方法具有高性价比、高可靠性、高便捷性等特点。

Description

一种重建360度全景视频图像的系统和方法
技术领域
本发明属于数字视频图像重建全景技术领域,具体涉及一种重建360度全景视频图像的方法。
背景技术
全景视频在安全监控、战场侦察、环境监测、机器人视觉以及新兴的虚拟现实等应用领域发挥着重要作用。然而,由于现代技术发展对于海量数字信息采集、处理和传输中的种种限制,安防中的视频监控死角难题至今无法彻底解决;另一方面,对采集的图像进行拼接,耗时较长,因此无法真正实现实时监控。
发明内容
本发明的目的是提供一种重建360度全景视频图像的方法,解决了现有技术中存在的安全监控所提供的场景图像视场角度不全面的问题。
本发明利用高性能视频处理器NXPU S32V234将来自安装于目标全景的4个摄像头拍摄的视频图像流,采用图像拼接融合方法和流水线技术,形成3维360度全景视频图像,以满足实际工程应用高效的实时性;另一目的是利用上述方法及装置,扩大目标操控人员的观察视野,提升操控人员的安全感或沉浸感。
本发明的有益效果是:
1.本发明可同时捕获多路视频图像信号,为支持程序执行和数据传输的并行处理以及快速数据传输速率的实现提供了保障,具有高性价比、高可靠性、高一致性、高便捷性的特点;
2.本发明检测精度误差仅为±1个像素,并且不受光照、噪声等外界干扰影响,适应性强;
3.本发明在保证输出分辨率的前提下,可以[25,50]fps范围的帧率实时、有效地展示周围全景。
附图说明
图1是本发明方法鱼眼摄像机成像坐标系及其关系示意图;
图2是本发明方法一个在汽车上安装4个鱼眼摄像头的位置布局示意图;
图3是本发明方法每个鱼眼摄像头所拍摄的视场范围示意图;
图4是本发明方法一个50cm×50cm、内设12×13的黑白相间棋盘格的标定板示意图;
图5是本发明方法黑白相间棋盘格标定板检测面和坐标系约定的示意图;
图6是本发明方法用于检测棋盘标定板内角点的24模板示意图;
图7是本发明方法在安装鱼眼摄像头周围布设标记块示意图;
图8是本发明方法标记块的4个外角点世界坐标标识的示意图;
图9是本发明用于重建360度全景视频图像的硬件系统结构示意图;
图10是本发明方法监视的目标全景物理平面的世界坐标系(XW,YW,0) 与目标全景视频图像坐标系(u,v)间位置关系示意图;
图11是本发明方法全景视频图像重建的4幅图像拼接融合区域示意图;
图12是本发明方法相邻2幅图像拼接边界的重叠区域宽度D示意图;
图13是本发明方法360度全景视频图像在线重建的流程图;
图14是本发明方法基于4核处理器的在线重建360度全景视频图像的软件并行流水的时空分布示意图;
附图15是本发明方法基于汽车上安装的4个鱼眼摄像头在线重建的360 度全景视频图像的动态效果示意图。
图中,1.视频图像处理器,2.视频图像输入通道模块,3.视频图像输出驱动模块,4.存储模块,5.控制调试传输通道模块,6.电源模块,7.视频摄像头模块,8.液晶显示器模块。
具体实施方式
下面结合附图和具体实施方法对本发明进行详细说明。
为了便于描述具体实施步骤,先对整个重建视频图像系统涉及到的4个坐标系及它们间映射关系,如图1所示进行如下说明:
(1)数字图像坐标系(u,v):它是以像素点作为单位,用来描述数字图像在(u,v)二维平面下的分布,其原点在图像的左上角,横纵坐标(u,v)分别表示像素点在图像矩阵中所在的列数和行数;
(2)成像坐标系(x,y):它是用像素的物理单位(即数字图像中每个像素在空间中所占的物理尺寸大小)描述在(x,y)二维成像平面下像素的位置,其横纵坐标(x,y)分别表示像素在成像矩阵中所在列和行的位置。成像坐标系以鱼眼摄像头光轴与成像平面之间的交点O作为坐标原点,它的x,y轴分别与数字图像坐标系(u,v)中的u,v轴平行且同向。如果成像坐标系的原点O 在数字图像坐标系(u,v)中的坐标为(u0,v0),x轴和y轴的方向上的像素间距分别为dx和dy,那么,在成像坐标系(x,y)中的点坐标(xi,yi)转换至数字图像坐标系(u,v)中的点坐标(ui,vi)的映射模型为:
Figure BDA0002222852160000031
(3)摄像机坐标系(XC,YC,ZC):为了将二维成像坐标系(x,y)中的点坐标与实际三维空间中的点坐标对应起来,建立三维空间的摄像机坐标系 (XC,YC,ZC),其中,以摄像头的光心为坐标原点OC;ZC轴为摄像头光轴,与二维成像平面垂直;XC和YC轴方向分别平行于二维成像坐标系(x,y)的x 轴和y轴。在摄像机坐标系(XC,YC,ZC)中的点坐标(XCi,YCi,ZCi)转换至成像坐标系(x,y)中的点坐标(xi,yi)的映射模型为:
Figure BDA0002222852160000032
其中,f是摄像机的焦距,即摄像机坐标系原点OC与成像坐标系原点O间的间距。
(4)世界坐标系(XW,YW,ZW):它是用来描述物体在真实世界三维空间中的位置,以作为描述目标物体位置或鱼眼摄像头位置的基准坐标。在鱼眼摄像机坐标系(XC,YC,ZC)中的点(XCi,YCi,ZCi)转换至世界坐标系中 (XW,YW,ZW)的点(XWi,YWi,ZWi)的映射模型为:
Figure BDA0002222852160000041
其中,
Figure BDA0002222852160000042
为3×3旋转向量,r1,r2,r3分别在真实世界三维方向上的旋转向量;
Figure BDA0002222852160000043
为平移向量。
根据坐标系间的映射关系式(1)~(3),可得综合式:
Figure BDA0002222852160000044
式中,
Figure BDA0002222852160000051
一种重建360度全景视频图像的系统,在监视的现场或机载设备上安装用于重建360度全景视频图像的硬件平台,其系统结构示意图见附图9,包括视频图像处理器1;视频图像处理器1连接有视频图像输入通道模块2,视频图像输入通道模块2对视频图像处理器1单向传输,视频图像输入通道模块2还连接有视频摄像头模块7,视频摄像头模块7对视频图像输入通道模块2单向传输;视频图像处理器1单向连接有视频图像输出驱动模块3,视频图像输出驱动模块3单向连接有液晶显示器模块8;视频图像处理器1 双向连接有存储模块4和控制调试传输通道模块5。电源模块6连接有视频图像处理器1、视频图像输入通道模块2、视频图像输出驱动模块3、存储模块4、视频摄像头模块7以及液晶显示器模块8。视频图像处理器1具体采用可支持CPU(4个ARM Cortex-A53和ARM Cortex-M4核)、GPU(GC3000) 和图像识别处理(2个CogniVueAPEX2processors)的异构计算的S32V234FS 芯片;视频图像输入通道模块2具体采用4通道的多功能串行解码集线器 DS90UB964,其串行输出接口连接视频图像处理器1的MIPI CSI2接口,其串行输出接口通过同轴电缆连接器连接至视频摄像头模块7;视频图像输出驱动模块3具体采用HX8246-D02驱动器,其输入接口连接到视频图像处理器1的液晶显示触摸屏24比特接口;存储模块4具体包括采用 MT41J256M8HX-15E 2GB 32位双倍速率随机存取芯片作为动态存储器、 MT29F1G08ABAEAH4-AATX 1GB嵌入式多媒体卡闪存芯片作为程序存储器和M25P16-VMN3TP/4 16MB串行外设接口芯片作为引导程序存储器,分别连接到视频图像处理器1的双倍速率存储器扩展接口、视频图像处理器1 的闪存扩展接口和视频图像处理器1的串行扩展接口,经TPS2051SD卡控制开关连接一个16GB10067847-001RLF SD卡卡槽;控制调试传输通道模块5包括TE-640456-4型号JTAG连接器、MAX3218通用异步收发传输收发器和TE-5747840-4型号通用异步收发传输连接器、AVC4T245控制器局域网络收发器和TE-640456-4型号连接器以及KSZ9031RN以太网收发器和 TE-2301994-4型号RJ45连接器,分别连接至视频图像处理器1的JTAG接口、视频图像处理器1的通用异步收发传输器接口、视频图像处理器1的控制器局域网络接口和视频图像处理器1的以太网接口;电源模块6分别给视频图像处理器1提供5V、视频图像输入通道模块2提供1.2V和2.5V、视频输出通道模块3提供1.2V和2.5V、存储器模块4提供1.8V、视频摄像头模块7提供12V、液晶显示器模块8提供3.3V和16V的电压;视频摄像头模块7中采用了内集成有DS90UB913A串行器的DC3K-1-LVD摄像头, DS90UB913A串行器连接有图像传感器,并采用POC供电;液晶显示器模块8采用了内集成有1个NHD-7.0-800480EF液晶显示触摸屏和1个TSC2007 触摸屏控制器,连接至视频图像输出驱动模块3的输出接口,用于传输24 位(红黄蓝各8位)的视频信号;
本发明的重建360度全景视频图像的方法具体实施可以分为三个阶段:线下标定单鱼眼摄像机的内、外参数和畸变系数;在统一世界坐标系下线下标定4个鱼眼摄像机的外参数;使用360度全景视频图像重建的系统和在线拼接融合。
第一阶段:线下标定单鱼眼摄像机的内、外参数和畸变系数
步骤1:按照附图2的示意图,在目标全景中,布设 DS-2CD3935FWD-IWS型4个鱼眼摄像头,其编号分别为1,2,3,4。根据本型号鱼眼摄像头的最佳视场性能特点,每个鱼眼摄像头的高度在[1,3]米范围,鱼眼摄像头彼此的间距[0.2,3]米、夹角为90度,以形成360度的视场范围(见附图3);
步骤2:选择尺寸大小为50cm×50cm、内含边长为3cm×3cm的黑白相间棋盘格板(见附图4)作为标定平面,即世界坐标系的ZW=0,以标定板左上角点为原点(见附图5)。为确保标定的更精确,棋盘格板放置在标定平面的法线与鱼眼摄像头主光轴夹角在0°~±60°之间(即每个鱼眼摄像头对应视场范围为120°范围)、与鱼眼摄像头间距在[100,500]cm之间。在此范围内,选择不同距离、不同角度,用鱼眼摄像头重复拍摄大小为2048×1536 数字图像共25幅,共4×25=100幅图像。每幅数字图像中包含的内角点数为11×12=132个,基于棋盘标定面的坐标系约定,按行优先,自左向右依次编排角点序号:1,2,3,……132;
步骤3:对步骤2中每个鱼眼摄像头所拍摄的棋盘格数字图像 Fj,j=1,2,3……25进行内角点检测,作为鱼眼摄像机标定的特征点,并将其坐标值保存至指定的数据结构中,其具体流程如下:
Step3.1.鱼眼摄像头标号i=1,j=1,
Figure BDA0002222852160000071
Step3.2.Asum=0,Icv=0;
Step3.3.计算和统计Fj图像像素的灰度分布,即计算每个灰度值I下,对应的像素个数SI,I=0,1,2,3……255;
Step3.4.I=0,Asum=Asum+SI,按式(3-1)重复计算:
I=I+1andAsum=Asum+SI若Asum<Sm and I<255 (3-1)
Step3.5.棋盘图灰度分布的黑白交界灰度值ICV=I,以ICV为界,从图像的灰度分布中获取分别位于[0,ICV]和(ICV,255]区间中像素个数统计值为最大时所对应的灰度值Ib和If,作为棋盘格图像的背景灰度值和前景灰度值,即:
Figure BDA0002222852160000072
Step3.6.按式(3-3)计算阈值T:
Figure BDA0002222852160000073
Step3.7.用7×7窗口的24模板(见附图6)逐一像素扫描数字图像,即分别沿45度方向的红色对角区域和135度方向的蓝色对角区域,统计计算各区域像素的灰度值Ik与中心像素Pc的灰度值Ic之差,并与阈值T比较,得到各对角区域的像素灰度值与中心像素灰度值相似的像素个数:
Figure BDA0002222852160000081
Step3.8.若环绕中心像素Pc的相似像素个数10<(S45°+S135°)<18,转向step3.10;
Step3.9.分别计算分布在红色对角区域和蓝色对角区域的像素灰度均值,即:
Figure BDA0002222852160000082
如果
Figure BDA0002222852160000083
则中心像素Pc为非角点,剔除,转至step3.11;
Step3.10.如果S45°=12or S135°=12,则中心像素Pc标注为角点,否则剔除;
Step3.11.若数字图像Fj中还存在没扫描的像素,则返回至step3.7;
Step3.12.基于数字图像的坐标系(u,v),根据对Fj所有标记的内角点位置,得到它们在数字坐标系(u,v)下的坐标值,并按行优先保存至名为point[i,j,k] 数据结构中,其中,i=1,2,3,4;j=1,2,3…25;k=1,2,3…132;
Step3.13.判断标号i的鱼眼摄像头拍摄的数字图像是否处理完毕,若没有,则j=j+1,返回至step3.2,否则,i=i+1,j=1;
Step3.14.如果i≤4,则返回至step3.2,否则,结束。
步骤4:基于张正友标定法,求解每个鱼眼摄像机的内、外参数和畸变系数,其具体流程如下:
Step4.1.基于棋盘板平面世界坐标系,即ZW=0,根据棋盘格格子的数量和物理大小,计算棋盘格内角点在世界坐标系下对应的坐标(XWk,YWk) (k=1,2,…132)如下:
基于棋盘标定板的坐标系约定(见附图5),如果棋盘格的内角点分布的矩阵形式为:
Figure BDA0002222852160000091
则,对于ap,q内角点的物理坐标(Xp,Yq)=(3×p,3×q),按行优先,自左向右,分别对应于世界坐标为(XW1,YW1),(XW2,YW2),(XW3,YW3)……(XW132,YW132);
Step4.2.求解在理想线性成像模型下每个鱼眼摄像机的内、外参数,其具体流程如下:
Step4.2.1根据已知的棋盘标定板在数字图像坐标系下各内角点坐标
Figure BDA0002222852160000092
和对应的世界空间坐标(XWk,YWk,ZWk),求解投影矩阵H:
因为第i鱼眼摄像头拍摄的第j幅数字图像中检测到的所有内角点的像素坐标映射至世界坐标系(XW,YW,0)中对应坐标的投影模型为:
Figure BDA0002222852160000093
其中,
Figure BDA0002222852160000094
为棋盘标定板所检测的内角点分别在数字图像坐标系(u,v)和世界坐标系(XW,YW,0)下的齐次坐标,上标i表示摄像头编号,i=1,2,3,4;下标j和k分别表示数字图像序号和内角点序号,j=1,2,…25,k=1,2,…132;
Figure BDA0002222852160000101
为3×3投影矩阵, hij为投影矩阵H的第i行第j列元素,h1,h2,h3为投影矩阵H的列向量;s为任意尺度的缩放比例因子,目的是使得数字图像定义到该尺度比例,由此得:
Figure BDA0002222852160000102
经变换,用矩阵形式可表示为:
令:H'=[h11 h12 h13 h21 h22 h23 h31 h32 h33]T,那么,上式的矩阵形式简写为:
SH'=0 (4-3)
其中,S矩阵大小为(2×132)×9
在如下约束条件下:
Figure BDA0002222852160000103
采用奇异值分解法,对式(4-3)求解,得到投影矩阵H;
Step4.2.2根据约束条件,求解每个鱼眼摄像机的内、外参数,其具体流程如下:
(1)求解向量b
根据坐标系间的映射关系,投影矩阵H可表示为:
H=[h1 h2 h3]=λA[r1 r2 t] (4-4)
式中,λ为尺度因子;
Figure BDA0002222852160000104
和[r1r2t]分别表达了鱼眼摄像机的内参数和外参数的信息,γ表示像素点在x和y方向上尺度的偏差。
因为r1和r2是单位正交向量,对于每幅图像都存在如下约束条件:
Figure BDA0002222852160000111
令:
Figure BDA0002222852160000112
因为B是一个对称矩阵,可用一个6维向量表示,即:
b=[B11 B12 B22 B13 B23 B33]T(4-7)
假设,H的第i列向量为hi=[hi1 hi2 hi3]T,i=1,2,3,式(4-5)可表示为关于 b的齐次方程:
Figure BDA0002222852160000113
式中,Vij=[hi1hj1 hi1hj2+hi2hj1 hi2hj2 hi3hj1+hi1hj3 hi3hj2+hi2hj3 hi3hj3]。那么,对于每个鱼眼摄像头拍摄的25幅图像,可将方程联立,求解向量b:
Vb=0 (4-9)
式中,
Figure BDA0002222852160000121
是一个(2×25)×6的矩阵。
(2)按照式(4-10)求解出鱼眼摄像机的内、外参数:
Figure BDA0002222852160000122
其中,γ、v0、u0、fx、fy为鱼眼摄像机内参数;R=[r1 r2 r3]和t通称为鱼眼摄像机外参数;
Step4.3.优化求解各鱼眼摄像机的内、外参数和畸变系数,其具体流程如下:
Step4.3.1求解鱼眼摄像机的畸变系数:
因为第i(i=1,2,3,4)鱼眼摄像头拍摄的第j(j=1,2,3…25)幅数字图像的坐标为:
Figure BDA0002222852160000123
用矩阵形式可表示为:
Figure BDA0002222852160000131
式中,
Figure BDA0002222852160000132
表示在畸变情况下第i鱼眼摄像头拍摄的第j幅数字图像的像素坐标;
Figure BDA0002222852160000133
表示在理想线性成像模型下第j幅数字图像的像素坐标; (u0,v0)表示成像坐标系的原点在数字图像坐标系(u,v)中的坐标;
Figure BDA0002222852160000134
表示在理想线性成像模型下第j幅数字图像在摄像机坐标系 (XC,YC,ZC)中的像素坐标;k1,k2表示畸变系数。
对于每个鱼眼摄像头拍摄有25张图像,每张图内有132个内角点,如果把2×132×25这些方程堆叠,可得:
Figure BDA0002222852160000135
可简写为:
Diki=di (4-12)
为了选取最合适的ki,应满足:
arg min||Diki-di||
对式(4-12)的微分求最值,可得:
(Di)TDiki=(Di)Tdi
因为矩阵(Di)TDi为非奇异矩阵,因此,最小二乘解为:
ki=((Di)TDi)-1(Di)Tdi (4-13)
Step4.3.2在非线性成像模型下,优化求解每个鱼眼摄像机的内、外参数和畸变系数:
基于L-M优化算法,对式(4-14)误差函数进行迭代,优化求解出第 i(i=1,2,3,4)鱼眼摄像机的内、外参数和畸变参数:
Figure BDA0002222852160000141
其中,p表示第i鱼眼摄像头所拍摄的数字图像,共a=25,q表示每幅数字图像中检测的内角点个数,共b=132;mpq表示在第p幅数字图像中第q个内角点的像素点坐标;Ai为i鱼眼摄像机内参数矩阵;ki为i鱼眼摄像机的畸变系数向量;
Figure BDA0002222852160000142
Figure BDA0002222852160000143
分别是i鱼眼摄像头拍摄的第p幅数字图像对应的旋转向量和平移向量;
Figure BDA0002222852160000144
表示第q个内角点在世界坐标系(XW,YW,ZW) 下坐标;
Figure BDA0002222852160000145
是基于当前所求得的鱼眼摄像机参数而重投影得到的点Mq在数字图像中的坐标估计值,
Figure BDA0002222852160000146
的初值由式(4-10) 和式(4-13)确定。最终设置的误差范围为[0,0.02]像素。
第二阶段:在统一世界坐标系下线下标定4个鱼眼摄像机的外参数
步骤5:设置世界坐标系(XW,YW,ZW)的三维轴线方向与摄像机坐标系(XC,YC,ZC)的三维轴线方向同向,且坐标原点OW位于物理平面中心,即4个鱼眼摄像头的中心。在安装4个鱼眼摄像头周围的地面上,用12个边长为 18cm的黑色正方形标记块,按照附图7所示的位置布局,标记块的黑色与背景色间的对比率Cr在[50,160]之间。根据每个鱼眼摄像头对应的视场范围,测量在世界坐标系(XW,YW,ZW)下各自所包含的4个黑色正方形标记块的4 个外角点(见附图8用红笔标注的位置)世界坐标,即:
Figure BDA0002222852160000151
基于附图7的位置布局,第1、第2、第3和第4鱼眼摄像头可观测到的4 个黑色正方形标记块,其P分别为(B;G;H;C)、(A;E;F;B)、(D;K;L;A)和 (C;I;J;D);
步骤6:使用4个鱼眼摄像头在各自所在的视场范围拍摄含有4个黑色正方形标记块、大小为2048×1536的数字图像各一幅,共4幅数字图像 fi(i=1,2,3,4),并选用图像中标记块的外角点作为特征点标定鱼眼摄像机外参数,每个图像中的外角点数为4×4=16个;
步骤7:对数字图像fi(i=1,2,3,4)进行方形标记块外角点检测,并得到在数字坐标系(u,v)下外角点坐标值,其具体流程如下:
Step7.1.初始化i=1;
Step7.2.计算和统计fi的像素灰度分布,即计算每个灰度值I下,对应的像素个数LI,I=0,1,2,3……255;
Step7.3.利用图像中前景色与背景色的对比率Cr,计算图像的背景与前景间的交界灰度值ICV
Figure BDA0002222852160000161
Step7.4.以ICV为界,从数字图像fi的灰度分布图中获取分别位于 [0,ICV]和(ICV,255]区间中像素个数统计值为最大时所对应的灰度值Itag_b和 Itag_f,分别作为图像fi的背景灰度值和前景灰度值,即:
Figure BDA0002222852160000162
Step7.5.按式(7-3)计算外角点检测的阈值Ttag
Figure BDA0002222852160000163
Step7.6.用7×7窗口的24模板(见附图6所示)逐一像素扫描图像fi,即分别沿45度方向的红色对角区域和135度方向的蓝色对角区域,统计计算环绕中心像素Pc所对应的各区域像素的灰度值Ik与Pc的灰度值Ic之差,并与阈值Ttag比较,分别得到模板中红色对角区域和蓝色对角区域的像素灰度值与中心像素灰度值相似的像素个数:
Figure BDA0002222852160000164
Step7.7.若环绕中心像素Pc的相似像素个数
Figure BDA0002222852160000165
Figure BDA0002222852160000166
转向Step7.9;
Step7.8.若
Figure BDA0002222852160000171
则Pc为外角点,进行标记;
Step7.9.若图像fi中还存在没扫描的像素,则返回至Step7.6;
Step7.10.基于数字图像的坐标系,根据对图像fi所有标记的外角点位置,得到它们在数字坐标系(u,v)下的坐标值,即,第i幅图像的坐标为,
Figure BDA0002222852160000172
Step7.11.i=i+1,如果i≤4,则返回至step7.2,否则,结束。
步骤8:根据坐标系间映射关系,求解基于世界坐标系(XW,YW,ZW)下的4 个鱼眼摄像机的外参数,其具体流程如下:
Step8.1.根据已知的每个鱼眼摄像机的内参数,将数字图像fi中的外角点齐次坐标
Figure BDA0002222852160000173
投影至对应i鱼眼摄像机坐标系
Figure BDA0002222852160000174
中对应的外角点坐标
Figure BDA0002222852160000175
Figure BDA0002222852160000176
其中,A-1为鱼眼摄像机内参数的逆矩阵;
Figure BDA0002222852160000177
为对应外角点坐标在摄像机坐标系(XC,YC,ZC)下的坐标;
Step8.2.将i鱼眼在摄像机坐标系
Figure BDA0002222852160000178
下的坐标
Figure BDA0002222852160000179
投影至世界坐标系(XW,YW,ZW)下对应外角点坐标
Figure BDA00022228521600001710
Figure BDA0002222852160000181
式中,
Figure BDA0002222852160000182
为待求解的i鱼眼摄像机的旋转向量和平移向量,即鱼眼摄像机外参数矩阵;
Figure BDA0002222852160000183
为黑色正方形标记块的16个外角点在世界坐标系(XW,YW,ZW)下的齐次坐标;
Step8.3.基于L-M优化算法,对式(8-3)误差函数进行迭代,优化求解出i(i=1,2,3,4)鱼眼摄像机的外参数:
Figure BDA0002222852160000184
其中,外参矩阵的初始值设为
Figure BDA0002222852160000185
其误差函数的值限定在 [-0.2,+0.2]cm范围内。
第三阶段:360度全景视频图像重建的系统和在线拼接融合
步骤10:在LINUX操作系统平台下,构建软件系统环境:对由 S32V234FS视频处理器所提供的Linux BSP压缩文件进行解压后,便得到了一个包括LINUX核、S32V234FS视频处理器的根引导程序、S32V234FS视频处理器包含的所有硬件接口的驱动程序及支持应用程序开发的环境;
步骤11:设置目标全景视频图像的大小为W×H=2048×1536,创建名为 st_map1和st_map2的数据结构,分别用于存储拼接的图像和融合的权值;
步骤12:根据设定的目标全景物理范围-1000cm≤XW≤1000cm和 -1000cm≤YW≤1000cm以及目标全景视频图像的显示分辨率2048×1536,计算在成像坐标系(x,y)下x方向和y方向的像素当量ex和ey
Figure BDA0002222852160000191
步骤13:设置目标全景视频图像坐标系(u,v)的原点位于物理平面的左上角(见附图10),采用平行投影模型,将目标全景视频图像的像素坐标(uk,vl) 投影至世界坐标系(XW,YW,ZW)下对应的点坐标(XWk,YWl,ZWm):
Figure BDA0002222852160000192
其中,k=1,2,3,……2048;l=1,2,3,……1536;
步骤14:根据各鱼眼视频摄像头的视场范围(见附图3)和全景图像的显示分辨率,定义4幅图像拼接融合区域和相邻2幅图像拼接边界的重叠区域宽度2×D如附图11和12所示,设置D范围为[8,16]像素,即[10,20]cm;
步骤15:按照式(15-1)将世界坐标系(XW,YW,ZW)下的点坐标 (XWk,YWl,ZWm)转换为对应的i鱼眼在摄像机坐标系
Figure BDA0002222852160000193
下的点坐标
Figure BDA0002222852160000194
Figure BDA0002222852160000201
式中,
Figure BDA0002222852160000202
是由第二阶段得到的i鱼眼摄像机外参数;Li表示i鱼眼摄像头对应视场范围的弧长,i=1,2,3,4。
步骤16:根据第一阶段得到的i(i=1,2,3,4)鱼眼摄像机内参数Ai及畸变系数ki,求解在非线性成像模型下摄像机坐标系
Figure BDA0002222852160000203
中的点坐标
Figure BDA0002222852160000204
投影至数字图像坐标系(ui,vi)下点坐标
Figure BDA0002222852160000205
值,并保存至相应的 st_map1数据结构中;
步骤17:根据步骤16所生成的4幅拼接图像像素点的坐标值,求解每个像素点的融合权值,并保存至定义的st_map2数据结构中,其具体步骤如下:
Step17.1:按照公式(17-1)分别计算相邻i鱼眼摄像头拍摄的2幅图像中各像素点p距离拼接边界的di和dj
Figure BDA0002222852160000206
式中,j=(i+1)mod4;
Figure BDA0002222852160000211
Figure BDA0002222852160000212
Step17.2:按照公式(17-2),求解相邻拼接图像各像素点的融合权值,并保存至定义的st_map2数据结构中:
Figure BDA0002222852160000213
式中,
Figure BDA0002222852160000214
表示相邻拼接图像分别所对应的视场范围的弧长;
步骤18:根据4个摄像头位置布局的不变特点,针对视频图像数据规模,利用NXPUS32V234的4核计算资源和共享存储器的系统结构以及每帧视频图像数据间的无关联性,采用资源重叠和时空重叠相结合的并行流水方法,重建360度全景视频图像的在线拼接融合,整体流程见附图13所示,其具体步骤如下:
Step18.1.系统初始化:在共享存储器中为重建360度全景视频图像预申请内存空间,具体包括:申请大小为(2048×1536×23)字节×4的内存空间 Source_Images用于存储每个鱼眼摄像头拍摄的原始视频图像帧数据;申请大小为((2048×1536×23)×3)×4的内存空间Mapping_MosaicWeight用于存储拼接的原始视频帧图像像素与目标全景视频图像像素间坐标映射表和融合权值;申请大小为(2048×1536×23)字节的内存空间Target_Images用于存储所形成的360度全景视频图像帧数据;
Step18.2.将st_map2变量数据加载至内存空间Mapping_MosaicWeight 中,并得到待拼接融合的原始视频图像像素数据和对应的融合权值及所形成的目标全景视频图像像素数据存放的内存地址指针,并保存至定义的变量名为st_addr_map中;
Step18.3.把360度全景视频图像的一次重建作为一次循环迭代任务。每次循环迭代分为4个子任务,基于4核心处理器的在线重建360度全景视频图像的软件并行流水的时空分布示意图见附图14,即各个子任务在不同的核处理器上执行,每个核处理器处理完所负责的子任务后,其结果通过共享存储区就作为输入传输至流水线中的下个核处理器,其具体流程如下:
(1)核处理器1从MIPI CSI2接口读取来自4个摄像头拍摄的原始视频图像数据,保存至变量名为Source_Images内存中,耗时20ms;
(2)基于st_addr_map地址指针,核处理器2对Source_Images内存中的原始视频图像像素数据进行拼接,保存至变量名为Mapping_MosaicWeight 内存所对应的区域中,耗时10ms;
(3)基于st_addr_map地址指针,核处理器3获取融合权值,对 Mapping_MosaicWeight内存中拼接图像数据进行融合,得到360度目标全景视频图像,保存至变量名为Target_Images内存中,耗时15ms;
(4)核处理器4从Target_Images内存中读取数据,通过24比特输出接口更新屏幕显示数据,耗时8ms。
为了避免系统资源不发生冲突,约定:
(1)每个子任务只能被调度到一个核处理器上;
(2)每个核处理器上的计算工作负载必须在给定的max(ti+1-ti)间隔内完成;
(3)在给定的输入通道或输出通道上的视频图像帧数据传输负载不大于max(ti+1-ti)间隔。
因此,经过4×max(ti+1-ti)时间后,每隔max(ti+1-ti)间隔,就可以产生一个新的360度全景视频图像帧。附图15是一个在汽车上安装的4个鱼眼摄像头在线拍摄的视频图像,经拼接融合所重建的360度全景视频图像的动态测试效果。
本发明选用的视频处理器NXP S32V234FS是一款片上系统(SoC),专为视觉和传感器融合领域的安全计算密集型应用而设计,其内部提供有4个ARM Cortex-A53和1个ARMCortex-M4核;集成了用于传输和分类大规模视频数据的2个CogniVue APEX-2图像识别引擎和1个Vivante GP30003D 图像处理(GPU);集成了包括2×MIPI CSIⅢ、液晶显示触摸屏24比特、 SD Card、GB Ethernet、JTAG、UARJ、CAN等众多的接口,可同时捕获多路视频图像信号,为支持程序执行和数据传输的并行处理以及快速数据传输速率的实现提供了保障,具有高性价比、高可靠性、高一致性、高便捷性的特点;本发明设计与实现的黑白相间棋盘格的角点检测方法,其检测精度误差仅为±1个像素,并且不受光照、噪声等外界干扰影响,适应性强;本发明基于NXP S32V234FS视频处理器可支持数据传输和数据计算的并行体系结构,采用并行流水线技术,重建360度全景视频图像,在保证输出分辨率的前提下,可以[25,50]fps范围的帧率实时、有效地展示周围全景。
本发明方法的原理为:首先,基于标定板的黑白相间的棋盘格内角点检测,采用张正友标定法,求解得到4个鱼眼相机的各自内、外参数与畸变系数;接着,基于方形标记块图的外角点检测,求解得到在世界坐标系下4个鱼眼相机的外参数;最后,根据鱼眼相机的内、外参数和畸变系数,利用布局的4个鱼眼摄像头间相对位置关系固定不变的特点,基于NXPS32V234FS 的4核处理器,采用时空重叠并行流水线处理机制,对各鱼眼摄像头拍摄的视频图像进行拼接融合处理,构建在世界坐标空间下的360度全景视频图像。
采用本发明方法,可将4个鱼眼摄像头所拍摄的视频图像,能以2048 ×1536显示分辨率、[25,50]fps范围的帧率,清晰地展现360度全景视频图像。具有高性价比、高可靠性、高便捷性等特点。

Claims (1)

1.一种重建360度全景视频图像的方法,其特征在于,基于如下的一种重建360度全景视频图像的系统进行实施:包括视频图像处理器(1);视频图像处理器(1)连接有视频图像输入通道模块(2),视频图像输入通道模块(2)对视频图像处理器(1)单向传输,视频图像输入通道模块(2)还连接有视频摄像头模块(7),视频摄像头模块(7)对视频图像输入通道模块(2)单向传输;视频图像处理器(1)单向连接有视频图像输出驱动模块(3),视频图像输出驱动模块(3)单向连接有液晶显示器模块(8);视频图像处理器(1)双向连接有存储模块(4)和控制调试传输通道模块(5);电源模块(6)连接有视频图像处理器(1)、视频图像输入通道模块(2)、视频图像输出驱动模块(3)、存储模块(4)、视频摄像头模块(7)以及液晶显示器模块(8);
具体的实施方法包括以下三个阶段:
阶段一:线下标定单鱼眼摄像机的内、外参数和畸变系数;
具体步骤如下:
步骤1:在目标全景中,布设4个鱼眼摄像头,其编号分别为1,2,3,4;根据本型号鱼眼摄像头的最佳视场性能特点,每个鱼眼摄像头的高度在[1,3]米范围,鱼眼摄像头彼此的间距[0.2,3]米、夹角为90度,以形成360度的视场范围;
步骤2:选择黑白相间棋盘格板作为标定平面,即世界坐标系的ZW=0,以标定板左上角点为原点,棋盘格板放置在标定平面的法线与鱼眼摄像头主光轴夹角在0°~±60°之间、与鱼眼摄像头间距在[100,500]cm之间;在此范围内,选择不同距离、不同角度,用鱼眼摄像头重复拍摄大小为2048×1536数字图像共25幅,共4×25=100幅图像;每幅数字图像中包含的内角点数为11×12=132个,基于棋盘标定面的坐标系约定,按行优先,自左向右依次编排角点序号:1,2,3,……132;
步骤3:对步骤2中每个鱼眼摄像头所拍摄的棋盘格数字图像Fj,j=1,2,3……25进行内角点检测,作为鱼眼摄像机标定的特征点,并将其坐标值保存至指定的数据结构中;
其具体流程如下:
Step3.1.鱼眼摄像头标号i=1,j=1,
Figure FDA0003219181120000021
其中,Sm的含义是获取所拍摄的大小为2048×1536数字图像含有的像素总数的一半或者50%;Asum的含义是统计保存每个灰度值I下,所含的像素个数SI
Step3.2.Asum=0,Icv=0;
Step3.3.计算和统计Fj图像像素的灰度分布,即计算每个灰度值I下,对应的像素个数SI,I=0,1,2,3……255;
Step3.4.I=0,Asum=Asum+SI,按式(3-1)重复计算:
I=I+1 and Asum=Asum+SI 若Asum<Sm and I<255 (3-1)
Step3.5.棋盘图灰度分布的黑白交界灰度值ICV=I,以ICV为界,从图像的灰度分布中获取分别位于[0,ICV]和(ICV,255]区间中像素个数统计值为最大时所对应的灰度值Ib和If,作为棋盘格图像的背景灰度值和前景灰度值,即:
Figure FDA0003219181120000031
Step3.6.按式(3-3)计算阈值T:
Figure FDA0003219181120000032
Step3.7.用7×7窗口的24模板逐一像素扫描数字图像,即分别沿45度方向的红色对角区域和135度方向的蓝色对角区域,统计计算各区域像素的灰度值Ik与中心像素Pc的灰度值Ic之差,并与阈值T比较,得到各对角区域的像素灰度值与中心像素灰度值相似的像素个数:
Figure FDA0003219181120000033
Step3.8.若环绕中心像素Pc的相似像素个数
Figure FDA0003219181120000034
转向step3.10;
Step3.9.分别计算分布在红色对角区域和蓝色对角区域的像素灰度均值,即:
Figure FDA0003219181120000035
如果
Figure FDA0003219181120000036
则中心像素Pc为非角点,剔除,转至step3.11;
Step3.10.如果
Figure FDA0003219181120000037
则中心像素Pc标注为角点,否则剔除;
Step3.11.若数字图像Fj中还存在没扫描的像素,则返回至step3.7;
Step3.12.基于数字图像的坐标系(u,v),根据对Fj所有标记的内角点位置,得到它们在数字坐标系(u,v)下的坐标值,并按行优先保存至名为point[i,j,k]数据结构中,其中,i=1,2,3,4;j=1,2,3…25;k=1,2,3…132;
Step3.13.判断标号i的鱼眼摄像头拍摄的数字图像是否处理完毕,若没有,则j=j+1,返回至step3.2,否则,i=i+1,j=1;
Step3.14.如果i≤4,则返回至step3.2,否则,结束;
步骤4:基于张正友标定法,求解每个鱼眼摄像机的内、外参数和畸变系数;其具体流程如下:
Step4.1.基于棋盘板平面世界坐标系,即ZW=0,根据棋盘格格子的数量和物理大小,计算棋盘格内角点在世界坐标系下对应的坐标(XWk,YWk)(k=1,2,…132)如下:
基于棋盘标定板的坐标系约定,如果棋盘格的内角点分布的矩阵形式为:
Figure FDA0003219181120000041
则,对于ap,q内角点的物理坐标(Xp,Yq)=(3×p,3×q),按行优先,自左向右,分别对应于世界坐标为(XW1,YW1),(XW2,YW2),(XW3,YW3)……(XW132,YW132);
Step4.2.求解在理想线性成像模型下每个鱼眼摄像机的内、外参数,其具体流程如下:
Step4.2.1根据已知的棋盘标定板在数字图像坐标系下各内角点坐标
Figure FDA0003219181120000042
和对应的世界空间坐标(XWk,YWk,ZWk),求解投影矩阵H:
因为第i鱼眼摄像头拍摄的第j幅数字图像中检测到的所有内角点的像素坐标映射至世界坐标系(XW,YW,0)中对应坐标的投影模型为:
Figure FDA0003219181120000051
其中,
Figure FDA0003219181120000052
Figure FDA0003219181120000053
为棋盘标定板所检测的内角点分别在数字图像坐标系(u,v)和世界坐标系(XW,YW,0)下的齐次坐标,上标i表示摄像头编号,i=1,2,3,4;下标j和k分别表示数字图像序号和内角点序号,j=1,2,…25,k=1,2,…132;
Figure FDA0003219181120000054
为3×3投影矩阵,hij为投影矩阵H的第i行第j列元素,h1,h2,h3为投影矩阵H的列向量;s为任意尺度的缩放比例因子,目的是使得数字图像定义到该尺度比例,由此得:
Figure FDA0003219181120000055
经变换,用矩阵形式可表示为:
令:H'=[h11 h12 h13 h21 h22 h23 h31 h32 h33]T,那么,上式的矩阵形式简写为:
SH'=0 (4-3)
其中,S矩阵大小为(2×132)×9
在如下约束条件下:
Figure FDA0003219181120000056
采用奇异值分解法,对式(4-3)求解,得到投影矩阵H;
Step4.2.2根据约束条件,求解每个鱼眼摄像机的内、外参数,其具体流程如下:
1)求解向量b
根据坐标系间的映射关系,投影矩阵H可表示为:
H=[h1 h2 h3]=λA[r1 r2 t] (4-4)
式中,λ为尺度因子;
Figure FDA0003219181120000061
和[r1 r2 t]分别表达了鱼眼摄像机的内参数和外参数的信息,γ表示像素点在x和y方向上尺度的偏差;
因为r1和r2是单位正交向量,对于每幅图像都存在如下约束条件:
Figure FDA0003219181120000062
令:
Figure FDA0003219181120000063
因为B是一个对称矩阵,可用一个6维向量表示,即:
b=[B11 B12 B22 B13 B23 B33]T (4-7)
假设,H的第i列向量为hi=[hi1 hi2 hi3]T,i=1,2,3,式(4-5)可表示为关于b的齐次方程:
Figure FDA0003219181120000071
式中,Vij=[hi1hj1 hi1hj2+hi2hj1 hi2hj2 hi3hj1+hi1hj3 hi3hj2+hi2hj3 hi3hj3];那么,对于每个鱼眼摄像头拍摄的25幅图像,可将方程联立,求解向量b:
Vb=0 (4-9)
式中,
Figure FDA0003219181120000072
是一个(2×25)×6的矩阵;
2)按照式(4-10)求解出鱼眼摄像机的内、外参数:
Figure FDA0003219181120000073
其中,γ、v0、u0、fx、fy为鱼眼摄像机内参数;R=[r1 r2 r3]和t通称为鱼眼摄像机外参数;
Step4.3.优化求解各鱼眼摄像机的内、外参数和畸变系数,其具体流程如下:
Step4.3.1求解鱼眼摄像机的畸变系数:
因为第i(i=1,2,3,4)鱼眼摄像头拍摄的第j(j=1,2,3…25)幅数字图像的坐标为:
Figure FDA0003219181120000081
用矩阵形式可表示为:
Figure FDA0003219181120000082
式中,
Figure FDA0003219181120000083
表示在畸变情况下第i鱼眼摄像头拍摄的第j幅数字图像的像素坐标;
Figure FDA0003219181120000084
表示在理想线性成像模型下第j幅数字图像的像素坐标;(u0,v0)表示成像坐标系的原点在数字图像坐标系(u,v)中的坐标;
Figure FDA0003219181120000085
表示在理想线性成像模型下第j幅数字图像在摄像机坐标系(XC,YC,ZC)中的像素坐标;k1,k2表示畸变系数;
对于每个鱼眼摄像头拍摄有25张图像,每张图内有132个内角点,如果把2×132×25这些方程堆叠,可得:
Figure FDA0003219181120000086
可简写为:
Diki=di (4-12)
为了选取最合适的ki,应满足:
arg min||Diki-di||
对式(4-12)的微分求最值,可得:
(Di)TDiki=(Di)Tdi
因为矩阵(Di)TDi为非奇异矩阵,因此,最小二乘解为:
ki=((Di)TDi)-1(Di)Tdi (4-13)
Step4.3.2在非线性成像模型下,优化求解每个鱼眼摄像机的内、外参数和畸变系数:
基于L-M优化算法,对式(4-14)误差函数进行迭代,优化求解出第i(i=1,2,3,4)鱼眼摄像机的内、外参数和畸变参数:
Figure FDA0003219181120000091
其中,p表示第i鱼眼摄像头所拍摄的数字图像,共a=25,q表示每幅数字图像中检测的内角点个数,共b=132;mpq表示在第p幅数字图像中第q个内角点的像素点坐标;Ai为i鱼眼摄像机内参数矩阵;ki为i鱼眼摄像机的畸变系数向量;
Figure FDA0003219181120000092
Figure FDA0003219181120000093
分别是i鱼眼摄像头拍摄的第p幅数字图像对应的旋转向量和平移向量;
Figure FDA0003219181120000094
表示第q个内角点在世界坐标系(XW,YW,ZW)下坐标;
Figure FDA0003219181120000095
是基于当前所求得的鱼眼摄像机参数而重投影得到的点Mq在数字图像中的坐标估计值,Ai,ki,
Figure FDA0003219181120000096
的初值由式(4-10)和式(4-13)确定;最终设置的误差范围为[0,0.02]像素;
阶段二:在统一世界坐标系下线下标定4个鱼眼摄像机的外参数;
具体步骤如下:
步骤5:设置世界坐标系(XW,YW,ZW)的三维轴线方向与摄像机坐标系(XC,YC,ZC)的三维轴线方向同向,且坐标原点OW位于物理平面中心,即4个鱼眼摄像头的中心;在安装4个鱼眼摄像头周围的地面上,用12个边长为18cm的黑色正方形标记块,标记块的黑色与背景色间的对比率Cr在[50,160]之间;根据每个鱼眼摄像头对应的视场范围,测量在世界坐标系(XW,YW,ZW)下各自所包含的4个黑色正方形标记块的4个外角点世界坐标,即:
Figure FDA0003219181120000101
第1、第2、第3和第4鱼眼摄像头可观测到的4个黑色正方形标记块,其P分别为(B;G;H;C)、(A;E;F;B)、(D;K;L;A)和(C;I;J;D);
步骤6:使用4个鱼眼摄像头在各自所在的视场范围拍摄含有4个黑色正方形标记块、大小为2048×1536的数字图像各一幅,共4幅数字图像fi(i=1,2,3,4),并选用图像中标记块的外角点作为特征点标定鱼眼摄像机外参数,每个图像中的外角点数为4×4=16个;
步骤7:对数字图像fi(i=1,2,3,4)进行方形标记块外角点检测,并得到在数字坐标系(u,v)下外角点坐标值,其具体流程如下:
Step7.1.初始化i=1;
Step7.2.计算和统计fi的像素灰度分布,即计算每个灰度值I下,对应的像素个数LI,I=0,1,2,3……255;
Step7.3.利用图像中前景色与背景色的对比率Cr,计算图像的背景与前景间的交界灰度值ICV
Figure FDA0003219181120000111
Step7.4.以ICV为界,从数字图像fi的灰度分布图中获取分别位于[0,ICV]和(ICV,255]区间中像素个数统计值为最大时所对应的灰度值Itag_b和Itag_f,分别作为图像fi的背景灰度值和前景灰度值,即:
Figure FDA0003219181120000112
Step7.5.按式(7-3)计算外角点检测的阈值Ttag
Figure FDA0003219181120000113
Step7.6.用7×7窗口的24模板逐一像素扫描图像fi,即分别沿45度方向的红色对角区域和135度方向的蓝色对角区域,统计计算环绕中心像素Pc所对应的各区域像素的灰度值Ik与Pc的灰度值Ic之差,并与阈值Ttag比较,分别得到模板中红色对角区域和蓝色对角区域的像素灰度值与中心像素灰度值相似的像素个数:
Figure FDA0003219181120000114
Step7.7.若环绕中心像素Pc的相似像素个数
Figure FDA0003219181120000115
Figure FDA0003219181120000116
转向Step7.9;
Step7.8.若
Figure FDA0003219181120000117
则Pc为外角点,进行标记;
Step7.9.若图像fi中还存在没扫描的像素,则返回至Step7.6;
Step7.10.基于数字图像的坐标系,根据对图像fi所有标记的外角点位置,得到它们在数字坐标系(u,v)下的坐标值,即,第i幅图像的坐标为,
Figure FDA0003219181120000121
Step7.11.i=i+1,如果i≤4,则返回至step7.2,否则,结束;
步骤8:根据坐标系间映射关系,求解基于世界坐标系(XW,YW,ZW)下的4个鱼眼摄像机的外参数,其具体流程如下:
Step8.1.根据已知的每个鱼眼摄像机的内参数,将数字图像fi中的外角点齐次坐标
Figure FDA0003219181120000122
投影至对应i鱼眼摄像机坐标系
Figure FDA0003219181120000123
中对应的外角点坐标
Figure FDA0003219181120000124
Figure FDA0003219181120000125
其中,A-1为鱼眼摄像机内参数的逆矩阵;
Figure FDA0003219181120000126
为对应外角点坐标在摄像机坐标系(XC,YC,ZC)下的坐标;
Step8.2.将i鱼眼在摄像机坐标系
Figure FDA0003219181120000127
下的坐标
Figure FDA0003219181120000128
投影至世界坐标系(XW,YW,ZW)下对应外角点坐标
Figure FDA0003219181120000129
Figure FDA00032191811200001210
式中,
Figure FDA00032191811200001211
为待求解的i鱼眼摄像机的旋转向量和平移向量,即鱼眼摄像机外参数矩阵;
Figure FDA0003219181120000131
为黑色正方形标记块的16个外角点在世界坐标系(XW,YW,ZW)下的齐次坐标;
Step8.3.基于L-M优化算法,对式(8-3)误差函数进行迭代,优化求解出i(i=1,2,3,4)鱼眼摄像机的外参数:
Figure FDA0003219181120000132
其中,外参矩阵的初始值设为
Figure FDA0003219181120000133
其误差函数的值限定在[-0.2,+0.2]cm范围内;
阶段三:通过重建360度全景视频图像的系统实现在线拼接融合;
具体步骤如下:
步骤9:在LINUX操作系统平台下,构建软件系统环境:对由S32V234FS视频处理器所提供的Linux BSP压缩文件进行解压后,便得到了一个包括LINUX核、S32V234FS视频处理器的根引导程序、S32V234FS视频处理器包含的所有硬件接口的驱动程序及支持应用程序开发的环境;
步骤10:设置目标全景视频图像的大小为W×H=2048×1536,创建名为st_map1和st_map2的数据结构,分别用于存储拼接的图像和融合的权值;
步骤11:根据设定的目标全景物理范围-1000cm≤XW≤1000cm和-1000cm≤YW≤1000cm以及目标全景视频图像的显示分辨率2048×1536,计算在成像坐标系(x,y)下x方向和y方向的像素当量ex和ey
Figure FDA0003219181120000141
步骤12:设置目标全景视频图像坐标系(u,v)的原点位于物理平面的左上角,采用平行投影模型,将目标全景视频图像的像素坐标(uk,vl)投影至世界坐标系(XW,YW,ZW)下对应的点坐标(XWk,YWl,ZWm):
Figure FDA0003219181120000142
其中,k=1,2,3,……2048;l=1,2,3,……1536;
步骤13:根据各鱼眼视频摄像头的视场范围和全景图像的显示分辨率,定义4幅图像拼接融合区域和相邻2幅图像拼接边界的重叠区域宽度2×D,设置D范围为[8,16]像素,即[10,20]cm;
步骤14:按照式(15-1)将世界坐标系(XW,YW,ZW)下的点坐标(XWk,YWl,ZWm)转换为对应的i鱼眼在摄像机坐标系
Figure FDA0003219181120000143
下的点坐标
Figure FDA0003219181120000144
Figure FDA0003219181120000151
式中,
Figure FDA0003219181120000152
是由第二阶段得到的i鱼眼摄像机外参数;Li表示i鱼眼摄像头对应视场范围的弧长,i=1,2,3,4;
步骤15:根据第一阶段得到的i(i=1,2,3,4)鱼眼摄像机内参数Ai及畸变系数ki,求解在非线性成像模型下摄像机坐标系
Figure FDA0003219181120000153
中的点坐标
Figure FDA0003219181120000154
投影至数字图像坐标系(ui,vi)下点坐标
Figure FDA0003219181120000155
值,并保存至相应的st_map1数据结构中;
步骤16:根据步骤15所生成的4幅拼接图像像素点的坐标值,求解每个像素点的融合权值,并保存至定义的st_map2数据结构中,其具体步骤如下:
Step16.1:按照公式(17-1)分别计算相邻i鱼眼摄像头拍摄的2幅图像中各像素点p距离拼接边界的di和dj
Figure FDA0003219181120000156
式中,j=(i+1)mod4;
Figure FDA0003219181120000161
Figure FDA0003219181120000162
Step16.2:按照公式(17-2),求解相邻拼接图像各像素点的融合权值,并保存至定义的st_map2数据结构中:
Figure FDA0003219181120000163
式中,
Figure FDA0003219181120000164
Figure FDA0003219181120000165
表示相邻拼接图像分别所对应的视场范围的弧长;
步骤17:根据4个摄像头位置布局的不变特点,针对视频图像数据规模,利用NXPUS32V234的4核计算资源和共享存储器的系统结构以及每帧视频图像数据间的无关联性,采用资源重叠和时空重叠相结合的并行流水方法,重建360度全景视频图像的在线拼接融合,其具体步骤如下:
Step17.1.系统初始化:在共享存储器中为重建360度全景视频图像预申请内存空间,具体包括:申请大小为(2048×1536×23)字节×4的内存空间Source_Images用于存储每个鱼眼摄像头拍摄的原始视频图像帧数据;申请大小为((2048×1536×23)×3)×4的内存空间Mapping_MosaicWeight用于存储拼接的原始视频帧图像像素与目标全景视频图像像素间坐标映射表和融合权值;申请大小为(2048×1536×23)字节的内存空间Target_Images用于存储所形成的360度全景视频图像帧数据;
Step17.2.将st_map2变量数据加载至内存空间Mapping_MosaicWeight中,并得到待拼接融合的原始视频图像像素数据和对应的融合权值及所形成的目标全景视频图像像素数据存放的内存地址指针,并保存至定义的变量名为st_addr_map中;
Step17.3.把360度全景视频图像的一次重建作为一次循环迭代任务;每次循环迭代分为4个子任务,即各个子任务在不同的核处理器上执行,每个核处理器处理完所负责的子任务后,其结果通过共享存储区就作为输入传输至流水线中的下个核处理器,其具体流程如下:
1)核处理器1从MIPI CSI2接口读取来自4个摄像头拍摄的原始视频图像数据,保存至变量名为Source_Images内存中,耗时20ms;
2)基于st_addr_map地址指针,核处理器2对Source_Images内存中的原始视频图像像素数据进行拼接,保存至变量名为Mapping_MosaicWeight内存所对应的区域中,耗时10ms;
3)基于st_addr_map地址指针,核处理器3获取融合权值,对Mapping_MosaicWeight内存中拼接图像数据进行融合,得到360度目标全景视频图像,保存至变量名为Target_Images内存中,耗时15ms;
4)核处理器4从Target_Images内存中读取数据,通过24比特输出接口更新屏幕显示数据,耗时8ms;
为了避免系统资源不发生冲突,约定:
1)每个子任务只能被调度到一个核处理器上;
2)每个核处理器上的计算工作负载必须在给定的max(ti+1-ti)间隔内完成;
3)在给定的输入通道或输出通道上的视频图像帧数据传输负载不大于max(ti+1-ti)间隔;
因此,经过4×max(ti+1-ti)时间后,每隔max(ti+1-ti)间隔,就可以产生一个新的360度全景视频图像帧。
CN201910940825.4A 2019-09-30 2019-09-30 一种重建360度全景视频图像的系统和方法 Active CN110677599B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910940825.4A CN110677599B (zh) 2019-09-30 2019-09-30 一种重建360度全景视频图像的系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910940825.4A CN110677599B (zh) 2019-09-30 2019-09-30 一种重建360度全景视频图像的系统和方法

Publications (2)

Publication Number Publication Date
CN110677599A CN110677599A (zh) 2020-01-10
CN110677599B true CN110677599B (zh) 2021-11-05

Family

ID=69080540

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910940825.4A Active CN110677599B (zh) 2019-09-30 2019-09-30 一种重建360度全景视频图像的系统和方法

Country Status (1)

Country Link
CN (1) CN110677599B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111311491B (zh) * 2020-01-20 2020-12-04 当家移动绿色互联网技术集团有限公司 图像的处理方法、装置、存储介质和电子设备
CN111462172B (zh) * 2020-02-24 2023-03-24 西安电子科技大学 一种基于行驶场景估计的三维全景影像自适应生成方法
CN111284503B (zh) * 2020-03-10 2021-12-10 宁波远景汽车零部件有限公司 一种汽车安全出行装置
CN111582079A (zh) * 2020-04-24 2020-08-25 杭州鸿泉物联网技术股份有限公司 基于计算机视觉的车道定位方法及装置
CN111582080B (zh) * 2020-04-24 2023-08-08 杭州鸿泉物联网技术股份有限公司 车辆360度环视监控实现方法及装置
CN112184662B (zh) * 2020-09-27 2023-12-15 成都数之联科技股份有限公司 应用于无人机图像拼接中的相机外参数初始方法及系统
CN112308927B (zh) * 2020-10-26 2024-05-17 南昌智能新能源汽车研究院 一种全景相机与激光雷达的融合装置及其标定方法
CN113066086B (zh) * 2021-04-26 2022-08-30 深圳市商汤科技有限公司 道路病害检测方法及装置、电子设备和存储介质
CN113873223B (zh) * 2021-09-03 2023-07-21 大连中科创达软件有限公司 相机清晰度确定方法、装置、设备及存储介质
CN114040155A (zh) * 2021-10-31 2022-02-11 中汽院(重庆)汽车检测有限公司 一种用于车辆全景环视图像测试系统
CN114549666B (zh) * 2022-04-26 2022-09-06 杭州蓝芯科技有限公司 一种基于agv的环视图像拼接标定方法
CN115396644B (zh) * 2022-07-21 2023-09-15 贝壳找房(北京)科技有限公司 基于多段外参数据的视频融合方法及装置

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103426168A (zh) * 2013-07-18 2013-12-04 北京航空航天大学 基于一维标定杆的普通、广角、鱼眼立体摄像机的通用标定方法
CN103617606A (zh) * 2013-11-26 2014-03-05 中科院微电子研究所昆山分所 用于辅助驾驶的车辆多视角全景生成方法
KR20140137485A (ko) * 2013-05-22 2014-12-03 아이오솔루션(주) 어안 렌즈를 이용한 다중 채널 디스플레이 시스템
CN107240065A (zh) * 2017-04-19 2017-10-10 中科院微电子研究所昆山分所 一种3d全景图像生成系统和方法
WO2018127625A1 (en) * 2017-01-03 2018-07-12 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
CN108596982A (zh) * 2018-04-24 2018-09-28 深圳市航盛电子股份有限公司 一种简易的车载多目摄像机环视系统标定方法及装置
CN108805801A (zh) * 2018-05-24 2018-11-13 北京华捷艾米科技有限公司 一种全景图像校正方法及系统
CN109064404A (zh) * 2018-08-10 2018-12-21 西安电子科技大学 一种基于多相机标定的全景拼接方法、全景拼接系统
CN109859279A (zh) * 2019-01-29 2019-06-07 江苏裕兰信息科技有限公司 一种基于线特征的车载360环视系统的流水线下线标定方法
CN109883433A (zh) * 2019-03-21 2019-06-14 中国科学技术大学 基于360度全景视图的结构化环境中车辆定位方法
CN209170546U (zh) * 2018-11-22 2019-07-26 西安工程大学 一种构建360度3d场景视频图像的智能监控系统

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140137485A (ko) * 2013-05-22 2014-12-03 아이오솔루션(주) 어안 렌즈를 이용한 다중 채널 디스플레이 시스템
CN103426168A (zh) * 2013-07-18 2013-12-04 北京航空航天大学 基于一维标定杆的普通、广角、鱼眼立体摄像机的通用标定方法
CN103617606A (zh) * 2013-11-26 2014-03-05 中科院微电子研究所昆山分所 用于辅助驾驶的车辆多视角全景生成方法
WO2018127625A1 (en) * 2017-01-03 2018-07-12 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
CN107240065A (zh) * 2017-04-19 2017-10-10 中科院微电子研究所昆山分所 一种3d全景图像生成系统和方法
CN108596982A (zh) * 2018-04-24 2018-09-28 深圳市航盛电子股份有限公司 一种简易的车载多目摄像机环视系统标定方法及装置
CN108805801A (zh) * 2018-05-24 2018-11-13 北京华捷艾米科技有限公司 一种全景图像校正方法及系统
CN109064404A (zh) * 2018-08-10 2018-12-21 西安电子科技大学 一种基于多相机标定的全景拼接方法、全景拼接系统
CN209170546U (zh) * 2018-11-22 2019-07-26 西安工程大学 一种构建360度3d场景视频图像的智能监控系统
CN109859279A (zh) * 2019-01-29 2019-06-07 江苏裕兰信息科技有限公司 一种基于线特征的车载360环视系统的流水线下线标定方法
CN109883433A (zh) * 2019-03-21 2019-06-14 中国科学技术大学 基于360度全景视图的结构化环境中车辆定位方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"三维环绕车载监控系统设计";段俊瑞 等;《西安工程大学学报》;20190430;第33卷(第2期);第176页右栏第2段-第178页右栏第3段,图1-8 *
"多视点全景图像辅助泊车系统研究";眭昊天;《中国优秀硕士学位论文全文数据库(电子期刊)》;20141015;全文 *

Also Published As

Publication number Publication date
CN110677599A (zh) 2020-01-10

Similar Documents

Publication Publication Date Title
CN110677599B (zh) 一种重建360度全景视频图像的系统和方法
US11157766B2 (en) Method, apparatus, device and medium for calibrating pose relationship between vehicle sensor and vehicle
US10594941B2 (en) Method and device of image processing and camera
JP4825980B2 (ja) 魚眼カメラの校正方法。
US10728525B2 (en) Image capturing apparatus, image processing method, and recording medium
CN110969663B (zh) 一种相机外部参数的静态标定方法
CN102692214B (zh) 一种狭窄空间双目视觉测量定位装置及方法
CN112655024B (zh) 一种图像标定方法及装置
CN104835117A (zh) 基于重叠方式的球面全景图生成方法
CN108805938B (zh) 一种光学防抖模组的检测方法、移动终端及存储介质
CN110838164B (zh) 基于物体点深度的单目图像三维重建方法、系统及装置
CN102692236A (zh) 基于rgb-d相机的视觉里程计方法
CN113744340A (zh) 用轴向视点偏移的非中心相机模型校准相机并计算点投影
CN114765667A (zh) 用于多视图拼接的固定图案校准
CN105374067A (zh) 一种基于pal相机的三维重建方法及其重建系统
CN105513074B (zh) 一种羽毛球机器人相机以及车身到世界坐标系的标定方法
JP2010078466A (ja) マーカ自動登録方法及びシステム
CN103260008A (zh) 一种影像位置到实际位置的射影转换方法
JP2006222920A (ja) 撮像装置及び撮像系パラメータの校正方法
CN107274449B (zh) 一种光学照片对物体的空间定位系统及方法
CN109712200B (zh) 一种基于最小二乘原理及边长推算的双目定位方法及系统
CN116469101A (zh) 数据标注方法、装置、电子设备及存储介质
JP2005275789A (ja) 三次元構造抽出方法
US20220005225A1 (en) Systems and methods for calibrating imaging and spatial orientation sensors
CN106483577B (zh) 一种光学探测装置

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