Maize tassel detection from UAV imagery using deep learning
Shi, Yeyin et al. (2021), Maize tassel detection from UAV imagery using deep learning, Dryad, Dataset, https://doi.org/10.5061/dryad.r2280gbcg
Dataset associated with paper titled "Maize Tassel Detection from UAV Imagery Using Deep Learning" published on the journal of Frontiers in Robotics and AI (DOI: 10.3389/frobt.2021.600410).
The timing of flowering plays a critical role in determining the productivity of agricultural crops. If the crops flower too early, the crop would mature before the end of the growing season, losing the opportunity to capture and use large amounts of light energy. If the crops flower too late, the crop may be killed by the change of seasons before it is ready to harvest. Maize flowering is one of the most important periods where even small amounts of stress can significantly alter yield. In this work, we developed and compared two methods for automatic tassel detection based on the imagery collected from an unmanned aerial vehicle, using deep learning models. The first approach was a customized framework for tassel detection based on convolutional neural network (TD-CNN). The other method was a state-of-the-art object detection technique of the faster region-based CNN (Faster R-CNN), serving as baseline detection accuracy. The evaluation criteria for tassel detection were customized to correctly reflect the needs of tassel detection in an agricultural setting. Although detecting thin tassels in the aerial imagery is challenging, our results showed promising accuracy: the TD-CNN had an F1 score of 95.9% and the Faster R-CNN had 97.9% F1 score. More CNN-based model structures can be investigated in the future for improved accuracy, speed, and generalizability on aerial-based tassel detection.
The dataset including raw images and labelled images are here. The code are available on Dr. Aziza Alzadjali's GitHub account "azizanajeeb" (github.com).
The aerial RGB imagery was collected by a UAV (DJI Phantom 3 Pro) over a maize breeding field located in Mead, Nebraska, in late July, 2017. The UAV was flying at a low altitude (20 m AGL). The field has a large number of different varieties. Some of them were flowering/tasseling.
The maize tassels were later labelled and used to train CNN models to automatically detect the tassels.
There are three folders when you download and unzip the file here named "Maize_Tassels_Recognition.zip":
In the 1_ReadMe filder, there is a "readme.txt" file with brief descriptions for the labels in the folder 3_Labels_for_CNN:
a) xml files are annotated images used to generate the labels, they are used as an input to xml_to_csv.py script which is going to generate a csv file.
b) The generated csv file is used as an input to generate the tfrecord files using the generate_tfrecord.py script as shown in below example:
# Create train data: python generate_tfrecord.py --csv_input='path to csv file’ --output_path=’path to output tfrecord file’
University of Nebraska-Lincoln, Award: A-0000000325
U.S. Department of Agriculture, Award: 1011130