GithubHelp home page GithubHelp logo

giser-wb / plug_copy Goto Github PK

View Code? Open in Web Editor NEW

This project forked from heshitian/plug

0.0 0.0 0.0 7.8 MB

Learning Remote Sensing Object Detection with Single Point Supervision

Shell 0.11% Python 99.89%

plug_copy's Introduction

Learning Remote Sensing Object Detection with Single Point Supervision


This is the PyTorch implementation of the method in our paper "Learning Remote Sensing Object Detection with Single Point Supervision".



Preparation:

1. Requirement:

2. Generating data with single point labels:

  • First, we use the DOTA_devkit and iSAID_devkit toolbox to generate cropped images with json annotations.
  • Second, we add single point annotations in the json file of iSAID dataset data_process/iSAID_generate_single_point_annotation.py
  • Third, we utilize the generated of iSAID json file to add single point information in the DOTA json file. data_process/DOTA_generate_single_point_annotation.py

Model training and validation:

1. Training PLUG:

  • Run train.py with config configs_single_point/PLUG_r50_DOTA_512.py to train PLUG.

2. Referencing and validating PLUG:

  • Run test_PLUG.py to reference PLUG and generate pseudo boxes of training data.
  • Run data_process/calculate_mIoU.py to output the mIoU results of PLUG.

3. Training Faster-RCNN or Mask-RCNN:

  • Run data_process/bbox2json.py to generate json of training data with pseudo boxes.
  • Run train.py with config configs/faster_rcnn/faster_rcnn_r50_fpn_1x_dota.py to train Faster-RCNN.
  • Run data_process/segm2json.py to generate json of training data with pseudo boxes and pseudo masks.
  • Run train.py with config configs/mask_rcnn/mask_rcnn_r50_fpn_1x_dota.py to train Mask-RCNN.

4. Testing Faster-RCNN or Mask-RCNN:

  • Run test.py to reference and evaluate Faster-RCNN and Mask-RCNN.
  • Run DetVisGUI\DetVisGUI.py to visualize the detection results of different detectors conveniently. ( [DetVisGUI])

5. Other methods:

  • We retrain P2BNet, WSDDN and OICR in our code based on [P2BNet] and [WSOD2].
  • Run train.py with different configs to train the above methods.

6. Other codes:

  • We split the training dataset according the object numbers in images to evaluate the effects of dense obejects. data_process/split_DOTA_image_and_json.py
  • Run test_num.py to generate the pseudo boxes of sub dataset with different object numbers cyclically.
  • Run data_process/bar_chart.py to generate the mIoU distribution of images with different object numbers.

Our model and data annotations:

Citiation

If you find this work helpful, please consider citing:

@Article{PLUG-Det,
    author    = {He, Shitian and Zou, Huanxin and Wang, Yingqian and Li, Boyang and Cao, Xu and Jing, Ning},
    title     = {Learning Remote Sensing Object Detection with Single Point Supervision},
    journal   = {IEEE TGRS}, 
    year      = {2023},   
}

Contact

Welcome to raise issues or email to [email protected] for any question regarding this work.

plug_copy's People

Contributors

heshitian avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.