OxiGDAL CLI
Command-line interface for OxiGDAL geospatial operations. A Pure Rust alternative to GDAL utilities.
Installation
Or build from source:
The binary will be available at target/release/oxigdal.
Commands
oxigdal info - Display File Information
Display metadata, geometry info, CRS, and statistics for raster and vector files.
# Basic info
# With detailed statistics
# Show CRS details
# JSON output
Options:
--stats- Show detailed statistics--compute-minmax- Compute min/max values--metadata- Show all metadata--crs- Show CRS details--bands- Show band/layer information
oxigdal convert - Format Conversion
Convert between geospatial formats with compression and tiling options.
# Basic conversion
# Create Cloud-Optimized GeoTIFF
# Convert with specific compression
# Create COG with overviews
Options:
-f, --format <FORMAT>- Output format (auto-detected from extension)-t, --tile-size <SIZE>- Tile size for COG output (default: 512)-c, --compression <METHOD>- Compression (none, lzw, deflate, zstd, jpeg)--compression-level <LEVEL>- Compression level (1-9)--cog- Create Cloud-Optimized GeoTIFF--overviews <NUM>- Number of overview levels--overwrite- Overwrite existing output file--progress- Show progress bar (default: true)
oxigdal translate - Subset and Resample
Subset rasters by extent or pixel coordinates and resample to different resolutions.
# Subset by bounding box
# Subset by pixel coordinates
# Resize to specific dimensions
# Resample with bilinear interpolation
# Select specific bands
Options:
--outsize-x <WIDTH>- Output width in pixels--outsize-y <HEIGHT>- Output height in pixels--projwin <MINX MINY MAXX MAXY>- Subset by bounding box--srcwin <XOFF YOFF XSIZE YSIZE>- Subset by pixel coordinates-b, --bands <BANDS>- Select specific bands (comma-separated, 1-indexed)-r, --resampling <METHOD>- Resampling method (nearest, bilinear, bicubic, lanczos)--overwrite- Overwrite existing output file
oxigdal warp - Reprojection
Reproject rasters to different coordinate reference systems.
# Reproject to Web Mercator
# Reproject with specific source CRS
# Reproject and resize
# Set target resolution
# Reproject with Lanczos resampling
Options:
-s, --s-srs <SRS>- Source CRS (EPSG code or WKT)-t, --t-srs <SRS>- Target CRS (EPSG code or WKT) [Required]--ts-x <WIDTH>- Output width in pixels--ts-y <HEIGHT>- Output height in pixels--tr <RESOLUTION>- Output resolution in target units-r, --resampling <METHOD>- Resampling method (nearest, bilinear, bicubic, lanczos)--te <MINX MINY MAXX MAXY>- Output bounds in target SRS--overwrite- Overwrite existing output file
Note: Full reprojection is planned for a future release. Current implementation performs resampling in the same projection.
oxigdal calc - Raster Calculator
Perform mathematical operations on rasters (map algebra).
# Calculate NDVI
# Multi-band calculation
# With custom output type
# Set no-data value
Options:
-A, --input-a <FILE>- Input file A-B, --input-b <FILE>- Input file B-C, --input-c <FILE>- Input file C-D, --input-d <FILE>- Input file D--calc <EXPR>- Calculation expression [Required]--no-data <VALUE>- No data value for output--output-type <TYPE>- Output data type (uint8, uint16, uint32, int16, int32, float32, float64)--overwrite- Overwrite existing output file
Supported Expressions:
- NDVI:
(A-B)/(A+B) - More expressions coming in future releases
oxigdal validate - File Validation
Validate file format compliance and check for issues.
# Validate GeoTIFF
# Validate as COG
# Validate GeoJSON
# Strict validation
# JSON output for CI/CD
Options:
--cog- Validate as Cloud-Optimized GeoTIFF--geojson- Validate GeoJSON against specification--strict- Check for common issues and best practices-v, --verbose- Detailed validation report
Shell Completions
Generate shell completions for bash, zsh, fish, PowerShell, or elvish.
# Bash
# Zsh
# Fish
# PowerShell
Global Options
These options work with all commands:
-v, --verbose- Enable verbose output-q, --quiet- Suppress all output except errors--format <FORMAT>- Output format (text, json)-h, --help- Print help information-V, --version- Print version information
Examples
Create a Cloud-Optimized GeoTIFF
Extract a subset and resize
Calculate NDVI from Landsat bands
Validate COG compliance
Supported Formats
Raster Formats
- GeoTIFF (.tif, .tiff) - Including Cloud-Optimized GeoTIFF (COG)
- Zarr (.zarr) - Cloud-native chunked arrays (planned)
Vector Formats
- GeoJSON (.json, .geojson)
- Shapefile (.shp)
- FlatGeobuf (.fgb)
- GeoParquet (.parquet, .geoparquet)
Performance
OxiGDAL CLI is optimized for performance:
- Pure Rust implementation (no C/Fortran dependencies)
- SIMD vectorization for resampling operations
- Parallel processing where applicable
- Memory-efficient streaming for large files
Cross-Platform Support
OxiGDAL CLI runs on:
- Linux (x86_64, aarch64)
- macOS (Intel, Apple Silicon)
- Windows (x86_64)
Contributing
Contributions are welcome! See the main OxiGDAL repository for guidelines.
License
Licensed under Apache-2.0. See LICENSE for details.
Authors
Copyright © COOLJAPAN OU (Team Kitasan)