把AI图像归类功能用在场景调研、工业质检、电子商务等各行各业,我之前有多次分享,也发布了一个通用软件,见《无需编程!轻松实现图片识别归类~调研、质检、营销都可应用》。
这次我把它用在售后安装的管控里,流程方法上跟其他场景没有什么很大的区别。比如说我们要求洗碗机安装的排水管需要用金属卡箍固定,那就可以用AI去识别安装的上传图到底有没有安装这个卡箍。
这种方法的好处是零代码开发,模型泛化能力强,适应性广,价格便宜。总体流程如下:
整个的关键在于模型的训练,我之前有写过教程。可以下载这个通用版软件,里面包含了详细的教程。下载链接
https://pan.baidu.com/s/1UAFHFae-W04rsqrdU6YaMw 提取码: q2m8
之前介绍的时候,用的是公有云部署方法。有同事担心信息安全问题,本文给出一个本地部署方案的介绍。
参考之前的教程,区别在于我们在模型训练的时候,要选择“EasyEdge本地部署”,设备选择“通用小型设备”。
训练完成后可以下载SDK。
SDK里有个叫“EasyEdge.exe”的文件,点击后,可以填好信息,启动服务。这样,我们的电脑就成为了一个服务器。
这里的Serial Num,每发布一个模型,可以免费试用一段时间,后面可以购买。
另外,可以下载“智能边缘控制台”,对所有模型进行一个总体服务管控。
控制台运行效果:
前面这些工作做好后,其实就是一个怎么调用的问题。
这里给出C#调用的一个参考代码:
//以二进制读图片文件
FileStream fs = new FileStream("./img.jpg", FileMode.Open);
BinaryReader br = new BinaryReader(fs);
byte[] img = br.ReadBytes((int)fs.Length);
br.Close();
fs.Close();
//post方法请求
string url = "http://127.0.0.1:8402?threshold=0.1";
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
request.Method = "POST";
Stream stream = request.GetRequestStream();
stream.Write(img, 0, img.Length);
stream.Close();
//获取结果
WebResponse response = request.GetResponse();
StreamReader sr = new StreamReader(response.GetResponseStream());
Console.WriteLine(sr.ReadToEnd());
sr.Close();
response.Close();
//返回的结果可以转JSON处理
JObject jo = (JObject)JsonConvert.DeserializeObject(result);
string my_sort = jo["results"][0]["name"].ToString();
string my_score = jo["results"][0]["score"].ToString();
python调用参考代码如下:
import requests
with open('./1.jpg', 'rb') as f:
img = f.read()
## params 为GET参数 data 为POST Body
result = requests.post('http://127.0.0.1:24401/', params={'threshold': 0.1},data=img).json()
虽然本文的标题叫AI在售后安装红线管控中的应用,但其实这种方法在各行各业,很多工作岗位都可以使用。