COTTON YIELD ESTIMATION USING VERY HIGH-RESOLUTION DIGITAL IMAGES ACQUIRED WITH A LOW-COST SMALL UNMANNED AERIAL VEHICLE

Yield estimation is a critical task in crop management. Traditional methods are costly, time-consuming, and difficult to expand to a relatively large field. Remote sensing can provide quick coverage over a field at any scale. Satellite remote sensing is used for large-scale earth observation. Remote sensing with manned airplanes at relatively high altitudes (>500 m) has difficulty achieving the spatial resolution required for field-scale precision farming. Ground-based systems are typically used for point measurements and are restricted to field conditions. Unmanned aerial vehicles (UAVs) provide a unique platform for high-resolution remote sensing, and UAV-based remote sensing systems can be used to estimate crop yield in a cost-effective manner. The objective of this study was to develop and evaluate new methods for estimation of cotton yield for precision cotton farming. Experimental plots were laid out in a cotton field near Stoneville, Mississippi, in 2014. Nitrogen fertilizer was applied to the plots at five different rates to generate cotton yield variation. Two methods were employed to estimate cotton yield using very high-resolution digital images (2.7 cm pixel-1) acquired from an inexpensive small multirotor UAV: (1) using three-dimensional point cloud data derived from multiple digital images of the cotton field to estimate cotton plant height and hence estimate yield, and (2) segmenting cotton boll signatures from the background of the digital images of the defoliated cotton field just prior to harvest and then estimating yield with the estimated cotton plot unit coverage. The results indicated that low-altitude remote sensing with an inexpensive small UAV can be used to estimate cotton yield accurately through estimation of plant height (R2 = 0.43, compared with R2 = 0.42 for yield estimation through manually measured plant height). The results further indicated that the method can offer reliable cotton yield estimation through estimation of cotton boll coverage in each plot with Laplacian image processing while considering a few plots with poor light condition as outliers (R2 = 0.83). This study could benefit yield estimation of cotton, with similar methods used for other crops, in agricultural research and crop production.

ccurate estimation or prediction of cotton yield is important because cotton yield is the result of cotton growth and production management and is a performance measurement of various management schemes. Typically, yield estimation is conducted by counting bolls, which is tedious and may mislead without considering other factors that may influence final yield (Dodds, 2009). Moreover, farmers are often interested in estimating cotton yield in the field before the cotton is picked. However, such estimation before harvest is mostly based on farmers' visual inspection and prior experience without scientific basis, so the estimate could be different from the actual yield.
Remote sensing provides techniques to monitor cotton growth and estimate cotton yield rapidly with coverage of fields and areas at different scales (Huang and Thomson, 2015). Leon et al. (2003) established a grid coordinate system to sample cotton fields to determine the relationship between spectral radiance, soil parameters, and cotton yield using aerial multispectral imagery. In their study, stepwise regression was performed on the green, red, and near-infrared (NIR) bands and the vegetation indices generated from the bands to select the best combinations of spectral variables with the cotton plant's height and yield. Zarco-Tejada et al. (2005) acquired airborne hyperspectral imagery to extract cotton canopy structure indices to relate them to cotton plant leaf area index (LAI) and cotton yield. In the field, Ansari et al. (1999) predicted the yield of cotton species (American and Desi cotton) under different nitrogen treatments based on the integrated radiance ratio and normalized difference vegetation index (NDVI) derived from radiance measure-ments of the cotton canopy using a handheld multiband spectroradiometer. Read et al. (2004) found that cotton plant height, LAI, and lint yield were closely associated with the NIR band and NDVI values from spectral measurements using either an aircraft or a handheld spectroradiometer during the peak bloom stage of the cotton plants.
An unmanned aerial vehicle (UAV) is a unique platform for crop field remote sensing between regular airborne remote sensing and ground-based proximal remote sensing. UAV-based remote sensing inherits state-of-the-art remote sensing technology and adds values to precision crop management with ultra-high spatial resolution imagery (a few centimeters per pixel), acquired during flight at ultra-low altitudes (lower than 100 m) under clouds without being restricted by field conditions, and three-dimensional (3D) ground surface feature reconstruction through stereo vision. UAV-based remote sensing has been developed, especially in recent years, for crop production monitoring (Huang et al., 2013). UAV-based plant height estimation has been attempted from crop surface models built from point cloud data over a field of barley (Bendig et al., 2014(Bendig et al., , 2015. The objective of this study was to develop new methods for cotton yield estimation based on analysis of high-resolution digital imagery and 3D point cloud data acquired with a lowcost small UAV over a cotton field. The results of this study provide an innovative approach to using remote sensing with inexpensive small UAVs for estimation of cotton yield for precision agriculture.

STUDY FIELD AND TREATMENTS
A 6 ha cotton field, shown in figure 1, was selected as the study area. The field is located on a research farm of the USDA-ARS Crop Production Systems Research Unit at Stoneville, Mississippi (33° 26′ 30.86″ N, 90° 53′ 26.60″ W). A total of 39 experimental plots were laid out in the field; however, with consideration of soil property variation across the field, only 20 plots (outlined in red in fig. 1) were selected for this study. These plots were 48.8 m long × 23.2 m wide. Each plot contained 24 rows. The plots were divided into two blocks. A randomized complete block design with two additional replicates in each block was used, with five nitrogen fertilizer application rates (0, 56, 112, 168, and 224 kg ha -1 ) as treatments. A cotton cultivar (FM1944GLB2) was planted on April 21, 2014. Nitrogen fertilizer at the designated rate was applied as a urea-ammonium nitrate solution (N-sol, 32%) to each plot with a side knife drill at 57 days after planting (DAP). During the growing season, the cotton was irrigated using a center-pivot irrigation system. The irrigation events were scheduled based on the soil moisture content, as measured using soil moisture sensors. The cotton field was defoliated on September 8, 2014. The cotton in the plots was machine-harvested with a spindle-type picker on October 1, 2014. Seed cotton in the central 16 rows of each plot from the 20 plots under study was weighed using a load cellequipped boll buggy for yield estimation. Seed cotton samples were collected from each studied plot and ginned at the USDA-ARS Cotton Ginning Research Unit at Stoneville, Mississippi. The cotton lint yield of each plot was determined.

UAV IMAGING SYSTEM AND IMAGE ACQUISITION
Color images over the cotton field were captured on August 28, 2014, at the open bolls growth stage and on October 1, 2014, right before harvest operations. A customized RTF X8 octocopter (3D Robotics, Berkeley, Cal.) was used for image acquisition at 11:00 a.m. on both days. This inexpensive octocopter is a small UAV that can fly for 15 min with a payload limit of 800 g. When equipped with the Pixhawk autopilot system (3D Robotics, Berkeley, Cal.), the octocopter was fully autonomous in flight. A 10 MP camera (Hero3+, GoPro, Inc., San Mateo, Cal.) mounted on the Tarot T-2D brushless gimbal attached to the octocopter was triggered automatically through the autopilot with mission planning to capture high-resolution digital still photos or video through a wide-angle lens. To minimize geometric distortion of the images over the field, we replaced the original lens of the GoPro camera with a 2.97 mm f4.0 non-distortion lens. The lens has a 95° of angle of view (AOV), which can provide 3 cm pixel -1 ground spatial resolution at a flight altitude of 50 m. The total cost of the UAV imaging system was less than $1500.

YIELD ESTIMATION BASED ON PLANT HEIGHT ESTIMATION
On August 28, 2014, color images over the cotton field were acquired using the GoPro camera on the X8 octocopter flying over the field at an altitude of 45 m, for a ground spatial resolution of 2.7 cm pixel -1 . During image acquisition, the camera maintained a nadir view of the field. This allowed images of each region of the field to be captured at multiple viewing angles in each pass. All the acquired images were geo-tagged with the coordinates from the onboard GPS module. Of the geo-tagged images, 176 were selected by removing images acquired during UAV turning and over areas outside the cotton field. These selected images were then mosaicked into a single image of the entire field. The GPS coordinates for geo-tagging the images were used to develop a metric reconstruction representing the surface elevation of the field. This reconstruction was in the form of a 3D RGB point cloud. Figure 1 shows an orthographic view of the RGB point cloud. With the point cloud data around the areas of cotton canopy, the base plane of the field was interpolated. Subtraction of the base plane point data from the surface point data thus provided an approximation of cotton plant height, which is an important biophysical indicator of cotton yield. On the same day of aerial imaging, cotton plant heights were ruler-measured in all plots. The ruler-measured plant heights provided ground truth data, and the lint yield data were used for validation of the yield estimation from the UAV-based data.
The method for height extraction involves modeling the terrain elevation and then subtracting the terrain elevation from the surface elevation, which is generated from the field RGB point cloud with surface features. Terrain elevation modeling involves identifying terrain points in the RGB point cloud. Terrain points can be identified starting with the points that have RGB values associated with the soil surrounding the cotton plots in the point cloud. These surrounding soil points (S) can therefore be extracted with an RGB threshold operation on the RGB point cloud, as shown in equation 1: The resulting terrain point cloud (T) could then be used for full terrain elevation modeling. In equation 1, t R , t G , and t B are the threshold values of the red, green, and blue channels, respectively, of the point cloud that separate terrain points from non-terrain points, and ∅ denotes an empty set in which the operation removes points that do not pass the threshold test for soil. The resulting terrain points are shown in figure 2. Figure 2 shows that the terrain points of the surrounding soil are distributed over the entire field around the areas of crop canopy. With these data, the terrain elevation under the canopy can be assumed to behave similarly to the terrain elevation next to the canopy. Therefore, the full terrain elevation model can be estimated through an interpolation of the partial terrain elevation model. This interpolation results in an estimated full elevation model as the base plane of the entire field.
As shown in figure 2, the partial terrain elevation model contained significantly large open areas. The shape of the model also exhibited a slightly upward trend toward the cotton plot boundaries. This was due to color interpolation artifacts of the RGB point cloud at the plot boundaries. Higherorder spatial interpolation functions are sensitive to such trends, and undesired artifacts occur in an attempt to estimate points over large gaps of missing data. After linear interpolation, a Gaussian filter was used to filter Gaussian noise and step artifacts, resulting in the final full terrain elevation model.
The full surface elevation model was then sampled and estimated by nearest-neighbor interpolation of the field RGB point cloud using the same grid space as the full terrain elevation model had over the entire field. Nearest-neighbor interpolation was sufficient because it preserved the shape and boundaries of each plot in the full terrain elevation model. Finally, plant height was determined as the difference between the full surface elevation model and the full terrain elevation model. The plant height model is shown in figure 3.

YIELD ESTIMATION BASED ON COTTON BOLL PLOT COVER ESTIMATION
On October 1, 2014, after full defoliation, color images over the cotton field were acquired again using the GoPro camera on the X8 octocopter flying over the field at an altitude of 45 m for a ground spatial resolution of 2.7 cm pixel -1 with the same flight trajectory as August 28, 2014. The 172 acquired images were used for cotton yield estimation based on boll identification in the plots of the cotton field. Figure 4 shows the orthomosaic color image of the cotton field on October 1, 2014, right before harvesting.
To estimate the yield, the cotton signals have to be extracted accurately from the images. With the extracted cotton signals, the cotton boll plot coverage can be established, which is defined as the ratio of cotton unit coverage (CUC) in each plot: where NoCP is the number of cotton boll pixels in a plot, and NoPP is the number of pixels in the plot area. The following sections describe the challenges and solution for extracting cotton signals accurately from the images.

Color Intensity Thresholding and Analysis
A survey was conducted to ascertain the typical features of the defoliated cotton field. In this survey, images of the rows of a plot were taken. Figure 5 shows an image of a typical portion of a cotton plot. The cotton rows are separated by troughs, and dead leaves, resulting from the defoliation process, cover the soil surface. The leaves are densest directly beneath the cotton plants and in the inter-row troughs. The leaves also have a light brownish color with low color saturation and have the ability to facilitate specular reflectance. The dying stems and branches transition to a darker brown color. This is shown in the branches supporting the cotton bolls. The soil has a relatively light and neutral color.
Considering the features shown in figure 5, the aerial images of the cotton field were expected to have a cotton boll foreground and a soil and dead vegetation background. Healthy vegetation might exist sparingly in the form of weeds in localized regions. The features of the background vary considerably depending on the amount of dead leaves present and where they are collected. Some regions in the background may be composed mostly of dead leaves and be more brownish and darker than the cotton. Other regions of the background may be composed mostly of soil. These regions are relatively brighter than the regions dominated by dead leaves. However, they are not as bright as the neighboring cotton bolls. The regions around the center paths of the troughs are where the background elements were least occluded by the cotton boll foreground and are expected to be visible to the aerial camera.
The survey of the cotton field suggested that the cotton bolls after defoliation were uniquely brighter than the surrounding withered plants and soil. An assumption could then be made that cotton bolls have characteristically larger pixel intensity values than their surroundings in any given image of the field. Under this assumption, the cotton boll signals should be globally separable by some intensity values: t R , t G , and t B in the red, green, and blue image channels, respectively. Let the RGB image be represented as a function I: x, y ∈ Ω→R 3 , where Ω ⊂ R 2 . A cotton image mask M: I→[0,1]  could then be generated through a global RGB threshold operator, as in equation 3: The pixels that pass the threshold test for bolls are labeled with a value of 1, while other pixels are considered non-boll pixels and are labeled with a value of 0. Our study indicated that straight use of the global thresholding method could not accurately extract the cotton signals from the images ( fig. 6). With global thresholding, the assumption of the brightness or intensity level of the cotton bolls is not fully satisfied. The cotton boll pixels are not globally brighter than all of the background pixels in the masked images. The brightness of the cotton pixels varies throughout the field due to the angle of the light source, the position of the bolls, and the structure of the canopy. The range of image intensities in the red, green, and blue channels by which the cotton bolls vary overlaps that of the background. Choosing more liberal threshold values would correctly label darker cotton pixels at the cost of introducing false background clusters. More conservative threshold values would allow fewer false positives at the cost of removing significant amounts of darker cotton signals as false negatives. Uniquely distinguishing cotton bolls in the RGB color intensity space is therefore difficult. Other color spaces that are less sensitive to intensity exist, such as HSV (hue, saturation, and value), Lab, and YCbCr. These color spaces are commonly used in fruit and vegetation detection (Linker et al., 2012;Patel et al., 2012;Payne et al., 2013Payne et al., , 2014. The hue of the cotton is also not distinct from that of the background ( fig. 7a), and the cotton boll signals and soil background all have very low color saturation ( fig. 7b). The colors of the cotton and the background appear to be nearly neutral. The hue and saturation of the cotton are not unique compared to the background. In the saturation image ( fig. 7b), large regions of the background are very similar to the cotton signals. This shows that the distinction of cotton bolls in the image has a strong dependence on intensity.
The cotton plots were observed in the images with cotton bolls, defoliated stems and dead leaves, and soil with high reflection. Additionally, the lighting conditions of the plots varied significantly due to occlusion of sunlight caused by clouds or plot geometry. With some of the cotton bolls experiencing different light gradients and the presence of the soil background, extraction of unique cotton signals proved challenging in our preliminary analysis. The light gradients caused the cotton pixels to appear in a range of intensities. This range easily intersected the range of soil pixels. Therefore, direct use of the intensity thresholding method could not uniquely distinguish cotton pixels from soil pixels within a plot. Consequently, the CUCs of the plots generated with this method were not consistent enough to present a real correlation with cotton yield.

Laplacian Thresholding
Although the cotton boll signatures had a relatively large divergence in the presence of defoliated plants, we found that the divergence was much larger than that of the soil, which resulted in a relatively robust and unique feature regarding cotton bolls in the images. The cotton bolls were represented by relatively steep, narrow peaks in pixel intensity in the image plane, which was due to the cotton bolls being surrounded by defoliated plants. Therefore, cotton bolls generated relatively large divergences in pixel intensity gradients.
To extract the cotton signature pixels from each plot, a binary mask image was generated with the original image to identify the signatures of cotton bolls. A plot boundary mask was also generated to combine with the cotton boll signature mask for the plot. Once this was accomplished, a convex hull could be formed around the cotton boll signature pixels in the plot. With the results, the cotton boll signature pixels were counted for estimation of the CUC for the plot. Eventually, with the estimated CUCs for all plots under study, the cotton yield was estimated. Figure 8 shows the workflow for formation of the convex hull around the cotton boll signature pixels in a plot.
The Laplace operator, or Laplacian thresholding, is a differential operator based on the divergence of a gradient of a function in Euclidean space (Arfken, 2011, pp. 49-50). Our algorithm uses the Laplace operator to obtain the divergence of the gradient (spatial second derivative) of each image with respect to pixel intensity. Using this operator, Laplacian images were created for each plot and then thresheld for a certain level of divergence.
The cotton signatures were extracted from the spatial second derivative images of the original images. Although cotton was not observed in the image as globally brighter than the background, the cotton could be observed to be locally brighter than its surroundings. The cotton pixels caused large discontinuities in the intensity space. This could be observed in the Laplacian image of the intensity of the grayscale images, where only accelerated rates of change in intensity were observed. The discrete Laplacian image (L D ) of the grayscale image (I g ) is the sum of the partial second derivatives of I g with the Laplacian kernel (D 2 ) in respect to the coordinates of the field grid (x and y), as described by equation 4: where C and R are the column and row numbers, respectively, of the grayscale image. Equation 4 shows that the Laplace operator depends on the pixel neighborhood and is not dependent on a window, unlike other windowed texture operators used in the literature (Linker et al., 2012;Payne et al., 2014).
Because of the cotton pixels' relatively large intensity compared to the local background, it can be assumed that the cotton bolls have a characteristically large negative signature in L D . According to this assumption, a threshold operation on L D can be applied with a threshold value of t L to develop a mask M: L D →[0,1] for the cotton pixels. This threshold operation is shown in equation 5: The Laplace operator, being a second-derivative operator, is sensitive to noise. A bilateral filter was used to remove the noise while preserving the shapes and discontinuous relationships of the cotton signals. The Laplace operator was then applied to the image resulting from the bilateral filter.
The second-derivative images represented the concavity caused by the cotton signatures in the original images. The regions around the local minima and maxima therefore had positive and negative values, respectively. Because only the local maxima are of interest, it is convenient to negate the spatial second-derivative images. The absolute value of the image is governed by the rate at which the gradient of the intensity changes (i.e., the divergence of the intensity gradient). Because the cotton signatures cause relatively large divergences in the intensity, they could be extracted by thresholding for large positive values in the negative Laplacian image. Figure 9 illustrates thresholding of a negative Laplacian image alongside the original image, which indicates that, compared to direct intensity thresholding, the thresholding of the spatial second derivative could isolate the cotton boll signatures. The thresheld negative Laplacian image contains almost only cotton signatures with very few soil spots. Ad-ditionally, the inter-plot soil spots were also removed because they had lower divergence in image intensity. In this way, the extracted cotton signatures could be used to obtain accurate CUC values of each plot to dramatically improve the correlation with the yield. The mask M can be developed into a cotton yield measurement that represents the cotton bolls in a given plot of the field. This is accomplished by estimating the cotton pixel area density from the mask. This measurement is comparable to the cotton lint yield, as lint yield is a mass area density. The plot boundaries were detected by use of a bilateral filter on the grayscale image. The bilateral filter was designed to filter out inter-plot textures and preserve plot boundaries. A threshold operation was then used to separate plot pixels from the bright soil. The mask for an individual plot was combined with the cotton mask in order to develop a plotspecific cotton signal mask. The plot pixel area could then be taken as the pixel area of the plot mask, while the cotton signal pixel area was taken as the pixel area of the plot-specific cotton signal mask.

COMPUTING PROGRAMMING
The algorithms for estimating plant height and cotton boll distribution were programmed and implemented in the Python(x,y) programming environment (ver. 2.7.6.1; https://www.python.org/). Dronemapper.com provided the tools for generating the images of the geo-referenced orthomosaic, DEM (digital elevation model), DSM (digital surface model), NDVI, and point clouds. The estimated and ground-measured plant heights and the CUC were regressed to the lint yield, and the 5% probability level was used for the significance of the parameter estimation. Figure 10 shows the strong linear relationship between the estimated plant height and the field-measured plant height. In the data analysis, it was noted that the field-measured plant height was consistently higher than the estimated plant height using point cloud data from the UAV images, hereafter referred to as the PC-estimated plant height. This error could be partially due to the methods used to determine the plant height. As the plant height was measured in field using a ruler, the distance from the highest point of the plant canopy to the ground was measured and used as the plant height. However, the PC-estimated plant height was a measure of the optical energy contributed by the plant canopy to the entire plot. Therefore, the PC-estimated heights were lower than the ruler-measured values. Even so, the PC-estimated plant height could represent the ruler-measured plant height sufficiently well and be used to estimate cotton lint yield. Figure 11 shows the relationships between field rulermeasured and PC-estimated cotton plant heights and lint yield. The nonlinear relationship between ruler-measured cotton plant height and lint yield has been proven in recent years by the fact that cotton in the middle of the height range has higher yield compared to cotton with low and high plant heights. The relationship between PC-estimated plant height and lint yield confirms the nonlinear relationship between

Plant Height (cm)
Field Ruler-Measured PC-Estimated plant height and yield, with an R 2 value similar to that for the relationship between ruler-measured plant height and lint yield. This illustrates that the PC-estimated plant height can be a good surrogate for field-measured plant height for reliable cotton yield estimation in this scenario. Figure 12 shows the relationships between estimated CUC and measured lint yield using the methods of direct image pixel intensity thresholding and Laplace operator to obtain the divergence of the gradient (spatial second derivative) of image pixel intensity. The threshold intensity values in the red, green, and blue channels were 110, 120, and 130, respectively. The plots show a significant improvement in the linear relationship of CUC and lint yield when using the Laplacian method.

YIELD ESTIMATION BASED ON COTTON BOLL PLOT COVER ESTIMATION
On further inspection of the image histograms of the plots, three adjacent plots were found to have been imaged under poor illumination conditions. This was most likely due to cloud cover occluding the sunlight. Figure 13 shows the green band histograms of the three plots and that of a well illuminated plot. The well illuminated plot ( fig. 13a) has a positively skewed distribution; the positive tail of the distribution decreases in a more linear manner. The behavior of this curve can be explained by two major aspects of the cotton field. First, there was a relatively large global maximum below the intensity level of 100 and a narrow distribution around this maximum. This was due to the plots being mostly composed of dead vegetation and therefore having a relatively higher frequency around the darker gray levels.
The tail occurs at an intensity level of 125. This was due to the cotton boll and soil pixels present in the image. Shadowing can be observed in figure 13b as a higher peak in the first mode around darker intensity levels. It can also be observed in the more drastic decline of the second mode curve. A dark shift can be observed in figure 13c, indicating more extreme shadowing. Figure 13d shows a plot that was partially under shadow and partially under high illumination. This is shown by the widening of the histogram. The images of the three dark plots were considered outliers for CUC estimation. These outliers are from adjacent plots that had relatively poor illumination, probably due to cloud shadows. Consequently, the cotton signatures had insufficient contrast with the surrounding defoliated plants, so some of the signatures were lost in feature extraction and deviated from the population of designated cotton signatures. The three outliers include two with smaller deviations from the trend line and one with a larger deviation. The outlier with the smallest deviation represents the plot CUC estimated with images acquired while sunlight was hazed for some reason, e.g., shadowed by cloud. The outlier plots had a high frequency of exposed soil background points. Lack of light intensity reduced the contrast between the cotton signatures and these surrounding features. The CUCs of other plots with a similar frequency of exposed soil background points and relatively better lighting conditions correlated well with the rest of the yield data. The outlier with the second smallest deviation represents a plot that had relatively few areas of exposed soil background surface. However, the lighting conditions were worse than in the plot with the smallest deviation. Similarly, this caused the cotton signatures to have less contrast with the background. The largest outlier represents a plot that was located in an area where the sunlight was highly occluded. A significant portion of the cotton signatures was lost due to the relatively poor illumination.
The results of sequential residual t-tests for excluding the outliers are shown in table 1. In the t-tests, the poorly illuminated plot shown in figure 13c was removed first, followed by the plot shown in figure 13b, and finally the plot shown in figure 13d. Figure 14 shows the improved linear relationship between the estimated CUC and the measured lint yield using the Laplace operator after removing the outliers. Figure 15 shows the relationship between the estimated yield based on the estimated CUC and the measured lint yield. As the figure  shows, the estimated yield is very much unbiased with the measured lint yield along the 1:1 line, which indicates the success of our scheme to develop data processing algorithms for UAV digital images using stereo vision to estimate cotton yield.

CONCLUSION
This study showed that low-altitude remote sensing with a small UAV can be used for reliable cotton yield estimation based on estimation of plant height by manipulating 3D point cloud data. This study further indicated that low-altitude remote sensing using a small UAV can offer reliable cotton yield estimation based on estimation of cotton unit coverage (CUC) by Laplacian image processing and identification of plots with poor illumination. This study demonstrated the potential of a low-cost small UAV for low-altitude, high-resolution crop sensing in precision cotton farming.