Code Monkey home page Code Monkey logo

ijcai2023-workshop-glow-top10's Introduction

logo

This is the solution ranked top 10 in the IJCAI 2023 Workshop Challenge "Generalizing from Limited Resources in the Open World" with Track II of Rotated Detection competition.

This codebase is implemented based on "Large Selective Kernel Network for Remote Sensing Object Detection" at: https://arxiv.org/pdf/2303.09030.pdf. The original repo is here: Large-Selective-Kernel-Network.

Introduction

Base on existing amazing work, some new features and toolkits used for oriented obeject detection task are implemented. Most of them are borrowed from horizontal object detection task but originally they are not supportive for rotated object detection task. I believe these newly introduced toolkits and features could be helpful and easily used in other rotated object detection tasks executed based on MMRotate codebase of version 2.xx. All the configuration files used in the competition are placed at ./configs/IJCAI/

Toolkits

  • Convert the competition official annotation format to DOAT format: ./tools/convert_ijcai2dota.py

  • Convert the required submit format to official annotation format: ./tools/convert_submit2ijcai.py

  • Split data into k folds: ./tools/kfold_split.py

  • Visulisation DOTA style annotated data: ./tools/dota_vis.py

  • Rotate objects offline for data augmentation: ./tools/data_aug_offline.py

  • Rescale rotated objects offline for data augmentation: ./tools/im_rescale.py

  • Inspect the checkpoint shape and size: ./tools/inspect_checkpoint.py

  • Substitute original detector weight with a new backbone ckpt weight: ./tools/merge_ckpt.py

  • Merge and average several checkpoints: ./tools/model_ensamble.py

  • Crop rotated objects for classification model training: ./tools/obj_crop.py

  • Visulize the predicted false positive, false negative and true positive objects: ./tools/results_analysis.py. An example is shown below (partially cropped from original dataset to avoid copyright issue. If there are any problem of using this image, please contact me to delete it), where green boxes are tp, red boxes are fp, blue boxes are fn, yellow boxes are wrong classified objects:

Centered Image
  • Crop the false positive and false negative objects: ./tools/get_fp_fn.py
  • Copy-paste augmentation skill with rotated objects: ./tools/copy_paste.py. A comparison is shown as following(left is a crop patch from training data, right is the augmented version with several random rotated knifes pasted on it):
Image 1 Image 2

New Features

Models

Imagenet 300-epoch pre-trained LSKNet-T backbone: Download

Imagenet 300-epoch pre-trained LSKNet-S backbone: Download

Imagenet 300-epoch pre-trained LSKNet-M backbone: Download 提取码: iq3s

Finetuned 100ep on target 9 competition classes LSKNet-M backbone: Download 提取码: roov

Finetuned 100ep on target 9 competition classes LSKNet-S backbone: Download 提取码: 0aa9

Method & Solution

TODO

Installation

MMRotate depends on PyTorch, MMCV and MMDetection. Below are quick steps for installation. Please refer to Install Guide for more detailed instruction.

conda create --name openmmlab python=3.8 -y
conda activate openmmlab
git clone https://github.com/TUDelftHao/IJCAI2023-workshop-GLOW-top10.git
git checkout -b IJCAI2023-workshop origin/IJCAI2023-workshop
cd IJCAI2023-workshop-GLOW-top10
pip install -r custom_requirements.txt
pip install -v -e .

Get Started

Please see get_started.md for the basic usage of MMRotate. We provide colab tutorial, and other tutorials for:

Acknowledgement

MMRotate is an open source project that is contributed by researchers and engineers from various colleges and companies. We appreciate all the contributors who implement their methods or add new features, as well as users who give valuable feedbacks. We wish that the toolbox and benchmark could serve the growing research community by providing a flexible toolkit to reimplement existing methods and develop their own new methods.

License

This project is released under the Apache 2.0 license.

ijcai2023-workshop-glow-top10's People

Contributors

zcablii avatar

Stargazers

 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.