Skip to content

FrameFusion 1.0.0

Choose a tag to compare

@tingon11 tingon11 released this 20 Oct 20:08
· 2 commits to main since this release

First public release: fuses several frames of a video into one enhanced image of a small detail (plate, face, sign), with a report that documents every step.

What's new in 1.0.0

  • Seven-step pipeline: frame extraction, subject detection, local alignment, sub-pixel registration, multi-frame fusion, deconvolution and denoising, single frame.
  • Subject area drawn on the reference frame (right-drag, or Select area): the fusion starts by itself; the subject is followed through the range by normalized cross-correlation.
  • ECC registration with translation, rotation, affine or perspective model (simpler models as fallback), refined to sub-pixel precision; frames chosen by alignment quality and sharpness.
  • Fusion on a ×1–×4 grid: robust mean with outlier rejection, median, or shift-and-add with normalized convolution; brightness equalization and sharpness weights.
  • Restoration on the luminance only: optional bilateral denoising, Richardson-Lucy deconvolution with total-variation regularization and a PSF measured on the edges of the fused image (or chosen); auto levels, local contrast (CLAHE) and grayscale.
  • Linked before/after comparison (ghost of the frames used, or the reference frame, next to the result) with zoom down to the single pixel; changing only fusion or restoration parameters re-runs the last steps in a fraction of a second.
  • Saved settings: named parameter sets in config.json, defaults with one button, parameters reloaded from the report.json of an earlier fusion.
  • Report in text, JSON and PDF (with the images): source SHA-256, range, reference, area, parameters, steps, per-frame table, noise estimates and SHA-256 of every image written; optional aligned frames.
  • Preview, zoomable timeline and ffmpeg downloader inherited from VideoSlicer; interface and reports in English, Italian, German, French, Spanish, Dutch, Polish, Greek and Albanian, switchable at any time.

Download

FrameFusion-1.0.0-windows-x64.zip is the standalone program for Windows 10/11 (64-bit). Python is
not needed: unzip it anywhere and run FrameFusion.exe.

Updating from a previous version: replace FrameFusion.exe with the new one. Your
tools folder (ffmpeg) and config.json stay as they are.

First start

  • The interface starts in English; switch language (English, Italian, German,
    French, Spanish, Dutch, Polish, Greek, Albanian) in the Language box of the
    Configuration page.
  • User manual with screenshots, in every language:
    docs/manual.
  • ffmpeg is not included: at first start the program offers to download the
    official Windows build into a tools folder next to the executable.
  • The executable is not signed, so Windows SmartScreen may show a warning the
    first time it runs.

Verify the download

SHA-256 of FrameFusion-1.0.0-windows-x64.zip:

75b1890aa96ebcf2f2c9c4070e560e3c295eec92ad188b5f5eaf1c13071d187d

Bundled software

FrameFusion.exe contains the Python interpreter and these libraries, each under
its own license; their license files are in the licenses folder of the zip:

  • customtkinter 6.0.0: MIT
  • pillow 13.0.0: MIT-CMU
  • numpy 2.4.6: BSD-3-Clause (bundled components under 0BSD, MIT, Zlib and CC0-1.0)
  • opencv-python-headless 4.14.0.94: Apache-2.0; the FFmpeg library it ships (opencv_videoio_ffmpeg*.dll) is under the LGPL-2.1: see LICENSE-3RD-PARTY.txt
  • darkdetect 0.8.0: BSD-3-Clause
  • packaging 26.3: Apache-2.0 OR BSD-2-Clause
  • fpdf2 2.8.9: LGPL-3.0-only
  • fonttools 4.67.0: MIT
  • defusedxml 0.7.1: PSF-2.0
  • Python 3.11.9: PSF-2.0

License

Free software under the GNU General Public License version 3 with additional
terms (author attribution): see LICENSE and NOTICE, included in the zip
together with the licenses folder (third-party license files).

Author: Andrea Cumini — www.osintinfo.net — andrea@osintinfo.net