Skip to content

Releases: PixlWeave/CieloStitch

CieloStitch v0.5.00

28 May 07:28

Choose a tag to compare

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_mode support for translation, affine, homography, and apap.
  • Removed the old lock_rotation parameter 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 engine as a selectable option in the basic and advanced panes.
  • Added a CLI engine parameter 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_mode context parameter to show or hide expert controls.
  • The following controls are now hidden unless developer_mode is enabled, even if advanced mode is on:
    • photometric_min_overlap_px
    • photometric_full_confidence_px
    • staged_matching_mode
    • refs_per_stage
    • adaptive_mb_risk_boost_threshold
    • adaptive_mb_low_risk_threshold
    • adaptive_mb_max_boost
    • ghost_guard_risk_threshold
    • ghost_guard_feather_px
    • local_gain_tile_size
    • enable_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

11 May 18:27

Choose a tag to compare

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_px
    • photometric_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.