diff --git a/main.bbl b/main.bbl index eb98dbe..b7814b3 100644 --- a/main.bbl +++ b/main.bbl @@ -117,7 +117,7 @@ Z.~Qin, P.~Zhang, and X.~Li, ``Ultra fast deep lane detection with hybrid anchor driven ordinal classification,'' \emph{IEEE transactions on pattern analysis and machine intelligence}, vol.~46, no.~5, pp. 2555--2568, 2022. -\bibitem{condlanenet} +\bibitem{CondLaneNet} L.~Liu, X.~Chen, S.~Zhu, and P.~Tan, ``Condlanenet: a top-to-down lane detection framework based on conditional convolution,'' in \emph{Proceedings of the IEEE/CVF international conference on computer vision}, 2021, pp. @@ -173,7 +173,7 @@ P.~Sun, Y.~Jiang, E.~Xie, W.~Shao, Z.~Yuan, C.~Wang, and P.~Luo, ``What makes Machine Learning}.\hskip 1em plus 0.5em minus 0.4em\relax PMLR, 2021, pp. 9934--9944. -\bibitem{learnnms} +\bibitem{learnNMS} J.~Hosang, R.~Benenson, and B.~Schiele, ``Learning non-maximum suppression,'' in \emph{Proceedings of the IEEE conference on computer vision and pattern recognition}, 2017, pp. 4507--4515. diff --git a/main.tex b/main.tex index e12c872..566e52e 100644 --- a/main.tex +++ b/main.tex @@ -53,7 +53,7 @@ \maketitle \begin{abstract} - Lane detection is a critical and challenging task in autonomous driving, particularly in real-world scenarios where traffic lanes are often slender, lengthy, and partially obscured by other vehicles, complicating detection efforts. Existing anchor-based methods typically rely on prior Lane anchors to extract features and refine lane location and shape. Though achieving high performance, manually setting prior anchors is cumbersome, and ensuring adequate coverage across diverse datasets often requires a large number of dense anchors. Additionally, non-maximum suppression is used to suppress redundant predictions, which complicates real-world deployment and may fail in dense scenarios. In this study, we introduce Polar R-CNN, a NMS-free anchor-based method for lane detection. By incorporating both local and global polar coordinate systems, Polar R-CNN enables flexible anchor proposals and significantly reduces the number of anchors required without compromising performance. Additionally, we introduce a heuristic GNN-based NMS-free head that supports an end-to-end paradigm, making the model more deployment-friendly and enhancing performance in dense scenarios. Our method achieves competitive results on five popular lane detection benchmarks—Tusimple, CULane, LLAMAS, CurveLanes, and DL-Rail—while maintaining a lightweight design and straightforward structure. Our source code are available at \href{https://github.com/ShqWW/PolarRCNN}{\textit{https://github.com/ShqWW/Polar R-CNN}}. + Lane detection is a critical and challenging task in autonomous driving, particularly in real-world scenarios where traffic lanes are often slender, lengthy, and partially obscured by other vehicles, complicating detection efforts. Existing anchor-based methods typically rely on prior Lane anchors to extract features and refine lane location and shape. Though achieving high performance, manually setting prior anchors is cumbersome, and ensuring adequate coverage across diverse datasets often requires a large number of dense anchors. Additionally, non-maximum suppression is used to suppress redundant predictions, which complicates real-world deployment and may fail in dense scenarios. In this study, we introduce Polar R-CNN, a NMS-free anchor-based method for lane detection. By incorporating both local and global polar coordinate systems, Polar R-CNN enables flexible anchor proposals and significantly reduces the number of anchors required without compromising performance. Additionally, we introduce a heuristic GNN-based NMS-free head that supports an end-to-end paradigm, making the model more deployment-friendly and enhancing performance in dense scenarios. Our method achieves competitive results on five popular lane detection benchmarks—Tusimple, CULane, LLAMAS, CurveLanes, and DL-Rail—while maintaining a lightweight design and straightforward structure. Our source code are available at \href{https://github.com/ShqWW/PolarRCNN}{\textit{https://github.com/ShqWW/PolarRCNN}}. \end{abstract} \begin{IEEEkeywords} Lane detection, NMS-free, Graph neural network, Polar coordinate system. @@ -73,20 +73,20 @@ In recent years, fueled by advancements in deep learning and the availability of \def\imgheight{0.5625\linewidth} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/anchor_demo/anchor_fix_init.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/anchor_demo/anchor_fix_init.jpg} \caption{} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/anchor_demo/anchor_fix_learned.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/anchor_demo/anchor_fix_learned.jpg} \caption{} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/anchor_demo/anchor_proposal.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/anchor_demo/anchor_proposal.jpg} \caption{} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/anchor_demo/gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/anchor_demo/gt.jpg} \caption{} \end{subfigure} \caption{Anchor settings of different methods. (a) The initial anchor settings of CLRNet. (b) The learned anchor settings of CLRNet trained on CULane. (c) The proposed anchors of our method. (d) The ground truth.} @@ -101,20 +101,20 @@ In recent years, fueled by advancements in deep learning and the availability of \def\imgheight{0.5625\linewidth} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/nms_demo/less_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/nms_demo/less_gt.jpg} \caption{} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/nms_demo/less_pred.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/nms_demo/less_pred.jpg} \caption{} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/nms_demo/redun_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/nms_demo/redun_gt.jpg} \caption{} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/nms_demo/redun_pred.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/nms_demo/redun_pred.jpg} \caption{} \end{subfigure} @@ -160,12 +160,12 @@ The lane detection aims to detect lane instances in an image. In this section, w \begin{figure*}[ht] \centering - \includegraphics[width=\linewidth]{thsis_figure/ovarall_architecture.png} % 替换为你的图片文件名 + \includegraphics[width=\linewidth]{thesis_figure/ovarall_architecture.png} % 替换为你的图片文件名 \caption{The overall pipeline of Polar R-CNN. The architecture is simple and lightweight. The backbone (e.g. ResNet18) and FPN aims to extract feature of the image. And the Local polar head aims to proposed sparse line anchors. After pooling features sample along the line anchors, the global polar head give the final predictions. Triplet head is set in the Global polar Head, including an one-to-one classification head (O2O cls head), an one-to-many classification head (o2m cls head) and an one-to-many regression head (O2M reg Head). The one-to-one cls head aim to replace the NMS post-processing and select only one positive prediction sample for each ground truth from the redundant predictions from the o2m head.} \label{overall_architecture} \end{figure*} -\textbf{NMS-Free Object Detections}. Non-maximum muppression (NMS) is an important post-processing step in most general object detection methods. Detr \cite{detr} employs one-to-one label assignment to avoid redundant predictions without using NMS. Other NMS-free methods \cite{learnNMS} have also been proposed, addressing this issue from two aspects: model architecture and label assignment. Studies \cite{date} \cite{yolov10} suggest that one-to-one assignments are crucial for NMS-free predictions, but maintaining one-to-many assignments is still necessary to ensure effective feature learning of the model. Other works \cite{o3d} \cite{relationnet} consider the model’s expressive capacity to provide non-redundant predictions. However, few studies have analyzed the NMS-free paradigm for anchor-based lane detection methods as thoroughly as in general object detection. Most anchor-based lane detection methods still rely on NMS post-processing. In our work, besides label assignment, we extend the analysis to the detection head’s structure, focusing on achieving non-redundant (NMS-free) lane predictions. +\textbf{NMS-Free Object Detections}. Non-maximum suppression (NMS) is an important post-processing step in most general object detection methods. Detr \cite{detr} employs one-to-one label assignment to avoid redundant predictions without using NMS. Other NMS-free methods \cite{learnNMS} have also been proposed, addressing this issue from two aspects: model architecture and label assignment. Studies \cite{date} \cite{yolov10} suggest that one-to-one assignments are crucial for NMS-free predictions, but maintaining one-to-many assignments is still necessary to ensure effective feature learning of the model. Other works \cite{o3d} \cite{relationnet} consider the model’s expressive capacity to provide non-redundant predictions. However, few studies have analyzed the NMS-free paradigm for anchor-based lane detection methods as thoroughly as in general object detection. Most anchor-based lane detection methods still rely on NMS post-processing. In our work, besides label assignment, we extend the analysis to the detection head’s structure, focusing on achieving non-redundant (NMS-free) lane predictions. In this work, we aim to address to two issues in anchor-based lane detection mentioned above, the sparse lane anchor setting and NMS-free predictions. @@ -194,6 +194,7 @@ The overall architecture of Polar R-CNN is illustrated in Fig. \ref{overall_arch $N^{nbr}_{i}$& set& The adjacent node set of the $i_{th}$ of anchor node\\ $C_{o2m}$ & scalar& The positive threshold of one-to-many confidence\\ $C_{o2o}$ & scalar& The positive threshold of one-to-one confidence\\ + $d_{dim}$ & scalar& Dimension of the distance tensor.\\ % \midrule % & & \\ % & & \\ @@ -220,11 +221,11 @@ Lanes are characterized by their thin and elongated curved shapes. A suitable la \def\imgheight{0.4\linewidth} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth]{thsis_figure/coord/ray.png} + \includegraphics[width=\imgwidth]{thesis_figure/coord/ray.png} \caption{} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth]{thsis_figure/coord/polar.png} + \includegraphics[width=\imgwidth]{thesis_figure/coord/polar.png} \caption{} \end{subfigure} \caption{Different descriptions for anchor parameters. (a) Ray: start point and orientation. (b) Polar: radius and angle.} @@ -236,12 +237,11 @@ We define two types of polar coordinate systems: the global coordinate system an \subsection{Local Polar Head} \textbf{Anchor formulation in Local polar head}. Inspired by the region proposal network in Faster R-CNN \cite{fasterrcnn}, the local polar head (LPH) aims to propose flexible, high-quality anchors aorund the lane ground truths within an image. As Fig. \ref{lph} and Fig. \ref{overall_architecture} demonstrate, the highest level $P_{3} \in \mathbb{R}^{C_{f} \times H_{f} \times W_{f}}$ of FPN feature maps is selected as the input for the Local Polar Head (LPH). Following a downsampling operation, the feature map is then fed into two branches: the regression branch $\phi _{reg}^{lph}\left(\cdot \right)$ and the classification branch $\phi _{cls}^{lph}\left(\cdot \right)$. - \begin{equation} \begin{aligned} - &F_d\gets DS\left( P_{3} \right), \,F_d\in \mathbb{R} ^{C_f\times H^{l}\times W^{l}}\\ - &F_{reg\,\,}\gets \phi _{reg}^{lph}\left( F_d \right), \,F_{reg\,\,}\in \mathbb{R} ^{2\times H^{l}\times W^{l}}\\ - &F_{cls}\gets \phi _{cls}^{lph}\left( F_d \right), \,F_{cls}\in \mathbb{R} ^{H^{l}\times W^{l}} + &F_d\gets DS\left( P_{3} \right), \,F_d\in \mathbb{R} ^{C_f\times H^{l}\times W^{l}},\\ + &F_{reg\,\,}\gets \phi _{reg}^{lph}\left( F_d \right), \,F_{reg\,\,}\in \mathbb{R} ^{2\times H^{l}\times W^{l}},\\ + &F_{cls}\gets \phi _{cls}^{lph}\left( F_d \right), \,F_{cls}\in \mathbb{R} ^{H^{l}\times W^{l}}. \end{aligned} \label{lph equ} \end{equation} @@ -250,7 +250,7 @@ We define two types of polar coordinate systems: the global coordinate system an \begin{figure}[t] \centering - \includegraphics[width=0.45\textwidth]{thsis_figure/local_polar_head.png} % 替换为你的图片文件名 + \includegraphics[width=0.45\textwidth]{thesis_figure/local_polar_head.png} % 替换为你的图片文件名 \caption{The main architecture of our model.} \label{lph} \end{figure} @@ -258,11 +258,10 @@ We define two types of polar coordinate systems: the global coordinate system an \textbf{Loss Function.} During the training phase, as illustrated in Fig. \ref{lphlabel}, the ground truth labels for the Local Polar Head (LPH) are constructed as follows. The radius ground truth is defined as the shortest distance from a grid point (local origin point) to the ground truth lane curve. The angle ground truth is defined as the orientation of the vector from the grid point to the nearest point on the curve. A grid point is designated as a positive sample if its radius label is less than a threshold $\tau_{L}$ ; otherwise, it is considered a negative sample. Once the regression and classification labels are established, the LPH can be trained using the smooth-L1 loss $d\left(\cdot \right)$ for regression and the binary cross-entropy loss $BCE\left( \cdot , \cdot \right)$ for classification. The LPH loss function is defined as follows: - \begin{equation} \begin{aligned} - \mathcal{L} _{lph}^{cls}&=BCE\left( F_{cls},F_{gt} \right) \\ - \mathcal{L} _{lph}^{r\mathrm{e}g}&=\frac{1}{N_{lph}^{pos}}\sum_{j\in \left\{j|\hat{r}_i<\tau_{L} \right\}}{\left( d\left( \theta _j-\hat{\theta}_j \right) +d\left( r_j^L-\hat{r}_j^L \right) \right)}\\ + \mathcal{L} _{lph}^{cls}&=BCE\left( F_{cls},F_{gt} \right), \\ + \mathcal{L} _{lph}^{r\mathrm{e}g}&=\frac{1}{N_{lph}^{pos}}\sum_{j\in \left\{j|\hat{r}_i<\tau_{L} \right\}}{\left( d\left( \theta _j-\hat{\theta}_j \right) +d\left( r_j^L-\hat{r}_j^L \right) \right)}.\\ \end{aligned} \label{loss_lph} \end{equation} @@ -271,7 +270,7 @@ Once the regression and classification labels are established, the LPH can be tr \begin{figure}[t] \centering - \includegraphics[width=\linewidth]{thsis_figure/coord/localpolar.png} + \includegraphics[width=\linewidth]{thesis_figure/coord/localpolar.png} \caption{Label construction for local polar proposal module.} \label{lphlabel} \end{figure} @@ -282,37 +281,35 @@ Global polar head (GPH) is a crucial component in the second stage of Polar R-CN \textbf{RoI Pooling Module.} RoI pooling module is designed to transform features sampled from lane anchors into a standard feature tensor. Once the local polar parameters of a lane anchor are given, they can be converted to global polar coordinates using the following equation: \begin{equation} \begin{aligned} - r^{g}_{j}=r^{l}_{j}+\left( \textbf{c}^{l}_{j}-\textbf{c}^{g}_{j} \right) ^{T}\left[\cos\theta_{j}, \sin\theta_{j} \right] + r^{g}_{j}=r^{l}_{j}+\left( \textbf{c}^{l}_{j}-\textbf{c}^{g}_{j} \right) ^{T}\left[\cos\theta_{j}; \sin\theta_{j} \right]. \end{aligned} \end{equation} where $\textbf{c}^{l}_{j} \in \mathbb{R}^{2}$ and $\textbf{c}^{g} \in \mathbb{R}^{2}$ represent the Cartesian coordinates of local and global origins correspondingly. Next, feature points are sampled on the lane anchor. The y-coordinates of these points are uniformly sampled vertically from the image, as previously mentioned. The $x_{i}$ coordinates are computed using the global polar axis with the following equation: - \begin{equation} \begin{aligned} - x_{i\,\,}=-y_i\tan \theta +\frac{r^{g}}{\cos \theta} + x_{i\,\,}=-y_i\tan \theta +\frac{r^{g}}{\cos \theta}. \end{aligned} \end{equation} \begin{figure}[t] \centering - \includegraphics[width=\linewidth]{thsis_figure/detection_head.png} % 替换为你的图片文件名 + \includegraphics[width=\linewidth]{thesis_figure/detection_head.png} % 替换为你的图片文件名 \caption{The main architecture of global polar head} \label{gph} \end{figure} Suppose the $P_{0}$, $P_{1}$ and $P_{2}$ denote the last three levels from FPN and $\boldsymbol{F}_{L}^{s}\in \mathbb{R} ^{N_p\times d_f}$ represent the $L_{th}$ sample point feature from $P_{L}$. The grid featuers from the three levels are extracted and fused together without cross layer cascade refinenment unlike CLRNet. To reduce the number of parameters, we employ a weight sum strategy to combine features from different layers, similar to \cite{detr}, but in a more compact form: - \begin{equation} \begin{aligned} - \boldsymbol{F}^s=\sum_{L=0}^2{\boldsymbol{F}_{L}^{s}\times \frac{e^{\boldsymbol{w}_{L}^{s}}}{\sum_{L=0}^2{e^{\boldsymbol{w}_{L}^{s}}}}} + \boldsymbol{F}^s=\sum_{L=0}^2{\boldsymbol{F}_{L}^{s}\times \frac{e^{\boldsymbol{w}_{L}^{s}}}{\sum_{L=0}^2{e^{\boldsymbol{w}_{L}^{s}}}}}, \end{aligned} \end{equation} where $\boldsymbol{w}_{L}^{s}\in \mathbb{R} ^{N_p}$ represents the learnable aggregate weight, serving as a learned model weight. Instead of concatenating the three sampling features into $\boldsymbol{F}^s\in \mathbb{R} ^{N_p\times d_f\times 3}$ directly, the adaptive summation significantly reduces the feature dimensions to $\boldsymbol{F}^s\in \mathbb{R} ^{N_p\times d_f}$, which is one-third of the original dimension. The weighted sum tensors are then fed into fully connected layers to obtain the pooled RoI features of an anchor: \begin{equation} \begin{aligned} - \boldsymbol{F}^{roi}\gets FC^{pooling}\left( \boldsymbol{F}^s \right), \boldsymbol{F}^{roi}\in \mathbb{R} ^{d_r} + \boldsymbol{F}^{roi}\gets FC^{pooling}\left( \boldsymbol{F}^s \right), \boldsymbol{F}^{roi}\in \mathbb{R} ^{d_r}, \end{aligned} \end{equation} @@ -338,12 +335,13 @@ where $\boldsymbol{w}_{L}^{s}\in \mathbb{R} ^{N_p}$ represents the learnable agg \end{aligned} \label{al_1-1} \end{equation} + where the $\land$ logical ``AND'' operation between two Boolean values. \STATE Calculate the geometric prior adjacent matrix $\boldsymbol{M} \in \mathbb{R} ^{N_{pos} \times N_{pos}} $, where the element $M_{ij}$ in $\boldsymbol{M}$ is caculate as follows: \begin{equation} \begin{aligned} M_{ij}=\begin{cases} 1,\left| \theta _i-\theta _j \right|<\theta _{\tau}\land \left| r_{i}^{global}-r_{j}^{global} \right|0$, the value range of GLaneIoU is $\left(-g, 1 \right]$. We then define the cost function between $i_{th}$ prediction and $j_{th}$ ground truth as follows like \cite{detr}: \begin{equation} \begin{aligned} - \mathcal{C} _{ij}=\left(s_i\right)^{\beta_c}\times \left( GLaneIoU_{ij, g=0} \right) ^{\beta_r} + \mathcal{C} _{ij}=\left(s_i\right)^{\beta_c}\times \left( GLaneIoU_{ij, g=0} \right) ^{\beta_r}. \end{aligned} \end{equation} This cost function is more compact than those in previous works\cite{clrnet}\cite{adnet} and takes both location and confidence into account. For label assignment, SimOTA (with k=4) \cite{yolox} is used for the two O2M heads with one-to-many assignment, while the Hungarian \cite{detr} algorithm is employed for the O2O classification head for one-to-one assignment. @@ -494,27 +488,27 @@ This cost function is more compact than those in previous works\cite{clrnet}\cit \textbf{Loss function} We use focal loss \cite{focal} for O2O cls head and O2M cls head: \begin{equation} \begin{aligned} - \mathcal{L} _{\,\,o2m}^{cls}&=\sum_{i\in \varOmega _{pos}^{o2m}}{\alpha _{o2m}\left( 1-s_i \right) ^{\gamma}\log \left( s_i \right)}\\&+\sum_{i\in \varOmega _{neg}^{o2m}}{\left( 1-\alpha _{o2m} \right) \left( s_i \right) ^{\gamma}\log \left( 1-s_i \right)} + \mathcal{L} _{o2m}^{cls}&=\sum_{i\in \varOmega _{pos}^{o2m}}{\alpha _{o2m}\left( 1-s_i \right) ^{\gamma}\log \left( s_i \right)}\\&+\sum_{i\in \varOmega _{neg}^{o2m}}{\left( 1-\alpha _{o2m} \right) \left( s_i \right) ^{\gamma}\log \left( 1-s_i \right)}, \\ - \mathcal{L} _{\,\,o2o}^{cls}&=\sum_{i\in \varOmega _{pos}^{o2o}}{\alpha _{o2o}\left( 1-\tilde{s}_i \right) ^{\gamma}\log \left( \tilde{s}_i \right)}\\&+\sum_{i\in \varOmega _{neg}^{o2o}}{\left( 1-\alpha _{o2o} \right) \left( \tilde{s}_i \right) ^{\gamma}\log \left( 1-\tilde{s}_i \right)} + \mathcal{L} _{o2o}^{cls}&=\sum_{i\in \varOmega _{pos}^{o2o}}{\alpha _{o2o}\left( 1-\tilde{s}_i \right) ^{\gamma}\log \left( \tilde{s}_i \right)}\\&+\sum_{i\in \varOmega _{neg}^{o2o}}{\left( 1-\alpha _{o2o} \right) \left( \tilde{s}_i \right) ^{\gamma}\log \left( 1-\tilde{s}_i \right)}. \\ \end{aligned} \end{equation} where the set of the one-to-one sample, $\varOmega _{pos}^{o2o}$ and $\varOmega _{neg}^{o2o}$, is restricted to the positive sample set of O2M cls head: \begin{equation} \begin{aligned} - \varOmega _{pos}^{o2o}\cup \varOmega _{neg}^{o2o}=\left\{ i|s_i>C_{o2m} \right\} + \varOmega _{pos}^{o2o}\cup \varOmega _{neg}^{o2o}=\left\{ i|s_i>C_{o2m} \right\}. \end{aligned} \end{equation} only one sample with confidence larger than $C_{o2m}$ is chosed as the canditate sample of O2O cls head. According to \cite{pss}, to maintain feature quality during training stage, the gradient of O2O cls head are stopped from propagating back to the rest of the network (stop from the roi feature of the anchor $\boldsymbol{F}_{i}^{roi}$). Additionally, we use the rank loss to increase the gap between positive and negative confidences of O2O cls head: \begin{equation} \begin{aligned} &\mathcal{L} _{\,\,rank}=\frac{1}{N_{rank}}\sum_{i\in \varOmega _{pos}^{o2o}}{\sum_{j\in \varOmega _{neg}^{o2o}}{\max \left( 0, \tau _{rank}-\tilde{s}_i+\tilde{s}_j \right)}}\\ - &N_{rank}=\left| \varOmega _{pos}^{o2o} \right|\left| \varOmega _{neg}^{o2o} \right| + &N_{rank}=\left| \varOmega _{pos}^{o2o} \right|\left| \varOmega _{neg}^{o2o} \right|. \end{aligned} \end{equation} -We directly use the GLaneIoU loss, $\mathcal{L}_{GLaneIoU}$, to regression the offset of xs (with g=1) and Smooth-L1 loss for the regression of end points (namely the y axis of the start point and the end point), denoted as $\mathcal{L} _{end}$. In order to make model learn the global features, we proposed the auxloss illustrated in fig. \ref{auxloss}: +We directly use the GLaneIoU loss, $\mathcal{L}_{GLaneIoU}$, to regression the offset of xs (with g=1) and Smooth-L1 loss for the regression of end points (namely the y axis of the start point and the end point), denoted as $\mathcal{L} _{end}$. In order to make model learn the global features, we proposed the auxloss illustrated in Fig. \ref{auxloss}: \begin{align} \mathcal{L}_{aux} &= \frac{1}{\left| \varOmega_{pos}^{o2m} \right| N_{seg}} \sum_{i \in \varOmega_{pos}^{o2o}} \sum_{m=j}^k \Bigg[ l \left( \theta_i - \hat{\theta}_{i}^{seg,m} \right) \\ &\quad + l \left( r_{i}^{global} - \hat{r}_{i}^{seg,m} \right) \Bigg] @@ -528,7 +522,7 @@ The anchors and ground truth are divided into several segments. Each anchor segm The overall loss function of Polar R-CNN is given as follows: \begin{equation} \begin{aligned} - \mathcal{L}_{overall} &=\mathcal{L} _{lph}^{cls}+w_{lph}^{reg}\mathcal{L} _{lph}^{reg}\\&+w_{o2m}^{cls}\mathcal{L} _{o2m}^{cls}+w_{o2o}^{cls}\mathcal{L} _{o2o}^{cls}+w_{rank}\mathcal{L} _{rank}\\&+w_{IoU}\mathcal{L} _{IoU}+w_{end}\mathcal{L} _{end}+w_{aux}\mathcal{L} _{aux} + \mathcal{L}_{overall} &=\mathcal{L} _{lph}^{cls}+w_{lph}^{reg}\mathcal{L} _{lph}^{reg}\\&+w_{o2m}^{cls}\mathcal{L} _{o2m}^{cls}+w_{o2o}^{cls}\mathcal{L} _{o2o}^{cls}+w_{rank}\mathcal{L} _{rank}\\&+w_{IoU}\mathcal{L} _{IoU}+w_{end}\mathcal{L} _{end}+w_{aux}\mathcal{L} _{aux}. \end{aligned} \end{equation} The first line in the loss function represents the loss for the local polar head, which includes both classification and regression components. The second line pertains to the losses associated with the two classification heads (O2M and O2O), while the third line represents the loss for the regression head within the triplet head. Each term in the equation is weighted by a factor to balance the contributions of each component to the gradient. The entire training process is end-to-end. @@ -567,8 +561,8 @@ The first line in the loss function represents the loss for the local polar head \multirow{4}*{Evaluation Hyperparameter} & $H^{l}\times W^{l}$ &$4\times10$&$4\times10$&$4\times10$&$4\times10$&$6\times13$\\ & $K_{a}$ &20&20&20&12&50\\ - & $C_{O2M}$ &0.48&0.40&0.40&0.40&0.45\\ - & $C_{O2O}$ &0.46&0.46&0.46&0.46&0.44\\ + & $C_{o2m}$ &0.48&0.40&0.40&0.40&0.45\\ + & $C_{o2o}$ &0.46&0.46&0.46&0.46&0.44\\ \bottomrule \end{tabular} \end{adjustbox} @@ -578,7 +572,7 @@ The first line in the loss function represents the loss for the local polar head \begin{figure}[t] \centering - \includegraphics[width=\linewidth]{thsis_figure/auxloss.png} % + \includegraphics[width=\linewidth]{thesis_figure/auxloss.png} % \caption{Auxloss for segment parameter regression.} \label{auxloss} \end{figure} @@ -590,24 +584,24 @@ We conducted experiments on four widely used lane detection benchmarks and one r We use the F1-score to evaluate our model on the CULane, LLAMAS, DL-Rail, and Curvelanes datasets, maintaining consistency with previous works. The F1-score is defined as follows: \begin{equation} \begin{aligned} - F1=\frac{2\times Precision\times Recall}{Precision\,\,+\,\,Recall} + F1=\frac{2\times Precision\times Recall}{Precision\,\,+\,\,Recall}, \\ - Precision\,\,=\,\,\frac{TP}{TP+FP} + Precision\,\,=\,\,\frac{TP}{TP+FP}, \\ - Recall\,\,=\,\,\frac{TP}{TP+FN} + Recall\,\,=\,\,\frac{TP}{TP+FN}. \end{aligned} \end{equation} In our experiment, we use different IoU thresholds to calculate the F1-score for different datasets: F1@50 and F1@75 for CULane \cite{clrnet}, F1@50 for LLAMAS \cite{clrnet} and Curvelanes \cite{CondLaneNet}, and F1@50, F1@75, and mF1 for DL-Rail \cite{dalnet}. The mF1 is defined as: \begin{equation} \begin{aligned} - mF1=\left( F1@50+F1@55+...+F1@95 \right) /10 + mF1=\left( F1@50+F1@55+...+F1@95 \right) /10. \end{aligned} \end{equation} For Tusimple, the evaluation is formulated as follows: \begin{equation} \begin{aligned} - Accuracy=\frac{\sum{C_{clip}}}{\sum{S_{clip}}} + Accuracy=\frac{\sum{C_{clip}}}{\sum{S_{clip}}}. \end{aligned} \end{equation} where $C_{clip}$ and $S_{clip}$ represent the number of correct points (predicted points within 20 pixels of the ground truth) and the ground truth points, respectively. If the accuracy exceeds 85\%, the prediction is considered correct. TuSimples also report the False Positive Rate (FP=1-Precision) and False Negative Rate (FN=1-Recall) formular. @@ -661,12 +655,12 @@ All input images are cropped and resized to $800\times320$. Similar to \cite{clr \hline \textbf{Proposed Method} \\ \cline{1-1} - Polar R-CNN-NMS &ResNet18&80.81&63.96&94.12&79.57&76.53&83.33&55.06&90.62&79.50&1088&75.25\\ + Polar R-CNN-NMS &ResNet18&80.81&63.97&94.12&79.57&76.53&83.33&55.10&90.70&79.50&1088&75.25\\ Polar R-CNN &ResNet18&80.81&63.96&94.12&79.57&76.53&83.33&55.06&90.62&79.50&1088&75.25\\ Polar R-CNN &ResNet34&80.92&63.97&94.24&79.76&76.70&81.93&55.40&\textbf{91.12}&79.85&1158&75.71\\ Polar R-CNN &ResNet50&81.34&64.77&94.45&\textbf{80.42}&75.82&83.61&56.62&91.10&80.05&1356&75.94\\ - Polar R-CNN-NMS &DLA34 &\textbf{81.49}&64.96&\textbf{94.44}&80.36&\textbf{76.83}&83.68&56.53&90.85&\textbf{80.09}&1135&76.32\\ - Polar R-CNN &DLA34 &\textbf{81.49}&\textbf{64.97}&\textbf{94.44}&80.36&\textbf{76.79}&83.68&\textbf{56.52}&90.85&\textbf{80.09}&1133&76.32\\ + Polar R-CNN-NMS &DLA34 &\textbf{81.49}&64.96&\textbf{94.44}&80.36&\textbf{76.79}&83.68&56.52&90.85&\textbf{80.09}&1133&76.32\\ + Polar R-CNN &DLA34 &\textbf{81.49}&\textbf{64.97}&\textbf{94.44}&80.36&\textbf{76.79}&83.68&\textbf{56.55}&90.81&\textbf{79.80}&1133&76.33\\ \bottomrule \end{tabular} \end{adjustbox} @@ -714,7 +708,7 @@ All input images are cropped and resized to $800\times320$. Similar to \cite{clr BézierLaneNet\cite{bezierlanenet} &ResNet34&95.17&95.89&94.46\\ LaneATT\cite{laneatt} &ResNet34&93.74&96.79&90.88\\ LaneAF\cite{laneaf} &DLA34 &96.07&96.91&95.26\\ - DALNet\cite{dalnet} &ResNet34&96.12&\textbf{96.83}&95.42\\ + DALNet\cite{dalnet} &ResNet18&96.12&\textbf{96.83}&95.42\\ CLRNet\cite{clrnet} &DLA34 &96.12&- &- \\ \midrule @@ -789,7 +783,7 @@ We also compare the number of anchors and processing speed with other methods. F \begin{figure}[t] \centering - \includegraphics[width=\linewidth]{thsis_figure/anchor_num_method.png} + \includegraphics[width=\linewidth]{thesis_figure/anchor_num_method.png} \caption{Anchor Number and f1-score of different methods on CULane.} \label{anchor_num_method} \end{figure} @@ -797,7 +791,7 @@ We also compare the number of anchors and processing speed with other methods. F \begin{figure}[t] \centering - \includegraphics[width=\linewidth]{thsis_figure/speed_method.png} + \includegraphics[width=\linewidth]{thesis_figure/speed_method.png} \caption{Anchor Number and f1-score of different methods on CULane.} \label{speed_method} \end{figure} @@ -840,13 +834,13 @@ We also explore the effect of different local polar map sizes on our model, as i \def\imgwidth{\linewidth} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth]{thsis_figure/anchor_num/anchor_num_testing_p.png} + \includegraphics[width=\imgwidth]{thesis_figure/anchor_num/anchor_num_testing_p.png} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth]{thsis_figure/anchor_num/anchor_num_testing_r.png} + \includegraphics[width=\imgwidth]{thesis_figure/anchor_num/anchor_num_testing_r.png} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth]{thsis_figure/anchor_num/anchor_num_testing.png} + \includegraphics[width=\imgwidth]{thesis_figure/anchor_num/anchor_num_testing.png} \end{subfigure} \caption{Anchor Number and f1-score of different methods on CULane.} \label{anchor_num_testing} @@ -861,20 +855,20 @@ We also explore the effect of different local polar map sizes on our model, as i \def\imgheight{0.4\linewidth} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/heatmap/cam1.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/heatmap/cam1.jpg} \caption{} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/heatmap/anchor1.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/heatmap/anchor1.jpg} \caption{} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/heatmap/cam2.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/heatmap/cam2.jpg} \caption{} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/heatmap/anchor2.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/heatmap/anchor2.jpg} \caption{} \end{subfigure} \caption{The heap map of the local polar map and the anchor selection during the evaluation stage.} @@ -1016,18 +1010,18 @@ In the traditional NMS post-processing \cite{clrernet}, the default IoU threshol \begin{subfigure}{\pagewidth} \rotatebox{90}{\small{GT}} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/culane/1_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/culane/1_gt.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/culane/2_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/culane/2_gt.jpg} \end{minipage} \end{subfigure} \begin{subfigure}{\pagewidth} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/tusimple/1_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/tusimple/1_gt.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/tusimple/2_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/tusimple/2_gt.jpg} \end{minipage} \end{subfigure} \vspace{0.5em} @@ -1036,18 +1030,18 @@ In the traditional NMS post-processing \cite{clrernet}, the default IoU threshol \begin{subfigure}{\pagewidth} \raisebox{-1.5em}{\rotatebox{90}{\small{Anchors}}} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/culane/1_anchor.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/culane/1_anchor.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/culane/2_anchor.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/culane/2_anchor.jpg} \end{minipage} \end{subfigure} \begin{subfigure}{\pagewidth} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/tusimple/1_anchor.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/tusimple/1_anchor.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/tusimple/2_anchor.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/tusimple/2_anchor.jpg} \end{minipage} \end{subfigure} \vspace{0.5em} @@ -1055,19 +1049,19 @@ In the traditional NMS post-processing \cite{clrernet}, the default IoU threshol \begin{subfigure}{\pagewidth} \raisebox{-2em}{\rotatebox{90}{\small{Predictions}}} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/culane/1_pred.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/culane/1_pred.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/culane/2_pred.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/culane/2_pred.jpg} \end{minipage} \caption{CULane} \end{subfigure} \begin{subfigure}{\pagewidth} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/tusimple/1_pred.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/tusimple/1_pred.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/tusimple/2_pred.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/tusimple/2_pred.jpg} \end{minipage} \caption{TuSimple} \end{subfigure} @@ -1081,18 +1075,18 @@ In the traditional NMS post-processing \cite{clrernet}, the default IoU threshol \begin{subfigure}{\pagewidth} \rotatebox{90}{\small{GT}} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/llamas/1_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/llamas/1_gt.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/llamas/2_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/llamas/2_gt.jpg} \end{minipage} \end{subfigure} \begin{subfigure}{\pagewidth} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/dlrail/1_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/dlrail/1_gt.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/dlrail/2_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/dlrail/2_gt.jpg} \end{minipage} \end{subfigure} \vspace{0.5em} @@ -1100,18 +1094,18 @@ In the traditional NMS post-processing \cite{clrernet}, the default IoU threshol \begin{subfigure}{\pagewidth} \raisebox{-1.5em}{\rotatebox{90}{\small{Anchors}}} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/llamas/1_anchor.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/llamas/1_anchor.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/llamas/2_anchor.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/llamas/2_anchor.jpg} \end{minipage} \end{subfigure} \begin{subfigure}{\pagewidth} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/dlrail/1_anchor.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/dlrail/1_anchor.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/dlrail/2_anchor.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/dlrail/2_anchor.jpg} \end{minipage} \end{subfigure} \vspace{0.5em} @@ -1119,19 +1113,19 @@ In the traditional NMS post-processing \cite{clrernet}, the default IoU threshol \begin{subfigure}{\pagewidth} \raisebox{-2em}{\rotatebox{90}{\small{Predictions}}} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/llamas/1_pred.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/llamas/1_pred.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/llamas/2_pred.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/llamas/2_pred.jpg} \end{minipage} \caption{LLAMAS} \end{subfigure} \begin{subfigure}{\pagewidth} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/dlrail/1_pred.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/dlrail/1_pred.jpg} \end{minipage} \begin{minipage}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_dataset/dlrail/2_pred.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_dataset/dlrail/2_pred.jpg} \end{minipage} \caption{DL-Rail} \end{subfigure} @@ -1150,90 +1144,90 @@ In the traditional NMS post-processing \cite{clrernet}, the default IoU threshol \def\imgheight{0.5625\linewidth} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/redun_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/redun_gt.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/redun_pred50.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/redun_pred50.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/redun_pred15.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/redun_pred15.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/redun_NMSfree.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/redun_NMSfree.jpg} \end{subfigure} \vspace{0.5em} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/redun2_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/redun2_gt.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/redun2_pred50.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/redun2_pred50.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/redun2_pred15.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/redun2_pred15.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/redun2_NMSfree.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/redun2_NMSfree.jpg} \end{subfigure} \vspace{0.5em} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/less_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/less_gt.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/less_pred50.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/less_pred50.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/less_pred15.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/less_pred15.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/less_NMSfree.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/less_NMSfree.jpg} \end{subfigure} \vspace{0.5em} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/less2_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/less2_gt.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/less2_pred50.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/less2_pred50.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/less2_pred15.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/less2_pred15.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/less2_NMSfree.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/less2_NMSfree.jpg} \end{subfigure} \vspace{0.5em} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/all_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/all_gt.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/all_pred50.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/all_pred50.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/all_pred15.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/all_pred15.jpg} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/all_NMSfree.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/all_NMSfree.jpg} \end{subfigure} \vspace{0.5em} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/all2_gt.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/all2_gt.jpg} \caption{GT} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/all2_pred50.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/all2_pred50.jpg} \caption{NMS@50} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/all2_pred15.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/all2_pred15.jpg} \caption{NMS@15} \end{subfigure} \begin{subfigure}{\subwidth} - \includegraphics[width=\imgwidth, height=\imgheight]{thsis_figure/view_nms/all2_NMSfree.jpg} + \includegraphics[width=\imgwidth, height=\imgheight]{thesis_figure/view_nms/all2_NMSfree.jpg} \caption{NMSFree} \end{subfigure} \vspace{0.5em} @@ -1251,11 +1245,11 @@ In this paper, we propose Polar R-CNN to address two key issues in anchor-based \bibliographystyle{IEEEtran} \bibliography{reference} %\newpage -\begin{IEEEbiographynophoto}{Shengqi Wang} - received the Master degree from Xi'an Jiaotong University, Xi'an, China, in 2020. He is now pursuing for the Ph.D. degree in statistics at Xi'an Jiaotong University. His research interests include low-level computer vision, deep learning, and so on. -\end{IEEEbiographynophoto} % -\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{thsis_figure/ljm.pdf}}]{Junmin Liu} +\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{thesis_figure/wsq.jpg}}]{Shengqi Wang} + received the Master degree from Xi'an Jiaotong University, Xi'an, China, in 2020. He is now pursuing for the Ph.D. degree in statistics at Xi'an Jiaotong University. His research interests include low-level computer vision, deep learning, and so on. + \end{IEEEbiography} +\begin{IEEEbiography}[{\includegraphics[width=1in,height=1.25in,clip,keepaspectratio]{thesis_figure/ljm.pdf}}]{Junmin Liu} was born in 1982. He received the Ph.D. degree in Mathematics from Xi'an Jiaotong University, Xi'an, China, in 2013. From 2011 to 2012, he served as a Research Assistant with the Department of Geography and Resource Management at the Chinese University of Hong Kong, Hong Kong, China. From 2014 to 2017, he worked as a Visiting Scholar at the University of Maryland, College Park, USA. He is currently a full Professor at the School of Mathematics and Statistics, Xi'an Jiaotong University, Xi'an, China. His research interests are mainly focused on the theory and application of machine learning and image processing. He has published over 60+ research papers in international conferences and journals. \end{IEEEbiography} \vfill diff --git a/make.sh b/make.sh index c12dd53..212ffde 100644 --- a/make.sh +++ b/make.sh @@ -1,5 +1,5 @@ # latexmk -c # latexmk -pvc -xelatex -interaction=nonstopmode main.tex -latexmk -pdf main.tex +# latexmk -pdf main.tex latexmk -quiet -interaction=nonstopmode --pvc --pdf main.tex # latexmk -pdf -interaction=nonstopmode -pvc main.tex \ No newline at end of file diff --git a/thsis_figure/GLaneIoU.png b/thsis_figure/GLaneIoU.png deleted file mode 100644 index a7d8aff..0000000 Binary files a/thsis_figure/GLaneIoU.png and /dev/null differ diff --git a/thsis_figure/anchor_demo/anchor_fix_init.jpg b/thsis_figure/anchor_demo/anchor_fix_init.jpg deleted file mode 100644 index 06e6279..0000000 Binary files a/thsis_figure/anchor_demo/anchor_fix_init.jpg and /dev/null differ diff --git a/thsis_figure/anchor_demo/anchor_fix_learned.jpg b/thsis_figure/anchor_demo/anchor_fix_learned.jpg deleted file mode 100644 index 6c48e60..0000000 Binary files a/thsis_figure/anchor_demo/anchor_fix_learned.jpg and /dev/null differ diff --git a/thsis_figure/anchor_demo/anchor_proposal.jpg b/thsis_figure/anchor_demo/anchor_proposal.jpg deleted file mode 100644 index 46154fb..0000000 Binary files a/thsis_figure/anchor_demo/anchor_proposal.jpg and /dev/null differ diff --git a/thsis_figure/anchor_demo/gt.jpg b/thsis_figure/anchor_demo/gt.jpg deleted file mode 100644 index c1b403b..0000000 Binary files a/thsis_figure/anchor_demo/gt.jpg and /dev/null differ diff --git a/thsis_figure/anchor_num/anchor_num_testing.png b/thsis_figure/anchor_num/anchor_num_testing.png deleted file mode 100644 index 033b6c6..0000000 Binary files a/thsis_figure/anchor_num/anchor_num_testing.png and /dev/null differ diff --git a/thsis_figure/anchor_num/anchor_num_testing.py b/thsis_figure/anchor_num/anchor_num_testing.py deleted file mode 100644 index 2bec239..0000000 --- a/thsis_figure/anchor_num/anchor_num_testing.py +++ /dev/null @@ -1,47 +0,0 @@ -import matplotlib.pyplot as plt -import matplotlib as mpl - -# 设置全局字体为 Times New Roman -mpl.rcParams['font.family'] = 'Times New Roman' -mpl.rcParams['font.serif'] = ['Times New Roman'] -mpl.rcParams['axes.titlesize'] = 18 -mpl.rcParams['axes.labelsize'] = 30 -mpl.rcParams['xtick.labelsize'] = 22 -mpl.rcParams['ytick.labelsize'] = 22 -mpl.rcParams['legend.fontsize'] = 22 - -alpha = 0.7 -plt.figure(figsize=(8.5, 8)) - -# 2*7 -x_2x7 = [10, 14] -y_2x7 = [80.075, 80.083] -plt.plot(x_2x7, y_2x7, 'o-', color='blue', alpha=alpha, markersize=12, linewidth=4, label="2*7") - -# 2*10 -x_2x10 = [10, 15, 20] -y_2x10 = [80.549, 80.585, 80.59] -plt.plot(x_2x10, y_2x10, 's-', color='green', alpha=alpha, markersize=12, linewidth=4, label="2*10") - -# 4*10 -x_4x10 = [10, 15, 20, 25, 30, 35, 40] -y_4x10 = [80.3, 80.824, 80.805, 80.799, 80.798, 80.796, 80.794] -plt.plot(x_4x10, y_4x10, 'd-', color='red', alpha=alpha, markersize=12, linewidth=4, label="4*10") - -# 5*12 -x_5x12 = [10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60] -y_5x12 = [79.742, 80.809, 80.9, 80.924, 80.919, 80.92, 80.921, 80.924, 80.923, 80.923, 80.924] -plt.plot(x_5x12, y_5x12, 'v-', color='purple', alpha=alpha, markersize=12, linewidth=4, label="5*12") - -# 6*18 -x_6x13 = [10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 78] -y_6x13 = [78.576, 80.53, 80.907, 80.953, 80.955, 80.958, 80.956, 80.958, 80.963, 80.965, 80.962, 80.962, 80.962, 80.962] -plt.plot(x_6x13, y_6x13, 'p-', color='orange', alpha=alpha, markersize=12, linewidth=4, label="6*13") - - -plt.grid(True, linestyle='-', alpha=0.5) -plt.xlabel("Anchor Number") # 横坐标名字 -plt.ylabel("F1-Score") # 纵坐标名字 -plt.legend(loc="lower right", title="Polarmap Size", title_fontsize=mpl.rcParams['legend.fontsize']) # 图例标题 -plt.savefig('anchor_num_testing.png', dpi=300) -plt.show() \ No newline at end of file diff --git a/thsis_figure/anchor_num/anchor_num_testing_p.png b/thsis_figure/anchor_num/anchor_num_testing_p.png deleted file mode 100644 index 72c7eca..0000000 Binary files a/thsis_figure/anchor_num/anchor_num_testing_p.png and /dev/null differ diff --git a/thsis_figure/anchor_num/anchor_num_testing_p.py b/thsis_figure/anchor_num/anchor_num_testing_p.py deleted file mode 100644 index 735c873..0000000 --- a/thsis_figure/anchor_num/anchor_num_testing_p.py +++ /dev/null @@ -1,50 +0,0 @@ -import matplotlib.pyplot as plt -import matplotlib as mpl - - -import matplotlib.pyplot as plt -import matplotlib as mpl - -# 设置全局字体为 Times New Roman -mpl.rcParams['font.family'] = 'Times New Roman' -mpl.rcParams['font.serif'] = ['Times New Roman'] -mpl.rcParams['axes.titlesize'] = 18 -mpl.rcParams['axes.labelsize'] = 30 -mpl.rcParams['xtick.labelsize'] = 22 -mpl.rcParams['ytick.labelsize'] = 22 -mpl.rcParams['legend.fontsize'] = 22 - -alpha = 0.7 -plt.figure(figsize=(8.5, 8)) - -# 2*7 -x_2x7 = [10, 14] -y_2x7 = [87.343, 85.597] -plt.plot(x_2x7, y_2x7, 'o-', color='blue', alpha=alpha, markersize=12, linewidth=4, label="2*7") - -# 2*10 -x_2x10 = [10, 15, 20] -y_2x10 = [88.174, 88.044, 88.036] -plt.plot(x_2x10, y_2x10, 's-', color='green', alpha=alpha, markersize=12, linewidth=4, label="2*10") - -# 4*10 -x_4x10 = [10, 15, 20, 25, 30, 35, 40] -y_4x10 = [89.599, 88.822, 88.516, 88.428, 88.390, 88.379, 88.376] -plt.plot(x_4x10, y_4x10, 'd-', color='red', alpha=alpha, markersize=12, linewidth=4, label="4*10") - -# 5*12 -x_5x12 = [10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60] -y_5x12 = [89.968, 89.221, 88.893, 88.805, 88.757, 88.740, 88.735, 88.733, 88.729, 88.728, 88.729] -plt.plot(x_5x12, y_5x12, 'v-', color='purple', alpha=alpha, markersize=12, linewidth=4, label="5*12") - -# 6*18 -x_6x13 = [10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 78] -y_6x13 = [90.845, 89.979, 89.492, 89.237, 89.101, 89.055, 89.018, 88.999, 88.996, 88.992, 88.983, 88.982, 88.982, 88.982] -plt.plot(x_6x13, y_6x13, 'p-', color='orange', alpha=alpha, markersize=12, linewidth=4, label="6*13") - -plt.grid(True, linestyle='-', alpha=0.5) -plt.xlabel("Anchor Number") # 横坐标名字 -plt.ylabel("Precision") # 纵坐标名字 -plt.legend(loc="lower right", title="Polarmap Size", title_fontsize=mpl.rcParams['legend.fontsize']) # 图例标题 -plt.savefig('anchor_num_testing_p.png', dpi=300) -plt.show() \ No newline at end of file diff --git a/thsis_figure/anchor_num/anchor_num_testing_r.png b/thsis_figure/anchor_num/anchor_num_testing_r.png deleted file mode 100644 index 21fc22a..0000000 Binary files a/thsis_figure/anchor_num/anchor_num_testing_r.png and /dev/null differ diff --git a/thsis_figure/anchor_num/anchor_num_testing_r.py b/thsis_figure/anchor_num/anchor_num_testing_r.py deleted file mode 100644 index b48d29d..0000000 --- a/thsis_figure/anchor_num/anchor_num_testing_r.py +++ /dev/null @@ -1,47 +0,0 @@ -import matplotlib.pyplot as plt -import matplotlib as mpl - -# 设置全局字体为 Times New Roman -mpl.rcParams['font.family'] = 'Times New Roman' -mpl.rcParams['font.serif'] = ['Times New Roman'] -mpl.rcParams['axes.titlesize'] = 18 -mpl.rcParams['axes.labelsize'] = 30 -mpl.rcParams['xtick.labelsize'] = 22 -mpl.rcParams['ytick.labelsize'] = 22 -mpl.rcParams['legend.fontsize'] = 22 - -alpha = 0.7 -plt.figure(figsize=(8.5, 8)) - -# 2*7 -x_2x7 = [10, 14] -y_2x7 = [73.924, 74.002] -plt.plot(x_2x7, y_2x7, 'o-', color='blue', alpha=alpha, markersize=12, linewidth=4, label="2*7") - -# 2*10 -x_2x10 = [10, 15, 20] -y_2x10 = [74.138, 74.290, 74.305] -plt.plot(x_2x10, y_2x10, 's-', color='green', alpha=alpha, markersize=12, linewidth=4, label="2*10") - -# 4*10 -x_4x10 = [10, 15, 20, 25, 30, 35, 40] -y_4x10 = [72.750, 74.147, 74.330, 74.381, 74.406, 74.411, 74.410] -plt.plot(x_4x10, y_4x10, 'd-', color='red', alpha=alpha, markersize=12, linewidth=4, label="4*10") - -# 5*12 -x_5x12 = [10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60] -y_5x12 = [71.603, 73.847, 74.226, 74.327, 74.353, 74.366, 74.371, 74.378, 74.380, 74.380, 74.382] -plt.plot(x_5x12, y_5x12, 'v-', color='purple', alpha=alpha, markersize=12, linewidth=4, label="5*12") - -# 6*18 -x_6x13 = [10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 78] -y_6x13 = [69.227, 72.876, 73.825, 74.077, 74.174, 74.210, 74.232, 74.249, 74.260, 74.265, 74.267, 74.267, 74.267, 74.268] -plt.plot(x_6x13, y_6x13, 'p-', color='orange', alpha=alpha, markersize=12, linewidth=4, label="6*13") - -plt.grid(True, linestyle='-', alpha=0.5) -plt.xlabel("Anchor Number") # 横坐标名字 -plt.ylabel("Recall") # 纵坐标名字 -plt.legend(loc="lower right", title="Polarmap Size", title_fontsize=mpl.rcParams['legend.fontsize']) # 图例标题 -plt.savefig('anchor_num_testing_r.png', dpi=300) -plt.show() - diff --git a/thsis_figure/anchor_num/plot.sh b/thsis_figure/anchor_num/plot.sh deleted file mode 100644 index 2533a6b..0000000 --- a/thsis_figure/anchor_num/plot.sh +++ /dev/null @@ -1,3 +0,0 @@ -python anchor_num_testing.py -python anchor_num_testing_p.py -python anchor_num_testing_r.py \ No newline at end of file diff --git a/thsis_figure/anchor_num_method - 副本.py:Zone.Identifier b/thsis_figure/anchor_num_method - 副本.py:Zone.Identifier deleted file mode 100644 index e69de29..0000000 diff --git a/thsis_figure/anchor_num_method.png b/thsis_figure/anchor_num_method.png deleted file mode 100644 index 8350d58..0000000 Binary files a/thsis_figure/anchor_num_method.png and /dev/null differ diff --git a/thsis_figure/anchor_num_method.py b/thsis_figure/anchor_num_method.py deleted file mode 100644 index e0aa103..0000000 --- a/thsis_figure/anchor_num_method.py +++ /dev/null @@ -1,50 +0,0 @@ -import matplotlib.pyplot as plt -import matplotlib as mpl - -# 设置全局字体为 Times New Roman -mpl.rcParams['font.family'] = 'Times New Roman' -mpl.rcParams['font.serif'] = ['Times New Roman'] -mpl.rcParams['axes.titlesize'] = 14 -mpl.rcParams['axes.labelsize'] = 12 -mpl.rcParams['xtick.labelsize'] = 12 -mpl.rcParams['ytick.labelsize'] = 12 -mpl.rcParams['legend.fontsize'] = 12 - -# 定义数据 -data = { - 'LaneATT (2021)': {'x': [1000, 1000, 1000], 'y': [75.09, 76.68, 77.02], 'sizes': [40*2.5, 80*2.5, 180*2.5], 'color': 'magenta', 'marker': 'H'}, - 'CLRNet (2022)': {'x': [192, 192, 192, 192], 'y': [79.58, 79.73, 80.13, 80.47], 'sizes': [20*2.5, 40*2.5, 80*2.5, 180*2.5], 'color': 'orange', 'marker': 'p'}, - 'CLRerNet (2023)': {'x': [192, 192, 192], 'y': [80.76, 80.91, 81.12], 'sizes': [40*2.5, 80*2.5, 180*2.5], 'color': 'orangered', 'marker': 'p'}, - 'ADNet (2023)': {'x': [64, 64], 'y': [77.56, 78.94], 'sizes': [80*2.5, 180*2.5], 'color': 'green', 'marker': 'v'}, - 'SRLane (2024)': {'x': [40], 'y': [79.73], 'sizes': [180*2.5], 'color': 'red', 'marker': '*'}, - 'Sparse Laneformer (2024)': {'x': [20, 20, 20], 'y': [76.55, 77.77, 77.83], 'sizes': [40*2.5, 80*2.5, 180*2.5], 'color': 'purple', 'marker': '^'}, - 'PolarRCNN (Ours)': {'x': [20, 20, 20, 20], 'y': [80.81, 80.92, 81.34, 81.49], 'sizes': [20*2.5, 40*2.5, 80*2.5, 180*2.5], 'color': 'blue', 'marker': 'o'}, - } - -# 定义统一的标记大小 -legend_marker_size = 100 - -# 绘制数据点 -for label, props in data.items(): - plt.scatter( - props['x'], props['y'], - s=props['sizes'], - alpha=0.5, - c=props['color'], - marker=props['marker'], - edgecolors='w', - linewidth=0.5, - label=label - ) - -# 设置标题和标签 -plt.grid(True, linestyle='-', alpha=0.5) -plt.xlabel('Anchor Number') -plt.ylabel('F1-score') - -# 添加图例,并调整图例中的标记大小 -legend = plt.legend(loc="best") -for handle in legend.legend_handles: - handle._sizes = [legend_marker_size] -plt.savefig('anchor_num_method.png', dpi=300) -plt.show() \ No newline at end of file diff --git a/thsis_figure/auxloss.png b/thsis_figure/auxloss.png deleted file mode 100644 index 03f5448..0000000 Binary files a/thsis_figure/auxloss.png and /dev/null differ diff --git a/thsis_figure/coord/localpolar.png b/thsis_figure/coord/localpolar.png deleted file mode 100644 index dee41c3..0000000 Binary files a/thsis_figure/coord/localpolar.png and /dev/null differ diff --git a/thsis_figure/coord/polar.png b/thsis_figure/coord/polar.png deleted file mode 100644 index 15b7df1..0000000 Binary files a/thsis_figure/coord/polar.png and /dev/null differ diff --git a/thsis_figure/coord/ray.png b/thsis_figure/coord/ray.png deleted file mode 100644 index 96c9e4d..0000000 Binary files a/thsis_figure/coord/ray.png and /dev/null differ diff --git a/thsis_figure/detection_head.png b/thsis_figure/detection_head.png deleted file mode 100644 index 2abc5b8..0000000 Binary files a/thsis_figure/detection_head.png and /dev/null differ diff --git a/thsis_figure/gnn.png b/thsis_figure/gnn.png deleted file mode 100644 index b66cc48..0000000 Binary files a/thsis_figure/gnn.png and /dev/null differ diff --git a/thsis_figure/grapgy/无标题.agx b/thsis_figure/grapgy/无标题.agx deleted file mode 100644 index bcda02f..0000000 Binary files a/thsis_figure/grapgy/无标题.agx and /dev/null differ diff --git a/thsis_figure/heatmap/aaa.pptx b/thsis_figure/heatmap/aaa.pptx deleted file mode 100644 index e69de29..0000000 diff --git a/thsis_figure/heatmap/anchor1.jpg b/thsis_figure/heatmap/anchor1.jpg deleted file mode 100644 index 207fd70..0000000 Binary files a/thsis_figure/heatmap/anchor1.jpg and /dev/null differ diff --git a/thsis_figure/heatmap/anchor2.jpg b/thsis_figure/heatmap/anchor2.jpg deleted file mode 100644 index 99b4a7d..0000000 Binary files a/thsis_figure/heatmap/anchor2.jpg and /dev/null differ diff --git a/thsis_figure/heatmap/cam1.jpg b/thsis_figure/heatmap/cam1.jpg deleted file mode 100644 index 532bac6..0000000 Binary files a/thsis_figure/heatmap/cam1.jpg and /dev/null differ diff --git a/thsis_figure/heatmap/cam2.jpg b/thsis_figure/heatmap/cam2.jpg deleted file mode 100644 index 799c968..0000000 Binary files a/thsis_figure/heatmap/cam2.jpg and /dev/null differ diff --git a/thsis_figure/ljm.pdf b/thsis_figure/ljm.pdf deleted file mode 100644 index f63ccee..0000000 Binary files a/thsis_figure/ljm.pdf and /dev/null differ diff --git a/thsis_figure/local_polar_head.png b/thsis_figure/local_polar_head.png deleted file mode 100644 index bc3112f..0000000 Binary files a/thsis_figure/local_polar_head.png and /dev/null differ diff --git a/thsis_figure/nms_demo/less_gt.jpg b/thsis_figure/nms_demo/less_gt.jpg deleted file mode 100644 index d3736a0..0000000 Binary files a/thsis_figure/nms_demo/less_gt.jpg and /dev/null differ diff --git a/thsis_figure/nms_demo/less_pred.jpg b/thsis_figure/nms_demo/less_pred.jpg deleted file mode 100644 index c96b0d0..0000000 Binary files a/thsis_figure/nms_demo/less_pred.jpg and /dev/null differ diff --git a/thsis_figure/nms_demo/redun_gt.jpg b/thsis_figure/nms_demo/redun_gt.jpg deleted file mode 100644 index a1fdaec..0000000 Binary files a/thsis_figure/nms_demo/redun_gt.jpg and /dev/null differ diff --git a/thsis_figure/nms_demo/redun_pred.jpg b/thsis_figure/nms_demo/redun_pred.jpg deleted file mode 100644 index ed0738b..0000000 Binary files a/thsis_figure/nms_demo/redun_pred.jpg and /dev/null differ diff --git a/thsis_figure/nms_demo/新建 Microsoft PowerPoint 演示文稿.pptx b/thsis_figure/nms_demo/新建 Microsoft PowerPoint 演示文稿.pptx deleted file mode 100644 index c12fe8e..0000000 Binary files a/thsis_figure/nms_demo/新建 Microsoft PowerPoint 演示文稿.pptx and /dev/null differ diff --git a/thsis_figure/ovarall_architecture.png b/thsis_figure/ovarall_architecture.png deleted file mode 100644 index bc210e9..0000000 Binary files a/thsis_figure/ovarall_architecture.png and /dev/null differ diff --git a/thsis_figure/speed_method.png b/thsis_figure/speed_method.png deleted file mode 100644 index 2b942fc..0000000 Binary files a/thsis_figure/speed_method.png and /dev/null differ diff --git a/thsis_figure/speed_method.py b/thsis_figure/speed_method.py deleted file mode 100644 index ba9b872..0000000 --- a/thsis_figure/speed_method.py +++ /dev/null @@ -1,54 +0,0 @@ -import matplotlib.pyplot as plt -import matplotlib as mpl - -# 设置全局字体为 Times New Roman -mpl.rcParams['font.family'] = 'Times New Roman' -mpl.rcParams['font.serif'] = ['Times New Roman'] -mpl.rcParams['axes.titlesize'] = 14 -mpl.rcParams['axes.labelsize'] = 12 -mpl.rcParams['xtick.labelsize'] = 12 -mpl.rcParams['ytick.labelsize'] = 12 -mpl.rcParams['legend.fontsize'] = 12 -mark_size = 8 - -# 定义数据 -data = { - 'LaneATT (2021)': {'x': [3.23, 5.01, 23.67], 'y': [75.09, 76.68, 77.02], 'color': 'magenta', 'marker': 'H'}, - 'CLRNet (2022)': {'x': [7.37, 8.81, 9.31, 14.36], 'y': [79.58, 79.73, 80.47, 80.13], 'color': 'orange', 'marker': 'p'}, - 'CLRerNet (2023)': {'x': [8.81, 9.31, 14.36], 'y': [80.76, 81.12, 80.91], 'color': 'orangered', 'marker': 'p'}, - 'ADNet (2023)': {'x': [8.4, 10.67], 'y': [77.56, 78.94], 'color': 'green', 'marker': 'v'}, - 'SRLane (2024)': {'x': [3.12], 'y': [79.73], 'color': 'red', 'marker': '*'}, - 'UFLDv2 (2022)': {'x': [2.7, 4.6], 'y': [75, 76], 'color': 'purple', 'marker': '^'}, - 'PolarRCNN-NMS (ours)': {'x': [3.71, 4.97, 5.47, 6.14], 'y': [80.81, 80.92, 81.49, 81.34], 'color': 'blue', 'marker': 'o'}, - 'PolarRCNN (ours)': {'x': [4.77, 6.10, 6.54, 7.13], 'y': [80.81, 80.92, 81.49, 81.34], 'color': 'cyan', 'marker': 'o'}, - } - - - - -plt.xlim(0, 30) - -# 绘制数据点 -for label, props in data.items(): - plt.plot( - props['x'], props['y'], - alpha=0.8, - c=props['color'], - marker=props['marker'], - # edgecolors='w', - markersize = mark_size, - linewidth=1.2, - label=label - ) - -# 设置标题和标签 -plt.grid(True, linestyle='-', alpha=0.5) -plt.xlabel('Latency (ms) on NVIDIA A100') -plt.ylabel('F1-score (%)') - -# 添加图例,并调整图例中的标记大小 -legend = plt.legend(loc="upper right") -for handle in legend.legend_handles: - handle._sizes = [20] -plt.savefig('speed_method.png', dpi=300) -plt.show() \ No newline at end of file diff --git a/thsis_figure/thisis_pic.pptx b/thsis_figure/thisis_pic.pptx deleted file mode 100644 index 630b29d..0000000 Binary files a/thsis_figure/thisis_pic.pptx and /dev/null differ diff --git a/thsis_figure/view_dataset/culane/1_anchor.jpg b/thsis_figure/view_dataset/culane/1_anchor.jpg deleted file mode 100644 index 19833fd..0000000 Binary files a/thsis_figure/view_dataset/culane/1_anchor.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/culane/1_gt.jpg b/thsis_figure/view_dataset/culane/1_gt.jpg deleted file mode 100644 index b3ecd50..0000000 Binary files a/thsis_figure/view_dataset/culane/1_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/culane/1_pred.jpg b/thsis_figure/view_dataset/culane/1_pred.jpg deleted file mode 100644 index 917648f..0000000 Binary files a/thsis_figure/view_dataset/culane/1_pred.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/culane/2_anchor.jpg b/thsis_figure/view_dataset/culane/2_anchor.jpg deleted file mode 100644 index e71e419..0000000 Binary files a/thsis_figure/view_dataset/culane/2_anchor.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/culane/2_gt.jpg b/thsis_figure/view_dataset/culane/2_gt.jpg deleted file mode 100644 index fd7b6b1..0000000 Binary files a/thsis_figure/view_dataset/culane/2_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/culane/2_pred.jpg b/thsis_figure/view_dataset/culane/2_pred.jpg deleted file mode 100644 index d46c47d..0000000 Binary files a/thsis_figure/view_dataset/culane/2_pred.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/dlrail/1_anchor.jpg b/thsis_figure/view_dataset/dlrail/1_anchor.jpg deleted file mode 100644 index c894b7b..0000000 Binary files a/thsis_figure/view_dataset/dlrail/1_anchor.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/dlrail/1_gt.jpg b/thsis_figure/view_dataset/dlrail/1_gt.jpg deleted file mode 100644 index c2b90cf..0000000 Binary files a/thsis_figure/view_dataset/dlrail/1_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/dlrail/1_pred.jpg b/thsis_figure/view_dataset/dlrail/1_pred.jpg deleted file mode 100644 index 1467509..0000000 Binary files a/thsis_figure/view_dataset/dlrail/1_pred.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/dlrail/2_anchor.jpg b/thsis_figure/view_dataset/dlrail/2_anchor.jpg deleted file mode 100644 index e1217ac..0000000 Binary files a/thsis_figure/view_dataset/dlrail/2_anchor.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/dlrail/2_gt.jpg b/thsis_figure/view_dataset/dlrail/2_gt.jpg deleted file mode 100644 index 3fc1fde..0000000 Binary files a/thsis_figure/view_dataset/dlrail/2_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/dlrail/2_pred.jpg b/thsis_figure/view_dataset/dlrail/2_pred.jpg deleted file mode 100644 index 0628801..0000000 Binary files a/thsis_figure/view_dataset/dlrail/2_pred.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/llamas/1_anchor.jpg b/thsis_figure/view_dataset/llamas/1_anchor.jpg deleted file mode 100644 index a7002a9..0000000 Binary files a/thsis_figure/view_dataset/llamas/1_anchor.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/llamas/1_gt.jpg b/thsis_figure/view_dataset/llamas/1_gt.jpg deleted file mode 100644 index 82322af..0000000 Binary files a/thsis_figure/view_dataset/llamas/1_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/llamas/1_pred.jpg b/thsis_figure/view_dataset/llamas/1_pred.jpg deleted file mode 100644 index cd7b60f..0000000 Binary files a/thsis_figure/view_dataset/llamas/1_pred.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/llamas/2_anchor.jpg b/thsis_figure/view_dataset/llamas/2_anchor.jpg deleted file mode 100644 index e44c92a..0000000 Binary files a/thsis_figure/view_dataset/llamas/2_anchor.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/llamas/2_gt.jpg b/thsis_figure/view_dataset/llamas/2_gt.jpg deleted file mode 100644 index 2f8a5d2..0000000 Binary files a/thsis_figure/view_dataset/llamas/2_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/llamas/2_pred.jpg b/thsis_figure/view_dataset/llamas/2_pred.jpg deleted file mode 100644 index 2524c42..0000000 Binary files a/thsis_figure/view_dataset/llamas/2_pred.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/tusimple/1_anchor.jpg b/thsis_figure/view_dataset/tusimple/1_anchor.jpg deleted file mode 100644 index ebc3178..0000000 Binary files a/thsis_figure/view_dataset/tusimple/1_anchor.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/tusimple/1_gt.jpg b/thsis_figure/view_dataset/tusimple/1_gt.jpg deleted file mode 100644 index 7906473..0000000 Binary files a/thsis_figure/view_dataset/tusimple/1_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/tusimple/1_pred.jpg b/thsis_figure/view_dataset/tusimple/1_pred.jpg deleted file mode 100644 index a400d6e..0000000 Binary files a/thsis_figure/view_dataset/tusimple/1_pred.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/tusimple/2_anchor.jpg b/thsis_figure/view_dataset/tusimple/2_anchor.jpg deleted file mode 100644 index 4bfabf9..0000000 Binary files a/thsis_figure/view_dataset/tusimple/2_anchor.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/tusimple/2_gt.jpg b/thsis_figure/view_dataset/tusimple/2_gt.jpg deleted file mode 100644 index 7ef5b3f..0000000 Binary files a/thsis_figure/view_dataset/tusimple/2_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_dataset/tusimple/2_pred.jpg b/thsis_figure/view_dataset/tusimple/2_pred.jpg deleted file mode 100644 index 620016b..0000000 Binary files a/thsis_figure/view_dataset/tusimple/2_pred.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/all2_gt.jpg b/thsis_figure/view_nms/all2_gt.jpg deleted file mode 100644 index 6469de6..0000000 Binary files a/thsis_figure/view_nms/all2_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/all2_nmsfree.jpg b/thsis_figure/view_nms/all2_nmsfree.jpg deleted file mode 100644 index 41da70b..0000000 Binary files a/thsis_figure/view_nms/all2_nmsfree.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/all2_pred15.jpg b/thsis_figure/view_nms/all2_pred15.jpg deleted file mode 100644 index d011580..0000000 Binary files a/thsis_figure/view_nms/all2_pred15.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/all2_pred50.jpg b/thsis_figure/view_nms/all2_pred50.jpg deleted file mode 100644 index 4fadce1..0000000 Binary files a/thsis_figure/view_nms/all2_pred50.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/all_gt.jpg b/thsis_figure/view_nms/all_gt.jpg deleted file mode 100644 index 4af899b..0000000 Binary files a/thsis_figure/view_nms/all_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/all_nmsfree.jpg b/thsis_figure/view_nms/all_nmsfree.jpg deleted file mode 100644 index a8cc274..0000000 Binary files a/thsis_figure/view_nms/all_nmsfree.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/all_pred15.jpg b/thsis_figure/view_nms/all_pred15.jpg deleted file mode 100644 index c2d874c..0000000 Binary files a/thsis_figure/view_nms/all_pred15.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/all_pred50.jpg b/thsis_figure/view_nms/all_pred50.jpg deleted file mode 100644 index c35ab50..0000000 Binary files a/thsis_figure/view_nms/all_pred50.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/less2_gt.jpg b/thsis_figure/view_nms/less2_gt.jpg deleted file mode 100644 index 06588f9..0000000 Binary files a/thsis_figure/view_nms/less2_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/less2_nmsfree.jpg b/thsis_figure/view_nms/less2_nmsfree.jpg deleted file mode 100644 index e5da291..0000000 Binary files a/thsis_figure/view_nms/less2_nmsfree.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/less2_pred15.jpg b/thsis_figure/view_nms/less2_pred15.jpg deleted file mode 100644 index e5da291..0000000 Binary files a/thsis_figure/view_nms/less2_pred15.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/less2_pred50.jpg b/thsis_figure/view_nms/less2_pred50.jpg deleted file mode 100644 index 02e1767..0000000 Binary files a/thsis_figure/view_nms/less2_pred50.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/less_gt.jpg b/thsis_figure/view_nms/less_gt.jpg deleted file mode 100644 index b88b540..0000000 Binary files a/thsis_figure/view_nms/less_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/less_nmsfree.jpg b/thsis_figure/view_nms/less_nmsfree.jpg deleted file mode 100644 index 90aec5e..0000000 Binary files a/thsis_figure/view_nms/less_nmsfree.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/less_pred15.jpg b/thsis_figure/view_nms/less_pred15.jpg deleted file mode 100644 index 070c715..0000000 Binary files a/thsis_figure/view_nms/less_pred15.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/less_pred50.jpg b/thsis_figure/view_nms/less_pred50.jpg deleted file mode 100644 index 919762b..0000000 Binary files a/thsis_figure/view_nms/less_pred50.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/redun2_gt.jpg b/thsis_figure/view_nms/redun2_gt.jpg deleted file mode 100644 index fc1c709..0000000 Binary files a/thsis_figure/view_nms/redun2_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/redun2_nmsfree.jpg b/thsis_figure/view_nms/redun2_nmsfree.jpg deleted file mode 100644 index fa0ac7c..0000000 Binary files a/thsis_figure/view_nms/redun2_nmsfree.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/redun2_pred15.jpg b/thsis_figure/view_nms/redun2_pred15.jpg deleted file mode 100644 index 467457c..0000000 Binary files a/thsis_figure/view_nms/redun2_pred15.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/redun2_pred50.jpg b/thsis_figure/view_nms/redun2_pred50.jpg deleted file mode 100644 index fa0ac7c..0000000 Binary files a/thsis_figure/view_nms/redun2_pred50.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/redun_gt.jpg b/thsis_figure/view_nms/redun_gt.jpg deleted file mode 100644 index 6cb6cd8..0000000 Binary files a/thsis_figure/view_nms/redun_gt.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/redun_nmsfree.jpg b/thsis_figure/view_nms/redun_nmsfree.jpg deleted file mode 100644 index 5a3ae20..0000000 Binary files a/thsis_figure/view_nms/redun_nmsfree.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/redun_pred15.jpg b/thsis_figure/view_nms/redun_pred15.jpg deleted file mode 100644 index c67f496..0000000 Binary files a/thsis_figure/view_nms/redun_pred15.jpg and /dev/null differ diff --git a/thsis_figure/view_nms/redun_pred50.jpg b/thsis_figure/view_nms/redun_pred50.jpg deleted file mode 100644 index 5a3ae20..0000000 Binary files a/thsis_figure/view_nms/redun_pred50.jpg and /dev/null differ diff --git a/thsis_figure/~$thisis_pic.pptx b/thsis_figure/~$thisis_pic.pptx deleted file mode 100644 index 13ef98d..0000000 Binary files a/thsis_figure/~$thisis_pic.pptx and /dev/null differ