<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Neurorobot.</journal-id>
<journal-title>Frontiers in Neurorobotics</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Neurorobot.</abbrev-journal-title>
<issn pub-type="epub">1662-5218</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fnbot.2023.1092564</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Neurorobotics</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Efficient three-dimensional point cloud object detection based on improved Complex-YOLO</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Shao</surname> <given-names>Yongxin</given-names></name>
<uri xlink:href="http://loop.frontiersin.org/people/2080308/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Sun</surname> <given-names>Zhetao</given-names></name>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name><surname>Tan</surname> <given-names>Aihong</given-names></name>
<xref ref-type="corresp" rid="c001"><sup>&#x002A;</sup></xref>
</contrib>
<contrib contrib-type="author">
<name><surname>Yan</surname> <given-names>Tianhong</given-names></name>
</contrib>
</contrib-group>
<aff><institution>College of Mechanical and Electrical Engineering, China Jiliang University</institution>, <addr-line>Hangzhou</addr-line>, <country>China</country></aff>
<author-notes>
<fn fn-type="edited-by"><p>Edited by: Hang Su, Fondazione Politecnico di Milano, Italy</p></fn>
<fn fn-type="edited-by"><p>Reviewed by: Wen Qi, Politecnico di Milano, Italy; Xiaorui Liu, Qingdao University, China</p></fn>
<corresp id="c001">&#x002A;Correspondence: Aihong Tan, <email>tanah@cjlu.edu.cn</email></corresp>
</author-notes>
<pub-date pub-type="epub">
<day>16</day>
<month>02</month>
<year>2023</year>
</pub-date>
<pub-date pub-type="collection">
<year>2023</year>
</pub-date>
<volume>17</volume>
<elocation-id>1092564</elocation-id>
<history>
<date date-type="received">
<day>08</day>
<month>11</month>
<year>2022</year>
</date>
<date date-type="accepted">
<day>03</day>
<month>02</month>
<year>2023</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x00A9; 2023 Shao, Sun, Tan and Yan.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Shao, Sun, Tan and Yan</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/"><p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p></license>
</permissions>
<abstract>
<p>Lidar-based 3D object detection and classification is a critical task for autonomous driving. However, inferencing from exceedingly sparse 3D data in real-time is a formidable challenge. Complex-YOLO solves the problem of point cloud disorder and sparsity by projecting it onto the bird&#x2019;s-eye view and realizes real-time 3D object detection based on LiDAR. However, Complex-YOLO has no object height detection, a shallow network depth, and poor small-size object detection accuracy. To address these issues, this paper has made the following improvements: (1) adds a multi-scale feature fusion network to improve the algorithm&#x2019;s capability to detect small-size objects; (2) uses a more advanced RepVGG as the backbone network to improve network depth and overall detection performance; and (3) adds an effective height detector to the network to improve the height detection. Through experiments, we found that our algorithm&#x2019;s accuracy achieved good performance on the KITTI dataset, while the detection speed and memory usage were very superior, 48FPS on RTX3070Ti and 20FPS on GTX1060, with a memory usage of 841Mib.</p>
</abstract>
<kwd-group>
<kwd>deep learning</kwd>
<kwd>object detection</kwd>
<kwd>point cloud</kwd>
<kwd>3D object detection</kwd>
<kwd>neural network</kwd>
</kwd-group>
<contract-sponsor id="cn001">Natural Science Foundation of Zhejiang Province<named-content content-type="fundref-id">10.13039/501100004731</named-content></contract-sponsor>
<counts>
<fig-count count="9"/>
<table-count count="6"/>
<equation-count count="21"/>
<ref-count count="41"/>
<page-count count="15"/>
<word-count count="9630"/>
</counts>
</article-meta>
</front>
<body>
<sec id="S1" sec-type="intro">
<title>1. Introduction</title>
<p>Deep learning-related technologies are increasingly integrated into people&#x2019;s daily life, and object detection algorithms (<xref ref-type="bibr" rid="B27">Qi et al., 2021</xref>; <xref ref-type="bibr" rid="B17">Liu et al., 2022a</xref>,<xref ref-type="bibr" rid="B18">b</xref>; <xref ref-type="bibr" rid="B39">Xu et al., 2022</xref>), as a crucial component of the autonomous driving perception layer, can create a solid foundation for behavioral judgments during autonomous driving. Although object detection algorithms based on 2D images (<xref ref-type="bibr" rid="B2">Bochkovskiy et al., 2020</xref>; <xref ref-type="bibr" rid="B1">Bai et al., 2022</xref>; <xref ref-type="bibr" rid="B4">Cheon et al., 2022</xref>; <xref ref-type="bibr" rid="B9">Gromada et al., 2022</xref>; <xref ref-type="bibr" rid="B20">Long et al., 2022</xref>; <xref ref-type="bibr" rid="B21">Otgonbold et al., 2022</xref>; <xref ref-type="bibr" rid="B36">Wahab et al., 2022</xref>; <xref ref-type="bibr" rid="B37">Wang et al., 2022</xref>) have had a lot of success at this stage, single-view images cannot completely reflect the position pose, and motion orientation of objects in 3D space due to the lack of depth information in 2D images. Consequently, in the field of autonomous driving, the focus of object detection research has increasingly switched from 2D image detection to 3D image detection and point cloud detection. To compensate for the lack of depth information in 2D images, researchers primarily use multi-view (<xref ref-type="bibr" rid="B12">Khatab et al., 2022</xref>; <xref ref-type="bibr" rid="B33">Siddique and Lee, 2022</xref>) and depth cameras (<xref ref-type="bibr" rid="B23">Perek et al., 2022</xref>) when studying image-based 3D object detection algorithms. However, because both depth cameras and ordinary 2D cameras are affected by light, image-based object detection algorithms frequently perform poorly in complex environmental conditions. Compared with images, point cloud data collected by LIDAR not only provides accurate geometric features but also has better robustness to light. However, point cloud-based 3D object detection algorithms face significant challenges. For instance, (1) Sparsity: Compared with the dense pixel arrangement in images, point cloud data are sparse and unevenly distributed; (2) Disorder: The nature of the object is unaffected by the ordering of the point cloud data; and (3) Rotation invariance: The coordinates of all points in a point cloud collection change when rotated, yet they still represent the same object (<xref ref-type="bibr" rid="B25">Qi et al., 2017a</xref>). To resolve these issues <xref ref-type="bibr" rid="B34">Simony et al. (2018)</xref> proposed Complex-YOLO to complete 3D object detection by projecting 3D point cloud data onto the 2D bird&#x2019;s eye view, transforming the disordered point cloud into the 2D pseudo-image after meshing it and using the image-based 2D object detection algorithm. Complex-YOLO uses YOLOV2 (<xref ref-type="bibr" rid="B28">Redmon and Farhadi, 2017</xref>) for feature extraction, classification, and regression, and extends the E-RPN (Euler Region Proposal Network) structure for object orientation angle regression. However, because Complex-YOLO lacks a neck network, it must complete object detection at a lower resolution, resulting in poor performance for small objects. It performs poorly in 3D bounding box regression because it does not complete the detection of object height and instead provides a fixed height value for different classes of objects. In this paper, the proposed Efficient Complex-YOLO (from now on, we will call our proposal as Efficient Complex-YOLO) improves Complex-YOLO comprehensively, chooses a more advanced network structure, makes up for the original lack of Complex-YOLO for height detection, and substantially improves the detection accuracy while ensuring real-time detection, the main work is as follows:</p>
<list list-type="simple">
<list-item>
<label>(1)</label>
<p>A more advanced 2D object detection technique with a more efficient feature extraction network [RepVGG-A2 (<xref ref-type="bibr" rid="B6">Ding et al., 2021</xref>)] is used.</p>
</list-item>
<list-item>
<label>(2)</label>
<p>Building an improved FPN [Feature Pyramid Network (<xref ref-type="bibr" rid="B15">Lin et al., 2017a</xref>)] structure to accomplish the detection task at different resolutions, which improves the detection accuracy for small objects.</p>
</list-item>
<list-item>
<label>(3)</label>
<p>A more efficient head detection network is designed to complete the detection of object height, cancel the E-RPN structure, and complete the detection of object orientation angle directly in the Cartesian coordinate system to achieve true 3D object detection.</p>
</list-item>
</list>
<p>The rest of this paper is as follows.</p>
<list list-type="simple">
<list-item>
<label>(1)</label>
<p>Section 2 presents the work related to the point cloud-based 3D object detection algorithm.</p>
</list-item>
<list-item>
<label>(2)</label>
<p>Section 3 presents the algorithmic structure of Efficient Complex-YOLO.</p>
</list-item>
<list-item>
<label>(3)</label>
<p>Section 4 will experimentally verify the effectiveness of the improvements made and compares them with other point cloud-based 3D object detection algorithms.</p>
</list-item>
<list-item>
<label>(4)</label>
<p>Section 5 concludes the whole paper.</p>
</list-item>
</list>
</sec>
<sec id="S2">
<title>2. Related work</title>
<p>The point cloud-based 3D object detection algorithms can be divided into three categories based on the pre-processing techniques used on point cloud data. (1) 3D object detection with Point-based methods; (2) 3D object detection with Voxel-based methods; and (3) 3D object detection with Grid-based methods.</p>
<sec id="S2.SS1">
<title>2.1. 3D object detection with point-based methods</title>
<p>The PointNet proposed by <xref ref-type="bibr" rid="B25">Qi et al. (2017a)</xref> processes point cloud data directly. PointNet solves the point cloud rotation invariance problem using a spatial transformation network, solves the point cloud disorder problem using the Max-pooling method, and builds a unified system framework for object classification and semantic segmentation, and many subsequent algorithms will use this network to extract features. However, PointNet can only characterize each point and cannot effectively integrate the point cloud information of a region of the point cloud. The subsequently proposed PointNet++ (<xref ref-type="bibr" rid="B26">Qi et al., 2017b</xref>) effectively solves this problem by drawing on the idea of hierarchical feature extraction; it consists of three segments: sampling, grouping, and feature extraction, using the farthest point sampling method to extract key points from the original point cloud for sampling, then using PointNet to extract features from the grouped point set to select key point features for subsequent semantic segmentation or 3D object detection. The PointRCNN algorithm proposed by <xref ref-type="bibr" rid="B32">Shi et al. (2019)</xref> is the first 3D object detection method that is entirely based on point clouds; it is a two-stage object detection algorithm that uses PointNet as the feature extraction network. The first stage performs binary classification of point clouds, classifying each point into the foreground or background, and generating a bounding box for each foreground point; the second stage optimizes the bounding box generated in the first stage, and the features of each bounding box are obtained through point cloud pooling and other operations; finally, the bounding box is optimized and scored with confidence by combining the features obtained in the first stage, to obtain the final bounding box. However, unlike object detection on 2D images, point cloud data do not have a regular grid, making it difficult to apply the idea of 2D detection to complete the regression of centroids and bounding boxes for objects whose centroids are outside the point cloud. The VoteNet algorithm proposed by <xref ref-type="bibr" rid="B24">Qi et al. (2019)</xref> uses the Hoff voting mechanism to continuously generate some virtual points close to the object&#x2019;s centroid, and then completes the classification and regression tasks using a clustering algorithm and some classifiers and regressors. Many point-based 3D object detection algorithms currently use hand-crafted grouping schemes to group point clouds and extract local features using feature extraction networks like PointNet. However, the hand-crafted grouping scheme leads to inaccurate point assignment and degrades the performance of 3D object detection. The Group-Free 3D algorithm proposed by <xref ref-type="bibr" rid="B19">Liu et al. (2021)</xref> uses Transformer (<xref ref-type="bibr" rid="B35">Vaswani et al., 2017</xref>) to adaptively determine which points are effective for the current object detection; it uses Transformer&#x2019;s attention mechanism to compute the object features of all points in the point cloud and automatically learns the contribution of each point during network training. An improved attention stacking scheme is then used to fuse object features from different stages to produce more accurate object detection results.</p>
</sec>
<sec id="S2.SS2">
<title>2.2. 3D object detection with voxel-based methods</title>
<p>A voxel is similar to a pixel in an image. The smallest unit in an RGB image is the pixel, while the smallest unit in a three-dimensional spatial representation is the voxel. If the whole space is divided into small cubes into three dimensions, each small cube is a voxel. The voxelization process is to use voxels to express the appearance and shape of an object at the corresponding position in the three-dimensional space, and by doing so, the disordered point cloud can be sorted and the internal information of the object can be well described. VoxelNet proposed by <xref ref-type="bibr" rid="B41">Zhou and Tuzel (2018)</xref> divides the 3D point cloud into a certain number of voxels, and then, after random sampling of points and normalization, for each non-empty voxel use VFE (Voxel Feature Encoding) layers for local feature extraction to obtain Voxel-wise feature. Then 3D Convolution Middle Layers are used to further abstract the features (increase the perceptual field and learn the geometric space representation), and RPN (Region Proposal Network) is used for object classification and regression. However, 3D convolution tends to consume a lot of computing power. The subsequent SECOND proposed by <xref ref-type="bibr" rid="B40">Yan et al. (2018)</xref> makes a series of improvements based on VoxelNet and proposes an improved sparse convolution method that increases the detection speed, reduces the memory usage, and improves the orientation angle detection performance by introducing an angle loss method. <xref ref-type="bibr" rid="B14">Lang et al. (2019)</xref> subsequently proposed PointPillars, which retains the idea of VoxelNet and Second, but unlike the former, divides the point cloud into individual pillars for feature extraction and replaces the original 3D convolution with 2D convolution. <xref ref-type="bibr" rid="B30">Shi et al. (2020a)</xref> proposed a new 3D detection network called PV-RCNN, which improves the detection accuracy by combining two different data forms, point clouds, and voxels, and extracting features from them. The algorithm combines the efficient feature extraction capability of 3D convolution with the advantage of point clouds&#x2019; variable perceptual field.</p>
</sec>
<sec id="S2.SS3">
<title>2.3. 3D object detection with grid-based methods</title>
<p>These algorithms usually project point cloud data into the 2D grid, then use 2D convolution for feature extraction. <xref ref-type="bibr" rid="B3">Chen et al. (2017)</xref> proposed MV3D to achieve 3D object detection by multi-view fusion, firstly computing candidate regions on the bird&#x2019;s-eye view of the point cloud, then integrating the candidate regions with point cloud bird&#x2019;s-eye view features, point cloud front view features, and image features into one dimension, respectively by Roi (Region of Interest) pooling, and finally using convolution neural networks to complete classification and regression. Subsequently, <xref ref-type="bibr" rid="B13">Ku et al. (2018)</xref> proposed AVOD based on MV3D by eliminating the input of the point cloud main view and adding intensity features in the point cloud bird&#x2019;s-eye view, followed by modifying the feature extraction network to improve small object detection accuracy.</p>
</sec>
</sec>
<sec id="S3" sec-type="materials|methods">
<title>3. Materials and methods</title>
<sec id="S3.SS1">
<title>3.1. Detection process</title>
<p>The overall detection algorithm is shown in <xref ref-type="fig" rid="F1">Figure 1</xref> above, which has the following four steps:</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption><p>3D object detection flow chart.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-17-1092564-g001.tif"/>
</fig>
<list list-type="simple">
<list-item>
<label>Step 1</label>
<p>Data pre-processing. Rasterized projection of point cloud data in the bird&#x2019;s-eye view to generate the 2D pseudo-image (from now on, we will call it as BEV-map);</p>
</list-item>
<list-item>
<label>Step 2</label>
<p>BEV-map detection. The Bev-map is fed into the improved Complex YOLO to complete the extraction of feature maps and the detection of the 2D bounding box in the bird&#x2019;s eye view and the detection of object orientation angle;</p>
</list-item>
<list-item>
<label>Step 3</label>
<p>Height detection. The feature maps obtained in step 2 are fed into the height detector to output the object&#x2019;s height;</p>
</list-item>
<list-item>
<label>Step 4</label>
<p>Finally. The information obtained from step 2 is fused with step 3 to complete the 3D object detection task;</p>
</list-item>
</list>
</sec>
<sec id="S3.SS2">
<title>3.2. Data preprocessing</title>
<p>In this paper, we generate BEV-map using the same data pre-processing method as Complex-YOLO by rasterizing and projecting the single-frame point cloud data covering the 50 m &#x00D7; 50 m area in front onto the bird&#x2019;s-eye view map, and the grid size of BEV-map is <italic>m</italic> = 608 and <italic>n</italic> = 608, corresponding to the size of each grid is about <italic>g</italic> = 0.8. Then the maximum height, maximum intensity, and density of the point cloud data in the bird&#x2019;s-eye view are encoded and filled into the RGB triple channel. Considering that the height of LIDAR is about 1.73 m during data acquisition, while most targets are between 0 and 4 m high, to avoid the influence of obscurants such as trees, we selected the point cloud data in the range of <italic>z</italic> &#x2208; [2.73, 1.27]. All point clouds were defined <italic>P</italic><sub>&#x03A9;</sub> as:</p>
<disp-formula id="S3.E1">
<label>(1)</label>
<mml:math id="M1"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>P</mml:mi><mml:mn>&#x03A9;</mml:mn></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mrow><mml:mo stretchy="false">&#x007B;</mml:mo><mml:mpadded width="+3.3pt"><mml:mi>P</mml:mi></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:msup><mml:mrow><mml:mo>[</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mi>z</mml:mi><mml:mo>]</mml:mo></mml:mrow><mml:mi>T</mml:mi></mml:msup><mml:mo stretchy="false">&#x007C;</mml:mo><mml:mi>x</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>50</mml:mn><mml:mi>m</mml:mi><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>25</mml:mn><mml:mo>,</mml:mo><mml:mn>25</mml:mn><mml:mi>m</mml:mi><mml:mo>]</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>z</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>2.73</mml:mn><mml:mo>,</mml:mo><mml:mn>1.27</mml:mn><mml:mi>m</mml:mi><mml:mo>]</mml:mo></mml:mrow><mml:mo stretchy="false">&#x007D;</mml:mo></mml:mrow></mml:math>
</disp-formula>
<p>The three channels of the transformed image are encoded by the following equations (2), (3), and (4) for point cloud height information, point cloud intensity information, and point cloud density information, respectively.</p>
<disp-formula id="S3.E2">
<label>(2)</label>
<mml:math id="M2"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>z</mml:mi><mml:mi>g</mml:mi></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mrow><mml:mn>&#x03A9;</mml:mn><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow></mml:mrow><mml:mo>&#x2192;</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x22C5;</mml:mo><mml:msup><mml:mrow><mml:mo stretchy="false">[</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:mrow><mml:mi>T</mml:mi></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:math>
</disp-formula>
<disp-formula id="S3.E3">
<label>(3)</label>
<mml:math id="M3"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>z</mml:mi><mml:mi>b</mml:mi></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>I</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mrow><mml:mn>&#x03A9;</mml:mn><mml:mrow><mml:mtext>i</mml:mtext></mml:mrow></mml:mrow><mml:mo>&#x2192;</mml:mo><mml:mrow><mml:mtext>j</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:math>
</disp-formula>
<disp-formula id="S3.E4">
<label>(4)</label>
<mml:math id="M4"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>z</mml:mi><mml:mi>r</mml:mi></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mn>1.0</mml:mn><mml:mo>,</mml:mo><mml:mrow><mml:mrow><mml:mrow><mml:mi>l</mml:mi><mml:mi>o</mml:mi><mml:mi>g</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>N</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mn>/</mml:mn><mml:mi>l</mml:mi></mml:mrow><mml:mi>o</mml:mi><mml:mi>g</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mn>64</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:math>
</disp-formula>
<p>In above equations (2), (3), and (4) above, <bold>I</bold>(<italic>P</italic><sub>&#x03A9;</sub>) represents Point cloud intensity; <italic>N</italic> represents the number of point clouds in each grid; <bold>z<sub>g</sub></bold> represents the maximum height; <bold>z<sub>b</sub></bold> represents the maximum intensity; <bold>z<sub>r</sub></bold> the normalized density within the grid; <bold>z<sub>b</sub></bold>, <bold>z</bold><sub><bold>g</bold>,</sub> and <bold>z<sub>r</sub></bold> the final output RGB-map pixel values for each channel.</p>
</sec>
<sec id="S3.SS3">
<title>3.3. Complex-YOLO and its improved parts</title>
<p><xref ref-type="fig" rid="F2">Figure 2</xref> shows the network structure of Complex-YOLO. The yellow block represents the backbone network, the green block represents the head network, and the red dashed box is the part to be improved in this paper.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption><p>Complex-YOLO network structure.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-17-1092564-g002.tif"/>
</fig>
<p>In this paper, a comprehensive improvement is made to Complex-YOLO, and the Efficient Complex-YOLO network structure is shown in <xref ref-type="fig" rid="F3">Figure 3</xref>, as follows.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption><p>Efficient Complex-YOLO network structure. The yellow-black-green dashed boxes represent the Backbone, Neck, and Head parts of the network, respectively. W, H, and C represent the length, width, and the number of channels of the feature map, respectively. Efficient Com-plex-YOLO detects small and large objects at 152 &#x00D7; 152, 76 &#x00D7; 76, and 38 &#x00D7; 38 resolutions, respectively.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-17-1092564-g003.tif"/>
</fig>
<list list-type="simple">
<list-item>
<label>(1)</label>
<p>Improvement of the backbone network part: using RepVGG as the backbone network to extract feature maps.</p>
</list-item>
<list-item>
<label>(2)</label>
<p>Adding the neck network structure: adding FPN+CBAM (Convolutional Block Attention Module) (<xref ref-type="bibr" rid="B38">Woo et al., 2018</xref>) as the neck network to achieve special multi-scale fusion.</p>
</list-item>
<list-item>
<label>(3)</label>
<p>Improvements in the head network: selection of the Anchor-free approach, in addition to removing the E-RPN structure in the head network and adding an efficient height detector to regress height.</p>
</list-item>
</list>
<sec id="S3.SS3.SSS1">
<title>3.3.1. Backbone network improvements</title>
<p>To meet the demand for real-time detection while maintaining detection accuracy, we used RepVGG-A2 in the feature extraction network section, which performs better in terms of detection accuracy, detection speed, and memory usage, and the specific structure is shown in <xref ref-type="fig" rid="F4">Figure 4</xref>. RepVGG is a feature extraction network proposed by <xref ref-type="bibr" rid="B6">Ding et al. (2021)</xref>. Compared with other multi-branch structures [e.g., ResNet (<xref ref-type="bibr" rid="B10">He et al., 2016</xref>), DenseNet (<xref ref-type="bibr" rid="B11">Huang et al., 2017</xref>)], RepVGG converts the multi-branch structure into a single-branch structure consisting entirely of 3 &#x00D7; 3 convolutions in the inference stage, which can improve the detection speed of the algorithm and reduce the memory usage while maintaining a high detection accuracy. <xref ref-type="fig" rid="F4">Figure 4A</xref> shows the RepVGG training phase structure. In the training phase, two branching structures are used: one is a residual structure similar to ResNet with <italic>y</italic> = <italic>x</italic> + <italic>F</italic>(<italic>x</italic>), and the other is a branching structure with <italic>y</italic> = <italic>G</italic>(<italic>x</italic>) + <italic>F</italic>(<italic>x</italic>), to which a 1 &#x00D7; 1 convolution is added for feature extraction, and the final performance is <italic>y</italic> = <italic>x</italic> + <italic>F</italic>(<italic>x</italic>) + <italic>G</italic>(<italic>x</italic>). This branching structure provides the network with numerous gradient update pathways, making the trained model more adaptable. Training such a network is similar to the concept of model integration, in which many models are fused to improve model robustness and reduce gradient disappearance, which is more favorable to loss function convergence. <xref ref-type="fig" rid="F4">Figure 4B</xref> shows the network structure of RepVGG during the inference phase. In the inference phase, RepVGG reconstructs the model weights of the identity branch and 1 &#x00D7; 1 branch into 3 &#x00D7; 3 convolution, and then fuses the reconstructed parameters with the original 3 &#x00D7; 3 convolution weights of the main branch, resulting in a network consisting solely of 3 &#x00D7; 3 convolution. This method can avoid the need to save the calculation results of all branches before completing the feature fusion operation of the residual structure during the actual program operation and effectively reduce memory usage while ensuring accuracy and greatly improving detection speed. In addition, most algorithmic frameworks nowadays accelerate 3 &#x00D7; 3 convolution, and with GPU acceleration, the FLOPS (computational density, number of floating points operations per second) of 3 &#x00D7; 3 convolution can reach four times that of 1 &#x00D7; 1 convolution and 5 &#x00D7; 5 convolution, which greatly accelerates RepVGG&#x2019;s detection speed (<xref ref-type="bibr" rid="B6">Ding et al., 2021</xref>).</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption><p>RepVGG network structure. <bold>(A,B)</bold> Are the network structures of RepVGG in the training and inference process, respectively.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-17-1092564-g004.tif"/>
</fig>
<p>The model used in this paper is the RepVGG-A2 model. The specific parameters are shown in <xref ref-type="table" rid="T1">Table 1</xref>.</p>
<table-wrap position="float" id="T1">
<label>TABLE 1</label>
<caption><p>RepVGG-A2 specific parameters.</p></caption>
<table cellspacing="5" cellpadding="5" frame="box" rules="all">
<thead>
<tr>
<td valign="top" align="left" style="color:#ffffff;background-color: #7f8080;">Stage</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Output size</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Number of blocks</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">1</td>
<td valign="top" align="center">304 &#x00D7; 304 &#x00D7; 64</td>
<td valign="top" align="center">1</td>
</tr>
<tr>
<td valign="top" align="left">2</td>
<td valign="top" align="center">152 &#x00D7; 152 &#x00D7; 69</td>
<td valign="top" align="center">1</td>
</tr>
<tr>
<td valign="top" align="left">3</td>
<td valign="top" align="center">76 &#x00D7; 76 &#x00D7; 192</td>
<td valign="top" align="center">2</td>
</tr>
<tr>
<td valign="top" align="left">4</td>
<td valign="top" align="center">38 &#x00D7; 38 &#x00D7; 384</td>
<td valign="top" align="center">14</td>
</tr>
<tr>
<td valign="top" align="left">5</td>
<td valign="top" align="center">19 &#x00D7; 19 &#x00D7; 1,408</td>
<td valign="top" align="center">1</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="S3.SS3.SSS2">
<title>3.3.2. Neck network improvements</title>
<p>There is no neck network in the original Complex-YOLO. However, when the convolution neural network is used for feature extraction, the size of the extracted feature maps decreases steadily as the network level increases, and the perceptual field corresponding to the regions in the original image will gradually get larger, resulting in the loss of feature information for small objects and making small object detection difficult. Based on this, this paper adds a neck network to the original Complex-YOLO and uses the structure of FPN+CBAM to improve the detection of small-sized objects.</p>
<p>We add the CBAM module before constructing the FPN structure. CBAM is a convolutional block attention module proposed by <xref ref-type="bibr" rid="B38">Woo et al. (2018)</xref> that combines the channel attention mechanism and the spatial attention mechanism, and the specific structure is shown in <xref ref-type="fig" rid="F5">Figure 5</xref>. The channel attention mechanism generates a channel attention map by exploiting the inter-channel relationships of features. As each channel of a feature map is considered as a feature detector, channel attention focuses on &#x201C;what&#x201D; is meaningful given an input image. The spatial attention mechanism uses the spatial relationships of features to build a spatial attention map. It focuses on &#x201C;where&#x201D; is an informative part, which is complementary to the channel attention. Adding the CBAM module before building the FPN structure enables the model to learn which features are more beneficial to the detection task, eliminates redundant features, and facilitates the integration of different levels of semantic information in the FPN structure (<xref ref-type="bibr" rid="B15">Lin et al., 2017a</xref>).</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption><p>Convolutional block attention module (CBAM) network structure.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-17-1092564-g005.tif"/>
</fig>
<p>The upper part of <xref ref-type="fig" rid="F6">Figure 6</xref> shows the channel attention mechanism, and its implementation can be divided into two parts that will execute global average pooling and global max pooling for each of the individual feature layers coming in. Following that, the results of the average pooling and max pooling are processed using a shared fully connected layer, and the two processed results are summed, followed by a Sigmoid operation to produce the weights (between 0 and 1) of each channel of the input feature layer. After obtaining this weight, the spatial attention map is generated by multiplying this weight by the original input feature layer. The bottom half of <xref ref-type="fig" rid="F6">Figure 6</xref> shows the spatial attention mechanism, which takes the maximum value and average value on each channel for each feature point, for the input to be passed into the feature layer. Following that, a stacking of these two results is performed, and the number of channels is adjusted using a convolution with one channel at a time, and then the same Sigmoid operation is conducted to acquire the weight (between 0 and 1) of each feature point of the input feature layer, and finally, this weight is multiplied by the original input feature layer to generate the channel attention map.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption><p>Structure of channel attention module and spatial attention module.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-17-1092564-g006.tif"/>
</fig>
<p>The input features are defined as <italic>F</italic> &#x2208; R<sup><italic>C</italic> &#x00D7; <italic>W</italic> &#x00D7; <italic>H</italic></sup>, <italic>M</italic><sub><italic>C</italic></sub> &#x2208; R<sup><italic>C</italic> &#x00D7; 1 &#x00D7; 1</sup>,and <italic>M</italic><sub><italic>S</italic></sub> &#x2208; <italic>R</italic><sup>1 &#x00D7; <italic>W</italic> &#x00D7; <italic>H</italic></sup>, which are CBAM-derived one-dimensional channel attention weights and two-dimensional spatial attention weights. Then <italic>M<sub>C</sub></italic> and <italic>M<sub>S</sub></italic> are described by equations (5) and (6).</p>
<disp-formula id="S3.E5">
<label>(5)</label>
<mml:math id="M5"><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:msub><mml:mi>M</mml:mi><mml:mi>C</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>&#x03C3;</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mi>M</mml:mi><mml:mi>L</mml:mi><mml:mi>P</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mi>A</mml:mi><mml:mi>v</mml:mi><mml:mi>g</mml:mi><mml:mi>P</mml:mi><mml:mi>o</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>F</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mi>M</mml:mi><mml:mi>L</mml:mi><mml:mi>P</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mi>M</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi><mml:mi>P</mml:mi><mml:mi>o</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>F</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>=</mml:mo><mml:mi>&#x03C3;</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mi>W</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:msub><mml:mi>W</mml:mi><mml:mn>0</mml:mn></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:msubsup><mml:mi>F</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>v</mml:mi><mml:mi>g</mml:mi></mml:mrow><mml:mi>C</mml:mi></mml:msubsup></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:msub><mml:mi>W</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo stretchy='false'>(</mml:mo><mml:msub><mml:mi>W</mml:mi><mml:mn>0</mml:mn></mml:msub><mml:mo stretchy='false'>(</mml:mo><mml:msubsup><mml:mi>F</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow><mml:mi>C</mml:mi></mml:msubsup><mml:mo stretchy='false'>)</mml:mo><mml:mo stretchy='false'>)</mml:mo><mml:mo stretchy='false'>)</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math>
</disp-formula>
<disp-formula id="S3.E6">
<label>(6)</label>
<mml:math id="M6"><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:msub><mml:mi>M</mml:mi><mml:mi>S</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mi>&#x03C3;</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:msup><mml:mi>f</mml:mi><mml:mrow><mml:mn>7</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>7</mml:mn></mml:mrow></mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mrow><mml:mo>[</mml:mo> <mml:mrow><mml:mi>A</mml:mi><mml:mi>v</mml:mi><mml:mi>g</mml:mi><mml:mi>P</mml:mi><mml:mi>o</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>F</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>;</mml:mo><mml:mo>;</mml:mo><mml:mi>M</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi><mml:mi>P</mml:mi><mml:mi>o</mml:mi><mml:mi>o</mml:mi><mml:mi>l</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>F</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow> <mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mo>=</mml:mo><mml:mi>&#x03C3;</mml:mi><mml:mo stretchy='false'>(</mml:mo><mml:msup><mml:mi>f</mml:mi><mml:mrow><mml:mn>7</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>7</mml:mn></mml:mrow></mml:msup><mml:mo stretchy='false'>(</mml:mo><mml:mrow><mml:mo>[</mml:mo> <mml:mrow><mml:msubsup><mml:mi>F</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>v</mml:mi><mml:mi>g</mml:mi></mml:mrow><mml:mi>S</mml:mi></mml:msubsup><mml:mo>;</mml:mo><mml:mo>;</mml:mo><mml:msubsup><mml:mi>F</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow><mml:mi>S</mml:mi></mml:msubsup></mml:mrow> <mml:mo>]</mml:mo></mml:mrow><mml:mo stretchy='false'>)</mml:mo><mml:mo stretchy='false'>)</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math>
</disp-formula>
<p>Where &#x03C3; denotes the Sigmoid activation function; <italic>f</italic><sup>7 &#x00D7; 7</sup> denotes the 7 &#x00D7; 7 convolution operation; <italic>W</italic><sub>0</sub> &#x2208; R<sup><italic>C</italic>/<italic>r</italic> &#x00D7; <italic>C</italic></sup>, <italic>W</italic><sub>1</sub> &#x2208; R<sup><italic>C</italic> &#x00D7; <italic>C</italic>/<italic>r</italic></sup> denote the weight parameters of the MLP (Multi-Layer Perception), where <italic>r</italic> is the reduction ratio; <inline-formula><mml:math id="INEQ1"><mml:mrow><mml:msubsup><mml:mi>F</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>v</mml:mi><mml:mi>g</mml:mi></mml:mrow><mml:mi>C</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="INEQ2"><mml:mrow><mml:msubsup><mml:mi>F</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow><mml:mi>C</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> denote the average pooled and maximum pooled features; <inline-formula><mml:math id="INEQ3"><mml:mrow><mml:msubsup><mml:mi>F</mml:mi><mml:mrow><mml:mi>a</mml:mi><mml:mi>v</mml:mi><mml:mi>g</mml:mi></mml:mrow><mml:mi>S</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="INEQ4"><mml:mrow><mml:msubsup><mml:mi>F</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow><mml:mi>S</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula> denote the average pooled and max pooled features across channels.</p>
<p>Equations (7) and (8) define the computational process of CBAM by defining <italic>F</italic> as the output of the channel attention mechanism and <italic>F</italic> as the output of the spatial attention mechanism. &#x2297; denotes element-wise multiplication.</p>
<disp-formula id="S3.E7">
<label>(7)</label>
<mml:math id="M7"><mml:mrow><mml:mpadded width="+3.3pt"><mml:mi>F</mml:mi></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mrow><mml:mrow><mml:msub><mml:mi>M</mml:mi><mml:mi>C</mml:mi></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>F</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo>&#x2297;</mml:mo><mml:mi>F</mml:mi></mml:mrow></mml:mrow></mml:math>
</disp-formula>
<disp-formula id="S3.E8">
<label>(8)</label>
<mml:math id="M8"><mml:mrow><mml:mpadded width="+3.3pt"><mml:mi>F</mml:mi></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mrow><mml:mrow><mml:msub><mml:mi>M</mml:mi><mml:mi>C</mml:mi></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>F</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo>&#x2297;</mml:mo><mml:mi>F</mml:mi></mml:mrow></mml:mrow></mml:math>
</disp-formula>
<p>As shown in <xref ref-type="fig" rid="F7">Figure 7</xref>, we select the feature maps output from Stage2, Stage3, Stage4, and Stage5 of RepVGG-A2 (corresponding resolutions 152 &#x00D7; 152, 76 &#x00D7; 76, 38 &#x00D7; 38, and 19 &#x00D7; 19, in that order) as input, and then build the FPN structure after passing through the CBAM module. The outputs through CBAM are defined as F2, F3, F4, and F5, and we will do 2&#x00D7; up-sampling of the lower resolution feature map in the adjacent feature maps, then stitch it with the adjacent feature maps of the higher resolution by channel dimension (for example, the resolution of F5 is 19 &#x00D7; 19, and the resolution of F4 is 38 &#x00D7; 38, so we do 2&#x00D7; up-sampling of F5, and then stitch it with F4 by channel dimension), and finally, adjust the number of channels by 1 &#x00D7; 1 convolution. This completes the feature fusion of adjacent feature maps. The fused results are defined as P2, P3, P4, and P5. In the course of subsequent experiments, we found that when predicted at a resolution of 152 &#x00D7; 152, each grid corresponds to a size of about 0.32 m &#x00D7; 0.32 m in the original 50 m &#x00D7; 50 m space, which is not conducive to pedestrian detection in dense scenes, so we subjected the obtained P2, P3, and P4 to another 2&#x00D7; up-sampling operation and completed a feature of adjacent resolution fusion, and the final set of feature maps participating in the prediction is defined as (P2, P3, P4, corresponding resolutions 304 &#x00D7; 304, 152 &#x00D7; 152, and 76 &#x00D7; 76). In general, the lower-resolution feature map contains more semantic information, and each grid has a wider perceptual range, whereas the higher-resolution feature map contains rich spatial information, and each grid has a narrower perceptual range. As a result, by constructing an FPN structure, we can fuse different feature information of different resolutions on the one hand, and predict objects of different sizes in different perceptual ranges on the other. We use P4 to predict some larger objects and P3 and P2 to predict some smaller objects during the prediction stage.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption><p>Improved feature pyramid network (FPN) network structure. The &#x201C;Concat&#x201D; module means stitching by channel dimension. The dotted box part shows one feature fusion operation of adjacent feature maps.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-17-1092564-g007.tif"/>
</fig>
</sec>
<sec id="S3.SS3.SSS3">
<title>3.3.3. Head network improvements</title>
<p>Complex-YOLO adds the E-RPN network based on YOLOv2 to achieve the regression of object orientation angles and in the Efficient Complex-YOLO, we choose to regress the angle of the object directly. In addition, Complex-YOLO does not detect the height of the object but instead gives a fixed height value for different classes of objects (Car:1.5 m; Cyclist:1.4 m; Pedestrian:1.8 m), which is still essentially 2D object detection and is not conducive to the return of the 3D bounding box. Efficient Complex-YOLO adds the height detector based on Complex-YOLO to directly predict the height of objects, which greatly improves the detection accuracy of the 3D Bounding box. <xref ref-type="fig" rid="F8">Figure 8</xref> shows the specific head prediction network structure.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption><p>Improve head network structure.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-17-1092564-g008.tif"/>
</fig>
<p>For the prediction of 2D bounding box information, we choose the Anchor-free based prediction method. The anchor proposed by Faster R-CNN (<xref ref-type="bibr" rid="B29">Ren et al., 2015</xref>) tries to predetermine the shape of objects for different shapes and sizes, it can handle different shapes of objects well and also reduces the difficulty of training. However, the foreground points (objects we want to detect, such as cars, pedestrians, etc.) in a point cloud data frame are few, resulting in a large number of anchor boxes matching the background points and being judged as negative samples, and only a few anchor boxes matching the foreground points and being judged as positive samples, resulting in serious positive and negative sample mismatch, which is detrimental to model training.</p>
<p>In the prediction stage, we predict five results for each output of the FPN structure (both P2, P3, and P4 mentioned above), corresponding to the predicted class confidence of the object, the 2D bounding box coordinate offset, the orientation angle of the object, the z-axis coordinate offset under the 3D bounding box, and the length, width, and height of the 3D bounding box. Each prediction result is completed by two convolutions. For the first time, 3 &#x00D7; 3 convolution is used to adjust the number of channels. For example, for category probability prediction of objects, the feature map size is integrated from W &#x00D7; H &#x00D7; C to W &#x00D7; H &#x00D7; 3 by a 3 &#x00D7; 3 convolution operation (we selected three categories of Car, Pedestrian and Cyclist for testing. Therefore, the channel number of the integrated feature map is 3). Finally, we use a 1 &#x00D7; 1 convolution operation to complete the prediction.</p>
<p>In Complex-YOLO, the E-RPN network decomposes the regression of the object orientation angle into the regression of the parameters <italic>t</italic><sub><italic>im</italic></sub> and <italic>t</italic><sub><italic>re</italic></sub>, which correspond to the phase of a complex number. <italic>artan</italic>(<italic>t</italic><sub><italic>im</italic></sub>, <italic>t</italic><sub><italic>re</italic></sub>) is used to calculate the orientation angle (<xref ref-type="bibr" rid="B34">Simony et al., 2018</xref>). We attempt to predict the orientation angle of the object directly, and subsequent experiments show that direct regression of the angle can improve the algorithm&#x2019;s detection accuracy even further.</p>
<p>As previously stated, the BEV-map constructed during the data pre-processing stage contains the maximum height information of the point cloud data in each grid, and we chose point cloud data in the range of <italic>z</italic> &#x2208; [2.73, 1.27], which can filter out the majority of the occlusion cases. As a result, we add the height detector using the same procedure as the category prediction described above (3 &#x00D7; 3 convolution is used to integrate the feature map size from W &#x00D7; H &#x00D7; C to W &#x00D7; H &#x00D7; 1, and then 1 &#x00D7; 1 convolution is used to complete the final height detection).</p>
<p>Let&#x2019;s define <italic>b<sub>x</sub>, b<sub>y</sub>, b<sub>z</sub></italic> as the center point coordinates of the 3D bounding box, <italic>b<sub>w</sub>, b<sub>h</sub>, b<sub>l</sub></italic>as the length, width, and height of the 3D bounding box, <italic>b</italic><sub>&#x03D5;</sub> as the orientation angle, <italic>t<sub>x</sub>, t<sub>y</sub>, t<sub>z</sub>, t<sub>w</sub>, t<sub>h</sub>, t<sub>l</sub>, t</italic><sub>&#x03D5;</sub> as the relative offset obtained from the network prediction, <italic>c<sub>x</sub>, c<sub>y</sub></italic> as the grid center point coordinates in the bird&#x2019;s eye view, and &#x03C3;(<italic>x</italic>) as the Sigmoid function. Equations (9) to (15) indicate the regression modes of 3D bounding boxes of objects.</p>
<disp-formula id="S3.E9">
<label>(9)</label>
<mml:math id="M9"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>b</mml:mi><mml:mi>x</mml:mi></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mrow><mml:mrow><mml:mn>&#x03C3;</mml:mn><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mi>x</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mo>+</mml:mo><mml:msub><mml:mi>c</mml:mi><mml:mi>x</mml:mi></mml:msub></mml:mrow></mml:mrow></mml:math>
</disp-formula>
<disp-formula id="S3.E10">
<label>(10)</label>
<mml:math id="M10"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>b</mml:mi><mml:mi>y</mml:mi></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mrow><mml:mrow><mml:mn>&#x03C3;</mml:mn><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mi>y</mml:mi></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mo>+</mml:mo><mml:msub><mml:mi>c</mml:mi><mml:mi>y</mml:mi></mml:msub></mml:mrow></mml:mrow></mml:math>
</disp-formula>
<disp-formula id="S3.E11">
<label>(11)</label>
<mml:math id="M11"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>b</mml:mi><mml:mi>z</mml:mi></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mi>z</mml:mi></mml:msub></mml:mrow></mml:math>
</disp-formula>
<disp-formula id="S3.E12">
<label>(12)</label>
<mml:math id="M12"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>b</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mi>w</mml:mi></mml:msub></mml:mrow></mml:math>
</disp-formula>
<disp-formula id="S3.E13">
<label>(13)</label>
<mml:math id="M13"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>b</mml:mi><mml:mi>h</mml:mi></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mi>h</mml:mi></mml:msub></mml:mrow></mml:math>
</disp-formula>
<disp-formula id="S3.E14">
<label>(14)</label>
<mml:math id="M14"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>b</mml:mi><mml:mi>l</mml:mi></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mi>l</mml:mi></mml:msub></mml:mrow></mml:math>
</disp-formula>
<disp-formula id="S3.E15">
<label>(15)</label>
<mml:math id="M15"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>b</mml:mi><mml:mi>&#x03D5;</mml:mi></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:msub><mml:mi>t</mml:mi><mml:mi>&#x03D5;</mml:mi></mml:msub></mml:mrow></mml:math>
</disp-formula>
<p>In the training phase, inspired by CenterNet (<xref ref-type="bibr" rid="B7">Duan et al., 2019</xref>), we choose to generate a heatmap to calculate the object category loss and Focal Loss (<xref ref-type="bibr" rid="B16">Lin et al., 2017b</xref>) is chosen to calculate the category loss of objects to avoid the problem of positive and negative sample mismatch. The specific calculation formula is shown in equation (16).</p>
<disp-formula id="S3.E16">
<label>(16)</label>
<mml:math id="M16"><mml:mrow><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>c</mml:mi><mml:mi>l</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mfrac><mml:mrow><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>N</mml:mi></mml:mfrac><mml:mrow><mml:munderover><mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo><mml:mrow><mml:mpadded width="+3.3pt"><mml:mi>c</mml:mi></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>C</mml:mi></mml:munderover><mml:mrow><mml:munderover><mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo><mml:mrow><mml:mpadded width="+3.3pt"><mml:mi>w</mml:mi></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>W</mml:mi></mml:munderover><mml:mrow><mml:munderover><mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo><mml:mrow><mml:mpadded width="+3.3pt"><mml:mi>h</mml:mi></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>H</mml:mi></mml:munderover><mml:mrow><mml:mo>&#x007B;</mml:mo><mml:mtable columnspacing="5pt" displaystyle="true" rowspacing="0pt"><mml:mtr><mml:mtd columnalign="left"><mml:mrow><mml:mrow><mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:msubsup><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo stretchy="false">^</mml:mo></mml:mover><mml:mrow><mml:mi>c</mml:mi><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>l</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:msubsup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mn>&#x03B1;</mml:mn></mml:msup><mml:mrow><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msubsup><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo stretchy="false">^</mml:mo></mml:mover><mml:mrow><mml:mi>c</mml:mi><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>l</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:mrow></mml:mtd><mml:mtd columnalign="left"><mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mpadded width="+5pt"><mml:mi>f</mml:mi></mml:mpadded><mml:mpadded width="+3.3pt"><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>c</mml:mi><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>l</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:msubsup></mml:mpadded></mml:mrow><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd columnalign="left"><mml:mrow><mml:mrow><mml:msup><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>c</mml:mi><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>l</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:msubsup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mn>&#x03B2;</mml:mn></mml:msup><mml:mrow><mml:mi>log</mml:mi><mml:mo>&#x2061;</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>-</mml:mo><mml:msubsup><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo stretchy="false">^</mml:mo></mml:mover><mml:mrow><mml:mi>c</mml:mi><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>l</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:msubsup></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:mrow></mml:mtd><mml:mtd columnalign="left"><mml:mrow><mml:mi>o</mml:mi><mml:mi>t</mml:mi><mml:mi>h</mml:mi><mml:mi>e</mml:mi><mml:mi>r</mml:mi><mml:mi>w</mml:mi><mml:mi>i</mml:mi><mml:mi>s</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mi/></mml:mrow></mml:mrow></mml:mrow></mml:mrow></mml:mrow></mml:mrow></mml:math>
</disp-formula>
<p><italic>C</italic> denotes the number of channels of the heatmap (in this paper, we selected three categories of Car, Pedestrian and Cyclist for testing, so <italic>C</italic> = 3 here); <italic>H</italic> and <italic>W</italic> denotes the length and width of heatmap; <inline-formula><mml:math id="INEQ5"><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>c</mml:mi><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>l</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> can be obtained from the length and width of the ground truth as well as the Gaussian kernel calculated; <inline-formula><mml:math id="INEQ6"><mml:msubsup><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo stretchy="false">^</mml:mo></mml:mover><mml:mrow><mml:mi>c</mml:mi><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>c</mml:mi><mml:mi>l</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> is the predicted value of the network; we set &#x03B1; to 2 and &#x03B2; to 4.</p>
<p>We used L1 Loss to calculate the loss values of the x, y coordinate offset and the loss values of the orientation angle of the object. The specific calculation formula is shown in equations (17) (18).</p>
<disp-formula id="S3.E17">
<label>(17)</label>
<mml:math id="M17"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>y</mml:mi><mml:mi>a</mml:mi><mml:mi>w</mml:mi></mml:mrow></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mrow><mml:mfrac><mml:mn>1</mml:mn><mml:mi>N</mml:mi></mml:mfrac><mml:mrow><mml:munderover><mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo><mml:mrow><mml:mpadded width="+3.3pt"><mml:mi>w</mml:mi></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>W</mml:mi></mml:munderover><mml:mrow><mml:munderover><mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo><mml:mrow><mml:mpadded width="+3.3pt"><mml:mi>h</mml:mi></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>H</mml:mi></mml:munderover><mml:mrow><mml:msubsup><mml:mn>1</mml:mn><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>b</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msubsup><mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo><mml:mrow><mml:mpadded width="+5pt"><mml:msubsup><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo stretchy="false">^</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi><mml:mi>a</mml:mi><mml:mi>w</mml:mi></mml:mrow></mml:msubsup></mml:mpadded><mml:mo>-</mml:mo><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi><mml:mi>a</mml:mi><mml:mi>w</mml:mi></mml:mrow></mml:msubsup></mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:mrow></mml:mrow></mml:mrow></mml:math>
</disp-formula>
<disp-formula id="S3.E18">
<label>(18)</label>
<mml:math id="M18"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>o</mml:mi><mml:mi>f</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mrow><mml:mfrac><mml:mn>1</mml:mn><mml:mi>N</mml:mi></mml:mfrac><mml:mrow><mml:munderover><mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo><mml:mrow><mml:mpadded width="+3.3pt"><mml:mi>w</mml:mi></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>W</mml:mi></mml:munderover><mml:mrow><mml:munderover><mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo><mml:mrow><mml:mpadded width="+3.3pt"><mml:mi>h</mml:mi></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>H</mml:mi></mml:munderover><mml:mrow><mml:msubsup><mml:mn>1</mml:mn><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>b</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msubsup><mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo><mml:mrow><mml:mpadded width="+5pt"><mml:msubsup><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo stretchy="false">^</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>f</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msubsup></mml:mpadded><mml:mo>-</mml:mo><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>f</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msubsup></mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:mrow></mml:mrow></mml:mrow></mml:math>
</disp-formula>
<p><inline-formula><mml:math id="INEQ7"><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi><mml:mi>a</mml:mi><mml:mi>w</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula>, <inline-formula><mml:math id="INEQ8"><mml:msubsup><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo stretchy="false">^</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>y</mml:mi><mml:mi>a</mml:mi><mml:mi>w</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> denote the ground truth and predicted values of orientation angle; <inline-formula><mml:math id="INEQ9"><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>f</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula>, <inline-formula><mml:math id="INEQ10"><mml:msubsup><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo stretchy="false">^</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>f</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> denote the ground truth and predicted values of x, y offsets, respectively; <inline-formula><mml:math id="INEQ11"><mml:msubsup><mml:mn>1</mml:mn><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>b</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> denotes if an object appears in position i, j.</p>
<p>We use Balanced L1 Loss (<xref ref-type="bibr" rid="B22">Pang et al., 2019</xref>) to calculate the loss values of the z-coordinate and length, width and height, the specific formula as shown in equations (19) (20).</p>
<disp-formula id="S3.E19">
<label>(19)</label>
<mml:math id="M19"><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mi>N</mml:mi></mml:mfrac><mml:munderover><mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo><mml:mrow><mml:mi>w</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>W</mml:mi></mml:munderover><mml:mrow><mml:munderover><mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo><mml:mrow><mml:mi>h</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>H</mml:mi></mml:munderover><mml:msubsup><mml:mn>1</mml:mn><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>b</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msubsup></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;</mml:mn><mml:mrow><mml:mo>&#x007B;</mml:mo> <mml:mrow><mml:mtable><mml:mtr><mml:mtd><mml:mrow><mml:mfrac><mml:mi>&#x03B1;</mml:mi><mml:mi>b</mml:mi></mml:mfrac><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mi>b</mml:mi><mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo> <mml:mrow><mml:msubsup><mml:mover accent='true'><mml:mi>p</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msubsup></mml:mrow> <mml:mo stretchy="false">&#x007C;</mml:mo></mml:mrow></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mi>l</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mi>b</mml:mi><mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo> <mml:mrow><mml:msubsup><mml:mover accent='true'><mml:mi>p</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msubsup></mml:mrow> <mml:mo stretchy="false">&#x007C;</mml:mo></mml:mrow></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo> <mml:mrow><mml:msubsup><mml:mover accent='true'><mml:mi>p</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msubsup></mml:mrow> <mml:mo stretchy="false">&#x007C;</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd columnalign="left"><mml:mrow><mml:mn>&#x00A0;&#x00A0;</mml:mn><mml:mi>&#x03B3;</mml:mi><mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo> <mml:mi>x</mml:mi> <mml:mo stretchy="false">&#x007C;</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mi>C</mml:mi><mml:mn>&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x00A0;</mml:mn><mml:mi>o</mml:mi><mml:mi>t</mml:mi><mml:mi>h</mml:mi><mml:mi>e</mml:mi><mml:mi>r</mml:mi><mml:mi>w</mml:mi><mml:mi>i</mml:mi><mml:mi>s</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow> </mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math>
</disp-formula>
<disp-formula id="S3.E20">
<label>(20)</label>
<mml:math id="M20"><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:msub><mml:mi>L</mml:mi><mml:mi>z</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mi>N</mml:mi></mml:mfrac><mml:munderover><mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo><mml:mrow><mml:mi>w</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>W</mml:mi></mml:munderover><mml:mrow><mml:munderover><mml:mo largeop="true" movablelimits="false" symmetric="true">&#x2211;</mml:mo><mml:mrow><mml:mi>h</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mi>H</mml:mi></mml:munderover><mml:msubsup><mml:mn>1</mml:mn><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>o</mml:mi><mml:mi>b</mml:mi><mml:mi>j</mml:mi></mml:mrow></mml:msubsup></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>&#x00A0;&#x2003;&#x2003;</mml:mn><mml:mrow><mml:mo>&#x007B;</mml:mo> <mml:mrow><mml:mtable><mml:mtr><mml:mtd><mml:mrow><mml:mfrac><mml:mi>&#x03B1;</mml:mi><mml:mi>b</mml:mi></mml:mfrac><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mi>b</mml:mi><mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo> <mml:mrow><mml:msubsup><mml:mover accent='true'><mml:mi>p</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mi>z</mml:mi></mml:msubsup><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mi>z</mml:mi></mml:msubsup></mml:mrow> <mml:mo stretchy="false">&#x007C;</mml:mo></mml:mrow></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mi>l</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mi>b</mml:mi><mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo> <mml:mrow><mml:msubsup><mml:mover accent='true'><mml:mi>p</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mi>z</mml:mi></mml:msubsup><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mi>z</mml:mi></mml:msubsup></mml:mrow> <mml:mo stretchy="false">&#x007C;</mml:mo></mml:mrow></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo> <mml:mrow><mml:msubsup><mml:mover accent='true'><mml:mi>p</mml:mi><mml:mo>&#x005E;</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mi>z</mml:mi></mml:msubsup><mml:mo>&#x2212;</mml:mo><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mi>z</mml:mi></mml:msubsup></mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd columnalign="left"><mml:mrow><mml:mn>&#x00A0;&#x00A0;&#x00A0;</mml:mn><mml:mi>&#x03B3;</mml:mi><mml:mrow><mml:mo stretchy="false">&#x007C;</mml:mo> <mml:mi>x</mml:mi> <mml:mo stretchy="false">&#x007C;</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mi>C</mml:mi><mml:mn>&#x00A0;&#x00A0;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x2003;&#x00A0;</mml:mn><mml:mi>o</mml:mi><mml:mi>t</mml:mi><mml:mi>h</mml:mi><mml:mi>e</mml:mi><mml:mi>r</mml:mi><mml:mi>w</mml:mi><mml:mi>i</mml:mi><mml:mi>s</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mrow> </mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math>
</disp-formula>
<p><inline-formula><mml:math id="INEQ12"><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula>, <inline-formula><mml:math id="INEQ13"><mml:msubsup><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo stretchy="false">^</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> denote the ground truth and predicted values of the object&#x2019;s length, width and height, respectively; <inline-formula><mml:math id="INEQ14"><mml:mrow><mml:msubsup><mml:mi>p</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mi>z</mml:mi></mml:msubsup></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="INEQ15"><mml:msubsup><mml:mover accent="true"><mml:mi>p</mml:mi><mml:mo stretchy="false">^</mml:mo></mml:mover><mml:mrow><mml:mi>i</mml:mi><mml:mi>j</mml:mi></mml:mrow><mml:mi>z</mml:mi></mml:msubsup></mml:math></inline-formula> denote the ground truth and predicted values of the object&#x2019;s z-coordinate; &#x03B1; and &#x03B3; are 0.5 and 1.5, respectively; &#x03B1;, &#x03B3; and <italic>b</italic> satisfy the relation <italic>b</italic> = <italic>e</italic><sup>&#x03B3;/&#x03B1;</sup> &#x2212; 1;</p>
<p>The final loss function is calculated as shown in equation (21).</p>
<disp-formula id="S3.E21">
<label>(21)</label>
<mml:math id="M21"><mml:mrow><mml:mpadded width="+3.3pt"><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mi>o</mml:mi><mml:mi>t</mml:mi><mml:mi>a</mml:mi><mml:mi>l</mml:mi></mml:mrow></mml:msub></mml:mpadded><mml:mo lspace="0pt" rspace="2.8pt">=</mml:mo><mml:mrow><mml:mrow><mml:msub><mml:mn>&#x03BB;</mml:mn><mml:mrow><mml:mi>c</mml:mi><mml:mi>l</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>c</mml:mi><mml:mi>l</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:msub><mml:mn>&#x03BB;</mml:mn><mml:mrow><mml:mi>y</mml:mi><mml:mi>a</mml:mi><mml:mi>w</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>y</mml:mi><mml:mi>a</mml:mi><mml:mi>w</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:msub><mml:mn>&#x03BB;</mml:mn><mml:mrow><mml:mi>o</mml:mi><mml:mi>f</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>o</mml:mi><mml:mi>f</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:msub><mml:mn>&#x03BB;</mml:mn><mml:mi>z</mml:mi></mml:msub><mml:msub><mml:mi>L</mml:mi><mml:mi>z</mml:mi></mml:msub></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:msub><mml:mn>&#x03BB;</mml:mn><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>d</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:mrow></mml:math>
</disp-formula>
<p>&#x03BB;<sub><italic>cls</italic></sub>, &#x03BB;<sub><italic>yaw</italic></sub>, &#x03BB;<sub><italic>off</italic></sub>, &#x03BB;<sub><italic>z</italic></sub> and &#x03BB;<sub><italic>dim</italic></sub> denote the weight of each part of the loss function, respectively.</p>
</sec>
</sec>
</sec>
<sec id="S4" sec-type="results">
<title>4. Result</title>
<sec id="S4.SS1">
<title>4.1. Experiment environment</title>
<p>The experimental platform in this paper is Ubuntu 18.04; the GPU used is Nvidia RTX3070Ti with 8G memory; the deep learning framework is PyTorch 1.10; the KITTI (<xref ref-type="bibr" rid="B8">Geiger et al., 2012</xref>) dataset is selected for model training, 6,000 data are randomly selected as the training set, and the rest are used as the validation set.</p>
</sec>
<sec id="S4.SS2">
<title>4.2. Ablation experiment design and analysis</title>
<p>The experiments in this paper used the same KITTI dataset used by Complex-YOLO to evaluate detection accuracy for three categories of objects: Car, Pedestrian, and Cyclist. AP (Average Precision) and mAP (Mean Average Precision) are used as accuracy evaluation metrics, while FPS (Frames Per Second) is used as speed evaluation metrics. The IoU (Intersection over Union) threshold is 0.7 for Car and 0.5 for Pedestrian and Cyclist (for example, if the IOU threshold is 0.7, when the IOU between the detected bounding box and the ground truth bounding box is greater than 0.7, the detected bounding box is considered to be a positive sample), and detection results are classified as Easy, Mod, and Hard depending on the object being obscured. <xref ref-type="table" rid="T2">Tables 2</xref>, <xref ref-type="table" rid="T3">3</xref> show the specific experimental results, where <xref ref-type="table" rid="T2">Table 2</xref> shows the accuracy of 2D object detection in the bird&#x2019;s eye view perspective and <xref ref-type="table" rid="T3">Table 3</xref> shows the accuracy of 3D object detection.</p>
<table-wrap position="float" id="T2">
<label>TABLE 2</label>
<caption><p>Experimental results of the ablation experiments were used to verify the contribution of the improvements in this paper.</p></caption>
<table cellspacing="5" cellpadding="5" frame="box" rules="all">
<thead>
<tr>
<td valign="top" align="left" colspan="2" style="color:#ffffff;background-color: #7f8080;">Improved part</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method A</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method B</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method C</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method D</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method E</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method F</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method G</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left" colspan="2">E-RPN</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td/>
<td/>
<td/>
</tr>
<tr>
<td valign="top" align="left" colspan="2">RepVGG-A2</td>
<td/>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
</tr>
<tr>
<td valign="top" align="left" colspan="2">FPN</td>
<td/>
<td/>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
</tr>
<tr>
<td valign="top" align="left" colspan="2">Height detector</td>
<td/>
<td/>
<td/>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
</tr>
<tr>
<td valign="top" align="left" colspan="2">CBAM</td>
<td/>
<td/>
<td/>
<td/>
<td/>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
</tr>
<tr>
<td valign="top" align="left" colspan="2">Higher resolution</td>
<td/>
<td/>
<td/>
<td/>
<td/>
<td/>
<td valign="top" align="center">&#x221A;</td>
</tr>
<tr>
<td valign="top" align="left">Car AP</td>
<td valign="top" align="center">Easy</td>
<td valign="top" align="center">85.89</td>
<td valign="top" align="center">89.46</td>
<td valign="top" align="center">84.79</td>
<td valign="top" align="center">92.73</td>
<td valign="top" align="center">87.96</td>
<td valign="top" align="center"><bold>97.34</bold></td>
<td valign="top" align="center">96.52</td>
</tr>
<tr>
<td/>
<td valign="top" align="center">Mod</td>
<td valign="top" align="center">77.40</td>
<td valign="top" align="center">89.36</td>
<td valign="top" align="center">87.18</td>
<td valign="top" align="center">87.20</td>
<td valign="top" align="center">88.24</td>
<td valign="top" align="center">89.74</td>
<td valign="top" align="center"><bold>89.80</bold></td>
</tr>
<tr>
<td valign="top" align="left">(IoU = 0.7)</td>
<td valign="top" align="center">Hard</td>
<td valign="top" align="center">77.33</td>
<td valign="top" align="center">80.80</td>
<td valign="top" align="center">87.81</td>
<td valign="top" align="center">87.83</td>
<td valign="top" align="center">88.61</td>
<td valign="top" align="center">89.90</td>
<td valign="top" align="center"><bold>89.92</bold></td>
</tr>
<tr>
<td valign="top" align="left">Pedestrian AP</td>
<td valign="top" align="center">Easy</td>
<td valign="top" align="center">46.08</td>
<td valign="top" align="center">36.96</td>
<td valign="top" align="center">66.91</td>
<td valign="top" align="center">66.76</td>
<td valign="top" align="center">67.94</td>
<td valign="top" align="center">71.88</td>
<td valign="top" align="center"><bold>73.26</bold></td>
</tr>
<tr>
<td/>
<td valign="top" align="center">Mod</td>
<td valign="top" align="center">45.90</td>
<td valign="top" align="center">32.88</td>
<td valign="top" align="center">69.27</td>
<td valign="top" align="center">69.27</td>
<td valign="top" align="center">70.51</td>
<td valign="top" align="center">73.44</td>
<td valign="top" align="center"><bold>73.56</bold></td>
</tr>
<tr>
<td valign="top" align="left">(IoU = 0.5)</td>
<td valign="top" align="center">Hard</td>
<td valign="top" align="center">44.20</td>
<td valign="top" align="center">33.84</td>
<td valign="top" align="center">70.63</td>
<td valign="top" align="center">70.63</td>
<td valign="top" align="center">71.35</td>
<td valign="top" align="center">74.42</td>
<td valign="top" align="center"><bold>75.42</bold></td>
</tr>
<tr>
<td valign="top" align="left">Cyclist AP</td>
<td valign="top" align="center">Easy</td>
<td valign="top" align="center">72.37</td>
<td valign="top" align="center">59.12</td>
<td valign="top" align="center">76.26</td>
<td valign="top" align="center">85.15</td>
<td valign="top" align="center"><bold>85.92</bold></td>
<td valign="top" align="center">85.87</td>
<td valign="top" align="center">85.61</td>
</tr>
<tr>
<td/>
<td valign="top" align="center">Mod</td>
<td valign="top" align="center">63.36</td>
<td valign="top" align="center">68.00</td>
<td valign="top" align="center">76.71</td>
<td valign="top" align="center">84.70</td>
<td valign="top" align="center">85.64</td>
<td valign="top" align="center">86.10</td>
<td valign="top" align="center"><bold>86.52</bold></td>
</tr>
<tr>
<td valign="top" align="left">(IoU = 0.5)</td>
<td valign="top" align="center">Hard</td>
<td valign="top" align="center">60.27</td>
<td valign="top" align="center">60.13</td>
<td valign="top" align="center">77.00</td>
<td valign="top" align="center">84.94</td>
<td valign="top" align="center">78.02</td>
<td valign="top" align="center">86.21</td>
<td valign="top" align="center"><bold>86.21</bold></td>
</tr>
<tr>
<td/>
<td valign="top" align="center">Easy</td>
<td valign="top" align="center">68.11</td>
<td valign="top" align="center">61.84</td>
<td valign="top" align="center">75.99</td>
<td valign="top" align="center">81.54</td>
<td valign="top" align="center">80.61</td>
<td valign="top" align="center">85.03</td>
<td valign="top" align="center"><bold>85.13</bold></td>
</tr>
<tr>
<td valign="top" align="left">mAP</td>
<td valign="top" align="center">Mod</td>
<td valign="top" align="center">62.22</td>
<td valign="top" align="center">63.41</td>
<td valign="top" align="center">77.72</td>
<td valign="top" align="center">80.39</td>
<td valign="top" align="center">81.46</td>
<td valign="top" align="center">83.09</td>
<td valign="top" align="center"><bold>83.29</bold></td>
</tr>
<tr>
<td/>
<td valign="top" align="center">Hard</td>
<td valign="top" align="center">60.60</td>
<td valign="top" align="center">58.26</td>
<td valign="top" align="center">78.48</td>
<td valign="top" align="center">81.13</td>
<td valign="top" align="center">79.33</td>
<td valign="top" align="center">83.51</td>
<td valign="top" align="center"><bold>83.85</bold></td>
</tr>
<tr>
<td valign="top" align="center" colspan="2">FPS</td>
<td valign="top" align="center">108</td>
<td valign="top" align="center">102</td>
<td valign="top" align="center">78</td>
<td valign="top" align="center">72</td>
<td valign="top" align="center">71</td>
<td valign="top" align="center">68</td>
<td valign="top" align="center">48</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn><p>2D object detection results in the bird&#x2019;s eye view perspective on the KITTI dataset. The evaluation metric is AP (Average Precision). The Intersection over Union (IoU) threshold is 0.7 for Car and 0.5 for Pedestrian/Cyclist. The bolded data are the highest scores for this item.</p></fn>
</table-wrap-foot>
</table-wrap>
<table-wrap position="float" id="T3">
<label>TABLE 3</label>
<caption><p>Experimental results of the ablation experiments were used to verify the contribution of the improvements in this paper.</p></caption>
<table cellspacing="5" cellpadding="5" frame="box" rules="all">
<thead>
<tr>
<td valign="top" align="left" colspan="2" style="color:#ffffff;background-color: #7f8080;">Improved part</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method A</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method B</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method C</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method D</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method E</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method F</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Method G</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left" colspan="2">E-RPN</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td/>
<td/>
<td/>
</tr>
<tr>
<td valign="top" align="left" colspan="2">RepVGG-A2</td>
<td/>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
</tr>
<tr>
<td valign="top" align="left" colspan="2">FPN</td>
<td/>
<td/>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
</tr>
<tr>
<td valign="top" align="left" colspan="2">Height detector</td>
<td/>
<td/>
<td/>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
</tr>
<tr>
<td valign="top" align="left" colspan="2">CBAM</td>
<td/>
<td/>
<td/>
<td/>
<td/>
<td valign="top" align="center">&#x221A;</td>
<td valign="top" align="center">&#x221A;</td>
</tr>
<tr>
<td valign="top" align="left" colspan="2">Higher resolution</td>
<td/>
<td/>
<td/>
<td/>
<td/>
<td/>
<td valign="top" align="center">&#x221A;</td>
</tr>
<tr>
<td valign="top" align="left">Car AP</td>
<td valign="top" align="center">Easy</td>
<td valign="top" align="center">67.72</td>
<td valign="top" align="center">43.88</td>
<td valign="top" align="center">49.68</td>
<td valign="top" align="center">92.50</td>
<td valign="top" align="center">87.37</td>
<td valign="top" align="center"><bold>97.01</bold></td>
<td valign="top" align="center">96.56</td>
</tr>
<tr>
<td/>
<td valign="top" align="center">Mod</td>
<td valign="top" align="center">64.00</td>
<td valign="top" align="center">41.19</td>
<td valign="top" align="center">45.06</td>
<td valign="top" align="center">86.89</td>
<td valign="top" align="center">87.44</td>
<td valign="top" align="center">88.98</td>
<td valign="top" align="center"><bold>89.10</bold></td>
</tr>
<tr>
<td valign="top" align="left">(IoU = 0.7)</td>
<td valign="top" align="center">Hard</td>
<td valign="top" align="center">63.01</td>
<td valign="top" align="center">37.68</td>
<td valign="top" align="center">43.24</td>
<td valign="top" align="center">87.51</td>
<td valign="top" align="center">87.90</td>
<td valign="top" align="center">89.26</td>
<td valign="top" align="center"><bold>89.32</bold></td>
</tr>
<tr>
<td valign="top" align="left">Pedestrian AP</td>
<td valign="top" align="center">Easy</td>
<td valign="top" align="center">41.79</td>
<td valign="top" align="center">27.06</td>
<td valign="top" align="center">53.78</td>
<td valign="top" align="center">65.67</td>
<td valign="top" align="center">67.31</td>
<td valign="top" align="center">70.53</td>
<td valign="top" align="center"><bold>71.33</bold></td>
</tr>
<tr>
<td/>
<td valign="top" align="center">Mod</td>
<td valign="top" align="center">39.70</td>
<td valign="top" align="center">28.62</td>
<td valign="top" align="center">55.99</td>
<td valign="top" align="center">68.11</td>
<td valign="top" align="center">69.92</td>
<td valign="top" align="center">72.53</td>
<td valign="top" align="center"><bold>73.26</bold></td>
</tr>
<tr>
<td valign="top" align="left">(IoU = 0.5)</td>
<td valign="top" align="center">Hard</td>
<td valign="top" align="center">35.92</td>
<td valign="top" align="center">29.70</td>
<td valign="top" align="center">57.58</td>
<td valign="top" align="center">69.52</td>
<td valign="top" align="center">70.88</td>
<td valign="top" align="center">73.42</td>
<td valign="top" align="center"><bold>74.11</bold></td>
</tr>
<tr>
<td valign="top" align="left">Cyclist AP</td>
<td valign="top" align="center">Easy</td>
<td valign="top" align="center">68.17</td>
<td valign="top" align="center">62.92</td>
<td valign="top" align="center">52.58</td>
<td valign="top" align="center">85.15</td>
<td valign="top" align="center">84.77</td>
<td valign="top" align="center"><bold>85.81</bold></td>
<td valign="top" align="center">84.76</td>
</tr>
<tr>
<td/>
<td valign="top" align="center">Mod</td>
<td valign="top" align="center">58.32</td>
<td valign="top" align="center">69.83</td>
<td valign="top" align="center">48.34</td>
<td valign="top" align="center">84.70</td>
<td valign="top" align="center">76.79</td>
<td valign="top" align="center"><bold>85.92</bold></td>
<td valign="top" align="center">85.60</td>
</tr>
<tr>
<td valign="top" align="left">(IoU = 0.5)</td>
<td valign="top" align="center">Hard</td>
<td valign="top" align="center">54.30</td>
<td valign="top" align="center">69.60</td>
<td valign="top" align="center">49.06</td>
<td valign="top" align="center">84.94</td>
<td valign="top" align="center">76.99</td>
<td valign="top" align="center">86.13</td>
<td valign="top" align="center"><bold>86.72</bold></td>
</tr>
<tr>
<td/>
<td valign="top" align="center">Easy</td>
<td valign="top" align="center">59.22</td>
<td valign="top" align="center">44.62</td>
<td valign="top" align="center">52.01</td>
<td valign="top" align="center">81.11</td>
<td valign="top" align="center">79.82</td>
<td valign="top" align="center"><bold>84.45</bold></td>
<td valign="top" align="center">84.21</td>
</tr>
<tr>
<td valign="top" align="left">mAP</td>
<td valign="top" align="center">Mod</td>
<td valign="top" align="center">54.00</td>
<td valign="top" align="center">46.55</td>
<td valign="top" align="center">49.80</td>
<td valign="top" align="center">79.90</td>
<td valign="top" align="center">78.05</td>
<td valign="top" align="center">82.48</td>
<td valign="top" align="center"><bold>82.65</bold></td>
</tr>
<tr>
<td/>
<td valign="top" align="center">Hard</td>
<td valign="top" align="center">51.07</td>
<td valign="top" align="center">45.66</td>
<td valign="top" align="center">49.96</td>
<td valign="top" align="center">80.66</td>
<td valign="top" align="center">78.59</td>
<td valign="top" align="center">82.94</td>
<td valign="top" align="center"><bold>83.38</bold></td>
</tr>
<tr>
<td valign="top" align="center" colspan="2">FPS</td>
<td valign="top" align="center">108</td>
<td valign="top" align="center">102</td>
<td valign="top" align="center">78</td>
<td valign="top" align="center">72</td>
<td valign="top" align="center">71</td>
<td valign="top" align="center">68</td>
<td valign="top" align="center">48</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn><p>3D object detection results on the KITTI dataset. The evaluation metric is AP (Average Precision). The Intersection over Union (IoU) threshold is 0.7 for Car and 0.5 for Pedestrian/Cyclist. The bolded data are the highest scores for this item.</p></fn>
</table-wrap-foot>
</table-wrap>
<p>Method A is the original Complex-YOLO. It can be seen that the running speed is excellent and can reach 108 FPS on RTX3070Ti, but the detection accuracy is low.</p>
<p>Method B is a modified Complex-YOLO based RepVGG-A2 feature extraction network. Method B has higher detection accuracy for large objects like Car but lower detection accuracy for Pedestrian in 2D object detection in the bird&#x2019;s-eye view perspective. The analysis found that the output feature map of RepVGG-A2 has a down-sampling multiplicity of 32, i.e., if the BEV-map with an input resolution of 608 &#x00D7; 608, then the output feature map size is 19 &#x00D7; 19. Such a smaller resolution means a larger perceptual field, which is not conducive to the prediction of small-sized objects. Method B has low accuracy in 3D object detection. In terms of detection speed, RepVGG still maintains a good detection speed, which can reach 102 FPS, because it consists of all 3 &#x00D7; 3 convolution in the inference stage and has no multi-branch structure.</p>
<p>Method C builds the FPN structure based on method B. Compared with method B, method C builds the FPN structure to accomplish the object detection of different sizes (38 &#x00D7; 38, 76 &#x00D7; 76, 152 &#x00D7; 152) at three different resolutions, greatly improving the 2D object detection accuracy of Pedestrian and Cyclist in the bird&#x2019;s-eye view perspective, as well as the 3D object detection accuracy of Car and Pedestrian. In terms of detection speed, due to the construction of the FPN structure, which makes the network more complex, the detection speed is reduced to 78FPS, but the performance requirement of real-time detection is met.</p>
<p>Method D is based on method C, which adds the height detector. The addition of height detection in method D improves both 2D object detection accuracy in the bird&#x2019;s-eye view perspective and 3D object detection accuracy.</p>
<p>Method E is based on method D, which removes the E-RPN structure and completes the detection of the orientation angle directly in the Cartesian coordinate system. The detection accuracy is also improved compared with method D.</p>
<p>Method F is an improved FPN structure built based on method E, the CBAM attention mechanism part is added to further improve the attention of the network for small objects.</p>
<p>Method G adds one more feature fusion operation of 2&#x00D7; up-sampling with adjacent resolution to the FPN structure based on method F, and complete the 3D object detection task at a higher resolution.</p>
<p>To express the improvements in this paper more intuitively, the improved algorithm and the detection results of the original Complex-YOLO are converted into images for presentation. <xref ref-type="fig" rid="F9">Figure 9</xref> shows the detection results of the two algorithms. From <xref ref-type="fig" rid="F9">Figure 9</xref>, it can be seen that the algorithm in this paper has a great improvement in 3D detection results compared to the original algorithm. Although the detection speed is slower than the original Complex-YOLO algorithm, it meets the performance requirements of real-time detection perfectly.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption><p>Comparison of our method with the detection results of Complex-YOLO. <bold>(A)</bold> 3D detection results of Complex-YOLO. <bold>(B)</bold> 3D detection results of our method.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fnbot-17-1092564-g009.tif"/>
</fig>
</sec>
<sec id="S4.SS3">
<title>4.3. Comparative experiments and analysis with other methods</title>
<p>To further validate the advantages of the algorithms in this paper, we use the KITTI dataset as test data and compare it to other 3D object detection algorithms based on point cloud involved in this paper in three aspects: detection accuracy, detection speed, and memory usage. In addition, this paper also compares some subsequently improved algorithms of Complex-YOLO (Complex-YOLOv3 and Complex-YOLOv4; these algorithms all improve on Complex-YOLO according to the evolution of the subsequent YOLO series algorithms, but all maintain the original YOLO series network + E-RPN structure; Complex YOLOv3 with YOLOv3 + E-RPN and Complex YOLOv4 with YOLOv4 + E-RPN). We used the same data set division (6,000 data for training and 1,481 data for validation) for testing on GTX1060. <xref ref-type="table" rid="T4">Table 4</xref> shows the 2D object detection results in the bird&#x2019;s eye view. <xref ref-type="table" rid="T5">Table 5</xref> shows the 3D object detection results. <xref ref-type="table" rid="T6">Table 6</xref> shows the detection speed and memory usage for the same test conditions.</p>
<table-wrap position="float" id="T4">
<label>TABLE 4</label>
<caption><p>Experimental results of comparison experiments with other algorithms.</p></caption>
<table cellspacing="5" cellpadding="5" frame="box" rules="all">
<thead>
<tr>
<td valign="top" align="left" style="color:#ffffff;background-color: #7f8080;">Methods</td>
<td valign="top" align="center" colspan="3" style="color:#ffffff;background-color: #7f8080;">Car AP (IoU = 0.7)</td>
<td valign="top" align="center" colspan="3" style="color:#ffffff;background-color: #7f8080;">Pedestrian AP (IoU = 0.5)</td>
<td valign="top" align="center" colspan="3" style="color:#ffffff;background-color: #7f8080;">Cyclist AP (IoU = 0.5)</td>
</tr>
<tr>
<td valign="top" align="left" style="color:#ffffff;background-color: #7f8080;"/>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Easy</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Mod</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Hard</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Easy</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Mod</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Hard</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Easy</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Mod</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Hard</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">PointRCNN (<xref ref-type="bibr" rid="B32">Shi et al., 2019</xref>)</td>
<td valign="top" align="center">90.64</td>
<td valign="top" align="center">89.54</td>
<td valign="top" align="center">88.68</td>
<td valign="top" align="center">86.94</td>
<td valign="top" align="center"><bold>78.69</bold></td>
<td valign="top" align="center">74.70</td>
<td valign="top" align="center"><bold>95.43</bold></td>
<td valign="top" align="center"><bold>87.14</bold></td>
<td valign="top" align="center"><bold>86.24</bold></td>
</tr>
<tr>
<td valign="top" align="left">PV-RCNN (<xref ref-type="bibr" rid="B30">Shi et al., 2020a</xref>)</td>
<td valign="top" align="center">99.14</td>
<td valign="top" align="center">89.91</td>
<td valign="top" align="center">89.57</td>
<td valign="top" align="center">73.85</td>
<td valign="top" align="center">71.56</td>
<td valign="top" align="center">69.60</td>
<td valign="top" align="center">91.70</td>
<td valign="top" align="center">82.88</td>
<td valign="top" align="center">81.73</td>
</tr>
<tr>
<td valign="top" align="left">SECOND (<xref ref-type="bibr" rid="B40">Yan et al., 2018</xref>)</td>
<td valign="top" align="center">98.01</td>
<td valign="top" align="center">88.98</td>
<td valign="top" align="center">87.72</td>
<td valign="top" align="center">67.49</td>
<td valign="top" align="center">65.59</td>
<td valign="top" align="center">62.75</td>
<td valign="top" align="center">90.89</td>
<td valign="top" align="center">84.26</td>
<td valign="top" align="center">83.52</td>
</tr>
<tr>
<td valign="top" align="left">PartA<sup>2</sup> (<xref ref-type="bibr" rid="B31">Shi et al., 2020b</xref>)</td>
<td valign="top" align="center">98.81</td>
<td valign="top" align="center">89.52</td>
<td valign="top" align="center">89.09</td>
<td valign="top" align="center">76.71</td>
<td valign="top" align="center">70.14</td>
<td valign="top" align="center">68.65</td>
<td valign="top" align="center">94.03</td>
<td valign="top" align="center">83.94</td>
<td valign="top" align="center">83.33</td>
</tr>
<tr>
<td valign="top" align="left">PointPillars (<xref ref-type="bibr" rid="B14">Lang et al., 2019</xref>)</td>
<td valign="top" align="center">97.33</td>
<td valign="top" align="center"><bold>90.04</bold></td>
<td valign="top" align="center">89.40</td>
<td valign="top" align="center">66.74</td>
<td valign="top" align="center">61.28</td>
<td valign="top" align="center">58.83</td>
<td valign="top" align="center">91.12</td>
<td valign="top" align="center">83.82</td>
<td valign="top" align="center">81.72</td>
</tr>
<tr>
<td valign="top" align="left">VoxelRCNN (<xref ref-type="bibr" rid="B5">Deng et al., 2021</xref>)</td>
<td valign="top" align="center"><bold>99.21</bold></td>
<td valign="top" align="center">89.63</td>
<td valign="top" align="center">89.16</td>
<td valign="top" align="center"><bold>75.01</bold></td>
<td valign="top" align="center">70.01</td>
<td valign="top" align="center">67.49</td>
<td valign="top" align="center">94.15</td>
<td valign="top" align="center">83.80</td>
<td valign="top" align="center">82.40</td>
</tr>
<tr>
<td valign="top" align="left">Complex-YOLOv3</td>
<td valign="top" align="center">71.73</td>
<td valign="top" align="center">74.87</td>
<td valign="top" align="center">78.73</td>
<td valign="top" align="center">54.74</td>
<td valign="top" align="center">59.44</td>
<td valign="top" align="center">62.39</td>
<td valign="top" align="center">64.06</td>
<td valign="top" align="center">74.23</td>
<td valign="top" align="center">67.71</td>
</tr>
<tr>
<td valign="top" align="left">Complex-YOLOv4</td>
<td valign="top" align="center">71.26</td>
<td valign="top" align="center">74.35</td>
<td valign="top" align="center">78.26</td>
<td valign="top" align="center">49.98</td>
<td valign="top" align="center">54.34</td>
<td valign="top" align="center">57.54</td>
<td valign="top" align="center">52.11</td>
<td valign="top" align="center">60.72</td>
<td valign="top" align="center">56.01</td>
</tr>
<tr>
<td valign="top" align="left">Our method</td>
<td valign="top" align="center">96.52</td>
<td valign="top" align="center">89.80</td>
<td valign="top" align="center"><bold>89.92</bold></td>
<td valign="top" align="center">73.26</td>
<td valign="top" align="center">73.56</td>
<td valign="top" align="center"><bold>75.42</bold></td>
<td valign="top" align="center">85.61</td>
<td valign="top" align="center">86.52</td>
<td valign="top" align="center">86.21</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn><p>2D object detection results in the bird&#x2019;s eye view perspective on the KITTI dataset. The evaluation metric is AP (Average Precision). The Intersection over Union (IoU) threshold is 0.7 for Car and 0.5 for Pedestrian/Cyclist. The bolded data are the highest scores for this item.</p></fn>
</table-wrap-foot>
</table-wrap>
<table-wrap position="float" id="T5">
<label>TABLE 5</label>
<caption><p>Experimental results of comparison experiments with other algorithms.</p></caption>
<table cellspacing="5" cellpadding="5" frame="box" rules="all">
<thead>
<tr>
<td valign="top" align="left" style="color:#ffffff;background-color: #7f8080;">Methods</td>
<td valign="top" align="center" colspan="3" style="color:#ffffff;background-color: #7f8080;">Car AP (IoU = 0.7)</td>
<td valign="top" align="center" colspan="3" style="color:#ffffff;background-color: #7f8080;">Pedestrian AP (IoU = 0.5)</td>
<td valign="top" align="center" colspan="3" style="color:#ffffff;background-color: #7f8080;">Cyclist AP (IoU = 0.5)</td>
</tr>
<tr>
<td valign="top" align="left" style="color:#ffffff;background-color: #7f8080;"/>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Easy</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Mod</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Hard</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Easy</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Mod</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Hard</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Easy</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Mod</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Hard</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">PointRCNN</td>
<td valign="top" align="center">90.31</td>
<td valign="top" align="center">86.05</td>
<td valign="top" align="center">79.86</td>
<td valign="top" align="center"><bold>86.26</bold></td>
<td valign="top" align="center"><bold>77.97</bold></td>
<td valign="top" align="center">69.88</td>
<td valign="top" align="center"><bold>95.44</bold></td>
<td valign="top" align="center"><bold>87.15</bold></td>
<td valign="top" align="center">86.11</td>
</tr>
<tr>
<td valign="top" align="left">PV-RCNN</td>
<td valign="top" align="center"><bold>98.69</bold></td>
<td valign="top" align="center"><bold>89.23</bold></td>
<td valign="top" align="center">88.52</td>
<td valign="top" align="center">72.10</td>
<td valign="top" align="center">68.78</td>
<td valign="top" align="center">65.21</td>
<td valign="top" align="center">89.65</td>
<td valign="top" align="center">81.39</td>
<td valign="top" align="center">80.49</td>
</tr>
<tr>
<td valign="top" align="left">SECOND</td>
<td valign="top" align="center">98.01</td>
<td valign="top" align="center">88.97</td>
<td valign="top" align="center">87.72</td>
<td valign="top" align="center">65.80</td>
<td valign="top" align="center">63.49</td>
<td valign="top" align="center">60.05</td>
<td valign="top" align="center">90.89</td>
<td valign="top" align="center">84.26</td>
<td valign="top" align="center">83.52</td>
</tr>
<tr>
<td valign="top" align="left">PartA<sup>2</sup></td>
<td valign="top" align="center">90.51</td>
<td valign="top" align="center">88.64</td>
<td valign="top" align="center">87.44</td>
<td valign="top" align="center">72.46</td>
<td valign="top" align="center">69.40</td>
<td valign="top" align="center">67.01</td>
<td valign="top" align="center">93.56</td>
<td valign="top" align="center">83.57</td>
<td valign="top" align="center">83.16</td>
</tr>
<tr>
<td valign="top" align="left">PointPillars</td>
<td valign="top" align="center">90.04</td>
<td valign="top" align="center">88.19</td>
<td valign="top" align="center">84.63</td>
<td valign="top" align="center">63.09</td>
<td valign="top" align="center">58.07</td>
<td valign="top" align="center">55.77</td>
<td valign="top" align="center">89.91</td>
<td valign="top" align="center">82.81</td>
<td valign="top" align="center">80.54</td>
</tr>
<tr>
<td valign="top" align="left">VoxelRCNN</td>
<td valign="top" align="center">90.22</td>
<td valign="top" align="center">88.41</td>
<td valign="top" align="center">87.06</td>
<td valign="top" align="center">74.95</td>
<td valign="top" align="center">67.11</td>
<td valign="top" align="center">65.40</td>
<td valign="top" align="center">94.02</td>
<td valign="top" align="center">83.68</td>
<td valign="top" align="center">82.30</td>
</tr>
<tr>
<td valign="top" align="left">Complex-YOLOv3</td>
<td valign="top" align="center">61.16</td>
<td valign="top" align="center">55.69</td>
<td valign="top" align="center">61.13</td>
<td valign="top" align="center">51.63</td>
<td valign="top" align="center">56.39</td>
<td valign="top" align="center">59.51</td>
<td valign="top" align="center">62.94</td>
<td valign="top" align="center">64.55</td>
<td valign="top" align="center">65.60</td>
</tr>
<tr>
<td valign="top" align="left">Complex-YOLOv4</td>
<td valign="top" align="center">62.39</td>
<td valign="top" align="center">56.61</td>
<td valign="top" align="center">61.81</td>
<td valign="top" align="center">47.94</td>
<td valign="top" align="center">51.82</td>
<td valign="top" align="center">55.17</td>
<td valign="top" align="center">51.78</td>
<td valign="top" align="center">52.90</td>
<td valign="top" align="center">54.35</td>
</tr>
<tr>
<td valign="top" align="left">Our method</td>
<td valign="top" align="center">96.56</td>
<td valign="top" align="center">89.10</td>
<td valign="top" align="center"><bold>89.32</bold></td>
<td valign="top" align="center">71.33</td>
<td valign="top" align="center">73.26</td>
<td valign="top" align="center"><bold>74.11</bold></td>
<td valign="top" align="center">84.76</td>
<td valign="top" align="center">85.60</td>
<td valign="top" align="center"><bold>86.72</bold></td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn><p>3D object detection results on the KITTI dataset. Comparison of the results of 3D object detection on the KITTI dataset with other algorithms. The evaluation metric is AP (Average Precision). The Intersection over Union (IoU) threshold is 0.7 for Car and 0.5 for Pedestrian/Cyclist. The bolded data are the highest scores for this item.</p></fn>
</table-wrap-foot>
</table-wrap>
<table-wrap position="float" id="T6">
<label>TABLE 6</label>
<caption><p>Experimental results of comparison experiments with other algorithms.</p></caption>
<table cellspacing="5" cellpadding="5" frame="box" rules="all">
<thead>
<tr>
<td valign="top" align="left" style="color:#ffffff;background-color: #7f8080;">Methods</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">FPS</td>
<td valign="top" align="center" style="color:#ffffff;background-color: #7f8080;">Memory</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">PointRCNN</td>
<td valign="top" align="center">3</td>
<td valign="top" align="center">1093Mib</td>
</tr>
<tr>
<td valign="top" align="left">PV-RCNN</td>
<td valign="top" align="center">3.8</td>
<td valign="top" align="center">1439Mib</td>
</tr>
<tr>
<td valign="top" align="left">SECOND</td>
<td valign="top" align="center">11</td>
<td valign="top" align="center">889Mib</td>
</tr>
<tr>
<td valign="top" align="left">PartA<sup>2</sup></td>
<td valign="top" align="center">3</td>
<td valign="top" align="center">1021Mib</td>
</tr>
<tr>
<td valign="top" align="left">PointPillars</td>
<td valign="top" align="center">18</td>
<td valign="top" align="center">931Mib</td>
</tr>
<tr>
<td valign="top" align="left">VoxelRCNN</td>
<td valign="top" align="center">8</td>
<td valign="top" align="center">991Mib</td>
</tr>
<tr>
<td valign="top" align="left">Complex-YOLOv3</td>
<td valign="top" align="center">15</td>
<td valign="top" align="center">1195Mib</td>
</tr>
<tr>
<td valign="top" align="left">Complex-YOLOv4</td>
<td valign="top" align="center">12</td>
<td valign="top" align="center">1401Mib</td>
</tr>
<tr>
<td valign="top" align="left">Our method</td>
<td valign="top" align="center">20</td>
<td valign="top" align="center">841Mib</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn><p>The detection speed and memory usage of each algorithm was compared on the GTX1060.</p></fn>
</table-wrap-foot>
</table-wrap>
<p><xref ref-type="table" rid="T4">Tables 4</xref>, <xref ref-type="table" rid="T5">5</xref> show that Efficient Complex-YOLO has a high detection accuracy for tiny objects and objects with a high detection difficulty. <xref ref-type="table" rid="T6">Table 6</xref> shows that Efficient Complex-YOLO performs well in terms of detection speed and memory usage in the same test environment.</p>
</sec>
</sec>
<sec id="S5" sec-type="conclusion">
<title>5. Conclusion</title>
<p>In light of Complex-YOLO&#x2019;s weaknesses in detection accuracy, this paper proposes a more efficient 3D object detection algorithm based on a series of improvements to Complex-YOLO. The RepVGG is used to increase the network&#x2019;s depth and improve model fitting capabilities. To address the issue of poor detection accuracy of small objects in the original algorithm, improved FPN structure greatly improves the network&#x2019;s accuracy for small objects. The Anchor-free + height detector method is used in the head network, and the original E-RPN structure is removed, which improves the network&#x2019;s detection accuracy and compensates for the lack of height detection in the original algorithm. Although these improvements reduce the detection speed to some extent, the Efficient Complex-YOLO algorithm proposed in this paper can fully meet the performance requirements of real-time detection, reaching 48FPS on RTX3070Ti (it can guarantee a detection speed of 20FPS even on GTX1060). It has been experimentally proved that the method proposed in this paper has more advantages than Complex-YOLO. Compared with the subsequently improved algorithms of Complex-YOLO (Complex-YOLOv3 and Complex-YOLOv4), they all continue the original framework of Complex YOLO and do not achieve object height detection, so the proposed algorithms in this paper are more advantageous. The mAP of 2D object detection in bird&#x2019;s eye view perspective is 85.13, 83.29, and 83.85 under Easy, Mod, and Hard conditions, respectively, while the mAP of 3D object detection is 84.21, 82.65, and 83.38 under Easy, Mod, and Hard conditions, respectively. Although Efficient Complex-YOLO falls short of top 3D object detection algorithms (e.g., PV-RCNN), it has a smaller memory usage and faster detection speed. In some applications with limited cost, it is still a method worth considering.</p>
<p>Point-based or Voxel-based 3D object detection algorithms, after the data pre-processing stage, often send a large amount of data into the network, which also tends to take a lot of arithmetic power consuming 3D convolution or fully connected layer for feature extraction, which causes the problem of slow detection speed and high memory occupation. The data processing method used in the Grid-based 3D object detection algorithm can significantly reduce the number of parameters input into the network and adopt the same structural form as the 2D object detection algorithm in the network, which can significantly improve the detection speed and reduce the memory occupation, and this paper also achieves good results in terms of detection speed and detection accuracy by improving Complex-YOLO. However, the data processing method like the one used in this paper will cause data loss in the encoding stage of the BEV-map, especially in the height information of the Z-axis direction, which largely limits the accuracy improvement of the algorithm. We suggest that the reader improve the data preprocessing or try other data processing methods to encode the point cloud to avoid the loss of information as much as possible.</p>
</sec>
<sec id="S6" sec-type="data-availability">
<title>Data availability statement</title>
<p>The original contributions presented in this study are included in the article/supplementary material, further inquiries can be directed to the corresponding author.</p>
</sec>
<sec id="S7" sec-type="author-contributions">
<title>Author contributions</title>
<p>AT and TY: overall work direction. YS: algorithm design and essay writing. YS and ZS: code writing and software implementation. All authors have read and agreed to the published version of the manuscript.</p>
</sec>
</body>
<back>
<sec id="S8" sec-type="funding-information">
<title>Funding</title>
<p>This research was funded by the Provincial Natural Science Foundation of Zhejiang, grant number Y21F010057.</p>
</sec>
<ack>
<p>The authors thank the referees whose comments helped to improve the manuscript.</p>
</ack>
<sec id="S10" sec-type="COI-statement">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec id="S11" sec-type="disclaimer">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Bai</surname> <given-names>J.</given-names></name> <name><surname>Dai</surname> <given-names>J.</given-names></name> <name><surname>Wang</surname> <given-names>Z.</given-names></name> <name><surname>Yang</surname> <given-names>S.</given-names></name></person-group> (<year>2022</year>). <article-title>A detection method of the rescue targets in the marine casualty based on improved YOLOv5s.</article-title> <source><italic>Front. Neurorobot.</italic></source> <volume>16</volume>:<fpage>1053124</fpage>. <pub-id pub-id-type="doi">10.3389/fnbot.2022.1053124</pub-id> <pub-id pub-id-type="pmid">36467570</pub-id></citation></ref>
<ref id="B2"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Bochkovskiy</surname> <given-names>A.</given-names></name> <name><surname>Wang</surname> <given-names>C.-Y.</given-names></name> <name><surname>Liao</surname> <given-names>H.-Y. M.</given-names></name></person-group> (<year>2020</year>). <article-title>Yolov4: Optimal speed and accuracy of object detection.</article-title> <source><italic>arXiv</italic></source> [<comment>Preprint</comment>].</citation></ref>
<ref id="B3"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chen</surname> <given-names>X.</given-names></name> <name><surname>Ma</surname> <given-names>H.</given-names></name> <name><surname>Wan</surname> <given-names>J.</given-names></name> <name><surname>Li</surname> <given-names>B.</given-names></name> <name><surname>Xia</surname> <given-names>T.</given-names></name></person-group> (<year>2017</year>). &#x201C;<article-title>Multi-view 3d object detection network for autonomous driving</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Beijing</publisher-loc>, <fpage>1907</fpage>&#x2013;<lpage>1915</lpage>. <pub-id pub-id-type="doi">10.1109/CVPR.2017.691</pub-id></citation></ref>
<ref id="B4"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Cheon</surname> <given-names>J.</given-names></name> <name><surname>Baek</surname> <given-names>S.</given-names></name> <name><surname>Paik</surname> <given-names>S.-B.</given-names></name></person-group> (<year>2022</year>). <article-title>Invariance of object detection in untrained deep neural networks.</article-title> <source><italic>Front. Comput. Neurosci.</italic></source> <volume>16</volume>:<fpage>1030707</fpage>. <pub-id pub-id-type="doi">10.3389/fncom.2022.1030707</pub-id> <pub-id pub-id-type="pmid">36405785</pub-id></citation></ref>
<ref id="B5"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Deng</surname> <given-names>J.</given-names></name> <name><surname>Shi</surname> <given-names>S.</given-names></name> <name><surname>Li</surname> <given-names>P.</given-names></name> <name><surname>Zhou</surname> <given-names>W.</given-names></name> <name><surname>Zhang</surname> <given-names>Y.</given-names></name> <name><surname>Li</surname> <given-names>H.</given-names></name></person-group> (<year>2021</year>). <article-title>Voxel r-cnn: Towards high performance voxel-based 3d object detection.</article-title> <source><italic>Proc. AAAI Conf. Artif. Intell.</italic></source> <volume>35</volume> <fpage>1201</fpage>&#x2013;<lpage>1209</lpage>. <pub-id pub-id-type="doi">10.1609/aaai.v35i2.16207</pub-id></citation></ref>
<ref id="B6"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ding</surname> <given-names>X.</given-names></name> <name><surname>Zhang</surname> <given-names>X.</given-names></name> <name><surname>Ma</surname> <given-names>N.</given-names></name> <name><surname>Han</surname> <given-names>J.</given-names></name> <name><surname>Ding</surname> <given-names>G.</given-names></name> <name><surname>Sun</surname> <given-names>J.</given-names></name></person-group> (<year>2021</year>). &#x201C;<article-title>Repvgg: Making vgg-style convnets great again</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE/CVF conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Nashville</publisher-loc>, <fpage>13733</fpage>&#x2013;<lpage>13742</lpage>. <pub-id pub-id-type="doi">10.1109/CVPR46437.2021.01352</pub-id></citation></ref>
<ref id="B7"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Duan</surname> <given-names>K.</given-names></name> <name><surname>Bai</surname> <given-names>S.</given-names></name> <name><surname>Xie</surname> <given-names>L.</given-names></name> <name><surname>Qi</surname> <given-names>H.</given-names></name> <name><surname>Huang</surname> <given-names>Q.</given-names></name> <name><surname>Tian</surname> <given-names>Q.</given-names></name></person-group> (<year>2019</year>). &#x201C;<article-title>Centernet: Keypoint triplets for object detection</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE/CVF international conference on computer vision</italic></source>, <publisher-loc>Seoul</publisher-loc>, <fpage>6569</fpage>&#x2013;<lpage>6578</lpage>. <pub-id pub-id-type="doi">10.1109/ICCV.2019.00667</pub-id></citation></ref>
<ref id="B8"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Geiger</surname> <given-names>A.</given-names></name> <name><surname>Lenz</surname> <given-names>P.</given-names></name> <name><surname>Urtasun</surname> <given-names>R.</given-names></name></person-group> (<year>2012</year>). &#x201C;<article-title>Are we ready for autonomous driving? the kitti vision benchmark suite</article-title>,&#x201D; in <source><italic>Proceedings of the 2012 IEEE conference on computer vision and pattern recognition</italic></source>, (<publisher-loc>Piscataway, NJ</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>3354</fpage>&#x2013;<lpage>3361</lpage>. <pub-id pub-id-type="doi">10.1109/CVPR.2012.6248074</pub-id></citation></ref>
<ref id="B9"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gromada</surname> <given-names>K.</given-names></name> <name><surname>Siemia&#x0327;tkowska</surname> <given-names>B.</given-names></name> <name><surname>Stecz</surname> <given-names>W.</given-names></name> <name><surname>P&#x0142;ochocki</surname> <given-names>K.</given-names></name> <name><surname>Wo&#x017A;niak</surname> <given-names>K.</given-names></name></person-group> (<year>2022</year>). <article-title>Real-time object detection and classification by UAV equipped with SAR.</article-title> <source><italic>Sensors (Basel)</italic></source> <volume>22</volume>:<fpage>2068</fpage>. <pub-id pub-id-type="doi">10.3390/s22052068</pub-id> <pub-id pub-id-type="pmid">35271213</pub-id></citation></ref>
<ref id="B10"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>He</surname> <given-names>K.</given-names></name> <name><surname>Zhang</surname> <given-names>X.</given-names></name> <name><surname>Ren</surname> <given-names>S.</given-names></name> <name><surname>Sun</surname> <given-names>J.</given-names></name></person-group> (<year>2016</year>). &#x201C;<article-title>Deep residual learning for image recognition</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Las Vegas</publisher-loc>, <fpage>770</fpage>&#x2013;<lpage>778</lpage>. <pub-id pub-id-type="doi">10.1109/CVPR.2016.90</pub-id></citation></ref>
<ref id="B11"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Huang</surname> <given-names>G.</given-names></name> <name><surname>Liu</surname> <given-names>Z.</given-names></name> <name><surname>van Der Maaten</surname> <given-names>L.</given-names></name> <name><surname>Weinberger</surname> <given-names>K. Q.</given-names></name></person-group> (<year>2017</year>). &#x201C;<article-title>Densely connected convolutional networks</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Honolulu, HI</publisher-loc>, <fpage>4700</fpage>&#x2013;<lpage>4708</lpage>. <pub-id pub-id-type="doi">10.1109/CVPR.2017.243</pub-id></citation></ref>
<ref id="B12"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Khatab</surname> <given-names>E.</given-names></name> <name><surname>Onsy</surname> <given-names>A.</given-names></name> <name><surname>Abouelfarag</surname> <given-names>A.</given-names></name></person-group> (<year>2022</year>). <article-title>Evaluation of 3D vulnerable objects&#x2019; detection using a multi-sensors system for autonomous vehicles.</article-title> <source><italic>Sensors (Basel)</italic></source> <volume>22</volume>:<fpage>1663</fpage>. <pub-id pub-id-type="doi">10.3390/s22041663</pub-id> <pub-id pub-id-type="pmid">35214569</pub-id></citation></ref>
<ref id="B13"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ku</surname> <given-names>J.</given-names></name> <name><surname>Mozifian</surname> <given-names>M.</given-names></name> <name><surname>Lee</surname> <given-names>J.</given-names></name> <name><surname>Harakeh</surname> <given-names>A.</given-names></name> <name><surname>Waslander</surname> <given-names>S. L.</given-names></name></person-group> (<year>2018</year>). &#x201C;<article-title>Joint 3d proposal generation and object detection from view aggregation</article-title>,&#x201D; in <source><italic>Proceedings of the 2018 IEEE/RSJ international conference on intelligent robots and systems (IROS)</italic></source>, (<publisher-loc>Piscataway, NJ</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>1</fpage>&#x2013;<lpage>8</lpage>. <pub-id pub-id-type="doi">10.1109/IROS.2018.8594049</pub-id></citation></ref>
<ref id="B14"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lang</surname> <given-names>A. H.</given-names></name> <name><surname>Vora</surname> <given-names>S.</given-names></name> <name><surname>Caesar</surname> <given-names>H.</given-names></name> <name><surname>Zhou</surname> <given-names>L.</given-names></name> <name><surname>Yang</surname> <given-names>J.</given-names></name> <name><surname>Beijbom</surname> <given-names>O.</given-names></name></person-group> (<year>2019</year>). &#x201C;<article-title>Pointpillars: Fast encoders for object detection from point clouds</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE/CVF conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Long Beach, CA</publisher-loc>, <fpage>12697</fpage>&#x2013;<lpage>12705</lpage>. <pub-id pub-id-type="doi">10.1109/CVPR.2019.01298</pub-id></citation></ref>
<ref id="B15"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lin</surname> <given-names>T.-Y.</given-names></name> <name><surname>Doll&#x00E1;r</surname> <given-names>P.</given-names></name> <name><surname>Girshick</surname> <given-names>R.</given-names></name> <name><surname>He</surname> <given-names>K.</given-names></name> <name><surname>Hariharan</surname> <given-names>B.</given-names></name> <name><surname>Belongie</surname> <given-names>S.</given-names></name></person-group> (<year>2017a</year>). &#x201C;<article-title>Feature pyramid networks for object detection</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Honolulu, HI</publisher-loc>, <fpage>2117</fpage>&#x2013;<lpage>2125</lpage>. <pub-id pub-id-type="doi">10.1109/CVPR.2017.106</pub-id></citation></ref>
<ref id="B16"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lin</surname> <given-names>T.-Y.</given-names></name> <name><surname>Goyal</surname> <given-names>P.</given-names></name> <name><surname>Girshick</surname> <given-names>R.</given-names></name> <name><surname>He</surname> <given-names>K.</given-names></name> <name><surname>Doll&#x00E1;r</surname> <given-names>P.</given-names></name></person-group> (<year>2017b</year>). &#x201C;<article-title>Focal loss for dense object detection</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE international conference on computer vision</italic></source>, (<publisher-loc>Piscataway, NJ</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>2980</fpage>&#x2013;<lpage>2988</lpage>. <pub-id pub-id-type="doi">10.1109/ICCV.2017.324</pub-id></citation></ref>
<ref id="B17"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Liu</surname> <given-names>X.</given-names></name> <name><surname>Jiang</surname> <given-names>W.</given-names></name> <name><surname>Su</surname> <given-names>H.</given-names></name> <name><surname>Qi</surname> <given-names>W.</given-names></name> <name><surname>Ge</surname> <given-names>S. S.</given-names></name></person-group> (<year>2022a</year>). <source><italic>A control strategy of robot eye-head coordinated gaze behavior achieved for minimized neural transmission noise.</italic></source> <publisher-loc>Piscataway, NJ</publisher-loc>: <publisher-name>IEEE</publisher-name>. <pub-id pub-id-type="doi">10.1109/TMECH.2022.3210592</pub-id></citation></ref>
<ref id="B18"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Liu</surname> <given-names>X.</given-names></name> <name><surname>Li</surname> <given-names>X.</given-names></name> <name><surname>Su</surname> <given-names>H.</given-names></name> <name><surname>Zhao</surname> <given-names>Y.</given-names></name> <name><surname>Ge</surname> <given-names>S. S.</given-names></name></person-group> (<year>2022b</year>). <article-title>The opening workspace control strategy of a novel manipulator-driven emission source microscopy system.</article-title> <source><italic>ISA Trans.</italic></source> <pub-id pub-id-type="doi">10.1016/j.isatra.2022.09.002</pub-id> <pub-id pub-id-type="pmid">36163198</pub-id></citation></ref>
<ref id="B19"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Liu</surname> <given-names>Z.</given-names></name> <name><surname>Zhang</surname> <given-names>Z.</given-names></name> <name><surname>Cao</surname> <given-names>Y.</given-names></name> <name><surname>Hu</surname> <given-names>H.</given-names></name> <name><surname>Tong</surname> <given-names>X.</given-names></name></person-group> (<year>2021</year>). &#x201C;<article-title>Group-free 3d object detection via transformers</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE/CVF international conference on computer vision</italic></source>, <publisher-loc>Montreal</publisher-loc>, <fpage>2949</fpage>&#x2013;<lpage>2958</lpage>. <pub-id pub-id-type="doi">10.1109/ICCV48922.2021.00294</pub-id></citation></ref>
<ref id="B20"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Long</surname> <given-names>N.</given-names></name> <name><surname>Yan</surname> <given-names>H.</given-names></name> <name><surname>Wang</surname> <given-names>L.</given-names></name> <name><surname>Li</surname> <given-names>H.</given-names></name> <name><surname>Yang</surname> <given-names>Q.</given-names></name></person-group> (<year>2022</year>). <article-title>Unifying obstacle detection, recognition, and fusion based on the polarization color stereo camera and LiDAR for the ADAS.</article-title> <source><italic>Sensors (Basel)</italic></source> <volume>22</volume>:<fpage>2453</fpage>. <pub-id pub-id-type="doi">10.3390/s22072453</pub-id> <pub-id pub-id-type="pmid">35408068</pub-id></citation></ref>
<ref id="B21"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Otgonbold</surname> <given-names>M.-E.</given-names></name> <name><surname>Gochoo</surname> <given-names>M.</given-names></name> <name><surname>Alnajjar</surname> <given-names>F.</given-names></name> <name><surname>Ali</surname> <given-names>L.</given-names></name> <name><surname>Tan</surname> <given-names>T.-H.</given-names></name> <name><surname>Hsieh</surname> <given-names>J.-W.</given-names></name><etal/></person-group> (<year>2022</year>). <article-title>SHEL5K: An extended dataset and benchmarking for safety helmet detection.</article-title> <source><italic>Sensors (Basel)</italic></source> <volume>22</volume>:<fpage>2315</fpage>. <pub-id pub-id-type="doi">10.3390/s22062315</pub-id> <pub-id pub-id-type="pmid">35336491</pub-id></citation></ref>
<ref id="B22"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Pang</surname> <given-names>J.</given-names></name> <name><surname>Chen</surname> <given-names>K.</given-names></name> <name><surname>Shi</surname> <given-names>J.</given-names></name> <name><surname>Feng</surname> <given-names>H.</given-names></name> <name><surname>Ouyang</surname> <given-names>W.</given-names></name> <name><surname>Lin</surname> <given-names>D.</given-names></name></person-group> (<year>2019</year>). &#x201C;<article-title>Libra r-cnn: Towards balanced learning for object detection</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE/CVF conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Long Beach, CA</publisher-loc>, <fpage>821</fpage>&#x2013;<lpage>830</lpage>. <pub-id pub-id-type="doi">10.1109/CVPR.2019.00091</pub-id></citation></ref>
<ref id="B23"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Perek</surname> <given-names>P.</given-names></name> <name><surname>Mielczarek</surname> <given-names>A.</given-names></name> <name><surname>Makowski</surname> <given-names>D.</given-names></name></person-group> (<year>2022</year>). <article-title>High-performance image acquisition and processing for stereoscopic diagnostic systems with the application of graphical processing units.</article-title> <source><italic>Sensors (Basel)</italic></source> <volume>22</volume>:<fpage>471</fpage>. <pub-id pub-id-type="doi">10.3390/s22020471</pub-id> <pub-id pub-id-type="pmid">35062431</pub-id></citation></ref>
<ref id="B24"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Qi</surname> <given-names>C. R.</given-names></name> <name><surname>Litany</surname> <given-names>O.</given-names></name> <name><surname>He</surname> <given-names>K.</given-names></name> <name><surname>Guibas</surname> <given-names>L. J.</given-names></name></person-group> (<year>2019</year>). &#x201C;<article-title>Deep hough voting for 3d object detection in point clouds</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE/CVF international conference on computer vision</italic></source>, <publisher-loc>Seoul</publisher-loc>, <fpage>9277</fpage>&#x2013;<lpage>9286</lpage>. <pub-id pub-id-type="doi">10.1109/ICCV.2019.00937</pub-id></citation></ref>
<ref id="B25"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Qi</surname> <given-names>C. R.</given-names></name> <name><surname>Su</surname> <given-names>H.</given-names></name> <name><surname>Mo</surname> <given-names>K.</given-names></name> <name><surname>Guibas</surname> <given-names>L. J.</given-names></name></person-group> (<year>2017a</year>). &#x201C;<article-title>Pointnet: Deep learning on point sets for 3d classification and segmentation</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Stanford, CA</publisher-loc>, <fpage>652</fpage>&#x2013;<lpage>660</lpage>.</citation></ref>
<ref id="B26"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Qi</surname> <given-names>C. R.</given-names></name> <name><surname>Yi</surname> <given-names>L.</given-names></name> <name><surname>Su</surname> <given-names>H.</given-names></name> <name><surname>Guibas</surname> <given-names>L. J.</given-names></name></person-group> (<year>2017b</year>). &#x201C;<article-title>Pointnet++: Deep hierarchical feature learning on point sets in a metric space</article-title>,&#x201D; in <source><italic>Proceedings of the 31st international conference on neural information processing systems</italic></source>, <publisher-loc>Stanford, CA</publisher-loc>, <fpage>30</fpage>.</citation></ref>
<ref id="B27"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Qi</surname> <given-names>W.</given-names></name> <name><surname>Ovur</surname> <given-names>S. E.</given-names></name> <name><surname>Li</surname> <given-names>Z.</given-names></name> <name><surname>Marzullo</surname> <given-names>A.</given-names></name> <name><surname>Song</surname> <given-names>R. J. I. R.</given-names></name> <name><surname>Letters</surname> <given-names>A.</given-names></name></person-group> (<year>2021</year>). <article-title>Multi-sensor guided hand gesture recognition for a teleoperated robot using a recurrent neural network.</article-title> <source><italic>IEEE Robot. Autom. Lett.</italic></source> <volume>6</volume> <fpage>6039</fpage>&#x2013;<lpage>6045</lpage>.</citation></ref>
<ref id="B28"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Redmon</surname> <given-names>J.</given-names></name> <name><surname>Farhadi</surname> <given-names>A.</given-names></name></person-group> (<year>2017</year>). &#x201C;<article-title>YOLO9000: Better, faster, stronger</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Honolulu, HI</publisher-loc>, <fpage>7263</fpage>&#x2013;<lpage>7271</lpage>.</citation></ref>
<ref id="B29"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ren</surname> <given-names>S.</given-names></name> <name><surname>He</surname> <given-names>K.</given-names></name> <name><surname>Girshick</surname> <given-names>R.</given-names></name> <name><surname>Sun</surname> <given-names>J.</given-names></name></person-group> (<year>2015</year>). <article-title>Faster r-cnn: Towards real-time object detection with region proposal networks.</article-title> <source><italic>Adv. Neural Inf. Process. Syst.</italic></source> <volume>28</volume> <fpage>91</fpage>&#x2013;<lpage>99</lpage>.</citation></ref>
<ref id="B30"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Shi</surname> <given-names>S.</given-names></name> <name><surname>Guo</surname> <given-names>C.</given-names></name> <name><surname>Jiang</surname> <given-names>L.</given-names></name> <name><surname>Wang</surname> <given-names>Z.</given-names></name> <name><surname>Shi</surname> <given-names>J.</given-names></name> <name><surname>Wang</surname> <given-names>X.</given-names></name><etal/></person-group> (<year>2020a</year>). &#x201C;<article-title>Pv-rcnn: Point-voxel feature set abstraction for 3d object detection</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE/CVF conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Seattle, WA</publisher-loc>, <fpage>10529</fpage>&#x2013;<lpage>10538</lpage>.</citation></ref>
<ref id="B31"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Shi</surname> <given-names>S.</given-names></name> <name><surname>Wang</surname> <given-names>Z.</given-names></name> <name><surname>Shi</surname> <given-names>J.</given-names></name> <name><surname>Wang</surname> <given-names>X.</given-names></name> <name><surname>Li</surname> <given-names>H.</given-names></name></person-group> (<year>2020b</year>). <article-title>From points to parts: 3d object detection from point cloud with part-aware and part-aggregation network.</article-title> <source><italic>IEEE Trans. Pattern Anal. Mach. Intell.</italic></source> <volume>43</volume> <fpage>2647</fpage>&#x2013;<lpage>2664</lpage>.</citation></ref>
<ref id="B32"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Shi</surname> <given-names>S.</given-names></name> <name><surname>Wang</surname> <given-names>X.</given-names></name> <name><surname>Li</surname> <given-names>H.</given-names></name></person-group> (<year>2019</year>). &#x201C;<article-title>Pointrcnn: 3d object proposal generation and detection from point cloud</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE/CVF conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Long Beach, CA</publisher-loc>, <fpage>770</fpage>&#x2013;<lpage>779</lpage>.</citation></ref>
<ref id="B33"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Siddique</surname> <given-names>A.</given-names></name> <name><surname>Lee</surname> <given-names>S.</given-names></name></person-group> (<year>2022</year>). <article-title>Sym3DNet: Symmetric 3D prior network for single-view 3D reconstruction.</article-title> <source><italic>Sensors (Basel)</italic></source> <volume>22</volume>:<fpage>518</fpage>.</citation></ref>
<ref id="B34"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Simony</surname> <given-names>M.</given-names></name> <name><surname>Milzy</surname> <given-names>S.</given-names></name> <name><surname>Amendey</surname> <given-names>K.</given-names></name> <name><surname>Gross</surname> <given-names>H.-M.</given-names></name></person-group> (<year>2018</year>). &#x201C;<article-title>Complex-yolo: An euler-region-proposal for real-time 3d object detection on point clouds</article-title>,&#x201D; in <source><italic>Proceedings of the European conference on computer vision (ECCV) workshops</italic></source>, <publisher-loc>Munich</publisher-loc>, <fpage>197</fpage>&#x2013;<lpage>209</lpage>.</citation></ref>
<ref id="B35"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Vaswani</surname> <given-names>A.</given-names></name> <name><surname>Shazeer</surname> <given-names>N.</given-names></name> <name><surname>Parmar</surname> <given-names>N.</given-names></name> <name><surname>Uszkoreit</surname> <given-names>J.</given-names></name> <name><surname>Jones</surname> <given-names>L.</given-names></name> <name><surname>Gomez</surname> <given-names>A. N.</given-names></name><etal/></person-group> (<year>2017</year>). <article-title>Attention is all you need.</article-title> <source><italic>Adv. Neural Inf. Process. Syst.</italic></source> <volume>30</volume> <fpage>5998</fpage>&#x2013;<lpage>6008</lpage>.</citation></ref>
<ref id="B36"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wahab</surname> <given-names>F.</given-names></name> <name><surname>Ullah</surname> <given-names>I.</given-names></name> <name><surname>Shah</surname> <given-names>A.</given-names></name> <name><surname>Khan</surname> <given-names>R. A.</given-names></name> <name><surname>Choi</surname> <given-names>A.</given-names></name> <name><surname>Anwar</surname> <given-names>M. S.</given-names></name></person-group> (<year>2022</year>). <article-title>Design and implementation of real-time object detection system based on single-shoot detector and OpenCV.</article-title> <source><italic>Front. Psychol.</italic></source> <volume>13</volume>:<fpage>1039645</fpage>.</citation></ref>
<ref id="B37"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wang</surname> <given-names>D.</given-names></name> <name><surname>Ma</surname> <given-names>G.</given-names></name> <name><surname>Liu</surname> <given-names>X.</given-names></name></person-group> (<year>2022</year>). <article-title>An intelligent recognition framework of access control system with anti-spoofing function.</article-title> <source><italic>AIMS Maths.</italic></source> <volume>7</volume> <fpage>10495</fpage>&#x2013;<lpage>10512</lpage>.</citation></ref>
<ref id="B38"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Woo</surname> <given-names>S.</given-names></name> <name><surname>Park</surname> <given-names>J.</given-names></name> <name><surname>Lee</surname> <given-names>J.-Y.</given-names></name> <name><surname>Kweon</surname> <given-names>I. S.</given-names></name></person-group> (<year>2018</year>). &#x201C;<article-title>Cbam: Convolutional block attention module</article-title>,&#x201D; in <source><italic>Proceedings of the European conference on computer vision (ECCV)</italic></source>, <publisher-loc>Munich</publisher-loc>, <fpage>3</fpage>&#x2013;<lpage>19</lpage>.</citation></ref>
<ref id="B39"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Xu</surname> <given-names>Y.</given-names></name> <name><surname>Su</surname> <given-names>H.</given-names></name> <name><surname>Ma</surname> <given-names>G.</given-names></name> <name><surname>Liu</surname> <given-names>X. J. C.</given-names></name></person-group> (<year>2022</year>). <article-title>A novel dual-modal emotion recognition algorithm with fusing hybrid features of audio signal and speech context.</article-title> <source><italic>Complex Intell. Syst.</italic></source> <fpage>1</fpage>&#x2013;<lpage>13</lpage>.</citation></ref>
<ref id="B40"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yan</surname> <given-names>Y.</given-names></name> <name><surname>Mao</surname> <given-names>Y.</given-names></name> <name><surname>Li</surname> <given-names>B.</given-names></name></person-group> (<year>2018</year>). <article-title>Second: Sparsely embedded convolutional detection.</article-title> <source><italic>Sensors (Basel)</italic></source> <volume>18</volume>:<fpage>3337</fpage>.</citation></ref>
<ref id="B41"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhou</surname> <given-names>Y.</given-names></name> <name><surname>Tuzel</surname> <given-names>O.</given-names></name></person-group> (<year>2018</year>). &#x201C;<article-title>Voxelnet: End-to-end learning for point cloud based 3d object detection</article-title>,&#x201D; in <source><italic>Proceedings of the IEEE conference on computer vision and pattern recognition</italic></source>, <publisher-loc>Salt Lake City</publisher-loc>, <fpage>4490</fpage>&#x2013;<lpage> 4499</lpage>.</citation></ref>
</ref-list>
</back>
</article>