一种移动通信终端及其实现三维重建的方法及服务器的制造方法

文档序号:10657039阅读:397来源:国知局
一种移动通信终端及其实现三维重建的方法及服务器的制造方法
【专利摘要】本发明适用于图像处理领域,提供了一种移动通信终端及其实现三维重建的方法及服务器。所述方法包括:移动通信终端通过摄像头拍摄至少一张物体或场景的照片;移动通信终端将照片通过网络发送至服务器,以由服务器以照片作为三维重建的输入合成三维模型,生成三维模型数据,并由服务器将生成的三维模型数据通过网络发送至移动通信终端;移动通信终端接收三维模型数据;移动通信终端根据三维模型数据进行三维可视化渲染。本发明实现了在移动通信终端上任意角度,任意位置拍摄物体或场景、上传照片、进而合成,并下载渲染三维模型的全自动服务流程,本发明利用网络通信技术既发挥了便携设备的小巧灵活的优势,又能利用服务器完成大规模高质量的三维重建运算。
【专利说明】
-种移动通信终端及其实现H维重建的方法及服务器
技术领域
[0001] 本发明属于图像处理领域,尤其设及一种移动通信终端及其实现=维重建的方法 及服务器。
【背景技术】
[0002] 移动通信终端包括手机、平板电脑、便携式笔记本电脑、无人机机载设备、各种智 能机等。因为移动通信终端本身为了轻型化,小型化,其计算能力,计算速度,存储能力,供 电能力都严重受限,而=维重建设及大量的计算负荷,运给移动通信终端,尤其是各种便携 式移动通信终端实现=维重建带来极大的困难。

【发明内容】

[0003] 本发明的目的在于提供一种移动通信终端及其实现=维重建的方法及服务器,旨 在解决=维重建设及大量的计算负荷,给移动通信终端实现=维重建带来极大的困难的问 题。
[0004] 第一方面,本发明提供了一种移动通信终端实现=维重建的方法,所述方法包括:
[0005] 移动通信终端通过摄像头拍摄至少一张物体或场景的照片;
[0006] 移动通信终端将所述照片通过网络发送至服务器,W由服务器W所述照片作为= 维重建的输入合成=维模型,生成=维模型数据,并由服务器将生成的=维模型数据通过 网络发送至所述移动通信终端;
[0007] 所述移动通信终端接收所述=维模型数据;
[000引移动通信终端根据=维模型数据进行=维可视化擅染。
[0009] 第二方面,本发明提供了一种服务器实现=维重建的方法,所述方法包括:
[0010] 服务器W照片作为=维重建的输入合成=维模型,生成=维模型数据,所述照片 是由移动通信终端通过摄像头拍摄有至少一张物体或场景的照片,并由移动通信终端将所 述照片通过网络发送至服务器的;
[0011] 服务器将生成的=维模型数据通过网络发送至所述移动通信终端,W由移动通信 终端根据=维模型数据进行=维可视化擅染。
[0012] 第=方面,本发明提供了一种移动通信终端,所述移动通信终端包括:
[0013] 拍摄模块,用于移动通信终端通过摄像头拍摄至少一张物体或场景的照片;
[0014] 第一发送模块,用于移动通信终端将所述照片通过网络发送至服务器,W由服务 器W所述照片作为=维重建的输入合成=维模型,生成=维模型数据,并由服务器将生成 的=维模型数据通过网络发送至所述移动通信终端;
[0015] 接收模块,用于所述移动通信终端接收所述=维模型数据;
[0016] 擅染模块,用于移动通信终端根据=维模型数据进行=维可视化擅染。
[0017 ]第四方面,本发明提供了一种服务器,所述服务器包括:
[0018]合成模块,用于服务器W照片作为=维重建的输入合成=维模型,生成=维模型 数据,所述照片是由移动通信终端通过摄像头拍摄有至少一张物体或场景的照片,并由移 动通信终端将所述照片通过网络发送至服务器的;
[0019] 第二发送模块,用于服务器将生成的=维模型数据通过网络发送至所述移动通信 终端,W由移动通信终端根据=维模型数据进行=维可视化擅染。
[0020] 在本发明中,由于移动通信终端通过摄像头拍摄照片后通过网络发送至服务器, 由服务器进行=维重建并将生成的=维模型数据通过网络发送至所述移动通信终端,再由 移动通信终端根据=维模型数据进行=维可视化擅染。因此,实现了在手机等移动通信终 端上任意角度,任意位置拍摄物体或场景、上传照片、进而合成,并下载擅染=维模型的全 自动服务流程,本发明利用网络通信技术既发挥了便携设备的小巧灵活的优势,又能利用 后台服务器完成大规模高质量的=维重建运算。
【附图说明】
[0021] 图1是本发明实施例一提供的移动通信终端实现=维重建的方法的流程图。
[0022] 图2是本发明实施例二提供的移动通信终端的结构示意图。
[0023] 图3是本发明实施例S提供的服务器的结构示意图。
【具体实施方式】
[0024] 为了使本发明的目的、技术方案及有益效果更加清楚明白,W下结合附图及实施 例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用W解释本发 明,并不用于限定本发明。
[0025] 为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
[0026] 实施例一:
[0027] 请参阅图1,本发明实施例一提供的移动通信终端实现=维重建的方法包括W下 步骤:
[0028] S101、移动通信终端通过摄像头拍摄至少一张物体或场景的照片。
[0029] SlOl具体可W为:一个移动通信终端通过摄像头拍摄一张或多张物体或场景的照 片,或者,多个移动通信终端通过摄像头拍摄多张物体或场景的照片。
[0030] 拍摄的场景画面需大致对准同一场景,拍摄的角度、位置、距离不限。
[0031] 移动通信终端包括手机、平板电脑、便携式笔记本电脑、无人机机载设备、各种智 能机等。
[0032] S102、移动通信终端将所述照片通过网络发送至服务器。
[0033] 当SlOl具体为多个移动通信终端通过摄像头拍摄多张物体或场景的照片时,S102 之后,所述方法还包括:服务器将多个移动通信终端拍摄的多张物体或场景的照片进行汇 总。
[0034] S103、服务器W所述照片作为=维重建的输入合成=维模型,生成=维模型数据。
[0035] 在本发明实施例一中,当步骤SlOl具体为一个移动通信终端通过摄像头拍摄一张 物体或场景的照片时,S103具体可W包括W下步骤:
[0036] 服务器W所述照片作为=维重建的输入,采用深度机器学习方法,先通过大量图 像像素数据作为输入与其对应的深度数据作为输出的已知样本进行神经网络模型训练,得 到神经网络模型A之后,再将单幅图像的像素 X周边的分布作为神经网络模型A的输入,输出 就是像素 X对应的深度信息d;根据大量像素 X的坐标u,v和其对应的神经网络模型A得到的 深度数据dx得到=维模型点云;然后经过点云加密、点云构网、铺设纹理等过程,生成=维 模型数据。所述=维模型数据包括=维模型文件和纹理文件。
[0037] 其中,由于前面得到的点云是对应于图像上某个像素位置的,因此其所处的点云 阵列是非常有规律的2维阵列网格,1个方形的网格可进一步划分成2个3角形网格。由于点 云的每一个点对应的图像像素颜色值是已知的,因此可由运些图像像素坐标铺设纹理。
[0038] 在本发明实施例一中,当步骤SlOl中拍摄的物体或场景的照片是多张时,S103具 体可W为:
[0039] 服务器W所述照片作为=维重建的输入,经过同名点匹配、移动通信终端虚拟摄 像头位姿模型构建、生成点云、点云加密、点云构网、铺设纹理等过程,生成=维模型数据。 所述=维模型数据包括=维模型点坐标数据、构网数据和纹理数据。
[0040] 在本发明实施例一中,同名点匹配过程中,可利用移动通信终端提供的姿态数据 进行拍摄照片纠正匹配,可达到更好的匹配效果,纠正匹配方法有两种:
[0041 ] 一、纠正图像匹配同名点
[0042] 1 .每一张拍摄的照片Ii经过Hi = KiRiJKi-I的Homogeaph变换得到I',其中
是移动通信终端的摄像头i的内部参数矩阵,f是焦距的像素长度,(Cx,Cy) 是摄像头主点坐标;对于理想摄像头(Cx,Cy)是图像的中屯、点,Cx=w/2,Cy = h/2,W,h是原始 图像I的窗巧高:
[0043]
是纠正W后虚拟移动通信终端的摄像头的内部参数矩阵,f2是 纠正W后虚拟摄像头的焦距的像素长度,(Cx2,Cy2)是纠正W后虚拟移动通信终端的摄像头 主点坐标,RiT是由摄像头的姿态矩阵Ri分解出来的纠正矩阵。
[0044] 根据姿态矩阵Ri,R拥要匹配的两幅照片Ii,。分别进行纠正得到Ii'和。'两张照 片之间没有旋转关系了,可W在不考虑照片旋转的条件下快速准确地进行匹配。
[0045] 二、纠正特征点匹配同名点
[0046] 将照片中的特征点集先提取出来,对于移动通信终端i拍摄的照片Ii中的每一个 特征点Pu,再在特征点Pu邻域j附近小图区域进行出= KiRiJKri纠正变换,在纠正小图区域 中计算该特征点Pu的描述子,运种经过邻域纠正的特征点描述子不受照片旋转的影响具有 较好的匹配稳定性,最后利用纠正图的特征点描述子进行图像间同名点匹配。
[0047] 在本发明实施例一中,在点云加密之后,所述方法还可W包括:
[004引点云间隔采样,具体为:服务器根据数据量大小需要进行间隔抽稀采样合成=维 模型的坐标点数据,再将运些点合成=维模型,W保证在较小的时间内通过网络发送给移 动通信终端。比如要将总点数限制在m个W内,当实际点数M〉m时则每隔取整[N/m]进行一次 =维点坐标采样,再将运些点合成=维模型。
[0049] 在本发明实施例一中,在S103之前还可W包括W下步骤:
[0050] 服务器对所述照片进行图像增强处理,W便更好的进行=维重建,具体可W为:对 所述照片预先进行直方图均衡化、像素滤波等处理,保证每一幅图像有比较大的对比度。
[0051] S104、服务器将生成的=维模型数据通过网络发送至所述移动通信终端。
[0052] 在本发明实施例一中,由于服务器合成的=维模型数据一般可能会比较大,因此 在S104之前,所述方法还可W包括W下步骤:
[0053] 将生成的=维模型数据进行压缩,在S104中,发送压缩后的=维模型数据。
[0054] 压缩的方式具体可W为:将纹理图片数据进行压缩操作,例如生成Jpg或.png压 缩格式,图像的大小可W进行比例缩放,或者将生成的S维模型数据整体打包压缩成rar、 Z ip、7z等格式。
[0055] S105、所述移动通信终端接收所述=维模型数据。
[0056] 如果在S104之前,所述方法还包括将生成的S维模型数据进行压缩的步骤,贝U S105之后,所述方法还包括W下步骤:
[0057] 移动通信终端对压缩后的=维模型数据进行解压,得到点坐标、面网、纹理坐标、 纹理图片等信息。
[005引S106、移动通信终端根据=维模型数据进行=维可视化擅染。
[0059] 在本发明实施例一中,移动通信终端还可W通过与服务器通信实现=维模型数据 的建库与管理,包括为每个移动通信终端用户提供添加、删除、擅染、预览、下载已合成的= 维模型功能。在下载已合成的=维模型的过程中,服务器为每一个移动通信终端用户生成 一个模型库,移动通信终端用户通过模型库中的模型名来选择下载自己的模型,如果移动 通信终端本地没有模型,就先从服务器下载=维模型数据,将=维模型数据保存到本地,再 加载=维模型数据,擅染模型。如果移动通信终端已有下载到本地的=维模型数据,就不用 重复下载,直接加载本地=维模型数据,擅染模型。
[0060] 在本发明实施例一中,在步骤SlOl之后,所述方法还可W包括W下步骤:
[0061] 移动通信终端为每张拍摄的照片绑定拍摄时摄像头的姿态数据。
[0062] 此时,S102具体为:将所述照片和拍摄时摄像头的姿态数据通过网络发送至服务 器。
[0063] S103具体为:服务器W所述照片和拍摄时摄像头的姿态数据作为=维重建的输入 合成=维模型,生成=维模型数据。
[0064] 其中,拍摄时摄像头的姿态数据可W通过W下方式获取:
[0065] 定义局部坐标系:局部坐标系是指原点在移动通信终端,Z轴指向地球表面方向,Y 轴或X轴与缔线相平行的坐标系;或局部坐标系原点位于地球上任意一点,Z轴与重力方向 一致,北代表局部坐标系X轴,西代表局部坐标系Y轴;
[0066] 测定摄像头的姿态矩阵Rg,雌是一个相对于局部坐标系的3x3单位正交矩阵;
[0067] 所述测定摄像头的姿态矩阵Rg具体是采用移动通信终端的加速度传感器,W及磁 力计传感器或方向传感器,或者,采用移动通信终端的旋转矢量传感器,或者,采用移动通 信终端的巧螺仪、加速度传感器与磁力传感器来测定。
[0068] 当测定摄像头的姿态矩阵Rg具体是采用移动通信终端的加速度传感器,W及磁力 计传感器或方向传感器来测定时,所述测定摄像头的姿态矩阵Rg具体包括:
[0070]
[0069] 用W下公式(I)计算Rg
[0071]
[0072]
[0073]
[0074] Vax,Vay,Vaz是移动通信终端加速度传感器测出的X,y,个方向的值,或是运立个 值经滤波的结果;
[0075] Ra是加速度传感器相对于摄像头的姿态转换矩阵;
[0076]
当az《0时,S = -I,az〉0时,S = 1;
[0077] 若采用方向传感器:通过方向传感器获取方位角(P= value[0],将其带入公式(1)计 算Rg;
[0078] 若采巧磁力计传感器:计算
[0079]
[0080] 其中Rm是磁力传感器相对于摄像头的姿态转换矩阵;{vmx,Vmy,Vmz}是磁力传感器 检测到的=个值或运=个值经滤波的结果;
[0081 ]再计算
[0082]
[0083] 利用磁力传感器计算方位角取的S角函数为:
[0084]
[0085]
[0086] 带入公式(1)计算Rg;
[0087] 当测定摄像头的姿态矩阵Rg具体是采用移动通信终端的旋转矢量传感器来测定 时,所述测定摄像头的姿态矩阵Rg具体包括:
[0088] 若检测到旋转矢量传感器只有3个数据values[0] ,values[l] ,values[2],
[0089] 则采用W下公式得到
[0090] qi = values[0] ,q2 = values[l] ,q3 = values[2],
[0091]
[0092] 若检测到旋转矢量传感器有4个数据values[0] ,values。] ,values[2] ,values [3]
[0093] 则采用W下公式得到
[0094] qi = values[0] ,q2 = values[l] ,q3 = values[2] ,qo = values[3]
[00巧]则RgO矩阵为:
[0096]
;
[0097] 根据移动通信终端旋转矢量传感器坐标系定义的不同,得到Rg = RgoRLT,其中RlT是 局部坐标系与旋转矢量传感器坐标系之间的变换矩阵;当测定摄像头的姿态矩阵Rg具体是 采用移动通信终端的巧螺仪、加速度传感器与磁力传感器来测定时,所述测定摄像头的姿 态矩阵Rg具体包括:
[0098] 步骤1采用移动通信终端的加速度传感器,W及磁力计传感器或方向传感器来测 定Rg的初值或采用移动通信终端的旋转矢量传感器来测定Rg的初值,将Rg转换成4元数qO, ql,q2,q3作为W下步骤2-7迭代的初值;
[0099] 步骤2设定exInt,eyInt,ezInt原始值为0,即exInt = 0,eyInt = 0,ezInt = 0;
[0100]步骤3根据接收到的磁力计矢量{mx,my,mz},得到正确磁场矢量{wx,wy,wz},先将 矢量{mx,my,mz}替换成将其单位化W后的矢量
得到局部坐 标系下磁场的正确的磁场方向矢量{bx,0,bz}
,bz = hz;其中:hx = 2Xmx X (0.5-q2 X q2-q3 X q3)+2 Xmy X (ql X q2-q0 X q3)+2 Xmz X (ql X q3+q0 X q2);
[0101 ] hy = 2 Xmx X (ql Xq^q0Xq3)+2XmyX(0.5-qlXql-q3Xq3)+2XmzX(q2Xq3- qOXql);
[0102] hz = 2XmxX(qlX q3-q0 X q2)+2 Xmy X (q2 X q3+q0 Xql)+2XmzX(0.5-ql X ql- q2Xq2);
[0103] 再转换到正确磁场矢量{wx,wy,wz},其中
[0104] wx = 2 Xbx X (0.5-q2 X q2-q3 X q3)+2 Xbz X (ql X q3-q0 X q2);
[010引 wy = 2 Xbx X (ql X q2-q0 X q3)+2 Xbz X (qO X ql+q2 X q3);
[0106] wz = 2 Xbx X (qO X q2+ql X q3)+2 Xbz X (0.5-ql X ql-q2 X q2);
[0107] 步骤4根据接收到的加速度传感器数据ax,ay,az,和{wx,wy,wz}得到误差矢量 {ex, ey, ez},并计算其累计值exint,eyInt,ezint;
[0108] 具体为:先将矢量{ax, ay, az}替换成将其单位化W后的矢量
[0109]
[0110] 计算vx = 2*(ql*q3-q0*q2);vy = 巧(q0*ql+q2*q3);vz = q0*q0-ql*ql-q2*q化q3* q3;
[0111] ex = (ay X vz-az X vy) + (my X wz-mz X wy);
[0112] ey = (az X vx-ax X vz) + (mz Xwx-mx Xwz);
[0113] ez = (axXvy-ayXvx) + (mxXwy-myXwx);
[0114] 计算误差累计值:将exint替换为exint+ex X Ki ; eylnt替换为eyint+ey X Ki ; ezint替换为ezint+ez XKi ;其中Ki为一可调节的正系数,Ki在0.00001至0.5中任意选取;
[0115] 若没有磁力计,则步骤3不执行,同时将该步骤4中的
[0116] GX= (ay X vz-az X vy) +(my Xwz-mz Xwy);
[0117] ey = (az X vx-ax X vz) + (mz Xwx-mx Xwz);
[0118] ez = (axXvy-ayXvx) + (mxXwy-myXwx);
[0119] 改为
[0120] ex = ay X vz_az X vy;
[0121] ey = az X vx-ax X VZ;
[0122] ez = ax X vy-ay X vx ;
[0123] 步骤5根据误差矢量{ex,ey,ez}及其累计值纠正巧螺仪数据{gx0,gy0,gz0}
[0124] 假设移动通信终端读出当前的一组巧螺仪数据为{gx0,gy0,gz0},gx = gx0+KpX ex+exint; gy = gyO+Kp X 巧+e}flnt ;gz = gzO+Kp X ez+ezint;其中Kp为一可调节的正系数, Kp在0.0 OOOOl至20.0中任意选取;
[0125] 步骤6根据巧螺仪数据gx,gy,gz修正4元数
[0126] 随着不断接收到巧螺仪数据gx,gy,gz,对4元数按如下方式修正:
[0127] qo替换为q〇+(-qi X gx-q2 X gy-q3 X gz) X halfT; qi替换为qi+(qo X gx-q3 X gy+Q2 X gz) X halfT; Q2替换为Q2+(q3 X gx+qo X g5T-qi X gz) X halfT; Q3替换为q3+(-q2 X gx+qi X gy+ qoXgz) XhalfT;其中halfT为修正周期,
[0128] halfT = 0.OOOOl ~-10.0;
[0129] 步骤7输出Rg矩阵和4元数
[0130] 将4元数{9〇,91,92,93}单位化成扣
渝出;
[0131] 4元数转Rg矩阵公式如下
[0132]
[0133] 步骤8回到步骤3继续接收巧螺仪运动数据更新姿态4元数qo~Q3,在循环的过程中 每次到步骤7都能输出当前的Rg矩阵和4元数。
[0134] 在本发明实施例一中,当SlOl具体为多个移动通信终端通过摄像头拍摄多张物体 或场景的照片,或者,一个移动通信终端通过摄像头拍摄多张物体或场景的照片,S103具体 为服务器W所述照片和拍摄时摄像头的姿态数据作为=维重建的输入合成=维模型,生成 S维模型数据时,S103具体包括W下步骤:
[0135] 步骤1.构建方程AX = O
[0136] 将0号移动通信终端的位置,或者拍摄0号照片时移动通信终端的位置,XsO = YsO = ZsO = O设定为原点
[0137] 解向量X= [Xsi Ysi Zsi. . .XsC-I YsC-I ZsC-I Xo Yo Zo Xi Yi Zi. . .Xn-I Yn-I Zn-i]t [013引其中C-I是移动通信终端的个数或者是照片的数量,Xo Yo Zo Xi Y iZi. . .Xn-I Yn-I Zn-I是照片集中找到的N个同名像点对应的S维模型点云的坐标,一共3 (C-I )+3N个未知数
[0139] 构建矩阵
[0140]
[0141 ] 共中化巧巧1/广巧X了拉的脫斤下毁
[0142] U(ij)是一个3x1的子阵
[0143] U(ij) = [U(ij)i U(ij)2 U(ij)3]
[0144] V(ij) = [V(ij)i V(ij)2 V(ij)3]
[0145] U(ij)i = ;Tc(j)u-:rc(j)3iu,ij U(ij)2 = rc(j)u-:rc(j)32U,ij U(ij)i = ;Tc(j)i:3-:rc(j)3扣,ij
[0146] V(ij)i = rc(j)2广rc(j)3iv,ij V(ij)2 = rc(j)2厂rc(j)32V,ij V(ij)3 = rc(j)2:3-rc(j)33V,ij
[0147] 其中
[0148] reWab是指第j个照片的摄像头的姿态矩阵的a行b列
[0149]
[0150]
[0151] Uc(U)是第i个点在第j个照片上的像点坐标,
[0152] (cjx,cw)是移动通信终端j主点坐标,。是移动通信终端j的焦距;
[0153] 矩阵A中的省略号全部填写系数0
[0154] 步骤2.求方程的合理解
[01巧]对A矩阵进行SVD分解A = UWyT
[0156] 将W按从左上到右下,从大到小顺序排列,对角阵W的最右下角一个值如果是0,运 个0其实对应了一组类似于X = Xs Y = Ys Z = Zs的不合理解。
[0157] 进一步按照W从右下往左上方向做逐个检查,当发现W对角线上有非零(A〉1(TW,即 代码里面〉Ie-IO)特征值A的时候停止,A正是正确解的误差值,A对应V中的列向量V就是方 程的合理解X,X包含了移动通信终端的坐标和=维模型点云的坐标;
[0158] 根据移动通信终端的坐标和=维模型点云的坐标进行点云加密、点云构网、铺设 纹理过程,即可生成=维模型数据。
[0159] 步骤3.光束法平差优化(此步骤可选)
[0160] W解出来的移动通信终端位置信息,点云坐标信息
[0161] X=[Xsi Ysi Zsi...XsC-I YsC-I ZsC-I Xo Yo Zo Xi Yi Zi...Xn-i Yn-i Zn-i]^
[0162] 再加上传感器测得的摄像头的姿态数据Ri作为LM光束法平差迭代的初值,最终优 化得到更精确的移动通信终端位置信息和点云坐标信息。
[0163] 在本发明实施例一中,当S102仅将照片通过网络发送至服务器时,步骤S103具体 可W为:
[0164] 服务器W所述照片作为=维重建的输入合成=维模型,生成=维模型数据和摄像 头的虚拟姿态,由于摄像头的虚拟姿态是根据合成的=维模型确定的姿态,是相对坐标系 下相对于=维模型点云正确的位置和姿态,和移动通信终端实际测定的世界坐标系下的姿 态很可能不一致,因此步骤S103还包括W下步骤:
[0165] 服务器计算=维重建得到的摄像头的虚拟姿态与移动通信终端实际测定的摄像 头姿态之间的旋转转换关系;
[0166] 所述服务器将生成的=维模型数据通过网络发送至所述移动通信终端具体为:
[0167] 服务器将生成的=维模型数据和所述旋转转换关系通过网络发送给移动通信终 端;
[0168] 所述移动通信终端根据=维模型数据进行=维可视化擅染具体为:
[0169] 移动通信终端根据所述=维模型数据和旋转转换关系进行=维模型擅染显示,运 样即可保留=维模型相对于地球的原始姿态进行擅染显示;
[0170] 或者,
[0171] 所述服务器W所述照片作为=维重建的输入合成=维模型,生成=维模型数据具 体为:
[0172] 服务器W所述照片作为=维重建的输入合成=维模型,生成=维模型数据和摄像 头的虚拟姿态;
[0173] 所述服务器将生成的=维模型数据通过网络发送至所述移动通信终端具体为:
[0174] 服务器将生成的=维模型数据、=维重建得到的摄像头的虚拟姿态与移动通信终 端实际测定的摄像头姿态通过网络发送至所述移动通信终端;
[0175] 所述移动通信终端根据=维模型数据进行=维可视化擅染具体为:
[0176] 移动通信终端计算=维重建得到的摄像头的虚拟姿态与移动通信终端实际测定 的摄像头姿态之间的旋转转换关系;
[0177] 移动通信终端根据所述=维模型数据和所述旋转转换关系进行=维模型擅染显 示,运样即可保留=维模型相对于地球的原始姿态进行擅染显示;
[017引或者,
[0179] 所述服务器W所述照片作为=维重建的输入合成=维模型,生成=维模型数据具 体为:
[0180] 服务器W所述照片作为=维重建的输入合成=维模型,生成=维模型数据和摄像 头的虚拟姿态;
[0181] 服务器计算=维重建得到的摄像头的虚拟姿态与移动通信终端实际测定的摄像 头姿态之间的旋转转换关系;
[0182] 服务器根据所述旋转转换关系将=维重建得到的=维模型数据进行纠正,使之对 应的是移动通信终端实际测定的摄像头姿态。
[0183] 具体实施方案如下:首先测定得到虚拟姿态R到移动通信终端实际测定的摄像头 姿态Rg之间的转换关系是AR,即RAR=Rg.S维模型得到的所有点坐标平均值或者重屯、坐 标为T,那么对于第1\个=维点Xi,可通过公式Xi'=ART(Xi-T)进行纠正。
[0184] 在本发明实施例一中,在步骤Sl01之后,所述方法还可W包括W下步骤:
[0185] 移动通信终端为每张拍摄的照片绑定拍摄时摄像头的位置数据。
[0186] 此时,S102具体为:将所述照片和拍摄时摄像头的位置数据通过网络发送至服务 器。
[0187] S103具体为:服务器W所述照片和拍摄时摄像头的位置数据作为=维重建的输入 合成=维模型,生成=维模型数据。利用拍摄时摄像头的位置数据可保证=维重建的结果 更准确,速度更快。
[018引在本发明实施例一中,步骤S106具体也可W为:
[0189] 通过移动通信终端内置的重力计、磁力计或者巧螺仪传感器检测到的姿态数据, 在移动通信终端进行虚拟现实模式的=维模型的可视化漫游和擅染观察。保证移动通信终 端所朝方向看到的=维模型与实际拍摄的=维模型方向保持一致。具体为:利用姿态数据 在化e址S,0penGL,或者化ity3d引擎中设置S维空间的观察位姿;实现方式包括手机屏幕 观察模式、AR摄像头模式、V即S镜,VR头盎观察模式。
[0190] 在本发明实施例中,由于移动通信终端通过摄像头拍摄照片后通过网络发送至服 务器,由服务器进行=维重建并将生成的=维模型数据通过网络发送至所述移动通信终 端,再由移动通信终端根据=维模型数据进行=维可视化擅染。因此,实现了在手机等移动 通信终端上任意角度,任意位置拍摄物体或场景、上传照片、进而合成,并下载擅染=维模 型的全自动服务流程,本发明利用网络通信技术既发挥了便携设备的小巧灵活的优势,又 能利用后台服务器完成大规模高质量的=维重建运算。由于移动通信终端的优势是轻便灵 活、有传感器信息,因此移动通信终端,如手机,PAD、无人机上实现S维重建具有广阔的应 用前景。另外,由于采用移动通信终端的加速度传感器,W及磁力计传感器或方向传感器来 测定摄像头的姿态信息W辅助进行=维重建,因此不仅能加快=维重建的计算速度,而且 能得到更高质量更高精度的=维模型和=维场景。再者,由于计算=维重建得到的摄像头 的虚拟姿态与移动通信终端实际测定的摄像头姿态之间的旋转转换关系,根据=维模型数 据和旋转转换关系进行=维模型擅染显示,运样可W更好地进行=维模型和=维场景的擅 染、漫游、避免出现很磐脚的观察角度,传统技术生成=维模型只能得到模型点相对于移动 通信终端的位置和姿态,丢失了移动通信终端的姿态信息,而本发明利用了移动通信终端 相对于地球的姿态,不仅能还原=维模型还能得到模型相对于地球姿态和方位的正确性。
[0191] 实施例二:
[0192] 请参阅图2,本发明实施例二提供的移动通信终端包括:
[0193] 拍摄模块11,用于移动通信终端通过摄像头拍摄至少一张物体或场景的照片;
[0194] 第一发送模块12,用于移动通信终端将所述照片通过网络发送至服务器,W由服 务器W所述照片作为=维重建的输入合成=维模型,生成=维模型数据,并由服务器将生 成的=维模型数据通过网络发送至所述移动通信终端;
[01M]接收模块13,用于所述移动通信终端接收所述=维模型数据;
[0196] 擅染模块14,用于移动通信终端根据=维模型数据进行=维可视化擅染。
[0197] 在本发明实施例二中,拍摄模块11具体用于一个移动通信终端通过摄像头拍摄一 张或多张物体或场景的照片,或者,多个移动通信终端通过摄像头拍摄多张物体或场景的 照片。
[0198] 在本发明实施例二中,所述移动通信终端还包括:
[0199] 绑定模块,用于移动通信终端为每张拍摄的照片绑定拍摄时摄像头的姿态数据; 此时,第一发送模块12具体用于将所述照片和拍摄时摄像头的姿态数据通过网络发送至服 务器,W由服务器W所述照片和拍摄时摄像头的姿态数据作为=维重建的输入合成=维模 型,生成S维模型数据。
[0200] 实施例立:
[0201] 请参阅图3,本发明实施例=提供的服务器包括:
[0202] 合成模块21,用于服务器W照片作为=维重建的输入合成=维模型,生成=维模 型数据,所述照片是由移动通信终端通过摄像头拍摄有至少一张物体或场景的照片,并由 移动通信终端将所述照片通过网络发送至服务器的;
[0203] 第二发送模块22,用于服务器将生成的=维模型数据通过网络发送至所述移动通 信终端,W由移动通信终端根据=维模型数据进行=维可视化擅染。
[0204] 在本发明实施例=中,当所述移动通信终端通过摄像头拍摄至少一张物体或场景 的照片具体为多个移动通信终端通过摄像头拍摄多张物体或场景的照片时,所述服务器还 包括:
[0205] 汇总模块,用于将多个移动通信终端拍摄的多张物体或场景的照片进行汇总。
[0206] 在本发明实施例=中,当所述移动通信终端通过摄像头拍摄至少一张物体或场景 的照片具体为:一个移动通信终端通过摄像头拍摄一张物体或场景的照片时,所述合成模 块21具体用于:
[0207] 服务器W所述照片作为=维重建的输入,采用深度机器学习方法,先通过大量图 像像素数据作为输入与其对应的深度数据作为输出的已知样本进行神经网络模型训练,得 到神经网络模型A之后,再将单幅图像的像素 X周边的分布作为神经网络模型A的输入,输出 就是像素 X对应的深度信息d;根据大量像素 X的坐标u,v和其对应的神经网络模型A得到的 深度数据dx得到=维模型点云;然后经过点云加密、点云构网、铺设纹理过程,生成=维模 型数据。
[0208] 在本发明实施例=中,当所述移动通信终端通过摄像头拍摄至少一张物体或场景 的照片的步骤中拍摄的物体或场景的照片是多张时,所述合成模块21具体用于:
[0209] 服务器W所述照片作为=维重建的输入,经过同名点匹配、移动通信终端虚拟摄 像头位姿模型构建、生成点云、点云加密、点云构网、铺设纹理过程,生成=维模型数据。所 述=维模型数据包括=维模型文件和纹理文件。
[0210] 在本发明实施例=中,合成模块21具体用于服务器W所述照片和拍摄时摄像头的 姿态数据作为=维重建的输入合成=维模型,生成=维模型数据。
[0211] 本领域普通技术人员可W理解实现上述实施例方法中的全部或部分步骤是可W 通过程序来指令相关的硬件来完成,所述的程序可W存储于一计算机可读取存储介质中, 所述的存储介质,如R0M/RAM、磁盘、光盘等。
[0212] W上所述仅为本发明的较佳实施例而已,并不用W限制本发明,凡在本发明的精 神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【主权项】
1. 一种移动通信终端实现三维重建的方法,其特征在于,所述方法包括: 移动通信终端通过摄像头拍摄至少一张物体或场景的照片; 移动通信终端将所述照片通过网络发送至服务器,以由服务器以所述照片作为三维重 建的输入合成三维模型,生成三维模型数据,并由服务器将生成的三维模型数据通过网络 发送至所述移动通信终端; 所述移动通信终端接收所述三维模型数据; 移动通信终端根据三维模型数据进行三维可视化渲染。2. 如权利要求1所述的方法,其特征在于,所述移动通信终端通过摄像头拍摄至少一张 物体或场景的照片具体为:一个移动通信终端通过摄像头拍摄一张或多张物体或场景的照 片,或者,多个移动通信终端通过摄像头拍摄多张物体或场景的照片; 当所述移动通信终端通过摄像头拍摄至少一张物体或场景的照片具体为多个移动通 信终端通过摄像头拍摄多张物体或场景的照片时,所述移动通信终端将所述照片通过网络 发送至服务器之后,所述方法还包括: 服务器将多个移动通信终端拍摄的多张物体或场景的照片进行汇总。3. 如权利要求2所述的方法,其特征在于,当所述移动通信终端通过摄像头拍摄至少一 张物体或场景的照片具体为:一个移动通信终端通过摄像头拍摄一张物体或场景的照片 时,所述服务器以所述照片作为三维重建的输入合成三维模型,生成三维模型数据具体包 括: 服务器以所述照片作为输入,采用深度机器学习方法,先通过大量图像像素数据作为 输入与其对应的深度数据作为输出的已知样本进行神经网络模型训练,得到神经网络模型 A之后,再将单幅图像的像素 X周边的分布作为神经网络模型A的输入,输出就是像素 X对应 的深度信息d;根据大量像素 X的坐标u,v和其对应的神经网络模型A得到的深度数据dx得到 三维模型点云;然后经过点云加密、点云构网、铺设纹理过程,生成三维模型数据。4. 如权利要求2所述的方法,其特征在于,当所述移动通信终端通过摄像头拍摄至少一 张物体或场景的照片的步骤中拍摄的物体或场景的照片是多张时,所述服务器以所述照片 作为三维重建的输入合成三维模型,生成三维模型数据具体包括: 服务器以所述照片作为三维重建的输入,经过同名点匹配、移动通信终端虚拟摄像头 位姿模型构建、生成点云、点云加密、点云构网、铺设纹理过程,生成三维模型数据。5. 如权利要求1或2所述的方法,其特征在于,在所述移动通信终端通过摄像头拍摄至 少一张物体或场景的照片之后,所述方法还包括: 移动通信终端为每张拍摄的照片绑定拍摄时摄像头的姿态数据; 所述移动通信终端将所述照片通过网络发送至服务器具体为:将所述照片和拍摄时摄 像头的姿态数据通过网络发送至服务器; 所述服务器以所述照片作为三维重建的输入合成三维模型,生成三维模型数据具体 为:服务器以所述照片和拍摄时摄像头的姿态数据作为三维重建的输入合成三维模型,生 成三维模型数据。6. 如权利要求5所述的方法,其特征在于,当所述移动通信终端通过摄像头拍摄至少一 张物体或场景的照片具体为多个移动通信终端通过摄像头拍摄多张物体或场景的照片,或 者,一个移动通信终端通过摄像头拍摄多张物体或场景的照片时,所述服务器以所述照片 和拍摄时摄像头的姿态数据作为三维重建的输入合成三维模型,生成三维模型数据具体包 括: 步骤1.构建方程AX=O 将〇号移动通信终端的位置,或者拍摄〇号照片时移动通信终端的坐标,XsQ = YsQ = Zs〇 = 〇设定为原点 中C-I是移动通信终端的个数或者是照片的数量,Xo Yo Zo X1 Y1 Z1 ... XhYh 2^是照 片集中找到的N个同名像点对应的三维模型点云的坐标,一共3 (C-I )+3N个未知数 构建矩阵其中m是第i个点对应的照片个数 U(ij)是一个3x1的子阵 U(ij) = [U(ij)i U(ij)2 U(ij)3] V(ij) = [V(ij)i V(ij)2 V(ij)3] U(i j)l = rc(j)ll_rc(j)3lU,ij u(i j)2 = rc(j)12-rc(j)32U,ij u(i j)l = rc(j)13-rc(j)33U,ij V(i j)l = rc(j)21_rc(j)3lV,ij V(i j)2 = rc(j)22_rc(j)32V,ij V(i j)3 = rc(j)23_rc(j)33V,ij 其中 r&w是指第j个照片的摄像头的姿态矩阵的a行b列Uc (i j)定弟IT H仕弟J T照斤丄tf」像点坐标, (Cjx, Cjy)是移动通彳目终端j主点坐标,fj是移动通彳目终端j的焦距; 矩阵A中的省略号全部填写系数0 步骤2.求方程的合理解 对A矩阵进行SVD分解A = UWVt 将W按从左上到右下,从大到小顺序排列,对角阵W的最右下角一个值如果是0,这个0其 实对应了一组类似于X = Xs Y = Ys Z = Zs的不合理解; 进一步按照W从右下往左上方向做逐个检查,当发现W对角线上有非零特征值λ的时候 停止,λ正是正确解的误差值,λ对应V中的列向量V就是方程的合理解Χ,Χ包含了移动通信终 端的坐标和三维模型点云的坐标; 根据移动通信终端的坐标和三维模型点云的坐标进行点云加密、点云构网、铺设纹理 过程,即可生成三维模型数据。7. 如权利要求1所述的方法,其特征在于,所述服务器以所述照片作为三维重建的输入 合成三维模型,生成三维模型数据具体为: 服务器以所述照片作为三维重建的输入合成三维模型,生成三维模型数据和摄像头的 虚拟姿态; 服务器计算三维重建得到的摄像头的虚拟姿态与移动通信终端实际测定的摄像头姿 态之间的旋转转换关系; 服务器根据所述旋转转换关系将三维重建得到的三维模型数据进行纠正,使之对应的 是移动通信终端实际测定的摄像头姿态; 或者, 所述服务器以所述照片作为三维重建的输入合成三维模型,生成三维模型数据具体 为: 服务器以所述照片作为三维重建的输入合成三维模型,生成三维模型数据和摄像头的 虚拟姿态; 服务器计算三维重建得到的摄像头的虚拟姿态与移动通信终端实际测定的摄像头姿 态之间的旋转转换关系; 所述服务器将生成的三维模型数据通过网络发送至所述移动通信终端具体为: 服务器将生成的三维模型数据和所述旋转转换关系通过网络发送给移动通信终端; 所述移动通信终端根据三维模型数据进行三维可视化渲染具体为: 移动通信终端根据所述三维模型数据和旋转转换关系进行三维模型渲染显示,这样即 可保留三维模型相对于地球的原始姿态进行渲染显示; 或者, 所述服务器以所述照片作为三维重建的输入合成三维模型,生成三维模型数据具体 为: 服务器以所述照片作为三维重建的输入合成三维模型,生成三维模型数据和摄像头的 虚拟姿态; 所述服务器将生成的三维模型数据通过网络发送至所述移动通信终端具体为: 服务器将生成的三维模型数据、三维重建得到的摄像头的虚拟姿态与移动通信终端实 际测定的摄像头姿态通过网络发送至所述移动通信终端; 所述移动通信终端根据三维模型数据进行三维可视化渲染具体为: 移动通信终端计算三维重建得到的摄像头的虚拟姿态与移动通信终端实际测定的摄 像头姿态之间的旋转转换关系; 移动通信终端根据所述三维模型数据和所述旋转转换关系进行三维模型渲染显示,这 样即可保留三维模型相对于地球的原始姿态进行渲染显示。8. -种服务器实现三维重建的方法,其特征在于,所述方法包括: 服务器以照片作为三维重建的输入合成三维模型,生成三维模型数据,所述照片是由 移动通信终端通过摄像头拍摄有至少一张物体或场景的照片,并由移动通信终端将所述照 片通过网络发送至服务器的; 服务器将生成的三维模型数据通过网络发送至所述移动通信终端,以由移动通信终端 根据三维模型数据进行三维可视化渲染。9. 一种移动通信终端,其特征在于,所述移动通信终端包括: 拍摄模块,用于移动通信终端通过摄像头拍摄至少一张物体或场景的照片; 第一发送模块,用于移动通信终端将所述照片通过网络发送至服务器,以由服务器以 所述照片作为三维重建的输入合成三维模型,生成三维模型数据,并由服务器将生成的三 维模型数据通过网络发送至所述移动通信终端; 接收模块,用于所述移动通信终端接收所述三维模型数据; 渲染模块,用于移动通信终端根据三维模型数据进行三维可视化渲染。10. -种服务器,其特征在于,所述服务器包括: 合成模块,用于服务器以照片作为三维重建的输入合成三维模型,生成三维模型数据, 所述照片是由移动通信终端通过摄像头拍摄有至少一张物体或场景的照片,并由移动通信 终端将所述照片通过网络发送至服务器的; 第二发送模块,用于服务器将生成的三维模型数据通过网络发送至所述移动通信终 端,以由移动通信终端根据三维模型数据进行三维可视化渲染。
【文档编号】G06T17/00GK106023302SQ201610296741
【公开日】2016年10月12日
【申请日】2016年5月6日
【发明人】刘进, 陶重芝
【申请人】刘进
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1