Estimation of crop type and / or sowing date

By integrating crop growth simulation models with remote sensing data, the system addresses the limitations of existing methods to provide early and accurate crop type and sowing date estimates, enhancing the efficiency and accuracy of crop monitoring.

JP7617928B2Active Publication Date: 2025-01-20INTERNATIONAL BUSINESS MACHINE CORPORATION
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2022544634
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-02-03
Filing Date
2021-01-26
Publication Date
2025-01-20
Estimated Expiration
2041-01-26

AI Technical Summary

Technical Problem

Existing crop monitoring methods, such as remote sensing and ground surveys, are limited by high latency, cost, and low accuracy, making early estimation of crop type and sowing date impractical.

Method used

Combining crop growth simulation models with remote sensing data to create a system that determines historical and simulated crop growth time series, allowing for early estimation of crop type and sowing date by matching these series using algorithms.

Benefits of technology

Provides early and accurate estimates of crop type and sowing date, reducing latency and improving business value for stakeholders by leveraging the strengths of both remote sensing and simulation models.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007617928000001
    Figure 0007617928000001
  • Figure 0007617928000002
    Figure 0007617928000002
  • Figure 0007617928000003
    Figure 0007617928000003
Patent Text Reader

Abstract

Methods, apparatus, and computer program products are provided for estimating crop type and / or sowing date. In some embodiments, a historical crop growth time series and multiple simulated crop growth time series are determined, and the historical time series are matched with each simulated time series to determine an estimated crop type and / or sowing date. For example, one simulated time series may be determined for each crop type / sowing date combination in a set of one or more crop types and one or more sowing dates based on historical crop data. Each time series represents crop growth in an area of ​​interest and includes elements(s) including crop-specific parameter(s), such as leaf area index (LAI). The historical time series may be determined based on remote sensor data. Each simulated time series may be determined based on historical crop data, geospatial data, and meteorological data using a crop growth simulation model.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates generally to the field of crop monitoring. More particularly, the present invention relates to providing an early estimate of crop type and / or sowing date. [Background technology]

[0002] Crop monitoring is widely used by governments as well as agribusinesses. For example, agribusinesses such as agricultural commodity trading, seed supply, pesticide manufacturing, and logistics services use crop monitoring in various aspects of their business. Crop monitoring is also used in many government functions, including policy management.

[0003] Crop monitoring exists in a wide variety of forms. For example, satellite crop monitoring facilitates monitoring of real-time crop vegetation indices for an area of ​​interest (e.g., one or more fields) through the use of spectral analysis of high-resolution satellite imagery. Crop monitoring is often used to answer questions related to crop development, such as "What is the sowing situation during the current crop season (i.e., how much area has already been sown)?" and "How much area is under different crops?". Such questions often come down to providing estimates of crop type and / or sowing date for the area of ​​interest.

[0004] Reliable estimates of crop type and / or sowing date can be of immense value, especially if available at an early stage. For example, early availability of this information can provide a competitive advantage to companies that use it (e.g., in applications such as crop insurance, agricultural trading, seed supply, agrochemical manufacturing, and logistics services). Summary of the Invention

[0005] Embodiments of the present disclosure include methods, apparatus, and computer program products for estimating crop type and / or sowing date. In some embodiments, a historical crop growth time series and a plurality of simulated crop growth time series are determined, and the historical crop growth time series is matched with each of the plurality of simulated crop growth time series to determine an estimated crop type and / or sowing date. For example, a simulated crop growth time series may be determined for each crop type / sowing date combination in a set of one or more crop types and one or more sowing dates based on historical crop data. Each time series (i.e., the historical crop growth time series and each simulated crop growth time series) represents crop growth in an area of ​​interest and includes one or more elements including one or more crop-specific parameters such as a leaf area index (LAI), a normalized difference vegetation index (NDVI), etc. The historical crop growth time series may be determined based on remote sensor data, such as a time series of image data of the area of ​​interest. Each simulated time series may be determined based on historical crop data, geospatial data, and weather data using a crop growth simulation model. The historical crop data may include, for example, crop types previously grown in a crop growing region associated with the area of ​​interest during at least one previous crop cycle and a sowing calendar for each of those crop types. The geospatial data may include, for example, agricultural information characterizing the area of ​​interest. The weather data may include, for example, weather time series representing one or more weather conditions in a weather region associated with the area of ​​interest.

[0006] The embodiments will now be described in conjunction with the accompanying drawings, in which like reference numbers refer to like elements and in which: [Brief description of the drawings]

[0007] [Figure 1]FIG. 1 illustrates a cloud computing node according to one or more embodiments. [Diagram 2] FIG. 1 illustrates a cloud computing environment in accordance with one or more embodiments. [Diagram 3] FIG. 2 illustrates an abstraction model layer according to one or more embodiments. [Figure 4] FIG. 1 illustrates an exemplary system for estimating crop type and / or sowing date, according to one or more embodiments. [Diagram 5] 1 is a flow diagram of an exemplary method for estimating crop type and / or sowing date according to one or more embodiments. [Figure 6] 6 is a flow chart of an example implementation of the example method for estimating crop type and / or sowing date shown in FIG. 5 , according to one or more embodiments. [Figure 7A] 7A is a flow chart of another exemplary implementation of the exemplary method for estimating crop type and / or sowing date shown in FIG. 5 , in which the crop type is estimated in a first stage ( FIG. 7A ) and the sowing date is estimated in a second stage ( FIG. 7B ), according to one or more embodiments. [Figure 7B] 7A is a flow chart of another exemplary implementation of the exemplary method for estimating crop type and / or sowing date shown in FIG. 5 , in which the crop type is estimated in a first stage ( FIG. 7A ) and the sowing date is estimated in a second stage ( FIG. 7B ), according to one or more embodiments. [Figure 8] 6 is a flow chart of yet another example implementation of the example method for estimating crop type and / or sowing date shown in FIG. 5 , according to one or more embodiments. [Figure 9] FIG. 1 is a block diagram of an exemplary and non-limiting system that facilitates estimating crop type and / or sowing date, according to one or more embodiments. [Figure 10]FIG. 1 illustrates an exemplary client system for requesting crop type and / or sowing date estimations and displaying the results of the estimations, according to one or more embodiments. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0008] Traditionally, estimates of crop type and / or sowing date are performed using remote sensing and ground surveys, which are typically available several weeks after sowing. In accordance with some embodiments, improving this latency (e.g., even to just a week or less) can provide significant business value to all parties (i.e., consumers of such information, as well as providers thereof).

[0009] Ground surveys have several drawbacks such as high cost, high latency, low accuracy, limited coverage area, non-scalability, etc. These drawbacks make it impractical in terms of cost and effort to use ground surveys for early estimation of crop type and / or sowing date.

[0010] Remote sensing has several advantages, e.g., low cost, medium latency, good accuracy, wide coverage, etc. However, traditional approaches using remote sensing to estimate crop type and / or sowing date are only valid after a few weeks of crop growth.

[0011] Crop growth simulation models are typically used as decision support systems (e.g., to estimate the optimal time to apply fertilizer) and to provide "yield projection" maps. As a by-product, crop growth simulation models can provide comprehensive information on the progression of crop health on a regular basis (e.g., daily or even more frequently).

[0012] According to some embodiments, methods, apparatus, and computer program products for estimating crop type and / or sowing date benefit from the combined use of one or more crop growth simulation models and remote sensing. Further, according to some embodiments, crop growth simulation models can be used in conjunction with remote sensing to provide early estimates of crop type and / or sowing date, facilitating the determination of derived information such as sowing patterns and acreage under multiple crop types very early in the crop cycle.

[0013] As used herein, the term "crop type" can include the type of crop planted as well as the variety or cultivar of that crop type.

[0014] According to some embodiments, a historical crop growth time series and a plurality of simulated crop growth time series are determined, and the historical crop growth time series is matched with each of the plurality of simulated crop growth time series to determine an estimated crop type and / or sowing date. For example, a simulated crop growth time series may be determined for each crop type / sowing date combination within a set of one or more crop types and one or more sowing dates based on historical crop data. As used herein, the term "crop type / sowing date combination" refers to a single crop type and a single sowing date selected from within a set of one or more crop types and one or more sowing dates. Each time series (i.e., the historical crop growth time series and each simulated crop growth time series) represents crop growth in the area of ​​interest and includes one or more elements including one or more crop-specific parameters such as leaf area index (LAI), normalized difference vegetation index (NDVI), fraction of absorbed photosynthetically active radiation (fAPAR), etc. The historical crop growth time series may be determined based on remote sensor data, such as a time series of image data of the area of ​​interest. Each simulated time series can be determined based on historical crop data, geospatial data, and meteorological data using a crop growth simulation model.

[0015] As noted above, the historical crop growth time series may be determined based on remote sensor data, such as a time series of high spatial resolution image data of the area of ​​interest. The remote sensor data may include, for example, a time series of high spatial resolution image data of the area of ​​interest captured by one or more satellites, one or more aerial drones, or one or more aircraft, or a combination thereof, during the previous and / or current crop cycle. For example, the remotely sensed image data may be captured periodically (e.g., daily) from an orbiting satellite and may provide field-level resolution details. The image data may include, but is not limited to, optical, synthetic aperture radar (SAR), and advanced synthetic aperture radar (ASAR) image data. For optical imagery, cloud cover may prevent or delay image acquisition at certain locations. SAR imagery, on the other hand, can ensure temporal frequency of images throughout the growing cycle due to its inherent ability to observe the Earth's surface independent of cloud cover.

[0016] The optical images may be obtained, for example, from the European Space Agency's (ESA) Sentinel-2, NASA / US Geological Survey's LANDSAT ("Land Remote-Sensing Satellite"), SPOT (French: "Satellite Pour l'Observation de la Terre", or "Satellite for Earth Observation"), etc. For example, the optical images may include a set of N Sentinel-2 optical images acquired periodically (e.g., daily) in the current crop cycle from the beginning of the sowing calendar to the current date. In another example, the optical images may include a set of N LANDSAT optical images (e.g., ETM+ ("Enhanced Thematic Mapper Plus")) acquired periodically (e.g., daily) in the current crop cycle from the beginning of the sowing calendar to the current date. In yet another example, the optical images may include a set of N SPOT optical images (e.g., HRV ("High Resolution Visible") and XS ("Multispectral")) acquired periodically (e.g., daily) in the current crop cycle from the beginning of the sowing calendar to the current date.

[0017] The SAR images may be acquired, for example, from the European Space Agency's (ESA) Sentinel-1, the ESA's ERS ("European Remote-Sensing Satellite"), the Canadian Space Agency's (CSA) RADARSAT ("Radar Satellite"), etc. For example, the SAR images may include a set of N Sentinel-1A VV / VH polarized SAR images (Interferometric Wide Swath, Ground Range Detected) acquired periodically in the current crop cycle from the beginning of the sowing calendar to the current date. In another example, the SAR images may include a set of N ERS SAR images (e.g., PRI ("Pulse Repetition Interval" format) acquired periodically (e.g., daily) in the current crop cycle from the beginning of the sowing calendar to the current date. In yet another example, the SAR imagery may include a set of N RADARSAT SAR images (e.g., in SGF ("SAR Georeferenced Fine" format")) acquired periodically (e.g., daily) in the current crop cycle from the beginning of the sowing calendar to the current date.

[0018] ASAR imagery may be obtained, for example, from the European Space Agency's (ESA) ENVISAT ("Environmental Satellite").

[0019] In some embodiments, a historical crop growth time series may be determined using remote sensor data from a single type of remote sensor (e.g., optical). For example, the historical crop growth time series may include a time series having one or more optically derived crop-specific parameters (e.g., NDVI, LAI, etc.) determined based on optical image data. According to one or more embodiments, the historical crop growth time series may include an NDVI time series determined based on Sentinal-2 optical imagery. For example, the NDVI values ​​of the NDVI time series may be calculated using visible and near-infrared (NIR) band reflectance values ​​(e.g., band 4 (red) and band 8 (NIR) reflectance values) according to the following formula: NDVI=(NIR-red) / (NIR+red) (1) where NIR and red represent reflectance in the near infrared and red band spectra, respectively. Since green leaves absorb visible light and reflect NIR light, the higher the density of green leaves during crop growth, the higher the NDVI value. As crop growth rates differ for different crop types, the change in NDVI values ​​over the crop cycle differs for different crops. Therefore, the NDVI time series over the life cycle of a crop can be used as a signature for that crop in identifying the crop type as well as the sowing date of that crop.

[0020] According to one or more embodiments, the historical crop growth time series may include a LAI time series determined based on Sentinal-2 optical imagery. For example, the LAI values ​​of the LAI time series may be calculated according to the following formula: LAI=(NDVI-0.28) / 0.18,NDVI≦0.7 (2) LAI=(SR-1.0) / 0.35,NDVI>0.7 (3) Here, NDVI and SR stand for the normalized difference vegetation index and simple ratio, respectively, and NDVI is calculated according to the above formula (1), and SR is calculated as follows: SR=NIR / red (4) where NIR and red represent the reflectance of the near infrared and red band spectra, respectively. The above equations (1)-(4) are well known in the art. See, for example, BAN et al., “Assimilating MODIS data-derived minimum input data set and water stress factors into CERES-Maize model improves regional corn yield predictions,” PLOS ONE, 21 pages, February 25, 2019. LAI, which represents the leaf surface area available for exchanging energy between the plant and the atmosphere, is an important variable when used to model evapotranspiration, biomass production, and yield.

[0021] In some embodiments, a historical crop growth time series may be determined using remote sensor data from two or more types of remote sensors (e.g., optical and SAR). For example, the historical crop growth time series may include a time series having one or more optically derived crop specific parameters (e.g., NDVI, LAI, etc.) determined based on optical image data and one or more SAR derived crop specific parameters (e.g., VV / VH polarization ratio) determined based on SAR image data. According to one or more embodiments, the historical crop growth time series may include a time series having both optically derived and SAR derived crop specific parameters determined based on Sentinal-2 optical images and Sentinal-1 SAR images, respectively. Examples of suitable crop specific parameters that may be obtained from SAR images include, but are not limited to, VV / VH polarization ratio, localization moments, and Haralik texture. Differences in crop plant structure, leaf density, and field soil properties over the crop life cycle may lead to differences in the strength of the backscattered microwave signal. Therefore, the course of the intensity of the backscattered microwave signal at different polarizations or polarization combinations (e.g., VV / VH polarization ratio) over the life cycle of a crop can also be used as a characteristic property of that crop in identifying the crop type as well as the sowing date of that crop.

[0022] The optical image data may be pre-processed using suitable conventional techniques. For example, the optical image data may be processed using the sen2cor toolbox to level 2A (i.e., surface reflectance values ​​using masks for clouds, cloud shadows, snow, and water) with a spatial resolution of 20 m. Those skilled in the art will appreciate that optical image data sets may be pre-processed using other conventional techniques. For example, different spatial resolutions may be adjusted to the same resolution using nearest neighbor resampling techniques, etc.

[0023] The SAR image data set may be preprocessed using suitable conventional techniques. For example, the SAR image data set may be processed using the Sentinel Application Platform (SNAP) toolbox by performing the following operations: (A) calibrating the data set to obtain the backscatter coefficients, (B) multi-looking the data set with a window size of 2×2 pixels to reach a spatial resolution of 20 m by reducing speckle noise effects, (C) deriving the terrain slope and corresponding orientation by removing the terrain effects in the data set using a digital elevation model (DEM) (e.g., from the Shuttle Radar Topography Mission), and (D) applying a simple Lee filter with a window size of 3×3 pixels to further reduce the speckle noise effects while preserving the spatial resolution of 20 m. Other conventional techniques may be used to preprocess the SAR image data set. For example, the different spatial resolutions may be adjusted to the same resolution using nearest neighbor resampling techniques, etc.

[0024] In some embodiments, the remote sensor data may be provided by one or more remote sensor databases (e.g., 426 in FIG. 4 , 926 in FIG. 9 ) or a geospatial data platform such as IBM® PAIRS (Physical Analytics Integrated Data Repository and Services)-Geoscope. IBM® is a registered trademark of International Business Machines Corporation (“IBM”) in the United States. IBM® PAIRS-Geoscope is a platform specifically designed for large-scale geo-spatiotemporal data (maps, satellite, weather, drones, IoT), query and analysis services. IBM® PAIRS-Geoscope provides access to historical and continuously updated remote sensor data.

[0025] Also, as mentioned above, each simulated crop growth time series may be determined based on historical crop data, geospatial data, and weather data using a crop growth simulation model. Common crop growth simulation models include, but are not limited to, Crop Estimation through Resource and Environment Synthesis (CERES), Decision Support System for Agrotechnology Transfer (DSSAT), and InfoCrop. The amount of input data required for crop growth simulation models varies from model to model, but crop growth simulation models often require information about location, soil, initial conditions, weather, and crop management. Crop growth simulation models typically utilize accumulated weather conditions that occurred from the planting of the crop to the current date to provide a historical profile of crop development.

[0026] According to one or more embodiments, each simulated crop growth time series may include a time series having one or more crop-specific parameters (e.g., NDVI, LAI, etc.) determined based on historical crop data, geospatial data, and meteorological data using a crop growth simulation model. For example, a simulated crop growth time series including an LAI time series may be determined using the DSSAT crop growth simulation model for each crop type / sowing date combination in a set of one or more crop types and one or more sowing dates based on historical crop data. The historical crop data, geospatial data, and meteorological data may be inputs to the DSSAT crop growth simulation model. The DSSAT crop growth simulation model essentially simulates the LAI. For example, the DSSAT crop growth simulation model typically includes four main parts: a main program, a plant growth module, a soil water balance module, and a meteorological module. Typically, the plant growth module simulates a leaf area index (LAI), which is used in the soil water balance module to calculate evapotranspiration.

[0027] The historical crop data may include, for example, crop types previously grown in the crop growing area associated with the area of ​​interest during at least one previous crop cycle and a sowing calendar for each of those crop types. In some embodiments, the crop growing area associated with the area of ​​interest may be the area of ​​interest itself. In some embodiments, the crop growing area associated with the area of ​​interest may be a crop growing area near the area of ​​interest. In a first example, the area of ​​interest may be a first field and the crop growing area associated with the area of ​​interest may be a second field adjacent to the first field. In a second example, the area of ​​interest may be a set of contiguous fields and the crop growing area associated with the area of ​​interest may be a set of fields within a specified distance from the set of contiguous fields. In some embodiments, the crop growing area associated with the area of ​​interest may be a crop growing area defined by a boundary (e.g., a physical boundary, a political boundary, etc.). For example, the area of ​​interest may be one or more fields and the crop growing area associated with the area of ​​interest may be a county, state, province, or other political boundary that includes the one or more fields.

[0028] In some embodiments, the historical crop data may be provided by one or more crop history databases (420 in FIG. 4 , 920 in FIG. 9 ). For example, the historical crop data may be accessed from public data sources, as well as from commercial sources. For example, the crop types historically grown in the crop growing regions associated with the area of ​​interest may be accessed from public data sources, as well as from commercial sources, such as the National Agricultural Statistics Service (NASS) CropScape of the United States Department of Agriculture. For example, the planting calendar may be accessed from public data sources, as well as from commercial sources, such as the National Agricultural Statistics Service (NASS) Agriculture Handbook No. 628, “Field Crops-Usual Planting and Harvesting Dates,” the Food and Agriculture Organization (FAO) Crop Calendar of the United Nations, and the like.

[0029] The geospatial data may include, for example, agricultural information characterizing the area of ​​interest. The geospatial data may include agricultural information characterizing the area of ​​interest, for example, elevation, soil moisture, soil type, and other geospatial data that may be input parameters into a crop growth simulation model. The geospatial data may be collected from the area of ​​interest, collected from one or more areas near the area of ​​interest, collected from one or more areas representative of the area of ​​interest, or combinations thereof.

[0030] In some embodiments, the geospatial data may be provided by one or more geospatial databases (e.g., 422 in FIG. 4 , 922 in FIG. 9 ) or a geospatial data platform such as IBM® PAIRS (Physical Analysis Integrated Data Repository and Services)-Geoscope, which provides access to historical, continuously updated geospatial data.

[0031] The weather data may include, for example, weather time series that represent one or more weather conditions in a weather region associated with the area of ​​interest. In some embodiments, the weather data may include observed field-level weather data that occurred during the current growing season and current field-level weather data. The weather data may include, for example, weather time series that represent one or more weather conditions in a weather region associated with the area of ​​interest, such as daily global radiation, daily maximum and minimum temperatures, daily precipitation, and other weather conditions that may be input parameters to a crop growth simulation model. In some embodiments, the weather region associated with the area of ​​interest may be the area of ​​interest itself. In some embodiments, the weather region associated with the area of ​​interest may be a weather region near the area of ​​interest. For example, the area of ​​interest may be a field and the weather region associated with the area of ​​interest may be a region in which automated weather stations are located that are within a specified distance of the field. In some embodiments, the weather region associated with the area of ​​interest may be a weather region defined by a boundary (e.g., a physical boundary, a political boundary, etc.). For example, the area of ​​interest may be one or more fields and the weather region associated with the area of ​​interest may be a valley or other physical boundary that includes the one or more fields.

[0032] In some embodiments, the weather data may be provided by one or more weather databases (e.g., 424 in FIG. 4 , 924 in FIG. 9 ). For example, the weather data may be accessed from repositories such as the National Centers for Environmental Information (NCEI) and weather service providers such as The Weather Company, WeatherBELL Analytics, Baron, and AccuWeather. NCEI is the primary repository of data for the National Oceanic and Atmospheric Administration (NOAA). Weather data may also be accessed from geospatial data platforms such as IBM® PAIRS (Physical Analysis Integrated Data Repository and Services)-Geoscope. IBM® PAIRS-Geoscope provides access to historical, continuously updated weather data.

[0033] An area of ​​interest may be one or more portions of land (such as a field, a parcel, a farm, a fraction thereof, etc.). As used herein, "area of ​​interest" refers to any amount of land of any shape or size. For example, "area of ​​interest" may refer to an entire grower's property, a field, a parcel of land, a growing area, an area or management zone, etc.

[0034] According to some embodiments, a crop growth simulation model such as DSSAT is used to generate crop specific parameters such as Leaf Area Index (LAI), Normalized Difference Vegetation Index (NDVI), etc., and a matching algorithm attempts to match this with crop types from one or more past crop cycles sown in the area of ​​interest. Various crop growth simulation models are available in the public domain, covering major crop types (e.g. DSSAT can simulate over 40 crop types worldwide) and models for other crop types can also be implemented.

[0035] In some embodiments, a data assimilation module (e.g., 414 in FIG. 4) for assimilating remote sensor data (e.g., vegetation indices, soil moisture, and other fields) may be coupled with one or more crop growth simulation modules.

[0036] A variety of data may be used in combination with the crop growth simulation model to generate crop-specific parameters, including, but not limited to, publicly available information on the types of crops grown in the area of ​​interest and crop calendars for such crop types, high-resolution geospatial data (e.g., elevation, soil moisture, soil type, etc.), and high-resolution weather and remote sensor data during previous and current crop cycles. For example, the crop growth simulation model may take weather data, soil moisture data, initial crop type, initial sowing date, and other data as inputs to calculate an initial simulated crop growth time series of LAI. All of this input data may be ingested into the crop growth simulation model via a data source ingestion module (e.g., 412 in FIG. 4).

[0037] The initial crop type may be selected from the crop types that were seeded in the area of ​​interest in a previous crop cycle, and the initial seeding date may be selected from a seeding calendar of the initial crop type.

[0038] In some embodiments, the database (e.g., 406 in FIG. 4 , 928 in FIG. 9 ) may provide historical crop cycle information (e.g., historical crop growth time series of LAI for the current crop cycle) for LAI, NDVI, etc., obtained from remote sensing, including field imagery from satellites, aerial drones, aircraft, or obtained by other mechanisms (e.g., ground based robots, and sensors attached to fields and farm equipment). In some embodiments, the historical crop cycle information provided by the database may relate to the current crop cycle. In other embodiments, the historical crop cycle information provided by the database may relate to one or more previous crop cycles. In some embodiments, the historical crop cycle information provided by the database may include crop specific parameters and other types of data, e.g., weather data (e.g., may include a historical crop growth time series of LAI for the current crop cycle as one element of the time series, and weather data for the current crop cycle as one or more other elements of the time series).

[0039] The matching algorithm may take as input crop-specific parameters (e.g., time series of LAI for crop types sown in the area of ​​interest during one or more previous crop cycles, e.g., simulated LAI time series for each crop type sown in the area of ​​interest during one or more previous crop cycles, and historical LAI time series based on remote sensor data captured from the area of ​​interest during the current crop cycle), calculate a distance between each simulated LAI time series and the historical LAI time series, and perform a ranking of the calculated distances. For example, the matching algorithm may include a time series distance calculator that attempts to align the two datasets via distance matrix time series matching. The first dataset provided as input to the time series distance calculator may be a time series dataset obtained from a crop growth simulation model, typically a periodically simulated dataset, although according to some embodiments the simulation output is one daily. The second dataset provided as input to the time series distance calculator may be a time series dataset obtained from a remote sensor, typically a periodically sensing, although according to some embodiments the remote sensing input is one daily. The data set constructed based on one input per day utilized in the above embodiment is exemplary and not limiting, for example, other embodiments may utilize data sets constructed based on multiple inputs per day, or any other suitable periodicity period.

[0040] According to some embodiments, in the time series distance calculator, each element of the time series is matched; i.e., a difference is calculated between each element of the simulated data and the observed data, and a difference score is calculated and stored. The difference score may be calculated by summing the calculated differences (i.e., the difference calculated for each element of the time series). The observed data may be a past crop growth time series of the area of ​​interest, including one or more elements including one or more crop-specific parameters (e.g., LAI, NDVI, etc.), and optionally other data (e.g., weather). The simulated data may be a simulated crop growth time series including the same one or more crop-specific parameters (e.g., LAI, NDVI, etc.), and optionally the same other data (e.g., weather).

[0041] In some embodiments, the simulated time series is shifted in time in either direction, one time slot at a time (a time slot is the periodicity period during which snapshots are taken), and the difference scores are recalculated and stored. For example, the matching algorithm may send control data to the crop growth simulation model to advance the initial sowing date by one day. The crop growth simulation model may then send the time-shifted time series (i.e., the time series with the sowing date advanced by one day from the initial sowing date) to the matching algorithm, which then recalculates and stores the difference scores. The matching algorithm may then send control data to the crop growth simulation model to advance the sowing date by another day. The crop growth simulation model then sends the other time-shifted time series (i.e., the time series with the sowing date advanced by two days from the initial sowing date) to the matching algorithm, which then recalculates and stores the difference scores. This sequence may be repeated for each sowing date in the crop type's sowing calendar and for each crop type that has been previously grown in the area of ​​interest (or in a crop growing region associated with the area of ​​interest).

[0042] The simulated time series with the smallest difference score may be considered as the final result. For example, according to this simulation (i.e., the simulation that produced the smallest difference score), an estimate of the crop type and / or sowing date may be obtained. That is, the crop type and sowing date used by the crop growth simulation model in determining this simulation (i.e., the simulation that produced the smallest difference score) provide an estimate of the crop type and / or sowing date.

[0043] An emerging information technology (IT) delivery model is cloud computing, where shared resources, software, and information are provided on demand to computers and other devices over the Internet. Cloud computing can significantly reduce IT costs and complexity while improving workload optimization and service delivery. This approach allows application instances to be hosted and made available from Internet-based resources accessible over HTTP from a traditional Web browser. An exemplary application would be one that provides a common set of messaging capabilities, such as email, calendar, contact management, and instant messaging. Users then access the service directly over the Internet. Using this service, businesses place their email, calendar, and / or collaboration infrastructure in the cloud, and end users use an appropriate client to access their email or perform calendar operations.

[0044] Although this disclosure includes detailed descriptions of cloud computing, it should be understood that implementation of the teachings recited herein is not limited to a cloud computing environment. Rather, embodiments of the invention may be implemented in conjunction with any other type of computing environment now known or later developed.

[0045] Cloud computing is a model of service delivery for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines, and services) that can be rapidly provisioned and released with minimal administrative effort or interaction with a service provider. The cloud model may include at least five characteristics, at least three service models, and at least four deployment models.

[0046] Its features are as follows.

[0047] On-Demand Self-Service: Cloud consumers can unilaterally provision computing capacity, such as server time and network storage, automatically as needed, without the need for human interaction with the provider of the service.

[0048] Broad Network Access: Capabilities are available over the network and are accessed through standard mechanisms that facilitate use by heterogeneous thin or thick client platforms (e.g., cell phones, laptops, and PDAs).

[0049] Resource Pooling: Pooling provider computing resources to serve multiple consumers using a multi-tenant model where different physical and virtual resources are dynamically allocated and reallocated according to demand. Consumers generally have no control over or knowledge of the exact location of the resources provided to them, although there is a sense of location independence in that the location may be identifiable at a higher level of abstraction (e.g., ).

[0050] Rapid Elasticity: Capacity can be rapidly and elastically provisioned, sometimes automatically, to quickly scale out and rapidly release to quickly scale in. To the consumer, provisionable capacity often appears to be unlimited and can be purchased in any quantity at any time.

[0051] Metered Services: Cloud systems leverage metering capabilities at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts) to automatically control and optimize resource usage. Resource usage can be monitored, managed, and reported to provide transparency to both providers and consumers of the services utilized.

[0052] The service model is as follows:

[0053] Software as a Service (SaaS): The capability offered to the consumer is to use the provider's applications running on a cloud infrastructure. The applications are accessible from a variety of client devices through thin-client interfaces such as web browsers (e.g., web-based email). The consumer has no management or control over the underlying cloud infrastructure, including networks, servers, operating systems, storage, or even individual application features, with the possible exception of limited user-specific application configuration settings.

[0054] Platform as a Service (PaaS): The capability offered to a consumer is to deploy applications that the consumer creates or acquires, written using programming languages ​​and tools supported by the provider, onto a cloud infrastructure. The consumer does not manage or control the underlying cloud infrastructure, including networks, servers, operating systems, or storage, but does control the deployed applications and possibly the application hosting environment configuration.

[0055] Infrastructure as a Service (IaaS): The ability offered to consumers is to provision processing, storage, network, and other basic computing resources onto which the consumer can deploy and run any software, which may include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure, but does control the operating systems, storage, deployed applications, and possibly limited control over selected networking components (e.g., host firewalls).

[0056] The deployment model is as follows:

[0057] Private Cloud: The cloud infrastructure is operated exclusively for an organization. It can be managed by the organization or a third party and can be on-premise or off-premise.

[0058] Community Cloud: The cloud infrastructure is shared by several organizations to support a specific community with common concerns (e.g., mission, security requirements, policies, and compliance considerations). It may be managed by the organization or a third party and may exist on-premise or off-premise.

[0059] Public Cloud: The cloud infrastructure is made available to the general public or large industry organizations and is owned by an organization that sells cloud services.

[0060] Hybrid Cloud: A cloud infrastructure is a composite of two or more clouds (private, community, or public) that remain unique entities but are joined by standardized or proprietary technologies that enable data and application portability (e.g., cloud bursting for load balancing between clouds).

[0061] Cloud computing environments are service-oriented with an emphasis on statelessness, low coupling, modularity, and semantic interoperability. At the core of cloud computing is an infrastructure that includes a network of interconnected nodes.

[0062] 1, a schematic diagram of an example cloud computing node is shown. Cloud computing node 10 is merely one example of a suitable cloud computing node and is not intended to suggest any limitation as to the scope of use or functionality of the embodiments of the invention described herein. In any event, cloud computing node 10 may implement and / or perform any of the functionality described above.

[0063] Cloud computing node 10 includes computer system / server 12, which is operable in many other general purpose or special purpose computing system environments or configurations. Examples of well-known computing systems, environments, or configurations, or combinations thereof, that may be suitable for use with computer system / server 12 include, but are not limited to, personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments that include any of the above systems or devices.

[0064] The computer system / server 12 may be described in the general context of computer system executable instructions, such as program modules, executed by a computer system. Generally, program modules may include routines, programs, objects, components, logic, data structures, etc. that perform particular tasks or implement particular abstract data types. The computer system / server 12 may be practiced in a distributed cloud computing environment where tasks are performed by remote processing devices linked through a communications network. In a distributed cloud computing environment, program modules may be located in both local and remote computer system storage media, including memory storage devices.

[0065] 1, computer system / server 12 in cloud computing node 10 is shown in the form of a general purpose computing device. Components of computer system / server 12 may include, but are not limited to, one or more processors or processing units 16, a system memory 28, and a bus 18 that couples various system components, including system memory 28, to processor 16.

[0066] Bus 18 represents any one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of architectures, including, by way of example and not limitation, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an Enhanced ISA (EISA) bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnects (PCI) bus.

[0067] Computer system / server 12 typically includes a variety of computer system readable media. Such media may be any available media that can be accessed by computer system / server 12 and includes both volatile and nonvolatile media, and removable and non-removable media.

[0068] The system memory 28 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 30 and / or cache memory 32. The computer system / server 12 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, a storage system 34 may be provided for reading and writing to non-removable, non-volatile magnetic media (not shown, typically referred to as a "hard drive") and other non-removable, non-volatile magnetic media (e.g., a "solid state drive"). Although not shown, a magnetic disk drive may be provided for reading and writing to removable, non-volatile magnetic disks (e.g., a "floppy disk") and an optical disk drive may be provided for reading and / or writing to removable, non-volatile optical disks, such as CD-ROMs, DVD-ROMs, or other optical media. In such examples, each may be connected to the bus 18 by one or more data media interfaces. As described further below, memory 28 may include a computer program product that stores a set (e.g., at least one) of program modules 42 that include computer-readable instructions configured to perform one or more features of the present invention.

[0069] A program / utility 40 having a set (at least one) of program modules 42 may be stored in memory 28, as well as, by way of example and not limitation, an operating system, one or more application programs, other program modules, and program data. Each of the operating system, one or more application programs, other program modules, and program data, or any combination thereof, may comprise an implementation of a networking environment. In some embodiments, program modules 42 are generally adapted to perform one or more functions and / or methodologies of one or more embodiments.

[0070] The computer system / server 12 may also communicate with one or more external devices 14, such as a keyboard, pointing device, display 24, one or more devices that allow a user to interact with the computer system / server 12, and / or any device that allows the computer system / server 12 to communicate with one or more other computing devices (e.g., network cards, modems, etc.). Such communication may occur via an input / output (I / O) interface 22. Furthermore, the computer system / server 12 may communicate with one or more networks, such as a local area network (LAN), a general wide area network (WAN), or a public network (e.g., the Internet), or combinations thereof, via a network adapter 20. As shown, the network adapter 20 communicates with other components of the computer system / server 12 via a bus 18. It is understood that other hardware and / or software components, not shown, may be used with the computer system / server 12. Examples include, but are not limited to, microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data archive storage systems.

[0071] Referring now to FIG. 2, an exemplary cloud computing environment 50 is shown. As shown, the cloud computing environment 50 includes one or more cloud computing nodes 10 with which local computing devices used by cloud consumers, such as, for example, a personal digital assistant (PDA) or mobile phone 54A, a desktop computer 54B, a laptop computer 54C, or an automobile computer system 54N, or combinations thereof, may communicate. The nodes 10 may communicate with each other. They may be physically or virtually grouped (not shown), for example, in one or more networks, such as the private, community, public, or hybrid clouds described above, or combinations thereof. This enables the cloud computing environment 50 to provide infrastructure-as-a-service, platform-as-a-service, and / or software-as-a-service services without the need for cloud consumers to maintain resources on their local computing devices. It should be understood that the types of computing devices 54A-N illustrated in FIG. 2 are intended to be exemplary only, and that the computing node 10 and cloud computing environment 50 can communicate with any type of computerized device via any type of network and / or network-addressable connection (e.g., using a web browser).

[0072] Referring now to Figure 3, a set of functional abstraction layers provided by cloud computing environment 50 (Figure 2) is shown. It should be understood in advance that the components, layers, and functions shown in Figure 3 are intended to be exemplary only, and embodiments of the present invention are not limited thereto. As shown, the following layers and corresponding functions are provided:

[0073] The hardware and software layer 60 includes hardware and software components. Examples of hardware components include mainframes 61, RISC (Reduced Instruction Set Computer) architecture based servers 62, servers 63, blade servers 64, storage devices 65, and networks and networking components 66. In some embodiments, the software components include network application server software 67 and database software 68.

[0074] The virtualization layer 70 provides an abstraction layer from which the following examples of virtual entities may be provided: virtual servers 71, virtual storage 72, virtual networks including virtual private networks 73, virtual applications and operating systems 74, and virtual clients 75.

[0075] In one example, the management layer 80 may provide the following functions: Resource provisioning 81 provides dynamic procurement of computing and other resources utilized to execute tasks within the cloud computing environment. Metering and pricing 82 provides cost tracking as resources are utilized within the cloud computing environment and accounting or billing for the consumption of these resources. In one example, these resources may include application software licenses. Security provides identity verification of cloud consumers and tasks as well as protection for data and other resources. User portal 83 provides consumers and system administrators with access to the cloud computing environment. Service level management 84 provides allocation and management of cloud computing resources such that requested service levels are met. Service level agreement (SLA) planning and fulfillment 85 provides advance arrangement and procurement of cloud computing resources anticipated to be required in the future according to SLAs.

[0076] The workload layer 90 provides examples of functionality for which a cloud computing environment may be utilized. Examples of workloads and functions that may be provided from this layer include mapping and navigation 91, software development and life cycle management 92, virtual classroom instructional delivery 93, data analytics processing 94, transaction processing 95, and crop type and / or sowing date estimation 96.

[0077] 4, an exemplary system 400 for estimating crop type and / or sowing date according to one or more embodiments is shown. The exemplary system 400 shown in FIG. 4 includes a crop growth simulator 402, a matching algorithm 404, and a historical crop growth database 406. The matching algorithm 404 matches simulated crop growth time series generated by the crop growth simulator 402 with historical crop growth time series received from the historical crop growth database 406 to determine an estimated crop type and / or sowing date as output 408.

[0078] In some embodiments, the crop growth simulator 402 includes one or more crop growth simulation model modules 410, one or more data source ingestion modules 412, and one or more data assimilation modules 414. The crop growth simulator 402 may use the one or more crop growth simulation model modules 410 to determine a simulated crop growth time series for each crop type / sowing date combination in a set of one or more crop types and one or more sowing dates based on historical crop data from one or more crop history databases 420, geospatial data from one or more geospatial databases 422, and weather data from one or more weather databases 424 (and, optionally, remote sensor data from one or more remote sensor databases 426) via one or more networks 416. Such networks 416 may include wired and wireless networks, including, but not limited to, cellular networks, wide area networks (WANs) (e.g., the Internet), or local area networks (LANs), or combinations thereof, non-limiting examples of which include cellular, WAN, Wireless Fidelity (Wi-Fi®), Wi-Max®, WLAN, wireless communications, microwave communications, satellite communications, optical communications, acoustic communications, electromagnetic induction communications, quantum communications, or any other suitable communications technology, or combinations thereof.

[0079] In some embodiments, each simulated crop growth time series generated by the crop growth simulator 402 includes one or more elements including one or more crop-specific parameters (e.g., LAI, NDVI, etc.), and optionally other data (e.g., weather).

[0080] The historical crop data received by the crop growth simulator 402 from the one or more crop history databases 420 may include, for example, crop types that have been previously grown and cultivated in the crop growing area associated with the area of ​​interest during at least one previous crop cycle, and a sowing calendar for each of those crop types.

[0081] The geospatial data received by the crop growth simulator 402 from the one or more geospatial databases 422 may include, for example, agricultural information characterizing an area of ​​interest.

[0082] The weather data received by the crop growth simulator 402 from the one or more weather databases 424 may include, for example, weather time series representing one or more weather conditions in a weather region associated with the area of ​​interest.

[0083] All of this input data (i.e., historical crop data, geospatial data, and weather data received from crop history, geospatial, and weather databases 420, 422, and 424, respectively) may be ingested into the crop growth simulator 402 by one or more data ingestion modules 412. For example, the crop growth simulator 402 may take weather data, soil moisture data, initial crop type, initial sowing date, and other data as inputs to calculate an initial simulated crop growth time series. The initial crop type may be selected, for example, from crop types sown in the area of ​​interest in a previous crop cycle. The initial sowing date may be selected, for example, from a sowing calendar of the initial crop type.

[0084] Additionally, all of this input data (i.e., the historical crop data, geospatial data, and weather data received from crop history, geospatial, and weather databases 420, 422, and 424, respectively) may be augmented with remote sensor data from one or more remote sensor databases 426. This optional remote sensor data may be ingested into the crop growth simulator 402 by one or more data assimilation modules 414.

[0085] The historical crop growth time series received by the matching algorithm 404 from the historical crop growth database 406 may be based on remote sensor data, such as a time series of image data for an area of ​​interest. In some embodiments, the historical crop growth time series includes one or more elements including one or more crop specific parameters (e.g., LAI, NDVI, etc.), and optionally other data (e.g., weather).

[0086] 4, the historical crop growth time series received by the matching algorithm 404 from the historical crop growth database 406 are calculated by a historical crop growth calculation unit 430. For example, the historical crop growth calculation unit 430 may periodically (e.g., daily) receive remote sensor data (e.g., satellite image data of an area of ​​interest) from one or more remote sensor databases 426 via one or more networks 416, calculate one or more crop-specific parameters (e.g., LAI, NDVI, etc.) based on the received remote sensor data, and update the historical crop growth time series stored in the historical crop growth database 406 with the calculated one or more crop-specific parameters.

[0087] The matching algorithm 404 includes one or more time series distance calculator modules 440 that attempt to align two data sets, i.e., a simulated crop growth time series received from the crop growth simulator 402 and a historical crop growth time series received from the historical crop growth database 406. In some embodiments, these two data sets have a daily periodicity period. However, a data set constructed based on one input per day is exemplary and not limiting. For example, other embodiments may utilize a data set constructed based on multiple inputs per day, or any other suitable periodicity period.

[0088] According to some embodiments, in the time series distance calculator module 440, each element of each time series is matched, i.e., differences are calculated between each element of the simulated crop growth time series from the crop growth simulator 402 and the historical crop growth time series from the historical crop growth database 406, and a difference score is calculated and stored. The difference score may be calculated by summing the calculated differences (i.e., the differences calculated for each element of the time series).

[0089] In some embodiments, the initial simulated crop growth time series is then shifted in time in either direction, one time slot at a time (a time slot is the periodicity period during which snapshots are taken), and the difference scores are recalculated and stored. For example, the matching algorithm 404 may send control data to the crop growth simulator 402 to advance the initial sowing date by one day. The crop growth simulator 402 may then send the time-shifted time series (i.e., the time series with the sowing date advanced by one day from the initial sowing date) to the matching algorithm 404, and the time series distance calculator module 440 may then recalculate and store the difference scores. The matching algorithm 404 may then send control data to the crop growth simulator 402 to advance the sowing date by another day. The crop growth simulator 402 may then send the other time-shifted time series (i.e., the time series with the sowing date advanced by two days from the initial sowing date) to the matching algorithm 404, and the time series distance calculator module 440 may then recalculate and store the difference scores. This sequence may be repeated for each sowing date in the crop type's sowing calendar and for each crop type previously grown in the area of ​​interest (or in a crop growing region associated with the area of ​​interest). The matching algorithm 404 may then determine the simulated time series with the smallest difference score, i.e., the particular simulation produced by the crop growth simulator 402 that produced the smallest difference score.

[0090] The simulated time series with the smallest difference score may be considered the final result. For example, the matching algorithm 404 may output an estimate of the crop type and / or sowing date according to this simulation (i.e., the simulation that produced the smallest difference score). In other words, the estimate of the crop type and / or sowing date output 408 of the matching algorithm 404 may be based on the crop type and sowing date used by the crop growth simulator 402 to generate the particular simulation that produced the smallest difference score.

[0091] In some embodiments, the area of ​​interest may include one or more regions (e.g., fields) having different crop types. The matching algorithm, according to some embodiments, may identify these regions using one or more segmentation methods. For example, in some embodiments, the matching algorithm may use a pixel-by-pixel approach that matches each pixel and determines the boundaries of these regions using a similarity threshold.

[0092] In some embodiments, the matching algorithm may use a field-by-field approach to match each field using digitized field boundaries. The digitized field boundaries may be generated, for example, by digitizing farm plot outlines using orthophotography (e.g., 1 m resolution). In other examples, a client system (e.g., 902 in FIG. 9) may provide location coordinates and / or platting data from which digitized field boundaries may be generated.

[0093] 5, a flow diagram of an exemplary method 500 for estimating crop type and / or sowing date is shown, according to one or more embodiments. The method 500 shows a preferred ordering of blocks. However, it should be understood that the various blocks may occur at any timing relative to one another.

[0094] The method 500 begins with providing a historical crop growth time series for the area of ​​interest based on remote sensor data (block 502). For example, the matching algorithm may receive (e.g., from a historical crop growth database) a historical crop growth time series for the area of ​​interest based on the remote sensor data, such as a time series of image data for the area of ​​interest. The historical crop growth time series may be determined, for example, using a historical crop growth calculation unit, which may store the determined historical crop growth time series in a historical crop growth database for subsequent retrieval by the matching algorithm. In some embodiments, the historical crop growth time series includes one or more elements including one or more crop-specific parameters (e.g., LAI, NDVI, etc.), and optionally other data (e.g., weather). For example, the historical growth time series may include a historical LAI time series (e.g., calculated according to equations (1)-(4) above) determined by the historical crop growth calculation unit based on a time series of optical image data for the area of ​​interest.

[0095] In some embodiments, the historical crop growth time series for the area of ​​interest may be based on remote sensor data captured during the current crop cycle, an example of such a current crop cycle embodiment is shown in Figure 6 and Figures 7A and 7B described below.

[0096] In some embodiments, the historical crop growth time series for the area of ​​interest may be based on remote sensor data captured during a previous crop cycle. For example, the crop growth time series generated by the crop growth simulation model may be matched with a historical crop growth time series from a previous crop cycle with a known crop type and known sowing date. An example of such a previous crop cycle embodiment is shown in FIG. 8 described below.

[0097] The method 500 continues by determining, for each crop type / sowing date combination in the set of one or more crop types and one or more sowing dates, a simulated crop growth time series for the area of ​​interest based on historical crop data, geospatial data, and weather data using one or more crop growth simulation models (block 504). For example, the crop growth simulator may determine, for each crop type / sowing date combination in the set of one or more crop types and one or more sowing dates, a simulated crop growth time series for the area of ​​interest based on historical crop data from one or more crop history databases, geospatial data from one or more geospatial databases, and weather data from one or more weather databases (and optionally remote sensor data from one or more remote sensor databases) using one or more crop growth simulation models. In some embodiments, each simulated crop growth time series generated by the crop growth simulator includes one or more elements including one or more crop-specific parameters (e.g., LAI, NDVI, etc.), and optionally other data (e.g., weather). For example, each simulated crop growth time series may include a simulated LAI time series determined by one or more crop growth simulation models of the crop growth simulator, e.g., the DSSAT crop growth simulation models essentially simulate the LAI.

[0098] The historical crop data received by the crop growth simulator may include, for example, crop types previously grown in a crop growing region associated with the area of ​​interest during at least one previous crop cycle and a sowing calendar for each of those crop types. The geospatial data received by the crop growth simulator may include, for example, agricultural information characterizing the area of ​​interest. The weather data received by the crop growth simulator may include, for example, weather time series representative of one or more weather conditions in a weather region associated with the area of ​​interest.

[0099] The method 500 continues by matching the historical crop growth time series with each instance of the simulated crop growth time series to determine an estimated crop type and / or sowing date (block 506). For example, the matching algorithm may match the simulated crop growth time series generated by the crop growth simulator with the historical crop growth time series received from the historical crop growth database to determine an estimated crop type and / or sowing date as an output. In some embodiments, the matching algorithm includes one or more time series distance calculator modules that attempt to align the two data sets (i.e., each instance of the simulated crop growth time series received from the crop growth simulator and the historical crop growth time series received from the historical crop growth database) to determine an estimate of the crop type and / or sowing date based on the instance of the simulated crop growth time series that produced the smallest difference score. The method 500 may then end.

[0100] In some embodiments, the method 500 may be implemented in one stage, where the crop type and sowing date are estimated simultaneously. An exemplary one stage implementation is shown in Figure 6, described below. In some embodiments, the method 500 may be implemented in two stages, where the crop type is estimated in a first stage and the sowing date is estimated in a second stage. An exemplary two stage implementation is shown in Figures 7A and 7B, described below.

[0101] In some embodiments, the method 500 may be implemented using time series having elements that include other data (e.g., weather) in addition to one or more crop-specific parameters.

[0102]

[0031] Referring now to Figure 6, a flow chart of an example method 600 for estimating crop type and / or sowing date is shown, according to one or more embodiments. Figure 6 illustrates an example implementation of the example method for estimating crop type and / or sowing date shown in Figure 5. The method 600 illustrates a preferred ordering of blocks. However, it should be understood that the various blocks may occur at any timing relative to one another.

[0103] The method 600 begins with receiving remote sensor data including a time series of image data of an area of ​​interest captured during a current crop cycle (block 602). For example, at a historical crop growth calculation unit, a time series of image data of an area of ​​interest captured during a current crop cycle may be received from a remote sensor database.

[0104] The method 600 continues by calculating a time series of one or more crop-specific parameters based on the time series of image data (block 604). For example, in a past crop growth calculation unit, a time series of one or more crop-specific parameters (e.g., LAI, NDVI, etc.) based on the time series of image data may be calculated. For example, based on a time series of optical image data of an area of ​​interest, the past crop growth calculation unit may calculate an LAI time series according to equations (1)-(4) above.

[0105] Next, the method 600 continues by determining a past crop growth time series having one or more elements including one or more crop-specific parameters (block 606). For example, in a past crop growth calculation unit, a past crop growth time series having one or more elements including one or more crop-specific parameters (e.g., LAI, NDVI, etc.) may be determined. In some embodiments, the past crop growth time series determined in block 606 may include the time series calculated in block 604 without additional elements. For example, a past LAI time series may be determined. In some embodiments, the past crop growth time series determined in block 606 may include one or more additional elements, such as weather data, in addition to the time series calculated in block 604.

[0106] In some embodiments, the historical crop growth time series determined in block 606 may be provided directly as an input to the matching algorithm. In some embodiments, the historical crop growth time series determined in block 606 may be stored in a historical crop growth database and then provided to the matching algorithm.

[0107] In some embodiments, blocks 602, 604, and 606 may correspond to block 502 of FIG. 5 (i.e., preparing a historical crop growth time series for an area of ​​interest based on remote sensor data).

[0108] The method 600 continues by receiving historical crop data including crop types previously grown in a crop growing region associated with the area of ​​interest during at least one previous crop cycle and a seeding calendar for each crop type (block 608). For example, in a crop growth simulator, historical crop data including crop types previously grown in a crop growing region associated with the area of ​​interest during at least one previous crop cycle and a seeding calendar for each of the crop types may be received. In some embodiments, the historical crop data may be received over a network from a crop history database and imported into a crop growth simulation model of the crop growth simulator via a data source import module.

[0109] Next, the method 600 continues by receiving geospatial data including agricultural information characterizing the area of ​​interest (block 610). For example, the geospatial data including agricultural information characterizing the area of ​​interest may be received at a crop growth simulator. In some embodiments, the geospatial data may be received over a network from a geospatial database and imported into a crop growth simulation model of the crop growth simulator via a data source import module.

[0110] The method 600 then continues by receiving weather data including time series representative of one or more weather conditions in a weather region associated with the area of ​​interest during a current crop cycle (block 612). For example, in a crop growth simulator, weather data including time series representative of one or more weather conditions in a weather region associated with the area of ​​interest during a current crop cycle may be received. In some embodiments, the weather data may be received over a network from a weather database and ingested into a crop growth simulation model of the crop growth simulator via a data source ingest module.

[0111] Next, the method 600 continues by determining a simulated crop growth time series having one or more elements including one or more crop-specific parameters for each crop type / sowing date combination in the set of crop types historically grown in the crop growing area and multiple sowing dates in the sowing calendar for those crop types (block 614). For example, in the crop growth simulator, multiple simulated crop growth time series may be determined, each having one or more elements including one or more crop-specific parameters (e.g., LAI, NDVI, etc.), i.e., the same crop-specific parameters as the historical crop growth time series determined in block 606. In some embodiments, the crop growth simulation model of the crop growth simulator determines one simulated crop growth time series for each crop type / sowing date combination. For example, in the crop growth simulator, a simulated LAI time series for each crop type / sowing date combination may be determined using a DSSAT crop growth simulation model that essentially simulates the LAI.

[0112] In some embodiments, the multiple simulated crop growth time series determined in block 614 may include one or more crop-specific parameters (e.g., LAI, NDVI, etc.) without additional factors. For example, multiple simulated LAI time series may be determined. In some embodiments, the multiple simulated crop growth time series determined in block 614 may include one or more additional factors, such as weather data, in addition to one or more crop-specific parameters (e.g., LAI, NDVI, etc.).

[0113] In some embodiments, the multiple simulated crop growth time series determined at block 614 may be provided collectively as an input to a matching algorithm. In some embodiments, the multiple simulated crop growth time series determined at block 614 may be selectively provided as an input to a matching algorithm (e.g., one simulated crop growth time series at a time in response to control data).

[0114] In some embodiments, blocks 608, 610, 612, and 614 may correspond to block 504 of FIG. 5 (i.e., for each crop type / sowing date combination in a set of one or more crop types and one or more sowing dates, determining a simulated crop growth time series for the area of ​​interest based on historical crop data, geospatial data, and weather data using one or more crop growth simulation models).

[0115] The method 600 continues by calculating, for each crop type / sowing date combination, a difference score based on one or more differences, each calculated as a distance between an element of the simulated crop growth time series and a corresponding element of the historical crop growth time series (block 616). For example, in a matching algorithm, a difference between each element of each simulated crop growth time series from the crop growth simulator and a historical crop growth time series from the historical crop growth database may be calculated, and a difference score may be calculated and stored. The difference score may be calculated by summing the calculated differences (i.e., the difference calculated for each element of the time series).

[0116] The method 600 then continues by determining an estimated crop type and sowing date based on the crop type and sowing date associated with the minimum difference score (block 618). For example, in the matching algorithm, the simulated time series with the minimum difference score may be obtained as the final result. For example, the matching algorithm may output an estimate of the crop type and / or sowing date according to this simulation (i.e., the simulation that produced the minimum difference score). In other words, the estimate of the crop type and / or sowing date output of the matching algorithm may be based on the crop type and sowing date used by the crop growth simulator to generate the particular simulation that produced the minimum difference score. The method 600 may then end.

[0117] In some embodiments, blocks 616 and 618 may correspond to block 506 of FIG. 5 (i.e., matching historical crop growth time series with each instance of the simulated crop growth time series to determine an estimated crop type and / or sowing date).

[0118] 7A and 7B, a flow diagram of an exemplary method 700 for estimating crop type and / or sowing date is shown, according to one or more embodiments. FIG. 7A and 7B show an exemplary two-stage implementation of the exemplary method for estimating crop type and / or sowing date shown in FIG. 5, where the crop type and sowing date are estimated separately in two stages. FIG. 7A corresponds to a first stage where the crop type is estimated, and FIG. 7B corresponds to a second stage where the sowing date is estimated. The method 700 shows a preferred order of blocks. However, it should be understood that the various blocks may occur at any time relative to each other.

[0119] The method 700 begins with receiving remote sensor data including a time series of image data of an area of ​​interest captured during a current crop cycle (block 702). For example, at a historical crop growth calculation unit, a time series of image data of an area of ​​interest captured during a current crop cycle may be received from a remote sensor database.

[0120] The method 700 continues by calculating a time series of one or more crop-specific parameters based on the time series of image data (block 704). For example, in a past crop growth calculation unit, a time series of one or more crop-specific parameters (e.g., LAI, NDVI, etc.) based on the time series of image data may be calculated. For example, based on a time series of optical image data of an area of ​​interest, the past crop growth calculation unit may calculate an LAI time series according to equations (1)-(4) above.

[0121] Next, the method 700 continues by determining a past crop growth time series having one or more elements including one or more crop-specific parameters (block 706). For example, in a past crop growth calculation unit, a past crop growth time series having one or more elements including one or more crop-specific parameters (e.g., LAI, NDVI, etc.) may be determined. In some embodiments, the past crop growth time series determined in block 706 may include the time series calculated in block 704 without additional elements. For example, a past LAI time series may be determined. In some embodiments, the past crop growth time series determined in block 706 may include one or more additional elements, such as weather data, in addition to the time series calculated in block 704.

[0122] In some embodiments, the historical crop growth time series determined in block 706 may be provided directly as an input to the matching algorithm. In some embodiments, the historical crop growth time series determined in block 706 may be stored in a historical crop growth database and then provided to the matching algorithm.

[0123] In some embodiments, blocks 702, 704, and 706 may correspond to block 502 of FIG. 5 (i.e., preparing a historical crop growth time series for an area of ​​interest based on remote sensor data).

[0124] The method 700 continues by receiving historical crop data including crop types previously grown in a crop growing region associated with the area of ​​interest during at least one previous crop cycle and a seeding calendar for each crop type (block 708). For example, in a crop growth simulator, historical crop data including crop types previously grown in a crop growing region associated with the area of ​​interest during at least one previous crop cycle and a seeding calendar for each of the crop types may be received. In some embodiments, the historical crop data may be received over a network from a crop history database and imported into a crop growth simulation model of the crop growth simulator via a data source import module.

[0125] Next, the method 700 continues by receiving geospatial data including agricultural information characterizing the area of ​​interest (block 710). For example, the geospatial data including agricultural information characterizing the area of ​​interest may be received at a crop growth simulator. In some embodiments, the geospatial data may be received over a network from a geospatial database and imported into a crop growth simulation model of the crop growth simulator via a data source import module.

[0126] The method 700 then continues by receiving weather data including time series representative of one or more weather conditions in a weather region associated with the area of ​​interest during a current crop cycle (block 712). For example, in a crop growth simulator, weather data including time series representative of one or more weather conditions in a weather region associated with the area of ​​interest during a current crop cycle may be received. In some embodiments, the weather data may be received over a network from a weather database and ingested into a crop growth simulation model of the crop growth simulator via a data source ingest module.

[0127] Next, the method 700 continues by determining an initial simulated crop growth time series having one or more elements including one or more crop-specific parameters for each crop type / sowing date combination in the set of crop types historically grown in the crop growing region and initial sowing dates in the sowing calendar for those crop types (block 714). For example, in the crop growth simulator, multiple simulated crop growth time series may be determined, each having one or more elements including one or more crop-specific parameters (e.g., LAI, NDVI, etc.), i.e., the same crop-specific parameters as the historical crop growth time series determined in block 706. In some embodiments, a crop growth simulation model in the crop growth simulator determines an initial simulated crop growth time series for each crop type / initial sowing date combination. For example, in the crop growth simulator, an initial simulated LAI time series for each crop type / initial sowing date combination may be determined using a DSSAT crop growth simulation model that essentially simulates the LAI. In some embodiments, each crop type may have its own initial sowing date. For example, the initial sowing date for each crop type may be a predefined date within the sowing calendar for that crop type, such as the "start" date of the sowing calendar, one of the "most active" days of the sowing calendar (e.g., the middle day of the "most active" days), or the "end" date of the sowing calendar.

[0128] In some embodiments, the multiple initial simulated crop growth time series determined in block 714 may include one or more crop-specific parameters (e.g., LAI, NDVI, etc.) without additional factors. For example, multiple initial simulated LAI time series may be determined. In some embodiments, the multiple initial simulated crop growth time series determined in block 714 may include one or more additional factors, such as weather data, in addition to one or more crop-specific parameters (e.g., LAI, NDVI, etc.).

[0129] In some embodiments, the multiple initial simulated crop growth time series determined at block 714 may be provided collectively as an input to a matching algorithm. In some embodiments, the multiple initial simulated crop growth time series determined at block 714 may be provided selectively as an input to a matching algorithm (e.g., one initial simulated crop growth time series at a time in response to control data).

[0130] In some embodiments, blocks 708, 710, 712, and 714 may correspond to a first instance of block 504 of FIG. 5 (i.e., for each crop type / sowing date combination in a set of one or more crop types and one or more sowing dates, determining a simulated crop growth time series for the area of ​​interest based on historical crop data, geospatial data, and weather data using one or more crop growth simulation models).

[0131] The method 700 continues by calculating, for each crop type / sowing date combination, the difference between each element of the initial simulated crop growth time series and each corresponding element of the historical crop growth time series (block 716). For example, in a matching algorithm, the difference between each element of the initial simulated crop growth time series from the crop growth simulator and the historical crop growth time series from the historical crop growth database may be calculated.

[0132] The method 700 then continues by calculating, for each crop type / sowing date combination, a difference score by summing the calculated differences for that crop type / sowing date combination (block 718). For example, in a matching algorithm, a difference score may be calculated for each crop type / initial sowing date combination by summing the calculated differences (i.e., the differences calculated for each element of the time series).

[0133] The method 700 continues by sorting the difference scores for each crop type / initial planting date combination (block 720). For example, in a matching algorithm, the difference scores for each crop type / initial planting date combination may be sorted.

[0134] The method 700 then continues by ranking the difference scores to identify the smallest difference score (block 722). For example, in a matching algorithm, the difference scores may be ranked to identify the smallest difference score.

[0135] The method 700 continues by determining an estimated crop type based on the crop type associated with the smallest difference score (block 724). For example, in the matching algorithm, the simulated time series with the smallest difference score may be taken as the final result for the crop type. For example, the matching algorithm may output an estimate of the crop type according to this simulation (i.e., the simulation that produced the smallest difference score). In other words, the estimate of the crop type output of the matching algorithm may be based on the crop type used by the crop growth simulator to generate the particular simulation that produced the smallest difference score.

[0136] In some embodiments, blocks 716, 718, 720, 722, and 724 may correspond to a first instance of block 506 in FIG. 5 (i.e., matching historical crop growth time series with each instance of the simulated crop growth time series to determine an estimated crop type and / or sowing date).

[0137] The method 700 continues by determining a time-shifted simulated crop growth time series having one or more elements including one or more crop-specific parameters for each crop type / sowing date combination in the set of the estimated crop type and the multiple sowing dates in the sowing calendar of the estimated crop type (block 726). For example, in the crop growth simulator, multiple time-shifted simulated crop growth time series may be determined, each having one or more elements including one or more crop-specific parameters (e.g., LAI, NDVI, etc.), i.e., the same crop-specific parameters as the historical crop growth time series determined in block 706. In some embodiments, the crop growth simulation model of the crop growth simulator determines one simulated crop growth time series for each estimated crop type / sowing date combination. For example, in the crop growth simulator, a simulated LAI time series for each estimated crop type / sowing date combination may be determined using a DSSAT crop growth simulation model that essentially simulates the LAI.

[0138] In some embodiments, the multiple time-shifted simulated crop growth time series determined in block 726 may include one or more crop-specific parameters (e.g., LAI, NDVI, etc.) without additional elements. For example, multiple time-shifted simulated LAI time series may be determined. In some embodiments, the multiple time-shifted simulated crop growth time series determined in block 726 may include one or more additional elements, such as weather data, in addition to one or more crop-specific parameters (e.g., LAI, NDVI, etc.).

[0139] In some embodiments, the multiple time-shifted simulated crop growth time series determined at block 726 may be provided collectively as an input to a matching algorithm. In some embodiments, the multiple time-shifted simulated crop growth time series determined at block 726 may be selectively provided as an input to a matching algorithm (e.g., one time-shifted simulated crop growth time series at a time in response to control data).

[0140] In some embodiments, block 726 may correspond to a second instance of block 504 of FIG. 5 (i.e., for each crop type / sowing date combination in a set of one or more crop types and one or more sowing dates, determining a simulated crop growth time series for the area of ​​interest based on historical crop data, geospatial data, and weather data using one or more crop growth simulation models).

[0141] The method 700 continues by calculating, for each combination in the set of the estimated crop type and the multiple sowing dates in the sowing calendar for the estimated crop type, a difference between each element of the time-shifted simulated crop growth time series and each corresponding element of the historical crop growth time series (block 728). For example, in a matching algorithm, a difference between each element of the time-shifted simulated crop growth time series from the crop growth simulator and a historical crop growth time series from the historical crop growth database may be calculated.

[0142] The method 700 then continues by calculating a difference score for each combination in the set of estimated crop type and multiple sowing dates in the sowing calendar for the estimated crop type by summing the calculated differences for that estimated crop type / sowing date combination (block 730). For example, in the matching algorithm, a difference score may be calculated for each estimated crop type / sowing date combination by summing the calculated differences (i.e., the differences calculated for each element of the time series).

[0143] The method 700 continues by sorting the difference scores for each crop type / planting date combination at block 732. For example, in a matching algorithm, the difference scores for each estimated crop type / planting date combination may be sorted.

[0144] The method 700 then continues by ranking the difference scores to identify the smallest difference score (block 734). For example, in a matching algorithm, the difference scores may be ranked to identify the smallest difference score.

[0145] The method 700 continues by determining an estimated sowing date for the estimated crop type based on the sowing date associated with the minimum difference score (block 736). For example, in the matching algorithm, the simulated time series with the minimum difference score may be taken as the final result for sowing date. For example, the matching algorithm may output an estimate of the sowing date according to this simulation (i.e., the simulation that produced the minimum difference score). In other words, the estimate of the sowing date output of the matching algorithm may be based on the sowing date used by the crop growth simulator to generate the particular simulation that produced the minimum difference score.

[0146] In some embodiments, blocks 728, 730, 732, 734, and 736 may correspond to a second instance of block 506 of FIG. 5 (i.e., matching a historical crop growth time series with each instance of a simulated crop growth time series to determine an estimated crop type and / or sowing date).

[0147] Referring now to Figure 8, a flow chart of an example method 800 for estimating crop type and / or sowing date is shown, according to one or more embodiments. Figure 8 illustrates yet another example implementation of the example method for estimating crop type and / or sowing date shown in Figure 5, where the crop type and sowing date are estimated with respect to a previous crop cycle. Method 800 illustrates a preferred ordering of blocks. However, it should be understood that the various blocks may occur at any timing relative to one another.

[0148] In some embodiments, if the crop type and sowing date planted during the previous crop cycle are known, the crop type and sowing date estimates provided by method 800 may be used to train a crop growth simulator and / or a matching algorithm.

[0149] The method 800 begins with receiving remote sensor data including a time series of image data of an area of ​​interest captured during a previous crop cycle (block 802). For example, at a past crop growth calculation unit, a time series of image data of an area of ​​interest captured during a previous crop cycle may be received from a remote sensor database.

[0150] The method 800 continues by calculating a time series of one or more crop-specific parameters based on the time series of image data (block 804). For example, in a past crop growth calculation unit, a time series of one or more crop-specific parameters (e.g., LAI, NDVI, etc.) based on the time series of image data may be calculated. For example, based on a time series of optical image data of an area of ​​interest, the past crop growth calculation unit may calculate an LAI time series according to equations (1)-(4) above.

[0151] Next, the method 800 continues by determining a past crop growth time series having one or more elements including one or more crop-specific parameters (block 806). For example, in a past crop growth calculation unit, a past crop growth time series having one or more elements including one or more crop-specific parameters (e.g., LAI, NDVI, etc.) may be determined. In some embodiments, the past crop growth time series determined in block 806 may include the time series calculated in block 804 without additional elements. For example, a past LAI time series may be determined. In some embodiments, the past crop growth time series determined in block 806 may include one or more additional elements, such as weather data, in addition to the time series calculated in block 804.

[0152] In some embodiments, the historical crop growth time series determined in block 806 may be provided directly as an input to the matching algorithm. In some embodiments, the historical crop growth time series determined in block 806 may be stored in a historical crop growth database and then provided to the matching algorithm.

[0153] In some embodiments, blocks 802, 804, and 806 may correspond to block 502 of FIG. 5 (i.e., preparing a historical crop growth time series for an area of ​​interest based on remote sensor data).

[0154] The method 800 continues by receiving historical crop data including crop types previously grown in a crop growing region associated with the area of ​​interest during at least one previous crop cycle and a sowing calendar for each crop type (block 808). For example, in a crop growth simulator, historical crop data including crop types previously grown in a crop growing region associated with the area of ​​interest during at least one previous crop cycle and a sowing calendar for each of the crop types may be received. In some embodiments, the historical crop data may be received over a network from a crop history database and incorporated into a crop growth simulation model of the crop growth simulator via a data source ingestion module.

[0155] Next, the method 800 continues by receiving geospatial data including agricultural information characterizing the area of ​​interest (block 810). For example, the geospatial data including agricultural information characterizing the area of ​​interest may be received at a crop growth simulator. In some embodiments, the geospatial data may be received over a network from a geospatial database and imported into a crop growth simulation model of the crop growth simulator via a data source import module.

[0156] The method 800 then continues by receiving weather data including a previous crop cycle weather time series representing one or more weather conditions in a weather region associated with the area of ​​interest during a previous crop cycle (block 812). For example, in a crop growth simulator, weather data including a previous crop cycle weather time series representing one or more weather conditions in a weather region associated with the area of ​​interest during a previous crop cycle (i.e., the same crop cycle in which the image data used in block 802 was captured) may be received. The previous crop cycle weather time series may, for example, cover the same time period (e.g., March 1 to May 31) and the same periodicity period (e.g., daily) as the time series of the one or more crop-specific parameters calculated in block 804. In some embodiments, the weather data may be received over a network from a weather database and ingested into the crop growth simulation model of the crop growth simulator via a data source ingestion module.

[0157] Next, the method 800 continues by determining a simulated crop growth time series having one or more elements including one or more crop-specific parameters for each crop type / sowing date combination in the set of crop types historically grown in the crop growing area and multiple sowing dates in the sowing calendar for those crop types (block 814). For example, in the crop growth simulator, multiple simulated crop growth time series may be determined, each having one or more elements including one or more crop-specific parameters (e.g., LAI, NDVI, etc.), i.e., the same crop-specific parameters as the historical crop growth time series determined in block 806. In some embodiments, the crop growth simulation model of the crop growth simulator determines one simulated crop growth time series for each crop type / sowing date combination. For example, in the crop growth simulator, a simulated LAI time series for each crop type / sowing date combination may be determined using a DSSAT crop growth simulation model that essentially simulates the LAI.

[0158] In some embodiments, the multiple simulated crop growth time series determined at block 814 may be provided collectively as input to a matching algorithm. In some embodiments, the multiple simulated crop growth time series determined at block 814 may be provided selectively as input to a matching algorithm (e.g., one simulated crop growth time series at a time in response to control data).

[0159] In some embodiments, blocks 808, 810, 812, and 814 may correspond to block 504 of FIG. 5 (i.e., for each crop type / sowing date combination in a set of one or more crop types and one or more sowing dates, determining a simulated crop growth time series for the area of ​​interest based on historical crop data, geospatial data, and weather data using one or more crop growth simulation models).

[0160] The method 800 continues by calculating, for each crop type / sowing date combination, a difference score based on one or more differences, each calculated as a distance between an element of the simulated crop growth time series and a corresponding element of the historical crop growth time series (block 816). For example, in a matching algorithm, a difference between each element of each simulated crop growth time series from the crop growth simulator and a historical crop growth time series from the historical crop growth database may be calculated, and a difference score may be calculated and stored. The difference score may be calculated by summing the calculated differences (i.e., the difference calculated for each element of the time series).

[0161] Next, the method 800 continues by determining an estimated crop type and sowing date based on the crop type and sowing date associated with the minimum difference score (block 818). For example, in the matching algorithm, the simulated time series with the minimum difference score may be obtained as the final result. For example, the matching algorithm may output an estimate of the crop type and / or sowing date according to this simulation (i.e., the simulation that produced the minimum difference score). In other words, the estimate of the crop type and / or sowing date output of the matching algorithm may be based on the crop type and sowing date used by the crop growth simulator to generate the particular simulation that produced the minimum difference score. The method 800 may then end.

[0162] In some embodiments, blocks 816 and 818 may correspond to block 506 of FIG. 5 (i.e., matching historical crop growth time series with each instance of the simulated crop growth time series to determine an estimated crop type and / or sowing date).

[0163] Referring now to FIG. 9, a block diagram of an exemplary and non-limiting system 900 for facilitating estimation of crop type and / or sowing date is shown, according to one or more embodiments. For the sake of brevity, repeated descriptions of similar elements used in other embodiments described herein are omitted. Aspects of the systems (e.g., system 900, etc.), apparatus, or processes described in this disclosure may constitute machine-executable program module(s) embodied in a machine(s), e.g., embodied in one or more computer-readable medium(s) associated with one or more machines. Such program module(s), when executed by one or more machines, e.g., one or more computers, one or more computing devices, one or more virtual machines, etc., may cause the one or more machines to perform the described operations.

[0164] As shown in FIG. 9, the system 900 may include one or more client systems (e.g., mobile devices) 902, 912, one or more server systems 904, 914, one or more networks 906, one or more crop history databases 920, one or more geospatial databases 922, one or more weather databases 924, one or more remote sensor databases 926, and one or more historical crop growth databases 928. It should be understood that the one or more client systems 902, 912, the one or more server systems 904, 914, the one or more crop history databases 920, the one or more geospatial databases 922, the one or more weather databases 924, the one or more remote sensor databases 926, and the one or more historical crop growth databases 928 may be equipped with a communications device (e.g., one or more communications components 930 described below with respect to the client system 902) that enables communication between the one or more client systems 902, 912, the one or more server systems 904, 914, the one or more crop history databases 920, the one or more geospatial databases 922, the one or more weather databases 924, the one or more remote sensor databases 926, and the one or more historical crop growth databases 928 over the one or more networks 906.

[0165] The client systems 902, 912 may include the functionality described herein with respect to requesting estimates of crop type and / or sowing date and displaying the results of the estimates. One or more client systems 902, 912 may be used to send requests for estimates of crop type and sowing date to one or more server systems 904, 914 and display the results of the estimates returned from the one or more server systems 904, 914. For example, requests for estimates of crop type and / or sowing date may originate from farmers and agribusinesses, such as agricultural trade, seed supply, agrochemical manufacturing, and logistics services, as well as government agencies. The client system 912 may be a different type of client system than the client system 902. The client system 912 may also be the client system 902 or may include one or more components of the client system 902, or both. In the following description where more than one client system is used, it should be understood that the client system may include one or more client systems 902, or one or more client systems 912, or both.

[0166] The client systems 902, 912 may include, for example, one or more mobile phones (e.g., 1002 in FIG. 10), tablets, PDAs, laptops, or other mobile devices.

[0167] Server systems 904, 914 may include functionality described herein with respect to estimating crop type and / or sowing date (e.g., method 500 of FIG. 5). Server system 914 may be a different type of client system than server system 904. Server system 914 may also be server system 904, or may include one or more components of server system 904, or both. In the following description where more than one server system is used, it should be understood that the server system may include one or more server systems 904, or one or more server systems 914, or both.

[0168] The various components of the system 900 (e.g., client systems 902, 912, server systems 904, 914, crop history database 920, geospatial database 922, weather database 924, remote sensor database 926, historical crop growth database 928, communications components 930, 950, memory 932, 952, processors 938, 958, display 942, keyboard 944, GPS 946, camera 948, and / or other components) may be connected directly or via one or more networks 906. Such networks 906 may include wired and wireless networks, including, but not limited to, cellular networks, wide area networks (WANs) (e.g., the Internet), or local area networks (LANs), or combinations thereof, non-limiting examples of which include cellular, WAN, Wireless Fidelity (Wi-Fi®), Wi-Max®, WLAN, wireless communications, microwave communications, satellite communications, optical communications, acoustic communications, electromagnetic induction communications, quantum communications, or any other suitable communications technology, or combinations thereof.

[0169] The client system 902 may include one or more communication components 930 that enable the client system 902 to communicate by wireless or wired communication, or both, over one or more networks 906 with one or more server systems 904, 914, one or more other client devices 912, one or more crop history databases 920, one or more geospatial databases 922, one or more weather databases 924, one or more remote sensor databases 926, and / or one or more historical crop growth databases 928. For example, the one or more communication components 930 may correspond to network adapter 20 of FIG.

[0170] The client system 902 may include or be otherwise associated with at least one memory 932 that may store computer-executable program module(s) (for example, the computer-executable program module(s) may include, but are not limited to, crop type and sowing date estimation request / display module(s) 934 and associated program module(s). The crop type and sowing date estimation request / display module(s) 934 may correspond to program module 42 of FIG. 1. The client system 902 may also include or be otherwise associated with at least one processor 938 that executes the computer-executable program module(s) stored in the memory 932. The client system 902 may further include a system bus 940 that may couple various components, including, but not limited to, communication component(s) 930, memory 932, a processor 938, a display 942, a user input device 944, a GPS 946, a camera 948, or other components (e.g., accelerometer, gyroscope, magnetometer), or combinations thereof.

[0171] Although the client system 902 is illustrated in FIG. 9 as including the crop type and sowing date estimation request / display module(s) 934, in other embodiments, any number of different types of devices may be associated with or include all or a portion of the crop type and sowing date estimation request / display module(s) 934. For example, one or more of the server systems 904, 914 may include all or a portion of the crop type and sowing date estimation request / display module(s) 934. In other words, data processing related to requesting estimates of crop type and / or sowing date, and displaying the results of the estimates, may be performed locally (e.g., using the processor 938), or remotely (e.g., using the processor 958 at the server system 904), or both. All such embodiments are contemplated.

[0172] The client system 902 may also include or be otherwise associated with at least one display 942 that may display estimation results, as well as information related to use of the crop type and sowing date estimation request / display module(s) 934 (e.g., describing one or more input options by which the area of ​​interest may be entered, such as keying in coordinates that define the area of ​​interest, using GPS-derived geolocation data that defines the area of ​​interest, or using image data that defines the area of ​​interest, or a combination thereof). The display 942 may be any suitable display device. For example, the display 942 may be a display integrated into a mobile phone, tablet, PDA, or laptop. In other embodiments, the display 942 may be a component of a device communicatively coupled to the mobile phone, tablet, PDA, or laptop. In some embodiments, the display 942 may be a touch screen that allows a user to interact with the client system 902 using their finger or a stylus.

[0173] The client system 902 may also include or be otherwise associated with at least one user input device 944, such as a keyboard and / or pointing device (e.g., a graphics tablet, a mouse, a stylus, a pointing stick, a trackball, etc.), through which a user may provide input data (e.g., input data defining an area of ​​interest). The user input device 944 may be any suitable user input device. For example, the user input device 944 may be a keyboard and / or pointing device integrated into a mobile phone, tablet, PDA, or laptop. In other embodiments, the user input device 944 may be a component of a device communicatively coupled to the mobile phone, tablet, PDA, or laptop.

[0174] The client system 902 may also include or be otherwise associated with at least one GPS 946 that may provide geolocation data (e.g., geolocation data defining an area of ​​interest). The GPS 946 may be any suitable global satellite-based geolocation system, such as, for example, the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS), Galileo, the Quasi-Zenith Satellite System (QZSS), or the like. For example, the GPS 946 may be a global satellite-based geolocation system integrated into a cell phone, tablet, PDA, or laptop. In other embodiments, the GPS 946 may be a component of a device communicatively coupled to the cell phone, tablet, PDA, or laptop.

[0175] The client system 902 may also include or be otherwise associated with at least one camera 948 that may capture images (e.g., images of parcel maps or other images defining an area of ​​interest). The camera 948 may be any suitable image capture device. For example, the camera 948 may be a camera integrated into a cell phone, tablet, PDA, or laptop. In other embodiments, the camera 948 may be a component of a device communicatively coupled to the cell phone, tablet, PDA, or laptop.

[0176] The server system 904 may include one or more communication components 950 that enable the server system 904 to communicate by wireless or wired communication, or both, over one or more networks 906 with one or more client systems 902, 912, one or more other server devices 914, one or more crop history databases 920, one or more geospatial databases 922, one or more weather databases 924, one or more remote sensor databases 926, and / or one or more historical crop growth databases 928. For example, the one or more communication components 950 may correspond to network adapter 20 of FIG.

[0177] The server system 904 may include or be otherwise associated with at least one memory 952 that may store computer-executable program module(s) (e.g., the computer-executable program module(s) may include, but are not limited to, a crop growth simulator module(s) 954, a matching algorithm module(s) 956, and associated program module(s). The crop growth simulator module(s) 954 and the matching algorithm module(s) 956 may correspond to the program module 42 of FIG. 1 and to the crop growth simulator 402 and the matching algorithm 404 of FIG. 4, respectively. The server system 904 may also include or be otherwise associated with at least one processor 958 that executes the computer-executable program module(s) stored in the memory 952. The server system 904 may further include a system bus 960 that may couple various components, including, but not limited to, communication component(s) 950, memory 952, processor 958, and / or other components.

[0178] Although the server system 904 is illustrated in FIG. 9 as including the crop growth simulator module(s) 954 and the matching algorithm module(s) 956, in other embodiments, any number of different types of devices may be associated with or include all or a portion of the crop growth simulator module(s) 954 and the matching algorithm module(s) 956. For example, one or more of the client systems 902, 912 may include all or a portion of the crop growth simulator module(s) 954 or the matching algorithm module(s) 956, or both. In other words, data processing associated with the crop growth simulator module(s) 954 or the matching algorithm module(s) 956, or both, may be performed locally (e.g., using the processor 958) or remotely (e.g., using the processor 938 at the client system 902), or both. All such embodiments are contemplated.

[0179] The one or more crop history databases 920 may be any database, non-limiting examples of which include one or more databases that store historical crop data (e.g., crop types previously grown in a crop growing area associated with an area of ​​interest during at least one previous crop cycle, and sowing calendars for each of those crop types). The one or more crop history databases 920 may correspond to crop history database 420 of FIG. 4.

[0180] The one or more geospatial databases 922 may be any database, non-limiting examples of which include one or more databases that store geospatial data (e.g., agricultural information that characterizes an area of ​​interest, such as elevation, soil moisture, soil type, and other geospatial data). The one or more geospatial databases 922 may correspond to geospatial database 422 of FIG. 4.

[0181] The one or more weather databases 924 may be any database, non-limiting examples of which include one or more databases that store weather (e.g., one or more weather time series that represent one or more weather conditions in a weather region associated with an area of ​​interest). The one or more weather databases 924 may correspond to the weather database 424 of FIG.

[0182] The one or more remote sensor databases 926 may be any database, non-limiting examples of which include one or more databases that store remote sensor data (e.g., satellite image data of an area of ​​interest). The one or more remote sensor databases 926 may correspond to the remote sensor database 426 of FIG.

[0183] The one or more historical crop growth databases 928 may be any database, non-limiting examples of which include one or more databases that store one or more historical crop growth time series obtained from remote sensing (e.g., historical crop growth time series of LAI for the current crop cycle or a previous crop cycle). The one or more historical crop growth databases 928 may correspond to the historical crop growth database 406 of FIG. 4.

[0184] Referring now to FIG. 10, an exemplary client system 1000 for requesting crop type and / or sowing date estimations and displaying the results of the estimations is shown, according to one or more embodiments. The exemplary client system 100 may correspond to the client systems 902, 912 of FIG. 9. The exemplary client system 1000 shown in FIG. 10 is comprised of a mobile phone 1002 with an integrated display / touch screen 1004. In other embodiments, the client system may be a tablet, PDA, laptop, or other client device, including mobile phones with different configurations. Displayed on the integrated display / touch screen 1004 are the results 1006 of the crop type and sowing date estimations that are returned by the server system (e.g., 904 of FIG. 9) in response to the results of the crop type and sowing date estimation, according to some embodiments. The client system 1000 may send a request to the client system in advance, which may include GPS-derived geolocation data defining the area of ​​interest. For example, the mobile phone 1002 may include an integrated GPS (946 in FIG. 9 ), and the phone's GPS-derived geolocation data may define an area of ​​interest (e.g., the crop type and planting date estimate request / display module(s) (934 in FIG. 9 ) may define that area of ​​interest as the state, county, province, etc. in which the mobile phone 1002 is located).

[0185] In the embodiment shown in FIG. 10, the results of the crop type and sowing date estimation 1006 are displayed using a graphical user interface (GUI) that includes one or more windows (e.g., one or more windows such as a land parcel window 1008 and a key window 1010), icons, and / or buttons that allow a user to interact with the displayed results. For example, the GUI may allow a user to interact with the displayed results to view the entire area of ​​interest in the land parcel window 1008, or a portion of the area of ​​interest (e.g., using a zoom function). In the embodiment shown in FIG. 10, the land parcel window 108 displays at least a portion of an area of ​​interest that includes a number of fields 1020, 1022, 1024, 1026, 1028, and 1030, each having an estimated crop type (indicated by a field fill) and sowing date (labeled with text for each field). Also, in the embodiment shown in FIG. 10, the key window 1010 displays a key to the field fill graphics. It should be understood that the GUI configuration and functionality depicted in Figure 10 are intended to be illustrative only, and that embodiments of the present invention are not limited thereto. For example, the results of the crop type and sowing date estimation may be displayed using a text-based user interface.

[0186] The present invention may be a system, a method, and / or a computer program product, which may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention.

[0187] A computer readable storage medium may be any tangible device capable of holding and storing instructions for use by an instruction execution device. A computer readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination thereof. A non-exhaustive list of more specific examples of computer readable storage media includes portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disc read-only memory (CD-ROM), digital versatile disk (DVD), memory stick, floppy disk, mechanically encoded devices such as punch cards or groove ridge structures having instructions recorded thereon, and any suitable combination thereof. A computer-readable storage medium, as used herein, should not be construed to be a transitory signal per se, such as, for example, radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission medium (e.g., light pulses passing through a fiber optic cable), or electrical signals transmitted over a wire.

[0188] The computer readable program instructions described herein may be downloaded from a computer readable storage medium to the respective computing / processing device or to an external computer or storage device over a network, such as, for example, the Internet, a local area network, a wide area network, or a wireless network, or a combination thereof. The network may include copper transmission cables, optical transmission fiber, wireless transmission, routers, firewalls, switches, gateway computers, or edge servers, or a combination thereof. A network adapter card or network interface of each computing / processing device receives the computer readable program instructions from the network and transfers the computer readable program instructions for storage in a computer readable storage medium within the respective computing / processing device.

[0189] The computer readable program instructions for performing the operations may be assembler instructions, instruction-set-architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state-setting data, or source or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk®, C++, and traditional procedural programming languages ​​such as the “C” programming language or similar programming languages. The computer readable program instructions may be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or wide area network (WAN), or a connection may be made to the external computer (e.g., via the Internet using an Internet Service Provider). In one or more embodiments, electronic circuitry including, for example, a programmable logic circuit, a field-programmable gate array (FPGA), or a programmable logic array (PLA), may be personalized by utilizing state information of the computer-readable program instructions to execute the computer-readable program instructions to perform aspects of the invention.

[0190] Aspects are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to one or more embodiments. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer readable program instructions.

[0191] These computer-readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine such that, when the instructions are executed by the processor of the computer or other programmable data processing apparatus, means are generated for implementing the functions / acts specified in one or more blocks of the flowcharts and / or block diagrams. These computer-readable program instructions may also be stored on a computer-readable storage medium capable of directing a computer, programmable data processing apparatus, or other device, or combination thereof, to function in a particular manner, such that the computer-readable storage medium on which the instructions are stored constitutes an article of manufacture including instructions that implement aspects of the functions / acts specified in one or more blocks of the flowcharts and / or block diagrams.

[0192] Furthermore, computer-readable program instructions may be loaded into a computer, other programmable data processing apparatus, or other device to cause the computer, other programmable apparatus, or other device to perform a series of operational steps, thereby generating a computer-implemented process that, when executed on the computer, other programmable apparatus, or other device, implements the functions / acts specified in one or more blocks of the flowcharts and / or block diagrams.

[0193] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments. In this regard, each block in the flowcharts or block diagrams may represent a module, segment, or portion of instructions that includes one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the blocks may occur out of the order depicted. For example, depending on the functionality involved, two blocks shown in succession may in fact be executed substantially simultaneously, or the blocks may possibly be executed in the reverse order. It will also be noted that each block in the block diagrams and / or flowchart illustrations, and combinations of blocks in the block diagrams and / or flowchart illustrations, may be implemented by a dedicated hardware-based system that performs the specified functions or acts, or executes a combination of dedicated hardware and computer instructions.

[0194] Those skilled in the art will appreciate that many variations are possible within the scope of the present invention. For example, details of specific hardware and software implementations described herein are for illustrative purposes only and are not meant to limit the scope of the described subject matter. Thus, while the present invention has been specifically shown and described with reference to preferred embodiments thereof, those skilled in the art will appreciate that changes in form and detail may be made therein without departing from the scope of the present invention.

Claims

1. 1. A method for estimating crop type or sowing date or both, comprising: The method includes preparing a historical crop growth time series for an area of ​​interest based on remote sensor data, where: the remote sensor data includes a time series of image data of the area of ​​interest, and the historical crop growth time series includes one or more elements including one or more crop specific parameters; The method includes, for each combination of crop type and sowing date in a set of one or more crop types and one or more sowing dates, determining a simulated crop growth time series for the area of ​​interest based on historical crop data, geospatial data, and meteorological data using a crop growth simulation model, wherein: the geospatial data includes agricultural information characterizing the area of ​​interest, the meteorological data includes weather time series representative of one or more weather conditions in a meteorological region associated with the area of ​​interest, each of the simulated crop growth time series for each combination of crop type and sowing date includes one or more elements including the one or more crop specific parameters; and, The method includes matching the historical crop growth time series with each of the simulated crop growth time series for each combination of crop type and sowing date to determine an estimated crop type and / or sowing date. method.

2. The method of claim 1 , wherein the historical crop data includes crop types previously grown in a crop growing area associated with the area of ​​interest during at least one previous crop cycle and a sowing calendar for each of the crop types.

3. Determining a simulated crop growth time series for each combination of crop type and sowing date in the set of one or more crop types and one or more sowing dates includes: determining an initial simulated crop growth time series for each combination of crop type and sowing date in a set of the crop types previously grown in the crop growing area and initial sowing dates in the sowing calendar for each of the crop types; The method of claim 2 , comprising:

4. Matching the historical crop growth time series with each of the simulated crop growth time series for each combination of crop type and sowing date to determine an estimated crop type and / or sowing date includes: calculating, for each combination of crop type and sowing date in the set of crop types previously grown in the crop growing area and the initial sowing dates in the sowing calendar for each of the crop types, a difference between each element of the one or more elements of the initial simulated crop growth time series and a corresponding element of the one or more elements of the historical crop growth time series; calculating a difference score for each combination of crop type and sowing date in the set of crop types previously grown in the crop growing area and the initial sowing dates in the sowing calendar for each of the crop types by summing the differences calculated for the combination of crop type and sowing date; storing the calculated difference scores for each combination of crop type and sowing date in the set of crop types previously grown in the crop growing area and the initial sowing dates in the sowing calendar for each of the crop types; ranking the stored difference scores to identify a minimum difference score; determining the estimated crop type based on the crop type associated with the smallest difference score; The method of claim 3 , comprising:

5. Determining a simulated crop growth time series for each combination of crop type and sowing date in the set of one or more crop types and one or more sowing dates includes: determining a time-shifted simulated crop growth time series for each combination of crop type and sowing date in a set of the estimated crop type and a plurality of sowing dates in the sowing calendar for the estimated crop type; The method of claim 4 further comprising:

6. Matching the historical crop growth time series with each of the simulated crop growth time series for each combination of crop type and sowing date to determine an estimated crop type and / or sowing date includes: calculating, for each combination of crop type and sowing date in the set of the estimated crop type and the plurality of sowing dates in the sowing calendar of the estimated crop type, a difference between each element of the one or more elements of the time-shifted simulated crop growth time series and a corresponding each element of the one or more elements of the historical crop growth time series; calculating, for each combination of crop type and sowing date in the set of the estimated crop type and the plurality of sowing dates in the sowing calendar of the estimated crop type, a difference score by summing each calculated difference for the combination of crop type and sowing date; storing the calculated difference scores for each combination of crop type and sowing date in the set of the estimated crop type and the plurality of sowing dates in the sowing calendar of the estimated crop type; ranking the stored difference scores to identify a minimum difference score; determining the estimated sowing date based on the sowing date associated with the smallest difference score; The method of claim 5 further comprising:

7. 2. The method of claim 1, wherein the one or more crop specific parameters are selected from the group consisting of Leaf Area Index (LAI) and Normalized Difference Vegetation Index (NDVI).

8. The method of claim 1 , wherein the one or more crop specific parameters comprises a Leaf Area Index (LAI).

9. The method of claim 1 , wherein the agricultural information is selected from the group consisting of elevation, soil moisture, and soil type.

10. The method of claim 1 , wherein the image data is captured by a satellite, an aerial drone, or an aircraft, or a combination thereof.

11. The method of claim 1 , wherein the image data is captured by a satellite.

12. 1. A system for estimating crop type and / or sowing date, comprising: A server device including one or more processors, one or more computer readable storage devices, and program instructions stored in at least one of the one or more computer readable storage devices for execution by at least one of the one or more processors, the program instructions comprising: A historical crop growth time series is provided for an area of ​​interest based on remote sensor data, where: the remote sensor data includes a time series of image data of the area of ​​interest, and the historical crop growth time series includes one or more elements including one or more crop specific parameters; For each combination of crop type and sowing date in the set of one or more crop types and one or more sowing dates, determine a simulated crop growth time series for the area of ​​interest based on historical crop data, geospatial data, and weather data using a crop growth simulation model, wherein: the geospatial data includes agricultural information characterizing the area of ​​interest, the meteorological data includes a meteorological time series representative of one or more meteorological conditions in a meteorological region associated with the area of ​​interest, and the simulated crop growth time series includes one or more elements including the one or more crop specific parameters; and, Matching the historical crop growth time series with each of the simulated crop growth time series for each combination of crop type and sowing date to determine an estimated crop type and / or sowing date. The system is operable to:

13. The system of claim 12 , wherein the historical crop data includes crop types previously grown in a crop growing area associated with the area of ​​interest during at least one previous crop cycle and a sowing calendar for each of the crop types.

14. For each combination of crop type and sowing date in the set of one or more crop types and one or more sowing dates, the program instructions further include: determining an initial simulated crop growth time series for each combination of crop type and sowing date in a set of the crop types previously grown in the crop growing area and initial sowing dates in the sowing calendar for each of the crop types; The system of claim 13 , wherein the system is executable to:

15. The program instructions further include: matching the historical crop growth time series with each of the simulated crop growth time series for each combination of crop type and sowing date to determine an estimated crop type and / or sowing date. calculating, for each combination of crop type and sowing date in the set of crop types previously grown in the crop growing area and the initial sowing dates in the sowing calendar for each of the crop types, a difference between each element of the one or more elements of the initial simulated crop growth time series and a corresponding element of the one or more elements of the historical crop growth time series; calculating a difference score for each combination of crop type and sowing date in the set of crop types previously grown in the crop growing area and the initial sowing dates in the sowing calendar for each of the crop types by summing the differences calculated for the combination of crop type and sowing date; storing the calculated difference scores for each combination of crop type and sowing date in the set of crop types previously grown in the crop growing area and the initial sowing dates in the sowing calendar for each of the crop types; ranking the stored difference scores to identify a minimum difference score. and, determining the estimated crop type based on the crop type associated with the smallest difference score; The system of claim 14 , wherein the system is executable to:

16. For each combination of crop type and sowing date in the set of one or more crop types and one or more sowing dates, the program instructions further include: determining a time-shifted simulated crop growth time series for each combination of crop type and sowing date in a set of the estimated crop type and a plurality of sowing dates in the sowing calendar for the estimated crop type; The system of claim 15 , wherein the system is executable to:

17. The program instructions further include: matching the historical crop growth time series with each of the simulated crop growth time series for each combination of crop type and sowing date to determine an estimated crop type and / or sowing date. calculating, for each combination of crop type and sowing date in the set of the estimated crop type and the plurality of sowing dates in the sowing calendar of the estimated crop type, a difference between each element of the one or more elements of the time-shifted simulated crop growth time series and a corresponding each element of the one or more elements of the historical crop growth time series; calculating, for each combination of crop type and sowing date in the set of the estimated crop type and the plurality of sowing dates in the sowing calendar of the estimated crop type, a difference score by summing each calculated difference for the combination of crop type and sowing date; storing the calculated difference scores for each combination of crop type and sowing date in the set of the estimated crop type and the plurality of sowing dates in the sowing calendar of the estimated crop type; ranking the stored difference scores to identify a minimum difference score; determining the estimated sowing date based on the sowing date associated with the smallest difference score; 20. The system of claim 16, wherein the system is executable to:

18. A computer program for estimating crop type and / or sowing date, said computer program causing one or more processors to carry out the method according to any one of claims 1 to 11.

19. 1. A method for estimating crop type and sowing date, comprising: receiving remote sensor data including a time series of image data of an area of ​​interest captured during a current crop cycle; calculating a time series of one or more crop specific parameters based on the time series of image data; determining a historical crop growth time series for the area of ​​interest during the current crop cycle having one or more elements including the one or more crop specific parameters; receiving historical crop data including a plurality of crop types grown in a crop growing area associated with the area of ​​interest during at least one previous crop cycle and a sowing calendar for each of the plurality of crop types; receiving geospatial data including agricultural information characterizing the area of ​​interest; receiving weather data including a current crop cycle weather time series representative of one or more weather conditions in a weather region associated with the area of ​​interest during the current crop cycle; for each combination of crop type and sowing date in the set of the plurality of crop types and the plurality of sowing dates in the sowing calendar of the crop types, determining using a crop growth simulation model a simulated crop growth time series for the area of ​​interest during the current crop cycle having one or more elements including the one or more crop-specific parameters based on the historical crop data, the geospatial data, and the weather data; calculating, for each combination of crop type and sowing date in the set of the plurality of crop types and the plurality of sowing dates in the sowing calendar of the crop type, a difference score based on one or more differences, each calculated as a distance between an element of the one or more elements of the simulated crop growth time series and a corresponding element of the one or more elements of the historical crop growth time series; determining an estimated crop type and sowing date based on the crop type and sowing date associated with the simulated crop growth time series that produces the smallest difference score.

20. 1. A system for estimating crop type and sowing date, comprising: a server device having one or more processors; one or more computer-readable storage devices; and program instructions stored in at least one of the one or more computer-readable storage devices for execution by at least one of the one or more processors; the program instructions comprising: receiving remote sensor data including a time series of image data of an area of ​​interest captured during a current crop cycle; calculating a time series of one or more crop specific parameters based on the time series of image data; determining a historical crop growth time series for the area of ​​interest during the current crop cycle having one or more elements including the one or more crop specific parameters; receiving historical crop data including a plurality of crop types grown in a crop growing area associated with the area of ​​interest during at least one previous crop cycle and a sowing calendar for each of the plurality of crop types; receiving geospatial data including agricultural information characterizing the area of ​​interest; receiving weather data including a current crop cycle weather time series representative of one or more weather conditions in a weather region associated with the area of ​​interest during the current crop cycle; for each combination of crop type and sowing date in the set of the plurality of crop types and the plurality of sowing dates in the sowing calendar of the crop types, determining using a crop growth simulation model a simulated crop growth time series for the area of ​​interest during the current crop cycle having one or more elements including the one or more crop-specific parameters based on the historical crop data, the geospatial data, and the weather data; calculating, for each combination of crop type and sowing date in the set of the plurality of crop types and the plurality of sowing dates in the sowing calendar of the crop type, a difference score based on one or more differences, each calculated as a distance between an element of the one or more elements of the simulated crop growth time series and a corresponding element of the one or more elements of the historical crop growth time series; determining an estimated crop type and sowing date based on the crop type and the sowing date associated with the simulated crop growth time series that produces a minimum of the difference score; The system is operable to:

Citation Information

Patent Citations

  • Judgement system for suitable crop and its kind to be introduced, and cultivation ground and time based on climate similarity at each growth stage

    JP2003006274A

  • Harvest-predicting system and harvest-predicting device

    WO2014203664A1