2020-02-14

今天试了下百度esaydl的图像分类方面的功能,其优点是主需要上传自己的数据集,不需要关注模型训练,就可以得到相应的结果。最后得到的模型可以调用云api在本地进行运行。

网址:https://ai.baidu.com/easydl/app/1/models

1、登录该平台

2、点击创建模型:

填入相关信息即可。

3、上传数据集

上传的格式是.zip压缩格式,同时不同类别的图片处于相应的文件夹下,文件夹的名字就是其所代表的类别。这里的数据集是我自己从百度上爬取的,总共分为两类,一类为yes,即佩戴了口罩,另一类为no,即没有佩戴口罩,其中示例图片:

我自己的图片是yes有178张,no有47张,上传之后有效的是183张。

4、训练模型

选择创建好的模型,选择公有云部署,选择高精度,点击开始训练即可。高性能是为了平衡速度和精度,而最后一个Auto transfer关注于细粒度分类。

5、训练完成后可以在我的模型中查看结果

点击完成评估结果:

6、可以校验我们的模型

7、就可以申请发布我们的模型啦

这里需要配置权限,然后新建一个Easydl console。配置好后点击已完成配置:

输入相关信息之后会弹出一个二维码:

这里我把电脑上的图片照了一张,上传进行测试,结果还是不错的。

8、调用api进行本地测试。

我们查看API文档,这里面有具体的教我们怎么去使用,大致分为两步:第一步,获取access_token,以python为例:

# encoding:utf-8
import requests # client_id 为官网获取的AK, client_secret 为官网获取的SK
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=【这里是easydl console中的】&client_secret=【这里是easydl console中的】'
response = requests.get(host)
if response:
print(response.json())

我们可以得到json格式的响应,然后找到access_token复制下来即可。

接着就可以调用API进行本地测试了:

# encoding:utf-8
import requests
import base64
import json with open("C:\\Users\\Administrator\\Desktop\\test.jpg", 'rb') as f:
base64_data = base64.b64encode(f.read()) request_url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/classification/testmask" params = {
"image":str(base64_data,encoding="utf-8"),
"top_num":"",
}
data=json.dumps(params)
access_token = '【这里是获得的acess_token】'
request_url = request_url + "?access_token=" + access_token
headers = {"'Content-Type'":'application/json'}
response = requests.post(url=request_url, headers=headers,data=data)
content = response.text
if content:
print(content)

说明:要发送post请求,带上请求头,参数带上两个,一个是base64格式的图片数据,另一个是返回分类数量,执行结果:

有需要的留言我上传数据集。

百度easydl之图像分类构建是否佩戴口罩模型的更多相关文章

  1. 基于百度EasyDL定制化图像识别平台的海洋鱼类识别方法

    [目的]鱼类识别对渔业资源的开发利用有着重要的意义.针对海底环境恶劣.拍摄环境亮度低.场景模糊的实际情况导致海底观测视频品质差,视频中的鱼类识别难的问题以及现有鱼类识别方法存在的鱼类标注数据集过少导致 ...

  2. 20行Python代码检测人脸是否佩戴口罩

    最近,口罩成为绝对热门的话题,在疫情之下,出门不戴口罩不仅对自己不负责,对他人而言也是一种潜在的威胁.所以许多小区都有保安在门口守着,谁要是不戴口罩就吼回去(吓死我了). 很多人学习python,不知 ...

  3. 如何使用百度EasyDL进行情感分析

    使用百度EasyDL定制化训练和服务平台有一段时间了,越来越能体会到EasyDL的易用性.在此之前我也接触过不少的深度学习平台,如类脑平台.Google的GCP深度学习平台.AWS深度学习平台,但我觉 ...

  4. 百度EasyDL文本分类自定义API示例代码 python

    因为需要将命名实体中的组织机构名进一步区分为政府.企业.社会组织等,在easydl上做了一个文本分类模型,但是要用这个接口时候发现, 官方文档中竟然还在用urllib2的库,且不完整.好多地方会报错, ...

  5. weka实际操作--构建分类、回归模型

    weka提供了几种处理数据的方式,其中分类和回归是平时用到最多的,也是非常容易理解的,分类就是在已有的数据基础上学习出一个分类函数或者构造出一个分类模型.这个函数或模型能够把数据集中地映射到某个给定的 ...

  6. 初探机器学习之使用百度EasyDL定制化模型

    一.Why 定制化模型 一般来说,各大云服务厂商只会提供一些最常见通用的AI服务,针对具体场景的AI应用则需要在云服务厂商提供的服务之上进行定制.例如,通常的图像识别只能做到分析照片的主题内容,而我的 ...

  7. TensorFlow构建卷积神经网络/模型保存与加载/正则化

    TensorFlow 官方文档:https://www.tensorflow.org/api_guides/python/math_ops # Arithmetic Operators import ...

  8. 百度大脑EdgeBoard计算卡基于Resnet50/Mobile-SSD模型的性能评测

    ResNet模型 前言在上一次的测试中,我们从头开始训练了一个三个卷积层串联一个全连接层的输出,作为猫狗分类的预测的模型,这次我们自己训练一个ResNet模型,并在以下三个环境中进行性能的对比 AIS ...

  9. 使用OpenCV和Python构建自己的车辆检测模型

    概述 你对智慧城市的想法感到兴奋吗?如果是的话,你会喜欢这个关于建立你自己的车辆检测系统的教程的 在深入实现部分之前,我们将首先了解如何检测视频中的移动目标 我们将使用OpenCV和Python构建自 ...

随机推荐

  1. package.json中一些配置项的含义

    {   "name": "webpack-demo",   "version": "1.0.0",   "de ...

  2. Ubuntu14 安装JDK 8

    参考: [1]Ubuntu安装JDK7/JDK8 [2]Oracle官网安装JDK10 安装包安装 本文采用安装包安装方式 1.下载JDK安装包 JDK8下载 ,根据所使用系统选择安装包(这里选.ta ...

  3. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 辅助类:设置元素为 display:block 并居中显示

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. C. Maximum Median 二分

    C. Maximum Median 题意: 给定一个数组,可每次可以选择一个数加1,共执行k次,问执行k次操作之后这个数组的中位数最大是多少? 题解:首先对n个数进行排序,我们只对大于中位数a[n/2 ...

  5. windows系统下 VUE cli手脚架环境安装

    1.安装 node.js环境  (cmd命令工具里输入 node -v 检测是否安装成功) 2.安装VUE 全局环境 npm install --global vue-cli (cmd命令工具里面安装 ...

  6. 扩展中国剩余定理 (ExCRT)

    扩展中国剩余定理 (ExCRT) 学习笔记 预姿势: 扩展中国剩余定理和中国剩余定理半毛钱关系都没有 问题: 求解线性同余方程组: \[ f(n)=\begin{cases} x\equiv a_1\ ...

  7. Day1-D-CF-1144C

    简述:给你一个数组,判断是否能拆分成2个数组,一个递增一个递减,若不行输出No,可以就Yes并分别输出 思路:统计每个数出现的次数,若有大于2的肯定无法组成严格单调,这样就只需要将出现两次的组成递,剩 ...

  8. springboot中文官方文档

    springboot中文官方文档 https://www.breakyizhan.com/springboot/3028.html spring框架 https://www.breakyizhan.c ...

  9. [STL]string类型的getline函数

    3.cin.getline() 实际是cin.getline(接收字符串到m,接收个数n,结束字符).接收一个字符串,可以接收空格等,最后一个字符为‘\0’.结束符可以通过设置第三个参数自己设置,默认 ...

  10. springboot自定义属性文件与bean映射注入属性值

    主要有几点: 一.导入依赖 springboot的包和: <dependency> <groupId>org.springframework.boot</groupId& ...