🎬 博客主页:https://xiaoy.blog.csdn.net
🎥 本文由 呆呆敲代码的小Y 原创,首发于 CSDN🙉
🎄 学习专栏推荐:Unity系统学习专栏
🌲 游戏制作专栏推荐:游戏制作
🌲Unity实战100例专栏推荐:Unity 实战100例 教程
🏅 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
📆 未来很长,值得我们全力奔赴更美好的生活✨
------------------❤️分割线❤️-------------------------
在开始之前要有一些准备工作需要进行,如前往百度AI平台获取SDK以及创建应用等。
这里可以去上一篇人脸识别中查看具体的操作,就不多做说明了,步骤都是一样的。
只需要在创建应用接口选择时选择我们需要的功能接口即可。
同时选择多个接口,只需要在使用的时候通过入参灵活指定需要调用的模型服务,传入图像,返回指定模型的识别结果。
这一步最终的目的是从下载的SDK中拿到两个库,在后面会用到。
解压后,打开 net35 文件夹将 AipSdk.dll
和 Newtonsoft.Json.dll
中添加为引用。
识别图像中的货币类型,以纸币为主,正反面均可准确识别,接口返回货币的名称、代码、面值、年份信息;可识别各类近代常见货币,如美元、欧元、英镑、法郎、澳大利亚元、俄罗斯卢布、日元、韩元、泰铢、印尼卢比等。
新建一个Unity打开后 打开 File>BuildSettings -> PlayerSettings -> OtherSettings
改变Api Compatibility Level
为 .NET2.0
,若本来就是则不需要修改。
在Assets
下新建一个Plugins
文件夹,注意不要拼错单词哦~
将上面讲到的两个文件AipSdk.dll
和 Newtonsoft.Json.dll
放入该文件夹。
然后新建一个测试场景和脚本,命名随意。
打开货币识别的C#官方文档:https://ai.baidu.com/ai-doc/IMAGERECOGNITION/ek3bcxh2q#%E8%B4%A7%E5%B8%81%E8%AF%86%E5%88%AB
文档中的步骤挺详细,可以结合文章与文档共同参考 ~
定义一个客户端,此时要用到之前创建的应用的 APPID
、 APIKey
和 SecretKey
代码如下:
using Baidu.Aip.ImageClassify;
using UnityEngine;public class ImageRecognitionDemo : MonoBehaviour
{[Header("设置APPID/AK/SK")]public string APP_ID = "输入你的 App ID";public string API_KEY = "输入你的 Api Key";public string SECRET_KEY = "输入你的 Secret Key";ImageClassify client;private void Awake(){client = new ImageClassify(API_KEY, SECRET_KEY);client.Timeout = 60000; // 修改超时时间}
}
这里先准备一张货币的照片,只要是货币就行,看自己喜好。
然后放到Unity的 StreamingAssets/ImageDetect
文件夹下
我这里的图片名字为 HuoBi.png
,在测试的时候改为自己的即可。
实例代码如下:
/// /// 货币识别/// public void CurrencyDemo(){var image = File.ReadAllBytes(Application.streamingAssetsPath + "/ImageDetect/HuoBi.png");// 货币识别,可能会抛出网络等异常,请使用try/catch捕获var result = client.Currency(image);Debug.Log(result);//图片urlvar url = "http//host.file";//var result = client.CurrencyUrl(url);}
信息的返回值如下:
{"result": {"currencyName": "美元","currencyCode": "USD","currencyDenomination": "1","year": "2009年","hasdetail": 1},"log_id": 1601950693201400445
}
这是一个功能展示效果:
我们拿到这个返回值之后就可以对结果进行一个编辑加展示,以达成我们想要的一个效果。
货币识别
做了一个简单的学习使用教程。
上一篇:Docker学习