2D图像跟踪
所有文档

          AR开放平台

          2D图像跟踪

          简介

          AR场景开发专题-编辑器版详解了如何使用AR场景编辑器以及AR能力接口开发复杂AR场景,熟悉以下内容有助于您实现复杂的交互效果和炫酷的渲染特效。

          2D图像跟踪

          2D图像跟踪指通过扫描识别图调起AR,并使AR场景跟踪在识别图上的功能。
          想要在AR场景中使用2D图像跟踪能里,需在创建项目时将技术类型选择为【2D跟踪】

          完成项目创建后,可在编辑器页面选择【场景】/【AR识别图】,在右侧属性面板【识别图】一栏中上传自定义的识别图

          识别图要求

          识别图是用于识别识别AR内容,并实现跟踪效果的图片,为了达到完美的识别识别效果,需要对识别图进行规范化设计,请设计师严格按照以下要求进行设计,并注意规避相关禁忌。

          一、格式规范

          为了保证识别跟踪效果,我们对图片的大小、格式等进行了规范性限制。

          1、 识别图应为不小于480x480像素的图片

          2、 识别图格式应为JPG或JPEG

          3、 所上传的识别图应小于3M

          二、图形规范

          识别图必须是2D平面图形,不支持3D物体等实体物作为识别物。

          1

          三、纹理规范

          1、特征丰富原则
          识别图中主要的影响因素是特征点,它多为色差较大的图案边缘的拐点(即图像灰度值发生剧烈变化后在边缘形成的曲率较大的点),可通过不同形态、不同形状的设计元素构造丰富的特征点。下面是特征点示意图。

          2

          2、纹理相似度原则
          1)图片纹理相似度高会对识图识别过程产生影响,建议通过组合、叠加、手绘等形式减少相似度高的纹理。

          3


          2)如识别图中需加入文字,建议对文字进行不同风格的艺术设计,尽量减少标准字体下的相似特征点。

          4


          3、纹理分布均匀原则

          识别图纹理需分布均匀,避免元素过于集中。

          5


          4、 纹理对比度原则

          识别图的相邻色块间的灰度值差别应尽量大。

          6

          四、材质规范

          1、请上传高分辨率、高清晰度、高像素的识别图。

          2、不建议反光、过暗、有噪点、强曝光的图片作为识别图。

          7

          8

          总结

          请设计师严格按照上述识别图规范进行设计,本规范如有未尽系统说明之处或相关疑问,请开发者或设计师随时与百度AR团队沟通联系,感谢您的耐心阅读。

          2D图像跟踪相关API

          在AR场景中使用2D图像跟踪能力后,可通过编辑场景的脚本文件,定义与2D图像跟踪相关的交互行为。在编辑器页面选择 【项目配置】/【脚本配置】,点击右侧 【编辑脚本】即可编辑AR场景脚本。

          跟丢回调

          跟丢回调是指在调起AR后,通过识别图激活已配置好的AR场景,然后将移动设备移开识别图的操作。

          • 跟丢后回调接口:on_target_lost
          //跟丢识别图回调事件
          
          app.on_target_lost = function()
              ARLOG("tracking loss..")
              
          end

          跟丢后显示雷达扫描

          跟丢后显示雷达扫描为百度AR扫描识别图激活场景跟丢后的默认配置,无需任何配置,不需要调用on_target_lost 接口,即可实现。

          跟丢后设置默认位置

          设置默认位置需要调用跟丢后完成回调,并在其中写入相机的朝向接口代码,即可实现跟丢识别图后依旧显示场景。

          -- 跟丢识别图后显示默认位置
          app.on_target_lost = function()
          	ARLOG('on target lost')
          	app:set_camera_look_at("0, 0, 1000","0, 0, 0", "0.0, 1.0, 0.0")
          end

          跟上回调

          跟上回调是建立在已经发生过一次“跟丢”后的情况下。

          • 跟丢回调接口:on_target_found
          -- 跟上识别图回调事件
          
          app.on_target_found = function()
              ARLOG("tracking found..")
              scene.simplePod:set_rotation_by_xyz(0.0, 0.0, 0.0)
              ARLOG(string.format("firstFound :%s", tostring(firstFound)))
              if (firstFound == false) then
                  ARLOG("resumeAudio found..")
                  audio:resume()
              end
              firstFound = false
          end
          上一篇
          AR场景开发专题
          下一篇
          IMU Tracking AR