技术领域
[0001] 本实用新型属于电子测绘设备技术领域,具体涉及一种3D扫描手持终端。
相关背景技术
[0002] 在物资存储、转运过程中,针对大型货物的尺寸、形状等参数一般通过手动测量、主观描述等形式进行,工作效率低下,耗时耗力;3D成像技术虽然已经普及,但在生产生活中的小型化、手持化不够,在物流领域,亟需一种可以手持的便携工具,该工具可以帮助工作人员快速测量货物的大小、尺寸等参数,以便于后续的物资转运方案设计、物资储存布局等工作。实用新型内容
[0003] 有鉴于此,本实用新型提出一种3D扫描手持终端,设置壳体、摄像机、图像处理装置、按键部、显示屏以及把手,将3D测绘的各装置集成为一手持终端,使用者基于摄像机拍摄被测物的不同位姿的平面视图,图像处理装置基于不同位姿的平面视图绘制出三维模型;相对于传统技术的手动测量、主观描述,本实用新型能够大大提升被测物体的3D测绘精度,测绘灵活度高且测绘效率高。
[0004] 为了实现上述技术目的,本实用新型所采用的具体技术方案为:
[0005] 一种3D扫描手持终端,用于手持测量被测物并建立被测物的三维模型,包括:
[0006] 壳体;
[0007] 摄像机,安装在所述壳体上,用于拍摄所述被测物的平面视图;
[0008] 图像处理装置,安装在所述壳体内,与所述摄像机通信,基于所述被测物不同位姿的平面视图构建所述被测物的三维模型;
[0009] 按键部,设置在所述壳体的第一侧面,用于手动控制所述摄像机;
[0010] 显示屏,与所述图像处理装置通信,用于显示所述平面视图;
[0011] 手持把手,安装在所述壳体的第二侧面。
[0012] 进一步的,所述摄像机为透视相机;所述透视相机包括至少两组光轴相互平行的感光镜头。
[0013] 进一步的,所述3D扫描手持终端还包括激光测距仪;所述激光测距仪与所述图像处理装置通信。
[0014] 进一步的,所述激光测距仪与所述摄像机处于所述壳体的第三侧面上,所述第三侧面与所述第二侧面垂直设置。
[0015] 进一步的,所述图像处理装置与所述显示屏为一智能手机的数字处理器及触摸屏。
[0016] 进一步的,所述壳体上设置有手机卡槽;所述智能手机在所述手机卡槽内时,所述显示屏与所述第二侧面位于所述壳体的相对两侧。
[0017] 进一步的,所述第一侧面与所述第二侧面位于所述壳体的相对两侧。
[0018] 进一步的,所述壳体上还设置有数据接口通孔;所述数据接口通孔便于所述智能手机的数据接口露出所述壳体。
[0019] 进一步的,所述3D扫描手持终端还包括第二手持把手;所述第二手持把手设置在所述第二侧面。
[0020] 采用上述技术方案,本实用新型能够带来以下有益效果:
[0021] 1、加快物流运输、货物存储工作中货物大小、形状、尺寸等数据的测量,使用者仅需手持设备,将设备的摄像头对准待测货物,设备便可测量出货物的长宽高数据并加载到数据管理终端,并生成3D模型图在显示端,大大减轻了工作人员的负担,加快了工作效率;
[0022] 2.目前将3D扫描技术和测量成像技术集成化、小型化、手持化并应用到物流领域的产品较少,本实用新型的应用可以促进物流领域的自主化、自动化发展;具备良好的商业应用前景;
[0023] 3.设备具有良好的兼容性,终端基体一般为常用的电子设备,可以实现网络互联、数据共享、数据传输等功能,实现设备功能扩展,支持多端口进行设备互联、支持手持设备与笔记本等大型系统相连,以便于其它工作的展开。
具体实施方式
[0030] 下面结合附图对本实用新型实施例进行详细描述。
[0031] 在本实用新型的一个实施例中,提出一种3D扫描手持终端,用于手持测量被测物并建立被测物的三维模型,如图1‑3所示,包括:
[0032] 壳体1;
[0033] 摄像机,安装在所述壳体1上,用于拍摄所述被测物的平面视图;
[0034] 图像处理装置,安装在所述壳体1内,与所述摄像机通信,基于所述被测物不同位姿的平面视图构建所述被测物的三维模型;
[0035] 按键部5,设置在所述壳体1的第一侧面,用于手动控制所述摄像机;
[0036] 显示屏6,与所述图像处理装置通信,用于显示所述平面视图;
[0037] 手持把手,安装在所述壳体1的第二侧面。
[0038] 本实施例的壳体1由塑胶等高分子材料组成的结构件,内部集成便于摄像机、按键部5、图像处理装置相互数据交互的电路以及连接设备。
[0039] 本实施例在使用时,根据三维成像原理,图像处理装置需要最少收到货物(被测物)的三视图(主视图、俯视图、侧视图),根据三视图便可以生成货物的立体数据,对于三视图的成像要求,一是需要手持本实施例的3D扫描手持终端锁定货物后,由操作员从3个立体角大于90°的方位进行拍照,为了保证每次成像的清晰准确度,成像镜头采用大圆环设计,高分辨率配置,保证成像的全面清晰。
[0040] 本实施例的按键部5可以对摄像机的焦距、光圈进行调整,以便对被测物的清晰成像。
[0041] 在本实施例中,所述摄像机为透视相机;所述透视相机包括至少两组光轴相互平行的感光镜头。
[0042] 在本实施例中,所述3D扫描手持终端还包括激光测距仪;所述激光测距仪与所述图像处理装置通信。本实施例的激光测距仪与摄像机可设置在同一平面,用以建立平面视图的尺寸基准,以便精确描述货物在萨比为模型中的尺寸。
[0043] 所述激光测距仪与所述摄像机处于所述壳体1的第三侧面上,所述第三侧面与所述第二侧面垂直设置。
[0044] 在一个实施例中,所述图像处理装置与所述显示屏6为一智能手机的数字处理器及触摸屏。壳体1内设置有用于卡持智能手机的卡槽、卡持部以及数据连接摄像机的数据插口;此处基于摄像机、智能手机的具体型号进行尺寸及插口进行常规规划,本实施例不作限定。
[0045] 为了便于操作,如图1‑3所示,本实施例的所述壳体1上设置有手机卡槽;所述智能手机在所述手机卡槽内时,所述显示屏6与所述第二侧面位于所述壳体1的相对两侧。所述第一侧面与所述第二侧面位于所述壳体1的相对两侧。
[0046] 为了便于三维模型的数据导出,如图1、2所示,所述壳体1上还设置有数据接口7通孔;所述数据接口7通孔便于所述智能手机的数据接口7露出所述壳体1。
[0047] 所述3D扫描手持终端还包括第二手持把手;所述第二手持把手设置在所述第二侧面。
[0048] 在一些实施例中,图像处理装置不限于智能手机、照相机、3D扫描仪,将已有的成像平台作为基础,加装相应的功能软件和硬件,进行改装实验,以达到上述实施例的预期效果,具体工作流程如图4所示。
[0049] 以下就本实用新型的图像处理装置所集成的相应功能软件以及其他硬件进行说明。
[0050] 1.三维框架
[0051] 应用前端主体使用Vue.js框架,并在此基础上使用Three.js框架封装的WebGL功能实现三维部分主体,可方便程序跨平台使用。WebGL需要图形学知识,如果直接使用必须全面了解着色器语法并且自己编写顶点着色器。Three.js解决了WebGL开发复杂的难题,它封装了场景、相机、几何、3D模型加载器、灯光、材质、着色器、动画、粒子、数学工具等概念。使用Three.js可以便捷的跳过这些底层,让开发人员可以通过写传统js编写图形应用程序。
[0052] 2.摄像机
[0053] 在Three.js常用两种类型的相机:正交(orthographic)相机、透视(perspective)相机。一般情况下为了模拟人眼本实施例的摄像机采用透视相机;正交镜头的特点是,物品的渲染尺寸与它距离镜头的远近无关。也就是说在场景中移动一个物体,其大小不会变化。正交镜头适合2D场景,透视镜头则是模拟人眼的视觉特点,距离远的物体显得更小。透视镜头通常更适合3D渲染。
[0054] 3.灯光
[0055] 在Three.js中光源是必须的,同时灯光也是场景中必须的物体,计算机通过计算光线的反射渲染出整个环境。我们使用AmbientLight(环境光)、PointLight(点光)、SpotLight(聚光)、DirectionLight(平行光)、AreaLight(面光源)以及光源的各种颜色,静态、动态计算等特性营造生动的物资转运环境,最大限度提高真实性。
[0056] 4.网格
[0057] 在计算机的世界里,一条弧线是由有限个点构成的有限条线段连接得到的。当线段数量越多,长度就越短,当达到你无法察觉这是线段时,一条平滑的弧线就出现了。计算机的三维模型也是类似的。只不过线段变成了平面,普遍用三角形组成的网格来描述。我们把这种模型称之为Mesh模型。在Three.js的世界中,材质(Material)+几何体(Geometry)就是一个mesh。
[0058] 5.三维模型
[0059] 本实用新型实施例通过blender等建模软件进行货物三维模型的搭建,使用Three.js加载器实现模型加载,把文本/二进制的模型文件转化为Three.js对象结构,每个加载器理解某种特定的文件格式。比如JSON/OBJ/MTL/STL等。Json可以通过blender或者3DsMax导出,他们有各自的exportjson的插件,在软件中处理好模型贴图和动画以后,导出json文件和相应的贴图文件给到前端即可。
[0060] 6.实现
[0061] 在JavaScript中编写对象文件,并将其链接至对应的模型文件之上。对象文件包括模型的长宽高,材质,标签,备注等属性,等待场景加载完毕后,页面将其渲染在屏幕上,随时准备接收物资转运承载算法处理后的位置信息并实时更新。通过接收用户在页面的操作实时更新物体的各项属性,并进行新的方案规划。
[0062] 一、智能测距:
[0063] 本实用新型实施例的3D扫描手持终端配置一个激光测距仪,进行测距计算。
[0064] 二、数值计算:
[0065] 数值计算基于最原始的相似原理和人眼成像原理,根据感光区域像的大小和镜头与感光区的距离,物体距离镜头的距离分析(第一步智能测距获得),利用两个形状相似则各边大小比例相同的原理,计算出真实被测物的大小。
[0066] 三、3D建模:
[0067] 本实用新型实施例在显示屏6上的界面显示与功能实现是基于uni‑app的前端框架开发的。uni‑app是一个使用Vue.js开发跨平台应用的前端框架,编写一套代码,可编译到Android,iOS,H5,小程序等多个平台,与ReactNative、weex、Flutter以及几款移动跨平台APP开发平台相比,拥有运行速度快、UI体验原生,插件多,文档丰富、开发效率高,易扩展和维护等优越性能,具有很强的竞争优势。uni‑app可将代码编译到多个平台。物资可视化系统软件则是编译到H5的平台上最终在网页页面上显示实现。在程序编写过程中采用HTML5+CSS+JavaScript的模式开发,与传统的前端代码编写模式不同,我们将三个不同的模块写入不同的文件中,最终在vue文件引入调用,使程序编写更为简单。根据设计得到的UI设计稿,我们在工程文件wuzi下的page文件夹下创建了home.vue文件,对页面布局框架进行了实现。我们通过各种组件对页面进行了搭建,包括组件view包裹元素内容,text组件编写文本内容,block组件进行列表渲染,input组件形成输入框。首先我们在data中创建一个包含多个对象的数组,在页面的最上方利用block组件通过每个数组对象的索引对对象中不同的元素进行显示,包括:我的任务、手动输入、扫描物资、方案下载、智能生成、方案查看六个部分形成任务栏。在每个部分下都会搭建不同的界面布局,通过在view中对@click点击事件clickModule(index)函数在method中的编写,改变当前索引index为当前点击项目的索引,再通过不同view中的判断当前索引是否为自身对象索引,再通过v‑show得到判断结果,从而实现切换不同界面的功能。
[0068] 以下是本实用新型实施例3D建模与可视化场景的搭建和改进思路
[0069] 在页面下半部分的搭建中是通过在view组件中的class中去使用导入的free.css的文件中的不同渲染样式进行页面渲染。free.css是我们自定义的渲染文件,里面包含了大量的渲染样式,包括布局样式、颜色、字体、间距、点击动画等,还可以从iconfont.css这个css文件中得到我们所需要满意的各种图标,使得界面布局更为美观,效果更为令人满意。通过对.css文件的不断完善,加入更多的需要的渲染样式,可以完成我们所需要实现的效果,用时随着css文件的不断完善,将会使得下一步页面的搭建更加简单方便。uni‑app的官网上包括各种网络资料都有大量的css库提供借鉴参考,文档十分丰富。在完成了整体的页面搭建后,我们还需对软件实现功能与算法进行更深一步的完善。界面中有许多按钮,包括新建数据、扫描导入数据、生成电子表格、加载方案。都涉及到了数据的存储导出,页面生命周期,页面监视等钩子的使用。也涉及到多按钮事件实现函数功能的编写。我们可以在method中对函数进行构造。也可以在js文件中对函数进行统一的编写。我们就可以在多个页面下引入.js文件便可以调用其中的函数,使得一些常用函数更为方便地调用。同时当有大量的数据格式需要调用使用时,为了使得页面的显示更为流畅,我们可以将数据存入到js文件中,通过引用来调用。在wuzi这个uni‑app项目中我们很好地利用了uni‑app的框架优势,将vue、css、js三个文件分开,通过分别调用引入,完成整个软件系统的页面搭建与功能实现。3D动画实现技术实现方面,我们主要使用Python语言进行编程。它具有易扩展、胶水语言、开源的特性。在这里我们主要用到了Matplotlib和NumPy这两个三维可视化和3D绘画库来实现可视化图像和三维形状。并用mayavi库实现3d动态可视化操作。
[0070] 1、3D移动translate3d(x,y,z),使元素在这三个维度中移动,也可以分开写translateX(x),translateY(y),translateZ(z).transform:translateX(100px);//X轴移动
[0071] 2、3D缩放
[0072] scale3d(number,number,number),
[0073] 也可以分开写:scaleX(),scaleY(),scaleZ().
[0074] 3、3D旋转
[0075] rotate3D(x,y,z,angle),指定需要进行旋转的坐标轴
[0076] rotateX(angle)是元素按照X轴旋转。
[0077] rotateY(angle)是元素按照y轴旋转。
[0078] rotateZ(angle)是元素按照z轴旋转。
[0079] 四、数值加载导出:
[0080] 本实用新型实施例采用最基本的数据库管理方案,在图像处理装置安装小型数据管理系统,采取SQL结构化查询语言,对测量数据进行暂时存储,以及通过USB端口与计算机设备进行数据交互。
[0081] 以上所述,仅为本实用新型的具体实施方式,但本实用新型的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本实用新型揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本实用新型的保护范围之内。因此,本实用新型的保护范围应以权利要求的保护范围为准。