ccv 0.6 open sources near state-of-the-art image classifier under Creative Commons

March 27th, 2014

In previous posts, I mentioned that the even numbered release will be bugfixes. However, 0.6 is a bit different.

For the past one and half year, deep learning, particularly deep convolutional neural network based image classification made waves in the vision community. For a library aiming at providing state-of-the-art implementations, it would be frustrating to not having a competent image classifier implemented after over a year the ground-breaking work published. In the meantime, there are a few open source libraries provided complete (Caffe) / incomplete (OverFeat, cuda-convnet) implementations of the said image classifier. However, all of them are focusing on research related activities (see their licenses: 1, 2). Thus, for the past 5 months, I’ve been working on an image classifier in ccv with deep convolutional neural network.

This version’s ccv distributed a image classifier that is trained with ILSVRC 2010 data set of 1000 classes, with top-1 missing rate at 36.83% and top-5 missing rate at 16.25%, thus, close to the state-of-the-art image classifier (Clarifai in ILSVRC 2013 gets top-5 missing rate at 11.19%: http://www.image-net.org/challenges/LSVRC/2013/results.php, the 16.25% top-5 missing rate is reproduced with ILSVRC 2010 test data set, which is known to be much less challenging). See more about this image classifier.

The license for these data models (the said image classifier, and the pedestrian detectors, the car detector, the face detector) provided in ccv ./samples is changed from BSD 3-clause license to Creative Commons Attribution 4.0 International License in hope that this more clarified license will help the adoption of these trained data models.

As always, the new image classifier is available through ccv’s RESTful interface at http://localhost:3350/convnet/classify. You can also play with ccv at http://docomputersdream.org/

Since this version is an anomaly in terms of release cycle, next two versions of ccv will be devoted to bugfixes and performance improvement. There is also a plan to enter ILSVRC 2014 and publish results on FDDB and LFW for the sake of keeping ccv’s implementation fresh and competitive.

Other changes / bugfixes in ccv 0.6:

1). Moved from hand-written configure script to autoconf (which still provides link / flag information);

2). http://ci.libccv.org/ is online to monitor builds for unstable branch and free of static analyzer reports: http://ci.libccv.org/analyze/;

3). Fixed a bug in ./serve/ccv that returned HTTP header claims to be 1.1 but never keeps the connection open;

4). RESTful interface for SWT added Tesseract (OCR) support;

5). Fixed ICF implementation problem with non-standard float point representation;

6). Fixed multi-thread bug with fftw3 usage;

Disqus