Commit 5a05d91cb9e87d81732ab25da6811d053ea90b7c

Authored by Josh Klontz
1 parent 39f7a653

fixed memory aliasing bug and caffe verbose output

openbr/plugins/classification/caffe.cpp
@@ -45,6 +45,7 @@ private: @@ -45,6 +45,7 @@ private:
45 45
46 CaffeNet *net = new CaffeNet(model, caffe::TEST); 46 CaffeNet *net = new CaffeNet(model, caffe::TEST);
47 net->CopyTrainedLayersFrom(weights.toStdString()); 47 net->CopyTrainedLayersFrom(weights.toStdString());
  48 + FLAGS_minloglevel = google::ERROR; // Disable Caffe's verbose output after loading the first model
48 return net; 49 return net;
49 } 50 }
50 }; 51 };
@@ -104,7 +105,7 @@ protected: @@ -104,7 +105,7 @@ protected:
104 105
105 int dimFeatures = output->count() / dataLayer->batch_size(); 106 int dimFeatures = output->count() / dataLayer->batch_size();
106 for (int n = 0; n < dataLayer->batch_size(); n++) 107 for (int n = 0; n < dataLayer->batch_size(); n++)
107 - dst += Mat(1, dimFeatures, CV_32FC1, output->mutable_cpu_data() + output->offset(n)); 108 + dst += Mat(1, dimFeatures, CV_32FC1, output->mutable_cpu_data() + output->offset(n)).clone();
108 109
109 caffeResource.release(net); 110 caffeResource.release(net);
110 } 111 }