第16卷第5期 智能系统学报 Vol.16 No.5 2021年9月 CAAI Transactions on Intelligent Systems Sep.2021 D0L:10.11992tis.202107057 面向车规级芯片的对象检测模型优化方法 宫大汉2,于龙龙3,陈辉,杨帆2,骆沛5,丁贵广2 (1.清华大学软件学院,北京100084,2.清华大学北京信息科学与技术国家研究中心,北京100084,3.涿溪脑 与智能研究所,浙江杭州311121;4.清华大学自动化系,北京100084,5.禾多科技(北京)有限公司,北京 100102) 摘要:卷积神经网络复杂的网络结构使得模型计算复杂度高,限制了其在自动驾驶等实际终端场景中的应 用。针对终端场景下的计算资源受限的问题,本文从轻量化深度模型设计和车规级芯片模型部署验证两方面 进行研究。针对深度模型计算效率和检测精度的矛盾.本文设计了基于中心卷积的轻量化对象检测模型,实现 功耗低且精度高的模型性能。进一步,本文基于量化感知训练的模型加速部署方法在车规级芯片上开展了系 统级部署验证,在车规级芯片tda4上成功实现了高效的对象检测模型,在自动驾驶场景中取得了良好的性能。 关键词:人工智能:计算机视觉:对象检测:终端设备:车规级芯片:卷积神经网络:模型加速:模型量化 中图分类号:TP18 文献标志码:A 文章编号:1673-4785(2021)05-0900-08 中文引用格式:宫大汉,于龙龙,陈辉,等.面向车规级芯片的对象检测模型优化方法.智能系统学报,2021,16(5): 900-907. 英文引用格式:GONG Dahan,.YU Longlong,.CHEN Hui,,etal.Object detection model optimization method for car-.level chips Jl, CAAI transactions on intelligent systems,2021,16(5):900-907. Object detection model optimization method for car-level chips GONG Dahan",YU Longlong',CHEN Hui4,YANG Fan'2,LUO Pei,DING Guiguang'2 (1.School of Software,Tsinghua University,Beijing 100084,China;2.BNRist Tsinghua University,Beijing 100084,China, 3.Zhuoxi Institute of Brain and Intelligence,Hangzhou 311121,China;4.Department of Automation,Tsinghua University,Beijing 100084,China;5.HoloMatic Technology (Beijing)Co.,Ltd,Beijing 100102,China) Abstract:Convolutional neural networks have achieved great success in visual perception tasks.Its complex network structure makes the model computationally complex,which limits its application in actual terminal scenarios such as autonomous driving.Aiming at the problem of limited computing resources in terminal scenarios,in this paper,we con- duct research from two aspects:lightweight deep model design and the model deployment and verification on car-level chips.As for the contradiction between the calculation efficiency of deep models and the detection accuracy,we design a lightweight object detection model based on the center-convolution,enjoying low power consumption and high accur- acy model performance.Furthermore,based on the method of quantization aware training,we carried out system-level deployment and verification on car-level chips.We successfully implemented a high-efficiency object detection model on the car-level chips,i.e.tda4,and achieved good performance in autonomous driving scenarios. Keywords:artificial intelligence;computer vision;object detection;terminal equipment,car-level chip;convolutional neural network;model acceleration;model quantization 卷积神经网络(convolutional neural network, 已经成为一种标准的智能结构,在智能手机、可 CNN)在图像识别、对象检测等视觉感知任务上 穿戴设备、IoT终端设备、自动驾驶等智能应用中 取得了巨大的成功。由于其优秀的性能,使得CNN 扮演着重要的角色。然而,CNN参数量巨大、计 收稿日期:2021-07-27. 算复杂度高的特点限制了它在实际场景中的大范 基金项目:国家自然科学基金项目(U1936202,61925107):中国 围落地应用。比如在自动驾驶领域,如果CNN模 博士后科学基金创新人才计划项目(BX2021161). 通信作者:丁贵广.E-mail:dinggg@tsinghua.edu.cn 型部署到云端,那么网络传输的稳定性将决定系
DOI: 10.11992/tis.202107057 面向车规级芯片的对象检测模型优化方法 宫大汉1,2,于龙龙3 ,陈辉2,4,杨帆1,2,骆沛5 ,丁贵广1,2 (1. 清华大学 软件学院 , 北京 100084; 2. 清华大学 北京信息科学与技术国家研究中心,北京 100084; 3. 涿溪脑 与智能研究所,浙江 杭州 311121; 4. 清华大学 自动化系,北京 100084; 5. 禾多科技 (北京) 有限公司,北京 100102) 摘 要:卷积神经网络复杂的网络结构使得模型计算复杂度高,限制了其在自动驾驶等实际终端场景中的应 用。针对终端场景下的计算资源受限的问题,本文从轻量化深度模型设计和车规级芯片模型部署验证两方面 进行研究。针对深度模型计算效率和检测精度的矛盾,本文设计了基于中心卷积的轻量化对象检测模型,实现 功耗低且精度高的模型性能。进一步,本文基于量化感知训练的模型加速部署方法在车规级芯片上开展了系 统级部署验证,在车规级芯片 tda4 上成功实现了高效的对象检测模型,在自动驾驶场景中取得了良好的性能。 关键词:人工智能;计算机视觉;对象检测;终端设备;车规级芯片;卷积神经网络;模型加速;模型量化 中图分类号:TP18 文献标志码:A 文章编号:1673−4785(2021)05−0900−08 中文引用格式:宫大汉, 于龙龙, 陈辉, 等. 面向车规级芯片的对象检测模型优化方法 [J]. 智能系统学报, 2021, 16(5): 900–907. 英文引用格式:GONG Dahan, YU Longlong, CHEN Hui, et al. Object detection model optimization method for car-level chips[J]. CAAI transactions on intelligent systems, 2021, 16(5): 900–907. Object detection model optimization method for car-level chips GONG Dahan1,2 ,YU Longlong3 ,CHEN Hui2,4 ,YANG Fan1,2 ,LUO Pei5 ,DING Guiguang1,2 (1. School of Software, Tsinghua University, Beijing 100084, China; 2. BNRist Tsinghua University, Beijing 100084, China; 3. Zhuoxi Institute of Brain and Intelligence, Hangzhou 311121, China; 4. Department of Automation, Tsinghua University, Beijing 100084, China; 5. HoloMatic Technology (Beijing) Co., Ltd, Beijing 100102, China) Abstract: Convolutional neural networks have achieved great success in visual perception tasks. Its complex network structure makes the model computationally complex, which limits its application in actual terminal scenarios such as autonomous driving. Aiming at the problem of limited computing resources in terminal scenarios, in this paper, we conduct research from two aspects: lightweight deep model design and the model deployment and verification on car-level chips. As for the contradiction between the calculation efficiency of deep models and the detection accuracy, we design a lightweight object detection model based on the center-convolution, enjoying low power consumption and high accuracy model performance. Furthermore, based on the method of quantization aware training, we carried out system-level deployment and verification on car-level chips. We successfully implemented a high-efficiency object detection model on the car-level chips, i.e. tda4, and achieved good performance in autonomous driving scenarios. Keywords: artificial intelligence; computer vision; object detection; terminal equipment; car-level chip; convolutional neural network; model acceleration; model quantization 卷积神经网络(convolutional neural network, CNN)在图像识别、对象检测等视觉感知任务上 取得了巨大的成功。由于其优秀的性能,使得 CNN 已经成为一种标准的智能结构,在智能手机、可 穿戴设备、IoT 终端设备、自动驾驶等智能应用中 扮演着重要的角色。然而,CNN 参数量巨大、计 算复杂度高的特点限制了它在实际场景中的大范 围落地应用。比如在自动驾驶领域,如果 CNN 模 型部署到云端,那么网络传输的稳定性将决定系 收稿日期:2021−07−27. 基金项目:国家自然科学基金项目(U1936202,61925107);中国 博士后科学基金创新人才计划项目(BX2021161). 通信作者:丁贵广. E-mail:dinggg@tsinghua.edu.cn. 第 16 卷第 5 期 智 能 系 统 学 报 Vol.16 No.5 2021 年 9 月 CAAI Transactions on Intelligent Systems Sep. 2021
第5期 宫大汉,等:面向车规级芯片的对象检测模型优化方法 ·901· 统是否能及时应对不断变化的外部环境,进而影 时的模型大小。相比于标准的3×3卷积,所提出 响整体自动驾驶性能。而受限于网络传输的不稳 的中心卷积不增加推理复杂度,但是具有更强的 定性,这种云端计算终端响应的方式在实际自动 特征学习能力,使得模型检测效果更佳。 驾驶系统中难以广泛应用。所以,基于车载终端 本文用中心卷积替换了ResNet18中的3×3卷 设备实现深度模型的部署成为一种越来越流行的 积,构建了基于中心卷积的CenterNet模型,并在 解决方案。 实际的车规级计算芯片上进行了模型部署验证。 然而,面向车载终端设备的深度模型部署存 尽管ResNet18的计算复杂度不高,但为了充分利 在着计算资源和模型性能的矛盾。具体来说,深 用车载系统的计算资源,希望尽可能在保持精度 度模型复杂度越高,通常它的效果越好,但其计 的情况下,提升CenterNet的计算效率。为此,本 算速率越差。考虑到终端设备上缺少高性能计算 文采用一套基于量化的部署流程:首先使用量化 单元(如GPU)的支持,使得复杂度高的深度模型 感知的训练方式对给定的CenterNet进行重训练, 无法满足计算效率的要求。而如果采用复杂度低 得到int8数值精度的CenterNet模型,然后调用底 的小模型,又面临模型性能不佳的问题。因此, 层开放接口,将模型部署在芯片上。通过这种量 如何在计算资源受限条件下实现高精度深度模型 化感知训练,可以得到低比特的模型,减少了模 的部署对自动驾驶至关重要。 型的大小,并且保持了足够高的模型精度。而在 本文面向自动驾驶场景,研究车规级芯片上 芯片线上推理过程中,模型以低比特it8进行运 的对象检测模型高效计算方法。本文使用先 算,相比于float.32运算,处理速度更快。 进的对象检测模型CenterNet!作为实验模型。这 综上所述,本文提出了一种中心卷积来替代 种模型通过预测对象中心点的位置和包围盒的偏 ResNet1:8中的3×3卷积,构建了基于中心卷积的 移量,进而确定对象的整体位置。通常使用主流 CenterNet对象检测模型;进一步,采用基于量化 深度学习模型,比如ResNet作为模型的主干网 的模型部署方法,实现在车规级芯片上的模型效 络。主干网络可以将输入的视觉图像均分为网格 果验证。 区域,然后CenterNet判断每个网格点是否是某个 1相关工作 对象的中心。考虑到车载系统缺乏高性能计算单 元GPU,本文采用轻量型深度模型ResNet18作为 对象检测领域的研究热点经历了由基于锚点 CenterNet的主干网铬。 框(anchor--based)检测模型到无锚点框(anchor- ResNet18通过堆叠3×3卷积,使得在一个 free)检测模型。其中,以CornerNet!为代表的基 3×3的卷积窗口中,卷积核的中心点对应的区域 于关键点预测的对象检测模型的出现引起了研究 可以不断“吸收”周围区域的信息来增强自身的特 者的广泛兴趣,anchor-free的方法渐渐兴起。 征表达。这种方式的缺点在于3×3卷积将中心区 CornerNet首次提出预测包围框的一对角点来检 域的特征和周围区域的特征同等对待,容易降低 测目标,并使用角池化操作来更好地定位包围框 中心区域的特性在特征中的表达,加大了模型混 的角点。之后,Zhou等提出ExtremeNet来预测 淆中心区域和其他区域的可能性,不利于Center- 对象的极值点和中心点进而实现目标检测的目 Net对关键点的定位. 的,后面又进一步提出CenterNet只预测中心点来 为了解决这个问题,本文提出一个基于中心 检测目标。Liu等rI改进了CenterNet,.提出了 卷积的对象检测模型。具体来说,本文为3×3卷 TTFNet,使用高斯核编码来引入更多的回归样本, 积增加一个1×1卷积旁路,这种旁路对应3×3卷 极大地加快了模型的训练速度。而Zhou等⑧又 积核的中心区域,可以充分学习中心区域的隐藏 将中心点预测的思想引入到两阶段(two-stage)检 特性。本文对3×3卷积和1×1卷积的输出进行加 测模型中,获得了显著的性能。 和融合,并将这种结构命名为中心卷积。所设计 需要指出的是,本文重点关注深度模型在车 的中心卷积可以独立学习中心区域的特性和周围 规级芯片上的高效推理。具体来说,本文希望在 区域的关联信息,有效增强中心区域的特征表 有限的计算资源条件下实现高性能和高效率的对 达,促进关键点的预测。3×3卷积和1×1卷积都 象检测模型。考虑到CenterNet具有简单易扩展 是线性变换,因此在模型部署推理时,可以很方 的优点,所以本文采用CenterNet为实验模型进行 便地将1×1卷积旁路的参数融合到3×3卷积核的 探索,而不采用近期对CenterNet的改进工作进行 中心点上,恢复成标准3×3卷积,大大降低了推理 实验,如CenterNet.2、TTFNet
统是否能及时应对不断变化的外部环境,进而影 响整体自动驾驶性能。而受限于网络传输的不稳 定性,这种云端计算终端响应的方式在实际自动 驾驶系统中难以广泛应用。所以,基于车载终端 设备实现深度模型的部署成为一种越来越流行的 解决方案。 然而,面向车载终端设备的深度模型部署存 在着计算资源和模型性能的矛盾。具体来说,深 度模型复杂度越高,通常它的效果越好,但其计 算速率越差。考虑到终端设备上缺少高性能计算 单元(如 GPU)的支持,使得复杂度高的深度模型 无法满足计算效率的要求。而如果采用复杂度低 的小模型,又面临模型性能不佳的问题。因此, 如何在计算资源受限条件下实现高精度深度模型 的部署对自动驾驶至关重要。 本文面向自动驾驶场景,研究车规级芯片上 的对象检测[1-2] 模型高效计算方法。本文使用先 进的对象检测模型 CenterNet[3] 作为实验模型。这 种模型通过预测对象中心点的位置和包围盒的偏 移量,进而确定对象的整体位置。通常使用主流 深度学习模型,比如 ResNet[4] 作为模型的主干网 络。主干网络可以将输入的视觉图像均分为网格 区域,然后 CenterNet 判断每个网格点是否是某个 对象的中心。考虑到车载系统缺乏高性能计算单 元 GPU,本文采用轻量型深度模型 ResNet18 作为 CenterNet 的主干网络。 ResNet18 通过堆叠 3×3 卷积,使得在一个 3×3 的卷积窗口中,卷积核的中心点对应的区域 可以不断“吸收”周围区域的信息来增强自身的特 征表达。这种方式的缺点在于 3×3 卷积将中心区 域的特征和周围区域的特征同等对待,容易降低 中心区域的特性在特征中的表达,加大了模型混 淆中心区域和其他区域的可能性,不利于 CenterNet 对关键点的定位。 为了解决这个问题,本文提出一个基于中心 卷积的对象检测模型。具体来说,本文为 3×3 卷 积增加一个 1×1 卷积旁路,这种旁路对应 3×3 卷 积核的中心区域,可以充分学习中心区域的隐藏 特性。本文对 3×3 卷积和 1×1 卷积的输出进行加 和融合,并将这种结构命名为中心卷积。所设计 的中心卷积可以独立学习中心区域的特性和周围 区域的关联信息,有效增强中心区域的特征表 达,促进关键点的预测。3×3 卷积和 1×1 卷积都 是线性变换,因此在模型部署推理时,可以很方 便地将 1×1 卷积旁路的参数融合到 3×3 卷积核的 中心点上,恢复成标准 3×3 卷积,大大降低了推理 时的模型大小。相比于标准的 3×3 卷积,所提出 的中心卷积不增加推理复杂度,但是具有更强的 特征学习能力,使得模型检测效果更佳。 本文用中心卷积替换了 ResNet18 中的 3×3 卷 积,构建了基于中心卷积的 CenterNet 模型,并在 实际的车规级计算芯片上进行了模型部署验证。 尽管 ResNet18 的计算复杂度不高,但为了充分利 用车载系统的计算资源,希望尽可能在保持精度 的情况下,提升 CenterNet 的计算效率。为此,本 文采用一套基于量化的部署流程:首先使用量化 感知的训练方式对给定的 CenterNet 进行重训练, 得到 int8 数值精度的 CenterNet 模型,然后调用底 层开放接口,将模型部署在芯片上。通过这种量 化感知训练,可以得到低比特的模型,减少了模 型的大小,并且保持了足够高的模型精度。而在 芯片线上推理过程中,模型以低比特 int8 进行运 算,相比于 float32 运算,处理速度更快。 综上所述,本文提出了一种中心卷积来替代 ResNet18 中的 3×3 卷积,构建了基于中心卷积的 CenterNet 对象检测模型;进一步,采用基于量化 的模型部署方法,实现在车规级芯片上的模型效 果验证。 1 相关工作 对象检测领域的研究热点经历了由基于锚点 框(anchor-based)检测模型到无锚点框(anchorfree)检测模型。其中,以 CornerNet[5] 为代表的基 于关键点预测的对象检测模型的出现引起了研究 者的广泛兴趣, anchor-free 的方法渐渐兴起。 CornerNet 首次提出预测包围框的一对角点来检 测目标,并使用角池化操作来更好地定位包围框 的角点。之后,Zhou 等 [6] 提出 ExtremeNet 来预测 对象的极值点和中心点进而实现目标检测的目 的,后面又进一步提出 CenterNet 只预测中心点来 检测目标。Liu 等 [ 7 ] 改进了 CenterNet,提出了 TTFNet,使用高斯核编码来引入更多的回归样本, 极大地加快了模型的训练速度。而 Zhou 等 [8] 又 将中心点预测的思想引入到两阶段(two-stage)检 测模型中,获得了显著的性能。 需要指出的是,本文重点关注深度模型在车 规级芯片上的高效推理。具体来说,本文希望在 有限的计算资源条件下实现高性能和高效率的对 象检测模型。考虑到 CenterNet 具有简单易扩展 的优点,所以本文采用 CenterNet 为实验模型进行 探索,而不采用近期对 CenterNet 的改进工作进行 实验,如 CenterNet2[8] 、TTFNet[7]。 第 5 期 宫大汉,等:面向车规级芯片的对象检测模型优化方法 ·901·
·902· 智能系统学报 第16卷 2基于中心卷积的对象检测模型 ReLU 2.1中心卷积 ReLU 本文的中心卷积关注对3×3卷积的改进。首 先,为了更好地描述中心卷积,将卷积运算描述 为:给定输入特征图为M∈RxvC,卷积输出特征 BN BN2 图为E RUxxn,那么对于一个卷积核大小为H×W 且有l)慎充的卷积,可以用Fehwco表 3×3 3×3 1×1 conv conv conv 示它的参数,且满足: Ok=MU*F,k∈[1,D] (1) 输人 输人 式中:*表示矩阵元素相乘;M可是从M中以(位,)为 (a)标准卷积 b)中心卷积 中心截取的一个大小为H×W×C的矩阵;F表示 图2标准卷积和中心卷积 第k个大小为H×W×C的矩阵。3×3卷积和1×1 Fig.2 Standard convolution and center-convolution 卷积都可以用式(1)来描述。 中心卷积尽管因为引入了旁路分支而增加了 图1展示了3×3卷积运算。卷积以3×3为滑 模型的复杂度,但实际上,所引入的1×1卷积以 动窗口对输入的特征图M进行处理,处理时,将中 及BN层可以融合进3×3卷积中,因此,形式上就 心区域(位,)信息和窗口内的区域信息进行融合, 等价于标准的3×3卷积。具体来说,给定中心卷 输出的特征可作为中心区域(伍,)的更高层次的特 积,其中的3×3卷积设为F33eRx3xCD,1×1卷积 征表示。可以看到,这种方式直接对窗口内的区 设为FIx1∈R1 xIxCxD,对于给定的输入特征中的一 域特征进行融合,没有考虑到每个区域的不同, 个3×3的分块M∈Rx3xC,卷积层的输出0eRP为 这样就容易减弱中心区域的特性信息在更高层次 a=∑r*M+F*Mu (2) 特征中的表达,使得在CenterNet中对关键点的预 式(2)可以很容易地将Fx融合到F3x3中的 测效果不佳。 (L,1)的张量上,得到新的3×3卷积Pnew ER3xCx: F0加i≠ljt1 (3) F+Fooi=1.j=1 图3展示了中心卷积的融合过程。在模型训 练时,本文将中心卷积设计为图2所示的双分支 3×3卷 的结构,这样可以利用冗余的1×1旁路分支来增 积核F 强模型对图像显著性特征的学习,提高网络的学 输入特征M 输人特征O 习性能,而在推理阶段,利用图3所示的分支融合 机制,可以很好地将冗余参数融合进主干3×3分 图13×3卷积运算 支中,融合后的计算等价于标准的3×3卷积,不会 Fig.1 3x3 convolution operation 提高模型的推理复杂度。 为了解决上述问题,本文提出中心卷积(cen- ter-convolution)来增强中心区域的信息。中心卷 (0,0)(0,1)(0,2) 积被设计为双分支的架构,其中一个分支是标准 (1,0)(1,HL22) 的3×3卷积后接一个批规范层(batch normaliza- tion,BN)9,用于融合领域的信息,另外一个分支 (20)(2,1)(2,2) 0,0)0,1)0,2) 是一个1×1的卷积旁路,同样后接一个批规范层 3×3 1,0)1,1)(1,2) 用于增强中心区域自身的信息。需要注意的是, 2,0)2,1)2,2) 两个分支学习到的信息是不一样的,所以学习到 (0,0) 的特征空间中的分布不一样。因此,双分支的两 1×1 个BN层的参数是不共享的。在BN层将不同信 图3将1×1卷积融合到3x3卷积中 息进行规范化约束后,对两个分支进行加和操作 Fig.3 Merging 1x1 into 3x3 得到最终的中心区域的特征。图2展示了标准 2.2 基于中心卷积的CenterNet检测模型 的3×3卷积和所提出的中心卷积的差异。 本文选择CenterNet来构建检测模型。Cen-
2 基于中心卷积的对象检测模型 2.1 中心卷积 M ∈ R U×V×C O ∈ R U×V×D H × W (⌊ H 2 ⌋ , ⌊W 2 ⌋) F ∈ R H×W×C×D 本文的中心卷积关注对 3×3 卷积的改进。首 先,为了更好地描述中心卷积,将卷积运算描述 为:给定输入特征图为 ,卷积输出特征 图为 ,那么对于一个卷积核大小为 且有 填充的卷积,可以用 表 示它的参数,且满足: Oi, j,k = Mi, j ∗ F k , k ∈ [1,D] (1) ∗ Mi, j M (i, j) H × W ×C F k H × W ×C 式中: 表示矩阵元素相乘; 是从 中以 为 中心截取的一个大小为 的矩阵; 表示 第 k 个大小为 的矩阵。3×3 卷积和 1×1 卷积都可以用式 (1) 来描述。 M (i, j) (i, j) 图 1 展示了 3×3 卷积运算。卷积以 3×3 为滑 动窗口对输入的特征图 进行处理,处理时,将中 心区域 信息和窗口内的区域信息进行融合, 输出的特征可作为中心区域 的更高层次的特 征表示。可以看到,这种方式直接对窗口内的区 域特征进行融合,没有考虑到每个区域的不同, 这样就容易减弱中心区域的特性信息在更高层次 特征中的表达,使得在 CenterNet 中对关键点的预 测效果不佳。 3×3 卷 积核 F 输入特征 M 输入特征 O 图 1 3×3 卷积运算 Fig. 1 3×3 convolution operation 为了解决上述问题,本文提出中心卷积(center-convolution)来增强中心区域的信息。中心卷 积被设计为双分支的架构,其中一个分支是标准 的 3×3 卷积后接一个批规范层(batch normalization,BN) [9] ,用于融合领域的信息,另外一个分支 是一个 1×1 的卷积旁路,同样后接一个批规范层, 用于增强中心区域自身的信息。需要注意的是, 两个分支学习到的信息是不一样的,所以学习到 的特征空间中的分布不一样。因此,双分支的两 个 BN 层的参数是不共享的。在 BN 层将不同信 息进行规范化约束后,对两个分支进行加和操作 得到最终的中心区域的特征。图 2 展示了标准 的 3×3 卷积和所提出的中心卷积的差异。 ReLU ReLU + BN BN1 BN2 3×3 conv 3×3 conv 1×1 conv 输入 输入 (a) 标准卷积 (b) 中心卷积 图 2 标准卷积和中心卷积 Fig. 2 Standard convolution and center-convolution F 3×3 ∈ R 3×3×C×D F 1×1 ∈ R 1×1×C×D M ∈ R 3×3×C O ∈ R D 中心卷积尽管因为引入了旁路分支而增加了 模型的复杂度,但实际上,所引入的 1×1 卷积以 及 BN 层可以融合进 3×3 卷积中,因此,形式上就 等价于标准的 3×3 卷积。具体来说,给定中心卷 积,其中的 3×3 卷积设为 ,1×1 卷积 设为 ,对于给定的输入特征中的一 个 3×3 的分块 ,卷积层的输出 为 Ok = ∑3,3 i, j F 3×3 (i, j,:,k) ∗ M(i, j,:) + F 1×1 (0,0,:,k) ∗ M(1,1,:) (2) F 1×1 F 3×3 3×3 F new ∈ R 3×3×C×D 式 (2) 可以很容易地将 融合到 中的 (1,1) 的张量上,得到新的 卷积 : F new = F 3×3 (i, j,:,:)), i , 1, j , 1 F 3×3 (1,1,:,:) + F 1×1 (0,0,:,:) , i = 1, j = 1 (3) 图 3 展示了中心卷积的融合过程。在模型训 练时,本文将中心卷积设计为图 2 所示的双分支 的结构,这样可以利用冗余的 1×1 旁路分支来增 强模型对图像显著性特征的学习,提高网络的学 习性能,而在推理阶段,利用图 3 所示的分支融合 机制,可以很好地将冗余参数融合进主干 3×3 分 支中,融合后的计算等价于标准的 3×3 卷积,不会 提高模型的推理复杂度。 (0, 0) (0, 0) (0, 1) (0, 2) (1, 0) (1, 1) (1, 2) (2, 0) (2, 1) (2, 2) (0, 0) (0, 1) (0, 2) (1, 0) (1, 1) (1, 2) (2, 0) (2, 1) (2, 2) 3×3 + 1×1 图 3 将 1×1 卷积融合到 3×3 卷积中 Fig. 3 Merging 1×1 into 3×3 2.2 基于中心卷积的 CenterNet 检测模型 本文选择 CenterNet 来构建检测模型。Cen- ·902· 智 能 系 统 学 报 第 16 卷
第5期 宫大汉,等:面向车规级芯片的对象检测模型优化方法 ·903· terNet抛弃了传统的基于锚点框(anchor)o的对 预训练好的深度模型进行参数量化。但是实验表 象检测方法,而是通过预测日标对象的中心点位 明,这种后量化的方式存在量化误差累积的缺 置和大小来预测对象的包围框。 陷,使得量化后的模型性能产生了极大的损失。 CenterNet的结构包含两个部分。对于给定 目前的很多深度学习框架,比如pytorch!!2)和 的一张图像I∈RWxHx3,首先使用主干网络对图像 TensorFlow!)都使用了一种量化感知的方法,将 进行特征抽取,得到一个14×14的特征图,接着, 参数量化的过程融合进模型训练过程中,让网络 使用反卷积扩大特征图分辨率,得到一个热力图 参数能够适应量化带来的信息损失。本文采用同 张量了e0,]x"c,其中R是下采样率,C是类别 样的方法对深度模型进行处理。具体来说,将量 数目。如果了=1表示点(化,y)是检测到的关键点, 化算法集成为一个模块,并串联在卷积参数层的 反之则是背景。 后面参与特征计算,流程如图4所示。因为量化 使用本文提出的中心卷积来构建ResNet18 操作里面的round函数不是可导的,所以在反向 模型,并在ImageNet!上进行预训练。为了方便 传播的时候无法将梯度准确地传给前面层的参 描述,本文将得到的模型命名为C-ResNet18。并 数。为了解决这个问题,本文重构了量化层的前 基于C-ResNet18卷积神经网络设计主干网络构 向和后向操作,在前向时按照量化操作正常进 建CenterNet对象检测模型,得到的模型称为CR- 行,反向时跳过量化层,直接把卷积层的梯度回 CenterNet。为了对比,本文也基于ResNet18构建 传到量化前的卷积参数中来。因为卷积层的梯度 了CenterNet,.得到的模型称为R-CenterNet。对比 是经过量化操作的,因此可以模拟量化误差,把 效果详见实验部分。 误差的梯度回传到原来的参数上,使得原来的参 数去自适应地感知量化产生的误差。本文的实验 3基于量化的深度模型部署 结果表明,量化感知训练的方式可以避免模型的 考虑到在自动驾驶车辆上,通常部署一些专用 性能下降,而其计算效率成倍提升。 的终端芯片和设备来执行相关算法和模型。计算 资源受限是该类设备的一大缺陷,这给复杂度高 i 的智能模型的应用带来了巨大的挑战。面向终端 ReLU 设备的深度模型加速技术能够显著降低深度模型 前向传播:十 的复杂度,有利于深度模型在终端设备上的部署。 反向传播: 偏置 化 本文采用基于量化的模型加速方法,以最大 化车载系统底层计算模块的计算效率。深度模型 在训练过程中使用浮点精度来表示参数和数据的 Conv 量化 参数 数值,从硬件原理来说,整数运算比相同位数的 浮点运算更快且更省电,如果将深度模型的计算 输人 全部转化为整数运算,势必带来极大的加速效 果。基于量化的模型加速方法就是通过将浮点 图4带量化层的卷积操作 Fig.4 Convolution with the quantization layer (f1oat32)精度数值量化到短型整数(int8)精度数 值,实现了模型的高效运算。 4 面向车规级芯片的检测验证系统 假设要量化的浮点数是x,量化后的整数是y, 两者的换算公式为:x=S0-Z.y=ound传+Z列, 本文在车规级计算芯片上搭建了对象检测系 其中,S表示x和y之间的比例关系,Z表示量 统。为了达到这个目标,本文首先针对真实的自 化后的整数0点,对应量化前的0点。它们的计 动驾驶场景收集了一批数据,并采用人工的方式 算为 进行数据标注。本文一共收集了两批数据:泊车 s=-,Z=roundy-号) 数据和公路数据。泊车数据在室外泊车场景采 (4) Ymx一Yain 集,共有7848张RGB图像,每张图像标注了 式中:x和xn分别表示x的最大值和最小值; 2D的包围框和物体接地点位置。如图5所示,红 yamx和ym分别表示y的最大值和最小值;round函 框是车辆的包围框,彩色点是车辆的接地点。公 数表示四舍五人运算。 路数据是在公路场景采集的,由22213张RGB图 基于上述的数值量化方法,可以很容易地将 像组成,标注了3D的包围框
terNet 抛弃了传统的基于锚点框(anchor) [10] 的对 象检测方法,而是通过预测目标对象的中心点位 置和大小来预测对象的包围框。 I ∈ R W×H×3 14×14 Yb ∈ [0,1] W R × H R ×C Ybx,y,c = 1 (x, y) CenterNet 的结构包含两个部分。对于给定 的一张图像 ,首先使用主干网络对图像 进行特征抽取,得到一个 的特征图,接着, 使用反卷积扩大特征图分辨率,得到一个热力图 张量 ,其中 R 是下采样率,C 是类别 数目。如果 表示点 是检测到的关键点, 反之则是背景。 使用本文提出的中心卷积来构建 ResNet18 模型,并在 ImageNet[11] 上进行预训练。为了方便 描述,本文将得到的模型命名为 C-ResNet18。并 基于 C-ResNet18 卷积神经网络设计主干网络构 建 CenterNet 对象检测模型,得到的模型称为 CRCenterNet。为了对比,本文也基于 ResNet18 构建 了 CenterNet,得到的模型称为 R-CenterNet。对比 效果详见实验部分。 3 基于量化的深度模型部署 考虑到在自动驾驶车辆上,通常部署一些专用 的终端芯片和设备来执行相关算法和模型。计算 资源受限是该类设备的一大缺陷,这给复杂度高 的智能模型的应用带来了巨大的挑战。面向终端 设备的深度模型加速技术能够显著降低深度模型 的复杂度,有利于深度模型在终端设备上的部署。 本文采用基于量化的模型加速方法,以最大 化车载系统底层计算模块的计算效率。深度模型 在训练过程中使用浮点精度来表示参数和数据的 数值,从硬件原理来说,整数运算比相同位数的 浮点运算更快且更省电,如果将深度模型的计算 全部转化为整数运算,势必带来极大的加速效 果。基于量化的模型加速方法就是通过将浮点 (float32)精度数值量化到短型整数(int8)精度数 值,实现了模型的高效运算。 x y x = S (y−Z) y = round( x S +Z ) 假设要量化的浮点数是 ,量化后的整数是 , 两者的换算公式为: , 。 其中,S 表示 x 和 y 之间的比例关系,Z 表示量 化后的整数 0 点,对应量化前的 0 点。它们的计 算为 S = xmax − xmin ymax −ymin , Z = round( ymax − xmax S ) (4) xmax xmin ymax ymin 式中: 和 分别表示 x 的最大值和最小值; 和 分别表示 y 的最大值和最小值;round 函 数表示四舍五入运算。 基于上述的数值量化方法,可以很容易地将 预训练好的深度模型进行参数量化。但是实验表 明,这种后量化的方式存在量化误差累积的缺 陷,使得量化后的模型性能产生了极大的损失。 目前的很多深度学习框架,比如 pytorch[ 1 2 ] 和 TensorFlow[13] 都使用了一种量化感知的方法,将 参数量化的过程融合进模型训练过程中,让网络 参数能够适应量化带来的信息损失。本文采用同 样的方法对深度模型进行处理。具体来说,将量 化算法集成为一个模块,并串联在卷积参数层的 后面参与特征计算,流程如图 4 所示。因为量化 操作里面的 round 函数不是可导的,所以在反向 传播的时候无法将梯度准确地传给前面层的参 数。为了解决这个问题,本文重构了量化层的前 向和后向操作,在前向时按照量化操作正常进 行,反向时跳过量化层,直接把卷积层的梯度回 传到量化前的卷积参数中来。因为卷积层的梯度 是经过量化操作的,因此可以模拟量化误差,把 误差的梯度回传到原来的参数上,使得原来的参 数去自适应地感知量化产生的误差。本文的实验 结果表明,量化感知训练的方式可以避免模型的 性能下降,而其计算效率成倍提升。 偏置 量化 量化 ReLU 前向传播: 反向传播: + Conv 参数 输入 图 4 带量化层的卷积操作 Fig. 4 Convolution with the quantization layer 4 面向车规级芯片的检测验证系统 本文在车规级计算芯片上搭建了对象检测系 统。为了达到这个目标,本文首先针对真实的自 动驾驶场景收集了一批数据,并采用人工的方式 进行数据标注。本文一共收集了两批数据:泊车 数据和公路数据。泊车数据在室外泊车场景采 集,共有 7 848 张 RGB 图像,每张图像标注了 2D 的包围框和物体接地点位置。如图 5 所示,红 框是车辆的包围框,彩色点是车辆的接地点。公 路数据是在公路场景采集的,由 22 213 张 RGB 图 像组成,标注了 3D 的包围框。 第 5 期 宫大汉,等:面向车规级芯片的对象检测模型优化方法 ·903·
·904· 智能系统学报 第16卷 好的CR-CenterNet模型进行量化(如第3节内容 所述),然后注人到tda4芯片上进行运算。整体 的开发流程如图7所示。 C-ResNet18 ImageNet 预训练 (a)泊车数据 CR-CenterNet 训练 。” 泊车数据 。。 CR-CenterNet 量化感知训练 (b)公路数据 CR-CenterNet 车规级芯片验证 公路数据 图5泊车数据和公路数据 Fig.5 Parking data and road data 图7面向车规级芯片的检测系统构建 Fig.7 Constructing the detection system on car-level chips 成本是智能算法在自动驾驶场景面临的一个 重要的问题。自动驾驶场景复杂广泛,如果使用 5实验 全监督的方式进行数据标注,标注成本将不可估 量。其次,对象的3D信息是保障自动驾驶安全 5.1 中心卷积 可行的一种重要数据,但其采集设备代价昂贵, 在本节中,将验证所提出的中心卷积的有效 不适合车辆量产。对此,本文设计了一套从2D 性。ImageNet是目前国际上主流的大型图像分类 图片到3D空间推断的对象检测流程。具体来 评测集,在人工智能的发展史上具有举足轻重的 说,本文用泊车数据中的2D包围框和接地点训 地位。AlexNet"、VGGNet、GoogleNet!、ResNet 练了所提出的基于中心卷积的对象检测模型C- 和DenseNet!的成功都离不开ImageNet,.ImageN- CenterNet,.然后利用输出的2D框和接地点信息, t也已经成为计算机视觉领域的标准数据集。研 逆投影到世界坐标系中,得到对象的3D位置信 究者通常会使用ImageNet来验证新提出的模型 息,即输入是2D图像,输出是3D位置信息(这里 的有效性,然后在下游任务上进行验证,如对象检测网 实例分割92、行人重识别22等。 用鸟瞰图表示,如图6所示)。在训练阶段,CR CenterNet只在泊车数据上训练,测试时只在公路 因此,本文在ImageNet上对C-ResNet18进行 了预训练,并在图像分类任务上展示其有效性。 数据上进行测试。实验发现,尽管模型在训练过 在训练时,本文采用批训练(batch)的方式来训练 程中没有感知到公路数据上的对象信息,但是在 C-ResNet18,每批次采样256张图片,并训练120 公路数据上仍然具有较好的性能,说明模型具有 轮。模型的训练学习率设置为0.1,采用简单的数 较好的泛化能力。 据增广策略,如随机裁剪和随机水平翻转。 2D图像 3D空间鸟瞰图 为了展示所提出的中心卷积的有效性,本文 检测 把ResNet18作为基线模型,并和C-ResNet18进行 对比。对比结果如表1所示。 表1在ImageNet上的分类准确率 Table 1 Classification accuracy on ImageNet olo 图6自动驾驶的检测任务 模型 top-1准确率 top-5准确率 Fig.6 A detection task toward the autopilot ResNet18-torchvision 69.76 89.08 芯片的计算效率是限制深度模型在车载系统 ResNet18-Ours 70.75 89.84 上应用的一个关键因素。本文采用常用的tda4 C-ResNet18 71.59 90.32 芯片来搭建对象检测算法验证系统。首先将训练
(a) 泊车数据 (b) 公路数据 图 5 泊车数据和公路数据 Fig. 5 Parking data and road data 成本是智能算法在自动驾驶场景面临的一个 重要的问题。自动驾驶场景复杂广泛,如果使用 全监督的方式进行数据标注,标注成本将不可估 量。其次,对象的 3D 信息是保障自动驾驶安全 可行的一种重要数据,但其采集设备代价昂贵, 不适合车辆量产。对此,本文设计了一套从 2D 图片到 3D 空间推断的对象检测流程。具体来 说,本文用泊车数据中的 2D 包围框和接地点训 练了所提出的基于中心卷积的对象检测模型 CRCenterNet,然后利用输出的 2D 框和接地点信息, 逆投影到世界坐标系中,得到对象的 3D 位置信 息,即输入是 2D 图像,输出是 3D 位置信息(这里 用鸟瞰图表示,如图 6 所示)。在训练阶段,CRCenterNet 只在泊车数据上训练,测试时只在公路 数据上进行测试。实验发现,尽管模型在训练过 程中没有感知到公路数据上的对象信息,但是在 公路数据上仍然具有较好的性能,说明模型具有 较好的泛化能力。 2D 图像 检测 算法 3D 空间鸟瞰图 图 6 自动驾驶的检测任务 Fig. 6 A detection task toward the autopilot 芯片的计算效率是限制深度模型在车载系统 上应用的一个关键因素。本文采用常用的 tda4 芯片来搭建对象检测算法验证系统。首先将训练 好的 CR-CenterNet 模型进行量化(如第 3 节内容 所述),然后注入到 tda4 芯片上进行运算。整体 的开发流程如图 7 所示。 C-ResNet18 预训练 CR-CenterNet 训练 CR-CenterNet 量化感知训练 CR-CenterNet 车规级芯片验证 ImageNet 泊车数据 公路数据 图 7 面向车规级芯片的检测系统构建 Fig. 7 Constructing the detection system on car-level chips 5 实验 5.1 中心卷积 在本节中,将验证所提出的中心卷积的有效 性。ImageNet 是目前国际上主流的大型图像分类 评测集,在人工智能的发展史上具有举足轻重的 地位。AlexNet[14] 、VGGNet[15] 、GoogleNet[16] 、ResNet[4] 和 DenseNet[17] 的成功都离不开 ImageNet,ImageNet 也已经成为计算机视觉领域的标准数据集。研 究者通常会使用 ImageNet 来验证新提出的模型 的有效性,然后在下游任务上进行验证,如对象检测[1-2,18] 、 实例分割[19-21] 、行人重识别[22-24] 等。 因此,本文在 ImageNet 上对 C-ResNet18 进行 了预训练,并在图像分类任务上展示其有效性。 在训练时,本文采用批训练(batch)的方式来训练 C-ResNet18,每批次采样 256 张图片,并训练 120 轮。模型的训练学习率设置为 0.1,采用简单的数 据增广策略,如随机裁剪和随机水平翻转。 为了展示所提出的中心卷积的有效性,本文 把 ResNet18 作为基线模型,并和 C-ResNet18 进行 对比。对比结果如表 1 所示。 表 1 在 ImageNet 上的分类准确率 Table 1 Classification accuracy on ImageNet % 模型 top-1准确率 top-5准确率 ResNet18-torchvision 69.76 89.08 ResNet18-Ours 70.75 89.84 C-ResNet18 71.59 90.32 ·904· 智 能 系 统 学 报 第 16 卷
第5期 宫大汉,等:面向车规级芯片的对象检测模型优化方法 ·905· 为了对比公平,这里展示了由pytorch官方提 从表2可以看出,CR-CenterNet可以比R- 供的ResNet18结果(ResNet18-torchvision)和本文 CenterNet获得5.9%的提升,进一步证明了所提 复现的ResNet18的结果(ResNet1a8-Ours)。从表1 出的中心卷积在这个任务上的有效性。 的实验结果可以看出,相比于ResNet18-torchvi- 图8展示了算法的对象检测效果,包括CR sion,本文复现的ResNet18获得了更高的分类准 CenterNet预测的接地,点,以及逆投影后的鸟瞰图 确率,原因是本文采用更好的训练技巧。而本文 效果。图8(a)中也展示了标注的包围框,图8(b) 所提出的C-ResNet优于ResNetl8-torchvision和 中绿色的是标注的鸟瞰图矩形框,红色的是使用 ResNet18-Ours,其中,相比于ResNet18-torchvi- R-CenterNet得到矩形框,橙色的是使用CR-Cen- sion,C-ResNet18在top-1准确率上提高了1.83%, terNet得到的矩形框。可以看到,即使因为遮挡 在top-5准确率上提高了1.24%:相比于ResNet18-Ours, 问题而无法从图像中直接看出接地点,所提出的 C-ResNet18在top-l准确率上提高了0.84%,在 CR-CenterNet也可以有效推断出对象的接地点: top-5准确率上提高了0.48%。和ResNet18- 相比于R-CenterNet,,CR-CenterNet对对象的3D空 Ous的性能对比,可以看出所提出的中心卷积对 间位置推断(鸟瞰图)更加准确,也侧面说明了所 模型性能的增益效果显著,很好地证明了所提出 提出的CR-CenterNet的有效性和优越性。 的中心卷积的有效性。 5.2 CR-CenterNet 本节验证所提出的中心卷积在本文所构建的 面向自动驾驶真实场景中的对象检测任务的应用 效果。本文使用所构建的基于中心卷积的对象检 测模型(CR-CenterNet,,见l.2节)在泊车数据上进 行模型训练,实现接地点的预测。尽管泊车数据 (a)接地点 (b)鸟瞰图 上提供了2D框的标注数据,但本文致力于研究 从2D数据中推断出对象的3D空间位置。因此, 图8对象检测效果可视化 Fig.8 Visualization of detected objects 本文构建CR-CenterNet时只预测跟对象有关的接 地点位置,然后使用逆投影算法]推断对象的3D 5.3 面向车规级芯片的模型验证系统 空间位置信息,并可视化真实场景的鸟瞰图。 Tda4芯片是一款由世界第三大半导体制造 考虑到对象检测模型的复杂度较高,因此,本 商德州仪器(TI)推出的面向新一代智能驾驶应用 文训练CR-CenterNet时采用分布式训练方式。具 的车规级芯片,具有性能强、成本低、功耗低、安 体来说,本文使用3张2080Ti的英伟达显卡训练 全性较高等优势,因此被许多汽车厂商和一级供 模型,每张卡在一个批次内训练3张图片,即批次 应商选为计算平台。本文采用基于量化的方法成 大小是9。本文设置CR-CenterNet的学习率为3e- 功将所提出的基于中心卷积的对象检测模型部署 到该款车规级芯片tda4上。为了展示模型在tda4 5。整体训练进行了300轮,并保存最后一轮的结 上的推理性能,在不同的计算平台上部署了本文 果进行模型评测。 提出的CR-CenterNet,并测试了模型处理单张图 为了验证CR-CenterNet的性能,本文也基于 片的时间开销。表3展示了各个平台上的时间开 ResNet18训练了CenterNet模型(R-CenterNet), 销对比情况。 在模型评测时,本文计算鸟瞰图模式下,算法推 断的包围框和人工标注的包围框的交并比,将交 表3不同平台上CR-CenterNet的时间开销 Table 3 Time consumption of CR-CenterNet in various 并比大于0.5的预测当作是正确的预测。表2展 platforms. 示了基线模型R-CenterNet和本文的CR-Center- 平台 配置 是否量化 时间开销/ms Net的整体性能对比。 服务器CPU Xeon Gold 5118 ④ 776 表2R-CenterNet和CR-CenterNet的性能对比 Table 2 Performance comparison between R-Center- 服务器GPU 2080Ti 否 18.2 Net and CR-CenterNet % 笔记本CPU i5-11300H 否 1090 模型 精度 笔记本GPU mx450 次 130 R-CenterNet 36.6 tidl模拟器 i5-11300H 否 >10000 CR-CenterNet 42.5 tda4 C7x DSP 是 64
为了对比公平,这里展示了由 pytorch 官方提 供的 ResNet18 结果(ResNet18-torchvision)和本文 复现的 ResNet18 的结果(ResNet18-Ours)。从表 1 的实验结果可以看出,相比于 ResNet18-torchvision,本文复现的 ResNet18 获得了更高的分类准 确率,原因是本文采用更好的训练技巧。而本文 所提出的 C-ResNet 优于 ResNet18-torchvision 和 ResNet18-Ours,其中,相比于 ResNet18-torchvision,C-ResNet18 在 top-1 准确率上提高了 1.83%, 在 top-5 准确率上提高了 1.24%;相比于 ResNet18-Ours, C-ResNet18 在 top-1 准确率上提高了 0.84%,在 top-5 准确率上提高了 0.48%。和 ResNet18- Ours 的性能对比,可以看出所提出的中心卷积对 模型性能的增益效果显著,很好地证明了所提出 的中心卷积的有效性。 5.2 CR-CenterNet 本节验证所提出的中心卷积在本文所构建的 面向自动驾驶真实场景中的对象检测任务的应用 效果。本文使用所构建的基于中心卷积的对象检 测模型(CR-CenterNet,见 1.2 节)在泊车数据上进 行模型训练,实现接地点的预测。尽管泊车数据 上提供了 2D 框的标注数据,但本文致力于研究 从 2D 数据中推断出对象的 3D 空间位置。因此, 本文构建 CR-CenterNet 时只预测跟对象有关的接 地点位置,然后使用逆投影算法[25] 推断对象的 3D 空间位置信息,并可视化真实场景的鸟瞰图。 考虑到对象检测模型的复杂度较高,因此,本 文训练 CR-CenterNet 时采用分布式训练方式。具 体来说,本文使用 3 张 2 080Ti 的英伟达显卡训练 模型,每张卡在一个批次内训练 3 张图片,即批次 大小是 9。本文设置 CR-CenterNet 的学习率为 3e- 5。整体训练进行了 300 轮,并保存最后一轮的结 果进行模型评测。 为了验证 CR-CenterNet 的性能,本文也基于 ResNet18 训练了 CenterNet 模型(R-CenterNet)。 在模型评测时,本文计算鸟瞰图模式下,算法推 断的包围框和人工标注的包围框的交并比,将交 并比大于 0.5 的预测当作是正确的预测。表 2 展 示了基线模型 R-CenterNet 和本文的 CR-CenterNet 的整体性能对比。 表 2 R-CenterNet 和 CR-CenterNet 的性能对比 Table 2 Performance comparison between R-CenterNet and CR-CenterNet % 模型 精度 R-CenterNet 36.6 CR-CenterNet 42.5 从表 2 可以看出,CR-CenterNet 可以比 RCenterNet 获得 5.9% 的提升,进一步证明了所提 出的中心卷积在这个任务上的有效性。 图 8 展示了算法的对象检测效果,包括 CRCenterNet 预测的接地点,以及逆投影后的鸟瞰图 效果。图 8(a)中也展示了标注的包围框,图 8(b) 中绿色的是标注的鸟瞰图矩形框,红色的是使用 R-CenterNet 得到矩形框,橙色的是使用 CR-CenterNet 得到的矩形框。可以看到,即使因为遮挡 问题而无法从图像中直接看出接地点,所提出的 CR-CenterNet 也可以有效推断出对象的接地点; 相比于 R-CenterNet,CR-CenterNet 对对象的 3D 空 间位置推断(鸟瞰图)更加准确,也侧面说明了所 提出的 CR-CenterNet 的有效性和优越性。 (a) 接地点 (b) 鸟瞰图 图 8 对象检测效果可视化 Fig. 8 Visualization of detected objects 5.3 面向车规级芯片的模型验证系统 Tda4 芯片是一款由世界第三大半导体制造 商德州仪器(TI)推出的面向新一代智能驾驶应用 的车规级芯片,具有性能强、成本低、功耗低、安 全性较高等优势,因此被许多汽车厂商和一级供 应商选为计算平台。本文采用基于量化的方法成 功将所提出的基于中心卷积的对象检测模型部署 到该款车规级芯片 tda4 上。为了展示模型在 tda4 上的推理性能,在不同的计算平台上部署了本文 提出的 CR-CenterNet,并测试了模型处理单张图 片的时间开销。表 3 展示了各个平台上的时间开 销对比情况。 表 3 不同平台上 CR-CenterNet 的时间开销 Table 3 Time consumption of CR-CenterNet in various platforms. 平台 配置 是否量化 时间开销/ms 服务器CPU Xeon Gold 5118 否 776 服务器GPU 2080Ti 否 18.2 笔记本CPU i5-11300H 否 1 090 笔记本GPU mx450 否 130 tidl模拟器 i5-11300H 否 >10 000 tda4 C7x DSP 是 64 第 5 期 宫大汉,等:面向车规级芯片的对象检测模型优化方法 ·905·
·906· 智能系统学报 第16卷 本文选择了6种不同的计算平台,包括服务 基于中心卷积的轻量化卷积神经网络和基于量化 器端CPU和GPU、笔记本CPU和GPU、芯片模 的深度模型部署方法。所提出的中心卷积在训练 拟器和车规级芯片tda4,对比结果如表3所示。 时为标准3×3卷积引入了1×1卷积旁路,可以增 可以看到,在服务器端,无量化版的CR-CenterNet 强模型对视觉信息的学习,而在推理时,可以方 在CPU上达到776ms的时间开销,而量化版的 便地将旁路融合进3×3卷积中,减少了计算量且 CR-CenterNet在tda4上可以提升超l0倍,时间开 保持了和原来模型一样的性能。所采用的量化模 销下降到64ms。由此可见,量化版的深度模型 型部署方法可以降低模型的大小,在保持量化前 可以在计算性能更受限的车规级芯片上取得比服 模型精度的情况下成倍提升模型的计算效率。基 务端高性能CPU更优的计算速率。 于轻量化中心卷积结构和量化技术,本文成功将 此外,本文所采取的量化方法在训练过程中 深度对象检测模型在车规级芯片tda4上部署,在 进行,可以抵抗由于量化所导致的模型精度的骤 自动驾驶场景上取得了良好的检测性能。未来, 降。表4展示了CR-CenterNet在量化前后的检测 有望集成到真实车辆驾驶系统中,在真实自动驾 性能的对比,可以观察到,经过量化感知训练的 驶场景下发挥更大的作用。 模型在检测效果上跟量化前的模型差异不大(仅 参考文献: 下降了14%)。 表4量化对模型效果的影响 [1]REN Shaoqing,HE Kaiming,GIRSHICK R,et al.Faster Table 4 Impact of the quantification method on the R-CNN:towards real-time object detection with region detection performance % proposal networks[C]//Proceedings of Annual Conference 量化 检测精度 on Neural Information Processing Systems 2015.Montreal, Canada.2015:91-99. 无量化 42.5 [2]REDMON J.DIVVALA S.GIRSHICK R.et al.You only 量化 41.1 look once:unified,real-time object detection[C]// Proceedings of 2016 IEEE Conference on Computer Vis- 从上述分析可以看到,基于量化的部署方法 ion and Pattern Recognition.Las Vegas,USA,2016: 可以提升模型的计算效率且保持模型的精度,满 779-788. 足了车规级芯片的计算需求,因此,本文将整套 [3]ZHOU Xingyi,WANG Dequan,KRAHENBUHL P.Ob- 算法集成到支持tda4芯片的开发板上,形成一套 jects as points[J].arXiv:1904.07850,2019. 面向车规级芯片的检测模型验证系统。图9展示 [4]HE Kaiming,ZHANG Xiangyu,REN Shaoqing,et al. 了利用tda4进行计算得到的检测效果。可以看 Deep residual learning for image recognition[Cl//Proceed- 到,对于输入的RGB图片,所构建的车规级芯片 ings of 2016 IEEE Conference on Computer Vision and 验证系统能够准确地给出3D空间位置信息(鸟 Pattern Recognition.Las Vegas,USA,2016:770-778. 瞰图)。 [5]LAW H,DENG Jia.Cornernet:detecting objects as paired keypoints[C]//Proceedings of the 15th European Confer- ence on Computer Vision.Munich,Germany,2018: 734-750. [6]ZHOU Xingyi,ZHUO Jiacheng,KRAHENBUHL P.Bot- tom-up object detection by grouping extreme and center points[C]//Proceedings of 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition.Long Beach. USA,2019:850-859 [7]LIU Zili,ZHENG Tu,XU Guodong,et al.Training-time- friendly network for real-time object detection[C]//Pro- 图9面向车规级芯片的对象检测模型验证系统 Fig.9 Object detection model verification system for car- ceedings of the Thirty-Fourth AAAI Conference on Artifi- level chips cial Intelligence.New York,USA,2020:11685-11692. [8]ZHOU Xingyi,KOLTUN V,KRAHENBUHL P.Probabil- 6结束语 istic two-stage detection[J].arXiv:2103.07461,2021. [9]IOFFE S,SZEGEDY C.Batch normalization:Accelerat- 本文针对自动驾驶场景下智能模型计算效率 ing deep network training by reducing internal covariate 要求高和终端设备计算资源受限的矛盾,提出了 shift[Cl//Proceedings of the 32nd International Confer-en-
本文选择了 6 种不同的计算平台,包括服务 器端 CPU 和 GPU、笔记本 CPU 和 GPU、芯片模 拟器和车规级芯片 tda4,对比结果如表 3 所示。 可以看到,在服务器端,无量化版的 CR-CenterNet 在 CPU 上达到 776 ms 的时间开销,而量化版的 CR-CenterNet 在 tda4 上可以提升超 10 倍,时间开 销下降到 64 ms。由此可见,量化版的深度模型 可以在计算性能更受限的车规级芯片上取得比服 务端高性能 CPU 更优的计算速率。 此外,本文所采取的量化方法在训练过程中 进行,可以抵抗由于量化所导致的模型精度的骤 降。表 4 展示了 CR-CenterNet 在量化前后的检测 性能的对比,可以观察到,经过量化感知训练的 模型在检测效果上跟量化前的模型差异不大(仅 下降了 1.4%)。 表 4 量化对模型效果的影响 Table 4 Impact of the quantification method on the detection performance % 量化 检测精度 无量化 42.5 量化 41.1 从上述分析可以看到,基于量化的部署方法 可以提升模型的计算效率且保持模型的精度,满 足了车规级芯片的计算需求,因此,本文将整套 算法集成到支持 tda4 芯片的开发板上,形成一套 面向车规级芯片的检测模型验证系统。图 9 展示 了利用 tda4 进行计算得到的检测效果。可以看 到,对于输入的 RGB 图片,所构建的车规级芯片 验证系统能够准确地给出 3D 空间位置信息(鸟 瞰图)。 图 9 面向车规级芯片的对象检测模型验证系统 Fig. 9 Object detection model verification system for carlevel chips 6 结束语 本文针对自动驾驶场景下智能模型计算效率 要求高和终端设备计算资源受限的矛盾,提出了 基于中心卷积的轻量化卷积神经网络和基于量化 的深度模型部署方法。所提出的中心卷积在训练 时为标准 3×3 卷积引入了 1×1 卷积旁路,可以增 强模型对视觉信息的学习,而在推理时,可以方 便地将旁路融合进 3×3 卷积中,减少了计算量且 保持了和原来模型一样的性能。所采用的量化模 型部署方法可以降低模型的大小,在保持量化前 模型精度的情况下成倍提升模型的计算效率。基 于轻量化中心卷积结构和量化技术,本文成功将 深度对象检测模型在车规级芯片 tda4 上部署,在 自动驾驶场景上取得了良好的检测性能。未来, 有望集成到真实车辆驾驶系统中,在真实自动驾 驶场景下发挥更大的作用。 参考文献: REN Shaoqing, HE Kaiming, GIRSHICK R, et al. Faster R-CNN: towards real-time object detection with region proposal networks[C]//Proceedings of Annual Conference on Neural Information Processing Systems 2015. Montreal, Canada, 2015: 91−99. [1] REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: unified, real-time object detection[C]// Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, USA, 2016: 779−788. [2] ZHOU Xingyi, WANG Dequan, KRÄHENBÜHL P. Objects as points[J]. arXiv:1904.07850, 2019. [3] HE Kaiming, ZHANG Xiangyu, REN Shaoqing, et al. Deep residual learning for image recognition[C]//Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, USA, 2016: 770−778. [4] LAW H, DENG Jia. Cornernet: detecting objects as paired keypoints[C]//Proceedings of the 15th European Conference on Computer Vision. Munich, Germany, 2018: 734−750. [5] ZHOU Xingyi, ZHUO Jiacheng, KRÄHENBÜHL P. Bottom-up object detection by grouping extreme and center points[C]//Proceedings of 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach, USA, 2019: 850−859. [6] LIU Zili, ZHENG Tu, XU Guodong, et al. Training-timefriendly network for real-time object detection[C]//Proceedings of the Thirty-Fourth AAAI Conference on Artificial Intelligence. New York, USA, 2020: 11685−11692. [7] ZHOU Xingyi, KOLTUN V, KRÄHENBÜHL P. Probabilistic two-stage detection[J]. arXiv:2103.07461, 2021. [8] IOFFE S, SZEGEDY C. Batch normalization: Accelerating deep network training by reducing internal covariate shift[C]//Proceedings of the 32nd International Confer-en- [9] ·906· 智 能 系 统 学 报 第 16 卷
第5期 宫大汉,等:面向车规级芯片的对象检测模型优化方法 ·907· ce on Machine Learning.Lille,France,2015:448-456. Assisted Inter-vention.Munich,Germany,2015: [IO]洪文亮.基于改进的Faster R-CNN的目标检测系统的 234-241 研究D.长春:吉林大学,2019. [21]林开颜,吴军辉,徐立鸿.彩色图像分割方法综述).中 HONG Wenliang.Research on systems of object detec- 国图象图形学报(A辑),2005,10(1):1-10 tion based improved Faster R-CNN[D].Changchun:Jilin LIN Kaiyan,WU Junhui,XU Lihong.Survey of color im- University,2019. age segmentation[J]//Journal of image and araphics [11]DENG Jia,DONG Wei,SOCHER R,et al.Imagenet:a (A),2005,10(1):1-10. large-scale hierarchical image database[C]//Proceedings [22]ZHENG Liang,YANG Yi,HAUPTMANN A G.Person of 2009 IEEE Conference on Computer Vision and Pat- re-identification:past,present and future[J].arXiv: tern Recognition.Miami,USA,2009:248-255. 1610.02984,2016. [12]PASZKE A,GROSS S,MASSA F,et al.PyTorch:an im- [23]LUO Hao,GU Youzhi,LIAO Xingyu,et al.Bag of tricks perative style,high-performance deep learning library and a strong baseline for deep person re- [C]//Proceedings of Annual Conference on Neural In- identification[C]//Proceedings of 2019 IEEE/CVF Con- formation Processing Systems 2019.Vancouver,Canada, ference on Com-puter Vision and Pattern Recognition 2019:8026-8037 [13]ABADI M,BARHAM P,CHEN Jianmin,et al.Tensor- Workshops.Long Beach,USA,2019:1487-1495 [24]宋婉茹,赵晴晴,陈昌红,等.行人重识别研究综述 Flow:a system for large-scale machine learning[C]//Pro- 智能系统学报,2017,12(6):770-780. ceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation.Savannah,USA, SONG Wanru,ZHAO Qingqing,CHEN Changhong,et 2016:265-283. al.Survey of person reidentification[J].CAAI transac- [14]KRIZHEVSKY ALEX,SUTSKEVER ILYA.HINTON tions on intelligent systems,2017,12(6):770-780. GEOFFREY E.Imagenet classification with deep convo- [25]刘瑞芝,孙土杰,王菽裕,等.基于三维垂直逆投影面的 lutional neural networks[C]//Advances in neural informa- 枚举车速检测算法[U.电子设计工程,2016,24(14): tion processing systems.Lake Tahoe,USA,2012,25: 165-167. 1097-1105. LIU Ruizhi,SUN Shijie,WANG Shuyu,et al.Enumer- [15]KAREN SIMONYAN,ANDREW ZISSERMAN.Very ated vehicle speed detection algorithm based on three-di- deep convolutional networks for large-scale image re-cog- mensional vertical back projection surface[J].Electronic nition[EB/OL].arXiv preprint,2014.https://arxiv. design engineering,2016,24(14):165-167. org/abs/1409.1556. 作者简介: [16]SZEGEDY C,LIU Wei,JIA Yangqing,et al.Going deep- er with convolutions[C]//Proceedings of 2015 IEEE Con- 宫大汉,博士研究生,主要研究方 向为轻量化深度模型结构设计和边缘 ference on Computer Vision and Pattern Recognition.Bo- 设备智能推理引擎构建。 ston,USA,2015:1-9. [17]HUANG Gao,LIU Zhang,LAURENS VAN DER MAATEN,et al.Densely connected convolutional net- works[Cl//Proceedings of the IEEE conference on com- puter vision and pattern recognition.Hawaii,USA,2017: 4700-4708. 于龙龙,算法工程师,主要方向为 [18]HE Kaiming,GKIOXARI G,DOLLAR P,et al.Mask R- 嵌入式智能设备开发和模型部署。 CNN[CV/Proceedings of 2017 IEEE International Confer- ence on Computer Vision.Venice,Italy,2017:2980- 2988. [19]HUANG Gao,LIU Zhuang,VAN DER MAATEN L,et al.Densely connected convolutional networks[Cl//Pro- 丁贵广,副教授,博土,主要研究 ceedings of 2017 IEEE Conference on Computer Vision 方向为多媒体信息处理、计算机视觉 and Pattern Recognition.Honolulu,USA,2017: 感知。获国家科技进步二等奖1项 2261-2269. 人工智能学会科技进步奖一等奖 [20]RONNEBERGER O,FISCHER P.BROX T.U-net:con- 1项、中国电子学会技术发明一等奖 volutional networks for biomedical image 1项。主持和参与重点项目、重点研发 segmentation[C]//Proceedings of the 18th International 项目等国家级项目数十项。发表学术 Conference on Medical Image Computing and Computer- 论文近百篇
ce on Machine Learning. Lille, France, 2015: 448−456. 洪文亮. 基于改进的 Faster R-CNN 的目标检测系统的 研究 [D]. 长春: 吉林大学, 2019. HONG Wenliang. Research on systems of object detection based improved Faster R-CNN[D]. Changchun: Jilin University, 2019. [10] DENG Jia, DONG Wei, SOCHER R, et al. Imagenet: a large-scale hierarchical image database[C]//Proceedings of 2009 IEEE Conference on Computer Vision and Pattern Recognition. Miami, USA, 2009: 248−255. [11] PASZKE A, GROSS S, MASSA F, et al. PyTorch: an imperative style, high-performance deep learning library [C]//Proceedings of Annual Conference on Neural Information Processing Systems 2019. Vancouver, Canada, 2019: 8026−8037. [12] ABADI M, BARHAM P, CHEN Jianmin, et al. TensorFlow: a system for large-scale machine learning[C]//Proceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation. Savannah, USA, 2016: 265−283. [13] KRIZHEVSKY ALEX, SUTSKEVER ILYA, HINTON GEOFFREY E. Imagenet classification with deep convolutional neural networks[C]//Advances in neural information processing systems. Lake Tahoe, USA, 2012, 25: 1097−1105. [14] KAREN SIMONYAN, ANDREW ZISSERMAN. Very deep convolutional networks for large-scale image re-cognition[EB/OL]. arXiv preprint, 2014. https://arxiv. org/abs/1409.1556. [15] SZEGEDY C, LIU Wei, JIA Yangqing, et al. Going deeper with convolutions[C]//Proceedings of 2015 IEEE Conference on Computer Vision and Pattern Recognition. Boston, USA, 2015: 1−9. [16] HUANG Gao, LIU Zhang, LAURENS VAN DER MAATEN, et al. Densely connected convolutional networks[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. Hawaii, USA, 2017: 4700−4708. [17] HE Kaiming, GKIOXARI G, DOLLÁR P, et al. Mask RCNN[C]//Proceedings of 2017 IEEE International Conference on Computer Vision. Venice, Italy, 2017: 2980− 2988. [18] HUANG Gao, LIU Zhuang, VAN DER MAATEN L, et al. Densely connected convolutional networks[C]//Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, USA, 2017: 2261−2269. [19] RONNEBERGER O, FISCHER P, BROX T. U-net: convolutional networks for biomedical image segmentation[C]//Proceedings of the 18th International Conference on Medical Image Computing and Computer- [20] Assisted Inter-vention. Munich, Germany, 2015: 234−241. 林开颜, 吴军辉, 徐立鸿. 彩色图像分割方法综述 [J]. 中 国图象图形学报 ( A 辑), 2005, 10(1): 1−10. LIN Kaiyan, WU Junhui, XU Lihong. Survey of color image segmentation[J]//Journal of image and araphics (A), 2005, 10(1): 1−10. [21] ZHENG Liang, YANG Yi, HAUPTMANN A G. Person re-identification: past, present and future[J]. arXiv: 1610.02984, 2016. [22] LUO Hao, GU Youzhi, LIAO Xingyu, et al. Bag of tricks and a strong baseline for deep person reidentification[C]//Proceedings of 2019 IEEE/CVF Conference on Com-puter Vision and Pattern Recognition Workshops. Long Beach, USA, 2019: 1487−1495. [23] 宋婉茹, 赵晴晴, 陈昌红, 等. 行人重识别研究综述 [J]. 智能系统学报, 2017, 12(6): 770–780. SONG Wanru, ZHAO Qingqing, CHEN Changhong, et al. Survey of person reidentification[J]. CAAI transactions on intelligent systems, 2017, 12(6): 770–780. [24] 刘瑞芝, 孙士杰, 王菽裕, 等. 基于三维垂直逆投影面 的 枚举车速检测算法 [J]. 电子设计工程, 2016, 24(14): 165–167. LIU Ruizhi, SUN Shijie, WANG Shuyu, et al. Enumerated vehicle speed detection algorithm based on three-dimensional vertical back projection surface[J]. Electronic design engineering, 2016, 24(14): 165–167. [25] 作者简介: 宫大汉,博士研究生,主要研究方 向为轻量化深度模型结构设计和边缘 设备智能推理引擎构建。 于龙龙,算法工程师,主要方向为 嵌入式智能设备开发和模型部署。 丁贵广,副教授,博士,主要研究 方向为多媒体信息处理、计算机视觉 感知。获国家科技进步二等奖 1 项、 人工智能学会科技进步奖一等 奖 1 项、中国电子学会技术发明一等奖 1 项。主持和参与重点项目、重点研发 项目等国家级项目数十项。发表学术 论文近百篇。 第 5 期 宫大汉,等:面向车规级芯片的对象检测模型优化方法 ·907·