Pest detection systems and methods
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- B HIVE INNOVATIONS LIMITED
- Filing Date
- 2024-07-12
- Publication Date
- 2026-05-27
AI Technical Summary
Current pest detection methods are labor-intensive and inefficient, particularly for subterranean pests like wireworms, which are difficult to detect and can cause significant crop damage.
A pest detection system comprising a camera module and a processing unit that uses machine learning to analyze image data from soil agitation, determining pest parameters such as presence, type, and number.
The system effectively detects pests like wireworms, reducing the risk of crop damage by providing accurate and efficient detection capabilities.
Smart Images

Figure GB2024051833_23012025_PF_FP_ABST
Abstract
Description
[0001] PEST DETECTION SYSTEMS AND METHODS
[0002] FIELD
[0003] Disclosed are systems and methods for detecting pests, particularly agricultural pests such as wireworm.
[0004] BACKGROUND
[0005] Pests are known to damage property and, in particular, crops. It is necessary to detect the presence of pests so that appropriate action can be taken.
[0006] Pest detection can be labour intensive, for example where a person is required to examine an area physically to determine the presence or absence of pests. Furthermore, some pests, such as subterranean pests (e.g. pests that live in soil), cannot easily be detected.
[0007] Wireworms are the larvae of click beetles, such as agriotes lineatus, agriotes obscurus, and agriotes sputator, and are a pest species. Wireworms are known to damage the roots and other underground parts of many crops, including potatoes. As wireworms live in soil, they are difficult to detect, meaning crops can inadvertently be planted in infested areas, leading to significant crop damage.
[0008] Improved systems and methods for detecting pests are needed.
[0009] BRIEF DESCRIPTION OF THE INVENTION
[0010] Disclosed is a pest detection system, comprising: a camera module configured to generate image data; and a processing unit configured to receive the image data, to determine one or more pest parameters associated with the image data using a machine learning model, and to record the one or more pest parameters on a computer readable medium.
[0011] The pest detection system may further include a soil agitator, and the camera module may be configured to capture images of soil agitated by the soil agitator.
[0012] The one or more pest parameters may include at least one of a presence or absence of a pest, a number of pests, or a type of pest.
[0013] The machine learning model may be trained using training data including images of a proxy for a pest.
[0014] The pest may be a wireworm species and the proxy may be a mealworm species. The machine learning model may be trained using training data including at least one image formed by an array of pixels, the image may be divided into tiles, each tile including a subset of the pixels in the image, and the machine learning model may be trained using the tiles.
[0015] The processing unit may be configured to determine the pest parameter by dividing images captured by the camera module into overlapping tiles, assigning a confidence value to each pixel in each tile such that each pixel is assigned a plurality of confidence values, and averaging the confidence values for each pixel.
[0016] The one or more pest parameters may include a number of pests, and the processing unit may be configured to determine the number of pests by flattening the confidence values for each pixel falling within a threshold value, determining the coordinates of localised confidence value peaks in the array of pixels, and counting the number of localised peaks.
[0017] Also disclosed is a pest detection method, comprising: training a machine learning model to determine one or more pest parameters; generating image data using a camera module; analysing the image data with a processing unit, using the machine learning model, to determine the one or more pest parameters; and storing the one or more pest parameters on a computer readable medium.
[0018] The method may further include agitating soil and capturing images of the agitated soil with the camera module.
[0019] The one or more pest parameters may include at least of a presence or absence of a pest, a number of pests, or a type of pest.
[0020] The machine learning model may be trained using training data including images of a proxy for a pest.
[0021] The pest may be a wireworm species and the proxy may be a mealworm species.
[0022] The machine learning model may be trained using training data including at least one image formed by an array of pixels, the image may be divided into tiles, each tile including a subset of the pixels in the image, and the machine learning model may be trained using the tiles.
[0023] The processing unit may be configured to determine the pest parameter by dividing images captured by the camera module into overlapping tiles, assigning a confidence value to each pixel in each tile such that each pixel is assigned a plurality of confidence values, and averaging the confidence values for each pixel. The one or more pest parameters may include a number of pests, and the processing unit may be configured to determine the number of pests by flattening the confidence values for each pixel falling within a threshold value, determining the coordinates of localised confidence value peaks in the array of pixels, and counting the number of localised peaks.
[0024] BRIEF DESCRIPTION OF THE FIGURES
[0025] In order that the present disclosure may be more readily understood, preferable embodiments thereof will now be described, by way of example only, with reference to the accompanying drawings, in which:
[0026] Fig. 1 shows a schematic illustration of a pest detection system;
[0027] Fig. 2 shows a schematic illustration of pests around a crop;
[0028] Fig. 3 shows a schematic illustration of a vehicle;
[0029] Fig. 4 shows a schematic illustration of a vehicle;
[0030] Fig. 5 shows a schematic illustration of a pest detection system mounted to a vehicle;
[0031] Fig. 6 shows a pest detection system mounted to a vehicle;
[0032] Figs. 7a and 7b show images of pests;
[0033] Fig. 7c shows an image of a non-pest;
[0034] Fig. 8 shows a schematic illustration of a camera module;
[0035] Fig. 9 shows a schematic illustration of a camera module;
[0036] Fig. 10 shows a schematic illustration of a processing unit;
[0037] Fig. 1 1 shows a schematic illustration of an output unit;
[0038] Fig. 12 shows a schematic illustration of a storage sub-system;
[0039] Fig. 13 shows a schematic illustration of a communication sub-system;
[0040] Fig. 14 shows a schematic illustration of a processing unit;
[0041] Fig. 15 shows a schematic illustration of a power sub-system;
[0042] Figs. 16 and 17 show a case and case mounting bracket;
[0043] Fig. 18 shows a schematic illustration of a remote management system;
[0044] Figs. 19 and 20 show training images split into tiles;
[0045] Figs. 21 a and 21 b show RGB and HED-stained images of pests;
[0046] Fig. 22 shows images of pests in a variety of colour spaces;
[0047] Fig. 23 shows pests detected by the pest detection system;
[0048] Fig. 24 shows a heat map of pests;
[0049] Fig. 25 shows a histogram of pests detected at different confidences;
[0050] Fig. 26 shows a schematic illustration of a tractor;
[0051] Fig. 27 shows a schematic illustration of a tractor; and
[0052] Fig. 28 shows a vehicle. DETAILED DESCRIPTION OF THE DISCLOSURE
[0053] The disclosed technology includes a pest detection system 1 and method. The pest detection system 1 and method may be configured to determine one or more pest parameters, such as the presence or absence of a pest 6 (see e.g. Fig 2), a type of pest 6, a number of pests 6, and / or a location of a pest 6.
[0054] The or each pest 6 detected by the system 1 may be an organism that causes damage to a crop 2. The crop 2 may include a subterranean harvestable item 22, particularly a subterranean fruit or vegetable, which may therefore be a root vegetable. At least a portion of the harvestable item 22 may be located underground. The subterranean harvestable item 22 may be located entirely underground (for example a potato), or may include a portion that is underground and a portion that is above ground (for example an onion). The harvestable item 22 may also be referred to as agricultural produce. Examples of such crops 2 include potatoes, beets, carrots, turnips, taro, cassava, yams, ginger, onions and so on. The crop 2 may, in particular, be a potato crop. The pest 6 may, therefore, be an organism that damages potato crops.
[0055] The or each pest 6 may be an animal. The or each pest 6 may be a subterranean pest. The or each pest 6 may be a pest that lives in soil. The or each pest 6 may ordinarily be found underground. The or each pest 6 may, therefore, cause damage to an underground part of a crop 2, such as a subterranean harvestable item 22, or a root in general (even where the harvestable part of the crop 2 is above ground, e.g. apples, grapes, lychees, etc). The or each pest 6 may live underground, or in soil, in one phase of its life cycle, but may live primarily above ground in another phase of its life cycle.
[0056] The or each pest 6 may include, or may be, a larva. The or each pest 6 may, therefore, cause damage to the underground part of the crop 2 when in a juvenile form. The or each pest 6 may include, or may be, a wireworm, also known as a click beetle larva. The or each pest 6 may, in particular, include a member of the elateridae family, such as agriotes lineatus, agriotes obscurus, and / or agriotes sputator.
[0057] The or each pest 6 may include a disease associated with the crop 2, for example potato blight in the case of a potato crop, and the system 1 may therefore be configured to detect symptoms of the disease, such as a colour or shape of a part of the crop 2 (e.g. leaves and / or roots and / or fruits). The or each pest 6 may include a fungal pest 6 (e.g. a mould, also referred to as a mold).
[0058] The system 1 may be configured to detect a plurality of pests 6, which may be from different families. For example, the system 1 may be configured to detect one or more larval pests and one or more non-larval pests. Additionally or alternatively, the system 1 may be configured to detect a plurality of different larval and / or non-larval pests. The system 1 may be configured to detect at least one subterranean pest 6, and may also be configured to detect at least one aboveground pest 6. The system 1 may be configured to detect at least one animal pest 6, and may also be configured to detect at least one non-animal pest 6, such as a fungal pest.
[0059] The system 1 may be configured to detect a plurality of pests 6 and to identify the type of pest 6 detected. For example, where the system 1 is configured to detect a plurality of larval pests 6, such as wireworms and sciarid fly larvae, the system 1 may be configured to identify which pest 6 has been detected (which may, of course, be both or all of the pests 6 in some cases). In versions where the system 1 is only configured to detect one type of pest 6, the system 1 may still identify the type of pest 6 detected (or this may be inherent when the pest 6 is detected).
[0060] The system 1 may include one or more of: an imaging sub-system 11 , a storage sub-system 12, a communication sub-system 13, a location sub-system 14, a power sub-system 15, and a processing sub-system 16.
[0061] The location sub-system 14 may be configured to determine the current location of the pest detection system 1 (or a part thereof). This location may be a longitude and latitude, for example. In some embodiments, the location may be a location relative to a fixed geographical location.
[0062] The storage sub-system 12 may be configured to store the one or more pest parameters and / or the current location (as determined by the location sub-system 14, if provided). The storage sub-system 12 may be further configured to store other information, as will be apparent from this description.
[0063] The communication sub-system 13 may be configured to transmit the one or more pest parameters and / or the current location (as determined by the location sub-system 14, if provided) to a remote management system 3. Collectively, the pest detection system 1 and the remote management system 3 (if provided) may be referred to as a pest detection and management system 4.
[0064] The power sub-system 15 may be configured to provide electrical power to one or more (or all) components of the pest detection system 1.
[0065] The pest detection system 1 may be configured to be carried, in whole or in part, by a vehicle 100, and may therefore be configured to be mounted, in whole or in part, to the vehicle 100. The pest detection system 1 may be configured such that it is mountable to a variety of different vehicles 100. Such vehicles 100 may include tractors, harvesters, all-terrain vehicles, cars, trucks, and so on. The system 1 may be mountable to an implement towed by the vehicle 100, such as a plough (or plow), cultivator, seeder, and so on. The system 1 may include a tiller 50, which may be configured to till a ground medium (e.g. soil) - see e.g. Fig. 5. The tiller 50 may have an active position, in which it is configured to till the ground medium, and a passive position, in which it is configured not to till the ground medium (for example a raised position). This may facilitate transportation of the tiller 50. The tiller 50 may, therefore, include one or more tilling members 51 configured to extend at least partially into the ground medium (e.g. soil) and to agitate the ground medium in use.
[0066] Examples of such tillers 50 include ploughs, harrows, cultivators, rotavators, de-stoners, and the share(s) of harvesters (e.g. root vegetable harvesters, such as potato harvesters, carrot harvesters, etc). One or more of the sub-systems 11-16, or at least a part thereof, may be mounted to the tiller 50. For example, at least a part of the imaging sub-system 11 , such as the camera module 111 , may be mounted to the tiller 50.
[0067] The or each tilling member 51 may include, or may be, a tool configured to till a ground medium (e.g. soil). The tilling member 51 may, therefore, include a disc, tooth, tine, or share for tilling soil. The tiller 50 may be towed by the vehicle 100 and / or may be mounted to the vehicle 100. In some versions the tiller 50 may include one or more ground-engaging wheels 501 .
[0068] The tiller 50 may also be referred to as a soil agitator 50, as the purpose of the tiller 50 (or soil agitator 50) is to agitate the ground medium (typically soil). This agitation is typically a mechanical agitation caused by the movement of an implement (tilling member 51) through the ground medium, or soil. The effect of the tiller 50 is, therefore, to turn over at least a part of the soil (which may thereby expose one or more pests 6).
[0069] The vehicle 100 may include a plurality of ground-engaging wheels 101 and / or tracks which are configured to support a body 102 of the vehicle 100 above a ground surface. The vehicle 100 may include an engine 103 which, in the case of a self-propelled vehicle 100, is configured to drive rotation of one or more of the ground-engaging wheels 101 and / or tracks, and / or which is configured to drive operation of one or more other parts of the vehicle 100 (which may also be the case in relation to a towed vehicle 100).
[0070] In some embodiments, the vehicle 100 is a towed vehicle 100 (such as in Fig. 3) and receives electrical and / or mechanical power from the towing vehicle (e.g. from a tractor 300). In some embodiments, the towing vehicle (such as the tractor 300) includes an engine 301 and an electrical system 302 (see e.g. Fig. 27) which may be mechanically and electrically coupled, respectively, to the vehicle 100.
[0071] The vehicle 100 may include a cab 104 which may be part of the body 102 and from which an operator may control the operation of the vehicle 100 - including, for example, steering and controlling the operation of the engine 103. References to the cab 104 of the vehicle 100 may be references to a cab or control panel of a towed vehicle 100, or to a cab 104 of a self-propelled vehicle 100, and are to be construed as encompassing a cab 303 of the towing vehicle (e.g. the tractor 300) in embodiments including such a vehicle.
[0072] The vehicle 100 may include an electrical system 105 (see e.g. Fig. 26) which is configured to provide electrical power to one or more parts of the vehicle 100 (e.g. to drive the operation of one or more electric motors). The electrical system 105 may include one or more batteries for the storage of electrical power and / or an alternator or other generator coupled to the engine 103 to generate electricity. In embodiments including a towing vehicle (such as the tractor 300), the electrical system 105 of the vehicle 100 may be electrically coupled to the electrical system 302 of the tractor 300 (or other vehicle) to allow the vehicle 100 to be at least partially powered by the tractor 300 (or other vehicle).
[0073] The vehicle 100 may be configured for the harvesting of the one or more harvestable items 22. As described, the one or more harvestable items 22 may include root vegetables which are buried underground, such as potatoes or carrots.
[0074] The vehicle 100 may, therefore, include a share 106 which is configured to lift the one or more harvestable items 22 from the ground (i.e. from the soil) and to convey the one or more items 22, which are now one or more harvested items 21 , towards a container 107 (see Fig. 4, for example). The share 106 is an example of a tilling member, or soil agitator, 51.
[0075] The vehicle 100 may include a conveyor 108 to convey the one or more harvested items 21 from the share 106 towards the container 107.
[0076] The conveyor 108 may be in the form of a spaced series of slats or bars oriented perpendicular to the direction of travel of the conveyor 108 such that soil and other debris may pass between the slats or bars. In some versions, the conveyor 108 may include a belt, which may therefore be a conveyor belt.
[0077] The vehicle 100 may include a picking table 109 (see e.g. Fig. 28) which may be part of the conveyor
[0078] 108 (i.e. may be a generally flat section of the conveyor 108 which is accessible to one or more pickers). The or each harvested item 21 may be conveyed by the vehicle across the picking table
[0079] 109 and one or more pickers may remove stones and other large debris manually. The picking table 109 is generally located upstream of the container 107 relative to the movement of the one or more harvested items 21 through the vehicle 100 (the share 106 being located downstream of the picking table 109 and conveyor 108). The picking table 109 may include a canopy. From the picking table 109 and / or conveyor 108, the one or more harvested items 21 may be transported to the container 107. This transportation may include the use of one or more further conveyors 110, for example.
[0080] In some embodiments, the container 107 is carried by a second vehicle (not shown) which is driven alongside the vehicle 100. The second vehicle may be a self-propelled vehicle such as a tractor towing a trailer on which the container 107 is supported. As such the second vehicle may include a tractor generally identical or similar to the tractor 300.
[0081] In some embodiments, the container 107 is carried by the vehicle 100.
[0082] As will be understood, the form of the vehicle 100 may vary but may include a part relative to which the one or more harvested items 21 pass (or otherwise travel) - e.g. driven in their movement by the conveyor 108, picking table 109, or one or more further conveyors 110.
[0083] The vehicle 100 may, therefore, be a harvester, and the pest detection system 1 may be used to detect pests 6 while harvesting a crop.
[0084] In some versions the vehicle 100 may be used to till the ground medium before planting a crop, and the pest detection system 1 may therefore be used to detect pests before planting the crop. A user may use the information provided by the pest detection system 1 to take an action before planting the crop, such as applying a chemical treatment (e.g. pesticide, fungicide, and / or herbicide), or choosing the location to plant the crop based on the one or more pest parameters determined by the pest detection system 1 .
[0085] The pest detection system 1 may be carried or carried entirely by the vehicle 100. In some versions, a part of the pest detection system 1 may be carried by the vehicle 100 and a part of the pest detection system 1 may be located elsewhere (e.g. remotely from the vehicle 100).
[0086] The imaging sub-system 1 1 may include a camera module 1 11. The camera module 11 1 may be configured to acquire one or more images of the ground medium. The camera module 111 may, in particular, be configured to acquire one or more images of the ground medium after (it has been tilled by the tiller 50. The camera module 111 may, therefore, be configured to acquire one or more images of the agitated soil. The camera module 111 may additionally or alternatively be configured to acquire one or more images of the harvested items 21 . The system 1 may, therefore, be configured to detect pests 6 in the ground medium and / or on the harvested items 21. In some versions, the camera module 111 may be configured to acquire images of the crop 2, which may include an aboveground part of the crop 2, such as one or more leaves of the crop 2. In some versions, the camera module 111 may be configured to acquire one or more images of a ground surface formed by the ground medium. As described, the tiller 50 may be configured to agitate the ground medium, and so the camera module 111 may be configured to acquire one or more images of the agitated ground medium. The camera module 111 may, therefore, be configured to acquire one or more images of the agitated ground surface. Accordingly, the camera module 11 1 may be mounted to the vehicle 100, which may include mounting the camera module 111 to the tiller 50, such that an operative part (e.g. lens) of the camera module 1 11 faces downwards, or towards the ground.
[0087] The camera module 111 may, therefore, acquire images of a tilled ground medium following tilling by the tiller 50, as shown schematically in Fig. 5. These images may be acquired by imaging the ground surface (as shown in Fig. 5) or may be acquired by imaging a part of the ground medium that is carried by the vehicle 100, such as soil conveyed on the conveyor 108.
[0088] The system 1 may be configured such that images of the tilled ground medium are acquired by the camera module 1 11 within a threshold time period of the ground medium being tilled by the tiller 50 (in other words, within a threshold time period of the soil being agitated by the soil agitator 50). This may be a time period in which pests 6 unearthed by the tiller 50 are visible. It will be appreciated that pests 6 unearthed by the tiller 50 will generally burrow into the earth (soil) soon after being unearthed, meaning they are only visible to the camera module 111 for a finite period of time.
[0089] The threshold time period may be up to around five minutes, around four minutes, around three minutes, around two minutes, around one minute, around 50 seconds, around 40 seconds, around 30 seconds, around 25 seconds, around 20 seconds, around 15 seconds, around 10 seconds, around 5 seconds, or around 1 second. The system 1 may be configured such that images of the tilled ground medium are acquired as the ground medium is tilled (in other words, as the soil is agitated). The system 1 may, therefore, be configured such that at least a part of one or more tilling members 51 is within the field of view of the camera module 111.
[0090] In some versions, the imaging sub-system 11 may include a plurality of camera modules 11 1. In such cases, a first camera module 111 may be configured to acquire images of a tilled ground medium. A second camera module 1 11 may be configured to acquire images of the harvested items 21 , in versions in which the vehicle 100 is a harvester. In some versions a first camera module 11 1 may be configured to acquire images of a first portion of the tilled ground medium and a second camera module may be configured to acquire images of a second portion of the tilled ground medium (and the second portion may be different to the first portion). Likewise, for systems 1 having more than two camera modules 1 11 , each camera module 1 11 may be configured to acquire one or more images of a portion of the tilled ground medium, and each portion may be different. At least one camera module 11 1 may be a visible light camera module. At least one camera module 111 may be an infrared camera module. At least one camera module 111 may be a multispectral camera module. At least one camera module 111 may be a hyperspectral camera module.
[0091] An example of a multispectral camera module is the Silios Technologies CMS-S camera. Examples of hyperspectral cameras include the HinaLea Model 4250 VNIR camera and the Specim IQ camera. An example of a suitable visible light camera module is the Alvium 1800 u158-c camera.
[0092] In versions including a hyperspectral camera, the hyperspectral camera may be configured to acquire hyperspectral images in a spectral band (i.e. a wavelength range) at which the reflectance of the pest 6 peaks or exceeds a predetermined threshold, referred to as an optimum spectral band. The pest detection method may, therefore, include determining the hyperspectral properties of the or each pest 6. The hyperspectral properties of the or each pest 6 may include a spectral band (wavelength or range of wavelengths) at which the reflectance of the pest 6 exceeds a predetermined threshold or peaks. This may correspond to a spectral band at which the pest 6 stands out, or contrasts against, the background (see e.g. Fig. 7a).
[0093] The hyperspectral image data generated by the hyperspectral camera may also include image data corresponding to a wavelength outside the spectral band corresponding to the pest 6. The hyperspectral camera may be configured to send the hyperspectral image data to a processing unit 1 14, and the processing unit may be configured to filter the hyperspectral image data such that only hyperspectral image data corresponding to the spectral band associated with the pest 6 is used to determine the one or more pest parameters. In other versions the processing unit 1 14 may be configured to determine the pest parameters using hyperspectral image data corresponding to a spectral band falling outside the optimum spectral band for the pest 6, in addition to the optimum spectral band. There may, therefore, be no filtering of the hyperspectral image data in such versions.
[0094] In the case of wireworm, the spectral band of 920 nm to 950 nm is particularly reflective (see e.g. Fig 7a and 7b, in which the pests 6 are wireworms). Hyperspectral images acquired in this spectral band show low reflectance for non-pests 61 , such as earthworms (see Fig. 7c). The hyperspectral camera may, therefore, be configured to acquire hyperspectral image data in the 920 nm to 950 nm spectral band, and the processing unit 114 may be configured to use hyperspectral image data corresponding to the 920 nm to 950 nm spectral band to determine the one or more pest parameters.
[0095] Where the system 1 is configured to detect a plurality of different pests 6, each type of pest 6 may have a corresponding optimum spectral band, and the hyperspectral camera may be configured to acquire hyperspectral images including each of the optimum spectral bands. Likewise, the processing unit 114 may be configured to determine the pest parameters using hyperspectral image data corresponding to the optimum spectral band for each pest 6, which may include filtering the hyperspectral image data such that only image data corresponding to the or each optimum spectral band for the pests 6 is used to determine the one or more pest parameters.
[0096] In versions using the multispectral camera, the multispectral camera may be configured in an analogous manner to the hyperspectral camera, and the processing unit 1 14 may be configured to proceed multispectral image data in an analogous manner to the hyperspectral image data (e.g. to use multispectral image data corresponding to the 920 nm to 950 nm spectral band to determine the one or more pest parameters).
[0097] The imaging sub-system 11 may include a camera module mount 11 m. In versions having a plurality of camera modules 111 , the imaging sub-system 1 1 may include a corresponding plurality of camera module mounts 11 m.
[0098] The camera module mount 11 m may be configured to secure the camera module 1 11 to the vehicle 100, which may include securing the camera module 111 to the tiller 50. The camera module mount 11 m may be configured to secure the camera module 111 with respect to the part of the harvester, in versions in which the vehicle 100 is a harvester, relative to which the one or more harvested items 21 pass (or otherwise travel). In some embodiments, the camera module mount 11 m may be configured to secure the camera module 1 11 with respect to the conveyor 108, the picking table 109, or the one or more further conveyors 110.
[0099] The camera module mount 11 m may be configured to secure the camera module 1 11 such that a part of the crop 2, part of the ground medium, part of the tilled ground medium, and / or the harvested items 21 pass through a field of view of the camera module 111.
[0100] The camera module mount 11 m may be configured to secure the camera module 1 11 such that the ground medium, tilled ground medium, and / or one or more harvested items 21 pass beneath the camera module 111 and the camera module mount 11 m may, therefore, secure the camera module 111 above the ground surface, conveyor 108, the picking table 109, or the one or more further conveyors 110. As such, in these embodiments, the one or more harvested items 21 conveyed by the conveyor 108, the picking table 109, or the one or more further conveyors 1 10 may rest on the conveyor 108, the picking table 109, or the one or more further conveyors 110 as they are conveyed.
[0101] The camera module mount 11 m may include a shroud 112 (see Fig. 6) configured to reduce the amount of ambient light to which an operative part of the camera module 1 11 is exposed - the operative part of the camera module 111 including a lens, for example. The shroud 112 may, therefore, reduce glare (and / or infra-red interference, see below) on the operative part of the camera module 111. The camera module mount 11 m may include an upright portion 1 1 u. The upright portion 11 u may be configured to be secured to a part of the vehicle 100 and / or to a part of the tiller 50. The upright portion 1 1 u may include a mounting bracket for mounting to the vehicle 100 and / or tiller 50.
[0102] The camera module mount 11 m may include a beam portion 1 1 b. The beam portion 11 b may be mounted to the upright portion 1 1 u. The beam portion 11 b may be detachable from the upright portion 1 1 u. The beam portion 1 1 b may extend generally horizontally in use. The position of the beam portion 1 1 b with respect to the upright portion 1 1 u may be adjustable such that the height of the camera module 111 is adjustable. The beam portion 11 b may be slidable with respect to the upright portion 11 u, for example. The distance between the camera module 111 and a surface below the camera module 1 11 may, therefore, be adjustable. The beam portion 1 1 b may be configured to attach to the shroud 112 and / or camera module 111 , and may therefore include a mounting bracket configured to attach to the shroud 1 12 and / or camera module 111.
[0103] The camera module 1 11 may be mounted around 20-200 cm above a surface to be imaged (e.g. ground medium or conveyor carrying harvested items 21), optionally around 20-150 cm above the surface, optionally about 30-120 cm above the surface, optionally about 40-110 cm above the surface, optionally about 50-100 cm above the surface, optionally about 50-90 cm above the surface, optionally about 60-80 cm above the surface. Such a range may provide a good balance between maximising the field of view and ensuring pests 6 remain detectable in the captured images.
[0104] Other mounting systems are possible and may be tailored to match the configuration of the vehicle 100 and / or tiller 50.
[0105] The camera module 111 may include a stereoscopic camera 111 a (see e.g. Fig. 8) which is configured to capture images of its field of view. The stereoscopic camera 111a may be configured to capture pairs of images at substantially the same time to provide parallax in order to provide depth information.
[0106] In some embodiments (see e.g. Fig. 9) the camera module 1 11 may include a camera 1 11c which is configured to capture a visible light image and may include an infra-red transmitter 111d along with an infra-red receiver 111e. The infra-red transmitter 111d may include an infra-red laser whose emitted light output is directed though one or more optical elements (such as diffraction gratings) to spread the emitted light over a relatively wide area (e.g. the field of view of the camera module 1 11) - e.g. in a speckle pattern. The infra-red receiver 1 1 1e may be configured to capture an image of the field of view of the camera module 11 1 in the infra-red light spectrum. By comparing the emitted infra-red light pattern with the received infra-red light pattern captured by the infra-red receiver 111e depth information can be determined by analysing distortions (i.e. a distortion pattern) of the infra- red light (e.g. by generating a disparity map). Such techniques are used, for example, in the Kinect(R™> camera by Microsoft Corporation.
[0107] The imaging sub-system 1 1 (e.g. the camera module 111) may include an illumination device 111 b which is configured to illuminate the field of view (and which may illuminate the interior of the shroud 112). The illumination device 111 b may be configured to provide visible light illumination. The illumination device 111 b may additionally or alternatively be configured to provide infrared illumination, which may include illumination in the optimum spectral band for the pest 6. Where the system 1 is configured to detect a plurality of different pests 6, the illumination device 111 b may provide illumination in the optimum spectral band for each pest 6. The illumination device 11 1 b may, therefore, provide illumination across a broad spectrum, which may include visible and / or infrared illumination. A plurality of illumination devices 111 b may provide illumination at different wavelengths (e.g. one may provide visible light illumination and one may provide infrared illumination).
[0108] The camera module 111 and / or the illumination device 111 b (if provided separately) may be provided with a protective case configured to shield the camera module 111 from one or more of fluid (e.g. water), dirt, and vibration. The protective case may have internal padding to support the camera module 111 and / or illumination device 111 b. The protective case may have at least a portion which is transparent in order to allow the camera module 111 to capture images therethrough.
[0109] The illumination device 11 1 b may enable the pest detection system 1 to be used in low ambient light conditions and may provide a consistent illumination level for the camera module 111. This may, therefore, facilitate more consistent images from the camera module 111 (e.g. in terms of the exposure of the images).
[0110] The imaging sub-system 11 may include the processing unit 114 (see e.g. Fig. 10). The processing unit 114 may be configured to receive a signal representative of one or more images captured by the camera module 11 1 (the camera module 111 being configured to output such a signal to the processing unit 114). The processing unit 114 and camera module 111 are, therefore, communicatively coupled. This communicative coupling may be via a wireless or a wired communication system.
[0111] The processing unit 114 includes a processor 114a which is configured to execute one or more instructions which may be stored, as a computer program, on a memory of the processing unit 114b. This memory 114b may include volatile and / or non-volatile memory. The processing unit 1 14 may be, for example, a computer system and could be a laptop, a desktop computer, a tablet, a mobile (cellular) telephone, a small form factor computer, or the like. In some embodiments, the one or more instructions are stored on a non-transitory computer readable medium.
[0112] The processing unit 114 may be configured to store images or parts of images, captured by the camera module 111 and sent to the processing unit 1 14, in the memory 1 14b as image data. The one or more instructions, when executed, may perform one or more processes on the images as described herein.
[0113] The pest detection system 1 may, in some embodiments, include an output unit 115 (see e.g. Fig. 11). The output unit 115 may be configured to provide an output indicative of an aspect of the operation of the pest detection system 1 to a user or operator. As such, the output unit 1 15 may be communicatively coupled to the processing unit 1 14 and / or the camera module 111 - each of which may be configured to control the output unit 1 15 or a part thereof to convey information about an aspect of its operation. The output unit 1 15 may include a visual output element 1 15a such as a light (which may be a light emitting diode) or a display screen. The output unit 1 15 may include an audio output element 1 15b which may include a sounder (such as a buzzer, bell, or speaker). The output unit 115 may provide an indication of one or more of: that the pest detection system 1 has power, that the pest detection system 1 is operating, that the camera module 1 11 is capturing images, that there is an error in the operation of the pest detection system 1 , that data is being transmitted from the communication sub-system 13 or the storage sub-system 12, or the like.
[0114] As described herein, in some embodiments, the imaging sub-system 11 may be communicatively coupled to the storage sub-system 12 (see e.g. Fig. 12). The processing unit 114 may be communicatively coupled to the storage sub-system 12 (this coupling may be via a wired data bus, for example).
[0115] The storage sub-system 12 may be configured to receive data from the imaging sub-system 11 (e.g. from the processing unit 114) and to store that data on a storage device 121 of the storage subsystem 12. The storage device 121 may be a computer readable medium. In some embodiments, the storage device 121 is removable from one or more other parts of the pest detection system 1. So, for example, the storage device 121 may comprise a flash drive (otherwise known as a pen drive or memory stick). The flash drive may include non-volatile memory for the storage of data and communication elements to enable the flash drive to communicate with a computing device (such as the processing unit 114). The storage sub-system 12 may include a communication port 122 (such as a universal serial port socket / plug) which is configured to mate selectively with a corresponding communication power (e.g. a plug / socket) for the storage device 121 to enable the transfer of data from the processing unit 114 (or other part of the imaging sub-system 11) to the storage device 121. The storage sub-system 12 may be configured to receive data from the storage device 121 and to communicate that data to the imaging sub-system 11 (e.g. to the processing unit 114 and / or the camera module 111). This data may include, for example, software or firmware updates, licence keys, and the like.
[0116] The communication sub-system 13 (see e.g. Fig. 13) may be communicatively coupled to the imaging sub-system 11. The processing unit 114 may be communicatively coupled to the communication sub-system 13 (e.g. via a wired data bus).
[0117] Accordingly, the communication sub-system 13 may be configured to receive data from the imaging sub-system 11 (e.g. from the processing unit 114) and to communicate (i.e. transmit) that data (or a part thereof) to the remote management system 3. The communicative coupling between the communication sub-system 13 and the remote management system 3 may be over a wired and / or wireless communication network. This network may include parts which use multiple different protocol and communication mechanisms. For example, the communication sub-system 13 may be configured to communicate with the remote management system 3 using one or more of: a cellular network, a wide-area network (such as the internet), and a local area network (e.g. using Ethernet^™) or WiFi<R™>).
[0118] In some embodiments, the communication sub-system 13 includes, therefore, a network I / O module
[0119] 131 which may be in the form of a circuit which is configured to manage and enable the communicative coupling with the remote management system 3.
[0120] The communication sub-system 13 may include a cache memory 132 which is configured to provide temporary local storage for data before it is transmitted to the remote management system 3.
[0121] Accordingly, the communication sub-system 13 may be configured to store data in the cache memory
[0122] 132 when the communicative coupling to the remote management system 3 is not available. For example, if there is a wireless link in the communication network between the communication subsystem 13 and the remote management system 3 then this wireless link may not always be available - the vehicle 100 may move into and out of range of the wireless link for example. Therefore, the cache memory 132 may provide temporary storage for data which is then transmitted to the remote management system 3 when the link is available.
[0123] The communication sub-system 13 may be configured to receive data from the remote management system 3 and to communicate that data to the imaging sub-system 11 (e.g. to the processing unit 114 and / or the camera module 111). This data may include, for example, software or firmware updates, licence keys, and the like. The location sub-system 14 (see e.g. Fig. 14) may be configured to determine its geographical location and, therefore, a geographical location of at least a part of the pest detection system 1 (e.g. the camera module 111). The location sub-system 14 may be configured to determine a location of the vehicle 100. The location sub-system 14 may include, for example, a satellite-based location system module 141 such as a Global Positioning System receiver, or a receiver for one or more of GLONASS, Galileo, Beidou, IRNSS (NAVIC), or QZSS. The location sub-system 14 may, in some embodiments, be configured to receive signals transmitted from one or more beacons and may use the received signals (e.g. through triangulation) to determine its location relative to the beacons. Accordingly the location sub-system 14 may be configured to determine and output location data representative of the geographical location of the location sub-system 14 (and, hence, the pest detection system 1 or at least the camera module 111 thereof).
[0124] The location sub-system 14 may be communicatively coupled to the imaging sub-system 11 (e.g. to the processing unit 114) and may be configured to send to the imaging sub-system 11 (e.g. to the processing unit 114) data including the geographical location as determined by the location subsystem 14. In some embodiments, the location sub-system 14 is also configured to communicate current time information to the imaging sub-system 11 (e.g. to the processing unit 114).
[0125] The power sub-system 15 (see e.g. Fig. 15) may be configured to provide electrical power to one or more other components of the pest detection system 1. For example, the power sub-system 15 may be configured to provide electrical power to the imaging sub-system 11 (e.g. to one or both of the camera module 111 and the processing unit 114), and / or the storage sub-system 12, and / or the communication sub-system 13, and / or the location sub-system 14.
[0126] The power sub-system 15 may include a connector 151 which is configured to be coupled to the electrical system 105 of the vehicle 100. As such, the power sub-system 15 may provide electrical power from the vehicle 100 to the pest detection system 1.
[0127] The power sub-system 15 may include one or more batteries 152 which are configured to provide electrical power to the pest detection system 1.
[0128] In some embodiments, the one or more batteries 152 are used to provide an uninterruptable power supply such that variations in the electrical power from the electrical system 105 of the vehicle 100 can be compensated for using electrical power from the one or more batteries 152. In some embodiments, the one or more batteries 152 are used in combination with the electrical system 105 of the vehicle 152 to provide electrical power to the pest detection system 1 which has a higher voltage than the voltage provided by the electrical system 105. In some embodiments, the pest detection system 1 is electrically isolated from the electrical system 105 of the vehicle 100 and so the power sub-system 15 provides all of the electrical power required to operate the pest detection system 1 without using electrical power from the electrical system 105 of the vehicle 100 (this may be achieved using the one or more batteries 152, for example).
[0129] In some embodiments, the power sub-system 15 is configured to determine when the vehicle 100 is operating - e.g. when the engine 103 is running - and may start the pest detection system 1 based on the determined operation of the vehicle 100. When the vehicle 100 ceases to operate, then the power sub-system 15 may be further configured to detect this change and to trigger the turning off (i.e. the shutting down) of the pest detection system 1. This determining may be based on the connection of the power sub-system 15 to the electrical system 105 and / or may be based on a connection of the power sub-system 15 to a control bus of the vehicle 100.
[0130] In some embodiments, the pest detection system 1 or parts thereof are provided within a case 16 (see e.g. Fig. 16 and 17). The case 16 may be configured to inhibit or substantially prevent the ingress of fluids (such as water) and / or dirt and / or may protect against vibration. The case 16 may, in some embodiments, house the processing unit 114. The case 16 may, in some embodiments, house one or more of at least part of the storage sub-system 12, at least part of the communication sub-system 13, at least part of the location sub-system 14, and at least part of the power sub-system 15.
[0131] The case 16 may carry, in an outer wall thereof, one or both of the communication port 12 and the connector 151 . In some embodiments, the case 16 defines at least one port through which cables for the camera module 11 1 and / or location sub-system 14 may pass - these parts of the pest detection system 1 , or portions thereof, being located outside of the case 16 in such embodiments. As will be appreciated, satellite-based location system module 141 may need to be located outside of the case 16 in order to be able to receive signals for its operation. In some embodiments, the satellite-based location system module 141 or an antenna thereof may be located, for example, in or adjacent the camera module 111. In other embodiments, the satellite-based location system module 141 may be locatable elsewhere on the vehicle 100 and / or tiller 50.
[0132] In some embodiments, the case 16 may carry, in an outer wall thereof, one or more elements of the output unit 1 15 - e.g. the visual output element 115a and / or the audio output element 1 15b.
[0133] The case 16 may include a case mounting bracket 161 for securing the case 16 to a part of the vehicle 100 and / or tiller 50. Accordingly, in some embodiments, the case mounting bracket 161 may include a lip 161a (e.g. in the form of a right-angle section beam) which is configured to engage a generally horizontal beam or other member of the vehicle 100 and / or tiller 50. The lip 161a may be located towards an upper part of the case 16. The case mounting bracket 161 may include a hook member 161 b which is configured to engage a generally vertical beam or other member of the vehicle 100 and / or tiller 50. The hook member 161 b may be moveable between an extended position - in which the generally vertical beam can be moved into a channel defined by the hook member 161 b and a retracted position in which the generally vertical beam is trapped within said channel. The movement of the hook member 161 b may be achieved by the use of a threaded member 161c which engages a threaded part of the hook member 161 ba (see e.g. Fig. 17).
[0134] The remote management system 3 (see e.g. Fig. 18) may include a computing device 31 which is communicatively coupled to the pest detection system 1 as described herein. The pest detection system 1 (e.g. the processing unit 114) may be configured to communicate data to the remote management system 3 and may be configured to receive data from the remote management system 3. Likewise, the remote management system 3 may be configured to transmit data to the pest detection system 1 and to receive data from the pest detection system 1.
[0135] The remote management system 3 may be communicatively coupled to the pest detection system 1 via the communication sub-system 13 and this coupling may be wired or wireless. In some embodiments, the remote management system 3 is located remotely from the pest detection system 1 and the vehicle 100. In some embodiments, the remote management system 3 is located remotely from the pest detection system 1 but is located on or within the vehicle 100 (or tractor 300).
[0136] The remote management system 3 may be configured to send software, software updates, firmware, firmware updates, licence keys, licence information, and the like to the pest detection system 1 . The pest detection system 1 may be configured to install or update software or firmware based on this received data, for example.
[0137] The remote management system 3 may be a laptop, a desktop computer, a tablet, a mobile (cellular) telephone, or the like. In some embodiment, the remote management system 3 includes a server and may include multiple servers and other computing devices.
[0138] As discussed above, in versions in which the tiller 50 is part of a harvester, the pest detection system 1 may be secured to the harvester in a location such that the one or more harvested items 21 pass through the field of view of the imaging sub-system 1 1 (e.g. of the camera module 111 ). This securing may be achieved by use of the mounting bracket 113.
[0139] In some embodiments, the positioning of the pest detection system 1 is such that the lowermost part of the shroud 112 is between 10cm and 30cm from the surface over which the one or more harvested items 21 are or will pass. During operation of the harvester, the harvester will typically move within a field 200 along rows of harvestable items 22. In the case of the harvestable items 22 being a root vegetable, then the harvestable items 22 are generally buried. The share 106 (i.e. tiller 50) of the harvester 100 lifts the harvestable items 22 - which become harvested items 21 as a result - from the ground and into the harvester 100. In so doing the share 106 tills, or agitates, the soil.
[0140] Therefore, one or more harvested items 22 pass through the harvester and past the field of view of the imaging sub-system 1 1 , typically on a conveyor, and those harvested items 22 may carry one or more pests 6 with them or in soil conveyed with the harvested items 22. Such pests 6 can, therefore, be detected by the pest detection system 1 during harvesting.
[0141] Similarly, in versions in which the tiller 50 is not a part of a harvester, the tiller 50 will typically move (e.g. as it is towed by the vehicle 100) within a field 200 to till the soil of the field 200, and may move along rows of crops (e.g. in the case of an inter-row cultivator).
[0142] The method of operation of the pest detection system 1 is controlled by instructions which are executed by the processing unit 1 14 - also as described herein - and any reference to method steps in this regard should be construed as encompassing instructions which, when executed, cause those method steps to occur.
[0143] The pest detection method implemented by the pest detection system 1 may include at least a training phase and an operative phase.
[0144] The training phase may include training a machine learning model to detect the pest or pests 6. The machine learning model may be a neural network, optionally a convolutional neural network, such as VGG16. The machine learning model may run on the processing unit 114. The machine learning model may, therefore, be stored in the memory 114b and may run on the processor 114a. Other examples of suitable machine learning models include the AlexNet, DenseNet, and ResNet models.
[0145] The machine learning model may be trained using a training data set, which may be stored in the storage sub-system 12 and / or memory 114b. The training data set may include images of the pest or pests 6 to be detected by the pest detection system 1 . The training data set may include a mix of images in which the pest 6 is not present, images in which a single pest 6 is present and / or images in which a plurality of pests 6 are present (which may be of the same type or different types).
[0146] The training images may mimic the environmental conditions that are expected in use, for example including soil and / or plants. The training data set may include images of a proxy for the pest 6 that is to be detected by the pest detection system 1. The images of the proxy may be used to train the machine learning model to detect the pest 6. The proxy may, therefore, be visually similar to, or indistinguishable from, the pest 6. For example, the proxy may be a man-made reproduction of the pest 6 (e.g. created from a plastics material), or may be a visually similar or indistinguishable species. This may be advantageous where the pest 6 is not readily available. For example, where the pest 6 is wireworms, the proxy may be mealworms. More specifically, the wireworm pest 6 species to be detected may be agriotes lineatus, agriotes obscurus, and / or agriotes sputator, and the proxy mealworm species may be tenebrio molitor.
[0147] The training data set may include images acquired by the camera module 111. The training phase may, therefore, include acquiring images using the camera module 1 11. The camera module 111 may be configured to acquire images of a ground medium for use in training the machine learning model. The training phase may include seeding the pests 6 in a training environment and acquiring images of the pests 6 using the camera module 11 1. The training phase may include seeding the proxy for the pest 6 in a training environment and acquiring images of the proxy using the camera module 111. In the training phase, therefore, the imaging sub-system 11 may be mounted to the vehicle 100 and / or tiller 50 as described herein.
[0148] The training images may be modified before they are used to train the machine learning model. The processing unit 114 may, therefore, be configured to modify, or transform, the training images, before they are used to train the machine learning model. The modified images may be stored in the training data set.
[0149] The training images may be modified by splitting each image into a plurality of sub-frames, also referred to as tiles (see e.g. Fig. 19 and 20). An unmodified image frame comprises an array of pixels, having a width and a height. The image may be modified by splitting the frame into a set of sub-frames or tiles. Each sub-frame or tile may include a subset of the pixels making up the unmodified image frame. For example, in the example shown in Figs. 19 and 20, an image frame has been split into four equal sub-frames or tiles, one of which is shown in Fig. 20, and which corresponds to the area marked “c” in Fig. 19. The grid superimposed on the image of Fig. 19 indicates how the image is split into the four sub-frames, or tiles, by halving the width and height of the frame. The images may be split into sub-frames or tiles of equal pixel area but may also be split into unequal tiles in some versions.
[0150] The training images may be split into at least 2 tiles, at least 4 tiles, at least 10 tiles, at least 16 tiles, at least 20 tiles, at least 50 tiles, at least 64 tiles, at least 100 tiles, at least 200 tiles, at least 256 tiles, at least 400 tiles, at least 512 tiles, at least 600 tiles, at least 700 tiles, at least 800 tiles, at least 896 tiles, at least 900 tiles, or at least 1 ,000 tiles. The training images may be split into tiles by dividing the width of the image by a first factor and dividing the height of the frame by a second factor. The first and second factors may be equal, for example, the first and second factors may be 2, 4, 8, 16, or 32. The first and second factors may be unequal, for example, the first factor may be 32 and the second factor may be 28. If the number of tiles chosen, or the factors by which the width and height of the array are to be divided, do not allow each tile to have an equal number of pixels, then some of the tiles may include a different number of pixels.
[0151] Generating tiles from unmodified image frames has been found to be particularly effective for training the machine learning model where the width of the frame is divided by 32 and the height of the frame is divided by 28, to generate 896 tiles. Machine learning models capable of detecting pests 6 reliably are also attainable using fewer tiles, for example by dividing the width and height by 16, to generate 256 tiles.
[0152] Precision and recall for a selection of neural networks and tiling approaches are shown in table 1 below, where the pest 6 that the system 1 was trained to detect was wireworm.
[0153] Table 1: Precision and recall fora variety of machine learning models and tiling approaches
[0154] Splitting the training images into sub-frames, or tiles, increases the amount of space taken up by the pest 6 in the tile. For example, the space taken up by the pest 6 can be measured by comparing the number of pest pixels in the frame, or sub-frame, to the total number of pixels in the frame, or to the number of non-pest pixels in the frame. For a full, unmodified image frame containing one instance of a pest 6, the pixels forming the image are likely to be dominated by non-pest pixels. For a subframe, or tile, the pest 6 pixels will account for a larger portion of the total pixels present (for the subframe containing the pest 6). The remaining sub-frames or tiles generated from the original image will, in this example, not contain any pests 6. Dividing the training images into tiles in this manner has been found to give improved precision and recall, compared to training data sets that use unmodified training images. The training images (whether unmodified or split into tiles) included in the training data set may include ground truth data. The machine learning model may, therefore, learn to detect the pest 6 based on the ground truth data provided in the training data set. The training data set may be split into categories based on ground truth data associated with the images included in the training data set. The training images may each be associated with a ground truth number of pests 6, and the training images may be categorised based on the number of pests 6 visible in each image (which may be a tile as described). The number of pests 6 in a given image may be determined as the number of central points of ground truth bounding box labels within that image.
[0155] The training images may, in some versions, be manually annotated by labelling pests 6 visible in the images with bounding boxes. The use of bounding boxes enables use of the training data set for training object detection models, and enables pest 6 localisation within frames, e.g. when tiling the frames or performing sliding-window analysis, as described in more detail below.
[0156] A first category of training images may, therefore, be control images in which no pest 6 is present. A second category of training images may contain one, and only one, pest 6 in each image. The categories may proceed with increasing numbers of pests shown in each image (e.g. 2, 3, 4, etc.). The training data set may contain approximately equal numbers of control images and pestcontaining images (e.g. the number of control images may be within about 10% of the number of pest-containing images). This may, therefore, provide a balanced training data set that is not dominated by any particular category of image.
[0157] The training data set may include one or more synthetic images. A synthetic image is an image that has been modified to depict an entity that was not present in the original image. A synthetic image may be created by inserting a depiction of a pest 6 into the image. For example, a depiction of a pest 6 may be inserted to an image that did not contain any pests 6, to create a synthetic image including at least one pest. A plurality of pests 6 may be inserted into such synthetic images. In this manner, training data may be generated with training images including any number of pests 6, as required for training the machine learning model. The use of synthetic images may, therefore, mitigate the need to acquire a large library of real images of pests 6 for training the machine learning model. However, in some versions, the training data set does not include any synthetic images (but may still include sub-frames or tiles).
[0158] The training images may use the RGB colour space. Additionally, or alternatively, the training images may use the BGR, Haematoxylin-Eosin-DAB (HED), HSV, and / or CIEIab colour spaces. The training data set may, therefore, include a set of training images, which may include one or more subsets of RGB images, BGR images, HED images, HSV images, or CIEIab images. The training images may include HED images in which the intensity of the H channel is in the range of 70-90%, optionally 75-85%, optionally 78-82%, and optionally around 80%. The intensity of the D channel may be greater than 75%, greater than 85%, greater than 90%, greater than 95%, around 95-99%, or around 99%. In particular, the intensity of the H channel may be around 80% and the intensity of the D channel may be around 99%.
[0159] Fig. 21a shows a RGB image of wireworm pests 6 on a backdrop of soil. Fig. 21 b shows the same image with HED conversion, in which the H channel intensity is 80% and the D channel intensity is 99%. Under these conditions, the wireworms 6 contrast strongly against the soil background (in Fig. 22 the soil is generally yellow and the wireworms 6 are generally blue). Similarly, Fig. 22a shows a RGB image of wireworm pests 6 and Fig. 22b shows a corresponding HED-stained image.
[0160] The training images may include one or more channels of a colour space, and may not use all of the channels associated with a colour space. For example, in the case of the HSV colour space, the images may use the full HSV colour space (see Fig. 22c), only the H channel (see Fig. 22d), only the S channel (see Fig. 22e), only the V channel (see Fig. 22f), only the H and S channels (see Fig. 22g), only the H and V channels (see Fig. 22h), or only the S and V channels (see Fig. 22i). Similarly, for the CIEIab colour space, the images may use the full CIEIab colour space (see Fig. 22j), only the I channel (see Fig. 22k), only the a channel (see Fig. 22I), only the b channel (see Fig. 22m), only the I and a channels (see Fig. 22n), only the I and b channels (see Fig. 22o), or only the a and b channels (see Fig. 22p).
[0161] The RGB, CIEIab-l, CIEIab-lb, HED, and HSV-V colour spaces have been found to produce particularly successful outcomes, in terms of the precision and recall of the correspondingly trained machine learning model.
[0162] The machine learning model may be trained and evaluated using k-fold cross-validation, for example 5-fold cross-validation. The k-fold cross validation may be used to validate the machine learning model.
[0163] In an example, the machine learning model is trained for binary classification using the VGG16 architecture, and is trained for 15 epochs with a batch size of 25, using the BCEWithLogits loss function and an SGD (stochastic gradient descent) optimiser (learning rate of 0.001 and momentum of 0.9).
[0164] The training phase may include tilling a ground medium and capturing images of the tilled ground medium using the camera module 111. The tiller 50 may be used to till the ground medium. The pest 6 and / or proxy for the pest 6 may be seeded in the ground medium such that tilling the ground medium exposes the pest 6 and / or proxy for the pest 6 to the camera module 111. Fig. 6 shows an example of a tiller 50, in this case a cultivator, having a tilling member 51 , towed by a vehicle 100 (i.e. a tractor). The imaging sub-system 11 is mounted to the tiller 50 via the camera module mount 11 m. The camera module 11 1 is configured to acquire images of the ground medium as it is tilled by the tiller 50. A training data set including images of the ground with and without pests 6, or the proxy for the pest 6, in view can therefore be acquired by capturing images with the camera module 11 1 as the vehicle 100 moves around the training environment (in this case a field 200). The pests 6, or proxies for the pests 6, can be distributed in the path of the vehicle 100 (and therefore in the path of the camera module 111) to ensure that the training data set includes images of the pest 6 or proxy for the pest 6.
[0165] The machine learning model may be trained to determine one or more pest parameters and to classify images based on the determined pest parameter(s). The one or more pest parameters may be determined by the machine learning model in the operative phase of the pest detection method. The one or more pest parameters may be used to classify images.
[0166] The pest parameter may be the presence or absence of the pest 6. The machine learning model may, therefore, be trained to determine if any pests 6 are present in a given image, and optionally to classify the image accordingly. This may be a binary classification; for example, images may be assigned to a first category if no pests 6 are detected, and assigned to a second category if at least one pest 6 is detected. The machine learning model may not necessarily attempt to count the number of pests 6 detected in such versions. In such versions, therefore, a value of 0 may represent no pests 6 detected, and a value of 1 may represent at least one pest 6 detected.
[0167] The pest parameter may be a number of pests 6 detected. The machine learning model may, therefore, be trained to count the number of pests 6 present in a given image. Images may then be classified into different categories depending on the number of pests 6 detected, for example “none” where no pests 6 are detected, “low” where up to ten pests 6 are detected, and “high” where more than ten pests 6 are detected.
[0168] The pest parameter may be a type of pest 6 detected. This is particularly relevant where the pest detection system 1 is configured to detect a plurality of pest types. The machine learning model may, therefore, be trained to determine a pest type for each pest detected. Images may then be classified into different categories depending on the type of pests 6 detected, for example “none”, “pest A”, “pest B”, and “both”, for an example in which the system 1 is configured to detect two pests, pest A and pest B, for example wireworms and sciarid fly larvae.
[0169] A simple binary classification of images into two classes (pest present and pest absent) has been found to give particularly accurate results. The number of pests 6 present may be estimated using a combination of binary image classification and image tiling, as described below.
[0170] In the operative phase, the camera module 111 may generate image data (corresponding to images captured by the camera module 1 11) and send the image data to the processing unit 114. The processing unit 114 may use the machine learning model to determine one or more pest parameters associated with the image data, and may optionally categorise the image data based on the determined pest parameters.
[0171] The camera module 111 may be configured to capture images periodically, i.e. at predetermined time intervals. The camera module 11 1 may be configured to capture an image around once every 0.05-1 seconds, optionally 0.1 -0.8 seconds, optionally 0.1 -0.5 seconds, optionally 0.2-0.4 seconds, optionally 0.3 seconds.
[0172] The image data generated by the camera module 111 may be stored in association with a corresponding location as determined by the location sub-system 14. Each image captured by the camera module 11 1 may, therefore, be stored in association with a corresponding location. The image and location data may be stored in the storage sub-system 12, for example, or the memory 1 14b. Each image may be associated with GPS coordinates, for example.
[0173] The system 1 , optionally the imaging sub-system 11 , may include a light meter, which may be configured to determine a light level associated with the images captured by the camera module 1 11. The light meter may output light levels in lux, for example. The light meter may output the light level to the processing unit 114, for example. Each image captured by the camera module 111 may, therefore, be stored in association with a corresponding light level, and optionally may additionally be stored with a corresponding location.
[0174] In versions including a harvester, as the one or more harvested items 21 pass through the field of view of the imaging sub-system 11 , the camera module 1 1 may be instructed to capture one or more images of the one or more harvested items 21 . The camera module 111 may be instructed by the processing unit 114 in this regard.
[0175] The tiller 50 may be configured to till the ground as described herein and the camera module 1 11 may be instructed to capture one or more images of the tilled ground medium. The camera module 1 11 may be instructed by the processing unit 1 14 in this regard. In versions not including the tiller 50, the camera module 1 11 may be instructed to capture one or more images of a ground medium, or of a crop, or other location where a pest 6 may be detected. The imaging sub-system 11 may be moved across a target area (e.g. a field) by the vehicle 100 to acquire images of the target area so that pests 6 present in the target area can be detected by the pest detection system 1 .
[0176] The one or more images captured by the camera module 1 11 may be communicated (i.e. transmitted) to the processing unit 114 which is configured, through the execution of corresponding instructions, to process the one or more images - which are represented by image data. This processing may include the use of the machine learning model to determine the one or more pest parameters.
[0177] In some versions the pest detection method may use a plurality of machine learning models to determine the one or more pest parameters. For example, a first machine learning model may use a first model architecture (such as VGG16) and a second model may use a second model architecture (such as ResNet101). Alternatively, the two models may have the same architecture (such as VGG16), but may be trained using different training data sets. For example, a first model may be trained using RGB training images and a second model may be trained using CIEIab-l training images. In such versions, the models may each use a corresponding image format to determine the one or more pest parameters in the operative phase (e.g. the RGB model will use RGB images and the CIEIab-l model will use CIEIab-l images).
[0178] The or each machine learning model may output a confidence value associated with the or each pest parameter. For example, where the machine learning model is configured to determine the presence or absence of the pest 6, the machine learning model may output a floating point number between 0 and 1. A number closer to 1 may indicate a higher confidence that the associated image shows a pest 6 (or vice versa). For binary image classification, the images may be classified based on the confidence value determined by the machine learning model. The images may be classified based on a threshold value, with images associated with a confidence value above the threshold value being placed into a first category (e.g. pest-containing) and images associated with a confidence value below the threshold value being placed into a second category (e.g. not pest-containing). The threshold value may be predetermined or may be altered dynamically. For example, the threshold value may be 0.5. The images may be stored with their associated confidence values for classification later.
[0179] Similarly, where the machine learning model is configured to determine the number of pests 6 present in a given image, the machine learning model may output a confidence value associated with the number of pests. Where the machine learning model is configured to determine the type of pest 6 in an image, a confidence value may be associated with the type of pest predicted by the machine learning model. The machine learning model may use a sliding-window method to analyse the image data (e.g. to determine the one or more pest parameters), in this method, the image frame to be analysed may be divided into tiles or sub-frames. The size of each tile may be the same as the size of the tiles provided in the training data set. The tiles may overlap, such that a given pixel may belong to more than one tile. The degree of overlap between the tiles may be around 70-90%, around 75-95%, or around 80%. Additionally, a zero-padded border may be applied around the image frame to be analysed, which may be proportional to the degree of overlap between the tiles.
[0180] The machine learning model may analyse each tile of the image and may assign a confidence value to each pixel in the tile being analysed. For a binary classification (e.g. into the categories of “pest present” or “pest absent”), the confidence value output may be the same for each pixel in a given tile. For example, every pixel in a tile may be assigned a value of 0.7. With overlapping tiles, each pixel will be assigned multiple confidence values, as the sliding window passes over the image. For example, each pixel in the image frame may be assigned around 25 confidence values. The confidence values for a given pixel may be averaged (e.g. mean average) to provide a single confidence value for each pixel in the image frame. In versions that use multiple machine learning models to analyse the images, the outputs from the models may also be averaged to provide a single confidence value for a given pixel.
[0181] The machine learning model may, therefore, output a confidence value for each pixel in a given image frame. A threshold may be applied to the confidence values, and all values within the threshold may be flattened (for example all values below the threshold may be flattened to 0 or, equivalently, all values above the threshold may be flattened to 1 ; the threshold may be 0.5 in an example). The coordinates of localised peaks in the array of pixels may then be determined, for example using the Scikit-lmage library. The localised peaks may, therefore, represent a prediction of a pest 6 present within the frame at that location. By counting the number of localised peaks present in a given frame, an estimate of the number of pests present in the frame can be made.
[0182] As described above, the same image may be analysed by multiple machine learning models and the outputs from the models may be averaged to improve the accuracy of the outputs.
[0183] An example of the output from the described sliding window analysis is shown in Fig. 23, in which the red boxes indicate ground truth bounding box annotations, the white rings indicate the catchment area around a bounding box to count a prediction as true during model evaluation, the red dots indicate prediction peaks at 0.5 < confidence < 0.6, the purple dots indicate prediction peaks at 0.6 < confidence < 0.7, the dark blue dots indicate prediction peaks at 0.7 < confidence < 0.8, the cyan dots indicate prediction peaks at 0.8 < confidence < 0.9, and the green dots indicate prediction peaks at 0.9 < confidence < 1. The one or more pest parameters may be output to and may be stored in the memory 114b, and / or may be output by the processing unit 114 to the output unit 115 (for display to an operator), the storage sub-system 12 (for storage on the storage device 121), and / or the communication subsystem 13 (for transmission to the remote management system 3).
[0184] In some versions the image data may be sent to the remote management system 3 for processing and the remote management system 3 may use the machine learning model to determine the one or more pest parameters. The processing unit used to run the machine learning model may, therefore, be remote from the camera module 1 11 , for example.
[0185] In some embodiments, the processing unit 114 and / or the remote management system 3 may be configured to generate one or more tabular or graphical or cartographic representations of the one or more pest parameters.
[0186] For example, the processing unit 1 14 and / or the remote management system 3 may be configured to generate a table which identifies the numbers of pests 6 detected in a predetermined geographical area, such as a field. The area may be set by the user.
[0187] The processing unit 1 14 and / or the remote management system 3 may be configured to generate a graph, such as a histogram (see e.g. Fig. 25), showing the number of pest detections made at different confidences.
[0188] The processing unit 1 14 and / or the remote management system 3 may be configured to generate a map showing the numbers of pests 6 detected (which may include showing the presence or absence of pests 6, i.e. zero or non-zero numbers), based on the location at which the corresponding images were acquired. The map may be in the form of a “heat map” in which the number of pests 6 at different geographical locations is represented by different colours on a map. An example of such a map is shown in Fig. 24, in which green squares indicate no pests 6 (in this case wireworms) present in that area, yellow squares indicate one to three pests 6 present, and red squares indicate four or more pests 6 present.
[0189] A date and / or time may be associated with the image data and / or the generated representations. This date and / or time may be indicative of the date and / or time of harvesting or tilling the soil, in versions including a harvester or tiller 50, and may be stored in association with that data or representation in generally the same location.
[0190] In some embodiments, the conditions at one or more locations can be assessed based on the output pest parameter(s) and action taken accordingly. For example, a crop may be planted in an area in which no pests 6 are detected. A crop may not be planted in an area in which pests 6 are detected. A biocide, such as a pesticide, herbicide, or fungicide, may be applied to an area in which pests 6 are detected, and this application may be automatic. For example, the locations at which pests are detected may be output to a sprayer which may have an associated location sub-system, and which may be configured to spray a biocide at the locations at which pests are detected.
[0191] One or more of these resulting actions may be implemented in an automated manner - e.g. by the remote management system 3 instructing equipment to perform the resulting actions.
[0192] When used in this specification and claims, the terms "comprises" and "comprising" and variations thereof mean that the specified features, steps or integers are included. The terms are not to be interpreted to exclude the presence of other features, steps or components.
[0193] The invention may also broadly consist in the parts, elements, steps, examples and / or features referred to or indicated in the specification individually or collectively in any and all combinations of two or more said parts, elements, steps, examples and / or features. In particular, one or more features in any of the embodiments described herein may be combined with one or more features from any other embodiment(s) described herein.
[0194] Protection may be sought for any features disclosed in any one or more published documents referenced herein in combination with the present disclosure.
[0195] Although certain example embodiments of the invention have been described, the scope of the appended claims is not intended to be limited solely to these embodiments. The claims are to be construed literally, purposively, and / or to encompass equivalents.
Claims
CLAIMS1. A pest detection system, comprising: a camera module configured to generate image data; and a processing unit configured to receive the image data, to determine one or more pest parameters associated with the image data using a machine learning model, and to record the one or more pest parameters on a computer readable medium.
2. A pest detection system according to claim 1 , further including a soil agitator, wherein the camera module is configured to capture images of soil agitated by the soil agitator.
3. A pest detection system according to any preceding claim, wherein the one or more pest parameters include at least one of a presence or absence of a pest, a number of pests, or a type of pest.
4. A pest detection system according to any preceding claim, wherein the machine learning model is trained using training data including images of a proxy for a pest.
5. A pest detection system according to claim 4, wherein the pest is a wireworm species and the proxy is a mealworm species.
6. A pest detection system according to any preceding claim, wherein the machine learning model is trained using training data including at least one image formed by an array of pixels, wherein the image is divided into tiles, each tile including a subset of the pixels in the image, and the machine learning model is trained using the tiles.
7. A pest detection system according to any preceding claim, wherein the processing unit is configured to determine the pest parameter by dividing images captured by the camera module into overlapping tiles, assigning a confidence value to each pixel in each tile such that each pixel is assigned a plurality of confidence values, and averaging the confidence values for each pixel.
8. A pest detection system according to claim 7, wherein the one or more pest parameters includes a number of pests, and the processing unit is configured to determine the number of pests by flattening the confidence values for each pixel falling within a threshold value, determining the coordinates of localised confidence value peaks in the array of pixels, and counting the number of localised peaks.
9. A pest detection method, comprising: training a machine learning model to determine one or more pest parameters;generating image data using a camera module; analysing the image data with a processing unit, using the machine learning model, to determine the one or more pest parameters; and storing the one or more pest parameters on a computer readable medium.
10. A pest detection method according to claim 9, further including agitating soil and capturing images of the agitated soil with the camera module.
11. A pest detection method according to claim 9 or 10, wherein the one or more pest parameters include at least of a presence or absence of a pest, a number of pests, or a type of pest.
12. A pest detection method according to any of claims 9-1 1 , wherein the machine learning model is trained using training data including images of a proxy for a pest.
13. A pest detection method according to claim 12, wherein the pest is a wireworm species and the proxy is a mealworm species.
14. A pest detection method according to any of claims 9-13, wherein the machine learning model is trained using training data including at least one image formed by an array of pixels, wherein the image is divided into tiles, each tile including a subset of the pixels in the image, and the machine learning model is trained using the tiles.
15. A pest detection method according to any of claims 9-14, wherein the processing unit is configured to determine the pest parameter by dividing images captured by the camera module into overlapping tiles, assigning a confidence value to each pixel in each tile such that each pixel is assigned a plurality of confidence values, and averaging the confidence values for each pixel.
16. A pest detection method according to claim 15, wherein the one or more pest parameters includes a number of pests, and the processing unit is configured to determine the number of pests by flattening the confidence values for each pixel falling within a threshold value, determining the coordinates of localised confidence value peaks in the array of pixels, and counting the number of localised peaks.