Keith's Image Stacker 4.2 review

Download
by rbytes.net on

Keith's Image Stacker is an image processing program that is oriented primarily toward astrophotography.

License: Freeware
OS: Mac OS X
File size: 1201K
Developer: Keith Wiley
Price: $0.00
Updated: 29 Jun 2006
0 stars award from rbytes.net


Keith's Image Stacker is an image processing program that is oriented primarily toward astrophotography. See my astrophotography webpage for information about my personal venture into that hobby.

What Keith's Image Stacker provides, more than anything else, is a workspace in which to align many similar images (say from a quicktime movie of Jupiter taken through a telescope with a webcam) and then to produce a stack of the images, which consists of a single image that comprises either the sum, or the average, or some value in between of the individually stacked images.

Stacking images is a well-established method for increasing the signal-to-noise ratio in a series of similar images. True "information" will shine through the stack, while random noise will drop out.

What's New:
In the Unsharp Mask and Laplacian Sharpening Interfaces, if you attempted to redefine a the preview bounds but released the mouse button without dragging a rectangle, this could cause subsequent crashes later on. Should be fixed.
v4.1 introduced a bug into the Open FITS file interface, in which each channel opened would erase any existing channels in the stack. This made it impossible to recover an RGB stack from three FITS files. The problem has been solved.
The sliders in the Power Spectrum Sorting Interface were being memory leaked. Fixed.
Fixed a bug that could cause a crash when the Clips Window is closed.
Centroid alignment wasn't using the proper algorithm to determine a pixel's overall value (using average instead of max of RGB components). Fixed.
Preview bounds for a variety of operations were not properly displayed in the FrameStack window if the FrameStack window size did not perfectly match that actual FrameStack's size. Should be fixed.
The Laplacian Sharpening Interface did not respect the pin-zero and pin-one boxes when creating the final result after hitting the OK button. This would cause the final result to suddenly change so as to not match the preview that was available immediately before hitting OK. This is fixed now.
The Laplacian Sharpening Interface did not remember the value of the DC term properly after being closed. Fixed.
Half bug, half missing feature in some cases, the Marking Clip Rect (cyan border around a clip) often was not drawn for many operations. Several occurances of this bug were fixed in v4.1. Several more are fixed here.
Turns out I was calculating 2D power spectrums quite incorrectly. Sorting by power spectrum will hopefully improve now.
A smattering of small changes and fixes to the precise dimensions of power-2 operations bounds rects and methods for getting pixels from GWorlds (inclusion of the right and bottom edges of pixels of a bounds rect primarily)
In the Unsharp Masking Interface, if you moved the preview rect, the old preview rect was not restored to the original image. Fixed.
If the RGB channels of the Frame Stack were independently aligned, the single channel views in the Histograms/Levels Interface were not drawn properly. Fixed (and eliminated now that those checkboxes are gone)
If the FrameStack was rebuilt, the RGB alignments on the FrameStack were not reinitialized to (0, 0). Bug? Stupid feature? Either way, they are initialized now.

Changes:
Added Debayering on the individual clips, for use with cameras that have been "RAW" modded to receive the Bayer pattern directly from the camera's CCD.
Decreased the Event reaction time slightly. This vastly cuts the amount of CPU resources being hogged by the program without noticably affecting the program's performance.
When sorting frames by power spectrum distribution, there is now a high frequency cutoff slider in addition to the old low frequency cutoff slider. The score of a frame will be the ratio of the sum of power between the cutoffs to the sum of total power. Initial experiments suggest that this can definitely improve the final sorted order of the frames.
A few sorting methods have been completely removed because people continue to be confused as to how to properly sort the frames in such a way as to get satisfying results. At the same time, the sorting menu has been garnished with some textual notes that should prod people in the right direction under most circumstances.
Significant changes to centroid alignment. Centroid alignment is considerably faster than difference alignment, especially when the misalignments are large. However, it may not produce the optimal alignment (I am unsure about this. Perhaps it is optimal after all, in which it is definitely superior to the difference method). Therefore, it is suggested to use centroid alignment (4-key) first and then clean up with a difference alignment using the 3-key. The 1-key and 2-key difference alignments, despite fixing large misalignments better than the 3-key method, are slower than the centroid method, which is why centroid followed by 3-key is recommended as the best overall approach.
Added Cross-Correlation alignment. It is used in the same fashion as the existing four methods of alignment, three for difference and one for centroid. Simply hold down the '5' key and click on a clip or a selection of clips to use it. You must, however, use a power-of-two Operations Bound rect. Otherwise the program simply beeps. While this method usually works pretty well, it sometimes gets confused and produces a completely ridiculous alignment. Additionally, it is noticeably slower than the other alignment methods. Frankly, I think the centroid method is best for macro-alignments and the key-3 difference method is best for micro-alignments.
Added a new operation on the FrameStack called Fourier Transform Editor. This allows you to literally paint out those parts of the Fourier transform of the stack that correspond to periodic interference patterns, such as the "herring bone" pattern that pervades many long exposure modified webcams. Aligning with a brightness threshold (which deals with the same problem in some cases) is still crucial, since it provides an optimal and sharp alignment, but if the final stack is not deep enough, it can still exhibit these kinds of interference patterns. This tool will virtually eliminate them. I would guess that it should also help in mitigating Bayer pattern effects, although I have not experimented with this yet.
The centroid alignment wasn't using the brightness threshold before. Only the difference alignment was. Now centroid alignment uses it too, as does the new cross correlation alignment (although it may introduce unnatural edges into the image which could mess up the cross correlation alignment).
Added a new checkbox to the Open Movie Interface that lets you specify that frames should be aligned on the fly as they are brought into the workspace. Not only does this allow you to align at the time of opening the file (which doesn't really save any time if you think about it), but it allows you to specify a bounds rect in the Open Movie Interface that only needs to fit around the object in the first frame, not the full drifted area of the object in all frames. This will save memory of course. Likewise this prevents the object from drifting outside the specified rect and being clipped by accident if you didn't make the original rect big enough in the first frame.
Added four menu commands to the View menu for viewing the RGB channels of the FrameStack individually. Note that the 1, 2, and 3 command key menu equivalents have been reassigned in accordance with this change. These menu commands work even when the various operations dialogs are open. Note, however, that the channel appearances interact with the preview rects in some strange ways. I am still working on designing the best possible interface and interaction for all the possible combinations of settings.
Removed the recently added channel checkboxes in the Histogram/Levels Interface. They are no longer necessary now that the much easier to use menu command replacements are available.
Documentation updates.
Resampling of the clips used to occur on the original opened-from-disk form of the clip. It now occurs on the modified form and makes the modified form the original form after resampling is completed. This means any operations become permanant and should be turned off prior to resampling if you don't want this, including dark frame subtraction, flat field division, normalization, median filtering, and alignment. In particular, this applies to deBayering as well, but deBayering must be done before resampling, as it will not work properly after resampling.
Increased the maximum slider value for the Mask Intensity sliders in the Unsharp Masking and Laplacian Sharpening Interfaces.

Keith's Image Stacker 4.2 keywords