File size: 2,960 Bytes
89a64ff
 
 
 
 
934c17a
89a64ff
f2f22db
89a64ff
 
 
 
 
 
 
f2f22db
89a64ff
 
 
 
 
 
 
 
 
 
 
 
 
934c17a
 
89a64ff
 
 
 
 
 
 
 
 
f2f22db
89a64ff
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
f2f22db
89a64ff
29d5053
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
---
tags:
- geospatial
- geobase
- land-cover-classification
license: mit
---
| <img src="https://upload.wikimedia.org/wikipedia/commons/6/6a/JavaScript-logo.png" width="28" height="28"> | [GeoAi](https://www.npmjs.com/package/geoai) |
|---|---|



> `task = land-cover-classification`

### 🛠 Model Purpose
This model is part of the **[GeoAi](https://github.com/decision-labs/geoai.js)** javascript library.

**GeoAi** enables geospatial AI inference **directly in the browser or Node.js** without requiring a heavy backend.

**GeoAi** pipeline accepts **geospatial polygons** as input (in GeoJSON format) and outputs results as a **GeoJSON FeatureCollection**, ready for use with libraries like **Leaflet** and **Mapbox GL**.

<video controls autoplay loop width="1024" height="720" src="https://geobase-docs.s3.amazonaws.com/geobase-ai-assets/land-cover-classification.mp4"></video>

---
### 🚀 Demo

Explore the model in action with the interactive [Demo](https://docs.geobase.app/geoai-live/tasks/land-cover-classification).

### 📦 Model Information
- **Architecture**: [SparseMask](https://github.com/wuhuikai/SparseMask)
- **Source Model**: https://github.com/cliffbb/oem-lightweight
- **Quantization**: Yes
---

> **Note:** This model only works if the input imagery contains both RGB and NIR bands.


### 💡 Example Usage

```javascript
import { geoai } from "geoai";

// Example polygon (GeoJSON)
const polygon = {
  type: "Feature",
  properties: {},
  geometry: {
    coordinates: [
      [
        [-99.98170823334205, 50.64318249608178],
        [-99.9806018185983, 50.6431476272638],
        [-99.9807117895183, 50.642403469489295],
        [-99.98256386074388, 50.64247150726101],
        [-99.98170823334205, 50.64318249608178]
      ],
    ],
    type: "Polygon",
  },
} as GeoJSON.Feature;

// Initialize pipeline
const pipeline = await geoai.pipeline(
  [{ task: "land-cover-classification" }],
  providerParams
);
 
// Run detection
const result = await pipeline.inference({
  inputs: { polygon }
});
 
// Sample output format
// {
//     "detections": [
//      {type: 'FeatureCollection', features: Array(6)},
//      {type: 'FeatureCollection', features: Array(43)},
//      {type: 'FeatureCollection', features: Array(6)},
//      {type: 'FeatureCollection', features: Array(3)},
//      {type: 'FeatureCollection', features: Array(11)},
//      {type: 'FeatureCollection', features: Array(36)},
//      {type: 'FeatureCollection', features: Array(0)},
//      {type: 'FeatureCollection', features: Array(9)}
//    ]
//     "outputimage": GeoRawImage {data: Uint8ClampedArray(1048576), width: 512, height: 512, channels: 4, bounds: {…}, …}
// }

```
### 📖 Documentation & Demo

- GeoBase Docs: https://docs.geobase.app/geoai
- NPM Package: https://www.npmjs.com/package/geoai
- Demo Playground: https://docs.geobase.app/geoai-live/tasks/land-cover-classification
- GitHub Repo: https://github.com/decision-labs/geoai.js