Archive for the 'Photography' Category

AviStack V2.0 Released

Friday, July 23rd, 2010

Just a quick note to announce that AviStack version2 has been released. You can get it here. The web site has all of the details on what new features have been included.  Make sure you read the user manual.  It is the only way to learn about all of the new features and how to use them.  There is more goodness to come in the near future.  I’m working on a new deconvolution routine among other things.  I hope you enjoy it.

AstroMart Fee

Sunday, April 11th, 2010

AstroMart has recently started charging a $12 fee to access their Astronomy classifieds and Auction Site.   I wish them a slow painful death deserved by their arrogance.  Obviously, some people fail to grasp Web 2.0.  They had been delaying access to new listings by 30 minutes so “they” could skim the cream.  Then they arbitrarily adjusted the ending times of their auctions so people could not snipe. Now this.  No more for me – I’m outta here and hope you join me.  The opportunity to create a new astronomy-themed Classified/Auction site is upon us.  Anacortes is a close affiliate – perhaps a boycott is in order.  A sad, sad day.  Cloudy Nights runs classified ads. The site can be slow, but it appears to have all of the necessary ingredients – Items and Visitors.

Lunar Mosaic

Sunday, August 16th, 2009
Young Moon (click for larger size)

Young Moon (click for larger size)

I took these images on June 25, 2009 and promptly forgot to include it here. This is a 19-panel mosaic of the Moon with modest Libration (+4). Seeing was not as good as it was predicted to be. I wanted to shoot this at f/10 with a green filter, but had to use a yellow filter and shortened exposure. I’m still experimenting with gamma corrections. More often than not, I end up applying curves in Photoshop instead of simply tweaking the gamma. The Moon is actually a pretty tough subject with its high dynamic range.

Celestron C-11 telescope @ f/10
#8 Yellow filter
DMK31 Web Cam
Stacked best 300 of 1300 in AviStack.
Wavelets and RLD

MSI Wind upgrades

Sunday, April 5th, 2009

Well that took longer than it should have, but I managed to upgrade the memory and hard drive in my MSI Wind. The memory was easy – open the case and insert the SIMM – Done. The hard drive was a bit more difficult primarily because I wanted to clone the existing drive with all of the software I had already installed on it and had to do so without the aid of an external CD/DVD drive. I tried a lot of things and this is what ended up working for me. Planning for this upgrade I did buy a Thermaltake BlacX SATA to USB “adapter” which made this process easier since the drives just plug into the top of the BlacX. My target drive is a WD Scorpion 320GB 7200rpm SATA drive that uses slightly less power than the original 5400RPM 160GB Fujitsu. I partitioned the new drive with 3 partitions using my iMac and the OS X disk utility. The partitioning scheme was MBR. First partition was 39.5GB, slightly larger than the Wind’s C: drive. The second is an 80GB HFS+ for OS X – eventually. The third partition is a 200GB FAT32 partition I’ll share with whatever OS is booted. I moved the disk over to my XP notebook and (re)formatted the first partition. I had to do this after trying several other ways to clone the drive. I then downloaded Acronis True Image Home 2009 which has a fully functional 15-day trial. It is nice software and is reasonably priced at $50 – although it did not quite do everything it needed to do as you will see. I put the original Wind HD in the BlacX and made a full backup (including MBR) to an image on my notebook HD. This was a pretty fast process. I then swapped out that drive for the new Scorpion and restored the image to the first partition and replaced the MBR. OK good to go now, right? Wrong. After reassembling the Wind with the new drive I got a little bit further than I had previously using other tools, but came to an abrupt stop with a “Non-System Disk” error during boot. After a little reading I had concluded that the problem was probably the assigned drive letter (D: instead of C:) that True Image gave the clone (you can’t have 2 C: drives on a system). It appeared that there was no way around this. Just for fun, I decided to have a look at the disk using XP’s Disk Manager. So for the umpteenth time I disassembled the Wind and hung the HD on my note book. Naturally I could not change the drive letter to C, but I did notice that the third partition on the drive was marked active. Could it be that simple? I marked the first partition as the active one and reinstalled the disk in the Wind, again. It Booted! … and the drive letter of the boot partition was now C: -  just like I had hoped. So my Wind now has 2GB of RAM and a fast 320GB HD – it is also overclocked to 1.8GHz and is stable. For those who may wonder, it is just as quiet as the original. Oh, and it boots in under 30 seconds.

I hope this is of help to someone out there.

Autoguiding with the MSI Wind

Sunday, April 5th, 2009

One of the reasons I purchased the MSI Wind was for use in my observatory. Tonight I ran a successful auto-guiding test. The guiding setup consists of an Orion Star Shoot Auto-Guider (SSAG) on a William Optics Zenith Star 66 (focal length 388mm). The SSAG has a guide port that I connected directly to the auto-guider port on my AstroPhysics 900GTO mount. Despite its name, the SSAG is not a stand alone auto-guider and it requires a connection to a computer. The guiding software that came with the SSAG is PHD Guiding. It is a very simple, very effective, and free piece of software. PHD Guiding worked for me right away, no fiddling with parameters, no involved calibrations. You select the camera and the mount, click on a star, and it calibrates itself in a minute or so, and that is it. It is guiding from that point forward. The Wind was not struggling at all and the image downloads from the camera were very fast. It looks like this is going to be an excellent machine to run the mount. Next, I need to get ASCOM set up so I can test out Maxim DL and PEMpro. Then I can redo my periodic error correction and dial in the polar alignment of the mount.

A Quick Peek at the RegiStax 5 beta

Saturday, February 28th, 2009

Well the beta is out on a 30-day trial and I downloaded the beta this afternoon to do a little testing. I first tried it with my current test subject – an AVI from a night of good seeing. I fired up RegiStax v5 and selected 64×64 alignment boxes and then let it pick how many and where to place the boxes. The area of the Moon was near Walter so there were many features to choose from. RegiStax decided to put down 230 alignment points and distributed them pretty uniformly. It also avoided the area beyond the terminator. It took 24 minutes for the initial alignment, 1 minute to make a reference from the 50 best frames, 2 minutes to optimize, and 1 minute to stack the best 200 out of 1300 frames in the AVI. Total run time 30 minutes for 230 alignment points. Not Bad. I had just run the same AVI through AviStack on the same machine the night before with 2500 alignment points. That took 36 minutes. I reran the AVI through AviStack using only 230 alignment points ( I had to manually delete nearly 160 points because I could not get AviStack’s auto placement routine to lay down fewer than 390 points). AviStack ran through that case in 20.5 minutes. So, RegiStax is faster than AviStack except when you force AviStack to use the same number of points. When I looked at the RS version compared to the AviStack result using 2500 alignment points – after wavelet enhancement (using the same tool), I could easily tell where the RS processing could have used more alignment points. The problem boils down to this – when you use 10 times as many alignment points, the distance between points is 3 times smaller. This results in 3 times less distortion (on average) from seeing within any single stacking polygon. If your skies are like mine this will make a noticeable difference in the result. The quality of the final image with RegiStax v5 is still not as uniform as with AviStack. One other thing to know about RegiStax. It aligns and stacks to sub-pixel accuracy and so if your images are not properly sampled you will lose some resolution.

My next test was my old test AVI of the region near Aristarchus. This was an AVI where RegiStax had a tough time tracking some features in the darker areas of the Mare. I could not get v5 to complete the optimize step. The program would simply crash. I did not, however, try some of the new settings – this is after all a Quick Peek of the Beta on the day of release. It also decided that only 32 alignment points were needed. I’m going to have to spend some more time on this test case and learn some of the new controls that are supposed to help in these situations.

Here are a few problems I noticed in the beta which I assume are going to be easy to fix in the final release:

The status bar along the bottom has a place where RS reports Time Used and Time Left. For some reason that line is split in two – one above the other – but the single line height of the status bar cuts the top off of the top line and the bottom off of the bottom line.

I was running RS on Win XP under Parallels in coherence mode on my Mac. The first time I ran RS, it kicked Parallels out of coherence mode into a small window with scroll bars. It had apparently changed the screen resolution from 1920×1200 to 1900×1182!!! After restoring everything back to the way it was, RS did not repeat this the next time I ran it.

Here is one thing that I think is going to remain a problem:

One of the problems the previous versions of RegiStax had was that the reference created after setting the Limit frame count still had slight geometric distortions which only really became apparent when you tried to build a mosaic from multiple AVIs. I compared the RS result to the AviStack result using the difference mode in PhotoShop. AviStack reported that the seeing in this AVI was never greater than 2-pixels of relative shift – so this is a very quiescent sky I was imaging through. The comparison between the two results showed that only one alignment point had a slight relative shift. It was an area of sharp contrast around a 40×40 pixel crater. Not a definitive test, but given the problem I had around Aristarchus I suspect RS is still going to have problems with astrometric accuracy.

So, my quick peek tells me the following. RSv5 is faster than v4. There are more features to learn that should help with problem AVIs. If you are fortunate to live in a place where your sky provides excellent seeing or you are shooting at shorter focal lengths – you are going to like RegiStax v5 and can use most of the automated features. If you are like me with a sky that rarely cooperates – the jury is still out. I will learn the new features and report back here within a week.

DISCLAIMER: I am now contributing some post processing code to the AviStack program. You may feel that this limits my ability to remain objective. Fair enough. Try these tests out for yourself and report your results here. I’d love to hear from you.

New Lunar Mosaic

Sunday, January 4th, 2009
New Years Day evening Moon

New Year's Day evening Moon

After way too many days of cloudy nights/mornings and poor seeing, the new year brought a welcomed gift of a clear sky and calm winds. Seeing was OK – good enough for f/10 and a red filter on my C-11. I shot video of Venus, Mercury, and 44 views of the Moon. The latter I processed and combined into a mosaic. Click on the thumbnail to view the full resolution version. It is 8MB – be patient and don’t give your network a hernia.

This was done partly to relieve the frustration with the weather and also to test out a new version of AviStack (v1.74) before it is released for general use. This new version has several new features, one of which is a Wavelet enhancement tool. This mosaic is comprised of 34 frames, each of which were derived from the best 100 frames out of 1300. They were enhanced with the new wavelet tool using three layers (0.20 @ 120, 0.32 @5, and 0.45 @ -2).

I used my Celestron 11 at f/10 on my AP 900GTO mount with a red filter and a TIS DMK31AF03.AS firewire webcam. The gain was set to 350 and the expsosures were 1/38 second. AVIs were captured at 30 fps using the Y800 codec. Each 1300-frame AVI was captured in just over 45 seconds. I captured all of the data in about 30 minutes, but it took me two and a half days to process it and build the mosaic. I guess I need a faster computer.

Wavelets for AviStack

Wednesday, December 31st, 2008
Wavelet Processing Screen

Wavelet Processing Screen

As promised, I coded up an add-on to AviStack that performs wavelet based image enhancement. The functionality is similar to the Wavelets found in RegiStax, but are subtely different as you’ll see in a moment. But before I tell you more about the new capability coming to AviStack, I’d like to thank Michael Theusner, author of AviStack, for giving me the opportunity to contribute, and Cor Berrevoets, author of RegiStax, for discussing the Wavelet implementation in RegiStax with me. This wavelet processing capability should appear in V1.74 of AviStack.

There are a lot of different ways to define and work with wavelets. Wavelets are most commonly used in image compression. For the image enhancement process, we use something called a stationary wavelet transform. Basically, this is a special case of the wavelet transform where the image is not decimated between levels in the filter bank. A filter bank is a way of describing how an image is decomposed through the application of smoothing functions called kernels. The original image is smoothed by convolution with a kernel and the difference between the original and smoothed version is called a layer 1. The smoothed version is then convolved with another broader kernel. The difference between those two are called layer 2. This iterative process is repeated for every kernel/layer in the filter bank.

For image enhancement, the kernels are selected to capture or represent detail in the image at certain resolution scales. This module uses a Gaussian kernel and the resolution scale is represented by the Sigma value (sigma * 2.35 = FWHM for a Gaussian). Each layer has a Sigma as well as an Amplitude. Normally, if you take the last smoothed image from the filter bank and add in all of the layers you get the original image. If instead, you multiply a layer by a factor other than 1, you can enhance or suppress the detail associated with that layer. The Amplitude value in each filter/layer is just the multiplicative factor (well almost as you’ll see). At least that is the way it works in RegiStax. In my version for AviStack, I decided to streamline the code significantly, by adding the Layer times the Amplitude to the original image. So with AviStack, setting all of the amplitudes to zero gives the original image. It is a subtle but important difference that you’ll need to remember if you are a regular RegiStax user. Based on a quick survey of RegiStax users, I decided to only implement a Gaussian kernel. I could not find anyone who uses the default. One thing that worried me while enhancing images in RegiStax was that I could easily blow out the highlights. So for AviStack, I added a Show Clipping button which shows the user which pixels will be clipped to white if the image is saved as a 16-bit format. Lastly, I added a control to adjust the image gamma. I think you will find that this wavelet processing is very fast compared to RegiStax, so the results of any changes you make are immediately displayed. I’m not sure whether most RegiStax users fully understood the implications of the Initial and Step controls, so I did not implement them. The user is expected to select the appropriate Sigma value – which in almost all cases should increase with successive layers (see figure as an example). Let’s get on with an introduction on how to use wavelets in AviStack.

There are six sets of controls for the six wavelet levels. Each set is comprised of a Sigma and Amplitude control. The Sigma control sets the width of the Gaussian for that wavelet. The current valid range of Sigma is from 0.16 to 2.00. The Amplitude control determines how strongly the wavelet is applied to the image. Its range is from -20 to 200. Clicking on any slider or Clicking & Dragging the slider bar will allow you to change the value. For single step adjustment (0.01), arrows are provided at each end. Results are displayed for the entire image immediately (or after the button release of a Drag). Near the edge of the image, data required for the wavelet does not exist. Rather than create data, the wavelet is not applied and instead the image is cropped. The number of pixels cropped from each side can be estimated by the following formula (#pixels = Integer( (largest sigma) / 0.16666)). So, if the largest sigma is 0.3 then 1 pixels will be cropped from each side. Two will be cropped if the largest sigma is 0.34 – and so on.

Pressing and holding the Show Clipping button below the wavelet controls will show where the processed image goes beyond the 16-bit range of TIFF or PNG files. Bright pixels with values beyond 65535 display as black while this button is held down. It is useful for monitoring the effect of wavelet processing on the detail in the brightest areas of the image.

There is a control to adjust the gamma. Again, results are displayed immediately.

There are a set of save buttons for FIT, 16-bit TIFF and 16-bit PNG files. Selecting one of these will bring up the usual save dialog. The file name defaults to the name of the original file with ‘_wvs’ appended followed by the appropriate suffix for the file type.

Finally, the two remaining buttons complete wavelet processing and return the use to the main AviStack screen. These currently do exactly the same thing – exit the wavelet screen, but will behave differently in a future version of AviStack.

Differences from RegiStax:
While these controls should be familiar to a RegiStax user, there are differences. The Sigma value is roughly equivalent to the RegiStax value times 2. Unlike RegiStax, the Sigma should get larger with successive layers since there is no other scaling being applied to the width. The Amplitude setting is a multiplicative factor applied to the wavelet. Unlike RegiStax where an amplitude of 1 represents no change, the enhancement of wavelet layers in AviStack are effectively turned off of by setting the amplitude to 0. Any zero amplitude layer followed by a non-zero amplitude layer is still calculated and impacts subsequent wavelet layers. Only those wavelets that are needed are applied. For example, If the third wavelet is the last non-zero amplitude layer, then only 3 layers of wavelets are used (as seen in the figure). Negative amplitude combined with larger sigma in the last layer used has the effect of reducing the degree of clipping in the brightest areas of the image.

My moon photos on Discovery Channel

Tuesday, December 2nd, 2008

I was contacted several weeks ago about the use of some of my Moon photographs for a TV show. They were looking for photos of lava tubes. Of course, the most easily seen ones are collapsed tubes, but they did not care. They saw some of my photos while they were mining flickr. We exchanged emails and refined what they were looking for and I happened to mention that I also had some movies of the moon. So, I sent them several photos and an AVI. I’m not really sure what if anything they used, but given the fact that I just got an email announcing the premier of the show just moments ago, I can only surmise that something was use in production. The show, Sci-Trek: Mining the Moon, will premiere on the Discovery Channel Thursday, December 11 at 10 pm ET/PT!

RegiStax vs AviStack

Saturday, November 15th, 2008
A comparison between stacking in RegiStax (Left side) and AVI Stack (Right side). Click image to see the full resolution image.

A comparison between stacking in RegiStax (Left side) and AviStack (Right side).

I was recently introduced to a new and free (as in beer) stacking program and have been testing it. The program is called AviStack and it is written in a language called IDL. I’ve been programming in IDL since 1981 and have considered writing an image stacking/processing application with it for some time. Someone has beaten my to the punch and done a very good job in the process. One particular thing of interest is that there are free IDL virtual machines for most operating systems and so AviStack will run on just about anything. So the question is: Is it better than what is out there already?

We’ll see in a moment, but first, What is Stacking? Stacking is pretty much what it sounds like. Multiple images of the same thing are aligned and averaged together to improve the result. Averaging multiple images allows you to increase the signal-to-noise ratio of the image and overcome geometric distortions due to atmospheric turbulence (aka Seeing). See this post for a glimpse at the magic of stacking. The stacking process is comprised of a number of algorithms. The individual frames of the AVI have to be graded for quality and then aligned with a master image. When imaging a large object such as the Moon, the stacking process is done on several pieces of the image separately and then combined into the full frame. The reason for this is that atmospheric turbulence causes regions of the images to move relative to one another as well as warp and blur. Therefore, the stacking program has to look at every frame of the AVI and decide what, if any, parts of it are usable. Since the part of the image the program wants to use is probably warped/distorted geometrically, the alignment algorithm is another important task that has to be done well. Finally, the program has to keep track of what part goes where during the stacking/averaging process.

The image above is a side by side comparison of images produced by the “Industry Standard” – RegiStax (Left) and the new comer – AviStack (Right). Click the (or any) image to get the full resolution image to get the full impact of the comparison.

RegiStax has been around for a long time and is probably the single reason why amateur astronomy has made huge strides in the last several years. It is also free (as in beer) and is under active development. It works on just about any type of object and has a lot of controls to learn. The manual is borderline useful (being a translation to my native language) and so learning what each control does is more or less trial and error. Nevertheless, it is easy to learn. One of the most powerful aspects of RegiStax is its post-processing capabilities. It has a sophisticated sharpening tool based on Wavelets that is simply a must have for me. This comparison is based on RegiStax version

In my comparison, the RegiStax result (Left side) was produced using the Human grading algorithm and 20 alignment points. The stack is the best 200 out of 1300 frames. The image was sharpened with Wavelets in RegiStax and a modest Adaptive Richardson-Lucy Deconvolution (RLD) in ImagesPlus. I applied a Gamma correction of 1.30 in PhotoShop.

The AviStack result (Right side) used a 32 pixel grading grid and had about 1700 alignment points. The TIFF output file was converted to RGB in PhotoShop so that RegiStax would read the file for subsequent wavelet sharpening. As with the other image, a mild 5-iteration RLD with a 3×3 Gaussian PSF was applied in ImagesPlus and the gamma adjusted in PhotoShop.

As you have probably already concluded for yourself, the AviStack result is clearly superior. The overall resolution increase is striking. Let’s dig into the details of the good, bad, and ugly and try to uncover what is behind the differences. To do so, I’d like to discuss the differences between the way each program approaches the problem. The steps I’ll consider are ‘Setup’, ‘Grading’, ‘Alignment’, ‘Stacking’, and ‘Post-Processing’.


RegiStax Setup Screen

RegiStax Setup screen

RegiStax requires that you select features in the image you wish to use for grading and alignment by placing square regions of various sizes manually with the mouse on a single frame from the AVI. You need to be careful placing alignment points near the edge of the frame since in most cases the image drifts during the length of the AVI. Having an alignment point drift out of the frame is a bad thing in RegiStax. In my test case I placed 20 alignment points/squares (128×128) and then saved my settings. RegiStax does have an automatic mode to place alignment points, but I have never really gotten satisfactory results with that and always place my points manually. The maximum number of alignment points in RegiStax is 99.

AVI Stack setup screen

AviStack Setup screen

AviStack first needs to determine the drift in the image over the course of the AVI. To do this the user selects two features in a frame and places small squares on them with the mouse. The program then runs through each frame of the AVI to calculate the direction and rate of image drift. AviStack also estimates the amount of distortion due to seeing. When completed the user then sets a few controls that will determine how the alignment points are placed. There are two controls that identify regions that are too dark (space is dark after all) or too bright (overexposed) where there is no need to try to recover information by doing an alignment.

AVI Stack Reference Points

AviStack Reference Points screen

Once the controls are set, a press of a button will generate many alignment points automatically. The program generated 1688 alignment points for my test case. Points can be added or removed manually if needed.

Pros and Cons: AviStack is certainly easier to setup primarily because the automatic alignment point selection works well. I don’t have to worry about image drift with AviStack either. Both have the ability to save the point placement information for easier reprocessing. I’ll give AviStack a slight advantage in the Setup category.


RegiStax Grading

RegiStax Grading screen

Having performed the Setup, hitting RegiStax’s Align button performs an initial alignment and quality estimation or Grading of the areas around each alignment point (within the specified box). RegiStax reads the AVI file multiple times, once for each alignment point. Using FFT-based algorithms to calculate rough integral pixel alignment and image quality, it chugs through all of the alignment points. This process is not fast, but it does allow the user to monitor the process and correct problems. The problems encountered most often are an alignment box drifting off of the edge of the frame and losing the ‘lock’ on a feature. The former is not a frequent problem if you place your alignment boxes carefully to begin with, but the latter is a problem I frequently encounter. This initial alignment and grading step is not a fast process.

AVI Stack Grading

AviStack Grading screen

The approach to grading taken by AviStack is very different. The user selects a grid size and the program divides each frame into blocks of that size. The AVI is read once and a quality grade is calculated for each box. During this step the user also selects how ‘Deep’ the final stack will be (i.e., how many frames to stack). This process is as fast as it is for RegiStax to grade one alignment point.

Pros and Cons: RegiStax is very flexible in how the image is graded. I have found that different grading methods work best depending upon the type of object (Moon vs a planet like Saturn) or the seeing conditions (poor vs good). AviStack is very fast at this step of the process, but you have to decide how deep your stack is up front and regrade the AVI if you decide to change your mind. This is not a problem since you do not have to go back to the very beginning (as with RegiStax). In RegiStax, the stack depth is set after grading so the user can look at the frames going into the stack before choosing the depth. The Grading step is a toss up between the two as a winner will be determined by whether the user values flexibility vs speed.


RegiStax Alignment

RegiStax Alignment screen

After the frames have been graded, the RegiStax user needs to decide on the depth of the final stack by setting a slider to the last frame (for the first alignment point) and hitting the Limit button. At that point two new tabs become active and I usually create a reference frame. This is an important step in the process as the reference frame is used for final alignment. The reference frame is created by quickly stacking some small number (like 50) of the best images (based on the first alignment point). This is a single point alignment. Stacking based on a single point alignment averages out the warping due to seeing, but does not produce the optimal image quality over the whole image. I almost always set my first alignment point to be a prominent feature in the middle of the frame. The user is allowed to slightly sharpen the reference frame with wavelets. Once again many options are available during the alignment step. Once set, alignment commences with a press of the Optimize button. Then you can go off and read a book, get something to drink, something else to kill some time while RegiStax reads the AVI several times (again) once for each alignment point. Alignment is done to sub-pixel precision by calculating the position of the maximum of the local correlation matrix. Again things can go wrong here as it is possible to lose lock on an alignment feature. RegiStax does have a few options to predict the track of features as the images drifts over the duration of the AVI, but it is not apparent that this prediction is remembered from alignment point to point. It could be used to help maintain lock.

AVI Stack Alignment screen

AviStack Alignment screen

AviStack reads the AVI file once during the alignment step. For each frame, it uses the quality estimates for each quality grid box to determine which, if any, alignment points fall in a box that is good enough to be used in the stack. Those that do are aligned with respect to the feature found in a reference frame which is simply the average of all frames in the AVI. As the alignment is proceeding, the user sees the location of the original alignment points along with the location of the feature (both indicated by colored crosses on the image). Under all but the worst seeing conditions, the pattern of deviations should be reasonably smooth (correlated within a small area). Random fluctuations in the pattern of deviations indicates a problem which is correctable and reasonably well addressed in the manual. AviStack can track very low contrast features exceedingly well. As a result it can extract features in regions that you would otherwise think are featureless.

Pros and Cons: AviStack is a bit faster at this step in the process as well. It is also a very robust process. RegiStax is more likely to lose lock on a feature (although occurrences are not very common). In the lower left corner of the test comparison image at the top of this article you will notice that RegiStax had a problem locking onto the craters in the darker regions which resulted in faint displaced doubles. If you change your mind on the stack depth in RegiStax (or anywhere else in the work flow) you pretty much have to go back to the beginning. In some cases you should probably exit the program and restart it. The manual clearly states that canceling an operation can leave the program in an unpredictable state and that has certainly been my experience. The winner in the Alignment stage is clearly AviStack due to its speed and accuracy. Once again RegiStax does offer more flexibility, but I personally rarely use it.


RegiStax Stacking screen

RegiStax Stacking screen

RegiStax uses the location of the alignment points to divide the whole image area into polygonal regions with one alignment point inside each region. Using the best frames determined for each region it then interpolates the image (yes this means a potential loss of resolution for undersampled images) to the destination grid at each point in the region’s polygon and averages the frames together. Again in the usual RegiStax way there are many options to control and tailor this process to the user’s needs. One that is particularly useful is the degree to which adjacent regions are feathered to blend across polygon boundaries. The polygons can be significantly larger than the alignment box and so the quality of the region of the frames outside the box can be poor. At least with the real world seeing that I have where I live, there is significant smearing during stacking due to image warping within the large polygons.

AVI Stack Stacking screen

AviStack Stacking screen

Here is where all of those alignment points ultimately pay off. Like RegiStax, AviStack stacks the interpolated sub-frame data into little polygon regions with a single alignment point in each one. The polygons are so small, however, that the blurring due to warpage from seeing is minimal. The result is that very fine detail is preserved and enhanced by uniformly accurate alignment.

Pros and Cons: Simply because of the sheer number of alignment points and the corresponding smallness of the polygonal sub-regions, AviStack will produce a more uniformly resolved result with a higher average resolution than you get from RegiStax. There is no aspect of RegiStax’s performance or flexibility that can outweigh this. AviStack wins hands down.


RegiStax Wavelet tool

RegiStax Wavelet tool

You will need RegiStax simply because of its Post-Processing tools. The Wavelet sharpening process has to be seen to be believed. It is very powerful and a little goes a long way. It is very easy to over sharpen and produce an unrealistic image. This is very much a learn by doing process and it took me over a year to get it to do what I want. It was time very well spent.

AviStack has no Post Processing capabilities. The TIFF format you can save the image to is not compatible with RegiStax, at least for gray-scale, monochrome images. I usually convert it to RGB in PhotoShop before going to RegiStax for the Wavelets.

Pros and Cons: RegiStax wins by default and would put up an excellent fight had AviStack offered any tools.

Closing thoughts:
You will have to have both programs. AviStack is a fabulous new stacking program that produces astounding results and at breakneck speed. Although I have not covered it here, AviStack does not work for me with planetary images (at least on my system where I’m not using a V7.0 IDLVM, but rather IDLDE V6.3). The author assures me that it does indeed work, so I must be doing something wrong. I’ll update this once I get it working. RegiStax has a wavelet sharpening tool that you simply must use. RegiStax V5 is due out in the near future and I will certainly try that out as soon as I can and revisit this comparison. I have reprocessed and compared a lot of images with RegiStax and AviStack. A few of them from nights of excellent seeing and of detailed terrain produced close if not indistinguishable images. I have not seen a case where RegiStax produced a better image, at best it was just as good, but often AviStack’s result was superior (especially when it came to the uniformity of quality).

The current trend among the top tier lunar imagers is to stack only a few images. They will stack only the best 20 out of thousands to make sure they get the best of the best. I think AviStack is going to change that – a lot. Because of the very small regions it uses for alignment and stacking, users of AviStack can and will stack more frames. There is no penalty for doing so.

AviStack has a bright future. I would like to see the author publish an API and provide hooks where 3rd party IDL gurus like myself can add tools to the program. I’d like to add a mosaic tool, for example, and I’m sure someone would generate a host of post-processing tools like Wavelets or RLD or …

Both programs have features and short-comings that I have not covered that others will deem essential or show-stopping. I do encourage you to give both of these programs a try and let me know what you think.