Unity接入百度AI實(shí)現(xiàn)通用物體和場(chǎng)景識(shí)別
接口介紹:
可識(shí)別超過10萬類常見物體和場(chǎng)景,接口返回大類及細(xì)分類的名稱,并支持獲取識(shí)別結(jié)果對(duì)應(yīng)的百科信息;還可使用EasyDL定制訓(xùn)練平臺(tái),定制識(shí)別分類標(biāo)簽。廣泛適用于圖像或視頻內(nèi)容分析、拍照識(shí)圖等業(yè)務(wù)場(chǎng)景。
創(chuàng)建應(yīng)用:
在產(chǎn)品服務(wù)中搜索圖像識(shí)別,創(chuàng)建應(yīng)用,獲取AppID、APIKey、SecretKey信息:
查閱官方文檔,以下是通用物體和場(chǎng)景識(shí)別接口返回?cái)?shù)據(jù)參數(shù)詳情:
定義數(shù)據(jù)結(jié)構(gòu):
using System; /// <summary> /// 通用物體和場(chǎng)景識(shí)別 /// </summary> [Serializable] public class AdvancedGeneralRecognition { /// <summary> /// 唯一的log id,用于問題定位 /// </summary> public float log_id; /// <summary> /// 返回結(jié)果數(shù)目,及result數(shù)組中的元素個(gè)數(shù) /// </summary> public int result_num; /// <summary> /// 返回結(jié)果數(shù)組 /// </summary> public AdvancedGeneralRecognitionResult[] result; } /// <summary> /// 通用物體和場(chǎng)景識(shí)別結(jié)果 /// </summary> [Serializable] public class AdvancedGeneralRecognitionResult { /// <summary> /// 圖片中的物體或場(chǎng)景名稱 /// </summary> public string keyword; /// <summary> /// 置信度,0-1 /// </summary> public float score; /// <summary> /// 識(shí)別結(jié)果的上層標(biāo)簽,有部分錢幣、動(dòng)漫、煙酒等tag無上層標(biāo)簽 /// </summary> public string root; /// <summary> /// 百科詞條 /// </summary> public BaikeInfo baike_info; } [Serializable] public class BaikeInfo { /// <summary> /// 對(duì)應(yīng)識(shí)別結(jié)果百度百科頁(yè)面鏈接 /// </summary> public string baike_url; /// <summary> /// 對(duì)應(yīng)識(shí)別結(jié)果百科圖片鏈接 /// </summary> public string image_url; /// <summary> /// 對(duì)應(yīng)識(shí)別結(jié)果百科內(nèi)容描述 /// </summary> public string description; }
下載C# SDK:
下載完成后將AipSdk.dll動(dòng)態(tài)庫(kù)導(dǎo)入到Unity中:
以下是調(diào)用接口時(shí)傳入的參數(shù)詳情:
封裝調(diào)用函數(shù):
using System; using System.Collections.Generic; using UnityEngine; /// <summary> /// 圖像識(shí)別 /// </summary> public class ImageRecognition { //以下信息于百度開發(fā)者中心控制臺(tái)創(chuàng)建應(yīng)用獲取 private const string appID = ""; private const string apiKey = ""; private const string secretKey = ""; /// <summary> /// 通用物體和場(chǎng)景識(shí)別 /// </summary> /// <param name="bytes">圖片字節(jié)數(shù)據(jù)</param> /// <param name="baikeNum">返回百科信息的結(jié)果數(shù),默認(rèn)不返回</param> /// <returns></returns> public static AdvancedGeneralRecognition AdvancedGeneral(byte[] bytes, int baikeNum = 0) { var client = new Baidu.Aip.ImageClassify.ImageClassify(apiKey, secretKey); try { var options = new Dictionary<string, object> { { "baike_num", baikeNum }, }; var response = client.AdvancedGeneral(bytes, options); AdvancedGeneralRecognition recognition = JsonConvert.DeserializeObject<AdvancedGeneralRecognition>(response.ToString()); return recognition; } catch (Exception error) { Debug.LogError(error); } return null; } }
using System.IO; using UnityEngine; public class Example : MonoBehaviour { private void Start() { ImageRecognition.AdvancedGeneral(File.ReadAllBytes(Application.dataPath + "/Picture.jpg"), 1); } }
到此這篇關(guān)于Unity接入百度AI實(shí)現(xiàn)通用物體和場(chǎng)景識(shí)別的文章就介紹到這了,更多相關(guān)Unity物體和場(chǎng)景識(shí)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
WCF基礎(chǔ)介紹并創(chuàng)建簡(jiǎn)單應(yīng)用程序
這篇文章介紹了WCF基礎(chǔ)并創(chuàng)建簡(jiǎn)單WCF應(yīng)用程序,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-01-01c# DateTime常用操作實(shí)例(datetime計(jì)算時(shí)間差)
字符串操作DateTime操作,datetime計(jì)算時(shí)間差,取當(dāng)前時(shí)間,更多方法看下面代碼2013-12-12c#不使用windows api函數(shù)打開我的電腦和獲取電腦驅(qū)動(dòng)器信息
這篇文章主要介紹了c#不使用windows api函數(shù)打開我的電腦和電腦驅(qū)動(dòng)器信息的方法,大家參考使用2013-12-12C#使用GZipStream解壓縮數(shù)據(jù)文件的方法
這篇文章主要介紹了C#使用GZipStream解壓縮數(shù)據(jù)文件的方法,實(shí)例分析了C#中GZipStream方法的原理與使用技巧,需要的朋友可以參考下2015-04-04