involution
efficientdet-pytorch
Our great sponsors
involution | efficientdet-pytorch | |
---|---|---|
6 | 1 | |
1,298 | 1,545 | |
- | - | |
0.0 | 4.1 | |
over 2 years ago | 8 months ago | |
Python | Python | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
involution
-
[R] Involution: Inverting the Inherence of Convolution for Visual Recognition
Abstract: Convolution has been the core ingredient of modern neural networks, triggering the surge of deep learning in vision. In this work, we rethink the inherent principles of standard convolution for vision tasks, specifically spatial-agnostic and channel-specific. Instead, we present a novel atomic operation for deep neural networks by inverting the aforementioned design principles of convolution, coined as involution. We additionally demystify the recent popular self-attention operator and subsume it into our involution family as an over-complicated instantiation. The proposed involution operator could be leveraged as fundamental bricks to build the new generation of neural networks for visual recognition, powering different deep learning models on several prevalent benchmarks, including ImageNet classification, COCO detection and segmentation, together with Cityscapes segmentation. Our involution-based models improve the performance of convolutional baselines using ResNet-50 by up to 1.6% top-1 accuracy, 2.5% and 2.4% bounding box AP, and 4.7% mean IoU absolutely while compressing the computational cost to 66%, 65%, 72%, and 57% on the above benchmarks, respectively. Code and pre-trained models for all the tasks are available at this https URL.
PDF Link | Landing Page | Read as web page on arXiv Vanity
-
[P] PyTorch Involution layer wrapper
Have you benchmarked it against the official implementations? Would be interesting to see what the difference is versus their CUDA version.
Here's the paper if you haven't read it yet: https://arxiv.org/abs/2103.06255
efficientdet-pytorch
-
Bounding box annotations and object orientation
However, there are papers on oriented object detectors (see https://arxiv.org/pdf/1911.07732.pdf) for example. In that paper, they do achieve better results using oriented bounding boxes. If you want to go down that route, I would suggest using the EfficientDet model, because the PyTorch code that you'll find for it is quite easy to understand and modify. For example, I've taken https://github.com/zylo117/Yet-Another-EfficientDet-Pytorch, and modified it to include a "thing-ness" logit, and this was pretty easy to do. Classic EfficientDet models only include logits (aka output neurons that get softmax-ed) for each class, and if any one of these class neurons is greater than 0.5, then it is considered "a thing". Anyway - that's digression, but my point is that I've thought about adding oriented box support to an EfficientDet model, and it didn't seem to be too hard, although I haven't actually done it. If I was to start now, I would probably go with https://github.com/rwightman/efficientdet-pytorch, since Ross Wightman's models are becoming a de-facto standard in the PyTorch world for all things image-related.
What are some alternatives?
darknet - YOLOv4 / Scaled-YOLOv4 / YOLO - Neural Networks for Object Detection (Windows and Linux version of Darknet )
segmentation_models.pytorch - Segmentation models with pretrained backbones. PyTorch.
Yet-Another-EfficientDet-Pytorch - The pytorch re-implement of the official efficientdet with SOTA performance in real time and pretrained weights.
Pytorch-UNet - PyTorch implementation of the U-Net for image semantic segmentation with high quality images
mmsegmentation - OpenMMLab Semantic Segmentation Toolbox and Benchmark.
mmdetection - OpenMMLab Detection Toolbox and Benchmark
Im2Vec - [CVPR 2021 Oral] Im2Vec Synthesizing Vector Graphics without Vector Supervision
yolact_edge - The first competitive instance segmentation approach that runs on small edge devices at real-time speeds.
unilm - Large-scale Self-supervised Pre-training Across Tasks, Languages, and Modalities
ros-semantic-segmentation-pytorch - Pytorch implementation of Semantic Segmentation in ROS on MIT ADE20K dataset based on semantic-segmentation-pytorch by CSAIL
automl - Google Brain AutoML
InternImage - [CVPR 2023 Highlight] InternImage: Exploring Large-Scale Vision Foundation Models with Deformable Convolutions