Image extension of Semantiva framework.
Project description
Semantiva Imaging
Overview
Semantiva Imaging is a comprehensive image processing extension for the Semantiva framework that provides production-ready tools for computer vision and scientific imaging workflows. Built with type safety and pipeline composability at its core, it offers seamless integration with industry-standard libraries like OpenCV while maintaining transparent, auditable processing chains.
The extension delivers enterprise-grade capabilities including multi-format I/O, OpenCV integration, N-channel image support, and advanced factory patterns for rapid processor development—all within Semantiva's dual-channel architecture that processes data and metadata simultaneously.
Links:
Features
OpenCV Integration
- Factory-Generated Processors: Automatically generates OpenCV-based processors using the
_create_opencv_processorfactory - Smart Channel Conversion: Handles BGR/RGB channel reordering transparently for OpenCV functions
- Signature Synthesis: Dynamically creates processors from OpenCV function signatures with proper parameter mapping
- Tuple Return Handling: Manages complex OpenCV return types with automatic unpacking and conversion
Comprehensive Data Types
- Single Channel:
SingleChannelImagefor 2D grayscale images andSingleChannelImageStackfor 3D stacks - Multi-Channel:
RGBImage,RGBAImage, and genericNChannelImagewith customizable channel metadata - Stack Support: All image types available as stack variants for temporal or Z-axis data
- Smart Casting: Auto-cast 12-/16-bit arrays to
float32by default (disable withauto_cast=False)
Multi-Format I/O
- Standard Formats: PNG, JPEG, TIFF, NPZ with dedicated loader/saver classes
- Video Support: AVI video loading and saving with
VideoRGBImageStackLoaderandVideoRGBImageStackSaver - Animated Media: Animated GIF support for both single-channel and RGBA image stacks
- Network Loading: HTTP/HTTPS image loading via
UrlLoaderfactory pattern - Parametric Generation: Synthetic image generation with
TwoDGaussianSingleChannelImageGenerator
Advanced Processing
- Factory Systems:
_create_nchannel_processorand_create_opencv_processorfor dynamic processor generation - Built-in Operations: Image arithmetic, filtering, normalization, cropping, and stack projections
- Scientific Analysis: Gaussian fitting probes including
TwoDGaussianFitterProbeandTwoDTiltedGaussianFitterProbe - Pre-built OpenCV Processors: Ready-to-use filters, edge detection, and morphological operations
Interactive Visualization
- Cross-Section Viewer: Dynamic exploration of 2D image cross-sections (
ImageCrossSectionInteractiveViewer) - Stack Animation: Animate image sequences with
SingleChannelImageStackAnimator - Projection Views: X-Y intensity projections with
ImageXYProjectionViewer - Standard Display: Both static and interactive image viewers for Jupyter notebook integration
Pipeline Integration
- Seamless Workflow: Full integration with Semantiva's YAML-based pipeline system
- Context-Aware Processing: Metadata flows alongside data for parameter-driven operations
- Modular Design: Mix and match processors in complex multi-stage workflows
Installation
pip install semantiva semantiva-imaging
Quick Start: Parametric Image Generation Pipeline
Semantiva Imaging demonstrates advanced capabilities through parametric workflows that generate synthetic data, extract features, and perform model fitting—all within a unified pipeline architecture.
The following example generates a time-varying 2D Gaussian signal with parametric position, standard deviation, and orientation changes:
Run the complete pipeline:
semantiva run tests/pipeline_parametric_gaussian_fit.yaml -v
Pipeline highlights:
- Parametric Generation: Creates image stacks using symbolic expressions for signal parameters
- Feature Extraction: Extracts Gaussian parameters from each frame using
TwoDTiltedGaussianFitterProbe - Model Fitting: Fits polynomial models to temporal parameter evolution
- Context Flow: Metadata and parameters flow seamlessly alongside image data
This demonstrates Semantiva's dual-channel processing where data and metadata evolve together, enabling dynamic, parameter-driven workflows ideal for research and production environments.
Codec-Dependent Classes
Some loader/saver classes in Semantiva Imaging depend on system-specific codecs, which may not be available or consistent across all environments. For detailed information about dependencies, risks, and recommendations, please refer to the Codec Dependencies Documentation.
License
Semantiva-imaging is released under the Apache License 2.0.
Project details
Release history Release notifications | RSS feed
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file semantiva_imaging-0.2.0.tar.gz.
File metadata
- Download URL: semantiva_imaging-0.2.0.tar.gz
- Upload date:
- Size: 63.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.26.1 CPython/3.10.12 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
454e8f21bdeff2159c3cc422a365f2ec255594b2ec055499ef611c5f9945e45a
|
|
| MD5 |
976ab2a5f59975c3b4c6470336c65e8f
|
|
| BLAKE2b-256 |
2b1c1f6d7e4b92c7a275614b3e3dbdce444978fc50969572609fae32fe145f7d
|
File details
Details for the file semantiva_imaging-0.2.0-py3-none-any.whl.
File metadata
- Download URL: semantiva_imaging-0.2.0-py3-none-any.whl
- Upload date:
- Size: 57.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.26.1 CPython/3.10.12 Linux/6.11.0-1018-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4b1a25b5cb24ce0b9c12e45c0c5dd75bf54ae17923a887d7d3ebdb9a6aeb1c4f
|
|
| MD5 |
e7b621e26728069acee338b0f585c643
|
|
| BLAKE2b-256 |
b44e098180ddb0b9b277756616e591677afb74b5db5072477599dda000224b53
|