Are you sure you want to delete this task? Once this task is deleted, it cannot be recovered.
Hao Zhang bcc2883c43 | 4 years ago | |
---|---|---|
doc | 6 years ago | |
src | 5 years ago | |
LICENSE | 6 years ago | |
README.txt | 4 years ago |
Bilinear CNN (B-CNN) for Fine-grained recognition
DESCRIPTIONS
After getting the deep descriptors of an image, bilinear pooling computes
the sum of the outer product of those deep descriptors. Bilinear pooling
captures all pairwise descriptor interactions, i.e., interactions of
different part, in a translational invariant manner.
B-CNN provides richer representations than linear models, and B-CNN achieves
better performance than part-based fine-grained models with no need for
further part annotation.
Please note that this repo is relative old, which is writen in PyTorch 0.3.0.
If you are using newer version of PyTorch (say, >=0.4.0), it is suggested to
consider using this repo https://github.com/HaoMood/blinear-cnn-faster instead.
REFERENCE
T.-Y. Lin, A. RoyChowdhury, and S. Maji. Bilinear CNN models for
fine-grained visual recognition. In Proceedings of the IEEE International
Conference on Computer Vision, pages 1449--1457, 2015.
PREREQUIREMENTS
Python3.6 with Numpy supported
PyTorch
LAYOUT
./data/ # Datasets
./doc/ # Automatically generated documents
./src/ # Source code
USAGE
Step 1. Fine-tune the fc layer only. It gives 76.77% test set accuracy.
$ CUDA_VISIBLE_DEVICES=0,1,2,3 ./src/bilinear_cnn_fc.py --base_lr 1.0 \
--batch_size 64 --epochs 55 --weight_decay 1e-8 \
| tee "[fc-] base_lr_1.0-weight_decay_1e-8-epoch_.log"
Step 2. Fine-tune all layers. It gives 84.17% test set accuracy.
$ CUDA_VISIBLE_DEVICES=0,1,2,3 ./src/bilinear_cnn_all.py --base_lr 1e-2 \
--batch_size 64 --epochs 25 --weight_decay 1e-5 \
--model "model.pth" \
| tee "[all-] base_lr_1e-2-weight_decay_1e-5-epoch_.log"
AUTHOR
Hao Zhang: zhangh0214@gmail.com
LICENSE
CC BY-SA 3.0
PyTorch implementation of bilinear CNN for fine-grained image recognition
Python
Dear OpenI User
Thank you for your continuous support to the Openl Qizhi Community AI Collaboration Platform. In order to protect your usage rights and ensure network security, we updated the Openl Qizhi Community AI Collaboration Platform Usage Agreement in January 2024. The updated agreement specifies that users are prohibited from using intranet penetration tools. After you click "Agree and continue", you can continue to use our services. Thank you for your cooperation and understanding.
For more agreement content, please refer to the《Openl Qizhi Community AI Collaboration Platform Usage Agreement》