3D建模服务提供更高效、专业的3D制作能力,“筑”力开发者
3D建模服务(3D Modeling Kit)是HMS Core在图形图像领域又一技术开放。3D建模产品的定位就是要做快速、简洁、低成本的3D制作能力,并陆续开放给有3D模型、动画游戏制作等能力诉求的开发者。开发者无需特殊硬件(RGBD\LiDAR等)也可以利用拍摄图像之间共视信息匹配,估算出深度信息并完成采集。
3D建模服务已经开放了物体建模的能力,还有平面的材质生成和动作捕捉三大核心能力,接下来还会对人体的建模以及面部捕捉做进一步的能力开放。下面就来为开发者们分享介绍一下。
一、3D物体建模能力
(1)3D物体建模能力介绍
3D物体建模的能力。不同于传统的建模师用3D软件制作模型的方式,或是通过扫描仪进行建模的方式,我们的定位是要做移动端快速的、低成本UDC的生产,只需普通RGB相机,通过拍摄物体不同角度的多张图像,上传到云端,即可实现物体3D几何模型和纹理的自动化生成。硬件要求上,当前我们支持安卓和iOS,WEB APR,形成全终端的支持形态。
对于支持的类别。因为这是通过拍照摄影的方法,所以就要求这个物体的纹理需要尽量丰富、不反光、尺寸中等、刚体,典型物体包括:商品类的毛绒玩具、包、鞋子等,家具类的比如沙发、抱枕,文物类可以是青铜器、石器、木器等。
支持物体尺寸大概是在10立方厘米和2立方米之间,当然物理尺寸更大也是能建模的,只是建模的时间会更长一点。如果建模的图片在1080P的分辨率,整个建模时长大概在5分钟以内,最后输出的格式也是标准的3D模型的格式,包括obj和gltf的格式。最后比较重要的一点,就是支撑这个能力的SDK包只有83K的大小,对于我们APP开发者们来说是非常友好的。
(2)3D物体建模采集方法建议
如果开发者想建一个比较完整的模型,对采集条件还是有一定要求的。
第一,环境。建议将单一的采集物体静置于纯色的平面上。
第二,光照。光照需柔和,避免灯光过暗,或某一面有强烈的阴影。
第三,拍摄。要对焦,覆盖均匀而足够的多视角,含仰视、平视、俯视角度共50张以上,相机移动尽可能缓慢。
第四,采集过程。相邻照片至少有70%-80%的重叠,展示尽量大且完整,要求尽量保证拍摄无虚焦、运动模糊、抖动模糊。
最后一点,物体的底部可以通过翻转续拍去建立,实现物体完整模型的呈现。
(3)应用场景
对于物体建模,比较典型就是电商的场景。下图是我们做的关于鞋子的建模和文物的建模,我们放置了一个小型的转盘,再放了一个小型的灯箱,然后按照以上方式就可以实现建模。相较2D的商品展示,3D的展示可以给用户带来更好的体验,在电商行业,3D商品展示可以提供差异化体验,通过“看、试、穿、戴”等模拟方式提升用户转化,在文博行业,文物经三维数字化建模后,可应用于文物数字保存及多媒体展示。
二、平面材质的生成
(1)三维材质定义
第二个能力是平面材质的生成。图形学中的表观(Appearance)又称材质,是描述光线如何在物体表面和内部进行交互的一种性质,由材质模型和一组控制参数来定义表面外观。从下组图可以看出,左边的图,如果不仔细看,对整个场景的感受非常弱,但如果把墙面、地面、油桶、桌面,这些材料加上去以后,真实感立刻显示出来了。
在材质制作过程中,开发者和用户有哪些痛点呢?
第一,从现实世界采集的纹理通常需要经过美术用专业软件处理,才能用于渲染中取得真实感效果。比如去除光照影响、调整凸凹、尺度等处理,过程耗时、费力且难以标准化;第二,传统纹理贴图处理效果严重依赖美术经验和特定渲染器,纹理素材在不同项目和渲染器间复用困难,项目积累少、制作成本居高不下。
为了解决这些痛点,我们提供两种思路:
第一种,利用深度学习推理网络,一键生成符合PBR标准的纹理要素,提升纹理制作效率和质量;第二种,将技术美术的经验和制作规范固化为遵循PBR标准的数据,通过数据在不同项目和渲染器间复用素材,传承美术制作经验。
(2)材质生成能力介绍
材质生成能力提供将RGB图像转换为PBR材质的能力,仅需要拍摄一张或多张RGB图片,便可一键生成五种材质贴图。
使用该能力只需要普通RGB手机,不要求ToF或LiDAR,支持安卓所有机型;支持的材质类型,主要包括混凝土、大理石、岩石、碎石、砖、石膏、黏土、金属、木材、树皮、皮革、织物、漆面、塑料、合成材料等材质;支持diffuse map, normal map, specular map, roughness map,height map贴图类型;对于输入图像的分辨率,当前已经能支持1k~8k贴图的输出,输入图像中需无接缝、无亮斑、阴影、倒影;对于最终制作效果,通过SSIM的评价指标评价,约大于0.9,效果是非常好的。
(3)材质库
开发者可以根据需要使用种类丰富的材质库,可以根据需求筛选场景和种类并提供1k-8k分辨率的的PBR材质贴图,同时,支持查询、预览和下载等功能,
三、动作捕捉能力
刚刚发布的动作捕捉能力是通过普通单目摄像头输入连续视频帧或RGB图像,精准快速估计24个人体骨骼关键点的三维信息。开发者集成也只需要用到普通的手机,输入视频流或图像,就可以估计出人体骨骼,可以支持站立、行走、舞蹈、蹲、侧身、弯腰等常见动作。
视频流、RGB图像的输入格式,建议视频中图片分辨率不小于320320 px,分辨率过低影响检测精度。同时分辨率不高于19201080 px,分辨率过高会影响检测帧率。输出的格式也比较重要,动作捕捉能力可以同时输出24个人体骨骼关键点的四元数和3D坐标,在一些引擎里面,直接可以驱动匹配。
了解更多详情>>
访问华为开发者联盟官网
获取开发指导文档
华为移动服务开源仓库地址:GitHub、Gitee
关注我们,第一时间了解 HMS Core 最新技术资讯~