RIPT is the core of the Bitruvius Imagery & 3D Suite: adopt a Bitruvius flagship codec for the largest structural wins.

Explore the Suite
Raster Image Predictive Tiling | RIPT Coming Soon Patent Pending

Every tile. Its own predictor.

A new raster codec that picks the best predictor for each tile, SIMD-encodes the result, and delivers extreme compression in lossy modes: elevation compresses up to 200× at 1m vertical error.

Performance

The numbers
that matter.

All medians come from the canonical Auto+Zstd configuration across the matched corpus. Peaks are footnoted, not headlined.

Lossless ratio · Lidar Classification
20.6×

median across the corpus

prediction-friendly i32 with sparse outliers

Top decode throughput
2.3GB/s

median on multispectral · 256×256 tiles

single-threaded, AVX2

Lossy ratio at 1m elevation tolerance
87×

median compression at 1m vertical error

peak 209× on bare-earth DEM

Basemap terrain · lossless
5,958×

median on Pacific seafloor (quantized basemap)

Mt Everest terrain 1,520× · a class apart

Lossless compression varies by domain. Where data structure rewards prediction, RIPT wins decisively (Classification, Multispectral). Where data is noise-dominated (SAR magnitude), RIPT stops paying for prediction, so there is no penalty for being asked to compress unpredictable data.

Prove It

Race it yourself. Right here.

RIPT decodes scientific rasters head-to-head against TurboLERC and the Esri LERC reference, live in your browser, no install. Pick a raster type and hit START.

Scientific Codec Race: RIPT vs LERC · live in your browser open full screen ↗
loading demo…

Cross-Domain

Absolute compression. Per domain.

The compression ratio RIPT actually delivers, by domain. Classification rasters and multispectral satellite imagery push past 6× lossless. Noisy SAR data is the floor. RIPT recognises it and adapts.

Lossless compression ratio (median per domain)
0.0×5.0×10.0×15.0×20.0×Lidar Classification20.6×Multispectral6.4×Lidar Intensity2.3×Lidar Point Stats2.2×LiDAR DEM2.1×SAR Sub-Aperture1.9×LiDAR DSM1.8×LiDAR nDSM1.5×SAR Video1.5×SAR Quicklook1.5×peak26.8×13,797×3.4×4.1×2.5×2.0×2.0×2.7×1.5×1.8×

Solid bar = median across the matched corpus.Faded bar = 90th percentile (clipped to chart bounds when extreme outliers stretch beyond).Peak column shows max across samples.

Lossless decode throughput (median MB/s per domain)
0 MB/s500 MB/s1.0 GB/s1.5 GB/s2.0 GB/s2.5 GB/sMultispectral2.3 GB/sLiDAR DEM1.6 GB/sLiDAR DSM1.5 GB/sLidar Classification1.1 GB/sTerrain Aspect920 MB/sLidar Intensity824 MB/sLiDAR nDSM712 MB/sSAR Sub-Aperture574 MB/sSAR Quicklook431 MB/sSAR Video279 MB/speak9.8 GB/s1.8 GB/s1.8 GB/s2.8 GB/s1.4 GB/s1.6 GB/s841 MB/s593 MB/s686 MB/s490 MB/s

Solid bar = median across the matched corpus.Peak column shows max across samples.

Synthetic Aperture Radar

The floor in both charts above, and the one worth explaining. Three ICEYE SLEDP products: a colour sub-aperture image, where three sub-apertures are mapped to RGB; a 25-band video-SAR stack; and an 8-bit quicklook. Speckle defeats spatial prediction, so this is the domain where every codec struggles and the field splits in two. The codecs that match RIPT on ratio are archival settings encoding at 1 to 2 MB/s. The codecs that are fast return almost nothing. RIPT recognises the regime and stops paying for prediction that will not pay back. A prediction-only codec has no such option.

Sub-Aperture
u16 · 3 sub-apertures as RGB
1.88×
272 MB/s encode
  • +70% over LERC
  • +27% over the best LERC setting
  • +71% over LZ4
Video-SAR
u16, 25-band
1.49×
163 MB/s encode
  • +27% over LERC
  • +16% over the best LERC setting
  • +49% over LZ4 and Zstd -3
Quicklook
u8, 1-band
1.49×
300 MB/s encode
  • +4% over every LERC variant
  • +9% over HTJ2K
  • +49% over LZ4 and Zstd -3

Only one codec in the field compresses better, and only just: Brotli at quality 11, by 0.2% on the sub-aperture product, 1.8% on video-SAR and 3% on quicklook. It encodes at 1 to 2 MB/s. That is the entire trade, and it is not one an operational pipeline can make: RIPT holds that ratio at 130 to 165 times the encode speed and decodes 1.6 to 2.4 times faster. On the sub-aperture product it is a tie either way, and at smaller tiles RIPT passes it outright.

Nothing else is close. Zstd at level 19 gives up 5 to 15% and encodes at 2 to 12 MB/s. HTJ2K gives up 9 to 39%. PNG and Deflate sit lower still. And the codecs fast enough to sit in a pipeline do not compete at all: on quicklook and video-SAR, LZ4 and Zstd at level -3 hand back a file the same size as the raw input, 1.00× against uncompressed, no saving of any kind. RIPT takes a third of the bytes off the same data.

Lossless, median across 16 / 17 / 16 samples. Competitors benchmarked on the same corpus, each at its own best setting.

Quantized basemap terrain. Smoothed, meter-quantized basemap DEMs (Mt Everest, Pacific seafloor) are far lower entropy than raw LiDAR, so RIPT collapses them orders of magnitude further, shown separately on their own scale.

Lossless compression ratio: basemap terrain (median per domain)
1,000×2,000×3,000×4,000×5,000×6,000×7,000×Pacific bathymetry5,958×Mt Everest terrain1,520×peak5,958×2,149×

Solid bar = median across the matched corpus.Peak column shows max across samples.

Lossless decode throughput: basemap terrain (median MB/s per domain)
0 MB/s5.0 GB/s10.0 GB/s15.0 GB/sPacific bathymetry16.1 GB/sMt Everest terrain14.4 GB/speak18.6 GB/s17.8 GB/s

Solid bar = median across the matched corpus.Peak column shows max across samples.

Lossy Mode

Pick a tolerance.
Pick a payoff.

Every value decodes within the tolerance you specify. The slider doubles as a compression dial: at 1m vertical error on elevation, RIPT delivers 87× median, 200×+ peak.

Lossy compression: error tolerance vs ratio
10×100×1,000×0.010.11Max error tolerance (log scale)Compression ratio (log scale)5.2×14.9×86.8×

LiDAR Elevation (DEM, F32). Solid line: median across 3672 samples. Dashed: peak.

What if every region
chose its own strategy?

Consider a satellite image of a coastline. The ocean is smooth, so a simple predictor works best. The beach is a gradient that a first-order predictor captures naturally. The city has sharp edges where a multi-neighbor predictor excels. The harbor has SAR speckle noise where prediction actually hurts, so the codec should bypass it entirely.

Most codecs pick one strategy and apply it everywhere.
RIPT picks per region.

Traditional codec
One predictor applied to the entire image

Same strategy everywhere.

RIPT
Best predictor chosen independently per tile

Each region gets the predictor that fits.

Empirical

Different data,
different predictor.

This isn't a marketing claim. It's the empirical mix of predictors RIPT's auto-selector picked across thousands of test tiles. Classification data overwhelmingly wants Left. Elevation wants Quadratic and Planar. SAR Video is monolithic, so Up wins everywhere.

How RIPT picks predictors per domain
Quadratic Planar Average Gradient Paeth Med NearFlat Up Left Arp
47%41%LiDAR DEM41%29%12%12%LiDAR DSM59%18%12%12%Terrain Aspect82%12%Lidar Classification82%18%Lidar Intensity53%35%LiDAR nDSM

Each row sums to 100% of samples in that domain. The mix is the data's, not the choice of any single predictor.

How It Works

Six steps.
One tile at a time.

01
Divide

Image broken into cache-friendly tiles. Sizes from 4×4 up through 32×32, tuned to the data.

02
Evaluate

A library of predictors compete: each predicts pixel values and measures residual errors. 13 ship today.

03
Select

Winner = smallest encoded byte cost. Different tile, different winner.

04
Encode

Residuals undergo zigzag encoding → bit-packing at minimum bit-width.

05
Filter

Optional ByteShuffle / BitShuffle pre-compression transforms.

06
Compress

Entropy coder (Zstd / LZ4 / Deflate) squeezes remaining redundancy.

For high-entropy data like SAR radar, where no predictor can pay for itself, RIPT recognises the regime and adapts its pipeline to it.

Novel IP

Four algorithms with
zero prior art.

ARP

Anchor-Residual Predictor

Recursive pairwise decomposition that concentrates energy into progressively smaller sets. O(N) complexity, vector-friendly.

NearFlat

Sparse Outlier Encoding

63 identical pixels and 1 outlier? Encodes the tile in 8 bytes instead of 64+. Used heavily on classification rasters and SAR magnitude.

Quadratic

Second-Order Polynomial

Captures surface curvature in rolling hills, river valleys, and thermal gradients that first-order predictors model only as flat planes. Wins ~47% of elevation tiles.

Sqrt

Variance-Stabilizing Transform

Converts multiplicative SAR speckle noise to additive noise. Makes the unpredictable predictable. Exactly invertible with zero information loss.

Performance & Portability

SIMD-first.
Bit-exact everywhere.

Every predictor is defined once at the algorithmic level and mapped to the widest SIMD available at runtime. A 256-bit AVX2 register processes 8 pixels in parallel. SVE2 hardware gets scalable-vector dispatch the moment its benchmarks land.

Platform matrix

NEON
ARM64
128-bit
AVX2
x86_64
256-bit
WASM SIMD
browser
128-bit
In-browser decode at 60–107% of native AVX2 speed
AVX-512 Q1 2027
x86_64
512-bit
Sapphire Rapids / Genoa / Zen 4+, benchmarks Q1 2027
SVE2 Q1 2027
ARM64
scalable
Graviton4 / Grace / Cobalt 100, benchmarks Q1 2027
Scalar
Any
fallback

All backends produce bit-exact identical output. Auto-detection at runtime; portable scalar fallback for any CPU.

Applications

Every industry that
stores grids of numbers.

Satellite Operators

Constellations capturing 30+ TB/day. Petabyte-scale archives. Tighter compression compounds across years of storage.

Aerial & Drone

$1.3B market. Unlocks 16-bit delivery from sensors capturing at 12-14 bit.

Medical Imaging

$4.2B PACS market. Tile-based decode replaces single-threaded gzip; faster pull on every viewer.

AI/ML Foundation Models

Native uint4/int4/bf16 support. NCHW/NHWC layout helpers for PyTorch & TensorFlow.

Government & Defense

NASA: 245+ PB. NISAR: 80 TB/day from a single SAR instrument.

GIS & Cloud Platforms

Drop-in LERC replacement inside Cloud Optimized GeoTIFF. Lower egress, faster tile decode.

Access

Free decoder. Paid encoder.

Decoder

Free

Anyone who needs to read RIPT-encoded data can pull the decoder from the Bitruvius Developer Hub. Compiled binaries for every supported platform; no source.

Encoder + Decoder

Commercial license

Production encoding requires a paid license. Tiers, seats, transactions, and OEM redistribution are listed on the pricing page. All artifacts are compiled binaries.

Compiled-only distribution is intentional: it keeps the patent-pending novelty out of source and protects implementation IP across the supply chain.

Compression
that thinks.

RIPT is the first raster codec that adapts its strategy to every region of every image, across every data type, on every processor.

Esri, ArcGIS, and LERC are trademarks of Environmental Systems Research Institute, Inc., used here solely to identify the products and formats being compared; no affiliation, sponsorship, or endorsement is implied. LERC is published by Esri under the Apache 2.0 license, and the live demo runs Esri's unmodified reference decoder under that license. RIPT, TurboZstd, and TurboLZ4 are independent Bitruvius implementations. Performance comparisons reflect our own measurements under the stated methodology; results vary by workload and hardware. Full third-party notices: Attributions.