Skip to content

Welcome to Hyperseed

PyPI version Downloads License: MIT Python Versions

Hyperseed is an experimental Python tool for hyperspectral seed image analysis. Analyze hyperspectral imagery of plant seeds to extract spectral signatures with automatic calibration, intelligent segmentation, and comprehensive visualizations.

Research Foundation

Inspired by Reddy, et al. 2023, Sensors

Features

  • ENVI Format Support


    Read and process ENVI format hyperspectral data from Specim SWIR cameras

  • Automatic Calibration


    White/dark reference correction with automatic bad pixel interpolation

  • Intelligent Outlier Removal


    Automatically detect and remove reference objects, calibration targets, and anomalies

  • Advanced Preprocessing


    Multiple spectral preprocessing methods: SNV, derivatives, baseline correction, and more

  • Smart Segmentation


    Multiple algorithms for accurate seed detection and isolation

  • Spectral Extraction


    Extract average spectral signatures from individual seeds with spatial preservation

  • Comprehensive Visualizations


    Auto-generate distribution, segmentation, and spectral plots

  • Batch Processing


    Process multiple datasets efficiently

Quick Start

Get started with Hyperseed in minutes:

pip install hyperseed
# Analyze a single dataset
hyperseed analyze dataset/sample_001 \
    --output results.csv \
    --export-plots
# Process multiple datasets
hyperseed batch dataset/ \
    --output-dir results/ \
    --min-pixels 50

Requirements

  • Python: 3.10 or higher
  • RAM: 8GB+ recommended

Processing Pipeline

graph LR
    A[ENVI Data] --> B[Calibration]
    B --> C[Preprocessing]
    C --> D[Segmentation]
    D --> E[Validation]
    E --> F[Outlier Removal]
    F --> G[Spectral Extraction]
    G --> H[Export Results]
  1. Data Loading: Read ENVI format hyperspectral data
  2. Calibration: Apply white/dark reference correction with bad pixel interpolation
  3. Preprocessing: Apply spectral preprocessing methods
  4. Segmentation: Detect and isolate individual seeds
  5. Validation: Filter seeds based on size and shape criteria
  6. Outlier Removal: Automatically remove reference objects and anomalies
  7. Extraction: Extract average spectrum for each valid seed
  8. Export: Save results with comprehensive information

Output Examples

CSV Spectra File

seed_id,index,centroid_y,centroid_x,area,eccentricity,solidity,band_1000nm,band_1005nm,...
1,0,234.5,156.2,435,0.34,0.92,0.234,0.237,...
2,1,345.6,234.1,421,0.28,0.94,0.229,0.232,...

Visualization Plots

When using --export-plots, Hyperseed generates:

  • Distribution Plot: Spatial and area distribution of seeds
  • Segmentation Plot: Numbered seed visualization with boundaries
  • Spectra Plot: Individual and mean spectral curves
  • Statistics Plot: Statistical analysis of spectral variability

Next Steps

  • Quick Start Guide


    Learn the basics in 5 minutes with a step-by-step tutorial

  • User Guide


    Comprehensive documentation for all features and workflows

  • CLI Reference


    Detailed command-line interface documentation

  • API Reference


    Python API documentation for advanced users

Development Status

Alpha Release

Hyperseed is currently in alpha (v0.1.0-alpha.3). The API may change between releases. See the changelog for version history.

License

Hyperseed is released under the MIT License.

Credits

Logo icon "Sprouting Seed" by 4urbrand from The Noun Project, used under Creative Commons license.