JIP: Juvian Image Processing

High-Level Project Summary

Jupiter is a massive gas planet protecting earth from various comets' attacks by diverting them to a different direction or catching them in its orbit, otherwise life could sustain. Therefore, making its study easier is our main mission. After noticing that Juno image processing is often a manual task based on RGB Processing; we have developed a Web application (JIP) to automate the process and open other opportunities for advanced options, such as reconstruction and image recognition, making data analysis and tracking changes easier while serving fun and artistic purposes as well, with the possibility of downloading or sharing results.

Link to Project "Demo"

Detailed Project Description

  • Jovian Image Proc essing, is a Web application coded with Python for Back-End and Angular for Front-End, to edit or process JunoCam raw images in order to display details and different zones. We have provided an automatic processing, as users might take the initiative for adding necessary corrections to make a concrete vision of their thoughts. It can also provide image recognition and planet reconstruction from Juno collected images. These features can serve for either science, fun or art purposes.
  • JIP does directly download raw images from JunoCam Website.
  • It includes image processing features like brightness adjustment, color and contrast enhancement, etc.
  • It Uses raw framelets (striped images) to get the most useful information from JunoCam data.
  • It removes any existing artifacts created by the strip acquisition process.
  • It provides alternative combinations of color channel images.
  • JIP is easy to use, basically made of three interfaces:

1- The first interface:

It is for welcoming the user, providing general information, with a choice to make; choose to search by image ID the image to process, or by entering the image directly.


Note: Unfinished words are just a visual effect.


A user guide to explain how to use the application will be provided in the 'How to use' section, including guidance on downloading the raw images and combining them to generate color images, for user manual processing besides the automatic one.

2-The second interface:

It is dedicated to technical purposes of image processing; either manually by allowing the user to process the image, or automatically via application implemented tools.

3-The third interface:

It is dedicated to advanced operations, such as reconstruction, image recognition and segmentation.

In other words:

  • Our application focuses on these three different steps :

1. Data collection: using just the image ID, we are able to get its relative 3D matrix.

2. Image Processing : Dehaze → Sharpening → Color enhancement → final result

- Basic image processing: Add more contrast, color contrast, stretching the histogram..

- Enhanced to highlight features, clouds, colors, and the beauty of Jupiter.

3. Image Recognition:

- Image segmentation.

- Recognition algorithm for detecting and classifying atmospheric features of Jupiter.

- Reconstruction of Jupiter image.

  •  After the final process is done, the application generates a before and after comparison, and allows the user to share or download the processed image.
  • Our aim is to make Juvian system analysis easier, help discover this massive planet protecting earth from comets, optimize tracking changes, making art and fun creation possible.
  •  All interfaces shall be in a creative design, for user features, we are flexible to consider their feedback to help develop our solution in a better way. Root ideas will already be implemented in our solution.
  • Via the combination of open source NASA data, Python tools for process and Angular for application design, the interconnection between Front-End and Back-End our JIP came to reality.
  • Image Processing approach : 

1. Automatic Downloading of the raw RGB image from JUNO website using its ID. 

2. Applying the CLAHE algorithm for histogram equalization for each RGB channel. It is a variant of Adaptive histogram equalization (AHE) which takes care of over-amplification of the contrast.

3. Applying a median filter to remove artifacts.

4. Reducing noise. 

5. Improving the details clarity using a sharpening filter (high pass filter).

  • Image Segmentation:

We could see storms' distribution over the planet : storms with the same color share the same caracteristics.

A tracked storm changing position is clear in our Demo video, we aim to save time and energy of the manual JunoCam process, as we also provide tools for a deep scientific analysis, as well as serving art and fun purposes.

User manual is in the 'How to use' section:

Space Agency Data

When building our project, we did researches about the following keywords:

  • Junocam: Juno's Outreach Camera
  • Junocam tutorial
  • Junocam image processing
  • Start processing JunoCam raw images
  • JunoCam raw data processing pipeline
  • Mathematica notebooks JunoCam images
  • JunoCam raw image processing discussions
  • Juno spice kernels
  • Navigation and Ancillary Information Facility (NAIF)
  • Estimating velocity information from JunoCam
  • Image recognition

Because our application needs to download data from the JunoCam Website, we needed to learn more about JunoCam raw images, framelets, JunoCam image processing, velocity...

For other ressources, we have consulted:

We have used data from:

Hackathon Journey

The first step of every Hackathon is creating a team with different backgrounds, ready to work and cooperate for accomplishing a mission. This was our case too, after creating our team; we have tried to scroll challenges together, seeing what we can do and what we cannot. The funny part is that we all have chosen a new challenge for us, because we want to be out of our comfort zone and learn while taking this special experience and respond to an urgent challenge related to JunoCam raw image processing for scientific, artistic and fun purposes.

We tried to attend the maximum if not all workshops to have ideas here and there about how to deal with the challenge, the pre-required skills, listening to trainers and previous participants. Consequently taking as much information as we can either related to problem solving, pitching, ideation, team management…

Preliminary, we have all tried to have a deep sense related to the problem, brainstorm methods of solution for the issue, and build mind maps... Our team is made of:

Chaymae Majdoubi: Team Leader & speaker

Chorouk Elkhomsi: Communication, design & editing manager

Yassir Lairgi: Method investigation & Back-End developer

Redouane Zamah: Research & Back-End developer

Hassan Zafin: Application design & Front-End developer

We have chosen a team name and logo, a project name and logo.

Then we did researches about the topic, through meetings, exchanging ideas judging by the fact that we all have Python basics, ideas about image processing, and then choosing the exact methods to use and set the exact performances for our application, solving the problem with a team touch of extra services for creativity purposes.

Through motivating each other, collaborating with a ‘team’ sipirit, we have finally started developing our solution gradually with parallel, organized and coordinated tasks execution to finish on time.

The name we have chosen for our project is JIP; Juvian Image Processing, we have decided collectively through a meeting, its content related either to provided services or to general design.

Finally yet importantly, the boot camp and the hackathon were a very amazing experience that one can take, it was fulfilling in all aspects. Team work, creativity, efforts, a common objective achieved from different crossing roads.We express our sincere gratefulness to Oujda Space Aps, all the trainers who coached us and organization team who did their best to insure the good process. We would like to thank also Nasa international space apps for this enlightening event, US embassy, and collaborators around the world for organizing a such important event. 

Because we dream big, and we work for it! 

Motto: "We </> colorful streams!"

References

DATA:

  1. Where to Find Mission Raw Images – NASA Solar System Exploration
  2. JunoCam : Processing - Mission Juno (swri.edu)

Ressources:

  1. Image Processing and the Juno JunoCam (artsnova.com)
  2. Greg Bear: Junocam Image Processing
  3. JunoCam - Wikipedia
  4. https://fastapi.tiangolo.com/
  5. Angular documentation

Tools:

  1. Visual Studio Code
  2. Jupyter notebook, 
  3. Github
  4. Design Adobe Express
  5. Pixabay
  6. Angular
  7. HTML
  8. CSS
  9. Python
  10. TYPESCRIPT
  11. BOOTSTRAP
  12. KMeans
  13. Open CV
  14. Adaptative CLAHE histogram equalization
  15. Median Filter

Tags

#Jupiter #JunoMission #Juno #JunoCam #Image Processing #Science #Art #Fun #ImageRecognition #Software #WebApp #EarthProtector #CometsDeviator