Releases: PixlWeave/CieloStitch
Releases · PixlWeave/CieloStitch
CieloStitch v0.5.00
CieloStitch v0.5.00 is a major release focused on geometry, projection, blending, and engine flexibility.
This release brings a substantial step forward in stitch quality and workflow coverage:
- A modular transform pipeline now supports translation, affine, homography, and apap modes.
- New projection and parallax-handling paths expand support for difficult panorama layouts.
- A new Simple Engine provides a fast alternate stitching path alongside the main engine.
- Seam-aware ghost-guard fallback and bundle adjustment improve results in challenging overlaps.
- The app UI, session handling, and help system were reviewed and refined across multiple revisions leading up to v0.5.00.
Highlights
Geometry and projection upgrades
- Added a modular transform branch with explicit
transform_modesupport fortranslation,affine,homography, andapap. - Removed the old
lock_rotationparameter in favor of transform-mode-driven behavior. - Added a modular cylindrical projection path with safe defaults so existing behavior remains unchanged unless explicitly enabled.
- Implemented APAP-based parallax handling for harder real-world alignment cases.
- Reorganized projection-related code, including dedicated projection modules for cylindrical projection and APAP warping.
- Added bundle adjustment to further refine alignment quality.
Blending and overlap quality
- Implemented a seam-aware ghost-guard fallback in the blender.
- High-risk overlaps now route through a content-aware seam path instead of the older generic narrowed-feather fallback.
- The new seam path builds an overlap cost map from luminance and gradient disagreement, finds a minimum-cost seam with a dynamic-programming pass, blends through a narrow seam band, and records a localized seam trace in seam diagnostics.
- Hardened and reviewed
matcher.py. - Fixed natural-sort behavior for filenames that begin with mixed integer and character prefixes.
New engine and workflow options
- Added a new Simple Engine based on
cv2.Stitcher_create. - Introduced
engineas a selectable option in the basic and advanced panes. - Added a CLI
engineparameter so command-line runs can select the stitching engine. - Implemented a timeout for the Simple Engine.
- When the Simple Engine runs, the status bar now shows elapsed time instead of placed-image counts.
App behavior and UX improvements
- Fixed an auto-mode reset issue so user-triggered mode changes now restore the canonical baseline before applying auto mode.
- Added an output-panel context menu action to copy the current image to the clipboard, respecting zoom and tone presentation.
- Added an input-panel context menu action to exclude an image.
- Double-clicking input or output images now opens them in the external viewer.
- Double-clicking the input/output header row now toggles between panel-only view and the default layout.
- Output image dimensions are now displayed in context menu.
- Log panel rendering now shows the first and last parts of long filenames for better readability.
Session Resolver
- Reviewed and comprehensively updated
session_resolver.py. - Session resolving now calculates additional parameters.
- Reviewed and updated the settings-file manager.
- Settings JSON file version is now
1.1.
Developer and advanced controls
- Introduced a
developer_modecontext parameter to show or hide expert controls. - The following controls are now hidden unless
developer_modeis enabled, even if advanced mode is on:photometric_min_overlap_pxphotometric_full_confidence_pxstaged_matching_moderefs_per_stageadaptive_mb_risk_boost_thresholdadaptive_mb_low_risk_thresholdadaptive_mb_max_boostghost_guard_risk_thresholdghost_guard_feather_pxlocal_gain_tile_sizeenable_grid_nominal_fallback
Help and Fixes
- Updated in-app help and site help content.
- Updated help files for the newly hidden parameters and related advanced controls.
- Included several bug fixes and internal refactors.
Version path to v0.5.00
This release consolidates work delivered incrementally across the internal v0.4.51 through v0.4.99 cycle, including:
- v0.4.51: transform branch expansion, matcher hardening, projection groundwork, session resolver improvements.
- v0.4.52-v0.4.53: ghost-guard rollout, help updates, settings manager review, and developer-mode gating for expert controls.
- v0.4.90-v0.4.96: APAP, app workflow improvements, panel interactions, external viewer support, and Simple Engine integration.
- v0.4.97-v0.4.99: bundle adjustment, broader test coverage, session resolver review, output/logging polish, and structural refactoring.
Included in this release
- App version:
0.5.00 - Core version:
0.5.00 - Release type: stable
CieloStitch v0.4.50 - First Public Release
CieloStitch v0.4.50 is the first public release of the desktop app and core stitching engine.
This release focuses on three big areas:
- Better metadata workflows across FITS, TIFF, and XISF.
- Faster and more stable blending/matching behavior.
- Better in-app documentation, diagnostics, and overall UX polish.
What CieloStitch Already Does
- Supports both desktop UI and CLI workflows for image stitching and mosaic assembly.
- Covers a full end-to-end stitching pipeline: detection, matching, homography, warping, canvas composition, normalization, and blending.
- Provides multiple blending approaches including feather, multiband and seamless options.
- Supports overlap-aware processing and profile-driven tuning for image quality and stitch behavior.
- Handles common astrophotography-oriented formats including FITS, TIFF, and XISF for both input images and export output.
- Includes overlap mask and seam heatmap exports, metadata transfer and comparison.
- Offers in-app help pages, glossary, troubleshooting guidance, and version update checking.
Highlights
Metadata workflow upgrades
- Added dedicated metadata management flow in the app UI.
- Added metadata context menu actions for input/output workflows.
- Enabled cross-type metadata transfer across FITS, TIFF, and XISF via a canonical native-Python bridge.
- Added side-by-side metadata comparison in the View Metadata dialog.
- Preserved safeguards for structural/display-sensitive metadata fields.
Stitching quality and stability
- Fixed integer-dtype gain crash in blending by applying gain on float32 ROI buffers and safely clipping/casting back.
- Added configurable confidence attenuation thresholds for photometric correction:
photometric_min_overlap_pxphotometric_full_confidence_px
- Wired photometric confidence values from runtime profile state into the Blender path.
- Added profile schema fields, defaults, and tooltips for those controls.
- Added edge-aware smoothing support in blend paths with robust fallback behavior.
Performance improvements
- Added FLANN-based feature matching path to reduce matching time on typical keypoint sets.
- Implemented fused gain+offset ROI blend passes where possible.
- Reused sampled overlap indices across gain and offset operations.
- Added local gain normalizer tile-loop optimizations.
- Reduced preview allocation pressure and cleaned up OpenCL checks.
- Improved input-grid overlap draw-order caching and thumbnail/UI reload strategy.
- Added conservative uint8 detector preprocess fast path.
UI, help, and update experience
- Added themed icons in more menu locations.
- Improved icon/theme behavior (including Apply Metadata icon updates on theme changes).
- Added glossary and Image Metadata help content.
- Added troubleshooting help page and reviewed help content set.
- Fixed compiled-help blank-page issue.
- Improved Find Next / Find Previous behavior across help pages.
- Added update-checker flow with manifest parsing hardening and safe network/time limits.
Diagnostics and maintainability
- Replaced silent exception swallowing in key app flows with debug logging to improve field diagnostics.
- Cleaned up duplicate logging setup patterns and hardened exception paths.
Included in this release
- App version:
0.4.50 - Core version:
0.4.50 - Target platform: Windows x64 portable build
Known notes for first public release
- No prior public tags are present in this repository history; this is being published as the first formal public release draft.