deepratna-awale / Polar-Image-Inspector

This is a byproduct of my Master's Capstone project. This application allows you to import any Polar Radar Image (.pol files) into the application and view its metadata and render a cartesian image from the byte data.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Polar-Image-Inspector

This is a byproduct of my Master's Capstone project. This application allows you to import any Polar Radar Image (*.pol file) and view its metadata and render a cartesian image from the byte data.

This project is designed to work for both 8-bit and 16-bit data type. Do note that it has not been tested on 8-bit data. Refer to Wamos II Manual for the exact details.


Important

I cannot provide sample Polar Images due to copyright issues. However you can still test the Software on the png i provided (with metadata).


Requirements

  1. Python v3.7 to v3.10

Installation

  • Clone the repo
git clone https://github.com/deepratnaawale/Polar-Image-Inspector.git
  • Goto the Downloaded repo
cd Polar-Image-Inspector
  • Make virtual enviorenment using pip (recommended)
python -m venv .venv
  • Activate Virtual Enviorenment

    • For Windows
    .venv\Scripts\activate.bat
    • For Linux/ MacOS
    .venv\Scripts\activate.sh
  • Install Requirements

pip install -r requirements.txt
  • Launch GUI
python PolarImageInspector.py

Standalone Polar Image Parser

The Polar Image Parser can be used independently using the following code.

# Provided you copied the Wamos2 Directory into your code

from Wamos2.polar_image import PolarImage

polarImage = PolarImage('path/to/polar_image.pol')
polarImage.render(orient = True, toggle_direction = True)

# All header attributes can be accesed as follows
# polarImage.get('Atribute'), the header stores attribute keys in upper case like the metadata in POL files, however you do not need to capitalize the attribute when passing to .get() function
dabit = polarImage.get('DABIT')

# You can also use describe to understand what a specific Attribute is (this information is directly taken from the Header of POL files)
polarImage.describe('DABIT')

#The header stores information in a dict as follows ;
'attribute': {
  'value': 'some_value', 
  'description': 'Description of Attribute.'
}

Saving the image

Tip

You can save the image with the metadata using polarImage.save_with_metadata()

The default image extension is .png

Note

The default output path is 'Output/input_image_name.png'


Example Image Extracted

Polar Image File


GUI Preview (Supports Dark Mode now!)

GUI Dark Mode


Wave Height Analysis

My Master's Capstone Project was on predicting Wave Heights of Ocean Waves and can be explored via the Jupyter Notebook. The project uses a Hybrid Neural Network with CNN for images and MLP for numerical data to predict wave height. The detailed analysis and model construction can be observed in the Jupyter Notebook.

Note

You'll need to use inline python commands for any libraries you might have to install in the Notebook.

References

About

This is a byproduct of my Master's Capstone project. This application allows you to import any Polar Radar Image (.pol files) into the application and view its metadata and render a cartesian image from the byte data.

License:MIT License


Languages

Language:Jupyter Notebook 98.1%Language:Python 1.9%