summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorKai Li <kaili_kloud@163.com>2014-02-26 05:55:58 +0800
committerKai Li <kaili_kloud@163.com>2014-03-19 23:04:42 +0800
commitdd13fa07ca41809d886486a1bdb65ce3e82e105d (patch)
tree9668ab11a8bd67feb6df579d3cdda002627d2080 /examples
parent23eecde6b7a0b5cdfbce640b1c76c39ac9bd5573 (diff)
downloadcaffe-dd13fa07ca41809d886486a1bdb65ce3e82e105d.tar.gz
caffe-dd13fa07ca41809d886486a1bdb65ce3e82e105d.tar.bz2
caffe-dd13fa07ca41809d886486a1bdb65ce3e82e105d.zip
Fix saving real valued feature bug in the feature extraction example
Diffstat (limited to 'examples')
-rw-r--r--examples/demo_extract_features.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/examples/demo_extract_features.cpp b/examples/demo_extract_features.cpp
index d16ee70b..088cc281 100644
--- a/examples/demo_extract_features.cpp
+++ b/examples/demo_extract_features.cpp
@@ -137,20 +137,16 @@ int feature_extraction_pipeline(int argc, char** argv) {
datum.set_channels(1);
datum.clear_data();
datum.clear_float_data();
- string* datum_string = datum.mutable_data();
const Dtype* feature_blob_data = feature_blob->cpu_data();
for (int d = 0; d < dim_features; ++d) {
- const char* data_byte = reinterpret_cast<const char*>(feature_blob_data
- + d);
- for (int i = 0; i < num_bytes_of_binary_code; ++i) {
- datum_string->push_back(data_byte[i]);
- }
+ datum.add_float_data(feature_blob_data[d]);
}
string value;
datum.SerializeToString(&value);
snprintf(key_str, max_key_str_length, "%d", image_index);
batch->Put(string(key_str), value);
- if (++image_index % 1000 == 0) {
+ ++image_index;
+ if (image_index % 1000 == 0) {
db->Write(leveldb::WriteOptions(), batch);
LOG(ERROR)<< "Extracted features of " << image_index << " query images.";
delete batch;