Skip to main content

A python package that processes lidar and imagery data in forestry

Project description


Logo

phytospatial

A python package that processes lidar and imagery data in forestry

Explore the docs »

Report Bug · Request Feature

Python versions License DOI
Build Status

About The Project

Phytospatial is a Python toolkit designed to streamline the processing of remote sensing data for forestry and vegetation analysis. It provides tools for handling large hyperspectral rasters, validating vector geometries, and extracting spectral statistics from tree crowns. It also allows for passive-active raster-level fusion via its image processing module.

Key Features

  • Memory-Safe Processing: Process massive rasters using windowed reading (via rasterio) without overloading RAM.
  • Forestry Focused: Specialized tools for tree crown validation and species labeling.
  • Dual-Licensed: Available under both MIT and Apache 2.0 licenses for maximum flexibility.

Getting Started

Installation

To get up and running quickly with pip:

git clone https://github.com/Louis-Gm/phytospatial.git
cd phytospatial
pip install -e .

New to Python? Check out our detailed Installation Guide for Conda and Virtual Environment setup.

Usage

Here is a simple example of extracting spectral data from tree crowns:

from phytospatial import extract, loaders

# Load tree crowns
crowns = loaders.load_crowns("data/crowns.shp")

# Initialize extractor
extractor = extract.BlockExtractor("data/image.tif")

# Process
results = []
for stats in extractor.process_crowns(crowns):
    results.append(stats)

For a complete workflow, see the Introduction Pipeline Tutorial.

Contribute

As an open-source project, we encourage and welcome contributions of students, researchers, or professional developers.

Want to help? Please read our CONTRIBUTING section for a detailed explanation of how to submit pull requests. Please also make sure to read the project's CODE OF CONDUCT.

Not sure how to implement your idea, but want to contribute?
Feel free to leave a feature request here.

Citation

If you use this project in your research, please cite it as:

Grand'Maison, L.-V. (2026). Phytospatial: a python package that processes lidar and imagery data in forestry (0.4.0) [software]. Zenodo. https://doi.org/10.5281/zenodo.18112045

Contact

The project is currently being maintained by Louis-Vincent Grand'Maison.

Feel free to contact me by email or linkedin:
Email - lvgra@ulaval.ca
Linkedin - grandmaison-lv

Acknowledgments & Funding

This software is developed by Louis-Vincent Grand'Maison as part of a PhD project. The maintenance and development of this project is supported by several research scholarships:

  • Fonds de recherche du Québec – Nature et technologies (FRQNT) (Scholarship 2024-2025)
  • Natural Sciences and Engineering Research Council of Canada (NSERC) (Scholarship 2025-present)
  • Université Laval (Scholarship 2024-present)

License

phytospatial is distributed under the Apache License, Version 2.0.
See the LICENSE file for the full text. This license includes a permanent, world-wide, non-exclusive, no-charge, royalty-free, irrevocable patent license for all users.

See LICENSE for more information on licensing and copyright.

(Back to Top)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

phytospatial-0.4.0.tar.gz (28.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

phytospatial-0.4.0-py3-none-any.whl (32.3 kB view details)

Uploaded Python 3

File details

Details for the file phytospatial-0.4.0.tar.gz.

File metadata

  • Download URL: phytospatial-0.4.0.tar.gz
  • Upload date:
  • Size: 28.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for phytospatial-0.4.0.tar.gz
Algorithm Hash digest
SHA256 4efaf4c7afb97763ad7b9a4ede069b67c2a7965eb6dd8c7f3a18e4906e9419f2
MD5 c83d4919755f3860d1f753b161c5b7f3
BLAKE2b-256 4143a0f58b92259f805ac12514b4c7dcdccce4cc5ec9ae62472cd7a93afcf88a

See more details on using hashes here.

Provenance

The following attestation bundles were made for phytospatial-0.4.0.tar.gz:

Publisher: publish.yml on Louis-Gm/phytospatial

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file phytospatial-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: phytospatial-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 32.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for phytospatial-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 693d98287dc5bacf37aa810358fe27a875178660d46dab68140c8a8c2cf4d214
MD5 85c17a6ef0412df623418a513b8e4b35
BLAKE2b-256 5037746f221e77d9560e5b8b8a5fa50742d0b482e1b154bfa3954fef7ab5c9da

See more details on using hashes here.

Provenance

The following attestation bundles were made for phytospatial-0.4.0-py3-none-any.whl:

Publisher: publish.yml on Louis-Gm/phytospatial

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page