Official pytorch implementation of paper "Inception Convolution with Efficient Dilation Search" (CVPR 2021 Oral).

Related tags

Deep LearningIC-Conv
Overview

IC-Conv

This repository is an official implementation of the paper Inception Convolution with Efficient Dilation Search.

Getting Started

Download ImageNet pre-trained checkpoints.

Extract the file to get the following directory tree

|-- README.md
|-- ckpt
|   |-- detection
|   |-- human_pose
|   |-- segmentation
|-- config
|-- model
|-- pattern_zoo

Easy Use

The current implementation is coupled to specific downstream tasks. OpenMMLab users can quickly use IC-Conv in the following simple ways.

from models import IC_ResNet
import torch
net = IC_ResNet(depth=50,pattern_path='pattern_zoo/detection/ic_r50_k9.json')
net.eval()
inputs = torch.rand(1, 3, 32, 32)
outputs = net.forward(inputs)

For 2d Human Pose Estimation using MMPose

  1. Copying the config files to the config path of mmpose, such as
cp config/human_pose/ic_res50_k13_coco_640x640.py your_mmpose_path/mmpose/configs/bottom_up/resnet/coco/ic_res50_k13_coco_640x640.py
  1. Copying the inception conv files to the model path of mmpose,
cp model/ic_conv2d.py your_mmpose_path/mmpose/mmpose/models/backbones/ic_conv2d.py
cp model/ic_resnet.py your_mmpose_path/mmpose/mmpose/models/backbones/ic_resnet.py
  1. Running it directly like MMPose.

Model Zoo

We provided the pre-trained weights of IC-ResNet-50, IC-ResNet-101and IC-ResNeXt-101 (32x4d) on ImageNet and the weights trained on specific tasks.

For users with limited computing power, you can directly reuse our provided IC-Conv and ImageNet pre-training weights for detection, segmentation, and 2d human pose estimation tasks on other datasets.

Attentions: The links in the tables below are relative paths. Therefore, you should clone the repository and download checkpoints.

Object Detection

Detector Backbone Lr AP dilation_pattern checkpoint
Faster-RCNN-FPN IC-R50 1x 38.9 pattern ckpt/imagenet_retrain_ckpt
Faster-RCNN-FPN IC-R101 1x 41.9 pattern ckpt/imagenet_retrain_ckpt
Faster-RCNN-FPN IC-X101-32x4d 1x 42.1 pattern ckpt/imagenet_retrain_ckpt
Cascade-RCNN-FPN IC-R50 1x 42.4 pattern ckpt/imagenet_retrain_ckpt
Cascade-RCNN-FPN IC-R101 1x 45.0 pattern ckpt/imagenet_retrain_ckpt
Cascade-RCNN-FPN IC-X101-32x4d 1x 45.7 pattern ckpt/imagenet_retrain_ckpt

Instance Segmentation

Detector Backbone Lr box AP mask AP dilation_pattern checkpoint
Mask-RCNN-FPN IC-R50 1x 40.0 35.9 pattern ckpt/imagenet_retrain_ckpt
Mask-RCNN-FPN IC-R101 1x 42.6 37.9 pattern ckpt/imagenet_retrain_ckpt
Mask-RCNN-FPN IC-X101-32x4d 1x 43.4 38.4 pattern ckpt/imagenet_retrain_ckpt
Cascade-RCNN-FPN IC-R50 1x 43.4 36.8 pattern ckpt/imagenet_retrain_ckpt
Cascade-RCNN-FPN IC-R101 1x 45.7 38.7 pattern ckpt/imagenet_retrain_ckpt
Cascade-RCNN-FPN IC-X101-32x4d 1x 46.4 39.1 pattern ckpt/imagenet_retrain_ckpt

2d Human Pose Estimation

We adjust the learning rate of resnet backbone in MMPose and get better baseline results. Please see the specific config files in config/human_pose/.

Results on COCO val2017 without multi-scale test
Backbone Input Size AP dilation_pattern checkpoint
R50(mmpose) 640x640 47.9 ~ ~
R50 640x640 51.0 ~ ~
IC-R50 640x640 62.2 pattern ckpt/imagenet_retrain_ckpt
R101 640x640 55.5 ~ ~
IC-R101 640x640 63.3 pattern ckpt/imagenet_retrain_ckpt
Results on COCO val2017 with multi-scale test. 3 default scales ([2, 1, 0.5]) are used
Backbone Input Size AP
R50(mmpose) 640x640 52.5
R50 640x640 55.8
IC-R50 640x640 65.8
R101 640x640 60.2
IC-R101 640x640 68.5

Acknowledgement

The human pose estimation experiments are built upon MMPose.

Citation

If our paper helps your research, please cite it in your publications:

@article{liu2020inception,
 title={Inception Convolution with Efficient Dilation Search},
 author={Liu, Jie and Li, Chuming and Liang, Feng and Lin, Chen and Sun, Ming and Yan, Junjie and Ouyang, Wanli and Xu, Dong},
 journal={arXiv preprint arXiv:2012.13587},
 year={2020}
}
Owner
Jie Liu
Jie Liu
Convert Python 3 code to CUDA code.

Py2CUDA Convert python code to CUDA. Usage To convert a python file say named py_file.py to CUDA, run python generate_cuda.py --file py_file.py --arch

Yuval Rosen 3 Jul 14, 2021
Discover hidden deepweb pages

DeepWeb Scapper Att: Demo version An simple script to scrappe deepweb to find pages. Will return if any of those exists and will save on a file. You s

Héber Júlio 77 Oct 02, 2022
wgan, wgan2(improved, gp), infogan, and dcgan implementation in lasagne, keras, pytorch

Generative Adversarial Notebooks Collection of my Generative Adversarial Network implementations Most codes are for python3, most notebooks works on C

tjwei 1.5k Dec 16, 2022
"SinNeRF: Training Neural Radiance Fields on Complex Scenes from a Single Image", Dejia Xu, Yifan Jiang, Peihao Wang, Zhiwen Fan, Humphrey Shi, Zhangyang Wang

SinNeRF: Training Neural Radiance Fields on Complex Scenes from a Single Image [Paper] [Website] Pipeline Code Environment pip install -r requirements

VITA 250 Jan 05, 2023
Activating More Pixels in Image Super-Resolution Transformer

HAT [Paper Link] Activating More Pixels in Image Super-Resolution Transformer Xiangyu Chen, Xintao Wang, Jiantao Zhou and Chao Dong BibTeX @article{ch

XyChen 270 Dec 27, 2022
Code for the paper Task Agnostic Morphology Evolution.

Task-Agnostic Morphology Optimization This repository contains code for the paper Task-Agnostic Morphology Evolution by Donald (Joey) Hejna, Pieter Ab

Joey Hejna 18 Aug 04, 2022
StyleGAN2 - Official TensorFlow Implementation

StyleGAN2 - Official TensorFlow Implementation

NVIDIA Research Projects 10.1k Dec 28, 2022
Super-BPD: Super Boundary-to-Pixel Direction for Fast Image Segmentation (CVPR 2020)

Super-BPD for Fast Image Segmentation (CVPR 2020) Introduction We propose direction-based super-BPD, an alternative to superpixel, for fast generic im

189 Dec 07, 2022
YOLOv3 in PyTorch > ONNX > CoreML > TFLite

This repository represents Ultralytics open-source research into future object detection methods, and incorporates lessons learned and best practices

Ultralytics 9.3k Jan 07, 2023
This is the official PyTorch implementation for "Mesa: A Memory-saving Training Framework for Transformers".

Mesa: A Memory-saving Training Framework for Transformers This is the official PyTorch implementation for Mesa: A Memory-saving Training Framework for

Zhuang AI Group 105 Dec 06, 2022
🔥3D-RecGAN in Tensorflow (ICCV Workshops 2017)

3D Object Reconstruction from a Single Depth View with Adversarial Learning Bo Yang, Hongkai Wen, Sen Wang, Ronald Clark, Andrew Markham, Niki Trigoni

Bo Yang 125 Nov 26, 2022
An image classification app boilerplate to serve your deep learning models asap!

Image 🖼 Classification App Boilerplate Have you been puzzled by tons of videos, blogs and other resources on the internet and don't know where and ho

Smaranjit Ghose 27 Oct 06, 2022
EDCNN: Edge enhancement-based Densely Connected Network with Compound Loss for Low-Dose CT Denoising

EDCNN: Edge enhancement-based Densely Connected Network with Compound Loss for Low-Dose CT Denoising By Tengfei Liang, Yi Jin, Yidong Li, Tao Wang. Th

workingcoder 115 Jan 05, 2023
Repositorio oficial del curso IIC2233 Programación Avanzada 🚀✨

IIC2233 - Programación Avanzada Evaluación Las evaluaciones serán efectuadas por medio de actividades prácticas en clases y tareas. Se calculará la no

IIC2233 @ UC 47 Sep 06, 2022
Official code for our ICCV paper: "From Continuity to Editability: Inverting GANs with Consecutive Images"

GANInversion_with_ConsecutiveImgs Official code for our ICCV paper: "From Continuity to Editability: Inverting GANs with Consecutive Images" https://a

QingyangXu 38 Dec 07, 2022
Geometric Vector Perceptron --- a rotation-equivariant GNN for learning from biomolecular structure

Geometric Vector Perceptron Code to accompany Learning from Protein Structure with Geometric Vector Perceptrons by B Jing, S Eismann, P Suriana, RJL T

Dror Lab 85 Dec 29, 2022
Code for the preprint "Well-classified Examples are Underestimated in Classification with Deep Neural Networks"

This is a repository for the paper of "Well-classified Examples are Underestimated in Classification with Deep Neural Networks" The implementation and

LancoPKU 25 Dec 11, 2022
Python version of the amazing Reaction Mechanism Generator (RMG).

Reaction Mechanism Generator (RMG) Description This repository contains the Python version of Reaction Mechanism Generator (RMG), a tool for automatic

Reaction Mechanism Generator 284 Dec 27, 2022
This is the official Pytorch implementation of "Lung Segmentation from Chest X-rays using Variational Data Imputation", Raghavendra Selvan et al. 2020

README This is the official Pytorch implementation of "Lung Segmentation from Chest X-rays using Variational Data Imputation", Raghavendra Selvan et a

Raghav 42 Dec 15, 2022