日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

UE4移动平台AR开发快速预览

發布時間:2023/12/14 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 UE4移动平台AR开发快速预览 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

UE4移動平臺AR開發底層庫主要是iOS系統的Apple ARKit和Android系統的Google ARCore,UE4的AR開發對AR底層庫進行了統一的接口包裝(封裝的接口還包括Hololens AR、Magic AR等其他AR庫),我們實際用UE4開發移動AR應用時并不直接調用ARCore或ARKit的底層庫原生接口。

注意:由于Google ARCore需要GMS服務(Google
Play),國內的安卓手機和平板安裝GSM很不友好,有些品牌的手機平板還無法安裝。

UE4 AR開發構架與Apple ARKit非常類似,大家可以看一下ARKit幫助文檔,了解一下AR開發的一般流程。
https://developer.apple.com/cn/documentation/arkit/

UE4通過AR Session管理整個AR識別過程,AR Session生命期由底層庫管理,用戶并不能直接對AR Session進行修改,調用AR函數族時也不需要傳遞AR Session變量。用戶只能通過AR Session Config對AR掃描和識別進行配置。

UE4 Augmented Reality的一般開發流程和主要藍圖函數:

  • StartARSession - 打開AR
  • StopARSession - 關閉AR
  • GetARSessionStatus - 返回AR狀態
  • GetARSessionConfig - 返回AR配置
  • GetAllARGeometries - 返回所有識別物體
  • GetARCandidateObject - 生成點云識別模板
  • GetARPointCloud - 返回所有掃描點云數組
  • GetARTexture - 返回攝像機畫面
  • 打開AR

    StartARSession藍圖有一個輸入參數 - ARSessionConfig,通過參數設置管理即將打開的AR Session識別屬性。
    Session Type - AR識別類型,掃描采集AR點云模板用Object Scanning模式,三維識別用World模式,其他的還有平面圖案識別,人臉識別等等其他模式。
    Cardidate Objects - 識別對象數據模板,該數據是識別模塊的點云二進制數據,通常需要通過藍圖或者C++代碼動態添加

    關閉AR

    StopARSession沒有任何參數,調用后結束AR識別,關閉攝像機

    返回AR狀態

    GetARSessionStatus藍圖返回當前AR識別狀態,可以根據狀態來確定目前AR識別情況

    返回AR配置

    GetARSessionConfig返回當前AR識別配置,讀取配置屬性,修改ARSessionConfig并不確定有效,可能需要調用StopARSession后,用修改過的ARConfig重新調用StartARSession打開AR Session

    返回所有識別物體

    GetAllARGeometries是AR識別的核心,可以返回當前攝像機范圍內可識別的所有AR對象,包括AR Session Config配置的Candidate Object識別對象,也包括識別出的空間中其他平面對象等,可以通過對返回的Geometry類來判斷識別物體的類型。

    也可以直接通過GetAllARGeometriesByClass返回特定識別類型的對象數組

    Geometry類型在ARSessionConfig配置中也有對應屬性,可以修改派生對象類型,生成自己自定義的Geometry對象

    生成點云識別模板

    GetARCandidateObject是AR掃描的核心。函數有兩個輸入參數:創建點云識別對象的矩形中心坐標和矩形框大小,函數將用指定的矩形范圍內已識別點云信息生成三維識別對象(如果點云數量不夠則會生成失敗)。建立的點云識別對象可以加入到ARSessionConfig的Candidate Objects列表,作為三維物體識別的模板。
    可以將Candidate Object存儲下來(保存Candidate Object的Data點云二進制數組),供AR識別程序讀取,之后通過填充創建Candidate Object并加入ARSessionConfig實現。

    GetARPointCloud返回當前已識別的點云數組。AR掃描系統可以通過繪制Box掃描框和范圍內點云,幫助用戶進行AR識別物掃描,建立AR Candidate識別模板。

    返回攝像機畫面

    GetARTexture返回攝像機畫面,函數接受一個參數,可以返回需要的攝像機貼圖(彩色、深度畫面等,需要硬件支持)。需要在調用StartARSession之后才能獲得攝像機表面。

    以上就是UE4 AR識別程序開發的整個過程,通過以上藍圖函數即可實現一個從AR掃描到AR識別的完整應用程序。

    總結

    以上是生活随笔為你收集整理的UE4移动平台AR开发快速预览的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。