面向国产 MindSpore平台与 Atlas 200 的计算机视觉教学改革

面向国产 MindSpore平台与 Atlas 200 的计算机视觉教学改革

面向国产 MindSpore平台与 Atlas 200 的计算机视觉教学改革

0 引 言

人工智能通过模拟人类思维与决策模式,赋 予机器以类人能力,正在从经济、运输、医疗、安全、教育等众多领域影响和变革人类社会。当前,人工智能已经成为大国竞争的焦点,已作为经济发展的新引擎,给社会发展带来了新机遇。自从2016年美国发布《国家人工智能研究与发展战略计划》后,中国、法国、英国、德国、日本、加拿大等多国相继发布人工智能战略计划。我国人工智能技术经过产业高速发展、规模效应刺激,已成为在人工智能领域领先的国家,成为美国主要竞争对手。然而,我国在人工智能企业数量、产业布局、人才队伍、投资趋势等方面仍有不足。其中,基础技术薄弱是制约我国人工智能进一步发展的关键因素,而作为中美竞争根本因素的人才队伍,更是未能满足我国人工智能产业快速发展的需要。2017年,国务院印发了《新一代人工智能发展规划》;2018年,教育部印发《高等学校人工智能创新行动计划》;2020年,教育部、国家发展改革委与财政部联合印发《关于“双一流”建设高校促进学科融合加快人工智能领域研究生培养的若干意见》,指出高校要加强课程体系建设,建设一批有影响力的教材和国家精品在线开放课程。

近年来,全球各大高校陆续面向本科生开设了计算机视觉课程,比较有代表性的课程包括斯坦福大学 Juan Carlos Niebles 开设的 Computer Vision: Foundations and Applications 课程,加州大学伯克利分校的 Alyosha 教授团队开设的 Computer Vision 课程等。表 1 列出国外多所高校 开设计算机视觉课程的情况。

在国内,文献[1]中探讨了计算机视觉课程教学内容的选取和工程实例的选取,为当前计算机视觉课程的教学提供了一些指导意见。文献[2]中探讨了针对计算机视觉课程的特点建立面向课程的综合性实验平台,并介绍了全景拼接实验、生物特征识别实验、三维模型检索实验和深度学习实验4个实验平台。文献[3]中探索了计算机视觉课程的国际化教学模式。文献[4]中介绍了一款基于NVIDIA Jetson TX1 的计算机视觉创新实验平台,该实验平台采用了内置GPU的TX1嵌入式芯片组,使得面向计算机视觉的创新实验不再局限于PC机,可以进行面向应用的嵌入式开发,做到理论结合实践,增强实验教学效果。文献[5]中从增强课程内容的应用性与时效性、增加实践内容深度与考核力度以及设置融合专业需求的多层次课程内容3个方面,探索了面向新工科的本科生计算机视觉课程改革。文献[6]中针对目前高校计算机视觉实验面临的台套数不够和灵活性不足的问题,介绍了一个基于OpenCV和OpenGL的计算机视觉虚拟实验室。

尽管各高校在教学改革方面取得了一定的成效,但实践条件不足、实践平台短缺,仍是地方高校,尤其是在经济不发达地区的高校普遍面临的问题。特别是当前国际形势复杂,中美科技存在脱钩的风险,然而人工智能教育相关资源与平台仍然掌握在外国人手中,计算机视觉尤为如此,例如广泛应用的TensorFlow、Pytorch与OpenCV都由美国公司支持与发起。如何培养掌握自主可控的技术人才,是未来大国人工智能竞争的关键。

综上所述,当前我国计算机视觉课程实施存在以下挑战:①计算机视觉是一个典型交叉学科,涉及知识点广而深;②计算机视觉技术处于快速发展过程中,知识更新快;③计算机视觉知识碎片化,未成体系;④教学内容,特别是实践教学内容与企业需求脱节;⑤当前国际形势复杂,中美科技存在脱钩的风险,然而计算机视觉相关资源与平台仍然掌握在外国人手中。为解决这些问题,本项目探索基于国产MindSpore平台与Atlas200开发套件,实现设计面向深度学习的人脸检测与人脸识别两个综合性实验平台,涵盖了计算机视觉、操作系统、网络、AI处理器、图像传感器、深度学习与软件开发等学科,特别是覆盖了计算机视觉70%的知识点。当各综合性实验结束时,实验程序可以处理一个完整的、面向企业需求的复杂应用问题。这样不仅有利于培养学生解决企业真实问题的能力,还能提升学生对实践课的参与程度与学习兴趣。

1 实验教学项目

计算机视觉是人工智能与大数据专业核心课程之一,本课程总共32个学时,包含8个课内实验。人脸识别与人脸检测算法是计算机视觉课程中两个典型的应用,涉及计算机视觉课程中图像采集、图像预处理、特征定位、特征提取、特征表示、图像分割、特征匹配等大部分知识点。

1.1 实验目的

随着图形处理器的普及与算力的增加,深度学习算法由于其在图像处理上优异的精度,已成为如今计算机视觉课程必修的内容。当前,先进的人脸识别、图像理解、行人检测、大规模场景识别等技术都用到了深度学习的方法。特别是基于深度学习的人脸识别算法,应用了大量卷积、乘法运算,使得人脸识别系统必须使用具有较高数据处理能力的高性能芯片。然而高性能芯片的使用不可避免地将系统的整体功耗限制在了一定水平之上,影响了人脸识别系统的使用。在企业真实生产需求中,系统既要满足性能要求,又要大幅度地降低功耗。降低功耗不仅可以降低生产成本,同时还能给用户带来更好的体验。本实验教学的目的就是让学生面向企业生产环境的低功耗与高性能需求,以单片机为核心的嵌入式应用系统为基础,利用所学的计算机视觉、操作系统、计算机网络等知识,开发一套能真实运行的人脸检测与人脸识别系统。本系统所使用的硬件与设备Atlas200如图1所示。

1.2 Atlas 200

由于深度学习算法越来越复杂,目前搭载计算机视觉的嵌入式设备缺乏高性能计算能力,使得深度学习算法在服务器上设计训练完成后,不能直接移植到嵌入式设备进行实际应用。而华为开发的Atlas200应用开发板[8],正是面向这样的需求,集成了华为昇腾310AI处理器,方便开发人员迅速开发、快速验证,广泛应用于开发者验证、高校教育、科学研究等场景。

Atlas200采用了Atlas200AI加速模块(型号3000),集成了海思Ascend310AI处理器,可以对图像、视频等多种类型的数据进行分析与推理计算。该芯片体积小、处理速率快,在现今社会存在广阔的应用场景。这款AI加速模块仅有半张信用卡大,满足企业对设备便携的需求。同时其可以提供 22 TOPS INT8 算力,支持 20 路高 清视频实时分析(1080P 25FPS,具备多级算力 配置,支持 22/16/8 TOPS 三级算力)。此外,该 模块支持毫瓦级休眠、毫秒级唤醒,典型功耗仅 5.5W,可赋能边缘 AI 应用。 

1.3 MindSpore平台

MindSpore是华为公司最近推出的开源深度学习框架,可以更好匹配华为昇腾处理器算力,支持终端、边缘、云全场景部署,与TensorFlow、PyTorch、PaddlePaddle等流行深度学习框架类似。MindSpore具有编程简单、端云协同、调试轻松、性能卓越、开源开放等特点,降低了AI开发门槛。MindSpore的代码不是那么美观,类似Googlestyle,但细节上并没有严格执行,和Tensorflow一样抽象,适合大规模协同研发,又一定程度上保证质量。随着华为技术、国内科研院所对MindSpore的全力推进,近年来MindSpore应用越来越广泛。

1.4 实验步骤

人脸识别与人脸检测实验步骤如图2所示,主要包括设备安装、环境准备、编程训练、模型转换、配置环境、编译、运行等。

(1)设备安装:设备安装主要包括摄像头、网线、USB线安装,其中摄像头安装稍复杂。Atlas200支持外接摄像头,并有相应接口,支持两个MIPI-CSI接口摄像头,本实验中使用了普通树莓派摄像头。

(2)环境准备:本实验系统为Ubuntu,开发软件MindStudio是华为推出的一套基于IntelliJ框架的开发工具链平台,提供了应用开发、调试、模型转换功能,同时还提供了网络移植、优化和分析功能,为用户开发提供帮助。开发前须在Atlas200开发板中烧制系统到存储卡,同时安装相关硬件驱动。在用户PC上安装Ubuntu系统。开发语言为Python,软件安装完成后,须配置相关环境变量。图3为显示系统各个模块与数据通信关系。

(3)编程训练:本实验采用YOLOV3模型。学生须生产训练数据集,依据教师准备的图片,生成训练集样本和对应标签,经过对预处理模型训练、优化,得到人脸识别或者检测的模型。

(4)模型转换:将原始网络模型转换为适配昇腾AI处理器的模型,然后利用MindStudio进行模型转换,使之生成Atlas200可以运行的.om文件。

(5)配置环境:主要是在Atlas200上配置运行环境,须安装PresentAgent、Autoconf、Automake等包,最后设置好环境变量。

(6)编译代码:配置好环境后,编译代码,并将代码发布到Atlas200上。

(7)运行:代码编译并发布后,运行代码,系统运行可以识别人脸,并标记人脸框,显示人脸识别信度。

2 教学实施

计算机视觉是人工智能课程核心课程之一,其直接受众是我校人工智能与大数据专业学生每年4个教学班140人,该项目直接服务4480人/学时。此外本项目的前沿快速转化、系统化培养方法以及以问题为导向的教学方式,也可以推广到人工智能其他课程上。

由于课时有限,笔者在计算机视觉课程中明确课程的重点,在教学上抓主放次:对某些关键内容进行深入探讨和实践,而对相对次要的内容采取简单介绍或浏览的策略。将目标检测、人脸识别作为课程的重点,花费大量的时间深入讲解理论和组织学生实践。这样安排可以在有限的教学时间中,优化教学内容,深化教学层次,激发学生的求知兴趣与自主学习能力,使主讲教师可以腾出精力和时间来讲解教学重点与难点,强化学生的实践与动手能力。

在实践教学实施过程中,采用“五步教学法”,即课前预习、兴趣导入、合作探究、教师点评、拓展延伸。

(1)课前预习:在实验课之前,首先会讲授理论知识部分,另外,提前两周将实验指导书发放给学生,让学生自学了解实验内容。

(2)兴趣导入:在涉及人脸检测与人脸识别的理论课时,会强调人脸检测与人脸识别的应用价值,并引导学生了解日常生活中使用的人脸识别应用。在实验课时,给学生展示实验完成后的成品,引起学生兴趣。

(3)合作探究:实验自由分小组进行,一般每组有2~3人,可由一人负责理论部分,一人负责实际编码与操作,锻炼学生协作与沟通能力。

(4)教师点评:在课堂上,教师主要负责解决学生在实验中遇到的问题,并开展讨论与点拨。这样可以锻炼学生独立自主解决问题的能力,减轻教师负担。

(5)拓展延伸:设置思考题,例如让学生自己完成其他物体识别与检测,解决日常生活中的问题。

3 教学评价与反思

在教学结束后,对教学效果进行了问卷调查,主要围绕学生基本情况、实验效果、实验遇到的问题等,面向2个教学班级,共发放70份问卷,收回69份问卷。

3.1 基本情况

首先,对学生性别进行统计分析,希望分析出不同性别对实验项目兴趣度是否有不同,结果显示在人工智能与大数据专业,男生人数占比69.6%,女生人数占比30.4%,男生仍然占大多数。

另外,学生对计算机视觉课程的兴趣度统计见表2,结果显示,中位数为8分,总体来说,大部分学生对计算机视觉课程较为感兴趣。

3.2 实验效果

对学生是否最终完成Atlas200人脸识别和人脸检测实验进行统计,结果显示,79.7%的学生没有完成实验,20.3%的学生完成实验。大部分学生没有完全完成该实验,这表明面向项目化的教学对学生和教师来说都具有一定挑战,特别是在时间有限的情况下。同时对不同性别学生完成实验情况进行了分析,共14名学生完成实验,女生4名,占比28.6%;男生10名,占比71.4%。共55名学生未完成实验,女生17名,占比30.9%;男生38名,占比69.1%。结果显示,不同性别学生与完成实验情况没有太大关系,表明在人工智能与大数据专业,女生没有表现出通常认为的动手能力相对较弱的现象。

3.3 遇到的问题与分析

由于有较多学生未完成实验,因此对学生未完成实验的原因以及停留在哪步进行了分析,希望在下次课程实施过程中进行针对性改进。学生实验停留在哪步调查结果见表3,大部分学生即将完成实验,主要是卡在代码编译与环境配置上。其主要原因是学生对Atlas200运行环境不清楚,特别是对操作系统相关知识掌握不牢固。

学生未未完成实验的原因分析见表4,结果显示,学生主要认为实验时间不够以及实验指导书讲解不够清楚。由此可见本实验具有较强综合性,需要学生掌握操作系统、计算机网络、计算机视觉等相关知识,要求较高,要保证学生完成实验,必须增加实验教学时间。

由于未完成实验的学生普遍表示实验时间不足,因此对学生还需多长时间才能完成实验进行了调查,见表5,结果显示大部分学生认为至少还需要4个学时。要解决课时不足的问题,主要有两种方案,第一增加课时,第二增加学生课外学习时间。后期应增加计算机视觉课时,并采用新型教学模式,如MOOC,以增加学生自主学习时间;同时要改变实验设备管理模式,建立开放实验室,让学生在课余时间也可以到实验室操作贵重设备。

4 结 语

由于计算机视觉课程缺乏国产自主可控教学资源与实验平台,利用华为MindSpore平台与Atlas200套件,开发了面向计算机视觉课程的人脸识别与人脸检测实验实践项目,并对我校人工智能与大数据本科学生进行教学实施。对教学效果调查与评估结果显示,该实验具有较强综合性,有一定难度,学生完成度不高,其主要原因是授课与实验学时不足。在下一轮教学过程中,要增加教学学时,调动学生课外学习积极性,采用MOOC教学模式,同时改变实验设备管理模式,建立开放实验室,让学生在课余时间也可以到实验室操作设备。

 

参考文献:

[1] 种衍文. 浅议高校计算机视觉课程教学的创新[J]. 教育教学论坛, 2016(20): 118-119.

[2] 张林, 沈莹. 面向计算机视觉课程的综合性实验平台[J]. 计算机教育, 2017(5): 136-139.

[3] 王岳环, 桑农, 高常鑫. 计算机视觉课程的国际化教学模式[J]. 计算机教育, 2014(19): 101-103.

[4] 叶晨, 丁永超. 计算机视觉创新实验平台研制[J]. 实验技术与管理, 2019, 36(5): 144-149.

[5] 石蕴玉, 汤显, 韦钰. 面向新工科的本科生计算机视觉课改探索[J]. 教育现代化, 2018, 5(43): 71-72.

[6] 陶镛泽, 郭天太, 胡佳成, 等. 基于OpenCV和OpenGL的计算机视觉虚拟实验开发[J]. 实验室研究与探索, 2021, 40(4): 108-114.

[7] 华为技术. 连接Atlas 200 DK开发者板与Ubuntu服务器[EB/OL]. [2021-03-18]. https://support.huaweicloud.com/usermanualatlas200dkappc30/atlasug_03_c30_0011.html.

[8] 华为技术. 华为Atlas 200 DK 开发者套件, 技术白皮书(型号3000) [EB/OL]. [2021-03-17]. https://e.huawei.com/cn/material/serve

r/2c6bd7fa84c3475690b587dc653f28f1.

 

基金项目:教育部—华为技术有限公司产学合作协同育人——新工科建设项目(W2020029)。

第一作者简介:周俊伟,男,武汉理工大学副教授,研究方向为计算机视觉、多媒体编码,junweizhou@msn.com。

 

引文格式:周俊伟,朱安娜,王亮亮,等. 面向国产 MindSpore 平台与 Atlas 200 的计算机视觉教学改革[J].计算机教育,2022(4):56-60.

订阅快讯

通过快讯订阅,您将及时收到我们的信息更新通知。