Kevin James Matzen [Mon, 13 Oct 2014 18:54:48 +0000 (14:54 -0400)]
Renamed Database interface to Dataset.
Kevin James Matzen [Mon, 13 Oct 2014 17:16:04 +0000 (13:16 -0400)]
Templated the key and value types for the Database interface. The Database is now responsible for serialization. Refactored the tests so that they reuse the same code for each value type and backend configuration.
Kevin James Matzen [Mon, 13 Oct 2014 01:39:33 +0000 (21:39 -0400)]
Switched some Database logging statements from LOG to DLOG.
Kevin James Matzen [Mon, 13 Oct 2014 01:36:59 +0000 (21:36 -0400)]
Added function to Database interface to retrieve keys. Exposed a bug with LMDB iterators. Fix the bug and updated how invalid iterators are represented.
Kevin James Matzen [Mon, 13 Oct 2014 00:54:39 +0000 (20:54 -0400)]
Changed Database::buffer_t to Database::key_type and Database::value_type
Kevin James Matzen [Mon, 13 Oct 2014 00:43:01 +0000 (20:43 -0400)]
The LevelDB iterator/DB deallocation order bug is pretty much fixed by having each iterator hold a shared pointer to the DB. I manually specified a deconstructor for the LeveldbState to make it clear what order these two things need to be deallocated in.
Kevin James Matzen [Mon, 13 Oct 2014 00:30:29 +0000 (20:30 -0400)]
Updated Database interface to take key and value by const reference for put and key by const reference for put. Additional copies are made for get and put in the LMDB implementation.
Kevin James Matzen [Mon, 13 Oct 2014 00:20:31 +0000 (20:20 -0400)]
Updated Database interface so that rather than CHECKing for certain conditions inside open, put, get, and commit, these functions return a bool indicating whether or not the operation was successful or a failure. This means the caller is now responsible for error checking.
Kevin James Matzen [Sun, 12 Oct 2014 22:43:44 +0000 (18:43 -0400)]
Added some tests for the Database iterator interface. Updated the post-increment operator so that it forks off a copy of the LevelDB or LMDB iterator/cursor when necessary. Neither of these APIs allow you to directly copy an iterator or cursor, so I create a new iterator and seek to the key that the previous one was currently on. This means the pre-increment operator can be much cheaper than the post-increment operator.
Kevin James Matzen [Sun, 12 Oct 2014 20:31:17 +0000 (16:31 -0400)]
Added get interface to Database. Added test cases for Database. Fixed a few bugs related to ReadOnly mode in Database in order to pass test cases.
Kevin James Matzen [Sun, 12 Oct 2014 18:47:04 +0000 (14:47 -0400)]
Added a couple of sanity checks to make sure the datum buffer sizes matched what we expected.
Kevin James Matzen [Sun, 12 Oct 2014 18:39:31 +0000 (14:39 -0400)]
Updated Database interface to use custom KV type rather than std::pair. Removed two buffer copies in dereference operation for DB iterators.
Kevin James Matzen [Sun, 12 Oct 2014 18:15:17 +0000 (14:15 -0400)]
Updated extract_features to take a leveldb/lmdb config option.
Kevin James Matzen [Fri, 10 Oct 2014 23:47:50 +0000 (19:47 -0400)]
Switched create_cifar10.sh output from leveldb to lmdb.
Kevin James Matzen [Wed, 8 Oct 2014 16:15:23 +0000 (16:15 +0000)]
Updated cifar10 build script to specify db backend.
Kevin James Matzen [Wed, 8 Oct 2014 02:10:20 +0000 (22:10 -0400)]
data layer test was relying on the autocommit on close db behavior that was recently removed.
Kevin James Matzen [Wed, 8 Oct 2014 01:46:15 +0000 (21:46 -0400)]
Don't autocommit on close for the databases. If they were read-only, then they might fail.
Kevin James Matzen [Tue, 7 Oct 2014 22:03:02 +0000 (18:03 -0400)]
Updated interface to make fewer string copies.
Kevin James Matzen [Tue, 7 Oct 2014 20:14:29 +0000 (16:14 -0400)]
Some cleanup to make travis happy.
Kevin James Matzen [Tue, 7 Oct 2014 19:37:35 +0000 (15:37 -0400)]
Refactored leveldb and lmdb code.
Yangqing Jia [Tue, 14 Oct 2014 20:58:06 +0000 (13:58 -0700)]
Merge pull request #1277 from Yangqing/dev
some more namespace cleaning.
Yangqing Jia [Mon, 13 Oct 2014 23:01:07 +0000 (16:01 -0700)]
some namespace cleaning.
Jeff Donahue [Tue, 14 Oct 2014 18:41:40 +0000 (11:41 -0700)]
Revert "OpenCV should be compiled using pkg-config options." -- breaks
compilation on working systems
This reverts commit
4587b2f9043996fed36fc989c00329ec829ecae9.
Yangqing Jia [Mon, 13 Oct 2014 22:53:51 +0000 (15:53 -0700)]
Merge pull request #1270 from Yangqing/dev
Give back to layer what is layer's, and to factory what is factory's
Yangqing Jia [Mon, 13 Oct 2014 22:25:41 +0000 (15:25 -0700)]
move registration code to corresponding cpp files.
Yangqing Jia [Mon, 13 Oct 2014 20:56:26 +0000 (13:56 -0700)]
Merge pull request #1269 from Yangqing/dev
Minor change: some namespace simplification
Yangqing Jia [Mon, 13 Oct 2014 20:48:27 +0000 (13:48 -0700)]
some namespace simplification
Yangqing Jia [Sun, 12 Oct 2014 00:41:48 +0000 (17:41 -0700)]
Merge pull request #1264 from Yangqing/dev
Clean flaky code
Yangqing Jia [Sat, 11 Oct 2014 19:35:40 +0000 (19:35 +0000)]
fix flaky math functions, remove unnecessary instantiations.
Yangqing Jia [Sat, 11 Oct 2014 19:35:06 +0000 (19:35 +0000)]
fix flaky test EXPECT_EQ code, using EXPECT_FLOAT_NEAR per Jeff
Evan Shelhamer [Sat, 11 Oct 2014 21:44:59 +0000 (14:44 -0700)]
Merge pull request #1261 from kmatzen/minor_changes
[fix] build with OpenCV 3 and other minor fixes
Kevin James Matzen [Fri, 10 Oct 2014 22:42:27 +0000 (18:42 -0400)]
Fixed CMakeList to work with OpenCV 3.
Kevin James Matzen [Mon, 29 Sep 2014 16:45:25 +0000 (12:45 -0400)]
Added version dependent test for IMREAD_COLOR.
Kevin James Matzen [Tue, 23 Sep 2014 15:29:31 +0000 (11:29 -0400)]
OpenCV should be compiled using pkg-config options.
Kevin James Matzen [Tue, 23 Sep 2014 14:47:40 +0000 (10:47 -0400)]
Minor fixes. (1) cudnn.hpp uses CHECK_EQ internally, so it needs to include glog at some point. Including caffe/common.hpp. (2) I often misconfigure some layer and softmax breaks when the dimensionality is too small for the input layers. Check and fail fast. (3) CV_LOAD_IMAGE_COLOR is deprecated and has been removed in OpenCV 3.0. Replaced with cv::IMREAD_COLOR.
Yangqing Jia [Sat, 11 Oct 2014 05:08:55 +0000 (22:08 -0700)]
Merge pull request #1258 from Yangqing/instantiation
fix instantiation per C++ standard
Yangqing Jia [Sat, 11 Oct 2014 05:01:28 +0000 (05:01 +0000)]
adding missing libraries - lm and lstdc++
Yangqing Jia [Fri, 10 Oct 2014 04:41:11 +0000 (21:41 -0700)]
fix instantiation
Evan Shelhamer [Fri, 10 Oct 2014 07:16:31 +0000 (00:16 -0700)]
Merge pull request #1195 from longjon/python-copy-from
Expose Net.copy_from and Net.share_with in pycaffe
Evan Shelhamer [Wed, 8 Oct 2014 23:54:18 +0000 (16:54 -0700)]
Merge pull request #1206 from BlGene/dev
Fix python plugin to work with new layer factory in CMake build
max argus [Sat, 4 Oct 2014 11:46:38 +0000 (11:46 +0000)]
Fix CMake build of pycaffe
- generate right shared library name
- fix CMake linking with the new layer factory
- find numpy
Fix finding protobuf.
Evan Shelhamer [Wed, 8 Oct 2014 16:58:49 +0000 (09:58 -0700)]
Merge pull request #1227 from longjon/crash-backtrace
Use glog to provide a backtrace on crash
Evan Shelhamer [Wed, 8 Oct 2014 16:54:32 +0000 (09:54 -0700)]
Merge pull request #1232 from baeuml/cmake-move-dependency-discovery
[cmake] move dependency discovery to root CMakeLists.txt
Martin Baeuml [Tue, 7 Oct 2014 08:35:00 +0000 (10:35 +0200)]
[cmake] move dependency finding to root CMakeLists.txt
In this way, custom include directories for the dependencies are
also available for tools/ and the bindings. This is necessary for
example when someone is using custom built dependencies which are
not installed in the system's default directories (e.g. OpenCV includes
are required in tools/ through io.hpp)
Jonathan L Long [Mon, 6 Oct 2014 23:35:33 +0000 (16:35 -0700)]
correct naming in comment and message about average_loss
Jeff Donahue [Sat, 4 Oct 2014 17:00:59 +0000 (10:00 -0700)]
SliceLayer: fix whitespace
Jonathan L Long [Mon, 6 Oct 2014 20:27:10 +0000 (13:27 -0700)]
use glog to provide a backtrace on crash
Evan Shelhamer [Mon, 6 Oct 2014 15:14:37 +0000 (08:14 -0700)]
Merge pull request #1223 from baeuml/fix_pthread_link_cmake
[fix] set pthread last in linking order for gflags for CMake
Evan Shelhamer [Mon, 6 Oct 2014 14:50:25 +0000 (07:50 -0700)]
Merge pull request #1179 from ducha-aiki/fix_pthread_link
[fix] put pthread last in order for gflags
Martin Baeuml [Mon, 6 Oct 2014 11:48:29 +0000 (13:48 +0200)]
change linking order such that pthread comes in the back
This resolves an error with the static gflags library which would
other wise not link properly with an undefined reference to symbol 'pthread_rwlock_wrlock@@GLIBC_2.2.5'
error under Ubuntu 14.04.
Dmytro Mishkin [Mon, 6 Oct 2014 07:32:47 +0000 (10:32 +0300)]
change -lpthread to -pthread in linking
Compilation flags is already there
Sergio Guadarrama [Mon, 6 Oct 2014 02:37:59 +0000 (19:37 -0700)]
Merge pull request #1221 from sguada/fix_cuddn_pooling
Missing param.pad condition for CUDNN pooling
Sergio [Sun, 5 Oct 2014 21:34:55 +0000 (14:34 -0700)]
Missing param.pad condition for CUDNN pooling
Sergio Guadarrama [Sat, 4 Oct 2014 02:18:48 +0000 (19:18 -0700)]
Merge pull request #1070 from sguada/move_data_mean
Refactor data_transform to allow datum, cv:Mat and Blob transformation
Evan Shelhamer [Sat, 4 Oct 2014 01:03:02 +0000 (18:03 -0700)]
uin8 spell check
Evan Shelhamer [Sat, 4 Oct 2014 01:02:32 +0000 (18:02 -0700)]
bundle pixel mean into CaffeNet as comments
Sergio Guadarrama [Fri, 26 Sep 2014 23:35:21 +0000 (16:35 -0700)]
Fixed crop error and add test_data_transformer
Make lint happy
Fix Name conventions
Sergio [Fri, 26 Sep 2014 03:07:01 +0000 (20:07 -0700)]
Fix calls to Rand() and test_data_layer error
Remove benchmarking code, fixed data_transformer doxygen docs
Sergio [Fri, 26 Sep 2014 02:53:33 +0000 (19:53 -0700)]
Fix OSX compilation for nvcc with opencv
Sergio [Wed, 24 Sep 2014 21:58:11 +0000 (14:58 -0700)]
Added mean_value to specify mean channel substraction
Added example of use to models/bvlc_reference_caffenet/train_val_mean_value.prototxt
Sergio [Wed, 24 Sep 2014 20:41:11 +0000 (13:41 -0700)]
Added more tests to test_io for CVMatToDatum
Sergio [Wed, 24 Sep 2014 19:39:59 +0000 (12:39 -0700)]
Add ReadImageToDatumReference to test_io
Evan Shelhamer [Fri, 3 Oct 2014 21:24:00 +0000 (14:24 -0700)]
Merge pull request #1214 from sguada/global_pooling
Add global_pooling to cover the whole input by setting kernel size to bottom size
Evan Shelhamer [Fri, 3 Oct 2014 20:53:52 +0000 (13:53 -0700)]
[fix] include Python.h instead of re-ordering for pycaffe build on OS X
Evan Shelhamer [Fri, 3 Oct 2014 20:44:36 +0000 (13:44 -0700)]
[fix] bend pycaffe to the whims of OS X header order
To build pycaffe on OS X the boost headers need to be in this order.
OS X is a bewildering platform.
Evan Shelhamer [Fri, 3 Oct 2014 20:42:57 +0000 (13:42 -0700)]
Merge pull request #1215 from shelhamer/clang-whole-archive
[fix] translate g++ whole archive to force load for clang++ compilation
Evan Shelhamer [Fri, 3 Oct 2014 20:30:21 +0000 (13:30 -0700)]
[fix] set cmake static link command for clang++ and g++ globally
Evan Shelhamer [Wed, 1 Oct 2014 18:50:42 +0000 (11:50 -0700)]
[fix] translate g++ whole archive to force load for clang++ compilation
To build with the layer registry clang++ requires `-force_load` as
g++ requires `--whole-archive`.
Sergio [Fri, 3 Oct 2014 15:19:40 +0000 (08:19 -0700)]
Added global_pooling to set the kernel size equal to the bottom size
Added check for padding and stride with global_pooling
Sergio [Wed, 24 Sep 2014 14:36:13 +0000 (07:36 -0700)]
Add CVMatToDatum
Sergio [Fri, 26 Sep 2014 02:59:37 +0000 (19:59 -0700)]
Added test_io and faster cv::Mat processing
Conflicts:
src/caffe/util/io.cpp
Sergio Guadarrama [Tue, 23 Sep 2014 00:07:40 +0000 (17:07 -0700)]
Add flag check_size=false to convert_imageset
Sergio [Fri, 26 Sep 2014 02:58:52 +0000 (19:58 -0700)]
Refactor common code
Make lint happy
Conflicts:
src/caffe/data_transformer.cpp
Sergio Guadarrama [Fri, 19 Sep 2014 15:57:00 +0000 (08:57 -0700)]
Update description data_transformer.hpp
Sergio Guadarrama [Sat, 20 Sep 2014 00:23:39 +0000 (17:23 -0700)]
Remove Datum from WindowDataLayer
Conflicts:
src/caffe/layers/window_data_layer.cpp
Sergio [Fri, 26 Sep 2014 02:58:06 +0000 (19:58 -0700)]
Initial cv::Mat transformation
Added cv::Mat transformation to ImageDataLayer
Conflicts:
src/caffe/layers/image_data_layer.cpp
Added transform Datum to Blob
Conflicts:
src/caffe/layers/base_data_layer.cpp
src/caffe/layers/base_data_layer.cu
Added transform cv::Mat to Blob
Added transform Vector<Datum> to Blob
Conflicts:
src/caffe/data_transformer.cpp
Sergio Guadarrama [Thu, 11 Sep 2014 22:19:57 +0000 (15:19 -0700)]
Fixed MemoryDataLayer to make it work with pycaffe
Sergio Guadarrama [Sat, 20 Sep 2014 00:10:59 +0000 (17:10 -0700)]
Move data_mean into data_transformer remove datum_* from BaseData
Conflicts:
src/caffe/layers/memory_data_layer.cpp
Jeff Donahue [Fri, 3 Oct 2014 01:26:44 +0000 (18:26 -0700)]
Merge pull request #1204 from jeffdonahue/exp-layer
EXP neuron layer
Jeff Donahue [Fri, 3 Oct 2014 00:11:38 +0000 (17:11 -0700)]
save/restore shared weights unit test
Jeff Donahue [Thu, 2 Oct 2014 23:20:04 +0000 (16:20 -0700)]
[fix] comment typo
Jeff Donahue [Thu, 2 Oct 2014 06:12:06 +0000 (23:12 -0700)]
Add ExpLayer to calculate y = base ^ (scale * x + shift)
Jeff Donahue [Thu, 2 Oct 2014 06:11:41 +0000 (23:11 -0700)]
Add caffe_gpu_exp math function
Yangqing Jia [Thu, 2 Oct 2014 20:01:17 +0000 (13:01 -0700)]
Merge pull request #1208 from Yangqing/dev
add factory header to caffe hpp
Jonathan L Long [Thu, 2 Oct 2014 19:50:32 +0000 (12:50 -0700)]
[pycaffe] expose Net::SharedTrainedLayersWith as Net.share_with
Evan Shelhamer [Thu, 2 Oct 2014 19:50:46 +0000 (12:50 -0700)]
Merge pull request #1196 from longjon/python-solver-improvements
Python solver improvements
Jonathan L Long [Wed, 1 Oct 2014 02:06:18 +0000 (19:06 -0700)]
[pycaffe] expose Net::CopyTrainedLayersFrom as Net.copy_from
This allows finetuning from Python, for example.
Yangqing Jia [Thu, 2 Oct 2014 19:11:45 +0000 (12:11 -0700)]
add factory header to caffe hpp
Jonathan L Long [Thu, 2 Oct 2014 18:53:55 +0000 (11:53 -0700)]
Back-merge to include #1198
Jonathan L Long [Thu, 2 Oct 2014 18:52:48 +0000 (11:52 -0700)]
Merge pull request #1198 from dbbert/patch-1
Bert [Wed, 1 Oct 2014 13:29:24 +0000 (15:29 +0200)]
Update detect.py
This generator causes an error in detect_windows because it is run twice there.
Better store it as a data structure instead.
Jeff Donahue [Thu, 2 Oct 2014 18:19:05 +0000 (11:19 -0700)]
[fix] lint causing travis failures
Evan Shelhamer [Thu, 2 Oct 2014 07:12:31 +0000 (00:12 -0700)]
Merge pull request #951 from gcinbis/patch-1
Lock the mex file to avoid MATLAB crashes
Jeff Donahue [Thu, 2 Oct 2014 03:53:31 +0000 (20:53 -0700)]
caffe.proto: do some minor cleanup (fix comments, alphabetization)
Jeff Donahue [Wed, 1 Oct 2014 21:47:16 +0000 (14:47 -0700)]
Back-merge branch 'master' into dev (for fix in PR #1203)
Jeff Donahue [Wed, 1 Oct 2014 21:46:18 +0000 (14:46 -0700)]
Merge pull request #1203 from jeffdonahue/fix-output-blob-indexing
[fix] solver indexing of output blobs was incorrect for non-singleton outputs
Jeff Donahue [Wed, 1 Oct 2014 21:19:30 +0000 (14:19 -0700)]
[fix] solver indexing of output blobs was incorrect for non-singleton
outputs
Jeff Donahue [Wed, 1 Oct 2014 07:50:55 +0000 (00:50 -0700)]
Merge pull request #1096 from qipeng/smoothed-cost
Display averaged loss over the last several iterations
Jonathan L Long [Wed, 1 Oct 2014 03:26:25 +0000 (20:26 -0700)]
[pycaffe] expose SGDSolver.iter
Jonathan L Long [Wed, 1 Oct 2014 03:24:47 +0000 (20:24 -0700)]
add accessor for Solver::iter_
This will be useful in code controlling the solver (from pycaffe, for
example).