Giter Club home page Giter Club logo

caffe_train's Introduction

Caffe_train

Our modified caffe for training multi-person pose estimator. The original caffe version is in July 2016. This repository at least runs on Ubuntu 14.04, OpenCV 2.4.10, CUDA 7.5/8.0, and CUDNN 5.

The full project repo includes detailed training steps and the testing code in matlab, C++ and python.

We add customized caffe layer for data augmentation: cpm_data_transformer.cpp, including scale augmentation e.g., in the range of 0.7 to 1.3, rotation augmentation, e.g., in the range of -40 to 40 degrees, flip augmentation and image cropping. This augmentation strategy makes the method capable of dealing with a large range of scales and orientations. You can set the augmentation parameters in setLayers.py. Example data layer parameters in the training prototxt is:

layer {
  name: "data"
  type: "CPMData"
  top: "data"
  top: "label"
  data_param {
    source: "/home/zhecao/COCO_kpt/lmdb_trainVal"
    batch_size: 10
    backend: LMDB
  }
  cpm_transform_param {
    stride: 8
    max_rotate_degree: 40
    visualize: false
    crop_size_x: 368
    crop_size_y: 368
    scale_prob: 1
    scale_min: 0.5
    scale_max: 1.1
    target_dist: 0.6
    center_perterb_max: 40
    do_clahe: false
    num_parts: 56
    np_in_lmdb: 17
  }
}

This project is licensed under the terms of the GPL v3 license License. We will merge it with the caffe testing version (https://github.com/CMU-Perceptual-Computing-Lab/caffe_rtpose) later.

Citation

Please cite the paper in your publications if it helps your research:

@article{cao2016realtime,
  title={Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields},
  author={Zhe Cao and Tomas Simon and Shih-En Wei and Yaser Sheikh},
  journal={arXiv preprint arXiv:1611.08050},
  year={2016}
  }

@inproceedings{wei2016cpm,
  author = {Shih-En Wei and Varun Ramakrishna and Takeo Kanade and Yaser Sheikh},
  booktitle = {CVPR},
  title = {Convolutional pose machines},
  year = {2016}
  }

Caffe

Build Status License

Caffe is a deep learning framework made with expression, speed, and modularity in mind. It is developed by the Berkeley Vision and Learning Center (BVLC) and community contributors.

Check out the project site for all the details like

and step-by-step examples.

Join the chat at https://gitter.im/BVLC/caffe

Please join the caffe-users group or gitter chat to ask questions and talk about methods and models. Framework development discussions and thorough bug reports are collected on Issues.

Happy brewing!

License and Citation

Caffe is released under the BSD 2-Clause license. The BVLC reference models are released for unrestricted use.

Please cite Caffe in your publications if it helps your research:

@article{jia2014caffe,
  Author = {Jia, Yangqing and Shelhamer, Evan and Donahue, Jeff and Karayev, Sergey and Long, Jonathan and Girshick, Ross and Guadarrama, Sergio and Darrell, Trevor},
  Journal = {arXiv preprint arXiv:1408.5093},
  Title = {Caffe: Convolutional Architecture for Fast Feature Embedding},
  Year = {2014}
}

caffe_train's People

Contributors

blgene avatar cypof avatar dgolden1 avatar ducha-aiki avatar eelstork avatar erictzeng avatar flx42 avatar jamt9000 avatar jeffdonahue avatar jyegerlehner avatar kkhoot avatar kloudkl avatar longjon avatar lukeyeager avatar mavenlin avatar mohomran avatar mtamburrano avatar netheril96 avatar philkr avatar qipeng avatar rbgirshick avatar ronghanghu avatar sergeyk avatar sguada avatar shelhamer avatar ste-m5s avatar timmeinhardt avatar tnarihi avatar yangqing avatar yosinski avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

caffe_train's Issues

Bus error when training until iteration 4110

Hi,
I try to reproduce your results in the repository Realtime_Multi-Person_Pose_Estimation, and I follow the Training Steps in README to download the LMDB data and this repository for training.

I've tried three times for training, but each time when the iteration reaches 4110, I always get the following error:

I1031 21:17:26.459512 32355 sgd_solver.cpp:106] Iteration 4110, lr = 2e-05
*** Aborted at 1509455849 (unix time) try "date -d @1509455849" if you are using GNU date ***
PC: @     0x7fc0ee06da5e (unknown)
*** SIGBUS (@0x7ee49acba50e) received by PID 32355 (TID 0x7fc0b33dd700) from PID 18446744072011621646; stack trace: ***
    @     0x7fc0ee009cb0 (unknown)
    @     0x7fc0ee06da5e (unknown)
    @     0x7fc0eee2b9de (unknown)
    @     0x7fc0eee2ba2b (unknown)
    @     0x7fc0eff43cea caffe::db::LMDBCursor::value()
    @     0x7fc0effc890e caffe::DataReader::Body::read_one()
    @     0x7fc0effc8ef4 caffe::DataReader::Body::InternalThreadEntry()
    @     0x7fc0eff3bea5 caffe::InternalThread::entry()
    @     0x7fc0e52e242f thread_proxy
    @     0x7fc0d6cb4184 start_thread
    @     0x7fc0ee0d0ffd (unknown)
    @                0x0 (unknown)
Bus error

I create a script for training, and its contents are as following:

#!/usr/bin/env sh
/path/to/caffe.bin train --solver=pose_solver.prototxt --gpu=1 --weights=../../../model/vgg/VGG_ILSVRC_19_layers.caffemodel 2>&1 | tee output/$(date +%y%m%d_%H%M).txt 

Do you have any idea about this?

Many thanks.

testing

follow the testing step you give ,the model is the pose_iter_440000,the final AP is 6 point lower than the paper shared, i want to know if you change the test code published in matlab later or you test using the openpose code,confused now,thank you!

memory leak

It seems that this version of Caffe encounters severe memory leak, the memory can be up to > 100GB, will you fix this.

about CPMDataTransformer.cpp

I found in lmdb file,the kepoints label format is(1:can be seen on image; 2:cropped; 0:occluded by still on image).however in your CPMDataTransformer.cpp, i found this

 float isVisible;
  DecodeFloats(data, offset3+(9+meta.numOtherPeople+3*p+2)*offset1+4*i, &isVisible, 1);
  meta.joint_others[p].isVisible[i] = (isVisible == 0) ? 0 : 1;
  if(meta.joint_others[p].joints[i].x < 0 || meta.joint_others[p].joints[i].y < 0 ||
     meta.joint_others[p].joints[i].x >= meta.img_size.width || meta.joint_others[p].joints[i].y >= meta.img_size.height){
    meta.joint_others[p].isVisible[i] = 2; // **2 means cropped, 1 means occluded by still on image**
  }

so ,am i wrong?

What are the meanings of meta.write_number and meta.total_write_number?

Hello, thanks for this great model first.

I have a few questions.
Is it possible to train the data with my personal data?
I've trained it with my personal data, but the meta.write_number is equal to 0 all the time.
I want to know what's the difference between meta.write_number and meta.total_write_number?

Thank you very much!

This is part of my logs:

I0827 17:11:04.304325 6117 cpm_data_transformer.cpp:73] dataset: COCO; img_size: [427 x 640]; meta.annolist_index: 44; meta.write_number: 0; meta.total_write_number: 41; meta.epoch: 0
I0827 17:11:04.588376 6107 net.cpp:150] Setting up conv1_1
I0827 17:11:04.588404 6107 net.cpp:157] Top shape: 4 64 368 368 (34668544)
I0827 17:11:04.588409 6107 net.cpp:165] Memory required for data: 199411840
I0827 17:11:04.588433 6107 layer_factory.hpp:77] Creating layer relu1_1

Compilations error since the `opencv_contrib`

When I compile the caffe_train I get some error with opencv_cotrib module.
Here are the error:

PROTOC src/caffe/proto/caffe.proto
CXX .build_release/src/caffe/proto/caffe.pb.cc
CXX src/caffe/parallel.cpp
CXX src/caffe/common.cpp
CXX src/caffe/syncedmem.cpp
CXX src/caffe/cpm_data_transformer.cpp
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:273:23: error: ‘vector’ does not name a type
         Octree( const vector<Point3f>& points, int maxLevels = 10, int minPoints = 20 );
                       ^
/usr/include/opencv2/contrib/contrib.hpp:273:29: error: expected ‘,’ or ‘...’ before ‘<’ token
         Octree( const vector<Point3f>& points, int maxLevels = 10, int minPoints = 20 );
                             ^
/usr/include/opencv2/contrib/contrib.hpp:276:39: error: ‘vector’ does not name a type
         virtual void buildTree( const vector<Point3f>& points, int maxLevels = 10, int minPoints = 20 );
                                       ^
/usr/include/opencv2/contrib/contrib.hpp:276:45: error: expected ‘,’ or ‘...’ before ‘<’ token
         virtual void buildTree( const vector<Point3f>& points, int maxLevels = 10, int minPoints = 20 );
                                             ^
/usr/include/opencv2/contrib/contrib.hpp:278:44: error: ‘vector’ has not been declared
                                            vector<Point3f>& points ) const;
                                            ^
/usr/include/opencv2/contrib/contrib.hpp:278:50: error: expected ‘,’ or ‘...’ before ‘<’ token
                                            vector<Point3f>& points ) const;
                                                  ^
/usr/include/opencv2/contrib/contrib.hpp:279:15: error: ‘vector’ does not name a type
         const vector<Node>& getNodes() const { return nodes; }
               ^
/usr/include/opencv2/contrib/contrib.hpp:282:9: error: ‘vector’ does not name a type
         vector<Point3f> points;
         ^
/usr/include/opencv2/contrib/contrib.hpp:283:9: error: ‘vector’ does not name a type
         vector<Node> nodes;
         ^
/usr/include/opencv2/contrib/contrib.hpp:295:22: error: ‘vector’ does not name a type
         Mesh3D(const vector<Point3f>& vtx);
                      ^
/usr/include/opencv2/contrib/contrib.hpp:295:28: error: expected ‘,’ or ‘...’ before ‘<’ token
         Mesh3D(const vector<Point3f>& vtx);
                            ^
/usr/include/opencv2/contrib/contrib.hpp:302:35: error: ‘vector’ does not name a type
         void computeNormals(const vector<int>& subset, float normalRadius, int minNeighbors = 20);
                                   ^
/usr/include/opencv2/contrib/contrib.hpp:302:41: error: expected ‘,’ or ‘...’ before ‘<’ token
         void computeNormals(const vector<int>& subset, float normalRadius, int minNeighbors = 20);
                                         ^
/usr/include/opencv2/contrib/contrib.hpp:304:52: error: ‘vector’ does not name a type
         void writeAsVrml(const String& file, const vector<Scalar>& colors = vector<Scalar>()) const;
                                                    ^
/usr/include/opencv2/contrib/contrib.hpp:304:58: error: expected ‘,’ or ‘...’ before ‘<’ token
         void writeAsVrml(const String& file, const vector<Scalar>& colors = vector<Scalar>()) const;
                                                          ^
/usr/include/opencv2/contrib/contrib.hpp:306:9: error: ‘vector’ does not name a type
         vector<Point3f> vtx;
         ^
/usr/include/opencv2/contrib/contrib.hpp:307:9: error: ‘vector’ does not name a type
         vector<Point3f> normals;
         ^
/usr/include/opencv2/contrib/contrib.hpp:338:30: error: ‘vector’ does not name a type
         void setSubset(const vector<int>& subset);
                              ^
/usr/include/opencv2/contrib/contrib.hpp:338:36: error: expected ‘,’ or ‘...’ before ‘<’ token
         void setSubset(const vector<int>& subset);
                                    ^
/usr/include/opencv2/contrib/contrib.hpp:341:49: error: ‘vector’ has not been declared
         void match(const SpinImageModel& scene, vector< vector<Vec2i> >& result);
                                                 ^
/usr/include/opencv2/contrib/contrib.hpp:341:55: error: expected ‘,’ or ‘...’ before ‘<’ token
         void match(const SpinImageModel& scene, vector< vector<Vec2i> >& result);
                                                       ^
/usr/include/opencv2/contrib/contrib.hpp:371:48: error: ‘vector’ has not been declared
         void matchSpinToModel(const Mat& spin, vector<int>& indeces,
                                                ^
/usr/include/opencv2/contrib/contrib.hpp:371:54: error: expected ‘,’ or ‘...’ before ‘<’ token
         void matchSpinToModel(const Mat& spin, vector<int>& indeces,
                                                      ^
/usr/include/opencv2/contrib/contrib.hpp:374:37: error: ‘vector’ does not name a type
         void repackSpinImages(const vector<uchar>& mask, Mat& spinImages, bool reAlloc = true) const;
                                     ^
/usr/include/opencv2/contrib/contrib.hpp:374:43: error: expected ‘,’ or ‘...’ before ‘<’ token
         void repackSpinImages(const vector<uchar>& mask, Mat& spinImages, bool reAlloc = true) const;
                                           ^
/usr/include/opencv2/contrib/contrib.hpp:376:9: error: ‘vector’ does not name a type
         vector<int> subset;
         ^
/usr/include/opencv2/contrib/contrib.hpp: In member function ‘const Point3f& cv::SpinImageModel::getSpinVertex(size_t) const’:
/usr/include/opencv2/contrib/contrib.hpp:347:72: error: ‘const class cv::Mesh3D’ has no member named ‘vtx’
         const Point3f& getSpinVertex(size_t index) const { return mesh.vtx[subset[index]]; }
                                                                        ^
/usr/include/opencv2/contrib/contrib.hpp:347:76: error: ‘subset’ was not declared in this scope
         const Point3f& getSpinVertex(size_t index) const { return mesh.vtx[subset[index]]; }
                                                                            ^
/usr/include/opencv2/contrib/contrib.hpp: In member function ‘const Point3f& cv::SpinImageModel::getSpinNormal(size_t) const’:
/usr/include/opencv2/contrib/contrib.hpp:348:72: error: ‘const class cv::Mesh3D’ has no member named ‘normals’
         const Point3f& getSpinNormal(size_t index) const { return mesh.normals[subset[index]]; }
                                                                        ^
/usr/include/opencv2/contrib/contrib.hpp:348:80: error: ‘subset’ was not declared in this scope
         const Point3f& getSpinNormal(size_t index) const { return mesh.normals[subset[index]]; }
                                                                                ^
/usr/include/opencv2/contrib/contrib.hpp: At global scope:
/usr/include/opencv2/contrib/contrib.hpp:382:22: error: redefinition of ‘class cv::TickMeter’
     class CV_EXPORTS TickMeter
                      ^
In file included from /usr/local/include/opencv2/core.hpp:3216:0,
                 from /usr/local/include/opencv2/core/core.hpp:48,
                 from src/caffe/cpm_data_transformer.cpp:2:
/usr/local/include/opencv2/core/utility.hpp:286:20: error: previous definition of ‘class cv::TickMeter’
 class CV_EXPORTS_W TickMeter
                    ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:419:46: error: ‘vector’ has not been declared
         virtual void compute(const Mat& img, vector<float>& descriptors, Size winStride=Size(),
                                              ^
/usr/include/opencv2/contrib/contrib.hpp:419:52: error: expected ‘,’ or ‘...’ before ‘<’ token
         virtual void compute(const Mat& img, vector<float>& descriptors, Size winStride=Size(),
                                                    ^
/usr/include/opencv2/contrib/contrib.hpp:489:34: error: ‘vector’ has not been declared
         static void bundleAdjust(vector<Point3d>& points, // positions of points in global coordinate system (input and output)
                                  ^
/usr/include/opencv2/contrib/contrib.hpp:489:40: error: expected ‘,’ or ‘...’ before ‘<’ token
         static void bundleAdjust(vector<Point3d>& points, // positions of points in global coordinate system (input and output)
                                        ^
/usr/include/opencv2/contrib/contrib.hpp:561:42: error: ‘vector’ has not been declared
                                   CV_OUT vector<vector<Point> >& results, CV_OUT vector<float>& cost,
                                          ^
/usr/include/opencv2/contrib/contrib.hpp:561:48: error: expected ‘,’ or ‘...’ before ‘<’ token
                                   CV_OUT vector<vector<Point> >& results, CV_OUT vector<float>& cost,
                                                ^
/usr/include/opencv2/contrib/contrib.hpp:760:9: error: ‘vector’ does not name a type
         vector<int> Rsr;
         ^
/usr/include/opencv2/contrib/contrib.hpp:761:9: error: ‘vector’ does not name a type
         vector<int> Csr;
         ^
/usr/include/opencv2/contrib/contrib.hpp:762:9: error: ‘vector’ does not name a type
         vector<double> Wsr;
         ^
/usr/include/opencv2/contrib/contrib.hpp:771:13: error: ‘vector’ does not name a type
             vector<double> weights;
             ^
/usr/include/opencv2/contrib/contrib.hpp:777:9: error: ‘vector’ does not name a type
         vector<kernel> w_ker_2D;
         ^
/usr/include/opencv2/contrib/contrib.hpp:841:9: error: ‘vector’ does not name a type
         vector<vector<pixel> > L;
         ^
/usr/include/opencv2/contrib/contrib.hpp:842:9: error: ‘vector’ does not name a type
         vector<double> A;
         ^
/usr/include/opencv2/contrib/contrib.hpp:852:22: error: redefinition of ‘class cv::LDA’
     class CV_EXPORTS LDA
                      ^
In file included from /usr/local/include/opencv2/core/core.hpp:48:0,
                 from src/caffe/cpm_data_transformer.cpp:2:
/usr/local/include/opencv2/core.hpp:2468:18: error: previous definition of ‘class cv::LDA’
 class CV_EXPORTS LDA
                  ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:940:41: error: ‘string’ does not name a type
         CV_WRAP virtual void save(const string& filename) const;
                                         ^
/usr/include/opencv2/contrib/contrib.hpp:943:41: error: ‘string’ does not name a type
         CV_WRAP virtual void load(const string& filename);
                                         ^
/usr/include/opencv2/contrib/contrib.hpp:960:27: error: redeclaration of ‘COLORMAP_AUTUMN’
         COLORMAP_AUTUMN = 0,
                           ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4080:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_AUTUMN’
     COLORMAP_AUTUMN = 0, //!< ![autumn](pics/colormaps/colorscale_autumn.jpg)
     ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:961:25: error: redeclaration of ‘COLORMAP_BONE’
         COLORMAP_BONE = 1,
                         ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4081:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_BONE’
     COLORMAP_BONE = 1, //!< ![bone](pics/colormaps/colorscale_bone.jpg)
     ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:962:24: error: redeclaration of ‘COLORMAP_JET’
         COLORMAP_JET = 2,
                        ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4082:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_JET’
     COLORMAP_JET = 2, //!< ![jet](pics/colormaps/colorscale_jet.jpg)
     ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:963:27: error: redeclaration of ‘COLORMAP_WINTER’
         COLORMAP_WINTER = 3,
                           ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4083:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_WINTER’
     COLORMAP_WINTER = 3, //!< ![winter](pics/colormaps/colorscale_winter.jpg)
     ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:964:28: error: redeclaration of ‘COLORMAP_RAINBOW’
         COLORMAP_RAINBOW = 4,
                            ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4084:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_RAINBOW’
     COLORMAP_RAINBOW = 4, //!< ![rainbow](pics/colormaps/colorscale_rainbow.jpg)
     ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:965:26: error: redeclaration of ‘COLORMAP_OCEAN’
         COLORMAP_OCEAN = 5,
                          ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4085:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_OCEAN’
     COLORMAP_OCEAN = 5, //!< ![ocean](pics/colormaps/colorscale_ocean.jpg)
     ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:966:27: error: redeclaration of ‘COLORMAP_SUMMER’
         COLORMAP_SUMMER = 6,
                           ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4086:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_SUMMER’
     COLORMAP_SUMMER = 6, //!< ![summer](pics/colormaps/colorscale_summer.jpg)
     ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:967:27: error: redeclaration of ‘COLORMAP_SPRING’
         COLORMAP_SPRING = 7,
                           ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4087:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_SPRING’
     COLORMAP_SPRING = 7, //!< ![spring](pics/colormaps/colorscale_spring.jpg)
     ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:968:25: error: redeclaration of ‘COLORMAP_COOL’
         COLORMAP_COOL = 8,
                         ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4088:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_COOL’
     COLORMAP_COOL = 8, //!< ![cool](pics/colormaps/colorscale_cool.jpg)
     ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:969:24: error: redeclaration of ‘COLORMAP_HSV’
         COLORMAP_HSV = 9,
                        ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4089:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_HSV’
     COLORMAP_HSV = 9, //!< ![HSV](pics/colormaps/colorscale_hsv.jpg)
     ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:970:25: error: redeclaration of ‘COLORMAP_PINK’
         COLORMAP_PINK = 10,
                         ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4090:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_PINK’
     COLORMAP_PINK = 10, //!< ![pink](pics/colormaps/colorscale_pink.jpg)
     ^
In file included from src/caffe/cpm_data_transformer.cpp:4:0:
/usr/include/opencv2/contrib/contrib.hpp:971:24: error: redeclaration of ‘COLORMAP_HOT’
         COLORMAP_HOT = 11
                        ^
In file included from /usr/local/include/opencv2/imgproc/imgproc.hpp:48:0,
                 from /usr/include/opencv2/contrib/contrib.hpp:47,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/local/include/opencv2/imgproc.hpp:4091:5: note: previous declaration ‘cv::ColormapTypes COLORMAP_HOT’
     COLORMAP_HOT = 11, //!< ![hot](pics/colormaps/colorscale_hot.jpg)
     ^
In file included from /usr/include/opencv2/contrib/contrib.hpp:981:0,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/include/opencv2/contrib/openfabmap.hpp:118:36: error: ‘vector’ does not name a type
     virtual void addTraining(const vector<Mat>& queryImgDescriptors);
                                    ^
/usr/include/opencv2/contrib/openfabmap.hpp:118:42: error: expected ‘,’ or ‘...’ before ‘<’ token
     virtual void addTraining(const vector<Mat>& queryImgDescriptors);
                                          ^
/usr/include/opencv2/contrib/openfabmap.hpp:122:28: error: ‘vector’ does not name a type
     virtual void add(const vector<Mat>& queryImgDescriptors);
                            ^
/usr/include/opencv2/contrib/openfabmap.hpp:122:34: error: expected ‘,’ or ‘...’ before ‘<’ token
     virtual void add(const vector<Mat>& queryImgDescriptors);
                                  ^
/usr/include/opencv2/contrib/openfabmap.hpp:125:11: error: ‘vector’ does not name a type
     const vector<Mat>& getTrainingImgDescriptors() const;
           ^
/usr/include/opencv2/contrib/openfabmap.hpp:126:11: error: ‘vector’ does not name a type
     const vector<Mat>& getTestImgDescriptors() const;
           ^
/usr/include/opencv2/contrib/openfabmap.hpp:130:13: error: ‘vector’ has not been declared
             vector<IMatch>& matches, bool addQuery = false,
             ^
/usr/include/opencv2/contrib/openfabmap.hpp:130:19: error: expected ‘,’ or ‘...’ before ‘<’ token
             vector<IMatch>& matches, bool addQuery = false,
                   ^
/usr/include/opencv2/contrib/openfabmap.hpp:133:44: error: ‘vector’ has not been declared
             const Mat& testImgDescriptors, vector<IMatch>& matches,
                                            ^
/usr/include/opencv2/contrib/openfabmap.hpp:133:50: error: expected ‘,’ or ‘...’ before ‘<’ token
             const Mat& testImgDescriptors, vector<IMatch>& matches,
                                                  ^
/usr/include/opencv2/contrib/openfabmap.hpp:136:19: error: ‘vector’ does not name a type
             const vector<Mat>& testImgDescriptors,
                   ^
/usr/include/opencv2/contrib/openfabmap.hpp:136:25: error: expected ‘,’ or ‘...’ before ‘<’ token
             const vector<Mat>& testImgDescriptors,
                         ^
/usr/include/opencv2/contrib/openfabmap.hpp:135:10: error: ‘void cv::of2::FabMap::compare(const cv::Mat&, int)’ cannot be overloaded
     void compare(const Mat& queryImgDescriptor,
          ^
/usr/include/opencv2/contrib/openfabmap.hpp:129:10: error: with ‘void cv::of2::FabMap::compare(const cv::Mat&, int)’
     void compare(const Mat& queryImgDescriptor,
          ^
/usr/include/opencv2/contrib/openfabmap.hpp:138:24: error: ‘vector’ does not name a type
     void compare(const vector<Mat>& queryImgDescriptors, vector<
                        ^
/usr/include/opencv2/contrib/openfabmap.hpp:138:30: error: expected ‘,’ or ‘...’ before ‘<’ token
     void compare(const vector<Mat>& queryImgDescriptors, vector<
                              ^
/usr/include/opencv2/contrib/openfabmap.hpp:141:24: error: ‘vector’ does not name a type
     void compare(const vector<Mat>& queryImgDescriptors,
                        ^
/usr/include/opencv2/contrib/openfabmap.hpp:141:30: error: expected ‘,’ or ‘...’ before ‘<’ token
     void compare(const vector<Mat>& queryImgDescriptors,
                              ^
/usr/include/opencv2/contrib/openfabmap.hpp:141:10: error: ‘void cv::of2::FabMap::compare(int)’ cannot be overloaded
     void compare(const vector<Mat>& queryImgDescriptors,
          ^
/usr/include/opencv2/contrib/openfabmap.hpp:138:10: error: with ‘void cv::of2::FabMap::compare(int)’
     void compare(const vector<Mat>& queryImgDescriptors, vector<
          ^
/usr/include/opencv2/contrib/openfabmap.hpp:148:35: error: ‘vector’ does not name a type
             int queryIndex, const vector<Mat>& testImgDescriptors,
                                   ^
/usr/include/opencv2/contrib/openfabmap.hpp:148:41: error: expected ‘,’ or ‘...’ before ‘<’ token
             int queryIndex, const vector<Mat>& testImgDescriptors,
                                         ^
/usr/include/opencv2/contrib/openfabmap.hpp:156:19: error: ‘vector’ does not name a type
             const vector<Mat>& testImgDescriptors,
                   ^
/usr/include/opencv2/contrib/openfabmap.hpp:156:25: error: expected ‘,’ or ‘...’ before ‘<’ token
             const vector<Mat>& testImgDescriptors,
                         ^
/usr/include/opencv2/contrib/openfabmap.hpp:161:32: error: ‘vector’ has not been declared
     void normaliseDistribution(vector<IMatch>& matches);
                                ^
/usr/include/opencv2/contrib/openfabmap.hpp:161:38: error: expected ‘,’ or ‘...’ before ‘<’ token
     void normaliseDistribution(vector<IMatch>& matches);
                                      ^
/usr/include/opencv2/contrib/openfabmap.hpp:177:5: error: ‘vector’ does not name a type
     vector<Mat> trainingImgDescriptors;
     ^
/usr/include/opencv2/contrib/openfabmap.hpp:178:5: error: ‘vector’ does not name a type
     vector<Mat> testImgDescriptors;
     ^
/usr/include/opencv2/contrib/openfabmap.hpp:179:5: error: ‘vector’ does not name a type
     vector<IMatch> priorMatches;
     ^
/usr/include/opencv2/contrib/openfabmap.hpp:206:62: error: ‘vector’ does not name a type
     void getLikelihoods(const Mat& queryImgDescriptor, const vector<
                                                              ^
/usr/include/opencv2/contrib/openfabmap.hpp:206:68: error: expected ‘,’ or ‘...’ before ‘<’ token
     void getLikelihoods(const Mat& queryImgDescriptor, const vector<
                                                                    ^
/usr/include/opencv2/contrib/openfabmap.hpp:222:62: error: ‘vector’ does not name a type
     void getLikelihoods(const Mat& queryImgDescriptor, const vector<
                                                              ^
/usr/include/opencv2/contrib/openfabmap.hpp:222:68: error: expected ‘,’ or ‘...’ before ‘<’ token
     void getLikelihoods(const Mat& queryImgDescriptor, const vector<
                                                                    ^
/usr/include/opencv2/contrib/openfabmap.hpp:246:62: error: ‘vector’ does not name a type
     void getLikelihoods(const Mat& queryImgDescriptor, const vector<
                                                              ^
/usr/include/opencv2/contrib/openfabmap.hpp:246:68: error: expected ‘,’ or ‘...’ before ‘<’ token
     void getLikelihoods(const Mat& queryImgDescriptor, const vector<
                                                                    ^
/usr/include/opencv2/contrib/openfabmap.hpp:298:28: error: ‘vector’ does not name a type
     void addTraining(const vector<Mat>& queryImgDescriptors);
                            ^
/usr/include/opencv2/contrib/openfabmap.hpp:298:34: error: expected ‘,’ or ‘...’ before ‘<’ token
     void addTraining(const vector<Mat>& queryImgDescriptors);
                                  ^
/usr/include/opencv2/contrib/openfabmap.hpp:303:20: error: ‘vector’ does not name a type
     void add(const vector<Mat>& queryImgDescriptors);
                    ^
/usr/include/opencv2/contrib/openfabmap.hpp:303:26: error: expected ‘,’ or ‘...’ before ‘<’ token
     void add(const vector<Mat>& queryImgDescriptors);
                          ^
/usr/include/opencv2/contrib/openfabmap.hpp:308:62: error: ‘vector’ does not name a type
     void getLikelihoods(const Mat& queryImgDescriptor, const vector<
                                                              ^
/usr/include/opencv2/contrib/openfabmap.hpp:308:68: error: expected ‘,’ or ‘...’ before ‘<’ token
     void getLikelihoods(const Mat& queryImgDescriptor, const vector<
                                                                    ^
/usr/include/opencv2/contrib/openfabmap.hpp:313:61: error: ‘vector’ has not been declared
     void getIndexLikelihoods(const Mat& queryImgDescriptor, vector<
                                                             ^
/usr/include/opencv2/contrib/openfabmap.hpp:313:67: error: expected ‘,’ or ‘...’ before ‘<’ token
     void getIndexLikelihoods(const Mat& queryImgDescriptor, vector<
                                                                   ^
/usr/include/opencv2/contrib/openfabmap.hpp:317:13: error: ‘vector’ has not been declared
             vector<double>& defaults,
             ^
/usr/include/opencv2/contrib/openfabmap.hpp:317:19: error: expected ‘,’ or ‘...’ before ‘<’ token
             vector<double>& defaults,
                   ^
/usr/include/opencv2/contrib/openfabmap.hpp:321:5: error: ‘vector’ does not name a type
     vector<double> d1, d2, d3, d4;
     ^
/usr/include/opencv2/contrib/openfabmap.hpp:322:5: error: ‘vector’ does not name a type
     vector<vector<int> > children;
     ^
/usr/include/opencv2/contrib/openfabmap.hpp:326:5: error: ‘vector’ does not name a type
     vector<double> trainingDefaults;
     ^
/usr/include/opencv2/contrib/openfabmap.hpp:327:14: error: ‘vector’ was not declared in this scope
     map<int, vector<int> > trainingInvertedMap;
              ^
/usr/include/opencv2/contrib/openfabmap.hpp:327:14: note: suggested alternative:
In file included from /usr/include/c++/5/vector:64:0,
                 from /usr/local/include/opencv2/core/types.hpp:53,
                 from /usr/local/include/opencv2/core.hpp:58,
                 from /usr/local/include/opencv2/core/core.hpp:48,
                 from src/caffe/cpm_data_transformer.cpp:2:
/usr/include/c++/5/bits/stl_vector.h:214:11: note:   ‘std::vector’
     class vector : protected _Vector_base<_Tp, _Alloc>
           ^
In file included from /usr/include/opencv2/contrib/contrib.hpp:981:0,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/include/opencv2/contrib/openfabmap.hpp:327:24: error: template argument 2 is invalid
     map<int, vector<int> > trainingInvertedMap;
                        ^
/usr/include/opencv2/contrib/openfabmap.hpp:327:24: error: template argument 4 is invalid
/usr/include/opencv2/contrib/openfabmap.hpp:327:26: error: expected unqualified-id before ‘>’ token
     map<int, vector<int> > trainingInvertedMap;
                          ^
/usr/include/opencv2/contrib/openfabmap.hpp:329:5: error: ‘vector’ does not name a type
     vector<double> testDefaults;
     ^
/usr/include/opencv2/contrib/openfabmap.hpp:330:14: error: ‘vector’ was not declared in this scope
     map<int, vector<int> > testInvertedMap;
              ^
/usr/include/opencv2/contrib/openfabmap.hpp:330:14: note: suggested alternative:
In file included from /usr/include/c++/5/vector:64:0,
                 from /usr/local/include/opencv2/core/types.hpp:53,
                 from /usr/local/include/opencv2/core.hpp:58,
                 from /usr/local/include/opencv2/core/core.hpp:48,
                 from src/caffe/cpm_data_transformer.cpp:2:
/usr/include/c++/5/bits/stl_vector.h:214:11: note:   ‘std::vector’
     class vector : protected _Vector_base<_Tp, _Alloc>
           ^
In file included from /usr/include/opencv2/contrib/contrib.hpp:981:0,
                 from src/caffe/cpm_data_transformer.cpp:4:
/usr/include/opencv2/contrib/openfabmap.hpp:330:24: error: template argument 2 is invalid
     map<int, vector<int> > testInvertedMap;
                        ^
/usr/include/opencv2/contrib/openfabmap.hpp:330:24: error: template argument 4 is invalid
/usr/include/opencv2/contrib/openfabmap.hpp:330:26: error: expected unqualified-id before ‘>’ token
     map<int, vector<int> > testInvertedMap;
                          ^
/usr/include/opencv2/contrib/openfabmap.hpp:345:20: error: ‘vector’ does not name a type
     void add(const vector<Mat>& imgDescriptors);
                    ^
/usr/include/opencv2/contrib/openfabmap.hpp:345:26: error: expected ‘,’ or ‘...’ before ‘<’ token
     void add(const vector<Mat>& imgDescriptors);
                          ^
/usr/include/opencv2/contrib/openfabmap.hpp:347:11: error: ‘vector’ does not name a type
     const vector<Mat>& getImgDescriptors() const;
           ^
/usr/include/opencv2/contrib/openfabmap.hpp:352:5: error: ‘vector’ does not name a type
     vector<Mat> imgDescriptors;
     ^
/usr/include/opencv2/contrib/openfabmap.hpp:378:5: error: ‘vector’ does not name a type
     vector<int> extractChildren(list<info> &remaining_edges, int q);
     ^
Makefile:572: recipe for target '.build_release/src/caffe/cpm_data_transformer.o' failed
make: *** [.build_release/src/caffe/cpm_data_transformer.o] Error 1

I can compile caffe correctly, and I think the key is caffe_train introduces the opencv_contrib module.
Since src/caffe/cpm_data_transformer.cpp needs opencv_contrib module, I can't just forbid opencv_contrib in Makefile.config.
How can I solve this compilations problem?thx

Compilation issue (unresolved external symbols) with cpm_data_layer.

Hello,

I'm trying to learn how to train a caffe model using the MSCOCO images with this Caffe version. I'm following the tutorial here : https://github.com/ZheC/Realtime_Multi-Person_Pose_Estimation#training

I have a lot of linker issues (306 of them) when I compile using the extension layers in this version of Caffe, but only with cmp_data_layer. Here is an example of the :
(cpm_data_layer.obj) : error LNK2019: unresolved external symbol "public: void __cdecl caffe::BlockingQueue<class caffe::Datum *>::push(class caffe::Datum * const &)"
(?push@?$BlockingQueue@PEAVDatum@caffe@@@caffe@@QEAAXAEBQEAVDatum@2@@z) referenced in function "protected: virtual void __cdecl caffe::CPMDataLayer::load_batch(class caffe::Batch *)" (?load_batch@?$CPMDataLayer@M@caffe@@MEAAXPEAV?$Batch@M@2@@z)

Exactly here :

image

I'm on Windows 10 x64.

For some reason, the linker does not see that data_reader.hpp includes caffe/util/blocking_queue.hpp. Exactly where "::push" is declared...

Thanks for your help and have a good day,

Anthony

is this a bug in cpm_data_layer.cpp

in function generateLabelMap

if (np == 56){
for (int i = 0; i < 18; i++){
Point2f center = meta.joint_self.joints[i];
if(meta.joint_self.isVisible[i] <= 1){
putGaussianMaps(transformed_label + (i+np+39)*channelOffset, center, param_.stride(),
grid_x, grid_y, param_.sigma()); //self
}
for(int j = 0; j < meta.numOtherPeople; j++){ //for every other person
Point2f center = meta.joint_others[j].joints[i];
if(meta.joint_others[j].isVisible[i] <= 1){
putGaussianMaps(transformed_label + (i+np+39)*channelOffset, center, param_.stride(),
grid_x, grid_y, param_.sigma());
}
}
}

since np_in_lmdb = 17, 18 is wrong?

cuDNN version

Hi,

Is it possible to use cuDNN 7 instead of cuDNN 5 ?

Thanks.

Is it supposed to use fabs rather than abs??

In src/caffe/cpm_data_transformer.cpp, line 1111, the code shows below:

float dist = std::abs(ba.xbc.y -ba.ybc.x);

Is it supposed to use fabs rather than abs??

cuz it it floating number calculation.

Changing image channel in cpm_transform layer

I wanted to use a different channel image 1, 2 or 4. The current code for the cpm_data_transform layer is for 3 channel image i.e. RGB. Can someone suggest the changes to be made to use it with a different channel image or give some lead?
Any type of help will be great to get started.

How to reinstall?

I had many errors installing caffe_train. I want to remove and install again it. How can I uninstall properly?

Building problem libcaffe.so.1.0.0-rc3: undefined reference to `cv::applyColorMap(cv::_InputArray const&, cv::_OutputArray const&, int)'

So, I have been having a lot of problems trying to compile caffe_train, but now I am stuck with this error.
And I haven't been able to find any solution online.

For what I have seen online this is a common problem when people use OpenCV 3. ...
But I am using 2.7

Error:

Built target device_query
Scanning dependencies of target train_net
[ 91%] Building CXX object tools/CMakeFiles/train_net.dir/train_net.cpp.o
Linking CXX executable compute_image_mean
../lib/libcaffe.so.1.0.0-rc3: undefined reference to `cv::applyColorMap(cv::_InputArray const&, cv::_OutputArray const&, int)'
collect2: error: ld returned 1 exit status
make[2]: *** [tools/compute_image_mean] Error 1
make[1]: *** [tools/CMakeFiles/compute_image_mean.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Linking CXX executable convert_imageset
../lib/libcaffe.so.1.0.0-rc3: undefined reference to `cv::applyColorMap(cv::_InputArray const&, cv::_OutputArray const&, int)'
collect2: error: ld returned 1 exit status
make[2]: *** [tools/convert_imageset] Error 1
make[1]: *** [tools/CMakeFiles/convert_imageset.dir/all] Error 2
Linking CXX executable test_net
[ 91%] Built target test_net
Linking CXX executable finetune_net
Linking CXX executable net_speed_benchmark
[ 91%] Built target finetune_net
[ 91%] Built target net_speed_benchmark
Linking CXX executable extract_features
Linking CXX executable train_net
[ 91%] Built target train_net
../lib/libcaffe.so.1.0.0-rc3: undefined reference to `cv::applyColorMap(cv::_InputArray const&, cv::_OutputArray const&, int)'
collect2: error: ld returned 1 exit status
make[2]: *** [tools/extract_features] Error 1
make[1]: *** [tools/CMakeFiles/extract_features.dir/all] Error 2
Linking CXX executable caffe
../lib/libcaffe.so.1.0.0-rc3: undefined reference to `cv::applyColorMap(cv::_InputArray const&, cv::_OutputArray const&, int)'
collect2: error: ld returned 1 exit status
make[2]: *** [tools/caffe] Error 1
make[1]: *** [tools/CMakeFiles/caffe.bin.dir/all] Error 2
make: *** [all] Error 2

Configuration:

 ALLOW_LMDB_NOLOCK                OFF                                                                                                
 Atlas_BLAS_LIBRARY               /usr/lib/libatlas.so                                                                               
 Atlas_CBLAS_INCLUDE_DIR          /usr/include                                                                                       
 Atlas_CBLAS_LIBRARY              /usr/lib/libcblas.so                                                                               
 Atlas_CLAPACK_INCLUDE_DIR        /usr/include/atlas                                                                                 
 Atlas_LAPACK_LIBRARY             /usr/lib/liblapack_atlas.so                                                                        
 BLAS                             Atlas                                                                                              
 BOOST_THREAD_LIBRARY             /usr/lib/x86_64-linux-gnu/libpthread.so                                                            
 BUILD_SHARED_LIBS                ON                                                                                                 
 BUILD_docs                       ON                                                                                                 
 BUILD_matlab                     OFF                                                                                                
 BUILD_only_tests                                                                                                                    
 BUILD_python                     ON                                                                                                 
 BUILD_python_layer               ON                                                                                                 
 Boost_DIR                        Boost_DIR-NOTFOUND                                                                                 
 Boost_FILESYSTEM_LIBRARY_DEBUG   /usr/lib/x86_64-linux-gnu/libboost_filesystem.so                                                   
 Boost_FILESYSTEM_LIBRARY_RELEA   /usr/lib/x86_64-linux-gnu/libboost_filesystem.so                                                   
 Boost_INCLUDE_DIR                /usr/include                                                                                       
 Boost_LIBRARY_DIR                /usr/lib/x86_64-linux-gnu                                                                          
 Boost_PYTHON_LIBRARY_DEBUG       /usr/lib/x86_64-linux-gnu/libboost_python.so                                                       
 Boost_PYTHON_LIBRARY_RELEASE     /usr/lib/x86_64-linux-gnu/libboost_python.so                                                       
 Boost_SYSTEM_LIBRARY_DEBUG       /usr/lib/x86_64-linux-gnu/libboost_system.so                                                       
 Boost_SYSTEM_LIBRARY_RELEASE     /usr/lib/x86_64-linux-gnu/libboost_system.so                                                       
 Boost_THREAD_LIBRARY_DEBUG       /usr/lib/x86_64-linux-gnu/libboost_thread.so                                                       
 Boost_THREAD_LIBRARY_RELEASE     /usr/lib/x86_64-linux-gnu/libboost_thread.so                                                       
 CAFFE_TARGET_SOVERSION           1.0.0-rc3                                                                                          
 CAFFE_TARGET_VERSION             1.0.0-rc3                                                                                          
 CMAKE_AR                         /usr/bin/ar                                                                                        
 CMAKE_BUILD_TYPE                                                                                                                    
 CMAKE_COLOR_MAKEFILE             ON                                                                                                 
 CMAKE_CONFIGURATION_TYPES        Debug;Release                                                                                      
 CMAKE_CXX_COMPILER               /usr/bin/c++                                                                                       
 CMAKE_CXX_FLAGS                                                                                                                     
 CMAKE_CXX_FLAGS_DEBUG            -g                                                                                                 
 CMAKE_CXX_FLAGS_MINSIZEREL       -Os -DNDEBUG                                                                                       
 CMAKE_CXX_FLAGS_RELEASE          -O3 -DNDEBUG                                                                                       
 CMAKE_CXX_FLAGS_RELWITHDEBINFO   -O2 -g -DNDEBUG                                                                                    
 CMAKE_C_COMPILER                 /usr/bin/cc                                                                                        
 CMAKE_C_FLAGS                                                                                                                       
 CMAKE_C_FLAGS_DEBUG              -g                                                                                                 
 CMAKE_C_FLAGS_MINSIZEREL         -Os -DNDEBUG                                                                                       
 CMAKE_C_FLAGS_RELEASE            -O3 -DNDEBUG                                                                                       
 CMAKE_C_FLAGS_RELWITHDEBINFO     -O2 -g -DNDEBUG                                                                                    
 CMAKE_EXE_LINKER_FLAGS                                                                                                              
 CMAKE_EXE_LINKER_FLAGS_DEBUG                                                                                                        
 CMAKE_EXE_LINKER_FLAGS_MINSIZE                                                                                                      
 CMAKE_EXE_LINKER_FLAGS_RELEASE                                                                                                      
 CMAKE_EXE_LINKER_FLAGS_RELWITH                                                                                                      
 CMAKE_EXPORT_COMPILE_COMMANDS    OFF                                                                                                
 CMAKE_INSTALL_PREFIX             /home/gtk/m_HDD/caffe_train/build/install                                                          
 CMAKE_INSTALL_RPATH_USE_LINK_P   TRUE   
 CMAKE_LINKER                     /usr/bin/ld                                                                                        
 CMAKE_MAKE_PROGRAM               /usr/bin/make                                                                                      
 CMAKE_MODULE_LINKER_FLAGS                                                                                                           
 CMAKE_MODULE_LINKER_FLAGS_DEBU                                                                                                      
 CMAKE_MODULE_LINKER_FLAGS_MINS                                                                                                      
 CMAKE_MODULE_LINKER_FLAGS_RELE                                                                                                      
 CMAKE_MODULE_LINKER_FLAGS_RELW                                                                                                      
 CMAKE_NM                         /usr/bin/nm                                                                                        
 CMAKE_OBJCOPY                    /usr/bin/objcopy                                                                                   
 CMAKE_OBJDUMP                    /usr/bin/objdump                                                                                   
 CMAKE_RANLIB                     /usr/bin/ranlib                                                                                    
 CMAKE_SHARED_LINKER_FLAGS                                                                                                           
 CMAKE_SHARED_LINKER_FLAGS_DEBU                                                                                                      
 CMAKE_SHARED_LINKER_FLAGS_MINS                                                                                                      
 CMAKE_SHARED_LINKER_FLAGS_RELE                                                                                                      
 CMAKE_SHARED_LINKER_FLAGS_RELW                                                                                                      
 CMAKE_SKIP_INSTALL_RPATH         OFF                                                                                                
 CMAKE_SKIP_RPATH                 OFF                                                                                                
 CMAKE_STATIC_LINKER_FLAGS                                                                                                           
 CMAKE_STATIC_LINKER_FLAGS_DEBU                                                                                                      
 CMAKE_STATIC_LINKER_FLAGS_MINS                                                                                                      
 CMAKE_STATIC_LINKER_FLAGS_RELE                                                                                                      
 CMAKE_STATIC_LINKER_FLAGS_RELW                                                                                                      
 CMAKE_STRIP                      /usr/bin/strip                                                                                     
 CMAKE_USE_RELATIVE_PATHS         OFF                                                                                                
 CMAKE_VERBOSE_MAKEFILE           OFF                                                                                                
 CPU_ONLY                         OFF                                                                                                
 CUDA_64_BIT_DEVICE_CODE          ON                                                                                                 
 CUDA_ARCH_NAME                   Auto                                                                                               
 CUDA_ATTACH_VS_BUILD_RULE_TO_C   ON                                                                                                 
 CUDA_BUILD_CUBIN                 OFF                                                                                                
 CUDA_BUILD_EMULATION             OFF                                                                                                
 CUDA_CUDART_LIBRARY              /usr/local/cuda/lib64/libcudart.so                                                                 
 CUDA_CUDA_LIBRARY                /usr/lib/x86_64-linux-gnu/libcuda.so                                                               
 CUDA_GENERATED_OUTPUT_DIR                                                                                                           
 CUDA_HOST_COMPILATION_CPP        ON                                                                                                 
 CUDA_HOST_COMPILER               /usr/bin/cc                                                                                        
 CUDA_NVCC_EXECUTABLE             /usr/local/cuda/bin/nvcc                                                                           
 CUDA_NVCC_FLAGS                                                                                                                     
 CUDA_NVCC_FLAGS_DEBUG                                                                                                               
 CUDA_NVCC_FLAGS_MINSIZEREL                                                                                                          
 CUDA_NVCC_FLAGS_RELEASE                                                                                                             
 CUDA_NVCC_FLAGS_RELWITHDEBINFO                                                                                                      
 CUDA_PROPAGATE_HOST_FLAGS        ON                                                                                                 
 CUDA_SDK_ROOT_DIR                CUDA_SDK_ROOT_DIR-NOTFOUND                                                                         
 CUDA_SEPARABLE_COMPILATION       OFF                                                                                                
 CUDA_TOOLKIT_INCLUDE             /usr/local/cuda/include                                                                            
 CUDA_TOOLKIT_ROOT_DIR            /usr/local/cuda                                                                                    
 CUDA_VERBOSE_BUILD               OFF                                                                                                
 CUDA_VERSION                     7.5                                                                                                
 CUDA_cublas_LIBRARY              /usr/local/cuda/lib64/libcublas.so 
 CUDA_cufft_LIBRARY               /usr/local/cuda/lib64/libcufft.so                                                                  
 CUDA_cupti_LIBRARY               /usr/local/cuda/extras/CUPTI/lib64/libcupti.so                                                     
 CUDA_curand_LIBRARY              /usr/local/cuda/lib64/libcurand.so                                                                 
 CUDA_cusparse_LIBRARY            /usr/local/cuda/lib64/libcusparse.so                                                               
 CUDA_nppc_LIBRARY                /usr/local/cuda/lib64/libnppc.so                                                                   
 CUDA_nppi_LIBRARY                /usr/local/cuda/lib64/libnppi.so                                                                   
 CUDA_npps_LIBRARY                /usr/local/cuda/lib64/libnpps.so                                                                   
 CUDNN_INCLUDE                    /usr/local/cuda/include                                                                            
 CUDNN_LIBRARY                    /usr/local/cuda/lib64/libcudnn.so                                                                  
 CUDNN_ROOT                                                                                                                          
 DOXYGEN_DOT_EXECUTABLE           DOXYGEN_DOT_EXECUTABLE-NOTFOUND                                                                    
 DOXYGEN_EXECUTABLE               DOXYGEN_EXECUTABLE-NOTFOUND                                                                        
 GFLAGS_INCLUDE_DIR               /usr/include                                                                                       
 GFLAGS_LIBRARY                   /usr/lib/x86_64-linux-gnu/libgflags.so                                                             
 GFLAGS_ROOT_DIR                                                                                                                     
 GIT_EXECUTABLE                   /usr/bin/git                                                                                       
 GLOG_INCLUDE_DIR                 /usr/include                                                                                       
 GLOG_LIBRARY                     /usr/lib/x86_64-linux-gnu/libglog.so                                                               
 GLOG_ROOT_DIR                                                                                                                       
 HDF5_CXX_COMPILER_EXECUTABLE     /usr/bin/h5c++                                                                                     
 HDF5_C_COMPILER_EXECUTABLE       /usr/bin/h5cc                                                                                      
 HDF5_DIFF_EXECUTABLE             HDF5_DIFF_EXECUTABLE-NOTFOUND                                                                      
 HDF5_DIR                         HDF5_DIR-NOTFOUND                                                                                  
 HDF5_Fortran_COMPILER_EXECUTAB   /usr/bin/h5fc                                                                                      
 HDF5_HL_INCLUDE_DIR              /usr/include                                                                                       
 HDF5_IS_PARALLEL                 OFF                                                                                                
 HDF5_hdf5_LIBRARY_DEBUG          HDF5_hdf5_LIBRARY_DEBUG-NOTFOUND                                                                   
 HDF5_hdf5_LIBRARY_RELEASE        /usr/lib/x86_64-linux-gnu/libhdf5.so                                                               
 HDF5_hdf5_hl_LIBRARY_DEBUG       HDF5_hdf5_hl_LIBRARY_DEBUG-NOTFOUND                                                                
 HDF5_hdf5_hl_LIBRARY_RELEASE     /usr/lib/x86_64-linux-gnu/libhdf5_hl.so                                                            
 LMDB_INCLUDE_DIR                 /usr/include                                                                                       
 LMDB_LIBRARIES                   /usr/lib/x86_64-linux-gnu/liblmdb.so                                                               
 LevelDB_INCLUDE                  /usr/include                                                                                       
 LevelDB_LIBRARY                  /usr/lib/x86_64-linux-gnu/libleveldb.so                                                            
 OpenCV_3RDPARTY_LIB_DIR_DBG                                                                                                         
 OpenCV_3RDPARTY_LIB_DIR_OPT                                                                                                         
 OpenCV_CONFIG_PATH               /usr/share/OpenCV                                                                                  
 OpenCV_DIR                       /usr/share/OpenCV                                                                                  
 OpenCV_LIB_DIR_DBG                                                                                                                  
 OpenCV_LIB_DIR_OPT                                                                                                                  
 PROTOBUF_INCLUDE_DIR             /usr/include                                                                                       
 PROTOBUF_LIBRARY                 /usr/lib/x86_64-linux-gnu/libprotobuf.so                                                           
 PROTOBUF_LIBRARY_DEBUG           /usr/lib/x86_64-linux-gnu/libprotobuf.so                                                           
 PROTOBUF_LITE_LIBRARY            /usr/lib/x86_64-linux-gnu/libprotobuf-lite.so                                                      
 PROTOBUF_LITE_LIBRARY_DEBUG      /usr/lib/x86_64-linux-gnu/libprotobuf-lite.so                                                      
 PROTOBUF_PROTOC_EXECUTABLE       /usr/bin/protoc                                                                                    
 PROTOBUF_PROTOC_LIBRARY          PROTOBUF_PROTOC_LIBRARY-NOTFOUND                                                                   
 PROTOBUF_PROTOC_LIBRARY_DEBUG    PROTOBUF_PROTOC_LIBRARY_DEBUG-NOTFOUND                                                             
 PYTHON_EXECUTABLE                /usr/bin/python2.7                                                                                 
 PYTHON_INCLUDE_DIR               /usr/include/python2.7                                                                             
 PYTHON_INCLUDE_DIR2              /usr/include/x86_64-linux-gnu/python2.7     
 PYTHON_LIBRARY                   /usr/lib/x86_64-linux-gnu/libpython2.7.so                                                          
 PYTHON_LIBRARY_DEBUG             PYTHON_LIBRARY_DEBUG-NOTFOUND                                                                      
 Snappy_INCLUDE_DIR               /usr/include                                                                                       
 Snappy_LIBRARIES                 /usr/lib/libsnappy.so                                                                              
 USE_CUDNN                        ON                                                                                                 
 USE_LEVELDB                      ON                                                                                                 
 USE_LMDB                         ON                                                                                                 
 USE_OPENCV                       ON                                                                                                 
 USE_PROJECT_FOLDERS              OFF                                                                                                
 python_version                   2        

I hope someone is able to give me some advice, thank you very much.

Significance of the mode variable in cpm_data_transformer.cpp

In line 435 mode has been assigned a value of 5 const int mode = 5;. There is also comment saying 'related to datum.channels();'.
I see that mode is being used in various if statements across the file. I would like to know what the variable is used for exactly?

cudnn version

Is it possible to install with cudnn 7??
replies will be appreciable

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.