Image Enhancement Techinques

Explanation of the Image Enhancement Techniques Available


Here you can read an overview of the different image enhancement techniques available, the parameters they require, and download the programs if desired. To download source codes for all the techniques, as well as the explanatory documents and the sample image, click the button below.


Click here to return to the Enhancement Facility.

We provide a more in-depth description of the enhancement techniques in this document.
For a tutorial on how to use the Facility, click here.
To download the image used in the tutorial, click the button below.

Division by Azimuthal Average: Division by Azimuthal Average converts the input image into polar coordinates so each horizontal row in the polar representation located at a given radial distance from the nucleus represents different azimuths of the original image. It then finds the average value of all azimuths for a given radial distance, excluding outliers, and divides each azimuthal value by that average. This helps to emphasize azimuthal changes for a given radius that can be hard to identify in the original brightness distribution. However, because each radius is dealt with separately, values in different radii of the enhanced image should not be relied upon for comparisons.

To download the executable or the source code for the Division by Azimuthal Average technique, click the appropriate button below.

Division by Azimuthal Median: Division by Azimuthal Median is very similar to Division by Azimuthal Average. It converts the input image to polar coordinates so each horizontal row located at a given radial distance from the nucleus represents different azimuths of the original image. It then finds the median value of all azimuths for a given row and divides each azimuthal value by that median. Because the median is less affected by outliers than the average, this process does not exclude outliers. This helps to emphasize azimuthal changes for a given radius that can be hard to identify in the original brightness distribution, as well as deal with images with many stars, cosmic rays, or dead pixels that may skew the average, even after excluding outliers. However, because each radius is dealt with separately, values in different radii of the enhanced image should not be relied upon for comparisions.

To download the executable or the source code for the Division by Azimuthal Median technique, click the appropriate button below.

Azimuthal Renormalization: Azimuthal Renormalization adjusts the azimuthal values for a given radius to be within a certain range. It first converts the input image to polar coordinates so each horizontal row represents a given radial distance from the nucleus of the original image. It then finds the minimum and maximum value for each radius, excluding outliers, and adjusts each value of the azimuth based on the respective minimum and maximum values.

To download the executable or the source code for the Azimuthal Renormalization technique, click the appropriate button below.

Division by 1/ρ: Division by 1/ρ adjusts the values of each pixel based on its distance from the optocenter. The idea is that values closer to the optocenter are brighter than those further away, and by multiplying each value by its distance, it compensates for the radial fall-off of brightness. This technique is more appropriate for dust (continuum) images, but not for gas images.

To download the executable or the source code for the Division by 1/ρ technique, click the appropriate button below.

Radially Variable Spatial Filtering: Radially variable spatial filtering adjusts the value of each pixel based on the values of 8 pixels in a square around it, referred to as the kernel: those directly above, below, and on either side, and the corners. The size of the kernel used to choose these pixels increases as the center pixel moves further away from the nucleus/optocenter. Put precisely, the distance from the center pixel to an edge pixel is A + B * ρN, where A, B, and N are the values that define the respective kernels, and ρ is the distance from the kernel to the nucleus/optocenter. This behavior of the kernel allows one to better enhance features that are far from the nucleus/optocenter.

The Radially Variable Spatial Filtering Mosaic accepts two values for each kernel term-A, B, and N-and applies the radially variable spatial filtering algorithm eight times using each combination of kernel values. This is useful to test out a variety of kernel values, but creating the mosaic takes a signficantly longer time than the other options.

To download the executable or the source code for the Radially Variable Spatial Filtering technique, click the appropriate button below.