Vectorized implementation of convolutional neural networks (CNN) in Matlab for both visual recognition and image processing. It's a unified framework for both high level and low level computer vision tasks.
You can directly try the demos without referring to any materials in the project website.
- For MNIST, you can launch this script to use a pre-trained model. For training, just launch this script. You will get sensible results within seconds.
- For image denoise, launch this script to see the denoise result by pre-train models. For training, you need to generate the data yourself since the data used in the training is large. Please do the following steps to generate data: a) download MIT saliency dataset from here and put all the image files here; b) launch this script to generate training data; c) launch this script to generate validation data; d) launch this script to start the training.
Please visit the project website for all documents, examples and videos.
- Matlab 2014b or later, CUDA 6.0 or later (currently tested in Windows 7)
- A Nvidia GPU with 2GB GPU memory or above (if you would like to run on GPU). You can also train a new model without a GPU by specifying "config.compute_device = 'CPU';" in the config file (e.g. mnist_configure.m).
Jimmy SJ. Ren (jimmy.sj.ren@gmail.com)
Li Xu (nathan.xuli@gmail.com)
Cite our papers if you find this software useful.
- Jimmy SJ. Ren and Li Xu, "On Vectorization of Deep Convolutional Neural Networks for Vision Tasks",
The 29th AAAI Conference on Artificial Intelligence (AAAI-15). Austin, Texas, USA, January 25-30, 2015
VCNN was used in the following papers.
- Li Xu, Jimmy SJ. Ren, Ce Liu, Jiaya Jia, "Deep Convolutional Neural Network for Image Deconvolution", Advances in Neural Information Processing Systems (NIPS 2014). Montreal, Quebec, Canada, December 8-13, 2014
- Li Xu, Jimmy SJ. Ren, Qiong Yan, Renjie Liao, Jiaya Jia, "Deep Edge-Aware Filters", The 32nd International Conference on Machine Learning (ICML 2015). Lille, France, July 6-11, 2015