wechat-miniprogram / miniprogram-demo

微信小程序组件 / API / 云开发示例
https://developers.weixin.qq.com/miniprogram/dev/index.html
MIT License
6.71k stars 2.14k forks source link

AR 3D marker的map是什么格式? #133

Closed blaesus closed 8 months ago

blaesus commented 10 months ago
image

文档里说,「3D Marker……需要手动制作3D Marker的识别目标文件(.map文件)」。

这个识别目标文件,是什么格式的文件? 有没有哪里讲了怎样制作? gltf和map文件的关系是啥,用了一个就不用另一个,还是两个都要有?

感谢!

社区里也有朋友问过,没有发现答案: https://developers.weixin.qq.com/community/develop/doc/000ac257d542a0c30e9ea768b53400 https://developers.weixin.qq.com/community/develop/doc/000ce0534b4a400a1a4f2c4d25b800

@roamzhen —— @一下3D marker demo的一位作者。

roamzhen commented 8 months ago

目前可以直接通过小程序示例,里面3d marker案例生成。相当于是免费内置了一个简单的生成服务。 这个文件算是一个二进制文件,外部不需要理解格式。硬要说的话,是基于视频生成的,用户识别用的一系列特征点(类似点云)。vk的 marker 识别逻辑会直接解析这个 map 文件。 glTF 可以理解是基于这些特征点,拟合生成的三维模型,可以直接通过各类渲染引擎(比如xr-frame),直接渲染出来。 map文件 和 glTF 文件 可以理解是基于同一份视频,得到的两种类型不同的产物,两者之间是没有关系的,可以分别使用。

congfamin commented 8 months ago

这是来自QQ邮箱的假期自动回复邮件。   您好,我最近正在休假中,无法亲自回复您的邮件。我将在假期结束后,尽快给您回复。

blaesus commented 8 months ago

@roamzhen 非常感谢!我想追问一个问题,不知道您能不能指个路:我现在在用2d marker,然后有识别目标的那个平面,距离手机摄像头一般比较原,这样就导致识别marker不到。用户只能把手机贴着对面才能识别。我希望能「数码放大」摄像头的输入,或者说截取摄像头中间的那一部分用来识别,不知道在现行的vksession或者xr-demo体系内可以实现吗?应该改哪个参数? 也是搜了一下社区没发现答案。谢谢!

roamzhen commented 7 months ago

目前没有这种能力,支持这个估计涉及到基础相机组件的改动。

zhangyingtao75144 commented 1 week ago

@roamzhen
你好我们公司对 xrFrame框架下的.map生成接口能力无法满足我们的业务需求,我们希望可以使用我们自己的点云图来作为3D Marker的识别文件,能不能提供一些.map的转换方式或制作方式

roamzhen commented 1 week ago

社区问 vk 的同事,xr-frame 这一侧不处理这部分

zhangyingtao75144 @.***> 于2024年11月20日周三 16:19写道:

@roamzhen https://github.com/roamzhen 你好我们公司对 xrFrame框架下的.map生成接口能力无法满足我们的业务需求,我们希望可以使用我们自己的点云图来作为3D Marker的识别文件,能不能提供一些.map的转换方式或制作方式

— Reply to this email directly, view it on GitHub https://github.com/wechat-miniprogram/miniprogram-demo/issues/133#issuecomment-2487851854, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABHJ45HBWTCUW767QKBNUTD2BRAY7AVCNFSM6AAAAABSD634PSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIOBXHA2TCOBVGQ . You are receiving this because you were mentioned.Message ID: @.***>