Creating an online gallery that uses its own algorithm to colorize images from the Juno Cam

High-Level Project Summary

A long time ago, humans were curious about space and far away. That’s why humans started to develop advanced technology to visualize all the infinite space that surrounds the Earth planet. One of the biggest problems that we ahead, is that colorized images of entire planets occupy a lot of space and we cannot just occupy 100GB for just one photo. That’s why this project will help us to take black and white photos of the planet and we will be able via an algorithm to see the colors of that beautiful planet.

Detailed Project Description

About the Project


Along the development of this project, we combine some technologies to accomplish our goals. Some of them are:

  • Django: Used for the creation of the web app that will allow the interaction between the software and the user.
  • Python: Most of the code was coded in this programming language, it is easy to use and easy to learn.
  • Numpy: A python library that aided our code to realize complex calculations.
  • OpenCV: A python library that aided our code to read images, obtain data from those images and to process them.
  • Pillow: A python library that aided our code to read images, process them, apply filters, merge images and create new files.
  • Wand: A python library that aided our code to read data from images and apply specific filters to obtain a better result.


For an easy read, we decided to put the explanation step by step:



The Algorithm


As mentioned, in this code there were some libraries used to help us to code. But that does not mean the libraries did all the work here, the problem started when we received raw data and filtered images. But all the images were in a grayscale color.

For the solution, we implement many techniques that we used along the time we were thinking about the solution.

First of all, we read and store in variables all the filtered images. One for blue, one for red and one for green. The next step was to apply a color mask to the image, we just apply the correct color in the correct image (Blue filtered image with blue mask color, etc).

At the end of this step we noticed that only merging the image was just being overlapped, that’s not the plan. Next, we separate each color channel from filtered images and then we merge green and red channels. The color mix was not complete but the result was better than just mixing it all up. Then we extract the channels and finally add the blue one.

Finally, we just added a filter that was extracted from the blend-modes library. That filter added a smooth layer in the image and matched the colors perfectly.

The strategy to build this algorithm was just stack processes that were great results for our process. We do not have knowledge about deep learning or artificial intelligence, but we accomplished it all because of that.


Space Agency Data

The National Aeronautics and Space Administration (NASA) JunoCam

We implemented the images provided by NASA's JunoCam and through these, since they gave us the raw images and each one with the color they were going to be colored with, this made it easier to use and it was easier to use the algorithm.

Hackathon Journey

To be our first time in a Hackathon, the truth was an unforgettable experience, there were moments of laughter, happiness, joy, and even anger, there were moments where we couldn't anymore but our motivation was greater and we were looking for information to improve our app, honestly one of the best things we've ever done.

Tags

#webapp, #software, #hackathon,