开言
一直在百度AI社区活跃着,从AI学习、知识交流到项目应用,非常感谢这样的平台能让生活、学习带来新的事物。2020年不易,在较长的春节假期,不光好好的补充睡眠,也参加了BAIDU AI的学习会,在学习的过程中碰撞出了在实际工作的痛点,所以思考之后做了一些尝试。
应用需求说明
每个工厂都会有进厂检验,进货检验又会分外观检验和性能检验,很多企业在性能检验上上了很多辅助检测工作,而外观检验方面却很少有企业花精力来研究、投入。我尝试通过EeasyDL的图像识别来增加检验员的效率和判断正确性。
EasyDL图像
介绍:
目前EasyDL图像共支持训练3种不同应用场景的模型:
1、图像分类
识别一张图中是否是某类物体/状态/场景。可以识别图片中主体单一的场景
2、、物体检测
在一张图包含多个物体的情况下,定制识别出每个物体的位置、数量、名称。可以识别图片中有多个主体的场景
3、图像分割
对比物体检测,支持用多边形标注训练数据,模型可像素级识别目标。适合图中有多个主体、需识别其位置或轮廓的场景
可视化操作
无需机器学习专业知识,模型创建-数据上传-模型训练-模型发布全流程可视化便捷操作,最快15分钟即可获得一个高精度模型
操作步骤:
Step 1 创建模型
确定模型名称,记录希望模型实现的功能
Step 2 上传并标注数据
分类功能的模型:只需按分类(如合格图片vs不合格图片)上传图片即可
检测功能的模型:上传数据后,需要在数据中标注出需要检测的具体目标
分割功能的模型:上传数据后,需要在数据中标注出需要识别物体的轮廓
Step 3 训练模型并校验效果
选择部署方式与算法,用上传的数据一键训练模型
模型训练完成后,可在线校验模型效果
Step 4 发布模型
根据训练时选择的部署方式,将模型以云端API、设备端SDK等多种方式发布使用
设计分类
首先想好分类如何设计,每个分类为你希望识别出的一种结果,如要识别水果,则可以以“apple”、“pear”等分别作为一个分类;如果是审核的场景判断合规性,可以以“qualified”、“unqualified”设计为两类,或者“qualified”、“unqualified1”、“unqualified2”、“unqualified3”……设计为多类。
注意:目前单个模型的分类上限为1000类
准备数据
基于设计好的分类准备图片:
每个分类需要准备20张以上
如果想要较好的效果,建议每个分类准备不少于100张图片
如果不同分类的图片具有相似性,需要增加更多图片
一个模型的图片总量限制10万张
图片格式要求:
1、目前支持图片类型为png、jpg、bmp、jpeg,图片大小限制在4M以内
2、图片长宽比在3:1以内,其中最长边小于4096px,最短边大于30px
图片内容要求:
1、训练图片和实际场景要识别的图片拍摄环境一致,举例:如果实际要识别的图片是摄像头俯拍的,那训练图片就不能用网上下载的目标正面图片
2、每个分类的图片需要覆盖实际场景里面的可能性,如拍照角度、光线明暗的变化,训练集覆盖的场景越多,模型的泛化能力越强
如果训练图片场景无法全部覆盖实际场景要识别的图片:1)如果要识别的主体在图片中占比较大,模型本身的泛化能力可以保证模型的效果不受很大影响;2)如果识别的主体在图片中占比较小,且实际环境很复杂无法覆盖全部的场景,建议用物体检测的模型来解决问题(物体检测可以支持将要识别的主体从训练图片中框出的方式来标注,所以能适应更泛化的场景和环境)
导入未标注数据
在线标注
上传未标注数据后,即可进入「标注数据集」页面进行在线标注。标注的方式非常简单,只需在右侧标签栏新建并选定标签即可
标签名支持中英文数字中下划线,不超过256字符
创建模型
填写模型名称、联系方式、功能描述等信息,即可创建模型。
数据提交后,可以在导航中找到【训练模型】,按以下步骤操作,启动模型训练:
发布模型
EasyDL:https://ai.baidu.com/easydl/
有趣~~
大家来交流下