Skip to content

Luxnode V0 Spectroscopy Core

The Python package in src/lux/ implements the runnable Luxnode V0 software core:

  • polynomial wavelength calibration from known lines or inspection-sheet coefficients
  • dark, blank, and white-reference correction
  • absorbance and reflectance transforms
  • Savitzky-Golay smoothing and derivative support without SciPy
  • dense asymmetric least-squares baseline correction for short detector arrays
  • robust peak detection with prominence and FWHM estimates
  • feature extraction, band depths, spectral ratios, centroids, and areas
  • spectral matching with SAM, correlation, derivative correlation, and continuum-removed correlation
  • domain modules for minerals, plants, beer, and kombucha

The offline seed library at data/seed/lux_seed_library.json is intentionally tiny and synthetic. It is only for tests, examples, and API demonstrations, with separate mineral, plant, beer, and kombucha groups.

Running

pip install -e .
python -m unittest discover -s tests
python examples/analyze_demo.py

Notes

VIS-only mineral identification should be treated as hypothesis ranking, not a definitive assay. Beer SRM, plant stress scores, and kombucha fermentation metrics are process-control proxies and should be calibrated against reference measurements before operational use.