Development - PCL Processing Modules
Source code of these modules is avalaible per request.
These modules are provided as development processing tools, prior to their inclusion as standard modules in the current PixInsight Core distribution.
-----------------------------------------------------------------------------------------------------------------
TGV Module (Development release)
Collection of convolution processes.
Downloads: Windows - Linux
Included Processes:
Name: TGVDenoise
Description: Powerfull noise reduction tool. Now it includes a more flexible engine, capable of handling images with different noise models.
Category: NoiseReduction, TotalGeneralizedVariation
Name: TGVInpaint
Description: An inpainting algorithm. A mask tells the process wich pixels to replace, using first a precondition algorithm, and then TGV-based diffusion. Useful for removing unwanted objects (bad columns, blooming artifacts, stars, etc).
Category: Painting, TotalGeneralizedVariation
Name: TGVRestoration
Description: An deconvolution regularized with TGV. Gaussian and Poisson noise models implemented.
Category: Deconvolution, TotalGeneralizedVariation
-----------------------------------------------------------------------------------------------------------------
CMConv Module
Collection of convolution processes.
Downloads: Windows - Linux
Included Processes:
Name: Blur
Description: Very simple implementation of "average type" low pass filters. Now with an iterations parameter. Note the "Preserve luminance" option, to reduce chrominance noise.
Category: Convolution
Name: ButterworthFilter
Description: Band pass filter, that may work as a high pass (sharpen) or low pass (blur). Please note that this algorithm generates alliasing artefacts, specially the low pass version. Not recomended, but for educational purposes. Source code gives a nice starting point for Fourier analysis and filtering.
Category: Convolution
Name: GradientMapper
Description: This process calculates the gradient of a image (with user defined filters) and creates a new image with the gradient modulus. Gradient angle output is optional.
Category: Convolution
Name: Sharpen
Description: Simple implementation of laplacian like high pass filters. Good job with small scale contrast enhancement.
Category: Convolution
-----------------------------------------------------------------------------------------------------------------
CMGeneral Module
Collection of general purpose processes, mainly preprocessing.
Downloads: Windows - Linux
Included Processes:
Name: FFTRegister
Description: This is an implementation of the FFTRegistration script, by Juan C. with a wavelets optimization. In some cases, isolating a single wavelet layer generates best results, specially when noise is prominent at high frequencies. In the future this process will include rotations and scale variations too. Those algorithms are not working as expected, so only translations are implemented right now (which is still very useful in most multiple frames acquisitions).
Category: ImageRegistration
Name: SelectiveBlend
Description: Blend a grayscale image with color channels by user defined percentages. Useful for narrow band images blending.
Category: ColorSpaces
-----------------------------------------------------------------------------------------------------------------
CMIntensity Module
Collection of intensity transformations processes.
Downloads: Windows - Linux
Included Processes:
Name: GammaStretch
Description: A simple gamma stretch, with RTP.
Category: IntensityTransformations
Name: HistogramEqualization
Description: The goal of this process is to create a transfer curve that will generate a flat histogram. This means, pixel values will be distributed equally along the dynamic range. Fast and simple algorithm that works well in many daytime pictures (manually extract luminance). Not so useful with astronomical images. Future development will include histogram specification, that will allow better results in other applications.
Category: IntensityTranformations
Name: LogStretch
Description: Another function to stretch the pixel values, this time using logarithmic scales. Fast, and nice contrast.
Category: IntensityTranformations
Name: QuickSTF
Description: Instead of changing the STF by back and white points, and a MTF, this process defines two Brightness and Contrast parameters. An interactive mode lets the user to change the STF by clicking on the image, and the pixel coordinates will modify the SFT parameters. Funny image inspection.
Category: IntensityTranformations
-----------------------------------------------------------------------------------------------------------------
CMSegmentation Module
Collection of processes related to mask creation, object detection or feature extraction.
Downloads: Windows - Linux
Included Processes:
Name: CHT
Description: CHT stands for Circular Hough Transform. This algorithm transforms the image into a parametric space, where the intensity of the pixels is a measure of the probability of having a circle centered at that position. Different radius are calculated into different alpha channels.
Category: ObjectDetection
Name: ColorRange
Description: This process creates a new binary image that reflects the selection of a cube or spherical selection around a user defined "color". This selection may be defined in various space colors, giving a lot of freedom.
Category: MaskGeneration
Name: LHT
Description: CHT stands for Linear Hough Transform. This algorithm transforms the image into a parametric space, where the intensity of the pixels is a measure of the probability of having a straight line. X axis gives the inclination angle, and Y axis the absolute minimal distance from the origin (0.0).
Category: ObjectDetection
Name: ReadPSF
Description: Very simple implementation of the StarStatistics class, to evaluate PSF fitting by fitting gaussian functions to star shapes using a maximum likelihood approach.
Category: Image
Name: Seed
Description: More commonly known as the "Magic Wand". This algorithm plants a seed, and through local and global comparisons, determines a similar neighborhood.
Category: MaskGeneration
-----------------------------------------------------------------------------------------------------------------
HDR Module
Collection of processes related to high dynamic range compression.
Downloads: Windows - Linux
Included Processes:
Name: HDRCompresion (HDRC)
Description: Gradient Domain HDRC, using a multiscale gradient evaluation and attenuation function. Good job with daylight frames. Best results working with linear data. Astronomical usage needs refining, or creating a new attenuation algorithm based on this. Feedback is highly welcome.
Category: HDR
Name: HomomorphicFilter
Description: In the logarithmic scale, luminance and reflectance properties of the image may be separable by high ans low frequency components. A filtering process in the Fourier domain enhances local scale while comprising the dynamic range. Fast algorithm.
Category: HDR
-----------------------------------------------------------------------------------------------------------------
InterChannelCurves Module
Description: This process uses a user defined color space channel to define a amplification or attenuation factor, that will be applied to another user specified channel. The interface and internal algorithm is similar to the ColorSaturation process, but for any combination of channels.
Downloads: Windows - Linux
-----------------------------------------------------------------------------------------------------------------
ImportL Module
Description: Is there any process that changes the luminance of an image and generate chrominance artifacts? Or do you want to enhance saturation of zones after an HDR compression? Use this process to import the new luminance and modify the chrominance according to the changes. Intended for linear images, but non-linear images may benefit also using the special non-linearity parameter (roughly, it is the MTF used to stretch the image).
Downloads: Windows - Linux
-----------------------------------------------------------------------------------------------------------------
NotchFilter Module
Description: Similar to the DefectMap process, this tool operates in the fourier domain to remove noise in specific frequencies. The user must provide with frequency replacement map. Useful to remove sinusoidal patterns.
Downloads: Windows - Linux
-----------------------------------------------------------------------------------------------------------------
Spikes Module
Description: Just for fun, a simple low pass filter that emulates the physical phenomena that generates diffraction spikes in reflector scopes. Currently only creates spikes in the horizontal/vertical axis. It is recommended to use this in the linear stage. ***Alpha release***
Downloads: Windows - Linux
-----------------------------------------------------------------------------------------------------------------
TaylorRegister Module
Description: This is an experimental tool to register any kind of images, that present translations and/or rotations. The algorithm uses a Taylor series expansion to match images as if they were continuous functions. High SNR images are recommended.
Downloads: Linux