Skip to content

A neural network coded in TensorFlow 1 that produces satellite images from acoustic images.

License

Notifications You must be signed in to change notification settings

giovgiac/son2sat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Guided Sonar-To-Satellite Translation

Dataset

Image files for training should be placed in the correct structure inside the datasets folder. The structure should be like this:

datasets
│   aracati.py    
│
└───aracati
    │
    └───test
    │   │
    │   └─── input
    │   │    │   test_00000.png
    │   │    │   test_00001.png
    │   │    │   ...
    │   │
    │   └─── gt
    │        │   real_00000.png
    │        │   real_00001.png
    │        │   ...
    |
    └───train
    │   │
    │   └─── input
    │   │    │   train_00000.png
    │   │    │   train_00001.png
    │   │    │   ...
    │   │
    │   └─── gt
    │        │   real_00000.png
    │        │   real_00001.png
    │        │   ...
    |
    └───validation
        │
        └─── input
        │    │   valid_00000.png
        │    │   valid_00001.png
        │    │   ...
        │
        └─── gt
             │   real_00000.png
             │   real_00001.png
             │   ...

Below is a download link for the ARACATI 2017 dataset used in the papers, if you use it, please cite one of the following (or both):

Download ARACATI 2017 Dataset

If you'd like to use the same VGG weights we did, here's the download link for them:

Download VGG16 Weights

Executing

To train a new neural network, just run the following comamnd:

 $ python main.py

You can configure execution with the following commands:

  • --mode: Choose one from: evaluate, restore or train.
  • --name: Name of the folder to store the files of the experiment.
  • --weights_file: Weights for the VGG16 network.
  • --batch_size: Batch size to use for the network.
  • --gen_filters: Parameter that scales the size of the network.
  • --input_channels: Number of channels in the input images.
  • --image_height: Height of the images to run through the network.
  • --image_width: Width of the images to run through the network.
  • --max_to_keep: Maximum number of checkpoints to keep.
  • --num_epochs: Number of epochs to execute the network for.
  • --output_channels: Number of channels in the output images.
  • --learning_rate: Initial learning rate for the optimizer.

Visualizing

After you've executed the script to train the neural network, it will print the tensorboard command you need to use to visualize the network as it's training. Example below:

$ tensorboard --logdir='/home/nautec/Documents/Projects/son2sat/executions/2019-04-16_22:08/summary'
TensorBoard 1.13.1 at http://127.0.0.1:6006 (Press CTRL+C to quit)

Releases

No releases published

Packages

No packages published

Languages