人工智能技术辅助开发“智铸”系统
2020-04-13傅骏傅馨竹龙辉阳唐钰蒲丽旭张再航张峻宁
傅骏 傅馨竹 龙辉阳 唐钰 蒲丽旭 张再航 张峻宁
【摘 要】采用开源免费的深度学习平台,利用python二次开发了“智铸”系统,包括“识铸”“听铸”“盯铸”三个模块,铸造企业员工可以用手机或电脑自主学习,提升员工从业能力。在设备旁安装“听铸”软硬件一体化设备,可以实现对连续运行设备的在线自动监听侦测。“盯铸”模块实现连续生产铸件的自动检测、铸造缺陷分析与重点安全区域的监控。
【Abstract】The deep learning platform is open source and free, and python is used to develop the "intelligent casting" system, including three modules of "recognition casting" "listening casting" and "staring casting". Employees of casting enterprises can use mobile phones or computers to learn independently to improve their working ability.It can realize automatic online monitoring and detection of continuous running equipment by installing "listening casting" hardware and software integration equipment beside the equipment.The "staring casting" module can realize automatic detection of continuous casting, the analysis of casting defects and monitoring of the key safety areas.
【关键词】人工智能;“智铸”;百度云;百度大脑;Tkinter
【Keywords】artificial intelligence; "intelligent casting"; Baidu Cloud; Baidu brain; Tkinter
【中图分类号】TP29 【文献标志码】A 【文章编号】1673-1069(2020)01-0166-02
1 引言
为引导铸造企业规范发展,促进行业产业结构调整、优化和转型升级,2019年9月,中国铸造协会颁布了团体标准《铸造企业规范条件》,从2020年1月1日起开始施行。该标准对铸造企业的建设条件与布局、企业规模、生产工艺、生产装备、质量管控、能源消耗、环境保护、安全生产及职业健康和监督管理、员工素质等提出了规范条件,提升新入职员工培养和老员工复训质量、在铸造生产环节引入智能技术手段已经迫在眉睫,“智铸”系统可以有效满足铸造企业需求。
2 系统开发
2.1 开发平台
深度学习是机器学习领域中的一个研究方向。深度学习是通过大量样本训练,计算机自动学习样本数据的内在规律和表示层次,最终达到能够像人一样具有分析学习能力的目的。深度学习在搜索技术、数据挖掘、机器学习、机器翻译、自然语言处理、多媒体学习、语音、推荐和个性化技术,以及其他相关领域都取得了很多成果。
百度公司提供了百度大脑,提供了一系列人工智能开放功能和开放平台,不要求用户掌握高深的深度学习理论即可学习。其中,EasyDL平台集成了深度学习功能,用户只需要输入素材(图片、声音、文本等),平台就可以自动进行训练,提供SDK。
2.2 系统总体设计
项目组分析了目前铸造行业的需要以及掌握的基础数据,设计的“智铸”系统功能如图1所示。
“智铸”(1.0版)包括三大部分:
①识铸。本系统提供铸造车间结构、铸造设备、铸造工艺流程、铸造原辅材料、铸造模具、铸造工装工具等知识模块,学员可以利用手机App或者网页、单机等多种方式利用,自主学习铸造相关知识,提升从业水平。②听铸。本系统通过软硬件一体化,安装在重要设备的旁边,自动监听设备的运行声音,听到故障声音时自动报警,通知维修工到场处理。③盯铸。本模块的叶片在线巡检功能,对熔模铸件进行拍照,对尺寸和形状进行分析,判断是否合格。“缺陷分析”功能实现对多种铸件表面缺陷的拍照,识别出缺陷的种类,辅助员工解决问题。“安全区域监测”对行车下方、熔炼区域等重点安全区域进行在线监测,对不安全行为进行拍照并及时提醒。
2.3 素材准备
深度学习最重要的工作是分类,并收集素材,分类整理。针对拟开发的模块,收集照片,分类存放。其中,几个模块的分类情况是:①铸造设备。参照《JB/T3000铸造设备型号编制方法》,分为原砂处理设备、旧砂处理设备、混砂机、造型设备、制芯设备、熔炼合金备料设备、熔炼设备、浇包、浇注机、落砂设备、清理设备、抛丸设备、热处理设备、底漆设备及其他等类别。②铸造工艺流程。分为砂处理、造型、熔炼、浇注、补浇、落砂、清理、抛丸、喷丸、吊运、出铁热处理、底漆等类别。每个工艺流程的类别根据情况又细分为若干工步。③铸造原辅材料。分为造型材料、制芯材料、熔煉材料、辅助材料、成型浇注系统、特种冒口、涂料等。每种材料又可以细分,如造型材料又可分为原砂、粘结剂、辅助材料等。④铸造工装工具。分为模样、模底板、砂箱、芯盒、冷铁、样板、起模针、砂舂、刮板、冒口模样等。按照分类情况,收集照片,素材来源于各企业网站、广告、期刊杂志、会议论文集等。本项目一共收集照片7200余张,仔细进行了分类。选择每个类别的90%左右生成zip压缩包进行训练用,其余的图片用作测试。
图2是收集的照片示例。
2.4 训练
在百度云平台注册账号,分别训练为公有云、设备SDK、私有服务器、软硬件一体化四种类型。每个类型训练在1h内可以完成,短的15min左右。在训练时,可以离开页面、可以关机,后台自动训练。训练完成后,消息发送到手机。采用测试集图片测试效果。正确率偏低,可以用测试集纠正或者上传更多照片重新训练,确保每一类正确率不低于95%,方可投入使用。
2.5 GUI界面开发
利用Tkinter基于“设备SDK”获得的API进行二次开发,方便用户使用。
2.5.1 获取Access_token
百度AIP开放平台使用OAuth 2.0授权调用开放API,推荐使用POST方法,请求URL必须指定grant_type=client_credentials。
获取Access_token的关键代码是:
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials
&client_id=DVLdnGu7GCWMVemADk1pz2d7&client_secret=HAlPAyIIYx57GGUV7dXBSBUu1o7Wt1yx'
response = requests.get(host)
acca=response.json()
2.5.2 设置发布信息
设置自己项目的访问网址,将上传的图片转换为Base64格式,用python抓取识别结果,并转换为汉字,同时给出识别结果与概率。
2.5.3 http请求
对训练获得的库通过http请求获得结果,关键代码是:
http=urllib3.PoolManager()
img = base64.b64encode(pic.read())
encoded_data = json.dumps(params).encode('utf-8')
request=http.request('POST', url,body,headers)
2.6 使用
公有云訓练完成后,在“体验H5”设置相关信息,用手机扫描后即可使用。用户上传照片或现场拍摄,系统自动给出识别结果。
对设备SDK方式获得的代码进行了基于Tkinter的二次开发。其中,选择图片文件并在GUI界面的标签上显示的关键代码[1]是:
filename = askopenfilename(initialdir = 'D:',filetypes=(("全部文件","*.*"),("图片类型","*.jpg"),("图片","*.png")))
pilImage = Image.open(filename)
tkImage = ImageTk.PhotoImage(image=pilImage,width=ww,height=hh)
lbltu =Label(root,image=tkImage)
图3是“智铸”系统的手机H5体验界面和单机GUI界面。
3 结语
开发的“智铸”系统在部分企业试用,基本达到了开发目的,该系统辅助员工自主学习,员工可以在现场或学习室有针对性地提升自己薄弱的知识和技能,提升从业能力。
利用深度学习训练素材,使机器具备智能能力,关键是收集足够的素材。目前,该系统基本功能受到用户的肯定。项目组收集了用户意见,下一步将收集更多的训练素材并引入进化优化算法,持续开发铸造车间区域安全在线监测、在线巡检等,不断提高满足铸造行业企业智能化的水平。
【参考文献】
【1】傅骏,傅馨竹,郝文源,等.基于Tkinter的百度AI图像识别技术二次开发实践[J].科技风,2019(09):69+75.