在 OpenCV 中不使用 CvSaveImage 将 Mat 图像转换为 JPG [重复]

Posted

技术标签:

【中文标题】在 OpenCV 中不使用 CvSaveImage 将 Mat 图像转换为 JPG [重复]【英文标题】:Convert Mat image into a JPG without using CvSaveImage in OpenCV [duplicate] 【发布时间】:2013-12-08 22:13:47 【问题描述】:

我希望将内存中的 mat 图像转换为 JPG 图像。我知道我可以为此使用 CvSaveImage,它创建一个 jpg 文件,我再次读取它,然后通过网络将其流式传输。我希望避免这种额外的磁盘读写操作。如果您有任何想法,那将真的很有帮助。 *** 上有一个类似的问题,但他们问如何在 C# 中,我需要 C++ openCV 库的帮助。

【问题讨论】:

***.com/questions/801199/… 【参考方案1】:

imencode/imdecode


(同样,CvSaveImage 是 C,而不是 C++。如果可以的话,请避免使用整个过时的 opencv C api。在不久的将来将不再支持它)

【讨论】:

但这不会将其编码为 jpg... 它编码为 png/jpeg 的 内存缓冲区

以上是关于在 OpenCV 中不使用 CvSaveImage 将 Mat 图像转换为 JPG [重复]的主要内容,如果未能解决你的问题,请参考以下文章

“错误:函数的参数太少”

opencv中16位的矩阵保存成图像,最大灰度值只有32768

压缩原始图像缓冲区

opencv cv SaveImage函数源码

在 c 的 opencv 中,啥函数与 Mat::convertTo 和 cvtColor() 完全相同

opencv中Mat数据怎么保存为JPG格式的图片