HaloStackby Panu Lahtinen (pnuu a iki fi) This page is obsolete. Check documentation page for the new version.Newest Windows binary available here.Sama suomeksi täällä. Contents:HaloStack is a simple, platform independent image stacking software mainly designed for stacking ice halo photographs. HaloStack is available only as commandline version, but a graphical user interface will be available some day. A simple image alignment can be used, and it works with photographs taken with semi-transparent blocker in front of the Sun. The alignment works quite well also with images taken from tripod without a blocker, but the alignment takes much more time as the alignment area is much larger. Output images are saved in PNG format. All average stacks are 16-bits/channel whether the used images have been 8-bit or RAW image data with higher bit-depth. Other image stacks are saved with the same bit-depth of the original images, ie. output will be 8-bits/channel for JPG-images and 16-bits/channel for input image files with higher than 8-bits/channel color data (eg. RAW and 16-bit TIFF files). For very basic use, only Python with Numpy and PythonMagick libraries are required. Additional external libraries are needed for some features:
Download and installUbuntuInstall by extracting the archive to a suitable directory. See usage examples below.Download HaloStack v0.1.2 Python scripts: .tar.gz, .zip Open a terminal and paste this command to install prerequisites:sudo apt-get install python python-numpy python-pythonmagick ufraw python-h5py python-scipy WindowsIn Windows, there's two choices. If you are not going to modify the scripts, it is advisable to use the bundle with all dependencies: Download HaloStack 0.1.1 bundle for Windows: 32-bit, 64-bit Other choice is to download the Python scripts (see installation instructions for Ubuntu) and install the dependencies listed below.
TODOThese features are planned, but they have not been implemented yet.
Commandline parameters-a FILE, --average-stack FILE
Calculate average of the images and save it as FILE in PNG format
with 16-bits/color.
-m FILE, --max-intensity-stack FILE
For every pixel location, select the pixel with the highest
overall brightness (R+G+B is largest). Image is saved as FILE in
PNG format with the same bit-depth as the input images.
-M FILE, --max-deviation-stack FILE
For every pixel location, select the pixel where standard
deviation between the R/G/B colorchannels is greatest. Image is
saved as FILE in PNG format with the same bit-depth as the input
images.
-c FILE, --max-color-diff FILE
For every pixel location, select the pixel with greatest color
separation, that is max(R,G,B) - min(R,G,B) has the highest
value. Image is saved as FILE in PNG format with the same
bit-depth as the input images.
-e FILE, --median FILE
Calculate median value for each pixel location. With many images
this will be very slow and heavy on harddisk read/write
operations. Image is saved as FILE in PNG format with the same
bit-depth as the input images.
-u R,A[,S[,T]], --pre-usm R,A[,S[,T]]
Apply unsharp mask (USM) filter to the images before stacking.
R - radius of the mask in pixels
A - amount of the sharpening
S - sigma, or radial weight of the mask [optional]
T - threshold, only pixels with higher value than this will be
sharpened [optional
-U R,A[,S[,T]], --post-usm R,A[,S[,T]]
Apply unsharp mask (USM) filter to the completed stacks as the
last operation before saving. For parameter definitions, see
above.
-b FILE, --base-image FILE
Image used as a reference for alignment and inter-image brightness
normalization. If omitted, the first image will be used as a
reference.
-r x,y,s, --align-reference x,y,s
Align images by finding the most similar location compared to a
reference. The reference area is defined by center coordinates
(x,y) and area size s. Reference area is a square 2s+1 by 2s+1
pixels. The origo (0,0) of the pixel coordinates is at the
top-left corner of the image. By default, the reference data are
taken from the first image. If base image has been set with -b
FILE, the reference data are selected from that image.
-s x1,y1,x2,y2, --align-search-area x1,y1,x2,y2
To speed-up alignment calculations, the search area can be limited
by giving top-left (x1,y1) and bottom-right (x2,y2) corners of an
area that contains the alignment point in all images. The origo
(0,0) of the pixel coordinates is at the top-left corner of the
image.
-n NUM, --normalize NUM
Normalize image intensities before stacking. Number NUM defines the
level to adjust the median of the image to. If NUM is set to zero,
images are normalized to the first image or, if defined with -b,
to selected base image.
-N x1,y1,x2,y2, --normalize-area x1,y1,x2,y2
Calculate the normalization values from the area defined by
top-left (x1,y1) and bottom-right (x2,y2) corners. The origo (0,0)
of the pixel coordinates is at the top-left corner of the image.
-t NUM, --correlation-threshold NUM
Require the correlation (R^2) between reference and the best fit
to be atleast NUM. Correlation can be within range from 0 to 1,
where 1 is perfect fit. Default is to allow all images to be
included in the stack, ie. -t 0.
-R X1,Y2,X2,Y2,S, --rotate-points=X1,Y2,X2,Y2,S
Define two square-shaped areas (2S+1 x 2S+1) that are used to
rotate images so that these points are on a horizontal
line. Squares are centered at (X1,Y1) and (X2,Y2). The origo (0,0)
of the pixel coordinates is at the top-left corner of the image.
-O STR, --output-images STR
Save individual frames as PNG files. These files can be used to
speed up the processing if RAW image files are used and stacking
needs to be done again. This option can also be used so that it is
possible to hand-adjust single images if the alignment process
fails.
Usage examplesBelow examples assume that you are using pure Python version. If you are using the bundled version for Windows, you need to replace "python halostack.py" with plain "halostack". In linux it is possible to run the stacker without the extra call to Python interpreter, ie. "halostack.py" is sufficient.
Test materialHere you can find some example images to test how the stacking works.
|