项目作者: Zafiirah13

项目描述 :
Fast rAdio Burst Localization & dEtection using Mask-RCNN
高级语言: Python
项目地址: git://github.com/Zafiirah13/FABLE.git
创建时间: 2021-03-10T18:40:49Z
项目社区:https://github.com/Zafiirah13/FABLE

开源协议:

下载


DOI
issues
forks
stars

FABLE

Fast rAdio Burst Localization & dEtection using Mask-RCNN

Automatic Annotation of Single Pulse or Fast Radio Burst Candidate

The steps and codes to perform an automatic annotation of single pulse is detailed below. An illustration of masking and annotation is shown here.

Masking Video

Dataset

The dataset can be downloaded at: DOI

Prediction of test data using trained FABLE model

An illustration of prediction on a sample of test data is illustrated below. The code in this directory perform detection and localization of FRB and background noise only. However, the FABLE code can be adapted such that it detect and localise three class scenario: FRB, RFI and Background as illustrated here.

Prediction Video

Set up the Environment

  • Create a Virtual environment using conda

    1. Create virtual environment: conda create -n frbloc python==3.6
  • Activate the environment

    1. source activate frbloc or conda activate frbloc
  • Install tensorflow and keras

    1. pip3 install tensorflow-gpu==1.14
    2. pip3 install keras==2.1.0
  • Install all required packages as follows

    1. pip3 install numpy scipy Pillow cython matplotlib scikit-image opencv-python h5py imgaug Ipython
    2. python setup.py install
  • If jupyter can’t find the tensorflow and jupyter is not working, on terminal type

    1. pip3 install jupyter notebook==4.3.0
    2. python -m ipykernel install --user name=frbloc
  • Then in Jupyter notebook choose frbloc kernel.

How to run AUTOMATIC ANNOTATION for Fast Radio Burst Candidates

  • To run automatic masking

    1. cd FABLE/samples/FRB/automated_mask_code/
  • Split data into training, validation and test set. Run jupyter notebook

    1. Step2-split-data-into-training-test-set.ipynb
  • Automatic Annotation, run jupyter notebook

    1. Step3-automated_masking-without-plotting.ipynb or Step3-automated_masking.ipynb
  • Inspect whether the annotation is correct or not and run the jupyter notebook

    1. cd FABLE/samples/FRB/
    2. Stage 1- INSPECT-FRB-DATA.ipynb

How to train FABLE model from scratch

  1. cd FABLE/samples/FRB/
  • To train the model, we use SP_SingleClass.py. This code detctect only FRB/Single pulse from the background noise.

    1. python SP_SingleClass.py train --dataset=/FABLE/samples/FRB/automated_mask_code/fetch_data --weights=coco

Make prediction with the trained model

  • Step by step training process and prediction

    1. cd FABLE/samples/FRB/
    2. Stage 2 - Demo-FABLE-stages.ipynb
  • Make prediction on validation and test set. Compute the DM and time of the pulse based on the mask.

    1. cd FABLE/samples/FRB/
    2. Stage 3 - PREDICTION-OF-FRB-IN-TEST-SET.ipynb

Citing this work


If you use this work please cite:

  1. @software{zafiirah_hosenie_2021,
  2. author = {Zafiirah Hosenie},
  3. title = {{Zafiirah13/FABLE/: Software release}},
  4. month = March,
  5. year = 2021,
  6. publisher = {Github},
  7. version = {0.1},
  8. url = {https://github.com/Zafiirah13/FABLE/}
  9. }