During a tutored project for our computer science GOAL, we have to realize a professional image editing software to edit, stack, scale and filter astrophotographic images (based on a .fits, .fit)
The documentation and the software is in french.
We have chosen the programming language Python (Version 3.10.4 recommended), being simplified of use and rich in library, it is easier for us to develop thanks to this one. The disadvantage is that it is heavy to use, some functions can take several tens of minutes to execute.
Use the pip install astropy[all] to download the latest version of the library. It is used to simplify our functions, especially on FITS images
Use the pip install matplotlib to download the latest version of the library. It is used to display our images and graphics on the application
Use the pip install numpy to download the latest version of the library. It is used to calculate easily thanks to the different functions
Use the pip install scipy to download the latest version of the library. It is used to rotate a matrix
Use the pip install Pyinstaller to download the latest version of the library. It is used to generate an .exe file
a. Create a folder
b. Place the .exe in it
c. Create an img folder in this folder
d. Place your "M13_blue" folder holding the images with the name "M13_blue_000X".
e. Run the .exe file
a. Create a folder
b. Place the files main.py, Calculation.py, Filters.py, Interface_front.py, Normalization.py, Stacking.py, Stacking_front.py in the folder
c. Create a folder img in this folder
d. Place your "M13_blue" folder holding the images with name "M13_blue_000X"
e. Open the file main.py and run the command "
python main.py"
Assembling several images by adding the pixels of each image represented by a 2d array
Assembly of several images by averaging each pixel of the different images represented by a 2d array
Assembly of several images by determining the median of each pixel of the different images of represented by a 2d table.
Assemble multiple images by adding each image with their outliers filter by the deviation and dispersion of the median for the different images of represented by a 2d table
Removes the outliers from each image in a list with multiple images and replaces the outliers with the median based on the range/dispersion around the median of Q1 and Q3 with the interquartile range
Removes outliers from each image in a list with multiple images and replaces the outliers with the mean based on the range/dispersion around the median of Q1 and Q3 with the interquartile range
Removes the outliers from each image in a list with multiple images and replaces the outliers with the range and dispersion of the median as a function of the range/dispersion around the median of Q1 and Q3 with the interquartile range
Allows you to apply a high-pass butterworth filter to an image represented via a 2d array by converting our image into frequency via the Fourier transform and applying the high-pass butterworth filter and converting it back into pixel
Allows to apply an image representing via a 2d array a butterworth low pass filter by converting our image in frequency via the fourier transform and applying the butterworth low pass filter and reconverting it in pixel
Allows you to apply a Gaussian high-pass filter that applies a Gaussian convolution matrix to each pixel of an image represented via a 2d array and subtracts it from the base image making a high = data-low(gauss)
to apply a Gaussian convolution matrix giving a blur effect on each pixel of an image represented via a 2d array
Allows to give a filtered image of each pixel by replacing them by the median of each neighboring pixel at a chosen diameter
Allows to give a filtered image of each pixel by replacing them by the average of each neighboring pixel at a chosen diameter
Allows to apply a convolution matrix on each pixel of an image represented via a 2d array The matrix is applied according to the neighbors located according to the size/diameter of the matrix directly on the pixels of the image
Allows to apply a convolution matrix of sobel in vertical and horizontal giving an effect of accentuation of the edges of the objects of the image and being applied on a each pixel of an image represented via a 2d table
Allows to apply a bilateral filter on an image giving a blur/softness effect on each pixel of an image represented via a 2d array via the value of the Gaussian distribution and the distance between the points in the chosen neighbor diameter allowing to have a more equitable distribution than a classic Gaussian filter
- Gauthier Corion For the graphical interface via PyQt
- Matthieu CZARKOWSKI For the algorithmic software features (stacking, filter, scaling)