Releases: tbgh011/kepler
Release list
Kepler v1.3.7
Kepler v1.3.7 — Planetary Image Processing Suite
What's New in v1.3.7
A new observer-location lookup in De-rotate, easier moon-circle placement in the
Orbital tab, higher brightness-boost ranges for very faint moons, and a fix to
the Installation Guide's download filename.
📍 Look up your observer location by name (De-rotate)
The Observer Location panel now has a Find box. Type a city, address, or
landmark, click Look up, and Kepler fills in your latitude, longitude and
elevation automatically — no more hunting for your coordinates by hand. Review
the values and click Save as before (nothing is saved until you do).
The lookup uses free, keyless services (OpenStreetMap Nominatim for the
coordinates, Open-Meteo for elevation) and only runs when you click Look up.
City- or address-level accuracy is far finer than an observer location needs.
🔭 Easier moon-circle placement — zoom to the cursor and pan (Orbital)
Placing circles on faint, off-center moons is much easier now:
- Scroll to zoom toward the cursor — the preview zooms in on the spot under
your pointer instead of the image center, so a faint moon stays in view as you
zoom. This applies to all tabs' previews. - Shift + drag to pan while placing circles — bring an off-center moon into
reach without losing your zoom. (Middle-drag and right-drag still pan too.)
🌙 Higher brightness boost for very dim moons (Orbital)
Some planets' moons are extremely faint, so the ranges were raised:
- Boost now goes up to 100× (was 50×) — brightens the recovered moon in
the exported image. - Preview Boost now goes up to 50× (was 20×) — display-only, brightens
the preview so dim moons become visible.
Defaults are unchanged.
📄 Documentation updates
- The Planet Tutorials guide is now written for your own images. It no
longer refers to specific sample captures (dates, camera model, dimensions) —
each tutorial opens with a short "Before You Start" note, and the steps apply
to any stacked Jupiter, Saturn, or Mars image you process. - The User Guide and Technical Reference now document the new Orbital
navigation (zoom-to-cursor, Shift+drag pan), the higher Boost/Preview Boost
ranges, and the De-rotate location lookup. - The Installation Guide download instructions referred to
kepler_v130.zip
(a long-standing typo that never matched the real asset name). They now
correctly saykepler_v137.zipthroughout, including the extraction paths.
Upgrading from v1.3.6
Drop-in. Settings, projects and the ephemeris cache all carry over. Your saved
observer location is untouched — the new Find box only fills the fields when you
use it.
Downloads
| File | Description |
|---|---|
kepler_v137.zip |
Application + Windows, Linux & macOS installers |
Kepler_User_Guide_v137.pdf |
Complete user guide, including Image Measurement |
Kepler_Technical_Reference_v137.pdf |
Algorithm and API reference |
Kepler_Planet_Tutorials_v137.pdf |
Step-by-step tutorials for Jupiter, Saturn, and Mars |
Kepler_Installation_Guide_v137.pdf |
Installation instructions for Windows, Linux and macOS |
The download is named kepler_v137.zip rather than kepler_v1.3.7.zip — macOS
treats everything after the first dot as a file extension, which would truncate
the extracted folder name.
All four documents are also included inside kepler_v137.zip in the docs/
folder, as both PDF and DOCX.
Installation
Windows: Download kepler_v137.zip, then right-click it and choose Extract All.
Windows extracts into a new folder named after the zip, so you may end up with
kepler_v137\kepler_v137\ — that is normal. To avoid it, delete the trailing
kepler_v137 from the destination path in the Extract dialog.
Open the extracted kepler_v137 folder, go to installer\windows\, then right-click
install.bat and choose Run as administrator.
Linux: Download kepler_v137.zip to your Downloads folder, then open Terminal and run:
cd ~/Downloads
unzip kepler_v137.zip
bash kepler_v137/installer/linux/install.sh
macOS: Download kepler_v137.zip — macOS extracts it to ~/Downloads/kepler_v137
automatically. Then open Terminal and run:
bash ~/Downloads/kepler_v137/installer/macos/install.sh
A new Terminal window starts in your home folder, so these commands work as typed. If you
put the zip somewhere other than Downloads, use that folder instead.
Requirements
- Windows 10/11 or Linux Mint/Ubuntu/Debian: Python 3.8+
- macOS Catalina (10.15) and later: Python 3.11+ (installed automatically, native on Apple Silicon)
Minimum display resolution 1920×1080 recommended
Kepler v1.3.6
Kepler v1.3.6 — Planetary Image Processing Suite
What's New in v1.3.6
Fixes for the De-rotate measurement window: auto-fit is now robust to frame
artifacts, and the outline is much faster to position by hand.
🎯 Auto-fit no longer fooled by frame artifacts
Auto-fit (and Auto-fit all) could snap the wireframe far off the globe on frames
that carried a bright artifact — a satellite trail, hot row, or stacking
streak elsewhere in the frame. The fit's disc-detection was measuring brightness
across the whole frame, so a bright streak dragged the estimated center and size
out toward the rings.
The fitter now isolates the planet as the largest connected bright region and
ignores disconnected artifacts, so auto-fit lands on the globe every time. Clean
frames (no artifact) are unaffected, and so are Jupiter and Mars.
⚡ Faster outline positioning — hold Ctrl
Nudging the outline with the arrow keys moved one pixel at a time, which was slow
when the outline needed to travel. You can now hold Ctrl for fast steps:
- Ctrl + arrows — move the outline in 10‑px jumps
- Ctrl + PgUp/PgDn — resize faster
- Ctrl + [ / ] — rotate faster
- Shift still gives fine steps, and plain keys the normal step
The measurement window's on‑screen key list now shows the Ctrl shortcut.
🖼️ Steady preview when stepping frames
The preview no longer jumps the first time you step to another frame. The image
canvas is now redrawn when it finishes sizing to the window, so every frame
renders at the same scale and position — previously the first frame-step could
appear to shift the planet down and enlarge it.
🪐 De-rotated image no longer shifted off-center
The final de-rotated image is cropped to the planet. That crop used to be sized
from every bright pixel in the frame, so a stray moon, star, hot pixel or
stacking streak in a corner would enlarge the canvas and leave the planet pushed
to one side — most often shifted down when the artifact sat above the disc. The
crop now measures the planet as the largest connected bright region and ignores
disconnected artifacts, so the planet stays centered. The rings touch the globe
and are never clipped.
Upgrading from v1.3.5
Drop-in. Settings, projects and the ephemeris cache all carry over. Only the
De-rotate measurement window changed — everything else (sharpening, De-rind,
Chroma Denoise, Align RGB, RGB/Levels, batch) is unchanged.
Downloads
| File | Description |
|---|---|
kepler_v136.zip |
Application + Windows, Linux & macOS installers |
Kepler_User_Guide_v136.pdf |
Complete user guide, including Image Measurement |
Kepler_Technical_Reference_v136.pdf |
Algorithm and API reference |
Kepler_Planet_Tutorials_v136.pdf |
Step-by-step tutorials for Jupiter, Saturn, and Mars |
Kepler_Installation_Guide_v136.pdf |
Installation instructions for Windows, Linux and macOS |
The download is named kepler_v136.zip rather than kepler_v1.3.6.zip — macOS
treats everything after the first dot as a file extension, which would truncate
the extracted folder name.
All four documents are also included inside kepler_v136.zip in the docs/
folder, as both PDF and DOCX.
Installation
Windows: Download kepler_v136.zip, then right-click it and choose Extract All.
Windows extracts into a new folder named after the zip, so you may end up with
kepler_v136\kepler_v136\ — that is normal. To avoid it, delete the trailing
kepler_v136 from the destination path in the Extract dialog.
Open the extracted kepler_v136 folder, go to installer\windows\, then right-click
install.bat and choose Run as administrator.
Linux: Download kepler_v136.zip to your Downloads folder, then open Terminal and run:
cd ~/Downloads
unzip kepler_v136.zip
bash kepler_v136/installer/linux/install.sh
macOS: Download kepler_v136.zip — macOS extracts it to ~/Downloads/kepler_v136
automatically. Then open Terminal and run:
bash ~/Downloads/kepler_v136/installer/macos/install.sh
A new Terminal window starts in your home folder, so these commands work as typed. If you
put the zip somewhere other than Downloads, use that folder instead.
Requirements
- Windows 10/11 or Linux Mint/Ubuntu/Debian: Python 3.8+
- macOS Catalina (10.15) and later: Python 3.11+ (installed automatically, native on Apple Silicon)
Minimum display resolution 1920×1080 recommended
Kepler v1.3.5
Kepler v1.3.5 — Planetary Image Processing Suite
What's New in v1.3.5
A small maintenance release: a more robust macOS install on Apple Silicon, and a
clearer Deconvolution control.
🍎 macOS — guaranteed native on Apple Silicon
Kepler has always run natively on Apple Silicon (it's a Python application, and
the installer sets up the universal2 build of Python with native Apple Silicon
libraries — no Rosetta). This release hardens that: the macOS installer now
checks the architecture of any Python it finds and, on an Apple Silicon Mac,
skips an Intel (Rosetta) Python in favor of a native one.
That closes the one edge case where Kepler could inherit a Rosetta dependency —
if it happened to install on top of an older Intel copy of Python you already
had. New installs are now guaranteed to run fully native, and will keep working
on Apple Silicon Macs as Apple phases Rosetta out.
🔧 Deconvolution — clearer guidance
The Deconvolution control (Tools tab) restores fine luminance detail, which
is hard to see on an unsharpened image. A new hint under the control makes that
explicit: "apply Wavelet sharpening first to see its effect." The User Guide
now says the same, replacing an out-of-date note about an iterations setting the
control doesn't have.
Upgrading from v1.3.4
Drop-in. Settings, projects and the ephemeris cache all carry over, and all
processing is unchanged — this release only touches the macOS installer and a
couple of on-screen and in-guide hints. macOS users on Apple Silicon:
reinstalling is optional, but doing so guarantees Kepler is running on a native
Python if it wasn't already.
Downloads
| File | Description |
|---|---|
kepler_v135.zip |
Application + Windows, Linux & macOS installers |
Kepler_User_Guide_v135.pdf |
Complete user guide, including Image Measurement |
Kepler_Technical_Reference_v135.pdf |
Algorithm and API reference |
Kepler_Planet_Tutorials_v135.pdf |
Step-by-step tutorials for Jupiter, Saturn, and Mars |
Kepler_Installation_Guide_v135.pdf |
Installation instructions for Windows, Linux and macOS |
The download is named kepler_v135.zip rather than kepler_v1.3.5.zip — macOS
treats everything after the first dot as a file extension, which would truncate
the extracted folder name.
All four documents are also included inside kepler_v135.zip in the docs/
folder, as both PDF and DOCX.
Installation
Windows: Download kepler_v135.zip, then right-click it and choose Extract All.
Windows extracts into a new folder named after the zip, so you may end up with
kepler_v135\kepler_v135\ — that is normal. To avoid it, delete the trailing
kepler_v135 from the destination path in the Extract dialog.
Open the extracted kepler_v135 folder, go to installer\windows\, then right-click
install.bat and choose Run as administrator.
Linux: Download kepler_v135.zip to your Downloads folder, then open Terminal and run:
cd ~/Downloads
unzip kepler_v135.zip
bash kepler_v135/installer/linux/install.sh
macOS: Download kepler_v135.zip — macOS extracts it to ~/Downloads/kepler_v135
automatically. Then open Terminal and run:
bash ~/Downloads/kepler_v135/installer/macos/install.sh
A new Terminal window starts in your home folder, so these commands work as typed. If you
put the zip somewhere other than Downloads, use that folder instead.
Requirements
- Windows 10/11 or Linux Mint/Ubuntu/Debian: Python 3.8+
- macOS Catalina (10.15) and later: Python 3.11+ (installed automatically, native on Apple Silicon)
Minimum display resolution 1920×1080 recommended
Kepler v1.3.4
Kepler v1.3.4 — Planetary Image Processing Suite
What's New in v1.3.4
A refinement release: Chroma Denoise is cleaner and truer to color, and the
SharpenFilter Estimate now adapts to the image like WaveSharp 3.
🎨 Chroma Denoise — cleaner at the limb, truer color
Chroma Denoise has been reworked into a straightforward chrominance smoother that
behaves the way it should on a planetary disc:
- No limb fringe. The old version let the black sky drain color at the disc
edge, leaving a faint desaturated band ~20% into the disc that could read as a
blue or greenish rim. The blur now excludes the sky, so the color runs uniformly
right to the limb. - Saturation-neutral. It smooths the color noise while keeping the overall
saturation exactly where you set it — no wash-out, no boost. - Luminance untouched. All the sharp detail from LRGB is preserved; only the
color is smoothed.
Same control, same 0–10 radius in the Wavelet tab.
🎯 SharpenFilter Estimate — now image-adaptive
The Estimate Filter / Autosize Filter result for Layer 1 now analyzes
the image the way WaveSharp 3 does, rather than following a fixed formula. It
measures the disc's fine-scale signal-to-noise and lifts the filter for noisier
captures, so the suggested starting value tracks WaveSharp across clean and grainy
images (matched to within ~0.005 on Jupiter, Saturn and Mars references).
Layers 2 and 3 keep a fixed 0.100 default, and the Layer 1 curve still rises
gently with the Sharpen amount.
Upgrading from v1.3.3
Drop-in. Settings, projects and the ephemeris cache all carry over. De-rind,
De-rotation, Align RGB channels, Image Measurement and the LD controls are
unchanged. Only the Chroma Denoise internals and the SharpenFilter Estimate were
refined — existing projects load and process as before.
Downloads
| File | Description |
|---|---|
kepler_v134.zip |
Application + Windows, Linux & macOS installers |
Kepler_User_Guide_v134.pdf |
Complete user guide, including Image Measurement |
Kepler_Technical_Reference_v134.pdf |
Algorithm and API reference |
Kepler_Planet_Tutorials_v134.pdf |
Step-by-step tutorials for Jupiter, Saturn, and Mars |
Kepler_Installation_Guide_v134.pdf |
Installation instructions for Windows, Linux and macOS |
The download is named kepler_v134.zip rather than kepler_v1.3.4.zip — macOS
treats everything after the first dot as a file extension, which would truncate
the extracted folder name.
All four documents are also included inside kepler_v134.zip in the docs/
folder, as both PDF and DOCX.
Installation
Windows: Download kepler_v134.zip, then right-click it and choose Extract All.
Windows extracts into a new folder named after the zip, so you may end up with
kepler_v134\kepler_v134\ — that is normal. To avoid it, delete the trailing
kepler_v134 from the destination path in the Extract dialog.
Open the extracted kepler_v134 folder, go to installer\windows\, then right-click
install.bat and choose Run as administrator.
Linux: Download kepler_v134.zip to your Downloads folder, then open Terminal and run:
cd ~/Downloads
unzip kepler_v134.zip
bash kepler_v134/installer/linux/install.sh
macOS: Download kepler_v134.zip — macOS extracts it to ~/Downloads/kepler_v134
automatically. Then open Terminal and run:
bash ~/Downloads/kepler_v134/installer/macos/install.sh
A new Terminal window starts in your home folder, so these commands work as typed. If you
put the zip somewhere other than Downloads, use that folder instead.
Requirements
- Windows 10/11 or Linux Mint/Ubuntu/Debian: Python 3.8+
- macOS Catalina (10.15) and later: Python 3.11+ (installed automatically)
Minimum display resolution 1920×1080 recommended
Kepler v1.3.3
Kepler v1.3.3 — Planetary Image Processing Suite
What's New in v1.3.3
Two color-focused additions: a Chroma Denoise that actually keeps your color, and
automatic RGB channel alignment for images with color fringing.
🎨 Chroma Denoise (was "Color Denoise")
The color-noise control has been rebuilt and renamed. The old "Color Denoise"
blurred the chroma vector directly, which smoothed the speckle but also washed
the color out of the disc.
Chroma Denoise works in oklab and smooths the chroma in polar form:
- Luminance is left untouched, so the sharp detail from LRGB survives exactly.
- The chroma magnitude is smoothed — a Gaussian blur preserves its mean, so
saturation is kept rather than drained. - The hue angle is smoothed on the circle, so the random color speckle is
removed without bleeding color into the background sky.
The result: the rainbow color noise that RGB/LRGB sharpening amplifies is cleaned
up while the color and the belt/ring detail stay intact. Same control, same
0–10 radius, in the Wavelet tab — it just works now.
🎯 Align RGB Channels
A new Align RGB channels checkbox in the RGB tab. When the red, green and blue
channels don't line up — from atmospheric dispersion (planet low in the sky) or an
RGB-align step skipped in the stacker — the disc shows a colored fringe on one
edge and its opposite on the other, and sharpening only makes it worse.
Turn it on and Kepler registers the red and blue channels to green by phase
cross-correlation (sub-pixel), then shifts them back into line. It runs before
sharpening, so the fringes are gone before they can be amplified, and it works
in both single-image and batch processing. Off by default; no effect on images
whose channels are already aligned.
Upgrading from v1.3.2
Drop-in. Settings, projects and the ephemeris cache all carry over. De-rind,
De-rotation, Image Measurement and the LD controls are unchanged. Projects saved
in v1.3.2 load unchanged; the renamed Chroma Denoise keeps its saved value.
Downloads
| File | Description |
|---|---|
kepler_v133.zip |
Application + Windows, Linux & macOS installers |
Kepler_User_Guide_v133.pdf |
Complete user guide, including Image Measurement |
Kepler_Technical_Reference_v133.pdf |
Algorithm and API reference |
Kepler_Planet_Tutorials_v133.pdf |
Step-by-step tutorials for Jupiter, Saturn, and Mars |
Kepler_Installation_Guide_v133.pdf |
Installation instructions for Windows, Linux and macOS |
The download is named kepler_v133.zip rather than kepler_v1.3.3.zip — macOS
treats everything after the first dot as a file extension, which would truncate
the extracted folder name.
All four documents are also included inside kepler_v133.zip in the docs/
folder, as both PDF and DOCX.
Installation
Windows: Download kepler_v133.zip, then right-click it and choose Extract All.
Windows extracts into a new folder named after the zip, so you may end up with
kepler_v133\kepler_v133\ — that is normal. To avoid it, delete the trailing
kepler_v133 from the destination path in the Extract dialog.
Open the extracted kepler_v133 folder, go to installer\windows\, then right-click
install.bat and choose Run as administrator.
Linux: Download kepler_v133.zip to your Downloads folder, then open Terminal and run:
cd ~/Downloads
unzip kepler_v133.zip
bash kepler_v133/installer/linux/install.sh
macOS: Download kepler_v133.zip — macOS extracts it to ~/Downloads/kepler_v133
automatically. Then open Terminal and run:
bash ~/Downloads/kepler_v133/installer/macos/install.sh
A new Terminal window starts in your home folder, so these commands work as typed. If you
put the zip somewhere other than Downloads, use that folder instead.
Requirements
- Windows 10/11 or Linux Mint/Ubuntu/Debian: Python 3.8+
- macOS Catalina (10.15) and later: Python 3.11+ (installed automatically)
Minimum display resolution 1920×1080 recommended
Kepler v1.3.2
Kepler v1.3.2 — Planetary Image Processing Suite
What's New in v1.3.2
A focused update to De-rind: a much simpler panel, and a Saturn mode that
actually keeps the rings out of the correction.
✨ De-rind, simplified
The De-rind tab used to put nine controls in front of you at once. It now leads
with the three that matter:
- ⟴ Auto De-rind — one click estimates the band from the image and switches
De-rind on. Use it as your starting point. - Edge (how far out, px) — how far the correction reaches past the limb.
- Feather (softness, px) — how soft the band's edges are.
Everything else — Inset, Arc Start/End, Dark Edge and Pre-blur — has moved into
a collapsed Advanced section. Nothing was removed, and your saved projects
load exactly as before.
The old Auto Edge button is gone; Auto De-rind replaces it. The control
previously labeled Smooth is now Feather — it is the same setting under
a clearer name, not an extra one.
🪐 Saturn mode that respects the rings
Saturn mode now keeps the correction off the ring system properly, at any
image rotation:
- It fits the globe by PCA and caps the major axis, so open rings never inflate
the detected disc. - It then decides per bearing whether rings are present, by probing an
annulus well clear of the globe's soft limb. Bearings carrying ring material
are dropped from the correction. - Rings crossing in front of the globe lie on those same bearings, so they
are covered too — no manual gap geometry required.
Because the test is based on where the rings actually are, it works whether your
capture has the rings horizontal, vertical or anywhere between. The Arc
Start/End wedge is still there under Advanced for manual control, and now
steps in 1° increments — hold Shift while scrolling for 0.1°.
🎨 De-rind no longer disturbs your color
De-rind runs at the end of the pipeline but corrects toward the pre-sharpen
original, which is also pre color-correction. It used to blend all three
channels, so the corrected limb reverted toward the uncorrected hue and left a
visible desaturated band wherever the mask acted.
It now blends in luminance only and keeps the current chroma, so the rind
disappears while your RGB gains, saturation and levels stay exactly as you set
them.
🔧 Fixes
- Auto De-rind no longer clears your settings. It used to switch off Saturn
mode and Show De-rind Mask every time it ran. Those are your choices, not
estimated values, and are now left alone. - Auto De-rind applies the Feather value it reports, instead of always setting 1.
- Corrected the documented Feather range and default (0–20, default 2).
Upgrading from v1.3.1
Drop-in. Settings, projects and the ephemeris cache all carry over. De-rotation,
Image Measurement and the LD controls are unchanged. Existing projects keep
their De-rind values — only the panel layout and the Saturn-mode behavior
changed.
Downloads
| File | Description |
|---|---|
kepler_v132.zip |
Application + Windows, Linux & macOS installers |
Kepler_User_Guide_v132.pdf |
Complete user guide, including Image Measurement |
Kepler_Technical_Reference_v132.pdf |
Algorithm and API reference |
Kepler_Planet_Tutorials_v132.pdf |
Step-by-step tutorials for Jupiter, Saturn, and Mars |
Kepler_Installation_Guide_v132.pdf |
Installation instructions for Windows, Linux and macOS |
The download is named kepler_v132.zip rather than kepler_v1.3.2.zip — macOS
treats everything after the first dot as a file extension, which would truncate
the extracted folder name.
All four documents are also included inside kepler_v132.zip in the docs/
folder, as both PDF and DOCX.
Installation
Windows: Download kepler_v132.zip, then right-click it and choose Extract All.
Windows extracts into a new folder named after the zip, so you may end up with
kepler_v132\kepler_v132\ — that is normal. To avoid it, delete the trailing
kepler_v132 from the destination path in the Extract dialog.
Open the extracted kepler_v132 folder, go to installer\windows\, then right-click
install.bat and choose Run as administrator.
Linux: Download kepler_v132.zip to your Downloads folder, then open Terminal and run:
cd ~/Downloads
unzip kepler_v132.zip
bash kepler_v132/installer/linux/install.sh
macOS: Download kepler_v132.zip — macOS extracts it to ~/Downloads/kepler_v132
automatically. Then open Terminal and run:
bash ~/Downloads/kepler_v132/installer/macos/install.sh
A new Terminal window starts in your home folder, so these commands work as typed. If you
put the zip somewhere other than Downloads, use that folder instead.
Requirements
- Windows 10/11 or Linux Mint/Ubuntu/Debian: Python 3.8+
- macOS Catalina (10.15) and later: Python 3.11+ (installed automatically)
Minimum display resolution 1920×1080 recommended
Kepler v1.3.1
Kepler v1.3.1 — Planetary Image Processing Suite
What's New in v1.3.1
A small update to the Image Measurement window, so aligning the wireframe to
the disc is easier.
🔍 Zoom, separate from resize
Zooming the image and resizing the outline used to share the +/− keys. They
are now two independent actions:
+/−zoom the image in and out, so you can inspect the limb up close
while placing the wireframe. Zoom magnifies the whole view; it does not change
any measurement.- PgUp / PgDn resize the outline — grow or shrink the fitted disc. Hold Shift
for fine steps.
🎯 New buttons
- Center outline — snap the wireframe back to the middle of the image when it
has been nudged off the disc. - Center image + outline — reset the view to fit and recenter the outline in
one click. - Show / Hide outline — toggle the wireframe off to see the bare image, and
back on. - Prev frame / Next frame — step through the captures (this replaces the old
PgUp/PgDn frame stepping, which now resizes the outline).
The full key list, shown in the window's side panel:
arrows move outline F11 auto-fit frame
+ - zoom image Shift+F11 auto-fit all
PgUp/PgDn resize outline Enter accept
[ ] rotate
N flip north hold Shift for fine steps
🌗 Limb-darkening (LD) compensation
Kepler now has two independent LD controls, matching how the technique is used
at two different stages:
Measurement LD — a viewing aid. A LD compensation panel under the planet
image (checkbox + value + angle). When on, it brightens the disc's limb
(limb-darkening compensation) so the edge is easy to see and place the wireframe
against — higher value = more dramatic, up the way past 1.0 the centre darkens
and the limb whites out. It is display-only and never touches the stack. Off by
default, remembered between sessions.
De-rotation LD — edge cleanup. In the De-rotate tab's Options, a
De-rotation LD value/angle. 1.00 = off; 0.5–0.9 darkens the limb
during de-rotation so the stacked result doesn't show bright fringes or dark
"ghost edge" halos that over-sharpened frames beat into the edge. Applied to
every frame and the reference, and remembered between sessions.
🌐 Offline ephemeris — download on demand
De-rotation already fetches each frame's ephemeris live from JPL Horizons and
caches it, so any date works as long as you're online once. The installer also
pre-caches the current and prior year for offline use. New in this release: a
Download this year's ephemeris button in the De-rotate tab's Observer
Location panel fetches the whole current year for Jupiter, Saturn and Mars
at your saved location, so you can top up for offline sessions without
reinstalling. It shows progress, and Cancel stops it between chunks.
Upgrading from v1.3.0
Drop-in. Settings, projects and the ephemeris cache all carry over, and
de-rotation results are unchanged — this release only touches how you drive the
measurement window.
Downloads
| File | Description |
|---|---|
kepler_v131.zip |
Application + Windows, Linux & macOS installers |
Kepler_User_Guide_v131.pdf |
Complete user guide, including Image Measurement |
Kepler_Technical_Reference_v131.pdf |
Algorithm and API reference |
Kepler_Planet_Tutorials_v131.pdf |
Step-by-step tutorials for Jupiter, Saturn, and Mars |
Kepler_Installation_Guide_v131.pdf |
Installation instructions for Windows, Linux and macOS |
The download is named kepler_v131.zip rather than kepler_v1.3.1.zip — macOS
treats everything after the first dot as a file extension, which would truncate
the extracted folder name.
All four documents are also included inside kepler_v131.zip in the docs/
folder, as both PDF and DOCX.
Installation
Windows: Download kepler_v131.zip, then right-click it and choose Extract All.
Windows extracts into a new folder named after the zip, so you may end up with
kepler_v131\kepler_v131\ — that is normal. To avoid it, delete the trailing
kepler_v131 from the destination path in the Extract dialog.
Open the extracted kepler_v131 folder, go to installer\windows\, then right-click
install.bat and choose Run as administrator.
Linux: Download kepler_v131.zip to your Downloads folder, then open Terminal and run:
cd ~/Downloads
unzip kepler_v131.zip
bash kepler_v131/installer/linux/install.sh
macOS: Download kepler_v131.zip — macOS extracts it to ~/Downloads/kepler_v131
automatically. Then open Terminal and run:
bash ~/Downloads/kepler_v131/installer/macos/install.sh
A new Terminal window starts in your home folder, so these commands work as typed. If you
put the zip somewhere other than Downloads, use that folder instead.
Requirements
- Windows 10/11 or Linux Mint/Ubuntu/Debian: Python 3.8+
- macOS Catalina (10.15) and later: Python 3.11+ (installed automatically)
Minimum display resolution 1920×1080 recommended
Kepler v1.3.0
Kepler v1.3.0 — Planetary Image Processing Suite
What's New in v1.3.0
This release rebuilds planetary de-rotation. On real captures the stacked result is
10× sharper for Jupiter and 29× sharper for Saturn than v1.2.3 produced from the
same frames.
🪐 De-rotation — corrected geometry
Several errors compounded to rotate frames about the wrong axis:
- The ephemeris was being read in the wrong coordinate frame. JPL Horizons defaults
REF_PLANEto ECLIPTIC for vector queries, while the IAU-2018 pole constants are
equatorial — a 23.4° mismatch. The planet→observer vector was also inverted. Together
these put the computed pole position angle 15.4° out for Jupiter and 8.1° out for
Saturn; both now agree with Horizons to better than 0.15°. - Sub-Earth latitude is now applied. Frames were rotated about the image vertical
rather than the planet's true polar axis, which is tipped toward or away from us by up
to 3° (Jupiter), 25° (Mars) or 27° (Saturn). This matters most for Saturn as the rings
reopen through the 2030s. - The disc is treated as a true oblate ellipsoid. Each output pixel's line of sight is
intersected with the ellipsoid and the resulting point rotated about the polar axis —
no spherical approximation anywhere. - Central-meridian longitude is computed correctly. The sub-observer term was being
projected onto a vector perpendicular to itself, so it always evaluated to zero and CM
collapsed to the prime-meridian angle. Light-time retardation was also missing: the
reported CM was out by 21° for Jupiter and 41° for Saturn. Both now match Horizons to
under 0.7°. - Jupiter's System II rate corrected from 870.536 to 870.270 °/day. The old value
paired System II's epoch constant with System III's rate.
🎯 Image Measurement
A new wireframe measurement step:
- Click Measure images… to overlay a wireframe — limb, equator, meridians, parallels,
polar axis, and Saturn's ring boundaries — built from each frame's own ephemeris. The
capture time is read from the filename, so there is nothing to type. - F11 auto-fits the current frame, Shift+F11 fits them all. Arrow keys move,
+/−resize,[/]rotate,Nflips north; hold Shift for fine steps. - The fit supplies the disc centre, its size, and — the part the ephemeris cannot know —
the orientation of the pole on your camera sensor. Images no longer need to be
rotated pole-up beforehand. - Every frame is measured, so drift between captures is absorbed instead of smeared.
- Which end of the axis is north is settled by evidence rather than assumption: a trial
warp is run both ways and the better correlation wins. - Where the limb genuinely cannot fix the rotation — Mars is 0.994 as tall as it is wide,
well under a pixel of ellipticity — Kepler says so rather than reporting a confident
wrong angle, and falls back to the camera rotation.
🐛 Bug Fixes
- Saturn with open rings could not be measured at all. The ring ansae reach 2.3
equatorial radii and dominated the limb, sending the fit to absurd values — a 78-pixel
globe was measured as 412,000 pixels. The fit is now seeded from the narrowest extent
of the bright region, which is the polar axis and cannot be widened by rings. - The standalone
pvol_derotate.pywindow crashed on Run, passing an argument the
de-rotation function had never accepted. That field now works as a manual fallback. - The Linux and macOS installer breadcrumb was clipped, showing fragments such as
ns › System Check › Options ›. All three installers now showStep n of m · Name. - The Linux installer's minimal-install fallback looked one directory too high and
would have copied no application files.
📖 Documentation
- The User Guide's "Image Orientation Requirement" is replaced by Image Measurement.
The old instruction to rotate images pole-up was not just unnecessary — following it
made results worse, because the ephemeris pole angle was then applied on top. - All three planet tutorials gain the Measure step, with the Mars caveat noted.
- The Technical Reference de-rotation and disc-geometry sections are rewritten to match
the implementation.
Upgrading from v1.2.3
Nothing to do — settings, projects and the ephemeris cache all carry over. Two things to
expect:
- De-rotation results will differ, and should be markedly sharper. Re-running an older set
is worthwhile. - Cached Horizons data is re-fetched once, because stored vectors are now in the equatorial
frame. This happens automatically.
Downloads
| File | Description |
|---|---|
kepler_v130.zip |
Application + Windows, Linux & macOS installers |
Kepler_User_Guide_v130.pdf |
Complete user guide, including Image Measurement |
Kepler_Technical_Reference_v130.pdf |
Algorithm and API reference |
Kepler_Planet_Tutorials_v130.pdf |
Step-by-step tutorials for Jupiter, Saturn, and Mars |
Kepler_Installation_Guide_v130.pdf |
Installation instructions for Windows, Linux and macOS |
The download is named kepler_v130.zip rather than kepler_v1.3.0.zip — macOS treats
everything after the first dot as a file extension, which would truncate the extracted
folder name.
All four documents are also included inside kepler_v130.zip in the docs/ folder, as
both PDF and DOCX.
Installation
Windows: Download kepler_v130.zip, then right-click it and choose Extract All.
Windows extracts into a new folder named after the zip, so you may end up with
kepler_v130\kepler_v130\ — that is normal. To avoid it, delete the trailing
kepler_v130 from the destination path in the Extract dialog.
Open the extracted kepler_v130 folder, go to installer\windows\, then right-click
install.bat and choose Run as administrator.
Linux: Download kepler_v130.zip to your Downloads folder, then open Terminal and run:
cd ~/Downloads
unzip kepler_v130.zip
bash kepler_v130/installer/linux/install.sh
macOS: Download kepler_v130.zip — macOS extracts it to ~/Downloads/kepler_v130
automatically. Then open Terminal and run:
bash ~/Downloads/kepler_v130/installer/macos/install.sh
A new Terminal window starts in your home folder, so these commands work as typed. If you
put the zip somewhere other than Downloads, use that folder instead.
Requirements
- Windows 10/11 or Linux Mint/Ubuntu/Debian: Python 3.8+
- macOS Catalina (10.15) and later: Python 3.11+ (installed automatically)
Minimum display resolution 1920×1080 recommended
Kepler v1.2.3
Kepler v1.2.3 — Planetary Image Processing Suite
What's New in v1.2.3
🌀 FFT Denoise — Multi-Stage Filtering
- POST and PRE stages can now run at the same time. Previously the FFT tab had a single Layer selector, so denoising happened either after all wavelet layers (POST) or before one chosen layer (PRE) — never both
- Each of the four stages — POST — All Layers, PRE — Layer 1, PRE — Layer 2, PRE — Layer 3 — is now an independent checkbox, and any combination can be enabled together
- Every stage keeps its own Start, End and Curve band. A gentle post-sharpening cleanup and an aggressive pre-Layer-1 cut are no longer mutually exclusive
- Each row has an edit button that selects which stage the graph markers and the Curve slider control, with an Active line beneath the list confirming what you are editing
- The spectrum graph now draws the other enabled stages as faint dashed curves, so a multi-stage setup is visible at a glance
- A warning appears on the graph when FFT is enabled but the stage you are editing is not checked — dragging the markers there would have no effect on the image
- Each row shows its own band inline (for example
40–70% curve 30), so all four stages can be compared without switching between them
This brings Kepler's FFT denoise in line with the workflow used by other planetary processing tools: sharpen Layer 1, set up POST — All Layers against the unfiltered spectrum, then add PRE — Layer 1 with its own tighter band.
📖 Documentation
- New Using FFT Denoise section in the User Guide — how to read the spectrum graph (pink, green, blue and the teal markers), where to place Start and End, how to shape the Curve, and a worked POST + PRE-Layer-1 recipe
- All three planet tutorials now include an FFT Denoise step with marker guidance tuned to that target — Saturn and Mars previously had no FFT step at all
- Technical Reference gains the missing FFT Stages and FFT Curve rows in the default-parameter table
🐛 Bug Fixes
- Opening a saved project crashed. Loading any
.kprojfile raised anAttributeErrorat the end of the load because it called a pipeline function that did not exist. Projects now reload and re-render correctly - Windows installer showed garbled characters.
install.batdrew its banner with UTF-8 box-drawing characters, butcmd.exereads batch files in the console's OEM codepage, so the banner appeared asΓòöΓòÉΓòÉ…. The installer is now plain ASCII with CRLF line endings and renders correctly on every Windows locale
Upgrading from v1.2.2
Existing .kproj project files load without changes. A project saved with the old single-layer FFT setting is migrated automatically: the layer it used becomes the one enabled stage, keeping its Start, End and Curve values.
Downloads
| File | Description |
|---|---|
kepler_v123.zip |
Application + Windows, Linux & macOS installers |
Kepler_User_Guide_v123.pdf |
Complete user guide, including Using FFT Denoise |
Kepler_Technical_Reference_v123.pdf |
Algorithm and API reference |
Kepler_Planet_Tutorials_v123.pdf |
Step-by-step tutorials for Jupiter, Saturn, and Mars |
Kepler_Installation_Guide_v123.pdf |
Installation instructions for Windows, Linux and macOS |
The download is named kepler_v123.zip rather than kepler_v1.2.3.zip — macOS treats everything after the first dot as a file extension, which truncated the extracted folder name to kepler_v1.
All four documents are also included inside kepler_v123.zip in the docs/ folder, as both PDF and DOCX.
Installation
Windows: Download kepler_v123.zip, then right-click it and choose Extract All.
Windows extracts into a new folder named after the zip, so you may end up with kepler_v123\kepler_v123\ — that is normal. To avoid it, delete the trailing kepler_v123 from the destination path in the Extract dialog.
Open the extracted kepler_v123 folder, go to installer\windows\, then right-click install.bat and choose Run as administrator.
Linux: Download kepler_v123.zip to your Downloads folder, then open Terminal and run:
cd ~/Downloads
unzip kepler_v123.zip
bash kepler_v123/installer/linux/install.sh
macOS: Download kepler_v123.zip — macOS extracts it to ~/Downloads/kepler_v123 automatically. Then open Terminal and run:
bash ~/Downloads/kepler_v123/installer/macos/install.sh
A new Terminal window starts in your home folder, so these commands work as typed. If you put the zip somewhere other than Downloads, use that folder instead.
Requirements
- Windows 10/11 or Linux Mint/Ubuntu/Debian: Python 3.8+
- macOS Catalina (10.15) and later: Python 3.11+ (installed automatically)
Minimum display resolution 1920×1080 recommended
Kepler v1.2.2
Kepler v1.2.2 — Planetary Image Processing Suite
What's New in v1.2.2
🪐 Planetary De-Rotation
- New De-rotate tab co-adds multiple sharpened stacks captured over 20–30 minutes, correcting for the planet's own rotation between frames — the same technique used by WinJUPOS
- Supported planets: Jupiter (CM System II), Saturn (CM System III), Mars (CM System I)
- Uses IAU-2018 pole orientation constants and JPL Horizons ephemeris data to compute the Central Meridian longitude for each frame
- Single-pass direct disc warp — one bicubic interpolation per frame, no intermediate cylindrical map, matching WinJUPOS quality
- Oblate disc geometry with planet-specific IAU oblateness constants; Saturn's rings are handled separately and never contaminate the globe radius estimate
- Output is a single 16-bit TIFF cropped to the disc, ready for comparison with any individual input frame
- Images must be oriented with the planet's pole at the top (north for northern hemisphere observers, south for southern hemisphere observers). Use the Batch tab → Rotate if needed
- Filenames must contain an AutoStakkert! 4 UTC timestamp (e.g.
2026-03-31-0343_9-…) — all AS!4 output filenames include this automatically
📡 Ephemeris Cache
- New
ephem_cache.pymodule caches JPL Horizons positional data to~/.kepler_ephem/cache/so de-rotation works fully offline after the first run - The installer pre-downloads one full year of ephemeris data for Jupiter, Saturn, and Mars (~1 MB total) with a clearly labelled progress step
- Uncached timestamps are queried live from JPL Horizons and saved automatically for next time
🐛 Bug Fixes and Improvements
- Removed Fiji/bUnwarpJ dependency — de-rotation is now pure Python with no Java requirement
- Left panel default width reduced to 45% of window width, giving the tab notebook more room and preventing tab labels from being clipped at 1920×1080
- Observer location now stored in
~/.kepler_ephem/config.json, shared between the De-rotate tab and the standalonepvol_derotate.pytool
Downloads
| File | Description |
|---|---|
| kepler_v1.2.2.zip | Application + Windows, Linux & macOS installers + PDF and DOCX documentation |
| Kepler_User_Guide_v122.pdf | Complete user guide including De-rotate tab |
| Kepler_Technical_Reference_v122.pdf | Algorithm and API reference |
| Kepler_Planet_Tutorials_v122.pdf | Step-by-step tutorials for Jupiter, Saturn, and Mars |
| Kepler_Installation_Guide_v122.pdf | Installation instructions for Windows, Linux and macOS |
Installation
Windows / Linux / macOS: Download and extract kepler_v1.2.2.zip, then:
- Windows: Run
installer\windows\install.bat - Linux: Run
bash installer/linux/install.sh - macOS: Open Terminal and run:
bash ~/Downloads/kepler_v1.2.2/installer/macos/install.sh
Requirements
- Windows 10/11 or Linux Mint/Ubuntu/Debian: Python 3.8+
- macOS Catalina (10.15) and later: Python 3.11+ (installed automatically)
- Minimum display resolution 1920×1080 recommended