1 问题
CXX src/caffe/layers/window_data_layer.cpp
src/caffe/layers/window_data_layer.cpp: In member function ‘virtual void caffe::WindowDataLayer<Dtype>::load_batch(caffe::Batch<Dtype>*)’:
src/caffe/layers/window_data_layer.cpp:293:42: error: ‘CV_LOAD_IMAGE_COLOR’ was not declared in this scope
cv_img = cv::imread(image.first, CV_LOAD_IMAGE_COLOR);
^~~~~~~~~~~~~~~~~~~
src/caffe/layers/window_data_layer.cpp:293:42: note: suggested alternative: ‘CV_IS_IMAGE_HDR’
cv_img = cv::imread(image.first, CV_LOAD_IMAGE_COLOR);
^~~~~~~~~~~~~~~~~~~
CV_IS_IMAGE_HDR
make: *** [Makefile:592: .build_release/src/caffe/layers/window_data_layer.o] Error 1
2 解决
将CV_LOAD_IMAGE_COLOR 改成 cv::IMREAD_COLOR
3 问题
/usr/bin/ld: /usr/local/lib/libgflags.a(gflags.cc.o):relocation R_X86_64_32S against
4 解决
进入gflags/build中,找到CMakeCache.txt
改为CMAKE_CXX_FLAGS:STRING=-fPIC
再执行就可以
export CXXFLAGS="-fPIC" && cmake .. && make VERBOSE=1
make && make install
5问题
src/caffe/util/io.cpp: In function ‘cv::Mat caffe::ReadImageToCVMat(const string&, int, int, bool)’:
src/caffe/util/io.cpp:77:9: error: ‘IMREAD_COLOR_GRAYSCALE’ is not a member of ‘cv’
cv::IMREAD_COLOR_GRAYSCALE);
6 解决
iff --git a/src/caffe/util/io.cpp b/src/caffe/util/io.cpp
index 5295d9dd..be613a83 100644
--- a/src/caffe/util/io.cpp
+++ b/src/caffe/util/io.cpp
@@ -73,8 +73,8 @@ void WriteProtoToBinaryFile(const Message& proto, const char* filename) {
cv::Mat ReadImageToCVMat(const string& filename,
const int height, const int width, const bool is_color) {
cv::Mat cv_img;
- int cv_read_flag = (is_color ? CV_LOAD_IMAGE_COLOR :
- CV_LOAD_IMAGE_GRAYSCALE);
+ int cv_read_flag = (is_color ? cv::IMREAD_COLOR:
+ cv::IMREAD_GRAYSCALE);
cv::Mat cv_img_origin = cv::imread(filename, cv_read_flag);
if (!cv_img_origin.data)