<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Archiving and Interchange DTD v2.3 20070202//EN" "archivearticle.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="methods-article" dtd-version="2.3" xml:lang="EN">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Plant Sci.</journal-id>
<journal-title>Frontiers in Plant Science</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Plant Sci.</abbrev-journal-title>
<issn pub-type="epub">1664-462X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fpls.2023.1226329</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Plant Science</subject>
<subj-group>
<subject>Methods</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>WeedNet-R: a sugar beet field weed detection algorithm based on enhanced RetinaNet and context semantic fusion</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Guo</surname><given-names>Zhiqiang</given-names>
</name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<uri xlink:href="https://loop.frontiersin.org/people/2036355"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Goh</surname><given-names>Hui Hwang</given-names>
</name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<uri xlink:href="https://loop.frontiersin.org/people/938636"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Li</surname><given-names>Xiuhua</given-names>
</name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<uri xlink:href="https://loop.frontiersin.org/people/2174549"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Zhang</surname><given-names>Muqing</given-names>
</name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<uri xlink:href="https://loop.frontiersin.org/people/903170"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Li</surname><given-names>Yong</given-names>
</name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="author-notes" rid="fn001"><sup>*</sup></xref>
<uri xlink:href="https://loop.frontiersin.org/people/2193363"/>
</contrib>
</contrib-group>
<aff id="aff1"><sup>1</sup><institution>School of Electrical Engineering, Guangxi University</institution>, <addr-line>Nanning</addr-line>, <country>China</country></aff>
<aff id="aff2"><sup>2</sup><institution>Guangxi Key Laboratory of Sugarcane Biology, Guangxi University</institution>, <addr-line>Nanning</addr-line>, <country>China</country></aff>
<author-notes>
<fn fn-type="edited-by">
<p>Edited by: Changcai Yang, Fujian Agriculture and Forestry University, China</p>
</fn>
<fn fn-type="edited-by">
<p>Reviewed by: Chi Chen, Wuhan University, China; Taogang Hou, Beijing Jiaotong University, China</p>
</fn>
<fn fn-type="corresp" id="fn001">
<p>*Correspondence: Yong Li, <email xlink:href="mailto:yongli@gxu.edu.cn">yongli@gxu.edu.cn</email>
</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>24</day>
<month>07</month>
<year>2023</year>
</pub-date>
<pub-date pub-type="collection">
<year>2023</year>
</pub-date>
<volume>14</volume>
<elocation-id>1226329</elocation-id>
<history>
<date date-type="received">
<day>21</day>
<month>05</month>
<year>2023</year>
</date>
<date date-type="accepted">
<day>26</day>
<month>06</month>
<year>2023</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2023 Guo, Goh, Li, Zhang and Li</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Guo, Goh, Li, Zhang and Li</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>Accurate and dependable weed detection technology is a prerequisite for weed control robots to do autonomous weeding. Due to the complexity of the farmland environment and the resemblance between crops and weeds, detecting weeds in the field under natural settings is a difficult task. Existing deep learning-based weed detection approaches often suffer from issues such as monotonous detection scene, lack of picture samples and location information for detected items, low detection accuracy, etc. as compared to conventional weed detection methods. To address these issues, WeedNet-R, a vision-based network for weed identification and localization in sugar beet fields, is proposed. WeedNet-R adds numerous context modules to RetinaNet&#x2019;s neck in order to combine context information from many feature maps and so expand the effective receptive fields of the entire network. During model training, meantime, a learning rate adjustment method combining an untuned exponential warmup schedule and cosine annealing technique is implemented. As a result, the suggested method for weed detection is more accurate without requiring a considerable increase in model parameters. The WeedNet-R was trained and assessed using the OD-SugarBeets dataset, which is enhanced by manually adding the bounding box labels based on the publicly available agricultural dataset, i.e. SugarBeet2016. Compared to the original RetinaNet, the <italic>mAP</italic> of the proposed WeedNet-R increased in the weed detection job in sugar beet fields by 4.65% to 92.30%. WeedNet-R&#x2019;s average precision for weed and sugar beet is 85.70% and 98.89%, respectively. WeedNet-R outperforms other sophisticated object detection algorithms in terms of detection accuracy while matching other single-stage detectors in terms of detection speed.</p>
</abstract>
<kwd-group>
<kwd>precision farming</kwd>
<kwd>deep learning</kwd>
<kwd>object detection</kwd>
<kwd>weed recognition</kwd>
<kwd>sugar beets</kwd>
</kwd-group>
<counts>
<fig-count count="9"/>
<table-count count="7"/>
<equation-count count="17"/>
<ref-count count="36"/>
<page-count count="14"/>
<word-count count="7730"/>
</counts>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-in-acceptance</meta-name>
<meta-value>Technical Advances in Plant Science</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1" sec-type="intro">
<label>1</label>
<title>Introduction</title>
<p>Damage caused by weeds on fields is a significant factor influencing agricultural progress. Weeds in the field compete with crops for sunshine, water, and nutrients, resulting in a deterioration in crop quality and a fall in crop output, which causes substantial losses to the agricultural economy. With the rapid development of agricultural mechanization and information technologies, it is anticipated that automatic weeding robots will be widely applied in weed management, achieving the goals of reducing pesticide use, conserving resources, protecting the ecological environment, and increasing agricultural yields. Vision-based weeding robots for weed management rely heavily on the detection and identification of weeds (<xref ref-type="bibr" rid="B15">Li et&#xa0;al., 2022</xref>). Complex farming landscapes with dynamically changing, unstructured, and various conflicting noise characteristics make it challenging for weeding robots to detect and find weeds in the field. In addition, the diversity of weed morphology at various growth phases and the complexity of the soil background in which weeds grow aggravate the difficulties of weed detection. Consequently, weed detection and localization in the field remains a difficult undertaking (<xref ref-type="bibr" rid="B26">Wang, 2019</xref>).</p>
<p>In recent years, significant progress has been made in machine-vision-based weed detection approaches. However, the field of weed detection on farmland still faces persistent challenges, including the scarcity of available weed datasets, the presence of monotonous backgrounds, limited availability of diverse learning samples, the inability to achieve end-to-end solutions, and low detection accuracy. These challenges continue to pose obstacles for researchers and practitioners in the field. To address the aforementioned challenges and foster the advancement of deep academic-based target detection technology in the field of weed detection on farmland, we reconstructed an weed dataset of about 5000 images with annotation labels of bounding boxes based on the publicly available agricultural dataset SugarBeets2016 and named it OD-SugarBeets. In the meantime, we present WeedNet-R, an object identification network based on the one-stage framework network RetinaNet, for weed recognition and localisation in sugar beet fields. Inspiring by the work of <xref ref-type="bibr" rid="B22">Najibi et&#xa0;al. (2017)</xref> and <xref ref-type="bibr" rid="B6">Deng et&#xa0;al. (2019)</xref> on face detection, WeedNet-R incorporates numerous context modules in the neck of RetinaNet to combine feature maps with varying receptive field sizes from distinct layers. Utilizing context modules improves the WeedNet-R&#x2019;s capacity to represent context information, hence enhancing its weed identification precision. Moreover, a learning rate adjustment method combining an untuned exponential warmup schedule and cosine annealing technique for the Adam optimizer is implemented during model training in order to increase the network&#x2019;s ability to seek for its global optimal solution. In addition, we present a crop-first non-maximum suppression strategy to eliminate repeated prediction bounding boxes below a certain confidence level. The object that is anticipated by the network to be both weeds and crop is favored to be crop to minimize the possibility of crop being erroneously removed.</p>
<p>The following is a summary of this article&#x2019;s primary contributions. (1) We propose the WeedNet-R weed detection model for sugar beet fields, which is based on RetinaNet. Multiple context modules are added to WeedNet-R&#x2019;s neck in order to expand the network&#x2019;s receptive field. As a result, the accuracy of weed recognition is enhanced without a major increase in model parameters. (2) An untuned exponential warmup schedule is set for the Adam optimizer during WeedNet-R training, thereby enhancing the network&#x2019;s search potential for global optimal solutions. (3) Nearly 5,000 images from the SugarBeet2016 dataset were manually re-labeled with bounding boxes to address the limitation that the dataset cannot be utilized directly to object detection techniques. The SugarBeet2016 update dataset has been published to a public repository<xref ref-type="fn" rid="fn1"><sup>1</sup></xref> for the development and assessment of other weed algorithms.</p>
<p>The remaining sections are organized as follows. In Section 2, the relevant works on deep learning-based weed detection systems from recent years are briefly discussed. In Section 3, the picture dataset and proposed method for weed detection will be introduced. Section 4 describes the experimental conditions and associated assessment metrics for weed detection. Section 5 contains the entire experimental findings analysis and commentary. Finally, in Section 6 we end our task.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Related works</title>
<p>In recent years, the field of weed detection has witnessed a growing interest in deep learning and image recognition-based approaches. Within this context, two main machine vision-based strategies have emerged: individual or pixel-level classification and object detection or instance segmentation.This section provides a comprehensive review of individual or pixel-based classification methods and object detection or instance-based segmentation methods. Subsequently, we provide concise definitions of key concepts related to network enhancements, including context information, focus loss, and warmup schedule.</p>
<sec id="s2_1">
<label>2.1</label>
<title>Individual or pixel level classification-based methods</title>
<p>Individual level classification-based approaches use the entire image as the model input and differentiate between weeds and crops based on the classification of the image. This approach has been widely employed in weed detection investigations in the past. <xref ref-type="bibr" rid="B23">Olsen et&#xa0;al. (2019)</xref> employed Inception-v3 and ResNet-50 as baseline models to test weed classification performance on the DeepWeeds public images dataset (<ext-link ext-link-type="uri" xlink:href="https://github.com/AlexOlsen/DeepWeeds">https://github.com/AlexOlsen/DeepWeeds</ext-link>). The average classification accuracy of these models is 95.1% and 95.7%, respectively. <xref ref-type="bibr" rid="B12">Hu et&#xa0;al. (2020)</xref>. developed graph convolution to characterise RGB images as multi-scale graphs in order to generate deep feature representations at a fine-grained level, and the average classification accuracy on DeepWeeds was 98.1%. <xref ref-type="bibr" rid="B8">Espejo-Garcia et&#xa0;al. (2020)</xref> integrated convolutional neural networks with standard machine learning classifiers in order to capitalise on the powerful feature extraction capabilities of convolutional neural networks and the high classification performance of machine learning classifiers. Consequently, the DenseNet-SVM model earned an F1 score of 99.29% on the picture dataset of various Greek farms.</p>
<p>Typically, the pixel level classification-based algorithms categorise each pixel in the detected image into one of three categories: crop, weed, and background, thereby separating weed and crop from the background. Recent investigations have been undertaken on the basis of this concept. (<xref ref-type="bibr" rid="B20">Lottes et&#xa0;al., 2016</xref>) suggested an encoding-decoding model based on fully convolutional networks (FCN) to distinguish crop and weed from the background by including spatial information from image sequences. <xref ref-type="bibr" rid="B27">Sa et&#xa0;al. (2017)</xref> proposed a pixel-wise segmentation network named &#x2018;weedNet&#x2019; based on SegNet (<xref ref-type="bibr" rid="B1">Badrinarayanan et&#xa0;al., 2017</xref>) to classify weeds and crops in UVA&#x2019;s images. And <xref ref-type="bibr" rid="B3">Bosilj et&#xa0;al. (2020)</xref> included transfer learning into SegNet for weed recognition in various types of crops to reduce the necessary retraining time and labeling effort for new crop types. Image segment improvement techniques have also attracted the interest of researchers. By combining NIR image information, <xref ref-type="bibr" rid="B31">Wang et&#xa0;al. (2020)</xref> increased the resilience of segmentation algorithms against diverse lighting situations. In their work, the best mean intersection over union (mIoU) for pixel-wise segmentation was 88.91%. In addition, <xref ref-type="bibr" rid="B9">Fawakherji et&#xa0;al. (2019)</xref>. employed a deep network based on the UNet for pixel-wise semantic segmentation, background removal, and ROIs extraction. A CNNs-based classifier was then applied to classify the retrieved ROIs as crop or weed. However, neither individual-level classification nor pixel-level classification can simultaneously classify and locate weeds end-to-end. And they require image additional pre-processing and post-processing techniques to detect the distribution of weeds and crops in the images.</p>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>Object detection or instance segmentation-based methods</title>
<p>Unlike individual or pixel-level classification-based methods, object detection-based methods for weed detection discover all objects of interest using prediction bounding boxes including category information. In recent years, object detection approaches based on deep learning have garnered increasing interest for weed detection and location on agriculture. <xref ref-type="bibr" rid="B13">Jiang et&#xa0;al. (2019)</xref> suggested a two-stage network with Inception-ResNet v2 as the backbone based on Faster R-CNN and transfer learning to detect in-row weeds in cotton fields. However, the quantity of weeds in the image datasets used was very limited, making detection easier. <xref ref-type="bibr" rid="B10">Gao et&#xa0;al. (2020)</xref> suggested a data augmentation approach for training samples and combined synthetic and original field images to train the YOLOv3-based model, which produced a <italic>mAP</italic> of 0.829%. However, the dataset utilized was quite limited and contained a monotonous soil background, and the strategy of increasing the original dataset via picture synthesis alone could result in model overfitting. <xref ref-type="bibr" rid="B14">Jin et&#xa0;al. (2021)</xref> suggested a system based on deep learning to detect weeds in vegetable fields. A trained CenterNet model was initially used to locate vegetable plants with bounding boxes. Then, image segmentation was utilized to identify weeds outside the vegetable-bounding boxes. It is evident that this detection method is not end-to-end, as the complicated image post-processing will require a significant amount of CPU resources. In addition, the color-index-based picture segmentation method is highly sensitive to illumination and plant colour, therefore the algorithm&#x2019;s capacity for generalization may be limited. <xref ref-type="bibr" rid="B36">Zhuang et&#xa0;al. (2022)</xref>. assessed the effectiveness of five distinct object identification models for the detection of broadleaf weeds in wheat seedlings. Since none of these models have a recall rate more than 0.58, the researchers concluded that these models are insufficient to detect weeds in wheat without improvement. In a new study, researchers are investigating a method based on instance segmentation for detecting the contours and locations of weeds in images of farmland. For instance, <xref ref-type="bibr" rid="B4">Champ et&#xa0;al. (2020)</xref> trained and evaluated a Mask R-CNN model for field weed detection using a data set containing 2489 image samples, achieving a pretty good detection accuracy. In actual weed control, weed eradication efficiency reached up to 60 percent. However, instance segmentation-based methods for weed detection demand more computing resources than object detection-based methods.</p>
<p>Recently, Transformer has shown great success in Natural Language Processing (NLP). It has also been applied to computer vision tasks, yielding excellent results (<xref ref-type="bibr" rid="B7">Dosovitskiy et&#xa0;al. 2021</xref>). Transformer-based object detectors, such as Swin-Transformer (<xref ref-type="bibr" rid="B19">Liu et&#xa0;al., 2021</xref>), DETR (<xref ref-type="bibr" rid="B35">Zhu et&#xa0;al, 2020</xref>), and DINO (<xref ref-type="bibr" rid="B32">Zhang et&#xa0;al., 2022a</xref>), have emerged and been applied in weed detection tasks(<xref ref-type="bibr" rid="B33">Zhang et&#xa0;al., 2022b</xref>).</p>
</sec>
<sec id="s2_3">
<label>2.3</label>
<title>Context information</title>
<p>In a convolutional neural network, the receptive field (RF) represents the capacity of the convolutional unit to sense the size of the input region. Typically, the receptive field size is calculated beginning with the first layer of the input feature map, and different convolutional layers have varying receptive field sizes. As demonstrated in <xref ref-type="fig" rid="f1"><bold>Figure&#xa0;1</bold></xref>, the theoretical receptive field (TRF) of a convolutional neural network increases as the number of convolutional layers increases in depth. The greater the value of RF, the larger the region of the raw input that the output feature map sees, which may imply more global and higher-level semantic characteristics. However, for deep learning models, the effective receptive field (ERF) has a greater impact than the fixed TRF of the networks. In order to expand the ERF of the model, context information is utilized and enhanced by fusing the model&#x2019;s characteristics with RFs of varying sizes from different layers. <xref ref-type="bibr" rid="B22">Najibi et&#xa0;al. (2017)</xref> accomplished more efficient contextual modelling by adding additional convolutional filtering layers to each prediction module of the SSH face detection network, hence obtaining a larger ERF. PyramidBox (<xref ref-type="bibr" rid="B28">Tang et&#xa0;al., 2018</xref>) has developed a context-aware prediction module that retains rich context information from multiple feature layers. <xref ref-type="bibr" rid="B6">Deng et&#xa0;al. (2019)</xref> introduced independent contextual modules to the five feature layers of the FPN of the single-stage face detector to raise the ERF of the network, hence enhancing its rigid context semantic modelling capabilities.</p>
<fig id="f1" position="float">
<label>Figure&#xa0;1</label>
<caption>
<p>Receptive field sizes of different layers.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1226329-g001.tif"/>
</fig>
</sec>
<sec id="s2_4">
<label>2.4</label>
<title>Focal loss</title>
<p>The majority of early classical object identification algorithms employed the cross entropy function as the classification loss of the object detection network. However, the weight of the conventional cross entropy loss function is the same for all instances (easy positive, hard positive, easy negative and hard negatives, as shown in <xref ref-type="fig" rid="f2"><bold>Figure&#xa0;2</bold></xref>). In the case of example imbalance, a large number of simple negative cases will predominate, whereas a small number of hard positive and hard negative examples will not play a role, hence complicating model optimization during training. To address the issue of imbalanced examples during model training, <xref ref-type="bibr" rid="B16">Lin et&#xa0;al. (2020)</xref> presented the focal loss function, which focuses the model&#x2019;s attention on the acquisition of challenging cases. As confidence in the proper class improves, the focal loss function introduces a dynamic scaling factor based on the cross-entropy function that decays to zero. As a result, this scaling factor can automatically down-weight the contribution of easy cases during training and fast centre the model&#x2019;s attention on challenging examples. RetinaNet, a one-stage object detector able to match the speed of earlier one-stage detectors while surpassing the accuracy of all contemporary two-stage detectors, was used to test the effectiveness of focus loss.</p>
<fig id="f2" position="float">
<label>Figure&#xa0;2</label>
<caption>
<p>The distribution of different examples.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1226329-g002.tif"/>
</fig>
</sec>
<sec id="s2_5">
<label>2.5</label>
<title>Warmup schedule</title>
<p>Adam optimizer, an adjustable learning rate gradient descent method, has become increasingly popular in recent years for training models in deep learning due to its rapid convergence and great efficiency. Nonetheless, according to a recent study (<xref ref-type="bibr" rid="B18">Liu et&#xa0;al., 2020</xref>) the problematically huge variance of the adaptive learning rate in the early stage of model training is the primary reason of poor model convergence. <xref ref-type="bibr" rid="B21">Ma and Yarats (2021)</xref> demonstrate that even if the model is started to a local minimum, the Adam optimizer&#x2019;s early parameters update may exhibit significant non-regularity. The most popular method for enhancing Adam&#x2019;s stability is to include a warming schedule during model training to reduce significant or divergent variance (<xref ref-type="bibr" rid="B18">Liu et&#xa0;al., 2020</xref>; <xref ref-type="bibr" rid="B21">Ma and Yarats 2021</xref>). Typically, the warmup schedule is established during the first few epochs or partial steps of model training. During the warmup period, the learning rate is reduced to a low amount. The training with a low learning rate increases the likelihood that the randomly initialized model&#x2019;s weights will stabilize.</p>
</sec>
</sec>
<sec id="s3" sec-type="materials|methods">
<label>3</label>
<title>Materials and methods</title>
<sec id="s3_1">
<label>3.1</label>
<title>Weed dataset</title>
<p>SugarBeets2016 (University of Bonn, Germany), a huge agricultural robotics dataset for weed classification, localization, and mapping, serves as the basis for our investigations (<xref ref-type="bibr" rid="B5">Chebrolu et&#xa0;al., 2017</xref>). The collection contains three months of data acquired by the BoniRob robotic platform from a sugar beet field near Bonn, Germany. The data is collected two to three times per week, on average, and covers the pertinent growth stages for robotic intervention and weed control. The RGB images of SugarBeets2016 were captured by the JAI AD-130GE multi-spectral camera mounted on the bottom of the BoniRob robot from a top-down perspective and saved in the PNG format with lossless compression and a uniform size of 1296 936 pixels. Since the time of weed management in sugar beet fields is typically during the rapid growth period of the sugar beet leaves, rather than during the crop seedling stage when the weed morphology is most comparable to that of the crop, the sugar beet leaves have a similar morphology to the weeds. As a result, the images from the period of rapid leaf growth were chosen as our experimental material, and these images were obtained 20 days after sugar beet growth began above ground. Using the labelme tool (<ext-link ext-link-type="uri" xlink:href="https://github.com/wkentaro/labelme">https://github.com/wkentaro/labelme</ext-link>), all the items in the 4,817 images of farmland were categorized as either sugar beet or weed, as depicted in <xref ref-type="fig" rid="f3"><bold>Figure&#xa0;3</bold></xref>. A human expert manually identifies all the objects inside the detected image and encloses the region containing these things with closed rectangular boxes; the category and location information of these objects are then recorded to a local XML file. There were 9,419 sugar beet items and 9,349 weed objects in the labelled dataset.</p>
<fig id="f3" position="float">
<label>Figure&#xa0;3</label>
<caption>
<p>Sample images and annotations: <bold>(A-C)</bold> from training set, <bold>(D-F)</bold> from test set.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1226329-g003.tif"/>
</fig>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>RetinaNet based weed and sugar beet detection model</title>
<sec id="s3_2_1">
<label>3.2.1</label>
<title>Context module</title>
<p>As shown in <xref ref-type="fig" rid="f4"><bold>Figure&#xa0;4</bold></xref>, the <bold>c</bold>ontext module contains four convolutional layers, where the coefficient of &#x2018;<italic>C</italic>&#x2019; represents the number of input or output channels of convolutional layer. <italic>Conv-k</italic> denotes a convolution layer with s stride size of 1 and a kernel size of <italic>k</italic>&#xd7;<italic>k</italic> (default is 3&#xd7;3), <italic>BN</italic> is bath normalization, <italic>ReLU</italic> denotes activation function. The <italic>CB</italic> block indicates the addition of bath normalization after the convolutional output, and <italic>CBL</italic> block indicates the addition of the <italic>Leak ReLU</italic> activation function to the <italic>CB</italic> module. The branch <italic>y<sub>2</sub>
</italic> consisting of <italic>CBL1</italic> and <italic>CB2</italic> has a total stack of 2 convolutional layers, so the output of this layer has a receptive field size relative to the input equal to the receptive field size of a 5&#xd7;5 convolution. Similarly, the branch <italic>y<sub>3</sub>
</italic> consisting of <italic>CBL1</italic>, <italic>CBL2</italic> and <italic>CB3</italic> has a stack of <italic>3</italic> convolution layers, so the size of receptive field of this layer is equal to the 7&#xd7;7 convolution layers. The <italic>Y<sub>j</sub>
</italic> =[<italic>y<sub>1</sub>
</italic>, <italic>y<sub>2</sub>
</italic>, <italic>y<sub>3</sub>
</italic>] are calculated as shown in Equation (1), where <inline-formula>
<mml:math display="inline" id="im1">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>&#xb7;</mml:mo>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is a convolutional operation with a kernel size of 3&#xd7;3 and a step size of 1, <inline-formula>
<mml:math display="inline" id="im2">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>&#xb7;</mml:mo>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the use of batch normalization after <inline-formula>
<mml:math display="inline" id="im3">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>&#xb7;</mml:mo>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> . <inline-formula>
<mml:math display="inline" id="im4">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>&#xb7;</mml:mo>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the addition of Leaky ReLU activation function on top of <inline-formula>
<mml:math display="inline" id="im5">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>&#xb7;</mml:mo>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>. The convolutional layer outputs <italic>Y<sub>j</sub>
</italic> obtained from the input feature maps after convolutional operations in different layers are finally fused with semantic information of different scale by a concatenation method. Suppose <italic>P<sub>i</sub>
</italic>=[<italic>P<sub>3</sub>
</italic>,<italic>P<sub>4</sub>
</italic>,<italic>P<sub>5</sub>
</italic>] are the feature maps from FPN, and <inline-formula>
<mml:math display="inline" id="im6">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">[</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mn>3</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mn>4</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mn>5</mml:mn>
</mml:msub>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> are the feature outputs after a context module, <italic>P<sub>i</sub>
</italic>, <inline-formula>
<mml:math display="inline" id="im7">
<mml:mrow>
<mml:mo>&#xa0;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#xa0;</mml:mo>
<mml:mi>&#x3f5;</mml:mi>
<mml:mo>&#xa0;</mml:mo>
<mml:msup>
<mml:mi>R</mml:mi>
<mml:mrow>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#xd7;</mml:mo>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula>
<mml:math display="inline" id="im8">
<mml:mrow>
<mml:mo>&#xa0;</mml:mo>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#xd7;</mml:mo>
<mml:msub>
<mml:mi>W</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the size of feature map <italic>P<sub>i</sub>
</italic>. As a result, <italic>V</italic><sub>i</sub> is calculated be the Equation (2), where <inline-formula>
<mml:math display="inline" id="im9">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mtext>concat</mml:mtext>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the stacking of <italic>Y<sub>i</sub>
</italic> in concatenation. <inline-formula>
<mml:math display="inline" id="im10">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>L</mml:mi>
<mml:mi>U</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>&#xb7;</mml:mo>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the ReLU activation function applied after the stacking.</p>
<fig id="f4" position="float">
<label>Figure&#xa0;4</label>
<caption>
<p>Context module.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1226329-g004.tif"/>
</fig>
<disp-formula>
<label>(1)</label>
<mml:math display="block" id="M1">
<mml:mrow>
<mml:msub>
<mml:mi>Y</mml:mi>
<mml:mi>j</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>b</mml:mi>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula>
<label>(2)</label>
<mml:math display="block" id="M2">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>P</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>c</mml:mi>
</mml:msub>
<mml:mo stretchy="false">(</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>L</mml:mi>
<mml:mi>U</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
<mml:msub>
<mml:mo stretchy="false">)</mml:mo>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
</sec>
<sec id="s3_2_2">
<label>3.2.2</label>
<title>General architecture of WeedNet-R</title>
<p>Based on RetinaNet and context modules, a one-stage object detection network, the proposed WeedNet-R weed detection network is enhanced in terms of its sophistication and applicability. As seen in <xref ref-type="fig" rid="f5"><bold>Figure&#xa0;5</bold></xref>, the WeedNet-R consists of (A) the feature extraction backbone (Backbone), (B) the multi-scale feature pyramid network (FPN), (C) the classification sub-net and regression sub-net, (D) the outputs.</p>
<fig id="f5" position="float">
<label>Figure&#xa0;5</label>
<caption>
<p>Overall architecture of WeedNet-R: <bold>(A)</bold> Backbone, <bold>(B)</bold> FPN, <bold>(C)</bold> Classification and regression sub-nets, <bold>(D)</bold> Outputs.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1226329-g005.tif"/>
</fig>
<p>The WeedNet-R uses ResNet50 as the foundation for feature extraction, and the C2-C5 feature layers extracted by ResNet50 are given to the FPN to generate five feature maps P3-P7 with varying scale sizes. Lastly, P3-P7 feature maps are fed into the classification and regression sub-nets for object classification and bounding box regression, respectively. WeedNet-R&#x2019;s classification and regression sub-nets share the same network weight parameters to reduce the size of the model. Additionally, three context modules are introduced between the three bottom layers (P3-P5) of the FPN and the classification and regression sub-nets in WeedNet-R in order to fuse context information with various receptive field sizes from different levels. In <xref ref-type="fig" rid="f5"><bold>Figure&#xa0;5</bold></xref>, <italic>w</italic> and <italic>h</italic> denote the width and height of feature map respectively, <italic>anchors</italic> is number of anchors assigned for each spatial position of feature maps and <italic>classes</italic> is number of object classes.</p>
</sec>
<sec id="s3_2_3">
<label>3.2.3</label>
<title>Loss function</title>
<p>The loss function in WeedNet-R is defined as Equation (3). <inline-formula>
<mml:math display="inline" id="im11">
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>is the number of positive samples where the prior anchors match the ground-truth labels, <italic>i</italic> is any positive or negative samples, and <italic>j</italic> denotes any positive sample. <inline-formula>
<mml:math display="inline" id="im12">
<mml:mrow>
<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:mrow>
</mml:math>
</inline-formula>is the total loss function of WeedNet-R. <inline-formula>
<mml:math display="inline" id="im13">
<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:mrow>
</mml:math>
</inline-formula>is the classification loss function. <inline-formula>
<mml:math display="inline" id="im14">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>is the regression loss function.</p>
<disp-formula>
<label>(3)</label>
<mml:math display="block" id="M3">
<mml:mrow>
<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:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>}</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>}</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:munder>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>i</mml:mi>
</mml:munder>
<mml:msubsup>
<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:mi>i</mml:mi>
</mml:msubsup>
<mml:mo>+</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:msub>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:munder>
<mml:mo>&#x2211;</mml:mo>
<mml:mi>j</mml:mi>
</mml:munder>
<mml:msubsup>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
<mml:mi>j</mml:mi>
</mml:msubsup>
</mml:mrow>
</mml:math>
</disp-formula>
<p>The classification loss function ( <inline-formula>
<mml:math display="inline" id="im15">
<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:mrow>
</mml:math>
</inline-formula>) is calculated according to the focal loss of Equation (4), where <inline-formula>
<mml:math display="inline" id="im16">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>and <inline-formula>
<mml:math display="inline" id="im17">
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mtext>t</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>are defined as Equation (5) and Equation (6), respectively. The hyperparameter of <inline-formula>
<mml:math display="inline" id="im18">
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>is a weight factor to balance the weights of positive and negative samples, the <italic>p</italic> represents the prediction probability that the sample matches the ground truth. <inline-formula>
<mml:math display="inline" id="im19">
<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:msub>
<mml:mi>p</mml:mi>
<mml:mtext>t</mml:mtext>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the cross-entropy function as Equation (7). A factorization <inline-formula>
<mml:math display="inline" id="im20">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>&#x3b3;</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> consisting of another hyperparameter of <italic>&#x3b3;</italic> and <inline-formula>
<mml:math display="inline" id="im21">
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mtext>t</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is used to balance the weight of positive and negative samples in the training process. The larger the value of <italic>&#x3b3;</italic>, the larger the proportion of the loss of the simple samples in the total loss.</p>
<disp-formula>
<label>(4)</label>
<mml:math display="block" id="M4">
<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:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mi>&#x3b3;</mml:mi>
</mml:msup>
<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:msub>
<mml:mi>p</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula>
<label>(5)</label>
<mml:math display="block" id="M5">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mo>&#xa0;</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3b1;</mml:mi>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<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:mrow>
</mml:math>
</disp-formula>
<disp-formula>
<label>(6)</label>
<mml:math display="block" id="M6">
<mml:mrow>
<mml:msub>
<mml:mi>p</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mo>&#xa0;</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>p</mml:mi>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<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:mrow>
</mml:math>
</disp-formula>
<disp-formula>
<label>(7)</label>
<mml:math display="block" id="M7">
<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:msub>
<mml:mi>p</mml:mi>
<mml:mi>t</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>l</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>g</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>p</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#xa0;</mml:mo>
<mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>y</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<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:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#xa0;</mml:mo>
<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:mtable>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<p>The regression loss (<inline-formula>
<mml:math display="inline" id="im22">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>) represents the smooth L1 loss of the bounding box regression, which is shown in Equation (8). Here, <inline-formula>
<mml:math display="inline" id="im23">
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>x</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>y</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>w</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>h</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>and <inline-formula>
<mml:math display="inline" id="im24">
<mml:mrow>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>x</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>y</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>w</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>h</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>represent the center coordinates, width and height of the predicted bounding box and the ground-truth bounding box, respectively. The definition of <inline-formula>
<mml:math display="inline" id="im25">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>is shown in Equation (9).</p>
<disp-formula>
<label>(8)</label>
<mml:math display="block" id="M8">
<mml:mrow>
<mml:msub>
<mml:mi>L</mml:mi>
<mml:mrow>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>g</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>&#x3f5;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>w</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:msub>
<mml:mi>s</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi>t</mml:mi>
<mml:mi>i</mml:mi>
<mml:mo>*</mml:mo>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula>
<label>(9)</label>
<mml:math display="block" id="M9">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>t</mml:mi>
<mml:msub>
<mml:mi>h</mml:mi>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mrow>
<mml:mo>{</mml:mo>
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mn>0.5</mml:mn>
<mml:msup>
<mml:mi>x</mml:mi>
<mml:mn>2</mml:mn>
</mml:msup>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<mml:mi>i</mml:mi>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo>|</mml:mo>
</mml:mrow>
<mml:mo>&lt;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mrow>
<mml:mo>|</mml:mo>
<mml:mi>x</mml:mi>
<mml:mo>|</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>0.5</mml:mn>
<mml:mo>&#xa0;</mml:mo>
<mml:mo>&#xa0;</mml:mo>
<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:mrow>
</mml:math>
</disp-formula>
</sec>
<sec id="s3_2_4">
<label>3.2.4</label>
<title>Untuned warmup schedule</title>
<p>Here, an untuned exponential warmup schedule is utilized to alter the learning rate during the initial phase of training. <xref ref-type="fig" rid="f6"><bold>Figure&#xa0;6</bold></xref> depicts the adjustment of the remaining training period&#x2019;s learning rate using the cosine annealing process. This adjustment affects the entire training period. Equation (10) determines the number of training steps consumed by the untuned exponential warmup routine throughout the training period. <italic>&#x3b2;<sub>2</sub>
</italic> is the Adam optimizer second-momentum coefficient, which takes the default value of 0.999. The learning rate factor <italic>&#x3c9;(t)</italic> of the untuned exponential warmup schedule is calculated by Equation (11) The final learning rate <italic>lr(t)</italic> of Adam optimizer is calculated by Equation (12), which is the product of <italic>&#x3c9;(t)</italic> and the initial learning rate.</p>
<fig id="f6" position="float">
<label>Figure&#xa0;6</label>
<caption>
<p>The training schedule learning rate curve.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1226329-g006.tif"/>
</fig>
<disp-formula>
<label>(10)</label>
<mml:math display="block" id="M10">
<mml:mrow>
<mml:mi>w</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>m</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>p</mml:mi>
<mml:mo>_</mml:mo>
<mml:mi>p</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>d</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo stretchy="false">/</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula>
<label>(11)</label>
<mml:math display="block" id="M11">
<mml:mrow>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>-</mml:mo>
<mml:mi>e</mml:mi>
<mml:mi>x</mml:mi>
<mml:mi>p</mml:mi>
<mml:mo stretchy="false">(</mml:mo>
<mml:mo>-</mml:mo>
<mml:mo stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>-</mml:mo>
<mml:mi>&#x3b2;</mml:mi>
<mml:mn>2</mml:mn>
<mml:mo stretchy="false">)</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula>
<label>(12)</label>
<mml:math display="block" id="M12">
<mml:mrow>
<mml:mi>l</mml:mi>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>=</mml:mo>
<mml:mi>l</mml:mi>
<mml:msub>
<mml:mi>r</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>t</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</disp-formula>
</sec>
<sec id="s3_2_5">
<label>3.2.5</label>
<title>Crop-first non-maximal suppression</title>
<p>There could be a few exceptions for WeedNet-R during test, which may produce repeated predicted bounding boxes for the same object under a specified confidence threshold. To address this issue, we suggested a crop-first, non-maximal suppression technique for removing anticipated bounding boxes that are repeated. The crop-first non-maximal suppression method is similar to traditional non-maximal suppression method for object detection, but the starting-point of which is to limit the likelihood of crops being destroyed inadvertently, weeds suspected of being crops are frequently given precedence during weeding control. The method firstly separates all prediction results into two groups: sugar beet (crop) bounding boxes and weed bounding boxes. The <italic>IoUs</italic> of each sugar beet bounding box relative to all weed bounding boxes are then determined. Lastly, based on the results of the calculations, any predicted bounding boxes for weed with an <italic>IoU</italic> greater than the given threshold are eliminated.</p>
</sec>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>Experiment settings</title>
<sec id="s4_1">
<label>4.1</label>
<title>Experimental dataset split</title>
<p>At this study, the experimental dataset is randomly divided into a training-validation set and a test set in a ratio of 8:2. One tenth of the training-validation set is randomly partitioned into a validation set, which is used to observe the convergence of the model during training and to identify the best model after training. The remainder of the training-validation set is utilized for model training as the train set. <xref ref-type="table" rid="T1"><bold>Table&#xa0;1</bold></xref> provides a summary of the employed dataset&#x2019;s information. The training set has 3,466 images, the validation set contains 387 images, and the test set contains 964 images. Moreover, it can be observed that the ratio of weed objects to sugar beet objects in each subset is near to one-to-one, indicating that the category of the data is balanced.</p>
<table-wrap id="T1" position="float">
<label>Table&#xa0;1</label>
<caption>
<p>Dataset split and statistics of different categories.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="middle" align="left"/>
<th valign="middle" align="center">Number of images</th>
<th valign="middle" align="center">Number of weeds</th>
<th valign="middle" align="center">Number of sugar beets</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="middle" align="left">Train subset</td>
<td valign="middle" align="left">3466</td>
<td valign="middle" align="left">6641</td>
<td valign="middle" align="left">6750</td>
</tr>
<tr>
<td valign="middle" align="left">Valid subset</td>
<td valign="middle" align="left">387</td>
<td valign="middle" align="left">730</td>
<td valign="middle" align="left">779</td>
</tr>
<tr>
<td valign="middle" align="left">Test subset</td>
<td valign="middle" align="left">964</td>
<td valign="middle" align="left">1970</td>
<td valign="middle" align="left">1890</td>
</tr>
<tr>
<td valign="middle" align="left">Total</td>
<td valign="middle" align="left">4817</td>
<td valign="middle" align="left">9349</td>
<td valign="middle" align="left">9419</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>Model training and parameter setting</title>
<p>All object detection models in this research were developed using PyTorch 1.2 and Python 3.6 on the Windows 10 operating system. On a PC equipped with a 11 GB Nvidia GeForce GTX2080Ti GPU, a 3.50GHz Intel(R) Core(TM) i9-10920X CPU processor., and 32 GB of main memory, the models were trained and evaluated. To accelerate model convergence, the weights of Resnet50, the backbone network of WeedNet-R, were initialized by an ImageNet-pretrained model. The Adam algorithm was chosen as the model training optimization approach, and the starting learning rate (lr) was set to 0.0001. The initial momentum coefficient article &#x3b2;<sub>1</sub> was set to 0.9, whereas the second momentum coefficient &#x3b2;<sub>2</sub> was set to 0.999. The Untuned Exponential Warmup method and the cosine annealing procedure were used to alter the learning rate. The number of samples in each mini-batch was eight, and the model was iterated twenty training epochs. In addition, some training parameters or settings, such as random image flipping, matched RetinaNet (<xref ref-type="bibr" rid="B16">Lin et&#xa0;al., 2020</xref>). To compare the performance of WeedNet-R and RetinaNet (baseline), RetinaNet was trained and evaluated using the same settings as WeedNet-R. During model training, the values of the loss function after each epoch iteration were recorded, and model convergence was determined by validating the model on the validation set, as depicted in <xref ref-type="fig" rid="f7"><bold>Figures&#xa0;7A, B</bold></xref><bold>)</bold>.</p>
<fig id="f7" position="float">
<label>Figure&#xa0;7</label>
<caption>
<p>Comparison between baseline and ours: <bold>(A)</bold> loss curve, <bold>(B)</bold> validation <italic>mAP</italic>, <bold>(C)</bold> P-R curve in test subset.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1226329-g007.tif"/>
</fig>
</sec>
<sec id="s4_3">
<label>4.3</label>
<title>Evaluation metrics</title>
<p>In this article, measures such as mean average precision (<italic>mAP</italic>), size of model parameters, and forward inference time were used to evaluate the effectiveness of the neural network model, and these metrics were computed at an <italic>IoU</italic> threshold of 0.5. The terms of the <italic>IoU</italic> are specified by Formula (13). The mean average precision (<italic>mAP</italic>) is the mean of the average precision (<italic>AP</italic>) of all categories in a multi-category object detection, as defined in Equation (14).</p>
<disp-formula>
<label>(13)</label>
<mml:math display="block" id="M13">
<mml:mrow>
<mml:mi>I</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>U</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:msup>
<mml:mo>&#x2229;</mml:mo>
<mml:mi>&#x200b;</mml:mi>
</mml:msup>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:msup>
<mml:mo>&#x222a;</mml:mo>
<mml:mi>&#x200b;</mml:mi>
</mml:msup>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula>
<label>(14)</label>
<mml:math display="block" id="M14">
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>A</mml:mi>
<mml:mi>P</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mi>n</mml:mi>
</mml:mfrac>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>n</mml:mi>
</mml:munderover>
<mml:mi>A</mml:mi>
<mml:msub>
<mml:mi>P</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</disp-formula>
<p>where <inline-formula>
<mml:math display="inline" id="im26">
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:msup>
<mml:mo>&#x2229;</mml:mo>
<mml:mi>&#x200b;</mml:mi>
</mml:msup>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the area of intersection of the predicted bounding box (<italic>B<sub>p</sub>
</italic>) and the groundtruth bounding box (<italic>B<sub>gt</sub>
</italic>). <inline-formula>
<mml:math display="inline" id="im27">
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>a</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:msup>
<mml:mo>&#x222a;</mml:mo>
<mml:mi>&#x200b;</mml:mi>
</mml:msup>
<mml:msub>
<mml:mi>B</mml:mi>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula> is the area of the union of <italic>B<sub>p</sub>
</italic> and <italic>B<sub>gt</sub>
</italic>. Average Precision (<italic>AP</italic>) is related to <italic>precision</italic> and <italic>recall</italic>, which are calculated by Equation (15) and Equation (16), respectively. Where <italic>T<sub>p</sub>
</italic>(true positive) represents the number of predicted results with <italic>IoU</italic> &gt;threshold, <italic>F<sub>P</sub>
</italic> (false positive) represents the number with <italic>IoU</italic> &#x2264; threshold. <italic>F<sub>n</sub>
</italic> (false negative) represents the number of true bounding boxes not detected. The confusion matrix for <italic>T<sub>p</sub>
</italic>, <italic>F<sub>n</sub>
</italic>, and <italic>F<sub>p</sub>
</italic> is shown in <xref ref-type="table" rid="T2"><bold>Table&#xa0;2</bold></xref>.</p>
<table-wrap id="T2" position="float">
<label>Table&#xa0;2</label>
<caption>
<p>Definition relationships between predicted and true values.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="middle" rowspan="2" align="left">Ground Truth</th>
<th valign="middle" colspan="2" align="center">Predicted</th>
</tr>
<tr>
<th valign="middle" align="center">Positive</th>
<th valign="middle" align="center">Negative</th>
</tr>
</thead>  <tbody>
<tr>
<td valign="middle" align="left">Positive</td>
<td valign="middle" align="center">True Positive (<italic>T<sub>p</sub>
</italic>)</td>
<td valign="middle" align="center">False Negative (<italic>F<sub>n</sub>
</italic>)</td>
</tr>
<tr>
<td valign="middle" align="left">Negative</td>
<td valign="middle" align="center">False Positive (<italic>F<sub>p</sub>
</italic>)</td>
<td valign="middle" align="center">True Positive (<italic>T<sub>n</sub>
</italic>)</td>
</tr>
</tbody>
</table>
</table-wrap>
<disp-formula>
<label>(15)</label>
<mml:math display="block" id="M15">
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>o</mml:mi>
<mml:mi>n</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<disp-formula>
<label>(16)</label>
<mml:math display="block" id="M16">
<mml:mrow>
<mml:mi>R</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>c</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>l</mml:mi>
<mml:mi>l</mml:mi>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mi>T</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mi>n</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</disp-formula>
<p>According to the prediction confidence, a set of recall and accuracy regarding the results of the forecast are calculated individually for various confidence thresholds. Obtaining the P-R curve p(r) using recall as the horizontal axis and precision as the vertical axis. The final step in calculating the average accuracy of a single category is to solve the integral between the P-R curve and the horizontal axis, as shown in Equation (17).</p>
<disp-formula>
<label>(17)</label>
<mml:math display="block" id="M17">
<mml:mrow>
<mml:mi>A</mml:mi>
<mml:mi>P</mml:mi>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>&#x222b;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mn>1</mml:mn>
</mml:munderover>
<mml:mi>p</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mi>r</mml:mi>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>r</mml:mi>
<mml:mtext>&#xa0;</mml:mtext>
</mml:mrow>
</mml:math>
</disp-formula>
</sec>
<sec id="s4_4">
<label>4.4</label>
<title>Comparison with the state-of-the-art object detection models</title>
<p>To further demonstrate the efficacy and superiority of the enhanced model, the performance of WeedNet-R was compared to that of other advanced object detection methods, with the exception of the baseline model (RetinaNet), under identical experimental conditions. Faster R-CNN (<xref ref-type="bibr" rid="B26">Ren et&#xa0;al., 2017</xref>), SSD (<xref ref-type="bibr" rid="B17">Liu et&#xa0;al., 2016</xref>), YOLOv3 (<xref ref-type="bibr" rid="B25">Redmon and Farhadi, 2018</xref>), YOLOv4 (<xref ref-type="bibr" rid="B2">Bochkovskiy et&#xa0;al., 2020</xref>), CenterNet (<xref ref-type="bibr" rid="B34">Zhou et al., 2019</xref>), YOLOX (<xref ref-type="bibr" rid="B11">Ge et&#xa0;al., 2021</xref>). YOLOv7 (<xref ref-type="bibr" rid="B30">Wang et&#xa0;al., 2022</xref>) are the models compared. The <italic>AP</italic>, <italic>mAP</italic>, number of model parameters, forward inference time, etc. measured on a test set from sugarbeet2016 serve as the primary comparative performance indicators. In consideration of the modest variation in image input size between detectors, the input image size for training and testing is equally scaled to be 640 by 640 pixels or near to that size. In addition, both Faster R-CNN and CenterNet utilise ResNet50 and VGG16 as their extraction backbone. Yolov3 and YOLOv4 both utilise Darknet53 with 53 layers as their backbone. And the standard CSPDarknet53 was used as backbone of YOLOX. The aforesaid settings make these comparison models match an equivalent level of model parameters as the WeedNet-R, thus ensuring the fairness of the comparison.</p>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Experiment results</title>
<sec id="s5_1">
<label>5.1</label>
<title>Detection performance on dataset</title>
<p>
<xref ref-type="fig" rid="f7"><bold>Figure&#xa0;7C</bold></xref> depicts the P-R curves of the models on test data. The validation and test set images were utilised to evaluate the performance of the respective models. <xref ref-type="table" rid="T3"><bold>Table&#xa0;3</bold></xref> displays the evaluation&#x2019;s results WeedNet-R only increased the number of parameters by 4.4% compared to the baseline model, while the <italic>mAP</italic> metric in the validation set improved by 2.93%, and the average accuracy (<italic>AP</italic>) for weed and sugar beet detection rose by 4.61% and 1.21%, respectively. In the meantime, the test set reflected the increased detection performance of the proposed model: the <italic>mAP</italic> improved by 4.65% to 92.30%, while the average accuracy of weed and sugar beet identification improved by 8.01% to 85.70% and 1.29% to 98.89%, respectively. Due to the fact that the P-R curve reflects the variable relationship between recall and accuracy at different confidence thresholds, the better the performance of the detector is represented, the closer the shape contained by the P-R curve and the coordinate axis is to a square. <xref ref-type="fig" rid="f7"><bold>Figure&#xa0;7C</bold></xref><bold>)</bold> shows that the precision of WeedNet-R is marginally higher than that of the baseline model for sugar beet plant detection and significantly higher than that of the baseline model for weed detection at the same recall rate. The aforementioned findings demonstrate that our improved weed detection system outperforms RetinaNet.</p>
<table-wrap id="T3" position="float">
<label>Table&#xa0;3</label>
<caption>
<p>Comparison of the detection performance of the RetinaNet model (baseline) before improvement and WeedNet-R.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="middle" rowspan="2" align="center">method</th>
<th valign="middle" colspan="3" align="center">valid set (%)</th>
<th valign="middle" colspan="3" align="center">test set (%)</th>
<th valign="middle" rowspan="2" align="center">parameters</th>
<th valign="middle" rowspan="2" align="center">inference times (ms)</th>
</tr>
<tr>
<th valign="middle" align="center">weed <italic>AP</italic>
</th>
<th valign="middle" align="center">sugar-beet <italic>AP</italic>
</th>
<th valign="middle" align="center"><italic>mAP</italic>
</th>
<th valign="middle" align="center">weed <italic>AP</italic>
</th>
<th valign="middle" align="center">sugar-beet <italic>AP</italic>
</th>
<th valign="middle" align="center"><italic>mAP</italic>
</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="middle" align="center">RetinaNet</td>
<td valign="middle" align="center">76.38</td>
<td valign="middle" align="center">97.27</td>
<td valign="middle" align="center">86.82</td>
<td valign="middle" align="center">77.69</td>
<td valign="middle" align="center">97.61</td>
<td valign="middle" align="center">87.65</td>
<td valign="middle" align="center">36.4M</td>
<td valign="middle" align="center">66.4</td>
</tr>
<tr>
<td valign="middle" align="center">WeedNet-R</td>
<td valign="middle" align="center">80.99</td>
<td valign="middle" align="center">98.51</td>
<td valign="middle" align="center">89.75</td>
<td valign="middle" align="center">85.70</td>
<td valign="middle" align="center">98.89</td>
<td valign="middle" align="center">92.30</td>
<td valign="middle" align="center">38.0M</td>
<td valign="middle" align="center">52.8</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>WeedNet-R outperforms the other six detection algorithms on the test set in terms of both the <italic>AP</italic> in individual categories and the <italic>mAP</italic> when compared to other sophisticated object detectors, as shown <xref ref-type="table" rid="T4"><bold>Table&#xa0;4</bold></xref>. The detection capabilities of the suggested method are much superior to those of previous methods. WeedNet-R&#x2019;s <italic>mAP</italic> is 10.65% greater than the most inaccurate Fast R-CNN. Compared with the latest SOTA object detector YOLOv7, our approach&#x2019;s <italic>mAP</italic> is 0.8% higher than it. It is worth noting that YOLOv7 applied some complex data augmentation approaches such as mosaic during training, but weedNet-R did not apply complex data augmentation approach. In addition, WeedNet-R has a lesser number of parameters than the YOLO series of algorithms (YOLO v3, YOLO v4, and YOLOX) and a somewhat greater number of parameters than SSD CenterNet and YOLOv7, which are noted for their simple architecture. Consequently, our strategy achieves optimal detection accuracy while also ensuring more acceptable model parameters. It is worth noting that the inference speed of all the models utilized in our experiments was slow, primarily due to the utilization of a relatively older graphics card from the 1080 series. This older graphics card exhibits a significant performance gap compared to the latest advanced graphics cards available in the market.</p>
<table-wrap id="T4" position="float">
<label>Table&#xa0;4</label>
<caption>
<p>Comparison of the detection performance of WeedNet-R with different target detectors.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="center"/>
<th valign="middle" align="center">backbone</th>
<th valign="middle" align="center">weed <italic>AP</italic>
</th>
<th valign="middle" align="center">sugar-beet <italic>AP</italic>
</th>
<th valign="middle" align="center"><italic>mAP</italic>
</th>
<th valign="middle" align="center">parameters</th>
<th valign="middle" align="center">inference time (ms)</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="middle" align="center">Faster R-CNN</td>
<td valign="top" align="center">Resnet50</td>
<td valign="top" align="center">66.28%</td>
<td valign="top" align="center">97.02%</td>
<td valign="top" align="center">81.65%</td>
<td valign="top" align="center">28.3M</td>
<td valign="top" align="center">80.1</td>
</tr>
<tr>
<td valign="middle" align="center">SSD</td>
<td valign="top" align="center">VGG16</td>
<td valign="top" align="center">69.16%</td>
<td valign="top" align="center">97.11%</td>
<td valign="top" align="center">83.14%</td>
<td valign="top" align="center">23.7M</td>
<td valign="top" align="center">27.2</td>
</tr>
<tr>
<td valign="middle" align="center">YOLOv3</td>
<td valign="top" align="center">Darknet53</td>
<td valign="top" align="center">82.82%</td>
<td valign="top" align="center">96.99%</td>
<td valign="top" align="center">89.90%</td>
<td valign="top" align="center">61.5M</td>
<td valign="top" align="center">62.7</td>
</tr>
<tr>
<td valign="middle" align="center">YOLOv4</td>
<td valign="middle" align="center">CSPDarknet53</td>
<td valign="middle" align="center">81.60%</td>
<td valign="middle" align="center">97.36%</td>
<td valign="middle" align="center">89.48%</td>
<td valign="middle" align="center">63.9M</td>
<td valign="top" align="center">40.3</td>
</tr>
<tr>
<td valign="middle" align="center">CenterNet</td>
<td valign="top" align="center">Resnet50</td>
<td valign="top" align="center">80.79%</td>
<td valign="top" align="center">97.06%</td>
<td valign="top" align="center">88.93%</td>
<td valign="top" align="center">32.7M</td>
<td valign="top" align="center">42.2</td>
</tr>
<tr>
<td valign="middle" align="center">YOLOX</td>
<td valign="top" align="center">CSPDarknet53</td>
<td valign="top" align="center">81.90%</td>
<td valign="top" align="center">90.88%</td>
<td valign="top" align="center">86.39%</td>
<td valign="top" align="center">54.2M</td>
<td valign="top" align="center">32.1</td>
</tr>
<tr>
<td valign="middle" align="center">YOLOv7</td>
<td valign="top" align="center">E-ELAN</td>
<td valign="top" align="center">84.20%</td>
<td valign="top" align="center">98.80%</td>
<td valign="top" align="center">91.50%</td>
<td valign="top" align="center">36.5M</td>
<td valign="top" align="center">21.1</td>
</tr>
<tr>
<td valign="middle" align="center">WeedNet-R</td>
<td valign="middle" align="center">Resnet50</td>
<td valign="middle" align="center">85.70%</td>
<td valign="middle" align="center">98.89%</td>
<td valign="middle" align="center">92.30%</td>
<td valign="middle" align="center">38.0M</td>
<td valign="middle" align="center">52.8</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5_2">
<label>5.2</label>
<title>Ablation experiment results</title>
<p>As indicated in <xref ref-type="table" rid="T5"><bold>Table&#xa0;5</bold></xref>, a number of ablation experiments were conducted to determine the efficacy of each modified module. According to the findings of the ablation experiments, the addition of context module&#xd7;5 and context module&#xd7;3 to RetinaNet enhances its <italic>mAP</italic> by 2.17 and 1.99 percentage points, respectively. Combinations of context module&#xd7;5 and untuned warmup that are added to RetinaNet increase its <italic>mAP</italic> metrics by 4.41%. Adding context module&#xd7;3 and untuned exponential warmup learning rate adjustment approach to RetinaNet results in WeedNet-R, which achieves the maximum <italic>mAP</italic> value of 92.30%. Specifically, its <italic>AP</italic> scores for weed detection are improved by 8.01% to 85.70%. In conclusion, adding three context modules or five context modules is effective, although the trick with three context modules yields slightly higher detection accuracy with fewer parameters.</p>
<table-wrap id="T5" position="float">
<label>Table&#xa0;5</label>
<caption>
<p>Ablation experiments results.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" rowspan="2" align="center"/>
<th valign="top" colspan="5" align="center">performance(%)</th>
</tr>
<tr>
<th valign="top" colspan="4" align="center">RetinaNet</th>
<th valign="top" align="center">WeedNet-R (ours)</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="center">+context module &#xd7;5</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x221a;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x221a;</td>
<td valign="top" align="center">&#x2013;</td>
</tr>
<tr>
<td valign="top" align="center">+context module &#xd7;3</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x221a;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x221a;</td>
</tr>
<tr>
<td valign="top" align="center">+untuned warmup</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x2013;</td>
<td valign="top" align="center">&#x221a;</td>
<td valign="top" align="center">&#x221a;</td>
</tr>
<tr>
<td valign="top" align="center">weed <italic>AP</italic>
</td>
<td valign="top" align="center">77.69</td>
<td valign="top" align="center">81.40</td>
<td valign="top" align="center">81.14</td>
<td valign="top" align="center">85.19</td>
<td valign="top" align="center">85.70</td>
</tr>
<tr>
<td valign="top" align="center">sugar beet <italic>AP</italic>
</td>
<td valign="top" align="center">97.61</td>
<td valign="top" align="center">98.24</td>
<td valign="top" align="center">98.15</td>
<td valign="top" align="center">98.94</td>
<td valign="top" align="center">98.89</td>
</tr>
<tr>
<td valign="top" align="center"><italic>mAP</italic>
</td>
<td valign="top" align="center">87.65</td>
<td valign="top" align="center">89.82</td>
<td valign="top" align="center">89.64</td>
<td valign="top" align="center">92.06</td>
<td valign="top" align="center">92.30</td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<fn>
<p>context module&#xd7;5: Add a context module after each of the P3~P7 layers of the FPN network output. context module&#xd7;3: Add a context module after each of the P3~P5 layers of the FPN network output. untuned warmup: Set untuned exponential warmup schedule during model training.  &#x201c;-&#x201d; indicates that the method does not contain the corresponding module, and &#x201c;&#x221a;&#x201d; indicates that the method contains the corresponding module.</p>
</fn>
</table-wrap-foot>
</table-wrap>
</sec>
<sec id="s5_3">
<label>5.3</label>
<title>Visualization</title>
<p>This section validates the usefulness of WeedNet-R for real input images by conducting visualization experiments and an analysis of the test dataset. As depicted in <xref ref-type="fig" rid="f8"><bold>Figures&#xa0;8A&#x2013;I</bold></xref><bold>)</bold> are the prediction results of the experimental models for three representative images from the test dataset with varying background complexity, and <xref ref-type="fig" rid="f8"><bold>Figure&#xa0;8J</bold></xref> is the ground truth. The complexity of the backdrop and the number of objects in the three selected images increase from left to right in order to evaluate the performance of various algorithms under varying scenarios. As shown in <xref ref-type="fig" rid="f8"><bold>Figures&#xa0;8A, B</bold></xref><bold>)</bold>, compared to RetinaNet, the proposed method provides more accurate prediction results, greater confidence in the classification of the items within the predicted bounding boxes, and more precise placements for the predicted bounding boxes. Compared to other sophisticated detection algorithms, sugar beet identification performance was comparable, with the exception of CenterNet, which made more incorrect predictions. For weed detection, Faster R-CNN suffers from a severe case of repeated prediction, and SSD is unsuitable for small objects. Both YOLOV3 and YOLOV4 have instances of missing marijuana detection. The CenterNet makes inaccurate predictions of weeds and has poor trust in the accuracy of its predictions. The recently popular YOLOX and YOLOv7 algorithms have a decent detection performance, yet there have been instances were weeds were not detected.</p>
<fig id="f8" position="float">
<label>Figure&#xa0;8</label>
<caption>
<p>Detection results of different models: <bold>(A)</bold> WeedNet-R, <bold>(B)</bold> RetinaNet, <bold>(C)</bold> Faster R-CNN, <bold>(D)</bold> SSD, <bold>(E)</bold> YOLOv3, <bold>(F)</bold> YOLOv4 <bold>(G)</bold> CenterNet, <bold>(H)</bold>YOLOX, <bold>(I)</bold> YOLOv7, <bold>(J)</bold> Ground-truth.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1226329-g008.tif"/>
</fig>
</sec>
<sec id="s5_4">
<label>5.4</label>
<title>Optimization for repeated prediction boxes</title>
<p>The prediction results before and after crop-first non-maximal suppression method are shown in Figures <xref ref-type="fig" rid="f9"><bold>Figures&#xa0;9A&#x2013;F</bold></xref>. (<xref ref-type="fig" rid="f9"><bold>Figure&#xa0;9A</bold></xref><bold>)</bold> illustrates a limited number of exceptions in prediction results, which produces repeated predicted bounding boxes for the same object under a confidence level of 0.5. This problem is mitigated by applying crop-first non-maximal suppression method as shown in <xref ref-type="fig" rid="f9"><bold>Figure&#xa0;9B</bold></xref><bold>)</bold>. Here, the <italic>IoU</italic> threshold for crop-first non-maximal suppression is set to 0.5. As demonstrated in <xref ref-type="table" rid="T6"><bold>Table&#xa0;6</bold></xref>, this strategy enhances weed detection precision by 0.2%, but has no influence on the detection accuracy and recall of sugar beet. Consequently, the crop-first non-maximal suppression method accomplishes the goal of eliminating duplicate anticipated bounding boxes and minimizing the possibility of false crop removal.</p>
<fig id="f9" position="float">
<label>Figure&#xa0;9</label>
<caption>
<p>Comparison of prediction results before and after crop-first non-maximal suppression method: <bold>(A-C)</bold> are before, <bold>(D-F)</bold> are after.</p>
</caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fpls-14-1226329-g009.tif"/>
</fig>
<table-wrap id="T6" position="float">
<label>Table&#xa0;6</label>
<caption>
<p>Comparison before and after using the crop-first non-maximal suppression method.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="middle" align="center"/>
<th valign="middle" colspan="2" align="center">weed</th>
<th valign="middle" colspan="2" align="center">sugar beet</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="middle" align="center"/>
<td valign="middle" align="center">precision</td>
<td valign="middle" align="center">recall</td>
<td valign="middle" align="center">precision</td>
<td valign="middle" align="center">recall</td>
</tr>
<tr>
<td valign="middle" align="center">before</td>
<td valign="middle" align="center">76.5%</td>
<td valign="middle" align="center">82.5%</td>
<td valign="middle" align="center">97.0%</td>
<td valign="middle" align="center">96.5%</td>
</tr>
<tr>
<td valign="middle" align="center">after</td>
<td valign="middle" align="center">76.7%</td>
<td valign="middle" align="center">81.9%</td>
<td valign="middle" align="center">97.0%</td>
<td valign="middle" align="center">96.5%</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5_5">
<label>5.5</label>
<title>Validation on other public weed dataset</title>
<p>To validate the effectiveness of our improved method, we conducted additional experiments using a another weed dataset (<xref ref-type="bibr" rid="B24">Ravirajsinh, 2020</xref>) containing while keeping the experimental configurations consistent. The results are presented in <xref ref-type="table" rid="T7"><bold>Table&#xa0;7</bold></xref>, showcasing the performance of our proposed approach on publicly available weed datasets. Notably, our WeedNet-R model achieved an <italic>mAP</italic> metric of up to 85.26%. It is important to note that the improvements in detection performance of WeedNet-R, compared to the original RetinaNet, were relatively modest on this new weed dataset, with a increase of 0.57% in the <italic>mAP</italic> metric.</p>
<table-wrap id="T7" position="float">
<label>Table&#xa0;7</label>
<caption>
<p>Comparison between the RetinaNet and WeedNet-R on anther public weed dataset.</p>
</caption>
<table frame="hsides">
<thead>
<tr>
<th valign="top" align="center">method</th>
<th valign="top" align="center">weed <italic>AP</italic>(%)</th>
<th valign="top" align="center">sesame <italic>AP</italic>(%)</th>
<th valign="top" align="center"><italic>mAP</italic>(%)</th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="center">RetinaNet</td>
<td valign="top" align="center">86.21</td>
<td valign="top" align="center">83.16</td>
<td valign="top" align="center">84.69</td>
</tr>
<tr>
<td valign="top" align="center">WeedNet-R</td>
<td valign="top" align="center">86.91&#xa0;+&#xa0;<sup>0.70</sup>
</td>
<td valign="top" align="center">83.61&#xa0;+&#xa0;<sup>0.45</sup>
</td>
<td valign="top" align="center">85.26&#xa0;+&#xa0;<sup>0.57</sup>
</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5_6" sec-type="discussion">
<label>5.6</label>
<title>Discussion</title>
<p>Experiments comparing our proposed approach to other sophisticated object detection algorithms demonstrate that the suggested algorithm has the highest average precision of individual categories and the highest total <italic>mAP</italic> metrics, as well as the highest detection accuracy. Despite the fact that WeedNet-model R&#x2019;s parameters are greater than those of the original RetinaNet, the average detection time is shorter. This is due to the fact that the less precise RetinaNet generates more inaccurate predictions during detection, which increases the time required for post-processing actions such as non-maximal suppression. Ablation studies confirmed the efficacy of our enhancements to RetinaNet. Experiments indicate that the optimal detection performance is achieved by adding a context module after each of P3 to P5 of the FPN outputs and configuring an untuned exponential warmup schedule during model training. Adding a context module to each of the P3 to P5 levels of the FPN reduces several parameters of the model and somewhat increases model recognition accuracy compared to adding a context module to each layer of the FPN outputs. This may be because the P6-P7 layers of the FPN are part of the high-level feature maps, which include sufficient deep context information to identify huge objects.</p>
<p>In addition, under natural light, the colour, morphology, and texture of sugar beet plants (especially early sugar beet seedlings) closely resemble those of field weeds. This resemblance exacerbates the difficulty of differentiating weeds from crops and is the primary cause of the model&#x2019;s misclassification of identified objects. In reality, this frequently shows as misclassification of objects within the projected bounding boxes or the generation of several predictions for the same object. We presented a crop-first non-maximum suppression strategy for a problem involving repeated predicted bounding boxes for the same object. Objects projected to be both weed and crop repeatedly at the same location are classed as crop in order to reduce the chance of crops being removed in error.</p>
<p>The model we proposed demonstrates effective performance on other publicly available weed datasets, albeit with a relatively modest increase of 0.57% in the mean average precision (<italic>mAP</italic>) metric compared to the baseline. We attribute this outcome, at least in part, to the limited number of images available in evaluated dataset. Building a robust model with a small number of images poses significant challenges. The scarcity of large-scale publicly available weed datasets remains a common obstacle in the domain of weed detection utilizing deep learning approaches. To overcome this challenge, future endeavors should focus on the acquisition and curation of larger and more diverse weed datasets. Therefore, we have made our annotated weed dataset based on Sugarbeet2016 publicly available to support the research community and facilitate future advancements in this field. Our annotated dataset comprises 4,817 images and 18,768 annotations, making it one of the most extensive bounding box-based datasets for weed detection.</p>
</sec>
</sec>
<sec id="s6" sec-type="conclusion">
<label>6</label>
<title>Conclusion</title>
<p>Detecting and identifying weeds in the field is a crucial step in attaining autonomous weed management. While the remarkable resemblance in color, morphology, texture, and other features between weeds and crops in the field under natural lighting conditions increases the complexity of machine vision-based weed detection. Theoretical and methodological developments in deep learning have produced new tools for visual identification problems, such as weed detection. Due to the complexity of weed detection tasks in the field, deep learning-based approaches for weed detection continue to be of significant scientific relevance. In this research, we present an enhanced detection model, WeedNet-R, which is based on RetinaNet and has greater detection accuracy than the original model and other sophisticated object detectors. WeedNet-R has the highest <italic>mAP</italic> for weed detection in sugar beet fields at 92.30%.</p>
<p>In this study, we relate the lack of detection accuracy of the baseline model to the insufficient size of its effective receptive field. In order to increase the effective receptive field of the feature extraction layers, context modules are added to the neck structure of RetinaNet. During model training, an untuned exponential warmup schedule is implemented in order to improve the optimal solution search capability. The <italic>mAP</italic> of WeedNet-R proposed in this article was enhanced by 4.65% as compared to the original RetinaNet as a result of the aforementioned enhancements. With only a little improvement in model parameters, the accuracy of weed detection increased by 8.01% to 85.70%, and the accuracy of sugar beet plant recognition increased by 1.2% to 98.89%. In addition, the crop-first non-maximal suppression strategy we presented reduces the few occurrences in which the same object is predicted many times by the model. The detection performance of the proposed approach is superior to that of other algorithms in the SugarBeet2016 dataset, but there is still a little room for improvement in weed detection. Therefore, continuing to optimize the structure of our model is our future efforts. And because larger image dateset would be beneficial for training of convolutional neural networks, the model&#x2019;s performances may be further optimized by obtaining more weed images. In addition, the size of model&#x2019;s parameters is key to the performance of model forward inference. Perhaps it is well worth considering to boost the model&#x2019;s detection speed by refining the model&#x2019;s backbone or implementing an anchor-free strategy for boosting the model&#x2019;s detectionsssss speed. In conclusion, pursuing a more precise and faster weed identification model to deal with the complex farming environment will be the primary focus of our future work.</p>
</sec>
<sec id="s7" sec-type="data-availability">
<title>Data availability statement</title>
<p>The datasets presented in this study can be found in online repositories. The names of the repository/repositories and accession number(s) can be found in the article/<xref ref-type="supplementary-material" rid="SM1"><bold>Supplementary Material</bold></xref>.</p>
</sec>
<sec id="s8" sec-type="author-contributions">
<title>Author contributions</title>
<p>ZG: Software, Data curation, Resources, Visualization, Writing &#x2013; original draft, Writing &#x2013; review and editing. YL: Conceptualization, Methodology, Writing &#x2013; original draft, Writing &#x2013; review and editing. HG: Validation, Super-vision, Writing &#x2013; review and editing. XL: Validation Formal analysis, Investigation. MZ: Validation, Investigation, Visualization. All authors contributed to the article and approved the submitted version.</p>
</sec>
</body>
<back>
<sec id="s9" sec-type="funding-information">
<title>Funding</title>
<p>This work was supported by the National Natural Science Foundation of China (31760342), the Science and Technology Major Project of Guangxi, China (Gui Ke 2018-266-Z01), and the Middle-aged and Young Teachers&#x2019; Basic Ability Promotion Project of Guangxi (Grant No. 2021KY0015), Hubei Key Laboratory of Intelligent Robot (Grant No.HBIR202108).</p>
</sec>
<ack>
<title>Acknowledgments</title>
<p>We would like to thank the editor and reviewers for their valuable input, time, and suggestions to improve the quality of 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>
<sec id="s12" sec-type="supplementary-material">
<title>Supplementary material</title>
<p>The Supplementary Material for this article can be found online at: <ext-link ext-link-type="uri" xlink:href="https://www.frontiersin.org/articles/10.3389/fpls.2023.1226329/full#supplementary-material">https://www.frontiersin.org/articles/10.3389/fpls.2023.1226329/full#supplementary-material</ext-link>
</p>
<supplementary-material xlink:href="DataSheet_1.pdf" id="SM1" mimetype="application/pdf"/>
</sec>
<fn-group>
<fn id="fn1">
<label>1</label>
<p>Available at https://github.com/GOOJJJ/WeedNet-R/</p>
</fn>
</fn-group>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Badrinarayanan</surname> <given-names>V.</given-names>
</name>
<name>
<surname>Kendall</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Cipolla</surname> <given-names>R.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Segnet: a deep convolutional encoder-decoder architecture for image segmentation</article-title>. <source>IEEE Trans. Pattern Anal. Mach. Intell.</source>, <fpage>1</fpage>&#x2013;<lpage>1</lpage>. doi: <pub-id pub-id-type="doi">10.1109/TPAMI.2016.2644615</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>arXiv preprint arXiv</source> <volume>2004</volume>, <fpage>10934</fpage>. doi: <pub-id pub-id-type="doi">10.48550/arXiv.2004.10934</pub-id>
</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bosilj</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Aptoula</surname> <given-names>E.</given-names>
</name>
<name>
<surname>Duckett</surname> <given-names>T.</given-names>
</name>
<name>
<surname>Cielniak</surname> <given-names>G.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Transfer learning between crop types for semantic segmentation of crops versus weeds in precision agriculture</article-title>. <source>J. Field Robotics</source> <volume>37</volume>, <fpage>7</fpage>&#x2013;<lpage>19</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1002/rob.21869</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Champ</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Mora-Fallas</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Go&#xeb;au</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Mata-Montero</surname> <given-names>E.</given-names>
</name>
<name>
<surname>Bonnet</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Joly</surname> <given-names>A.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Instance segmentation for the fine detection of crop and weed plants by precision agricultural robots</article-title>. <source>Appl. Plant Sci.</source> <volume>8</volume>. doi:&#xa0;<pub-id pub-id-type="doi">10.1002/aps3.11373</pub-id>
</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chebrolu</surname> <given-names>N.</given-names>
</name>
<name>
<surname>Lottes</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Schaefer</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Winterhalter</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Burgard</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Stachniss</surname> <given-names>C.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Agricultural robot dataset for plant classification, localization and mapping on sugar beet fields</article-title>. <source>Int. J. Robotics Res.</source> <volume>36</volume>, <fpage>1045</fpage>&#x2013;<lpage>1052</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1177/0278364917720510</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Deng</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Guo</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Zhou</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Yu</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Kotsia</surname> <given-names>I.</given-names>
</name>
<name>
<surname>Zafeiriou</surname> <given-names>S.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>RetinaFace: single-stage dense face localisation in the wild</article-title>. <source>arXiv preprint arXiv</source> <volume>1905</volume>, <fpage>00641</fpage>. doi: <pub-id pub-id-type="doi">10.48550/arXiv.1905.00641</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dosovitskiy</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Beyer</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Kolesnikov</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Weissenborn</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Zhai</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Unterthiner</surname> <given-names>T.</given-names>
</name>
<etal/>
</person-group>. (<year>2021</year>). <article-title>An image is worth 16x16 words: transformers for image recognition at scale</article-title>. <source>arXiv preprint arXiv</source> <volume>2010</volume>, <fpage>11929</fpage>. Available at: <uri xlink:href="https://arxiv.org/abs/2010.11929">https://arxiv.org/abs/2010.11929</uri>.</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Espejo-Garcia</surname> <given-names>B.</given-names>
</name>
<name>
<surname>Mylonas</surname> <given-names>N.</given-names>
</name>
<name>
<surname>Athanasakos</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Fountas</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Vasilakoglou</surname> <given-names>I.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Towards weeds identification assistance through transfer learning</article-title>. <source>Comput. Electron. Agric.</source> <volume>171</volume>, <elocation-id>105306</elocation-id>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.compag.2020.105306</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Fawakherji</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Youssef</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Bloisi</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Pretto</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Nardi</surname> <given-names>D.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Crop and Weeds Classification for Precision Agriculture Using Context-Independent Pixel-Wise Segmentation. in 2019 Third IEEE International Conference on Robotic Computing (IRC) (Naples, Italy: IEEE)</article-title>, <fpage>146</fpage>&#x2013;<lpage>152</lpage>. doi: <pub-id pub-id-type="doi">10.1109/IRC.2019.00029</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gao</surname> <given-names>J.</given-names>
</name>
<name>
<surname>French</surname> <given-names>A. P.</given-names>
</name>
<name>
<surname>Pound</surname> <given-names>M. P.</given-names>
</name>
<name>
<surname>He</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Pieters</surname> <given-names>J. G.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Deep convolutional neural networks for image-based convolvulus sepium detection in sugar beet fields</article-title>. <source>Plant Methods</source> <volume>16</volume>. doi: <pub-id pub-id-type="doi">10.1186/s13007-020-00570-z</pub-id>
</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ge</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Liu</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>F.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Sun</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>YOLOX: exceeding YOLO series in 2021</article-title>. <source>arXiv preprint arXiv</source> <volume>2107</volume>, <fpage>08430</fpage>. doi: <pub-id pub-id-type="doi">10.48550/arXiv.2107.08430</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hu</surname> <given-names>K.</given-names>
</name>
<name>
<surname>Coleman</surname> <given-names>G.</given-names>
</name>
<name>
<surname>Zeng</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Walsh</surname> <given-names>M.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Graph weeds net: a graph-based deep learning method for weed recognition</article-title>. <source>Comput. Electron. Agric.</source> <volume>174</volume>, <elocation-id>105520</elocation-id>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.compag.2020.105520</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jiang</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Paterson</surname> <given-names>A. H.</given-names>
</name>
<name>
<surname>Robertson</surname> <given-names>J. S.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>DeepSeedling: deep convolutional network and kalman filter for plant seedling detection and counting in the field</article-title>. <source>Plant Methods</source> <volume>15</volume>, <fpage>141</fpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1186/s13007-019-0528-3</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jin</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Che</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>Y.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Weed identification using deep learning and image processing in vegetable plantation</article-title>. <source>IEEE Access</source> <volume>9</volume>, <fpage>10940</fpage>&#x2013;<lpage>10950</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/ACCESS.2021.3050296</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Guo</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Shuang</surname> <given-names>F.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>X.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Key technologies of machine vision for weeding robots: a review and benchmark</article-title>. <source>Comput. Electron. Agric.</source> <volume>196</volume>, <elocation-id>106880</elocation-id>. doi:&#xa0;<pub-id pub-id-type="doi">10.1016/j.compag.2022.106880</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>Dollar</surname> <given-names>P.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Focal loss for dense object detection</article-title>. <source>IEEE Trans. Pattern Anal. Mach. Intell.</source> <volume>42</volume>, <fpage>318</fpage>&#x2013;<lpage>327</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/TPAMI.2018.2858826</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liu</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Anguelov</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Erhan</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Szegedy</surname> <given-names>C.</given-names>
</name>
<name>
<surname>Reed</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Fu</surname> <given-names>C. Y.</given-names>
</name>
<etal/>
</person-group>. (<year>2016</year>). <article-title>SSD: Single Shot MultiBox Detector</article-title>.<source> arXiv:1512.02325 [cs]</source> <volume>9905</volume>, <fpage>21</fpage>&#x2013;<lpage>37</lpage>. doi: <pub-id pub-id-type="doi">10.1007/978-3-319-46448-0_2</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Liu</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Jiang</surname> <given-names>H.</given-names>
</name>
<name>
<surname>He</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Liu</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Gao</surname> <given-names>J.</given-names>
</name>
<etal/>
</person-group>. (<year>2020</year>). &#x201c;<article-title>On the variance of the adaptive learning rate and beyond</article-title>,&#x201d; in <conf-name>Proceedings of the Eighth International Conference on Learning Representations (ICLR 2020)</conf-name>.</citation>
</ref>
<ref id="B19">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Liu</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Lin</surname> <given-names>Y.</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>Wei</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Zhang</surname></name>
<etal/>
</person-group>. (<year>2021</year>). &#x201c;<article-title>Swin transformer: hierarchical vision transformer using shifted windows</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE/CVF international conference on computer vision</conf-name>. <fpage>10012</fpage>&#x2013;<lpage>10022</lpage>.</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lottes</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Hrferlin</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Sander</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Stachniss</surname> <given-names>C.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Effective vision-based classification for separating sugar beets and weeds for precision farming</article-title>. <source>J. Field Robotics</source> <volume>34</volume>. doi: <pub-id pub-id-type="doi">10.1002/rob.21675</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ma</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Yarats</surname> <given-names>D.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>On the adequacy of untuned warmup for adaptive optimization</article-title>. <source>arXiv preprint arXiv</source> <volume>1910</volume>, <fpage>04209</fpage>. doi: <pub-id pub-id-type="doi">10.1609/aaai.v35i10.17069</pub-id>
</citation>
</ref>
<ref id="B22">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Najibi</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Samangouei</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Chellappa</surname> <given-names>R.</given-names>
</name>
<name>
<surname>Davis</surname> <given-names>L. S.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Ssh: single stage headless face detector</article-title>,&#x201d; in <conf-name>Proceedings of the IEEE international conference on computer vision</conf-name>. <fpage>4875</fpage>&#x2013;<lpage>4884</lpage>.</citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Olsen</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Konovalov</surname> <given-names>D. A.</given-names>
</name>
<name>
<surname>Philippa</surname> <given-names>B.</given-names>
</name>
<name>
<surname>Ridd</surname> <given-names>P.</given-names>
</name>
<name>
<surname>Wood</surname> <given-names>J. C.</given-names>
</name>
<name>
<surname>Johns</surname> <given-names>J.</given-names>
</name>
<etal/>
</person-group>. (<year>2019</year>). <article-title>DeepWeeds: a multiclass weed species image dataset for deep learning</article-title>. <source>Sci. Rep.</source> <volume>9</volume>, <fpage>2058</fpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1038/s41598-018-38343-3</pub-id>
</citation>
</ref>
<ref id="B24">
<citation citation-type="web">
<person-group person-group-type="author">
<name>
<surname>Ravirajsinh</surname> <given-names>D.</given-names>
</name>
</person-group> (<year>2020</year>) <source>Crop and weed detection data with bounding boxes</source>. Available at: <uri xlink:href="https://www.kaggle.com/datasets/ravirajsinh45/crop-and-weed-detection-data-with-bounding-boxes">https://www.kaggle.com/datasets/ravirajsinh45/crop-and-weed-detection-data-with-bounding-boxes</uri>.</citation>
</ref>
<ref id="B25">
<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>2018</year>). <article-title>YOLOv3: an incremental improvement</article-title>. <source>ArXiv Preprint ArXiv</source> <volume>1804</volume>, <fpage>02767</fpage>. doi: <pub-id pub-id-type="doi">10.48550/arXiv.1804.02767</pub-id>
</citation>
</ref>
<ref id="B26">
<citation citation-type="confproc">
<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>2017</year>). &#x201c;<article-title>Faster r-CNN: towards real-time object detection with region proposal networks</article-title>,&#x201d; in <conf-name>IEEE Transactions on Pattern Analysis and Machine Intelligence</conf-name>, Vol. <volume>39</volume>. <fpage>1137</fpage>&#x2013;<lpage>1149</lpage>.</citation>
</ref>
<ref id="B27">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Sa</surname> <given-names>I.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Popovic</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Khanna</surname> <given-names>R.</given-names>
</name>
<name>
<surname>Siegwart</surname> <given-names>R.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Weednet: dense semantic weed classification using multispectral images and mav for smart farming</article-title>,&#x201d; in <conf-name>IEEE Robotics and Automation Letters</conf-name>. <fpage>99</fpage>.</citation>
</ref>
<ref id="B28">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Tang</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Du</surname> <given-names>D. K.</given-names>
</name>
<name>
<surname>He</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Liu</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2018</year>). &#x201c;<article-title>Pyramidbox: a context-assisted single shot face detector</article-title>,&#x201d; in <conf-name>Proceedings of the European conference on computer vision (ECCV)</conf-name>. <fpage>797</fpage>&#x2013;<lpage>813</lpage>.</citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname> <given-names>A.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>A review on weed detection using ground-based machine vision and image processing techniques</article-title>. <source>Comput. Electron. Agric.</source> <volume>15</volume>. doi: <pub-id pub-id-type="doi">10.1016/j.compag.2019.02.005</pub-id>
</citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname> <given-names>C. Y.</given-names>
</name>
<name>
<surname>Bochkovskiy</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Liao</surname> <given-names>H. Y. M.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Yolov7: trainable bag-of-freebies sets new state-of-the-art for real-time object detectors</article-title>. <source>arXiv e-prints</source>. doi: <pub-id pub-id-type="doi">10.48550/arXiv.2207.02696</pub-id>
</citation>
</ref>
<ref id="B31">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname> <given-names>A.</given-names>
</name>
<name>
<surname>Xu</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Wei</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Cui</surname> <given-names>B.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Semantic segmentation of crop and weed using an encoder-decoder network and image enhancement method under uncontrolled outdoor illumination</article-title>. <source>IEEE Access</source> <volume>8</volume>, <fpage>81724</fpage>&#x2013;<lpage>81734</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1109/ACCESS.2020.2991354</pub-id>
</citation>
</ref>
<ref id="B32">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>F.</given-names>
</name>
<name>
<surname>Liu</surname> <given-names>S.</given-names>
</name>
<name>
<surname>Zhang</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Su</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Zhu</surname> <given-names>J.</given-names>
</name>
<etal/>
</person-group>. (<year>2022</year>a). <article-title>Dino: detr with improved denoising anchor boxes for end-to-end object detection</article-title>. <source>arXiv preprint arXiv</source> <volume>2203</volume>, <fpage>03605</fpage>. doi: <pub-id pub-id-type="doi">10.48550/arXiv.2203.03605</pub-id>
</citation>
</ref>
<ref id="B33">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname> <given-names>H.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>Z.</given-names>
</name>
<name>
<surname>Guo</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Ma</surname> <given-names>Y.</given-names>
</name>
<name>
<surname>Cao</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Chen</surname> <given-names>D.</given-names>
</name>
<etal/>
</person-group>. (<year>2022</year>b). <article-title>Weed detection in peanut fields based on machine vision</article-title>. <source>Agriculture</source> <volume>12</volume> (<issue>10</issue>), <fpage>1541</fpage>. doi: <pub-id pub-id-type="doi">10.3390/agriculture12101541</pub-id>
</citation>
</ref>
<ref id="B34">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhou</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>D.</given-names>
</name>
<name>
<surname>Krhenb&#xfc;hl</surname> <given-names>P.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Objects as points</article-title>. <source>ArXiv Preprint ArXiv</source> <volume>1904</volume>, <fpage>07850</fpage>. doi: <pub-id pub-id-type="doi">10.48550/arXiv.1904.07850</pub-id>
</citation>
</ref>
<ref id="B35">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhu</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Su</surname> <given-names>W.</given-names>
</name>
<name>
<surname>Lu</surname> <given-names>L.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>B.</given-names>
</name>
<name>
<surname>Wang</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Dai</surname> <given-names>J.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Deformable detr: deformable transformers for end-to-end object detection</article-title>. <source>arXiv preprint arXiv</source> <volume>2010</volume>, <fpage>04159</fpage>. doi: <pub-id pub-id-type="doi">10.48550/arXiv.2010.04159</pub-id>
</citation>
</ref>
<ref id="B36">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhuang</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Li</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Bagavathiannan</surname> <given-names>M.</given-names>
</name>
<name>
<surname>Jin</surname> <given-names>X.</given-names>
</name>
<name>
<surname>Yang</surname> <given-names>J.</given-names>
</name>
<name>
<surname>Meng</surname> <given-names>W.</given-names>
</name>
<etal/>
</person-group>. (<year>2022</year>). <article-title>Evaluation of different deep convolutional neural networks for detection of broadleaf weed seedlings in wheat</article-title>. <source>Pest Manage. Sci.</source> <volume>78</volume>, <fpage>521</fpage>&#x2013;<lpage>529</lpage>. doi:&#xa0;<pub-id pub-id-type="doi">10.1002/ps.6656</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>
