gaseous-object-detection

Gaseous Object Detection, T-PAMI2024

https://github.com/calayzhou/gaseous-object-detection

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.6%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Gaseous Object Detection, T-PAMI2024

Basic Info
  • Host: GitHub
  • Owner: CalayZhou
  • License: apache-2.0
  • Language: Python
  • Default Branch: main
  • Size: 27.5 MB
Statistics
  • Stars: 4
  • Watchers: 1
  • Forks: 1
  • Open Issues: 1
  • Releases: 1
Created over 1 year ago · Last pushed 12 months ago
Metadata Files
Readme Contributing License Code of conduct Citation

README.md

Gaseous Object Detection (TPAMI 2024)

arXiv PDF

Abstract: Object detection, a fundamental and challenging problem in computer vision, has experienced rapid development due to the effectiveness of deep learning. The current objects to be detected are mostly rigid solid substances with apparent and distinct visual characteristics. In this paper, we endeavor on a scarcely explored task named Gaseous Object Detection (GOD), which is undertaken to explore whether the object detection techniques can be extended from solid substances to gaseous substances. Nevertheless, the gas exhibits significantly different visual characteristics: 1) saliency deficiency, 2) arbitrary and ever-changing shapes, 3) lack of distinct boundaries. To facilitate the study on this challenging task, we construct a GOD-Video dataset comprising 600 videos (141,017 frames) that cover various attributes with multiple types of gases. A comprehensive benchmark is established based on this dataset, allowing for a rigorous evaluation of frame-level and video-level detectors. Deduced from the Gaussian dispersion model, the physics-inspired Voxel Shift Field (VSF) is designed to model geometric irregularities and ever-changing shapes in potential 3D space. By integrating VSF into Faster RCNN, the VSF RCNN serves as a simple but strong baseline for gaseous object detection. Our work aims to attract further research into this valuable albeit challenging area.

Usage

1.Installation

```bash

Step 1. Create a conda environment and activate it.

conda create --name openmmlab python=3.8 -y conda activate openmmlab

Step 2. Install PyTorch following official instructions, e.g.

conda install pytorch torchvision -c pytorch

Step 3. MMDetection Installation

Install MMCV using MIM. (please use the old version 1.7.0 of mmcv-full)

pip install -U openmim # v0.3.3 mim install mmcv-full # v1.7.0

Install MMDetection

pip install -v -e . # In the main directory

Step 4. install Shift3D

cd external/Shift3D bash make.sh
``` Please refer to the mmdetection official guidence for more details.

2.Dataset

You can apply for the GOD-Video dataset download link from dataset pages.

bash |-VSF-RCNN |---TLGDM |---DEMO |---data |---|---IOD-Video_COCO_S1 |---|---IOD-Video_COCO_S2 |---|---IOD-Video_COCO_S3

3.Visualization

```bash

Please refer to /mmdet/apis/test.py for more details

python tools/test.py configs/fasterrcnn/fasterrcnnr50fpn1xcocoGOD-VideoVSFdemo.py ./workdirsVSFv2/S2model.pth --show-dir VisualizationSpecifical ```

4.Evaluation

Step1: Download workdirsVSFv2 to VSF-RCNN/work_dirs_VSFv2.

Step2: Choose Split: change data_root and ann_file in configs/_base_/datasets/GODVideo_detection.py ```bash

4.1.Evalution with mmdetection (notice the split consistency between code and model)

python tools/test.py configs/fasterrcnn/fasterrcnnr50fpn1xcocoGOD-VideoVSF.py ./workdirsVSFv2/S1model.pth --eval bbox

4.2.CVPR2022 version evalution pipeline

4.2.1 generate pkl file for evalution

python tools/test.py configs/fasterrcnn/fasterrcnnr50fpn1xcocoGOD-VideoVSF.py ./workdirsVSFv2/S1model.pth --show-dir show-dir

4.2.2 Calculate mAP with CVPR2022 evalution pipeline

cd ACT bash ACT_run.sh 8 1 # 8-> frame number 1-> split ```

5.Train

```bash

train on single GPU

python tools/train.py configs/fasterrcnn/fasterrcnnr50fpn1xcocoGOD-VideoVSF.py --auto-scale-lr

train on multi-GPUs

CUDAVISIBLEDEVICES=2,3 bash ./tools/disttrain.sh configs/fasterrcnn/fasterrcnnr50fpn1xcocoGOD-Video_VSF.py 2 ```

6.Results

| Split&Models | mAP | |-----------------|--------| | S1model.pth | 21.82% | | S2model.pth | 17.22% | | S3model.pth | 22.24% | | Average | 20.43% |

LICENSE

Citation

@article{zhou2024gaseous, title={Gaseous object detection}, author={Zhou, Kailai and Wang, Yibo and Lv, Tao and Shen, Qiu and Cao, Xun}, journal={IEEE Transactions on Pattern Analysis and Machine Intelligence}, year={2024}, publisher={IEEE} }

Owner

  • Name: CalayZhou
  • Login: CalayZhou
  • Kind: user
  • Location: China
  • Company: Nanjing University

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
  - name: "MMDetection Contributors"
title: "OpenMMLab Detection Toolbox and Benchmark"
date-released: 2018-08-22
url: "https://github.com/open-mmlab/mmdetection"
license: Apache-2.0

GitHub Events

Total
  • Release event: 1
  • Watch event: 4
  • Issue comment event: 3
  • Push event: 7
  • Pull request event: 2
  • Fork event: 1
  • Create event: 4
Last Year
  • Release event: 1
  • Watch event: 4
  • Issue comment event: 3
  • Push event: 7
  • Pull request event: 2
  • Fork event: 1
  • Create event: 4

Dependencies

.github/workflows/build.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • codecov/codecov-action v1.0.10 composite
  • codecov/codecov-action v2 composite
.github/workflows/build_pat.yml actions
  • actions/checkout v2 composite
.github/workflows/deploy.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/lint.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/test_mim.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
external/Shift3D/setup.py pypi
mmdet.egg-info/requires.txt pypi
  • asynctest *
  • cityscapesscripts *
  • codecov *
  • cython *
  • flake8 *
  • imagecorruptions *
  • interrogate *
  • isort ==4.3.21
  • kwarray *
  • matplotlib *
  • mmcv-full >=1.3.17
  • mmtrack *
  • numpy *
  • onnx ==1.7.0
  • onnxruntime >=1.8.0
  • protobuf <=3.20.1
  • pycocotools *
  • pytest *
  • scipy *
  • six *
  • sklearn *
  • terminaltables *
  • timm *
  • ubelt *
  • xdoctest >=0.10.0
  • yapf *
requirements/albu.txt pypi
  • albumentations >=0.3.2
requirements/build.txt pypi
  • cython *
  • numpy *
requirements/docs.txt pypi
  • docutils ==0.16.0
  • myst-parser *
  • sphinx ==4.0.2
  • sphinx-copybutton *
  • sphinx_markdown_tables *
  • sphinx_rtd_theme ==0.5.2
requirements/mminstall.txt pypi
  • mmcv-full >=1.3.17
requirements/optional.txt pypi
  • cityscapesscripts *
  • imagecorruptions *
  • scipy *
  • sklearn *
  • timm *
requirements/readthedocs.txt pypi
  • mmcv *
  • torch *
  • torchvision *
requirements/runtime.txt pypi
  • matplotlib *
  • numpy *
  • pycocotools *
  • six *
  • terminaltables *
requirements/tests.txt pypi
  • asynctest * test
  • codecov * test
  • flake8 * test
  • interrogate * test
  • isort ==4.3.21 test
  • kwarray * test
  • onnx ==1.7.0 test
  • onnxruntime >=1.8.0 test
  • protobuf <=3.20.1 test
  • pytest * test
  • ubelt * test
  • xdoctest >=0.10.0 test
  • yapf * test
requirements.txt pypi
setup.py pypi