Vision-based crop line tracking for harvesters

Abstract: A self-propelled harvester (10) is provided with apparatus for tracking a crop line (16) and steering the harvester along the crop line without operator assistance. The apparatus includes a video camera (30) for viewing the landscape in front of the harvester (10) and forming an image which may be electronically scanned line-by-line and pixel-by-pixel to produce a video signal containing information regarding the spectral characteristics of the image at each pixel. A microprocessor (42) is programmed to act as a discriminator and a segmenter. The discriminator generates from the information signals discriminant values d( i , j ) wherein i identifies the scan line and j is the relative position of a pixel on the scan line i . The segmenter determines a step function which best fits the discriminant values for each scan line i . The pixel position j n corresponding to the step of this step function is taken as a vote on the location of the crop line and thus a vote on the direction the harvester (10) should be steered. The votes are summed for each pixel position j over one full scan of the image. The summed votes are then normalized, time-weighted, and averaged with the normalized and time-weighted votes derived from previously scanned images to derive a steering command.

Description: The present invention relates to agricultural machines and more particularly to self-propelled crop harvesting machines which, as part of the harvesting process, cut the crop or the plants on which the crop was grown. The invention provides an automatic steering control capable of determining the crop line between cut and uncut crop and steering the harvesting machine along the crop line as it traverses a field. In recent years many of the functions of harvesting machines normally controlled manually by an operator have been automated. Audible and visual sensing by the operator have been replaced with optical, sonic, magnetic, radio frequency and other types of sensors. Microprocessors, operating in response to conditions sensed by the sensors, have replaced manual operator control of the mechanical functions. However, it is still necessary to have an operator for steering the harvester to move along a crop line. Human capability is a key limitation in the efficiency of harvesting. The harvester is operated most efficiently at maximum speed and with one end of the cutter mechanism slightly overlapping the crop line between cut and uncut crop. If there is no overlap, an uncut strip of crop is left in the field. On the other hand, if the overlap is too great the maximum width of crop is not cut. Currently available harvesters are operable at ground speeds of 6 up to 8 km/h and future harvesters are being designed for operation at higher speeds. Although an operator may easily steer a harvester along a crop line at speeds of 6 to 8 km/h, the constant attention required to accomplish this is extremely tiring and an operator can not maintain maximum harvesting efficiency at this speed for long periods of time. Thus efficiency of utilization of the harvester could be increased by providing a form of "cruise control" which automatically steers the harvester along a crop line at the maximum harvester speed, with operator intervention being required, at the most, only as the harvester approaches the end of a crop field. Apparatus that can be utilized for detecting the crop line can be divided into two categories: range-based methods which attempt to detect the height difference between the cut and uncut crop; and vision-based methods which attempt to detect appearance differences between the crop on the cut and uncut side of the crop line. Range-based methods can include a scanning laser range-finder, a laser light striper, a stereo camera system, and an optical flow method. Vision based methods can include a feature tracking technique and segmentation on the basis of texture, intensity, and colour. During development of the present invention consideration was given to a configuration utilizing a two-axis scanning laser range-finder. This sensor scans a laser beam over a scene and measures the time it takes for the reflected light to return to the sensor. The system returns depth information over a 360 degree azimuth and a 40 degree elevation field of view. The sensor makes about ten sweeps a second and thus takes roughly twenty seconds to generate a full 2048 by 200 range image. This scanner is capable of detecting height differences of only a few cm at a range of 20 meters, and in field tests, the height difference between the cut and uncut crop showed up quite clearly. The drawbacks for this system include slow cycle time, high cost and concerns about mechanical reliability. Another alternative system considered for evaluation was a laser light striping sensor. Light striping systems have two components: a light source, and a camera tuned to detect only the frequencies emitted by the light source. Typically, a laser beam is sent through a cylindrical lens which spreads the linear beam into a plane. This plane intersects the scene in an illuminated line. Distances to all the points on the line can then be estimated by triangulation. The light striper has no moving parts, requires only minimal computational power, and is potentially inexpensive. However, since harvesters function outdoors, a prohibitively powerful laser would be needed to gather range information at the necessary distance (around 5 meters) in order to avoid being washed out by sunlight. The light striper system also has the disadvantage that it returns only a linear array of depths, so that only one point along the cut line can be detected at a time. Stereo cameras provide another possible alternative range-based approach to detecting the crop cut line, based on another triangulation-based method. Depth information is obtained by viewing the same object from two or more different viewpoints simultaneously, as with the human vision system. In this application, extremely precise depth information is not needed. Therefore two camera systems with relatively small baselines (between 15 and 60 cm) were investigated. The Storm stereo algorithm, as defined in an article for the 1993 IEEE Conference on Computer Vision and Pattern Recognition, by Bill Ross, entitled "A Practical Stereo Vision System", was used to compute the correspondences. Although it was found that an alfalfa field contains sufficient texture to solve the correspondence problem, computational speed remains a major concern with stereo-based tracking. US-A-4,077,488 discloses a vision-based technique for steering an agricultural vehicle. Herein the field is scanned by the combination of a collimator and a rotating disk provided with a plurality of apertures. An optical band-pass filter allows light of a predetermined wavelength to reach the photosensor in the collimator. The passage of the disk apertures in front of the collimator generates a signal which is indicative of the distribution of more or less reflecting portions in the field. A proper choice of the filter enables to distinguish between reflections from the cut and uncut crop. The signal is transformed into a square wave wherein the zero crossings indicate the position of the edge of the uncut crop. The driving direction of the vehicle is adjusted to make the zero crossing, and hence the crop edge, shift to the middle of scanning window. This system scans the crop along only one line which crosses the crop edge, such that only one crossing point is taken into account. Accordingly, the system is very sensitive to disturbances following from irregular edge patterns, e.g. when the vehicle approaches spots where the crop yield is poor or where the crop is completely absent. An alternative vision-based technique is defined as a window-based feature tracking method, as described in a 1991 Carnegie-Mellon Technical Report published by C. Tomasi and T. Kanade, entitled "Detection and Tracking of Point Features". Starting with an image of the crop cut line, a set of small (approximately 20 x 30 pixel) windows which overlapped the cut line boundary were selected by hand. These windows were then input as features to the algorithm, and then tracked from one image to the next. In this manner, it was possible to track the crop line across a sequence of twenty images. However, this method still requires that the initial feature windows be chosen along the crop line. Yet another alternative method which was considered utilized a local 2-D Fourier transform operator as the basis for texture-based segmentation, as described in a 1994 article entitled "Segmenting textured 3D surfaces using the space/frequency representation" in Spatial Vision, Volume 8, No. 2. The intent of this method was to locate a spatial frequency band with a substantial difference between the cut and uncut crop. Unfortunately, however, preliminary testing failed to show any clear evidence of such an indicator. A visual examination of some crop line images showed that portions of the image containing uncut crop were substantially darker and a slightly different hue than the portions containing uncut crop. Of the two, the colour difference is generally more pronounced, which is largely due to the exclusive presence of a leaf canopy on the uncut side of the crop line. Due to the consistency of this colour effect, the relative robustness of the sensor, and the lower sensor cost, a vision-based system using colour segmentation techniques presented the most promising method to pursue for cut line tracking. Vision-based guidance of agricultural vehicles is not a new idea, and others have investigated the perception problem which is involved. For instance, J. F. Reid and S. W. Searcy, in an article for the ASAE in Nov/Dec, 1988, entitled "An Algorithm for Separating Guidance Information from Row Crop Images", describe a method of segmenting several different crop canopies from soil by intensity thresholding. They do not, however, actually use the algorithm to guide a vehicle. M. Hayashi and Y. Fujii, in an article for the USA-Japan Symposium on Flexible Automation entitled "Automatic Lawn Mower Guidance Using a Vision System", have used smoothing, edge detection and a Hough transform to guide a lawn mower along a cut/uncut boundary. Their algorithm only finds straight boundaries, however, and they give no mention of the speed at which they are able to accomplish this task. Gerhard Jahns presents a review of automatic guidance techniques for agricultural vehicles in a 1983 ASAE paper entitled "Automatic Guidance in Agriculture: A Review". DE-A-35 07 570 discloses an automatic steering system for an agricultural vehicle which has to be driven along or through a field of crop grown in rows. The system derives the orientation of the plant rows from an initial image. Then, this image is scanned along lines which are parallel to the derived orientation and the mean gray values per line are stored in a memory. During field travel the field is scanned along the same lines. The scan results per line are compared to the values in the memory and a shift between the actual values and the reference values is compensated by steering the vehicle to the left or the right. Such system is specially designed for crops grown in straight rows, but is not very effective when a crop edge, or even worse, a curved crop edge should be followed. To applicants' knowledge, the work described hereafter is the only system which has ever been successfully used to guide a harvesting machine. It is an object of the present invention is to provide a vision-based method and apparatus for automatically steering a self-propelled harvester along a crop line. According to one aspect of the present invention there is provided a method of steering an agricultural harvester along a crop line, the harvester having control means for steering wheels to thereby steer the harvester, said method comprising: a) mounting on said harvester a viewing means oriented to view and form an image of a landscape, including a crop line, in front of the harvester; and b) scanning at least a window of the image line-by-line and pixel-by-pixel to produce information signals representative of said image; said method being characterized by the further steps of: c) deriving, from the information signals of each scan line i , a plurality of discriminant function values d( i,j ) wherein i identifies the scan line and j the relative position of a pixel on said scan line i ; d) determining, for each scan line i , a pixel position j n representing the pixel position j of a step in a step function which best fits the discriminant function values d( i,j ) generated for the scan line i ; e) developing for each pixel position j a sum of the number of times the step position j n occurs at that pixel position j during a complete scan of the window in order to develop, for that window, vote counts indicating steering direction preferences; f) applying to the control means a steering signal determined from the developed vote counts. According to another aspect of the present invention there is provided a self-propelled agricultural harvester (10), comprising: a viewing means (30) mounted on the harvester (10) and oriented to view and form images of a landscape, including a crop line (16) in front of the harvester, the viewing means (30) having associated therewith a scanning means for scanning at least a window of an image line-by-line and pixel-by-pixel to produce information signals representing said window; and control means (40, 50, 46 ,48) for steering wheels (22, 24) to thereby steer the harvester (10) in response to said information signals; said harvester being characterized in that it further comprises: first means (42) for generating, from the information signals of each scan line i , a plurality of discriminant function values d( i,j ), wherein i identifies the scan line and j the relative position of a pixel on said scan line i ; second means (42), responsive to said first means, for determining, for each scan line, a pixel position j n representing the pixel position j of a step in the step function which best fits the discriminant function values d( i,j ) generated for said scan line i ; a plurality of counters, there being at least one counter corresponding to each pixel position j of the window, said counters being responsive to said second means (42) for accumulating the number of times said step position j n occurs at said pixel position j during a complete scan of the window, in order to develop therefrom vote counts indicating steering direction preferences; and third means (42), responsive to said vote counts, for applying to the control means (40, 50, 46 ,48) a steering signal determined from the vote counts. In this apparatus and method the best fitting step function may be determined from calculations using the least-squared error criterion. When recursive methods are used for calculation of the best fitting step function, calculation time may be reduced substantially. The vote counts may be normalized by dividing the developed sums by the number of scan lines. Steering reliability is enhanced by deriving steering preferences from a plurality of images. The steering signal then may be derived from averaged vote counts. The counts may have been time-weighted so that vote counts produced for more recent images have greater weight in determining the steering signal. Adjacent pixel locations can be assigned to bins, corresponding to distinct wheel positions, and the vote counts may be developed from the number of times the step position j n occurs at a pixel position assigned to a bin. The discriminant function may be percent intensity of a single spectral band or the intensity ratio between two spectral bands. The viewing means may comprise a colour video camera or a black-and-white camera having one or more associated band pass filters. The invention will now be described in greater detail, with reference to the accompanying drawings in which: Figure 1 illustrates a harvester moving over a field in which a portion of the crop has been cut; Figure 2 a side view, partially cut away, of a self-propelled harvester on which the invention may be utilized; Figure 3 is a schematic block diagram of the hardware comprising the harvester control system; Figures 4A-4E are diagrams useful in explaining the mathematical basis of operation of the crop line tracker; Figures 5A and 5B comprise flow chart illustrating the operation of the crop line tracker; and, Figure 6 comprises graphs illustrating the effect of time weighting and averaging crop line tracker steering signals. Figure 1 illustrates a self-propelled agricultural harvester 10 in the process of cutting a crop in a field having a boundary 12. The uncut portion of the crop is indicated by the shaded area 14. The edge or division between the cut crop and the uncut crop in front of the harvester is generally referred to as the crop line and is designated by the reference numeral 16. Conventionally, the entire area of the field is not planted with crop. A headland having a width D is left unplanted at each end of the field and provides an area in which the harvester may turn around. The division between the headland and that portion of the field planted with crop is generally referred to as the "end of row" and is designated by the reference numeral 18. The invention is not limited to use in rectangular fields and the crop area to be cut may be irregular in shape. The harvester 10 may take many forms (combine, forage harvester, etc.) but experimentation was carried out using a model 2550 Speedrower™ sold commercially by New Holland North America Inc. This harvester is similar to the one shown in Figure 2. It cuts and conditions forage crops and discharges the harvested crop on the ground in either a consolidated windrow or a swath substantially as wide as the width of cut of the machine. The harvester has a cutter bar 13 which may be raised and lowered and which is carried slightly above ground level at the front of the harvester when cutting crop. A reel 20 sweeps the cut crop material into conditioning rolls 21 for further conditioning, and the conditioned crop is then discharged. For use in the present invention, the commercially available harvester was retrofitted with left and right electro-hydraulically controlled drive motors 46 and 48 (Figure 3) for differentially and reversibly driving the front wheels 22, 24. The harvester as thus modified is steered by driving the front wheels at different relative speeds. The harvester 10 is provided with at least one video camera 30 (Figure 2) mounted on an arm extending outwardly from one side of the harvester. For purposes of experimentation, the camera was supported by an arm mounted near the top of the operator's cab 26 and extending to the left side of the harvester at a height of about 4 m above the ground. The camera is aimed about 5 m ahead of the harvester so as to capture an image of the landscape in front of the harvester. The camera is supported slightly inboard with respect to the left end of the harvester cutter bar so as to be directly over the crop line when the harvester is properly following the crop line. This avoids the necessity of computations relating to offset and permits the steering control algorithm to be based merely on steering the harvester to keep the crop line in the centre of the image. Thus, if the harvester is steered so that the camera remains essentially over the crop line the cutter bar will slightly overlap the crop line. This overlap insures that narrow strips of uncut crop material are not left on the field. Since the camera is supported over the crop line, use of a single camera restricts the field coverage plans or patterns of movement which the operator may follow in cutting a field while still taking advantage of the present invention. For example, if the harvester has a single camera mounted on the left side of the operator's cab 26 so as to track crop line 16 (Figure 1), it is not possible when the harvester reaches the end of the row to turn the harvester 180° about the right front wheel 24 as a pivot and resume cutting. The new crop line 16' will be to the right of the harvester but the camera is still on the left side. Therefore, in some applications it may be desirable to provide a second camera 30 mounted on the right side of the harvester and a video switch 32 controlled to select the video output signal from the appropriate camera. However, a single camera permits use of such a wide variety of field coverage plans that the need for two cameras is extremely limited. As shown in Figure 3, the major hardware components of the system include at least one and possibly two video cameras 30, a video switch 32 if two cameras are used, a physical control computer 40, a video processing computer 42, left and right wheel drive motors 46, 48, an electrically controlled hydrostatic transmission 50, and conventional operator-actuated controls 78. Physical control computer 40 receives commands from controls 78 and, in response to these commands, generates speed and steering signals and implement control commands for controlling the cutter bar control mechanism 66. The harvester has been provided with left and right front wheel encoders 34 and 36 for purposes not relevant to the present invention. The physical control computer 40 may be a Motorola model MC68040 supported by the VxWorks real-time operating system. The video processing computer 42 may be a Sun Sparc 20 board running Unix and includes a digitizer 56 for digitizing video signals received from video switch 32. Computers 40 and 42 are interconnected by a serial Ethernet link 58. A Manual/Auto mode switch (not shown) controls physical control computer 40 to respond to manual steering commands from controls 78 or automatic steering commands developed by video processing computer 42 as subsequently described. The computer 40, in turn, generates steering commands which are applied to the electrically controlled hydrostatic transmission 50. A steering command has a value which is the reciprocal of the radius of curvature of the commanded turn. A steering command may, for example, have one of 21 values between -0.1 (maximum left turn) and +0.1 (maximum right turn) with the value zero commanding steering straight ahead. The electrically controlled hydrostatic transmission 50 includes means for resolving the commands and generating two analog signals. These analog signals control the division of the total available hydraulic fluid flow between the wheel drive motors 46, 48 which in turn drive the front wheels at different speeds to cause the harvester to turn. A throttle control 76 governs the total available hydraulic fluid flow and thus sets the harvester speed. The camera 30 is preferably a colour video camera and in the development of the invention a RGB (red-green-blue) camera was used. The purpose of the camera is to form an electronic image of the landscape in front of the harvester and scan the image line-by-line and pixel-by-pixel to generate a signal containing information as to the spectral content of the image at each pixel position. It is not necessary to scan an entire image. The scan may be limited to only a window of the image. Furthermore, within a window it is not necessary to utilize every possible scan line. Operator commands, entered into the system from a control panel or keyboard (not shown) may be utilized in a known manner to control the deflection circuits of the camera to select the size of the window and the skipping of line scans. A window may, for example, be 400 by 300 pixels but this size may be varied considerably. The purpose of video processing computer 42 is to analyze the digitized video signal representing the scene within the field of view of the camera 30 and generate an indication of where the crop line is relative to the centre of the scene. Computer 42 is programmed to implement a discriminator and a segmenter. Creation of a colour segmentation algorithm combines two parts: a discriminator and a segmenter. The discriminator computes a function d( i,j ) of individual pixels whereof the signals provide some information about whether that pixel is in the cut region or the uncut region. The segmenter then uses the discriminant to produce a segmentation. For the segmenter to function reliably, it is desirable that the difference in the discriminant between the cut side and the uncut side be as large as possible compared to the standard deviation (S.D.). Experimentation was carried out using an RGB camera with the discriminant d( i,j ) being the percentage intensity within a given spectral or the ratio between two spectral bands. The results are given in Table I. Discriminant cut S.D uncut S.D uncut mean - cut mean R 22.5 16.8 37.2 G 23.7 20.1 27.9 B 24.3 19.5 31.0 R/ (R+G+B) 0.020 0.013 0.033 G/ (R+G+B) 0.018 0.007 -0.020 R/G 0.096 0.043 0.137 Experiments were also carried out using a black and white camera with six bandpass filters ranging from 300-900 nm, each filter having a pass band of 100 nm. It is noted that the sensitivity of off-the-shelf CCD cameras drops off sharply outside this range. The results are shown in table II. Discriminant cut S.D uncut S.D uncut mean - cut mean 650 nm 8.22 22.2 -59.1 650 nm/total 0.005 0.020 -0.051 550 nm/total 0.006 0.011 -0.035 650 nm/750 nm 0.040 0.188 0.493 550 nm/750 nm 0.057 0.112 0.357 The filter data suggest that using a custom built camera sensitive to only a few narrow frequency bands may provide an advantage over an RGB camera. Based on the above tables, and by qualitative observation of a number of segmentations the ratio of red to green was selected as the discriminant function d( i , j ). As a substantial database of images is obtained, a Fischer linear discriminant, as described in a 1974 article by T. Young and T. Calvert, entitled "Classification, Estimation and Pattern Recognition", published by American Elsevier Publishing Co., can be used to find the optimal linear discriminant in colour space. Using a measure like this on a small set of data may be misleading, however, since the quality of a given discriminant varies considerably for different images. The discriminator computes from the digitized output signal of a camera a function d( i,j ) of individual pixels within a window or region of interest of say 400 by 300 pixels located at the centre of the video camera imaging screen. Figure 4D represents a plot of d( i,j ) for a portion of one scan line near the centre of a scan line i , the discriminant function being green percentage intensity. For each pixel position j the discriminator produces an output signal having a magnitude d( i,j ) related to the percentage green intensity at the pixel position. Because of the foliage on the uncut crop, the d( i,j ) are clustered about a first mean value m r (Figure 4E) for uncut crop and about a second mean value m l for cut crop. For the task of defining a segmenter, it was decided to limit efforts to representing segmentations which divide the image into precisely two connected regions. It was also assumed that the boundary between these regions is a single-valued function of the row coordinate i , and that this boundary does not intersect either the left or right edge of the image. This boundary function is represented explicitly by the set of pixels ( i,j ) which lie on it, so that nothing further is assumed about the shape of the boundary. Figure 4A shows a representable segmentation, and Figures 4B and 4C show some non-representable segmentations. This representation was chosen, not because it accurately characterizes all the images which might need to be segmented, but because it can be computed rapidly. Although images such as the ones in Figures 4B and 4C do occur, the chosen representation covers the vast majority of the images which appear in a harvesting operation. Figure 4E suggests a step function defined by three parameters: j n , the j coordinate of the discontinuity; m l , the mean value of the step function to the left of the discontinuity; and m r , the mean value of the step function to the right of the discontinuity. Finding the best segmentation is thus a matter of finding the best fit step function (lowest least-squared error) to d( i,j ) along a given scan line. The segmenter may determine j n according to the following algorithm: The bulk of the computing time for this algorithm comes from computing m l , m r , and the error . Computing the means and errors for the first j d takes order (j max -j min ) time. However, it requires only a small constant number of operations to recompute m l , m r , and error e for subsequent values of j d . The end result is that the entire algorithm requires only order (j max -j min ) time to find the best fit step function for a given scan line. Using a 400 x 300 pixel window of the image, a cycle time of roughly 4 Hz can be achieved for the entire system using the algorithm derived below. If j d is defined as the right-most column or pixel to the left of the discontinuity and the column numbers vary from 0 to j max , then m l , m r and the error may be calculated as functions of j d , these terms being defined for j d from 0 to j max -1. It requires order n time to compute error ( j d ) from the d( i,j ) alone. However, it is possible to compute error ( j d +1) from error ( j d ) in constant time by expressing the calculation of error ( j d ) in terms of the following functions: From equations 1 - 4 error ( j d ) may be calculated. Next, equations 1-4 may be re-expressed recursively: t l (0) = d ( i, 0) t l ( j d ) = t l ( j d -1) + d ( i , j d ) t r ( j d ) = t r ( j d - 1) - d ( i,j d ) t2 l (0) = [ d ( i, 0)] 2 t2 l ( j d ) = t2 l ( j d - 1) + [ d ( i,j d )] 2 t2 r ( j d ) = t2 r ( j d -1) - [ d ( i,j d )] 2 It takes only a constant number of operations to compute t l , t r , t2 l and t2 r at j d +1, given their values at j d . Equation 5 is then used to calculate the error at j d +1. The calculation may be accomplished with even fewer steps if some monotonic 1-to-1 function of error ( j d ) is computed rather than error ( j d ). For example computing f ( j d )=[e( j d ) . ( j max +1)] 2 saves a square root and a division operation at each step. Better yet, it is possible to compute which can be computed recursively using the following three equations: t l (0) = d ( i, 0) t l ( j d ) = t l ( j d -1) + d ( i,j d ) t r ( j d ) = t r ( j d -1) - d ( i , j d ) f ( j d ) = - [ t l ( j d )] 2 j d +1 + - [ t r ( j d )] 2 j max - j d As compared to computing error ( j d ) directly, this results in an increase in cycle rate (reduction in computing time) of approximately 30%. Figures 5A and 5B illustrate a program routine executed by video processing computer 42 to generate a steering command from the digitized video signals obtained by scanning electronic images formed on the screen of camera 30 as the camera views the landscape in front of the harvester. Step 100 computes and saves the discriminant value d( i,j ) for one pixel j according to the discriminant function being used, for example the ratio red/green. Step 101 determines if this is the last pixel ( i,j ) to be examined in the current scan line i and if it is not the last pixel step 100 is executed again to develop and save a discriminant value d( i,j +1) for the next pixel. Assuming the window being analyzed is 400 pixels wide, steps 100 and 101 are repeated 400 times to develop and save 400 values d( i ,1)-d( i,400 ). After a value d( i,j ) has been computed for each location j on one scan line, the test at step 101 proves true and the routine advances to step 102 which computes a best fit step function for these values. The location of the step defines a pixel location j n which in turn represents the segmentation, that is, the location of the crop line between cut and uncut crop as determined from the current scan line i . The segmenter output signal produced at step 102 is a binary signal having a bit position corresponding to each pixel position j on a single scan line i and within the window of interest. The signal has in it a single 1-bit in the position corresponding to the computed step function pixel location j n . This bit represents a crop line tracker "vote" on the steering angle or direction in which the harvester should be steered so as to track the crop line and keep the crop line image at the centre of the window. Ideally, the votes on the steering direction should be in the same bit position of each output signal when the harvester is tracking the crop line. However, in actual practice cropless bare spots, areas of poor or dead crop, and other anomalies cause the votes to be distributed among different bit positions for different scan lines. An accumulator is provided for each pixel position and at step 103 the vote generated at step 102 is added into the accumulator which accumulates votes for boundary location j n . The segmenter produces one output signal or vote for each scan line i within the window or region of interest. Step 104 determines if the last scan line of the window has been processed. If the last scan line has not been processed, a return is made to step 100 and steps 100-103 are repeated to develop a vote on the steering direction for the next scan line. Assuming the window is 100 pixel high, step 104 detects when all 100 scan lines of the image within the window have been processed and the program advances to step 105. At this point the crop line tracker has developed, from one complete scan of the image, 100 votes on the steering direction, these votes being distributed among 400 vote accumulators. However the electrical controls of hydrostatic transmission 50 (Figure 3) are capable of controlling steering at only 21 different degrees of curvature. Therefore, the 400 pixel positions are divided into groups of adjacent positions and assigned to 21 bins. The accumulated vote counts for all pixel positions assigned to a given bin are then summed at step 105 to obtain 21 bin vote counts. At step 106 the bin vote counts are normalized by dividing them by the number of scan lines (100) and the normalized vote counts are saved. Thus, for each image the crop line tracker produces 21 normalized bin votes on the steering direction, each normalized vote having a value between 0.0 and 1.0 and the sum of the normalized votes being 1. The normalized bin votes are saved in memory for further processing as subsequently described. As previously noted, the size of the window image need not be 400 x 100 pixels and it is not necessary to process every pixel position of the image within the window. For example, the processing of every third or fourth pixel may be eliminated to reduce signal processing time if the uncut crop is relatively uniform over the field and is easy to discriminate from the cut portion of the field. The normalized bin vote counts saved at step 106 as a result of scanning one image are time-decayed and averaged with the bin vote counts resulting from scans of previous images. The reason for this may be explained with reference to Figure 6 which illustrates a typical situation for the case of a poor crop. The figure is drawn for the case of more than 21 steering directions to more clearly demonstrate the smoothing function. In Figure 6, assume that graphs (a)-(d) represent the bin vote counts generated as a result of scanning four successive images, graph (a) being for the most recent image. Each vertical bar in a graph represents the vote count in one of the bins, that is, the accumulated vote count for one bin as developed by the crop line tracker at step 105 in Figure 5A and before the vote counts are normalized. In each graph, the votes accumulated for each image have been time weighted by a factor as indicated to the left of each graph. In graph (a), the bin or steering direction referenced 220 has the highest vote sum hence if the votes derived from this image alone were considered, the harvester would be commanded to make a rather extreme turn to the left because this bin is separated from the "straight ahead" bin, represented by 0, by about 15 bins. On the other hand, for the preceding three images the vote summations for the bins referenced 221, 222 and 223, respectively, are the greatest hence if the vote summations for these images were acted on alone, the harvester would be commanded to steer gently to the right by slightly varying degrees. The vote summations in graph (a) obviously resulted from some anomaly and would cause an undesirable left steer if acted on alone. To avoid such an action, the bin vote counts for several images are saved and decayed in value over time, and the decayed vote count values are then added together. Graph (e), which is not to the same scale as graphs (a)-(d), shows the result. By time weighting and summing the normalized vote counts in corresponding bins for the four images, the bin referenced 224 has the largest sum. Thus, by considering the votes over four images, the erroneous steering indication represented in graph (a) may be filtered or averaged out and the harvester commanded to steer slightly to the right even though analysis of the most recent image indicates that a hard left steer is needed. Referring to Figure 5B, step 107 time weights or decays each of the 21 normalized bin vote counts resulting from the scans of the last n images. Although Figure 6 illustrates the summation of votes for n = 4 images, n may be any fixed number or the number of images processed by the crop line tracker 102 within a fixed interval of say 1 or 2 seconds. Step 108 averages the decayed normalized bin vote counts obtained at step 107 to generate a steering preference signal. From the foregoing description it is evident that the steering preference signal comprises 21 bins or values. The steering preference signal is then saved at step 109. After the steering preference signal is saved, step 110 checks a timer to see if 0.1 second has elapsed. Steering commands are generated at intervals of 0.1 sec. If step 110 determines that 0.1 second has not elapsed since generation of the last steering command, steps 107-109 are repeated. After 0.1 second the test at step 110 proves true and step 111 is executed. Step 111 examines each of the 21 bin totals saved at step 109 and determines which bin has the largest total. A steering command is then generated (step 112), the steering command having a 1-bit in the position corresponding to the position of the bin found to have the largest value. The steering commands produced at step 112 are transferred from computer 42 through computer 40 to the electrical controls of transmission 50 which decode the commands as described above to differentially drive the front wheels and thereby steer the harvester in the commanded direction. The invention described above is capable of acting as a "cruise control", relieving the operator of the responsibility of steering the harvester. It may be used in conjunction with an end of row detector which slows or stops the forward progress of the harvester and signals the operator to assume manual control to accomplish turning. The invention may also be incorporated into a fully automated control system which also controls turning, thereby eliminating the necessity for an operator on the harvester. While the invention has been described with respect to a preferred embodiment, it will be understood that various substitutions and/or modifications may be made in the described embodiment without departing from the spirit and scope of the invention as defined by the appended claims.

Claims: A method of steering an agricultural harvester (10) along a crop line (16), the harvester having control means (40, 50, 46, 48) for steering wheels (22, 24) to thereby steer the harvester (10), said method comprising: a) mounting on said harvester (10) a viewing means (30) oriented to view and form an image of a landscape, including a crop line (16), in front of the harvester; and b) scanning at least a window of the image line-by-line and pixel-by-pixel to produce information signals representative of said image; said method being characterized by the further steps of: c) deriving, from the information signals of each scan line i , a plurality of discriminant function values d( i,j ) wherein i identifies the scan line and j the relative position of a pixel on said scan line i ; d) determining, for each scan line i , a pixel position j n representing the pixel position j of a step in a step function which best fits the discriminant function values d( i,j ) generated for the scan line i ; e) developing for each pixel position j a sum of the number of times the step position j n occurs at that pixel position j during a complete scan of the window in order to develop, for that window, vote counts indicating steering direction preferences; f) applying to the control means (40, 50, 46, 48) a steering signal determined from the developed vote counts. A method according to claim 1, characterized in that in step d) the best fitting step function is determined using the least-squared error criterion. A method according to claim 2, characterized in that the best fitting step function is determined using computation of squared-error related values for a range of pixel positions j d in a recursive manner. A method according to any of the preceding claims characterized in that : in step e), said vote counts are normalized by dividing the sum developed for each pixel position j by the number of scan lines; and in step f), the steering signal is determined from the normalized vote counts. A method according to any of the preceding claims, characterized in that : steps b) through e) are repeated for a plurality of images; and in step f), the steering signal applied to the control means (40, 50, 46, 48) is determined from the vote counts developed for said plurality of images. A method according to claim 5, characterized in that , during step f), the vote counts developed for a plurality of images are averaged to determine said steering signal. A method according to claim 6, characterized in that , in step f), the vote counts developed for a plurality of images are time weighted and then averaged, so that vote counts produced for more recent images have greater weight in determining said steering signal. A method according to any of the preceding claims, characterized in that , in step e), groups of adjacent pixel locations j have been assigned to bins (220-223) and, for each bin, a bin sum is developed representing the number of times the step position j n of the step function occurs at any pixel position j assigned to the bin in order to develop said vote counts. A method according to claim 8, characterized in that in step e), said vote counts are normalized by dividing the bin sum for each bin (220-223) by the number of scan lines. A method according to any of the preceding claims, characterized in that step a) comprises mounting a colour video camera (30) on the harvester (10). A method according to claim 10, characterized in that said colour video camera is an RGB video camera (30). A method according to any of the claims 1 to 9, characterized in that step a) comprises mounting on the harvester (10) a black-and-white video camera (30) having one or more associated band pass filters. A method according to any of the preceding claims characterized in that said discriminant function d( i,j ) is the intensity ratio between two given spectral bands. A method according to claim 13, characterized in that said discriminant function d( i,j ) is the intensity ratio of red to green colour. A method according to any of the claims 1 to 12, characterized in that said discriminant function d( i,j ) is the percentage intensity of a given spectral band. A self-propelled agricultural harvester (10), comprising: a viewing means (30) mounted on the harvester (10) and oriented to view and form images of a landscape, including a crop line (16) in front of the harvester, the viewing means (30) having associated therewith a scanning means for scanning at least a window of an image line-by-line and pixel-by-pixel to produce information signals representing said window; and control means (40, 50, 46 ,48) for steering wheels (22, 24) to thereby steer the harvester (10) in response to said information signals; said harvester being characterized in that it further comprises: first means (42) for generating, from the information signals of each scan line i , a plurality of discriminant function values d( i,j ), wherein i identifies the scan line and j the relative position of a pixel on said scan line i ; second means (42), responsive to said first means, for determining, for each scan line, a pixel position j n representing the pixel position j of a step in the step function which best fits the discriminant function values d( i,j ) generated for said scan line i ; a plurality of counters, there being at least one counter corresponding to each pixel position j of the window, said counters being responsive to said second means (42) for accumulating the number of times said step position j n occurs at said pixel position j during a complete scan of the window, in order to develop therefrom vote counts indicating steering direction preferences; and third means (42), responsive to said vote counts, for applying to the control means (40, 50, 46 ,48) a steering signal determined from the vote counts. A harvester according to claim 16, characterized in that said third means comprises means (42) for averaging the vote counts produced by said counters during scanning of windows of successive images. A harvester according to claim 17, characterized in that said third means (42) further comprises means for time-weighting the vote counts produced for successive images prior to averaging them so that the vote counts produced for more recent images have greater weight in determining said steering signal. A harvester according to any of the claims 16 to 18, characterized in that said third means (42) includes accumulator means for accumulating bin vote counts by totalling the vote counts produced by said counters for groups (220-224) of adjacent pixel positions. A harvester according to any of the claims 16 to 19, characterized in that said first means (42) generates a discriminant function value d( i,j ) determined by the intensity ratio between two given spectral bands at each pixel position ( i,j ). A harvester according to any of the claims 16 to 20, characterized in that said first means (42) generates a discriminant function value d( i,j ) determined by the percentage intensity of a given spectral band at each pixel position ( i,j ). A harvester according to any of the claims 16 to 21, characterized in that said viewing means comprises a RGB colour video camera (30) or a black-and-white video camera having one or more associated band pass filters. A harvester according to any of the claims 16 to 22, characterized in that said control means (40, 50, 46, 48) for steering said wheels (22, 24) comprises first and second drive motors (46, 48) for driving a first and a second of said drive wheels, respectively at different rotational speeds to steer said harvester (10).

Inventors: FITZPATRICK KERIEN, HOFFMAN REGIS, OLLIS MARK, STENTZ ANTHONY, WHITTAKER WILLIAM, FITZPATRICK, KERIEN, HOFFMAN, REGIS, OLLIS, MARK, STENTZ, ANTHONY, WHITTAKER, WILLIAM
Applicants: UNIV CARNEGIE MELLON, CARNEGIE MELLON UNIVERSITY
Application year: 1997
Main classification: A01B69
IPC codes: A01D41, A01B69