Skip to content

NDVI Small

rasterGeoTIFFEPSG:32633tinybundled

A tiny single-band float32 NDVI-style derived product with values in the [-1, 1] range. Exercises derived-index raster handling.

Pixels of ndvi_small, a 16x16 raster, with NoData in magenta
1 band, 16x16 px, float32. Rendered from the case's actual pixels, contrast-stretched for display; NoData is shown in magenta.
Property Value
Case ID ndvi_small
Category raster
Format GeoTIFF
CRS EPSG:32633
Location Southern Italy / Sicily (synthetic, UTM 33N) — 15.00°E, 40.65°N → 15.00°E, 40.65°N
Test tier integration
Size class tiny
Storage class bundled
Redistributable yes
Loader rasterio
Status validated

Use this case

import pytest


@pytest.mark.geocase_case("ndvi_small")
def test_ndvi_small(geocase_case) -> None:
    data = geocase_case.load()
    assert data is not None

Use GeoCase in your tests

Install the complete set of vector, raster, and NetCDF dependencies:

pip install "geocase[all]"

View GeoCase on PyPI.

What this case checks

Confirm GeoCase can open an NDVI-style derived raster and preserve its single float32 band of values bounded in [-1, 1].

Risk types covered

Expected behavior

Assertion Expected
expect_loadable yes
expect_crs yes
expected_epsg 32633
expected_band_count 1
expected_dtype float32
expected_shape [16, 16]
expected_compression deflate
expected_band_names ndvi

Known answer

Computed from the actual bytes and gated against them. Grade your own output against these.

Quantity Value
NoData pixels 0
Bounds (case CRS) [500000.0, 4499840.0, 500160.0, 4500000.0]

Notes

Purpose

Derived-index baseline for validating float32 NDVI-style raster handling.

What to expect

  • CRS is EPSG:32633.
  • One float32 band named ndvi with values in [-1, 1].
  • 16×16 pixels, DEFLATE compressed.
  • No NoData value.

Typical checks

  • assert_band_count(src, 1)
  • assert_dtype(src, "float32")
  • values within [-1, 1]

Common failure modes

  • NDVI values clipped or scaled outside the valid range.
  • dtype downcast to an integer type, destroying precision.

Regenerate

python scripts/generate_raster_fixtures.py

Required capabilities

  • load
  • value-range-check

Files

Browse this case on GitHub

Source and license

  • Source: geocase-synthetic
  • License: MIT

Tags

delivery:single-file eo geography:utm geotiff index ndvi product:index raster