A package for tree disk rings detection in images
Project description
Tree Disk Rings
A Python package for analyzing tree rings in cross-sectional images. Originally forked from hmarichal93/cstrd_ipol.
Installation
pip install tree-disk-rings
Usage
Python API
import treediskrings
# Configure the analyzer
treediskrings.configure(
input_image="input/tree-disk4.png",
cx=1204,
cy=1264,
save_results=True,
)
# Run the analysis
(
img_in, # Original input image
img_pre, # Preprocessed image
devernay_edges, # Detected edges
devernay_curves_f, # Filtered curves
devernay_curves_s, # Smoothed curves
devernay_curves_c, # Connected curves
devernay_curves_p, # Final processed curves
) = treediskrings.run()
Command Line Interface (CLI)
Basic usage:
tree-disk-rings --input_image input/tree-disk4.png --cx 1204 --cy 1264
Save intermediate results:
tree-disk-rings --input_image input/tree-disk4.png --cx 1204 --cy 1264 --save_results
Advanced usage with custom parameters:
tree-disk-rings \
--input_image input/F02c.png \
--cx 1204 \
--cy 1264 \
--output_dir custom_output/ \
--sigma 4.0 \
--th_low 10 \
--th_high 25 \
--save_results \
--debug
CLI Arguments
Argument | Type | Required | Default | Description |
---|---|---|---|---|
--input_image |
str | Yes | - | Path to input image |
--cx |
int | Yes | - | Pith x-coordinate |
--cy |
int | Yes | - | Pith y-coordinate |
--output_dir |
str | No | ./output |
Output directory path |
--root |
str | No | Current dir | Root directory of the repository |
--sigma |
float | No | 3.0 | Gaussian kernel parameter for edge detection |
--th_low |
float | No | 5.0 | Low threshold for gradient magnitude |
--th_high |
float | No | 20.0 | High threshold for gradient magnitude |
--height |
int | No | 0 | Height after resizing (0 to keep original) |
--width |
int | No | 0 | Width after resizing (0 to keep original) |
--alpha |
float | No | 30.0 | Edge filtering parameter (collinearity threshold) |
--nr |
int | No | 360 | Number of rays |
--min_chain_length |
int | No | 2 | Minimum chain length |
--debug |
flag | No | False | Enable debug mode |
--save_results |
flag | No | False | Save intermediate images, labelme and config file |
Development
Setting up Development Environment
- Clone the repository:
git clone https://github.com/tuke307/tree-disk-rings.git
cd tree-disk-rings
- Create and activate virtual environment:
poetry install
poetry shell
- Compile the external C code:
cd ./externas/devernay_1.0 && make clean && make
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
Built Distribution
File details
Details for the file tree_disk_rings-0.4.3.tar.gz
.
File metadata
- Download URL: tree_disk_rings-0.4.3.tar.gz
- Upload date:
- Size: 68.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e72de8778e37bcbab86e8e9222701164593da964aa2c118fad5c49b1378de492 |
|
MD5 | ea1da92f725dc6fed01a7e995e419c7a |
|
BLAKE2b-256 | fcc06c33bca6ceec381cde6460685d120968584d847510f7dfec7fcd6980e4d2 |
Provenance
The following attestation bundles were made for tree_disk_rings-0.4.3.tar.gz
:
Publisher:
publish.yml
on tuke307/tree-disk-rings
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
tree_disk_rings-0.4.3.tar.gz
- Subject digest:
e72de8778e37bcbab86e8e9222701164593da964aa2c118fad5c49b1378de492
- Sigstore transparency entry: 147696144
- Sigstore integration time:
- Predicate type:
File details
Details for the file tree_disk_rings-0.4.3-py3-none-any.whl
.
File metadata
- Download URL: tree_disk_rings-0.4.3-py3-none-any.whl
- Upload date:
- Size: 80.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce238ef6d24bdcb1a769266ced74d406a2ab6150db2e3fc14e59f765ce72abc8 |
|
MD5 | 15096215a4e1286d924f0f5890b457b7 |
|
BLAKE2b-256 | b46c0cf3b172de73e978fd7d6a2345e61d719b7365204233d880b2330cbc7453 |
Provenance
The following attestation bundles were made for tree_disk_rings-0.4.3-py3-none-any.whl
:
Publisher:
publish.yml
on tuke307/tree-disk-rings
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
tree_disk_rings-0.4.3-py3-none-any.whl
- Subject digest:
ce238ef6d24bdcb1a769266ced74d406a2ab6150db2e3fc14e59f765ce72abc8
- Sigstore transparency entry: 147696145
- Sigstore integration time:
- Predicate type: