历史性突破!计算机学院荣获第十八届“挑战杯”全国大学生课外学术科技作品竞赛“揭榜挂帅”专项赛特等奖
院办 2023-11-01 183

 1029日,第十八届挑战杯全国大学生课外学术科技作品竞赛揭榜挂帅专项赛·华为疲劳驾驶智能识别竞赛在贵州大学圆满落幕!我院智嘉极客Dream-Team:基于端云算力协同的疲劳驾驶及分神行为智能识别系统团队项目获得该揭榜挂帅项目的特等奖,这是我院在创新创业三大赛上的历史性突破,也是我校历史上第三个特等奖,揭榜挂帅专项赛项目第一个特等奖!


特等奖作品:智嘉极客Dream-Team:基于端云算力协同的疲劳驾驶及分神行为智能识别系统

 

指导老师:徐慧英、朱信忠、朱哲成

所在学院:计算机科学与技术学院(人工智能学院)

参赛人员:李琛、徐一丹、梁佳杰、陈晨、宋杰、曹雨淇、周思瑜、盛轲、王舒梦、陈晨

举办方及参加竞榜的选题发榜单位:华为云计算技术有限公司


项目简介

      作品利用端侧设备和云侧平台的协同计算,实现对驾驶员在驾驶过程中疲劳驾驶或分神行为的实时检测和预警,支持头部、眼部等多维度疲劳判断,解决了光线昏暗、夜间、逆光等高挑战性光照环境、真实环境下的模型精度及泛化性及张嘴打哈欠、张大嘴说话以及左顾右盼的边界等问题,并进行了OpenVINO模型及推理加速、DMS系统端侧部署,具有高精度、低误报/漏检率、轻量化、高响应、低资源占用、满足各类资源受限场景需求等优势,并将模型泛化应用到更多实际场景中,引导用户安全驾驶,降低因疲劳、分神等状态带来的事故风险,有效提升整车及座舱智能化水平,为中国两客一危及商用车辆安全驾驶保驾护航做出贡献。


团队简介


      智嘉极客DreamTeam团队依托于浙江师范大学人工智能技术与应用研究所机器学习与视觉应用团队,主要由实验室的在读研究生组成,帮助企业进行完整的AI人工智能落地全流程开发,并将智能座舱IMSIn-cabin Monitoring System)智能视觉监控系统之DMSDriver Monitoring System)驾驶员监控系统作为重要的研究和兴趣方向,研究方向包括且不限于:小目标检测、旋转目标检测、视频目标检测,神经网络模型压缩/加速(剪枝、量化、蒸馏等模型优化)、高效骨干模型设计、预训练视觉模型以及异步、多线程等应用层面优化等,队长是目前就读研二的李琛,带队老师为计算机学院的徐慧英副教授、朱信忠教授及朱哲成老师,其中朱信忠教授是宁波慈星股份有限公司研究院院长、北京极智嘉科技股份有限公司首席科学家,是工信部2021年度人工智能产业创新任务智能机器人揭榜挂帅项目负责人及国家科技进步二等奖第一完成人。


参赛过程


   65日,团队成员在导师指导下,研究了第十八届挑战杯全国大学生课外学术科技作品竞赛揭榜挂帅专项赛·华为疲劳驾驶智能识别竞赛2000多个视频的数据集及比赛计分规则,了解到项目以国家重大战略需求为导向,要解决的核心难题是如何结合与协同端云算力,让疲劳/分神检测更迅速,能够识别出驾驶过程中的闭眼、哈欠、打电话、左顾右盼等疲劳/分神行为,尽管离初赛提交作品及代码的截止日期只有10天,但因与团队所在实验室计算机视觉研究方向及导师安排在驭势科技实习参与的DMS系统方向基本一致,于是就自信满满地以智嘉极客DreamTeam”团队报名参赛了。在发榜单位中,华为云使用ModelArts自动判分系统,针对参赛团队提交的作品和系统算法,使用测试集视频进行批量预测、推理和评估,根据AI云计算自动评分,每个参赛团队每天可持续打榜一次,实时查看得分。61518点,团队提交了初赛比赛算法版本,并在全国466中支队伍2042的参赛竞争中,成功入围50强,顺利进入了复赛决赛,并在决赛过程中,顺利摘得了前三强及特等奖

  


为了兼顾算法精度和速度,必须协同利用端侧设备和云侧平台的算力。 疲劳/分神驾驶行为的识别综合利用到计算机视觉领域的目标检测、关键点检测、图像分类等基础技术,为提升识别效率,也需要用到剪枝、量化、蒸馏、batch推理等模型方面的优化,以及异步、多线程、pipeline并行等应用层面的优化。此项目特别能够考验项目申请者的基础理论掌控、模型设计优化、应用开发优化等方面的能力。在项目过程中,团队成员们遇到了很多困难和挑战性问题,但在指导老师的具体技术指导及鼓励下,他们没有放弃,通过团队合作和不断探索,最终克服了这些难题。

·困难和挑战一:视频数据集需要大量标注。为了提高数据集的质量和数量,团队成员们采用了很多先进的半自动标注方法:首先将三万张数据分为多个部分,再标注其中百分之三十左右,然后使用专门的自动标注模型训练辅助标注,再人工校对难例等,以此进行优化迭代。

·困难和挑战二:模型难以在边缘计算设备上部署。因为资源紧张不进行加速的模型难以满足实时性要求,加速引擎的编写,模型的推理和后处理加速等应用层面重新高效率编写及加速都是挑战,甚至包括PyTorch 2.0torch.compile新特性加速等等,使用OpenVINO加速过的模型可以轻量的部署在端侧,并且拥有实际应用所需的实时性,通过OpenVINO加速的模型可以实现实时推理,仅仅依靠CPU进行推理,并且无论模型部署在云端还是端侧,OpenVINO都可以使模型加速,团队最终高质量的完成了OpenVINO进行加速模型及推理的功能,并可以部署到单CPU的计算设备上来。

·困难和挑战三:面部表情的边界问题。其中打哈欠和张大嘴说话存在难以区别的情况,驾驶员张大嘴到底归为哪一类别的问题。最终团队成员使用多模态识别技术,通过融合图像、音频、文字识别等不同模态的数据进行特征提取和融合来区分大嘴说话和哈欠,从而攻克这一难题;车端DMS应用除了可以通过多模态识别进行以上边界识别,还能进行DMS车主ID认证以及识别车主情绪,甚至可以将大模型能力众多实用场景。

·困难和挑战四:模型泛化能力差的问题。基于华为现有的视频数据集训练的模型,在识别未见过人脸并且是不同角度时,模型无法准确识别的,最终团队成员通过扩充数据集,丰富数据集摄像角度及提供了更多的实际应用场景视频数据集等来解决这一问题。

·困难和挑战五:夜光、逆光、低光场景难以有效识别。因为数据仅仅考虑了自然光及部分夜间场景,但是光照不够尤其逆光下的人脸特征不明显的场景没有考虑到,针对这些高挑战性光照环境、真实环境下的模型精度及泛化性存在问题,结合实际应用场景,团队成员在融合层使用了拉普拉斯金字塔来捕获低频语义信息并防止高频噪声的干扰,还采用了低光弱光增强算法、联合高低自适应微光人脸检测及近红外摄像头、雷达等多传感器融合技术,从而解决了逆光下人脸轮廓不清无法识别的困难。

·困难和挑战六:应用场景单一,未知场景泛化性不够。此次赛题模型算法并未有明确的应用场景且大多是轿车内自然光下视频。团队成员在指导老师的安排下,在泛化上采用了一些混合思想、数据预处理、分类标签平滑、调整训练策略、跨卡同步及一阶段网络多尺度训练等技术手段,降低过拟合风险和提高网络泛化性能,同时,与产业界一线智能驾驶企业开展了一系列应用场景泛化探讨及轻量化部署技术交流及测试,最终将应用场景定在了DMS夜间、逆光等高挑战性光照环境的泛化应用场景中,并且参与了相关系统的算法研究及DMS系统的端侧部署。

·困难和挑战七:整个项目如何降低模型的存储空间和计算成本,同时保持较高的精度非常具有挑战性。如何让程序自动选择最适合的执行策略,如并行计算、流水线计算、内存复用等来提高模型的吞吐量和响应速度,这些都是要解决和克服的困难问题。在模型的实时性测试部分,团队发现模型在检测过程中可能会存在帧识别过程中不连续的问题,如检测框不连续、漏检、闭眼识别错误的问题,通过自蒸馏、增加训练集提升模型精度来改进优化,同时也提高了模型的实时推理效果,弥补了闭眼识别错误、框不连续等问题。针对一些眼部(生理)特征不明显、五官受到遮盖(刘海)、戴眼镜导致眼睛难以检测、光照条件不足/分辨率低等困难场景处理,根据案例进行多模型的共同决策,最后将决策的分值做加权平均得到结果来解决。团队发现,根据比赛视频数据集训练得到的模型存在过拟合、泛化性较差的情况,经实践检验,云端分数判分更高的模型反而泛化性降低,通过增加实际应用场景数据集扩增用例测试及Mosaic等各类数据增强予以克服、解决。辅助头使用网络中间层进行损失计算来辅助网络训练(深度监督:监督网络不同深度特征),团队成员发现在训练时增加辅助头可以带来更好的性能,推理时再去掉,在有效提升精度的同时,参数量也不会有大幅增加,保证模型的实时性不受影响。经过以上逐层完善及轻量化改进的模型,性能及精度大幅提升,比起基线模型,参数量减少了80%、计算量减少了74%,均有大幅降低,同时精度仍然超过当前主流方法,经过去重数据集下的实验结果,当前模型性能超过SSDDETRFasterRCNNYOLOv5nYOLOv8n等一系列模型方法。

结合团队的工程部署经验,针对此次华为竞赛的启发性思考一:如果量化疲劳驾驶模型准确度,为什么扩大数据集能识别效果很好,但是改进网络却很难提升?团队认为是因为三万张的数据集规模还是存在相似性太大的问题。思考二:经过大幅轻量化后的模型,训练本次比赛的数据,能够做到准确识别,但是其角度非常固定,当换个角度则无法识别人脸和对应表情,团队认为是因为数据角度太单一,缺乏对可能任意角度应用场景的考虑。


队长李琛感言

我及我们团队很荣幸能够在我们的导师朱信忠教授和项目指导老师徐慧英副教授及朱哲成老师的指导和鼓励下,参加第十八届挑战杯揭榜挂帅疲劳驾驶专项赛·华为疲劳驾驶智能识别竞赛,这是我们人生中的一次难忘的经历。在准备比赛的过程中,我们团队学习了很多关于计算机视觉和模型优化算法优化及应用部署的知识和技能,也遇到了很多困难和挑战,但在我们导师的具体指导和帮助下,都一一克服和解决了,收获非常大。比如,为了提高模型的性能和效率,我们使用了轻量化、剪枝、蒸馏等技术手段,对模型进行了优化和压缩,这些技术不仅可以减少模型的参数量和计算量,还可以提高模型的泛化能力和鲁棒性,使模型更适合在嵌入式设备上运行,通过这些技术,我们成功地将模型的计算量从原来的8.1GFLOPs降低到了2.1GFLOPs,同时保持了较高的准确率。为了提升模型在真实环境下的泛化应用能力,尤其是针对光线昏暗的环境下摄像头画面摄取问题、在夜间、逆光等高挑战性光照环境、真实环境下的模型精度及泛化性问题,我的导师朱信忠教授安排我们团队多位同学到UISEE驭势科技乘用车无人驾驶及DMS系统研发部实习,在CEO吴甘沙总及乘用车自动驾驶技术总监刘洋总和DMS系统部郑睿娇、冯彪等工程师的鼎力支持下,极大的提高了系统在夜间、逆光等高挑战性光照环境的泛化性能。我导师朱信忠教授又安排了智能驾驶产业界头部企业的相关技术负责人,如佑驾创新MINIEYE的董事长刘国清总裁给我们提了很多算法及实际应用场景泛化测试和优化建议,科大讯飞DMS/OMS事业部的总监沙文博士、林垠博士及研究院的殷兵副院长、刘聪院长多次对项目提出了性能部署及算法应用未知场景泛化及模型优化方面的建议,提升了项目的端侧部署及泛化性能,原华为视觉组负责人-地平线的BEV感知组技术总监张颖总给我们提出很多的轻量化部署优化建议,大大提升了项目的轻量化及工程部署水平,另外,还有朱老师邀请的西电焦李成团队、国防科大龙军、高龙、上官士源、张国敏、刘新旺等博士、华为张长旺博士、AlbertaAI的应理航博士及朱老师所兼职的极智嘉科技股份魏锡光博士的SOTA模型算法指导和帮助。通过这些产业界和学术界技术大佬的指导和帮助,让我更加深刻的体会到这些技术对于解决疲劳驾驶这一社会问题具有重要的意义和价值。最后,我特别要感谢我的指导老师徐慧英副教授和我的导师朱信忠教授,没有徐老师的大力支持,朱老师事无巨细的技术指导和鼓励,项目走不到今天。徐老师、朱老师给我们团队提供了最好的实验环境、条件,尤其最新的顶配的GPU主机、多卡服务器、多种AI开发板和顶级设备,让我们能够短时间取得非常好的训练、推理、加速和模型算法优化部署效果,还要感谢学校、学院领导和学工部老师尤其学院郑忠龙院长、刘勇书记、郑园园书记、沈波主任及校团委魏梦璐书记等的支持和帮助。用正确的方法,做有用的研究,是我们实验室的宗旨,我们也把AI驾驶重塑人类生活方式作为我们团队的目标,未来我们将继续从事智能座舱研究,把本次竞赛模型泛化应用到更多实际场景中,与更多产业界合作,为中国两客一危及商用车辆安全驾驶保驾护航做出持续贡献。