Skip to content

aravindhm/caffe

 
 

Repository files navigation

Caffe: Convolutional Architecture for Fast Feature Extraction

Created by Yangqing Jia, Department of EECS, University of California, Berkeley. Maintained by the Berkeley Vision and Learning Center (BVLC).

Introduction

Caffe aims to provide computer vision scientists with a clean, modifiable implementation of state-of-the-art deep learning algorithms. Network structure is easily specified in separate config files, with no mess of hard-coded parameters in the code. Python and Matlab wrappers are provided.

At the same time, Caffe fits industry needs, with blazing fast C++/Cuda code for GPU computation. Caffe is currently the fastest GPU CNN implementation publicly available, and is able to process more than 20 million images per day on a single Tesla K20 machine *.

Caffe also provides seamless switching between CPU and GPU, which allows one to train models with fast GPUs and then deploy them on non-GPU clusters with one line of code: Caffe::set_mode(Caffe::CPU).

Even in CPU mode, computing predictions on an image takes only 20 ms when images are processed in batch mode.

* When measured with the SuperVision model that won the ImageNet Large Scale Visual Recognition Challenge 2012.

License

Caffe is BSD 2-Clause licensed (refer to the LICENSE for details).

The pretrained models published by the BVLC, such as the Caffe reference ImageNet model are licensed for academic research / non-commercial use only. However, Caffe is a full toolkit for model training, so start brewing your own Caffe model today!

Citing Caffe

Please kindly cite Caffe in your publications if it helps your research:

@misc{Jia13caffe,
  Author = {Yangqing Jia},
  Title = { {Caffe}: An Open Source Convolutional Architecture for Fast Feature Embedding},
  Year  = {2013},
  Howpublished = {\url{http://caffe.berkeleyvision.org/}
}

Contributing

Caffe is developed with the community by the Berkeley Vision and Learning Center. We welcome contributions!

To join in, please note this policy:

  • Do your work in feature branches.
  • Bring your work up-to-date by rebasing onto the latest dev. Polish your changes by interactive rebase if you like too.
  • Pull request your contribution to BVLC/caffe's dev branch for discussion and review.
  • dev is for new development, community contributions, and testing.
  • master is handled by BVLC, which will integrate changes from dev.

Expect a more detailed contributing guide soon. Thank you.

Packages

No packages published

Languages

  • C++ 97.5%
  • Python 2.0%
  • Other 0.5%