Unity實(shí)現(xiàn)動(dòng)物識(shí)別的示例代碼
接口介紹:
識(shí)別近八千種動(dòng)物,接口返回動(dòng)物名稱(chēng),并可獲取識(shí)別結(jié)果對(duì)應(yīng)的百科信息;還可使用EasyDL定制訓(xùn)練平臺(tái),定制識(shí)別分類(lèi)標(biāo)簽。適用于拍照識(shí)圖、幼教科普、圖像內(nèi)容分析等場(chǎng)景
創(chuàng)建應(yīng)用:
在產(chǎn)品服務(wù)中搜索圖像識(shí)別,創(chuàng)建應(yīng)用,獲取AppID、APIKey、SecretKey信息:


查閱官方文檔,以下是動(dòng)物識(shí)別接口返回?cái)?shù)據(jù)參數(shù)詳情:

定義數(shù)據(jù)結(jié)構(gòu):
using System;
/// <summary>
/// 動(dòng)物識(shí)別
/// </summary>
[Serializable]
public class AnimalRecognition
{
/// <summary>
/// 唯一的log id,用于問(wèn)題定位
/// </summary>
public float log_id;
/// <summary>
/// 識(shí)別結(jié)果數(shù)組
/// </summary>
public AnimalRecognitionResult[] result;
}
[Serializable]
public class AnimalRecognitionResult
{
/// <summary>
/// 動(dòng)物名稱(chēng)
/// </summary>
public string name;
/// <summary>
/// 置信度
/// </summary>
public float score;
/// <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
{
//以下信息于百度開(kāi)發(fā)者中心控制臺(tái)創(chuàng)建應(yīng)用獲取
private const string appID = "";
private const string apiKey = "";
private const string secretKey = "";
/// <summary>
/// 動(dòng)物識(shí)別
/// </summary>
/// <param name="bytes">圖片字節(jié)數(shù)據(jù)</param>
/// <param name="topNum">返回預(yù)測(cè)得分top結(jié)果數(shù),默認(rèn)為6</param>
/// <param name="baikeNum">返回百科信息的結(jié)果數(shù),默認(rèn)不返回</param>
/// <returns></returns>
public static AnimalRecognition Animal(byte[] bytes, int topNum = 6, int baikeNum = 0)
{
var client = new Baidu.Aip.ImageClassify.ImageClassify(apiKey, secretKey);
try
{
var options = new Dictionary<string, object>
{
{ "top_num", topNum },
{ "baike_num", baikeNum }
};
var response = client.AnimalDetect(bytes, options);
AnimalRecognition animalRecognition = JsonConvert.DeserializeObject<AnimalRecognition>(response.ToString());
return animalRecognition;
}
catch (Exception error)
{
Debug.LogError(error);
}
return null;
}
}測(cè)試圖片:

using System.IO;
using UnityEngine;
public class Example : MonoBehaviour
{
private void Start()
{
ImageRecognition.Animal(File.ReadAllBytes(Application.dataPath + "/Picture.jpg"));
}
}

以上就是Unity實(shí)現(xiàn)動(dòng)物識(shí)別的示例代碼的詳細(xì)內(nèi)容,更多關(guān)于Unity動(dòng)物識(shí)別的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
C# 站點(diǎn)IP訪(fǎng)問(wèn)頻率限制 針對(duì)單個(gè)站點(diǎn)的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇C# 站點(diǎn)IP訪(fǎng)問(wèn)頻率限制 針對(duì)單個(gè)站點(diǎn)的實(shí)現(xiàn)方法。小編覺(jué)的挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-12-12
使用aspose.word 第三方的插件實(shí)現(xiàn)導(dǎo)出word

