Algorithm 像zookazam一样增强现实
Algorithm 像zookazam一样增强现实,algorithm,augmented-reality,Algorithm,Augmented Reality,用于增强现实的算法有哪些?
我认为它通过对比分析图像并找到平面,但我不知道怎么做
在开始使用此类应用程序之前,我应该阅读哪些主题?
[序言]
这是一个非常宽泛的主题,在当前状态下,大部分是主题外的。我重新编辑了你的问题,但要在本网站的规则/可能性范围内回答你的问题
您应该更详细地指定增强现实的内容:
应该这样做
添加具有已知网格的2D/3D对象
改变光照条件
添加/删除身体部位/衣服/头发
一个好主意是提供一些您想要实现的输入/输出的示例图像(草图)
它有什么输入
视频、静态图像、2D、
用于增强现实的算法有哪些?
我认为它通过对比分析图像并找到平面,但我不知道怎么做
在开始使用此类应用程序之前,我应该阅读哪些主题?
[序言]
这是一个非常宽泛的主题,在当前状态下,大部分是主题外的。我重新编辑了你的问题,但要在本网站的规则/可能性范围内回答你的问题
您应该更详细地指定增强现实的内容:
应该这样做
- 添加具有已知网格的2D/3D对象
- 改变光照条件
- 添加/删除身体部位/衣服/头发
一个好主意是提供一些您想要实现的输入/输出的示例图像(草图)
它有什么输入
- 视频、静态图像、2D、立体声、3D。对于纯2D输入,请指定需要哪些条件/标记/照明/激光模式来帮助重建
- 输入图像中将包含什么内容?空房间、人员、特定物体等
指定目标平台
许多算法仅限于内存大小/带宽、CPU功率、特殊的HW功能等,因此最好为平台添加标签。操作系统和语言也是一个好主意
[增强现实如何工作]
获取输入图像
如果要连接到摄像头等设备,则需要使用其驱动程序/框架或其他工具来获取图像,或使用其支持的一些常用API。此任务取决于操作系统。我最喜欢在Windows上使用VFW(Windows视频)API
我会从一开始就使用一些静态文件,以简化调试和增量构建过程。(你不需要等待每一个构建都会出现摄像头和其他东西)。当你的应用程序准备好进行视频直播后,再切换回摄像头
将场景重建为三维网格
如果使用3D相机,如Kinect,则无需执行此步骤。否则,您需要通过一些通常基于边缘检测或颜色均匀性的分割过程来区分对象
3D网格的质量取决于您想要实现的目标和输入内容。例如,如果您想要真实的阴影和照明,那么您需要非常好的网格。如果相机在某个房间中固定,则可以手动预定义网格(硬编码),并仅计算视图中的对象。此外,通过从当前视图图像中减去空房图像,可以非常简单地进行对象检测/分割,因此差异较大的像素就是对象
您也可以使用平面,而不是在OP中建议的真实3D网格,但这样您就可以忽略更真实的效果质量,如照明、阴影、交点。。。如果假定对象笔直站立,则可以使用房间度量来获取与摄影机的距离。见:
对于纯2D输入,您还可以使用照明来估计3D网格,请参见:
渲染
只需将场景渲染回某个图像/视频/屏幕。。。具有添加/删除的功能。如果您没有太多地更改灯光条件,也可以使用原始图像并直接渲染到它。阴影可以通过使像素变暗来实现。。。为了获得更好的效果,通常会从原始图像中过滤出照明/阴影/斑点等,然后通过渲染直接添加。看
渲染过程本身也依赖于平台(除非您使用内存中的低级图形)。您可以使用GDI、DX、OpenGL等工具,请参见:
渲染时还需要摄影机参数,如:
[谷歌基本主题/阅读]
2D
3D
表格相关的
[序言]
这是一个非常宽泛的主题,在当前状态下,大部分是主题外的。我重新编辑了你的问题,但要在本网站的规则/可能性范围内回答你的问题
您应该更详细地指定增强现实的内容:
应该这样做
- 添加具有已知网格的2D/3D对象
- 改变光照条件
- 添加/删除身体部位/衣服/头发
一个好主意是提供一些您想要实现的输入/输出的示例图像(草图)
它有什么输入
- 视频、静态图像、2D、立体声、3D。对于纯2D输入,请指定需要哪些条件/标记/照明/激光模式来帮助重建
- 输入图像中将包含什么内容?空房间、人员、特定物体等
指定目标平台
许多算法仅限于内存