Andromeda Image Processing

The difference between a poor quality captured frame by your device and a more clear and in general better result is done by the processing done in real time by the application according to the settings described below. You may look at the processing settings exactly as filters or black boxes arranged in a certain order (from the top to the bottom of the list), through which the initial captured frame is passed and improved (or worsened in some cases). Actual displaying on the application screen or saving into file occurs only at the end. Also partially processed images may be captured to become dark frames, flat or bias frames which subsequently will be used in the processing of the real signal.

Take a look over the settings depicted below:



The settings are logically grouped into 3 sections:

Signal Enhancement
When the image is first captured it is encoded in a data stream in a specific way. The encoding is depicted by a description called a FOURCC code. The following represent valid FOURCC codes: I420, YUY2, RLE8 (the four characters are the reason why it is called a Four CC).

Currently, Andromeda supports decoding for the following streams:


 * 1) RGB24
 * 2) I420 and IYUV
 * 3) YUY2

These are the most used encodings. Whenever a captured stream is encoded in an unsupported format, the application will explicitly show a message on the screen, asking the user to contact the developer and transmit the unsupported encoding and accelerate the updating process.

After data stream decoding, a conversion to RGBA pixel format is made in order to standardize all further processing.

Dark Frame Subtraction
The subtraction of the dark frame is the first processing effected on the image as it has the larges impact and results. First, you will have to capture a dark frame by using the same device and the bottom icon depicting the "Capture Dark Frame". This dark frame will consist of noise over a black background (you have to capture it assuring a complete darkness, by covering the lens of the camera).

You may either use an averaged captured dark frame or an instant captured dark frame, whichever gives you the best result. The operation executed on the captured image is literally a subtraction of the noise contained in the dark frame.

You may very well use this operation for other purposes than elimination of noise. For instance, you may find useful to eliminate a background when taking shots of an object.

Stack Frames
Here you have the option of stacking together a number of frames, by averaging them. This is useful when the subject is not moving or the frame rate used for capturing is very high. Otherwise, it will get you blurred images. The averaging itself will provide you with a more free of noise image (by averaging lets say 5 frames at a time of the same object under the same unchanged conditions, each processed pixel will have the mean value more closer to a noise free value, as the random noise is to be reduced in the process of averaging).

The result will replace the actual input frames. So when having set the capturing device at 15 frames per second and using a 5 frames stacking, 3 frames per second will be the new rate at which Andromeda will further process the frames.

You also have the option of only keeping the minimum value of each pixel over the stacked frames. This is applicable only in cases the noise is always an addition to the signal, otherwise it is not effective when random noise means also positive and negative values.

Bias Frame Subtraction
It is identical to the dark frame subtraction and is actually a recursive noise elimination step, either by using a very fast black frame captured (where only the internal noise of camera's circuits is taken), or by using any other type of frame averaged or not. Try it in order to find the best suited combination of dark frame / bias frame.

Flat Frame Correction
Flat frames are used to eliminate dirt marks present on the CCD chip window. Normally, this wouldn't be necessary, unless you practice the lens removal in order to exchange it with an adapter for astrophotography for instance or when changing filters. Any operation that leaves the CCD chip exposed presents itself with the possibility that a dust particle will contaminate the factory clean window of the CCD chip. Cleaning often is to be avoided as it can lead to scratches on the surface of the window.

Thus, you may instead use a white or so called flat frame to correct image imperfections caused by dirt and dust particle as long as they present themselves as darkened areas on captured images. A white frame will tell the application how to apply corrections on real images.

Grouping pixels
Usually, amplification of any type of signal is made by multiplying all its values with a factor. By selecting this option, you're telling to the application that you would rather want to make use of the signal captured by multiple cells on the CCD chip, compromising in exchange the resolution of the image. In this case, instead of multiplying each pixel value with a fixed factor, the application will add each 4 adjacent pixels and make use of the actual available information contained in the frame in order to provide amplification. Each group of 4 pixels will be treated as one.

One should not understand from this that the sensibility of camera becomes 4 times greater in the very true sense. Adding four values of merely noise gathered from four sensors not receiving any valuable information below a certain threshold will give in result merely noise in reduced resolution. In other cases this functionality may provide you with good results.

Secondary Dark Frame Subtraction
This secondary noise elimination after the original dark frame subtraction is provided to further refine noise reduction after a multiple step processing of the frame. One will notice that even if, by removing the dark and bias frames, image seamed clear of noise, it will not actually be entirely eliminated. Amplifying the image will make noise visible, which otherwise would be not. A second dark frame removal might come in hand if this is the case

Signal Alteration / Effects
Only two image enhancement tools are provided at this point: Overlay color settings and convolution filter.

Overlay Color Settings
As the white balance and gamma correction applied by the camera software may or may not provide with the desired results, you may use the brightness, contrast and gamma settings included in the real time processing engine of Andromeda to fine tune the image in order to get the best result of it.

By checking the Do Color Overlay check box, you are enabling the application to apply such corrections over the image. To access the settings you just have to click the button with red/green/blue gradients drawn.



On a small pop-up window you will be able to change settings of brightness, contrast and gamma for all color channels or for each individual one and to preview the effect in real time on the capturing screen of Andromeda. You may reset the values to default ones (neutral values) by pressing the Reset Values button.

Convolution Filter
This technique is used by all professional image editing applications such as GIMP or Adobe Photoshop. By using a matrix based mathematical computation, the application can induce modifications in the image of linear nature. This page will not enter in details regarding this process. It is sufficient to say that effects such as sharpening, blurring, linear and bi-linear filtering, edge detection are usually implemented by using this technique.



Andromeda lacks at this point the capability of defining a set of multiple filters to be applied on the processed image. A single filter may be applied at a time and a list of 5 predefined filters are already available from the Filter Settings Pop-Up window. To access it, press the button with strange color bands near the Apply Filter check box.

By checking the Apply Filter check box on the main window of Andromeda you are enabling the filtering effect.

You may try different settings and examples will be provided inside this documentation as the content will be developed further more.

Frame capture settings
These are operations executed over the completely processed frame and affect which frames and how they will be displayed/saved.