在 OpenCV 中保存原始图像

Posted

技术标签:

【中文标题】在 OpenCV 中保存原始图像【英文标题】:Save a raw image in OpenCV 【发布时间】:2011-11-14 21:50:47 【问题描述】:

我正在尝试使用 OpenCV 为我读取/写入图像。目前,我将它们采用不同的非标准格式,并且我知道如何将它们放入 OpenCV 的容器中。以下是要求:

像素为 1 或 3 个波段,U8、U16、U32 或 F32 图像具有元数据、随机内容,例如拍摄图像的相机 ID。我希望元数据是 vi/notepad 可编辑的 在涉及低级内容时,我希望编写尽可能少的代码。我的经验是,这些东西最需要维护。 我可以定义格式。只是为这些程序读写。 我不希望像素是二进制的,'0.5873499082' 对于一个浮点数来说数据太多了。

有没有办法向 OpenCV 描述如何读写它不知道的图像类型?我拥有的图像类型是否已有可用的图像类型?

我的临时解决方案是使用 boost 序列化图像,并将元数据保存在单独的文件中。

【问题讨论】:

我错过了这个问题,又是什么? 【参考方案1】:

尝试使用 gdal 库读取图像,然后将其转换为 IplImage。

【讨论】:

【参考方案2】:

OpenCV 无法为您做到这一点,您可以将元数据存储在单独的文件中,或者您可以使用例如 jpeg exif(虽然它不能在记事本上编辑)。

【讨论】:

以上是关于在 OpenCV 中保存原始图像的主要内容,如果未能解决你的问题,请参考以下文章

使用 OpenCV 保存图像的问题?

从/在一个目录中加载/保存多个图像 - opencv c++

如何在 Opencv 中使用 CgRect 裁剪图像。

如何在opencv中将绘制在图像上的画笔绘图保存为填充和单独的二进制掩码?

opencv掩模图像是啥意思

使用 OpenCV 将 YUV 转换为有损压缩