客户端通过网络 (Windows Forms C#) 接收图像 ( Image.FromStream )。服务器将图像作为字节数组(bmp 格式)发送。如何将 IplImage opencv 转换为字节数组(bmp 格式)C++?不保存到文件(性能)。
问问题
2972 次
2 回答
1
尝试使用opencv函数imencode
描述
bool imencode(const string& ext, const Mat& img, vector<uchar>& buf, const vector<int>& params=vector<int>())
例子
vector<uchar> buf;
Mat matImage = iplImage;
imencode(".bmp", matImage, buf);
size = buf.size();
copy(buf.begin(), buf.end(), byteArray);
于 2013-07-09T13:22:45.000 回答
0
这取决于您是只想保存文件还是要为其编写结构。
cvSaveImage("foo.bmp",img); // img is your IplImage
将位图文件读入结构描述了如何为 bmp 文件定义一个好的结构,如果你想从服务器发送它(它是 C,但如果你愿意,我想你可以调整它)
于 2013-07-05T08:32:08.347 回答