Skip to content

This is an implementation of compact bilinear CNN using keras

Notifications You must be signed in to change notification settings

aniket03/keras_compact_bilnear_CNN

Repository files navigation

Keras Implementation of Compact Bilinear Pooling

This repository contains the keras implementation of Compact Bilinear CNN. Compact bilinear pooling was first introduced in paper Compact biinear pooling and gives significant performance on fine-grained image classification tasks such as bird species classification and aeroplane type categorization.

Usage

  1. Download CUB_200_2011 dataset from here. Extract the contents in folder data/CUB_200_2011
  2. Download the VGG16 weights file from here in the working directory
  3. For training only the last fully connected layer of the network, use python train_cbcnn_last.py 0 # If training without GPU python train_cbcnn_last.py 1 # If training with GPU
  4. For training the complete net after the last layer has been tuned, use: python train_cbcnn_all.py 0 # If training without GPU python train_cbcnn_all.py 0 # If training with GPU
  5. For testing the trained model, run python test_model.py

More on Applications of Compact bilinear CNN

At Squad, we further utilized Compact bilinear CNN for solving complex use cases like apparel items classification, and retrieval of similar item from in-shop and street-to-shop domain. The proposed pipeline and results are presented in the research paper [Fine-grained Apparel Classification and Retrieval without rich annotations] (https://arxiv.org/abs/1811.02385)

References

If you utilize Compact bilinear CNN for your research then pls refer Gao, Y., Beijbom, O., Zhang, N., & Darrell, T. (2016). Compact bilinear pooling. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 317-326).

Additionally if you utilize Compact bilinear CNN for solving Apparel items categorization or related use case, pls refer Bhatnagar, A., & Aggarwal, S. (2018). Fine-grained Apparel Classification and Retrieval without rich annotations. arXiv preprint arXiv:1811.02385.

Acknowledgments

I have referred Compact bilinear pooling implementation in Caffe by the authors here and tensorflow implementation here

Releases

No releases published

Packages

No packages published

Languages