Unity?百度AI實(shí)現(xiàn)Logo商標(biāo)識(shí)別
接口介紹:
該請(qǐng)求用于檢測(cè)和識(shí)別圖片中的品牌LOGO信息。即對(duì)于輸入的一張圖片(可正常解碼,且長(zhǎng)寬比適宜),輸出圖片中LOGO的名稱(chēng)、位置和置信度。當(dāng)效果欠佳時(shí),可以建立子庫(kù)(在百度開(kāi)發(fā)者中心控制臺(tái)創(chuàng)建應(yīng)用并申請(qǐng)建庫(kù))并通過(guò)調(diào)用logo入口接口完成自定義logo入庫(kù),提高識(shí)別效果。
創(chuàng)建應(yīng)用:
在產(chǎn)品服務(wù)中搜索圖像識(shí)別,創(chuàng)建應(yīng)用,獲取AppID、APIKey、SecretKey信息:


查閱官方文檔,以下是Logo商標(biāo)識(shí)別接口返回?cái)?shù)據(jù)參數(shù)詳情:

定義數(shù)據(jù)結(jié)構(gòu):
using System;
/// <summary>
/// Logo識(shí)別響應(yīng)數(shù)據(jù)結(jié)構(gòu)
/// </summary>
[Serializable]
public class LogoRecognition
{
/// <summary>
/// 請(qǐng)求標(biāo)識(shí)碼,隨機(jī)數(shù),唯一
/// </summary>
public float log_id;
/// <summary>
/// 返回結(jié)果數(shù)目,即:result數(shù)組中元素個(gè)數(shù)
/// </summary>
public int result_num;
/// <summary>
/// 返回結(jié)果數(shù)組,每一項(xiàng)為一個(gè)識(shí)別出的logo
/// </summary>
public LogoRecognitionResult[] result;
}
[Serializable]
public class LogoRecognitionResult
{
/// <summary>
/// 位置信息
/// </summary>
public LogoRecognitionResultLocation location;
/// <summary>
/// 識(shí)別的品牌名稱(chēng)
/// </summary>
public string name;
/// <summary>
/// 分類(lèi)結(jié)果置信度(0--1.0)
/// </summary>
public float probability;
/// <summary>
/// type=0為1千種高優(yōu)商標(biāo)識(shí)別結(jié)果;type=1為2萬(wàn)類(lèi)logo庫(kù)的結(jié)果;其它type為自定義logo庫(kù)結(jié)果
/// </summary>
public int type;
}
/// <summary>
/// 位置信息
/// </summary>
[Serializable]
public class LogoRecognitionResultLocation
{
/// <summary>
/// 左起像素位置
/// </summary>
public float left;
/// <summary>
/// 上起像素位置
/// </summary>
public float top;
/// <summary>
/// 像素寬
/// </summary>
public float width;
/// <summary>
/// 像素高
/// </summary>
public float height;
}
下載C# SDK:

下載完成后將AipSdk.dll動(dòng)態(tài)庫(kù)導(dǎo)入到Unity中:

以下是調(diào)用接口時(shí)傳入的參數(shù)詳情:

封裝調(diào)用函數(shù):
using System;
using UnityEngine;
using Newtonsoft.Json;
using System.Collections.Generic;
/// <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>
/// Logo商標(biāo)識(shí)別
/// </summary>
/// <param name="bytes">Logo圖片字節(jié)數(shù)據(jù)</param>
/// <param name="customLib">是否只使用自定義logo庫(kù)的結(jié)果,默認(rèn)false:返回自定義庫(kù)+默認(rèn)庫(kù)的識(shí)別結(jié)果</param>
/// <returns></returns>
public static LogoRecognition Logo(byte[] bytes, bool customLib = false)
{
var client = new Baidu.Aip.ImageClassify.ImageClassify(apiKey, secretKey);
try
{
var options = new Dictionary<string, object>
{
{ "custom_lib", customLib}
};
var response = client.LogoSearch(bytes, options);
LogoRecognition logoRecognition = JsonConvert.DeserializeObject<LogoRecognition>(response.ToString());
return logoRecognition;
}
catch (Exception error)
{
Debug.LogError(error);
}
return null;
}
}
測(cè)試圖片:

using System.IO;
using UnityEngine;
public class Example : MonoBehaviour
{
private void Start()
{
ImageRecognition.Logo(File.ReadAllBytes(Application.dataPath + "/Picture.jpg"));
}
}
到此這篇關(guān)于Unity 百度AI實(shí)現(xiàn)Logo商標(biāo)識(shí)別的文章就介紹到這了,更多相關(guān)Unity商標(biāo)識(shí)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
運(yùn)用示例簡(jiǎn)單講解C#取消令牌CancellationTokenSource
這篇文章運(yùn)用示例簡(jiǎn)單講解C#取消令牌CancellationTokenSource,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
C#使用Zxing.dll組件解析二維碼的實(shí)現(xiàn)
ZXing是一個(gè)開(kāi)源的,支持多種格式的條形碼圖像處理庫(kù),本文主要介紹了C#使用Zxing.dll組件解析二維碼的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2023-09-09
winform中寫(xiě)app.config文件時(shí)調(diào)試情況下沒(méi)有改變的原因
讀取很簡(jiǎn)單基本都用過(guò) ConfigurationManager.AppSettings[""].ToString() 寫(xiě)config不是很常用2013-02-02
C#實(shí)現(xiàn)網(wǎng)頁(yè)畫(huà)圖功能
這篇文章主要為大家詳細(xì)介紹了C#實(shí)現(xiàn)網(wǎng)頁(yè)畫(huà)圖功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03

