- 长臂猿-企业应用及系统软件平台
为帮助参赛团队了解第二届“移动云杯”算力网络应用创新大赛的命题背景、作品立意,提高作品质量,9月12日,我们召开了第二届“移动云杯”大赛答疑会,特别针对工业行业应用子赛道的赛题作讲解和答疑。
赛题背景
锂离子电池具有高能量密度,循环寿命长,自放电率低等优点。极耳焊接是整个锂电池生产工艺中的重点及难点。目前常用的极耳焊接为超声波方式,通过焊头的高频振动,产生瞬间的高热量,使极耳与电芯箔材产生分子间的热熔合,使两者间存在焊接强度关系;若焊接强度不足,会导致锂电池内阻偏大,从而导致电芯报废;若处于完全虚焊状态,充放电时因过流面积小导致大量产热,导致锂电池着火等安全风险。机器视觉方式检测极片瑕疵具有不接触、无损伤、100%检出的优点,具体体现在:准确率高,可准确识别涂布刮痕、极片残损、极耳焊接不对称等现象,准确率远远高于人眼检测;并且排除了电池检测结果受检测人员主观意愿、情绪、视觉疲劳等人为因素的影响,可信度高、速度快、效率高、成本低。
赛题介绍
本赛道面向全球开发者,探索多样化算力网络应用场景,鼓励参赛者基于移动云产品能力,开发形成丰富的算力网络创新应用。
本赛道以“锂电池极耳焊接质量机器视觉检测”为初赛赛题,旨在借用人工智能技术开发出一套锂电池极耳焊接质量检测算法,利用计算机视觉代替人眼进行各种质量、安全、完整性的检测工作。
该数据集介绍:
数据集为分类标记的锂电池极耳焊接图片,分类包括“jssx金属碎屑(1)、OK合格(2)、lj边缘碎屑(3)、ong其他NG(4)、tfhd碳粉黑点(5)”5类,图片包含训练集、测试集,其中训练集和测试集均涵盖上述5种分类数据。训练集数据开放给参赛者,测试集作为保留数据,用于模型的测试评估。
注:合格样本图像示例及缺陷样本图像示例详见资料下载。
具体提交作品材料要求:
1)算法模型;
2)推理脚本。
A功能介绍。predictor模块为推理脚本,旨在通过此脚本对训练好的模型进行加载,并根据传入的测试集数据样本,得到测试集中待分析样本的分析结果。主办方将调用推理脚本程序,得到具体实验结果以及运行时间,并通过评测脚本对结果进行计算得到评价分数。
B输入与输出。predictor设置为类,初始化时需要参赛者在初始化时指定模型保存位置并加载模型。使用类中函数predict进行推理操作时,需要设置传入参数(单个图片数据路径);函数返回值应为测试数据集该图片对应的类别序号(jssx金属碎屑(1)、OK合格(2)、lj边缘碎屑(3)、ong其他NG(4)、tfhd碳粉黑点(5))。
Predictor的伪码说明如下:
import...
class Model(): # 主类
def __init__(self,p_path):
self.__model = None
# 使用按照压缩包路径下的相对路径,
# 如,解压后的文件夹名称为model,模型存放于model下的pysrc/model.pkl路径,则路径为'model/pysrc/model.pkl'
try:
# -------------------------如下位置可修改(加载模型)------------------------
self.load_model(p_path+'/model/pysrc/model.pkl')
# ------------------------- END ------------------------
except Exception as e:
...
return None
def predict(self,path_to_img:str): # 入参:单个图片的路径,如’aaa.jpg’
# Read in image
try:
# -------------------------如下位置可修改(读取图片)------------------------
x = Image.open(path_to_img)
# ------------------------- END ------------------------
except Exception as e:
...
# predict & score
try:
# -------------------------如下位置可修改(推理过程)------------------------
prediction = self.__model(x)
# ------------------------- END ------------------------
except Exception as e:
...
return prediction # 返回结果:整数,与label对应关系为:(jssx金属碎屑(1)、OK合格(2)、lj边缘碎屑(3)、ong其他NG(4)、tfhd碳粉黑点(5))
def load_model(self,path_to_model:str):
# Load model
# -------------------------如下位置可修改(加载模型)------------------------
with open(path_to_model,'rb') as fp:
paras = pickle.load(fp)
self.__model = lambda x : random.randint(paras[0],paras[1])
# ------------------------- END ------------------------
return 0
调用Predictor类的伪码如下:
if __name__ == '__main__':
M = Model('./') # 初始化模型
print(M.predict('2023_zyy_35.jpg')) # 调用推理过程
# 输出:1-5之间的整数
注:上传作品文件夹目录结构如下(样例代码供下载,见资料下载):
├── model 用户上传目录
│ ├── __init__.py 包函数
│ ├── predictor.py 预测函数
│ └── pysrc 模型路径
│ ├── model.pkl 模型(格式可按照模型变更)
上传及相关路径以注释为准。
赛制安排
大赛分为报名、初赛、复赛、赛道决赛、总决赛五个阶段,初赛晋级15支队伍,复赛晋级10支队伍,赛道决赛前3支队伍推荐入选全国总决赛,其他7支队伍获得赛道优秀奖。各评审环节获得晋级队应遵循大赛统一安排参加下一轮赛事评审,若因为团队个人原因不能参赛的视为放弃晋级下一轮名额,晋级名额(含奖金)将按照该环节排名顺延。
重要提醒
↓↓
1.本次大赛原定9月15日报名及作品提交截止时间已延期至10月6日
2.对于部分已提交大赛初赛作品材料的参赛团队,确需修改的,可重新整理后再次线上提交,我们将以最新版为主。
我们期待
在算力大舞台上
看见你们的风姿
大赛入口
查看更多详细资讯