AR拾取纹理功能实现

AR拾取纹理功能实现

最近大家比较关注ColARMix和涂乐等这些应用,作为开发人员吸引大家的就是运行时拾取识别目标纹理,在以线框为识别目标的图片上,用户可以图画颜色,识别之后把涂有色彩的图片作为纹理时时赋给增强对象,让用户图画的颜色体现在增强对象上,看到自己在平面上涂的颜色反应到三维增强对象上。很感谢想到这些创意的牛人们!

AR进入中国视线自己就开始关注,不知不觉几年过去了,可能是移动设备硬件的限制,之前两三年的时间一直没有得到很好的发展,随着移动设备硬件的强大支持,越来越多的AR应用走进人们的视野,特别是在少儿教育这一块,ColAR Mix、涂乐、小熊尼奥等都是非常成功的案例,在AR少儿教育方面比较有创新性的功能也应属AR运行时拾取纹理功能了,大家都非常关注,努力去实现,平常在大学做技术培训,这一块也炒的非常热。当知道ColAR
Mix有拾取纹理这个功能后,感觉非常新颖,创意点也非常好,用在少儿教育方面恰到好处,能让孩子在乐趣和兴趣中快乐的学习成长。

至于此,作为程序开发人员,也尝试着实现,比如想到采集到图片之后,用OpenCV去实现图形图像变换以得到希望的目标纹理,走了不少弯路,但功夫不负有新人,最终实现了AR运行时拾取纹理功能。

先看看自己实现的具体效果:

现在把自己实现大致过程给列一下,相互学习,共同进步!

步骤:

1.      准备工作,对于AR开发人员这个都是废话

a)        确定开发环境Window7+Unity+Vuforia,这个也没什么限制,根据自己情况而定

b)        构建工程,创建场景

2.      注册用于图画的线框标识图,作为识别对象,在三维制作软件(3dsMax、maya等)里面把线框图作为纹理赋给你的增强对象

3.      获取ImageTarget四个角点,利用Camera的函数WorldToViewportPoint从世界坐标转换到视口坐标,加以判断,目的就是做到ImageTarget全部在视口内

4.      保证识别对象全部显示在视口内之后,利用Vuforia API提供的函数GetCameraImage()提取运行时图片,具体做法
见:https://developer.vuforia.com/forum/faq/unity-how-can-i-reset-frame-format-scene-reload

5.      这里得到的图片就是手机屏幕看到的,里面应确保ImageTarget全部显示在视野内,获取图片的同时,确定ImageTarget四个角点在图片中的位置,把得到的
图片数据以像素的形式保存到颜色数组(Color32[])中

6.      写一个图像展开(就是图形图像学里面的一些变换)算法,就是根据ImageTarget四个角点在图片中的位置,获取颜色数据中的有效像素点,根据Imagetarget
纹理大小,新创建一个Texture2D,以利用算法得到ImageTarget时时纹理,用什么算法具体自己研究,不在这里公开

7.      把纹理替换掉增强对象上的纹理即可。

这些是自己实现拾取颜色的流程,可能有更好的实现形式,希望在实现方式上可以和大家交流探讨。自己可以根据这些步骤来实现,相关的论坛上也有很多有用的信息,大家都可以参考,少走些弯路。毕竟要去实现个功能,肯定需要花费大量时间,多点耐心。

无论学习交流还是商用都可以发消息,相互学习,互利共赢。

时间: 2024-10-22 12:55:04

AR拾取纹理功能实现的相关文章

Unity牛逼的2D纹理功能

[Unity牛逼的2D纹理功能] 1.可直接将贴图生成成为Cubemap. 2.自动生成Mipmap. 3.查看纹理被当前场景哪些对象引用.在Project窗口中,右击图像,选择 参考:file:///C:/Program%20Files%20(x86)/Unity/Editor/Data/Documentation/html/en/Manual/class-TextureImporter.html

CUDA中多维数组以及多维纹理内存的使用

纹理存储器(texture memory)是一种只读存储器,由GPU用于纹理渲染的图形专用单元发展而来,因此也提供了一些特殊功能.纹理存储器中的数据位于显存,但可以通过纹理缓存加速读取.在纹理存储器中可以绑定的数据比在常量存储器可以声明的64K大很多,并且支持一维.二维或者三维纹理.在通用计算中,纹理存储器十分适合用于实现图像处理或查找表,并且对数据量较大时的随机数据访问或者非对齐访问也有良好的加速效果. 纹理存储器在硬件中并不对应一块专门的存储器,而实际上是牵涉到显存.两级纹理缓存.纹理抓取单

玩具化的AR试妆,能否玩出美妆行业的市场大未来?

据媒体报道,今年七夕,意大利奢侈品牌宝格丽适时推出了Divas'Dream中国区粉红限量款项链,虽然是特别限量款,但这次宝格丽还采取了一个很亲民的营销策略:和美图旗下的美妆相机联合推出该款项链的AR(增强现实技术)特效.这也是美图首次联手奢侈品牌推出AR珠宝首饰. 但对于美妆相机来说,这只是一次小小的跨界试水.此刻这款对于很多用户都颇为陌生的App,截止2016年年底,累计用户超过1.2亿,月活跃用户数超2000万,其中87%以上为女性用户(以80后.90后为主),标准的美妆行业流量池,而它用来

爆款AR游戏如何打造?网易杨鹏以《悠梦》为例详解前沿技术

7月31日,2018云创大会游戏论坛在杭州国际博览中心103B圆满举行.本场游戏论坛聚焦探讨了可能对游戏行业发展有重大推动的新技术.新实践,如AR.区块链.安全.大数据等.网易AR游戏生态合作负责人杨鹏表示,传统游戏模式趋同,AR游戏将是下一个重要风口网易AR游戏生态合作负责人杨鹏做了<从网易悠梦看AR前沿技术>的主题演讲,分享了网易基于AI技术和硬件基础所打造的爆款游戏<悠梦>,并详细了该游戏的AR游戏引擎.AR SDK和洞见内容浏览器等技术方案,助力<悠梦>成为年度

Android中Xposed框架篇---修改系统位置信息实现自身隐藏功能

一.前言 前文已经介绍了Xposed框架的基本使用规则,本文主要来介绍一个实际案例就是如何通过这个框架来修改系统的地理位置信息来实现隐藏功能,在如今社交工具的发展特别是微信,他有一个实时位置共享功能,那么对于那些不是单身狗的同学来说可能会有些蛋疼,哪天媳妇要查岗发送位置,结果你不在她期望的位置这时候就尴尬了,而且朋友圈在分享内容的时候可以选择当前位置,有的屌丝就像我一样没钱但是又想到处旅游,那么这时候咋们就可以一本正经的装个逼了. 二.定位原理 看到上面说的那么多,感觉这个功能必须要搞起来了,好

跨界玩AR,迪奥、Hugo Boss等知名奢侈品牌将制造AR眼镜

Snapchat因为阅后即焚消息应用而被人所熟知,前段时间这家公司拓展主要业务,未来将不再只有消息应用,还有款名为"Spectacles"的AR太阳镜.内置了一个摄像头,戴上之后即可以第一人称的角度来录制视频,非常有趣. 当然这种跨界还仅仅是小的.近日,Dior,Fendi和Hugo Boss等世界知名奢侈品牌将纷纷表示有意在2017年推出AR智能眼镜.其中,Safilo(Dior.Hugo Boss等多个国际知名品牌的眼镜授权生产商)表示"预计在下个月,意大利公司在拉斯维加

纹理(讲得比较详细的文章)

纹理是增强计算机生成的三维图像的真实感的有力工具.Microsoft® Direct3D®支持广泛的纹理特性,并使开发人员可以很方便地使用高级纹理技术. 本节讲述如何使用纹理. 纹理的基本概念 纹理坐标 纹理过滤 纹理资源 纹理环绕 纹理混合 表面 以下主题将更详细地介绍另外的纹理功能. Mipmap的自动生成 自动纹理管理 压缩纹理资源 使用纹理时需要考虑的硬件问题 立体纹理资源 要提高性能,可以考虑使用动态纹理.动态纹理在每一帧都可以被锁定,写入及解锁.更多信息请参阅使用动态纹理. 纹理的基

Iphone X黑科技大揭秘,这几大摄像功能是要上天!

北京时间 9 月 13 日 凌晨 1 点,苹果在美国召开了 2017 年秋季新品发布会 今年是 iPhone 诞生 10 周年, iPhone 已经三年没有大变样了,因而今年的关注度也是异常的高,各种爆料也是轰炸刷屏了一整年,这次发布会自然也是万众瞩目. 这场亮点十足的发布会推出了果粉们期待已久的新款iphoneX. 8 和8Plus,还有最Apple Watch 3.新一代Apple TV.iMac Pro,以及全新升级的iOS11 系统.在这里小编要扒一扒新款iphoneX的逆天黑科技,尤其

Dev发现之旅之——AR技术

摘要:我,DevStore小编一名,和大家一样朝九晚五的上下班(有时也会朝九晚九==),看似每天忙忙碌碌,但却不知道在忙些什么.最近公司来了一技术大哥,偶然从他那了解到一项自己从前不晓得的技术-AR技术,感觉挺酷的,当然由于工作需要,自己也做了些工作.于是乎,小编迫不及待想分享给大家了. By the way,小编题目中的"Dev"可不是指最近很火的戴维哦,小编是指DevStore,意思差不多就是小编在DevStore的发现啦~ AR's Show Time: 小名:AR技术 中文名称