将图片读入二进制文件:
本以为是个很容易的事情,opencv应该是有接口的。但是后面查找了下,没有找到好办法。
从stack overflow上查找了下方法:
// read image.
std::ifstream file("image_491.jpg");
std::vector<char> data;
file >> std::noskipws;
std::copy(std::istream_iterator<char>(file), std::istream_iterator<char>(), std::back_inserter(data));
file.close();
但是测试了不行。 用imdecode函数解码不出来。
后面看到ifstream的定义,才知道要使用std::ios::binary
std::ifstream file("image_491.jpg", std::ios::binary);
后面用imdecode就OK了。