IP Library Granted Patent US 12,198,237
Granted Patent B2
US 12,198,237 · App. 18/051,789 · Granted Jan 14, 2025

Dynamic data tiling

Inventors: Christopher Edward Holden (Jamaica Plain, MA); Keith Frederick Ma (Cambridge, MA); Jacob Samuel McDonald (Malden, MA)
Assignee: INDIGO AG, INC.
G06T11/40G06F16/587
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,198,237
App. No.
18/051,789
Granted
Jan 14, 2025
Kind
B2
Abstract

Dynamic data tiling is provided. In various embodiments, a request is received for a tile of geographic data from a requestor. The request specifies a region relative to a projection. The region is looked up in a spatial index to determine one or more source tiles. The spatial index corresponds to the projection and the one or more source tiles intersecting the region. The one or more source tiles are requested from a proxy. The proxy is configured to maintain one or more persistent connections to one or more datastores and to retrieve the one or more source tiles via the one or more persistent connections. The one or more source tiles is received from the proxy. The requested tile of geographic data is constructed from the one or more source tiles. The requested tile of geographic data is provided to the requestor.

Claims (60)

1. A method comprising:

receiving a request for a tile of geographic data from a requestor, the request specifying a region relative to a projection;

looking up the region in a spatial index to determine one or more source tiles, the spatial index corresponding to the projection and the one or more source tiles intersecting the region;

requesting, from a proxy, the one or more source tiles, the proxy being configured to maintain one or more persistent connections to one or more datastores and to retrieve the one or more source tiles via the one or more persistent connections;

receiving, from the proxy, the one or more source tiles;

constructing, from the one or more source tiles, the requested tile of geographic data; and

providing the requested tile of geographic data to the requestor.

2. The method of claim 1 , wherein the spatial index is persisted in memory between requests.

3. The method of claim 1 , wherein the request further specifies a layer and a date.

4. The method of claim 3 , further comprising validating the request.

5. The method of claim 4 , wherein validating the request comprises looking up the layer and the date in a database.

6. The method of claim 1 , the proxy being further configured to retrieve multiple source tiles in parallel.

7. The method of claim 1 , wherein constructing the requested tile of geographic data comprises constructing a mosaic of the one or more source tiles.

8. The method of claim 1 , wherein constructing the requested tile of geographic data comprises masking, scaling, and/or applying a color map.

9. The method of claim 8 , wherein the request comprises one or more configuration parameters, the one or more configuration parameters specifying the masking, scaling, and or application of a color map.

10. The method of claim 1 , wherein constructing the requested tile of geographic data comprises generating an image file.

11. The method of claim 1 , further comprising caching the requested tile of geographic data for future requests.

12. The method of claim 1 , further comprising caching a predetermined tile in advance of the request.

13. The method of claim 1 , wherein the one or more source tiles comprise satellite data and/or one or more agricultural index.

14. The method of claim 1 , wherein the one or more source tiles do not conform to the projection, and wherein constructing the requested tile of geographic data comprises projecting the one or more source tiles to the projection.

15. A system comprising:

one or more datastores;

a proxy configured to maintain one or more persistent connections to the one or more datastores;

a computing node comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor of the computing node to cause the processor to perform a method comprising:

receiving a request for a tile of geographic data from a requestor, the request specifying a region relative to a projection;

looking up the region in a spatial index to determine one or more source tiles, the spatial index corresponding to the projection and the one or more source tiles intersecting the region;

requesting, from the proxy, the one or more source tiles, the proxy being configured to retrieve the one or more source tiles via the one or more persistent connections;

receiving, from the proxy, the one or more source tiles;

constructing, from the one or more source tiles, the requested tile of geographic data; and

providing the requested tile of geographic data to the requestor.

16. A computer program product for dynamic data tiling, the computer program product comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform a method comprising:

receiving a request for a tile of geographic data from a requestor, the request specifying a region relative to a projection;

looking up the region in a spatial index to determine one or more source tiles, the spatial index corresponding to the projection and the one or more source tiles intersecting the region;

requesting, from a proxy, the one or more source tiles, the proxy being configured to maintain one or more persistent connections to one or more datastores and to retrieve the one or more source tiles via the one or more persistent connections;

receiving, from the proxy, the one or more source tiles;

constructing, from the one or more source tiles, the requested tile of geographic data; and

providing the requested tile of geographic data to the requestor.

17. A method comprising:

receiving a request for availability information of geographic data from a requestor, the request specifying a region relative to a projection;

looking up the region in a spatial index to determine one or more source tiles, the spatial index corresponding to the projection and the one or more source tiles intersecting the region;

requesting, from a proxy, the one or more source tiles, the proxy being configured to maintain one or more persistent connections to one or more datastores and to retrieve the one or more source tiles via the one or more persistent connections;

receiving, from the proxy, the one or more source tiles;

constructing from the one or more source tiles the requested availability information; and

providing the requested availability information to the requestor.

18. The method of claim 17 , wherein the spatial index is persisted in memory between requests.

19. The method of claim 17 , wherein the request further specifies a layer and a date.

20. The method of claim 19 , further comprising validating the request.

21. The method of claim 17 , the proxy being further configured to retrieve multiple source tiles in parallel.

22. The method of claim 17 , further comprising caching the requested availability information of geographic data for future requests.

23. The method of claim 17 , wherein the one or more source tiles comprise satellite data and/or one or more agricultural index.

24. The method of claim 17 , wherein the availability information comprises a coverage percentage of the region.

25. The method of claim 17 , wherein determining the one or more source tiles comprises substituting an overview image for the one or more source tiles intersecting the region when the one or more source tiles intersecting the region exceed a predetermined maximum.

26. The method of claim 17 , wherein constructing the requested availability information comprises analyzing an overall percent of observed, unmasked available data covering a boundary in the one or more source tiles, of executing a Map/Reduce task.

27. A computer program product for determining data layer coverage, the computer program product comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform a method comprising:

receiving a request for availability information of geographic data from a requestor, the request specifying a region relative to a projection;

looking up the region in a spatial index to determine one or more source tiles, the spatial index corresponding to the projection and the one or more source tiles intersecting the region;

requesting, from a proxy, the one or more source tiles, the proxy being configured to maintain one or more persistent connections to one or more datastores and to retrieve the one or more source tiles via the one or more persistent connections;

receiving, from the proxy, the one or more source tiles;

constructing, from the one or more source tiles, the requested availability information; and

providing the requested availability information to the requestor.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 15, 2026
From: INDIGO AG, LLC
To: INDIGO AGRICULTURE, INC.
Reel/Frame 075279/0881 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 15, 2026
From: INDIGO AGRICULTURE, INC.
To: TERION AI, INC.
Reel/Frame 075280/0039 →
RELEASE OF SECURITY INTEREST Recorded Oct 25, 2023
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: INDIGO AG, INC.; INDIGO AGRICULTURE, INC.
Reel/Frame 065344/0780 →
SECURITY INTEREST Recorded Aug 10, 2023
From: INDIGO AGRICULTURE, INC.; INDIGO AG, INC.
To: CORTLAND CAPITAL MARKET SERVICES LLC, AS AGENT
Reel/Frame 064559/0438 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2023
From: HOLDEN, CHRISTOPHER EDWARD; MA, KEITH FREDERICK; MCDONALD, JACOB SAMUEL
To: INDIGO AG, INC.
Reel/Frame 063320/0037 →
Continuity (4)
Continuation PCTUS2021030196 · Apr 30, 2021
Provisional Application 63074319 · Sep 3, 2020
Provisional Application 63019071 · May 1, 2020
Related Publication 20230092057A1 · Mar 23, 2023
References Cited (140)
US 6422508B1 · Barnes · 2002 [cited by applicant]
US 7212670B1 · Rousselle et al. · 2007 [cited by applicant]
US 7675549B1 · Brower et al. · 2010 [cited by applicant]
US 8965812B2 · Linville · 2015 [cited by applicant]
US 9113590B2 · Johnson · 2015 [cited by applicant]
US 9381646B1 · Fryshman · 2016 [cited by applicant]
US 9489576B2 · Johnson et al. · 2016 [cited by applicant]
US 9519861B1 · Gates et al. · 2016 [cited by applicant]
US 9563945B2 · Fryshman · 2017 [cited by applicant]
US 9582002B2 · Cavender-Bares · 2017 [cited by applicant]
US 9582873B2 · Ulman · 2017 [cited by applicant]
US 9629306B2 · Sauder et al. · 2017 [cited by applicant]
US 9658201B2 · Redden et al. · 2017 [cited by applicant]
US 9745060B2 · O'Connor et al. · 2017 [cited by applicant]
US 9756844B2 · Groeneveld · 2017 [cited by applicant]
US 9880140B2 · Osborne et al. · 2018 [cited by applicant]
US 9928578B1 · Chartrand et al. · 2018 [cited by applicant]
US RE46968E · Linville · 2018 [cited by applicant]
US 10445877B2 · Albrecht et al. · 2019 [cited by applicant]
US RE47742E · Linville · 2019 [cited by applicant]
US 10564316B2 · Xu et al. · 2020 [cited by applicant]
US 10902655B1 · Snyder · 2021 [cited by examiner]
US 11100579B1 · Raguse et al. · 2021 [cited by applicant]
US 11762125B2 · Xu et al. · 2023 [cited by applicant]
US 11978251B2 · Melaas et al. · 2024 [cited by applicant]
US 20030019408A1 · Fraisse et al. · 2003 [cited by applicant]
US 20050234691A1 · Singh et al. · 2005 [cited by applicant]
US 20070014488A1 · Chen et al. · 2007 [cited by applicant]
US 20070229524A1 · Hendrey et al. · 2007 [cited by applicant]
US 20080174593A1 · Ham et al. · 2008 [cited by applicant]
US 20090037441A1 · Howell et al. · 2009 [cited by applicant]
US 20090259709A1 · Nilkitin · 2009 [cited by applicant]
US 20100082564A1 · Fernekes · 2010 [cited by examiner]
US 20100321399A1 · Ellren et al. · 2010 [cited by applicant]
US 20100332430A1 · Caraviello et al. · 2010 [cited by applicant]
US 20120143504A1 · Kalai · 2012 [cited by examiner]
US 20120191773A1 · Appleton · 2012 [cited by applicant]
US 20130332205A1 · Friedberg et al. · 2013 [cited by applicant]
US 20140039967A1 · Scharf et al. · 2014 [cited by applicant]
US 20140095261A1 · Johnson · 2014 [cited by applicant]
US 20140222374A1 · Lock et al. · 2014 [cited by applicant]
US 20140263822A1 · Malveaux · 2014 [cited by applicant]
US 20160050840A1 · Sauder et al. · 2016 [cited by applicant]
US 20160071410A1 · Rupp et al. · 2016 [cited by applicant]
US 20160073573A1 · Ethington et al. · 2016 [cited by applicant]
US 20160157414A1 · Ackerman et al. · 2016 [cited by applicant]
US 20160171680A1 · Lobell · 2016 [cited by applicant]
US 20160180473A1 · Groeneveld · 2016 [cited by applicant]
US 20160216245A1 · Sutton · 2016 [cited by applicant]
US 20160232621A1 · Ethington et al. · 2016 [cited by applicant]
US 20160302351A1 · Schildroth et al. · 2016 [cited by applicant]
US 20160309646A1 · Starr et al. · 2016 [cited by applicant]
US 20170041407A1 · Wilbur et al. · 2017 [cited by applicant]
US 20170083747A1 · Guan et al. · 2017 [cited by applicant]
US 20170089761A1 · McQuilkin et al. · 2017 [cited by applicant]
US 20170090068A1 · Xiang et al. · 2017 [cited by applicant]
US 20170105335A1 · Xu et al. · 2017 [cited by applicant]
US 20170109395A1 · Farah · 2017 [cited by applicant]
US 20170112043A1 · Nair et al. · 2017 [cited by applicant]
US 20170124463A1 · Chen et al. · 2017 [cited by applicant]
US 20170161627A1 · Xu et al. · 2017 [cited by applicant]
US 20170168157A1 · Hagerman et al. · 2017 [cited by applicant]
US 20170169523A1 · Xu et al. · 2017 [cited by applicant]
US 20170177938A1 · Papanikolopoulos et al. · 2017 [cited by applicant]
US 20170196171A1 · Xu et al. · 2017 [cited by applicant]
US 20170199528A1 · Detweiler et al. · 2017 [cited by applicant]
US 20170206415A1 · Redden · 2017 [cited by applicant]
US 20170213141A1 · Xu et al. · 2017 [cited by applicant]
US 20170228475A1 · Aldor-Noiman et al. · 2017 [cited by applicant]
US 20170231213A1 · Gordon et al. · 2017 [cited by applicant]
US 20170257426A1 · Wilbur et al. · 2017 [cited by applicant]
US 20170258005A1 · Cutter · 2017 [cited by applicant]
US 20170270446A1 · Starr et al. · 2017 [cited by applicant]
US 20170287436A1 · Korzunov · 2017 [cited by examiner]
US 20170287437A1 · Korzunov · 2017 [cited by examiner]
US 20180049043A1 · Hoffberg · 2018 [cited by applicant]
US 20180070527A1 · Richt · 2018 [cited by applicant]
US 20180075545A1 · Richt · 2018 [cited by applicant]
US 20180137675A1 · Kwant · 2018 [cited by examiner]
US 20180211156A1 · Guan et al. · 2018 [cited by applicant]
US 20190019008A1 · Guan et al. · 2019 [cited by applicant]
US 20190050948A1 · Perry et al. · 2019 [cited by applicant]
US 20200008371A1 · Hassanzadeh et al. · 2020 [cited by applicant]
US 20220067614A1 · Guan et al. · 2022 [cited by applicant]
US 20220138767A1 · Ashtekar et al. · 2022 [cited by applicant]
US 20220180526A1 · Braswell et al. · 2022 [cited by applicant]
US 20220210987A1 · Baldo · 2022 [cited by applicant]
US 20220215659A1 · Melaas et al. · 2022 [cited by applicant]
US 20220237888A1 · Mohite et al. · 2022 [cited by applicant]
US 20220261928A1 · Malizia et al. · 2022 [cited by applicant]
US 20220342536A1 · Bontjes · 2022 [cited by applicant]
US 20220343229A1 · Gruber et al. · 2022 [cited by applicant]
US 20230092057A1 · Holden et al. · 2023 [cited by applicant]
AU 2012101249A4 · 2012 [cited by applicant]
CN 109360117A · 2019 [cited by applicant]
CN 109685081A · 2019 [cited by applicant]
CN 106529451B · 2019 [cited by applicant]
CN 110287869A · 2019 [cited by applicant]
CN 110909679A · 2020 [cited by applicant]
CN 108764688B · 2021 [cited by applicant]
KR 101703442B1 · 2017 [cited by applicant]
WO WO2020055950A1 · 2020 [cited by applicant]
WO WO2021007352A1 · 2021 [cited by applicant]
WO WO2021041666A1 · 2021 [cited by applicant]
WO WO2021062147A1 · 2021 [cited by applicant]
WO WO2021062177A1 · 2021 [cited by applicant]
WO WO2021007352A8 · 2021 [cited by applicant]
WO WO2021222763A1 · 2021 [cited by applicant]
WO WO2022020448A1 · 2022 [cited by applicant]
Becker-Reshef, I. et al., “Prior Season Crop Type Masks for Winter Wheat Yield Forecasting: A US Case Study,” Remote Sensing, 10: 1659, Oct. 19, 2018, pp. 1-20. [cited by applicant]
Bermudez, C., “Development of a remote sensing protocol for inventorying cover crop adoptions,” lowa State University Master of Science Thesis, 2016, pp. 1-80. [cited by applicant]
Bratten, J., “Landsatlinkr 0.1.4 User Guide,” Guide version 0.1.4a draft, Mar. 5, 2015, pp. 1-42. [cited by applicant]
European Patent Office, Extended European Search Report, EP Patent Application No. 21796375.0, Dec. 19, 2023, nine pages. [cited by applicant]
European Patent Office, Extended European Search Report, EP Patent Application No. 20836088.3, Jun. 14, 2023, ten pages. [cited by applicant]
Gao, F. et al., “A within-season approach for detecting early growth stages in corn and soybean using high temporal and spatial resolution imagery,” Remote Sens Environ, vol. 242: 111752, Mar. 2020, pp. 1-19. [cited by applicant]
Kuzyakova, I.F. et al., “Time series analysis and mixed models for studying the dynamics of net N mineralization in a soil catena at Gondelsheim (S-W Germany),” Geoderma, vol. 136, Sep. 7, 2006, pp. 803-818. [cited by applicant]
PCT International Search Report and Written Opinion, PCT Application No. PCT/US2021/042542, Oct. 24, 2021, nine pages. [cited by applicant]
PCT International Search Report and Written Opinion, PCT International Application No. PCT/US2020/041256, Oct. 5, 2020, 13 pages. [cited by applicant]
PCT International Search Report and Written Opinion, PCT International Application No. PCT/US2020/048188, Nov. 13, 2020, nine pages. [cited by applicant]
PCT International Search Report and Written Opinion, PCT International Application No. PCT/US2020/052706, Dec. 7, 2020, eight pages. [cited by applicant]
PCT International Search Report and Written Opinion, PCT International Application No. PCT/US2020/052755, Feb. 11, 2021, eight pages. [cited by applicant]
Vorobiova, N.S. et al., “NOVI time series modeling in the problem of crop identification by satellite images,” Information Technology and Nanotechnology, 2016, pp. 428-436. [cited by applicant]
Wardlow et al., “Discriminating cropping patterns in the US Central Great Plains region using time-series MODIS 250-meter NOVI data-Preliminary Results,” In Proceedings, Pecora 15 and Land Satellite Information IV Confe… [cited by applicant]
Xie, Y. et al., “Mapping irrigated cropland extent across the conterminous United States at 30 m resolution using a semi-automatic training approach on Google Earth Engine,” ISPRS Journal of Photogrammetry and Remote Se… [cited by applicant]
Zhang, G. et al., “Mapping paddy rice planting areas through time series analysis of MODIS land surface temperature and vegetation index data,” ISPRS Journal of Photogrammetry and Remote Sensing, vol. 106, Aug. 2015, pp… [cited by applicant]
Lin, X. et al., “Carbon Emissions Estimation and Spatiotemporal Analysis of China at City Level Based on Multi-Dimensional Data and Machine Learning,” Remote Sensing 14(13), 3014, Jun. 23, 2022, pp. 1-18. [cited by applicant]
Luo, D. et al., “Integrated Carbon Footprint and Economic Performance of Five Types of Dominant Cropping Systems in China's Semiarid Zone,” Sustainability 14(10), 5844, May 11, 2022, pp. 1-17. [cited by applicant]
PCT International Search Report and Written Opinion, PCT Application No. PCT/US2023/078118, Feb. 22, 2024, 11 pages. [cited by applicant]
Aji et al., “Hadoop-GIS: A High Performance Spatial Data Warehousing System over MapReduce,” Proceedings VLDB Endowment, 6(11) (33 pages) (2013). [cited by applicant]
International Search Report and Written Opinion for International Application No. PCT/US2021/030196 mailed Aug. 4, 2021. [cited by applicant]
Wang, “A Large-scale Dynamic Vector and Raster Data Visualization Geographic Information System Based on Parallel Map Tiling,” FIU Electronic Theses and Dissertations, (54 pages) (2011). [cited by applicant]
Github, “cogeo-mosaic,” Jun. 13, 2019, pp. 1-11, [Online] Retrieved from the Internet <URL: https://github.com/developmentseed/mosaicjson-spec>. [cited by applicant]
Github, “Marblecutter,”Jul. 31, 2017 pp. 1-4, [Online] Retrieved from the Internet <URL:https://github.com/mojodna/marblecutter>. [cited by applicant]
Github, “rio-tiler,” Oct. 14, 2020, pp. 1-14, [Online] Retrieved from the Internet <URL:https://github.com/cogeotiff/rio-tiler>. [cited by applicant]
Github, “Terracotta,” Mar. 6, 2018, pp. 1-5, [Online] Retrieved from the Internet <URL:https://github.com/DHI/terracotta>. [cited by applicant]
PCT International Search Report and Written Opinion, PCT Application No. PCT/US2023/085208, Apr. 29, 2024, eight pages. [cited by applicant]
Ritchie, G.L. et al., “Sensitivities of Normalized Difference Vegetation Index and a Green/Red Ratio Index to Cotton Ground Cover Fraction,” Crop science, vol. 50, May 2010, pp. 1000-1010. [cited by applicant]
United States Office Action, U.S. Appl. No. 17/681,126, filed Apr. 25, 2024, 16 pages. [cited by applicant]
Htitiou, A. et al., “The performance of random forest classification based on phenological metrics derived from Sentinel-2 and Landsat 8 to map crop cover in an irrigated semi-arid region,” Remote Sensing in Earth Syste… [cited by applicant]
Wu, X., “Variation and Causal Factors of Planting Area and Phenological Events of Winter Wheat in the North China Plain,” Doctoral dissertation, Chiba University, Feb. 2020, pp. 1-154. [cited by applicant]