如何.cr2
在 C++ 中从(Canon 的原始图像格式)读取图像数据?
如果可能,我需要执行的唯一一项操作是直接读取 .cr2 文件的像素数据,否则我想将其转换为任何无损图像并读取其像素数据。
有什么建议么?
如何.cr2
在 C++ 中从(Canon 的原始图像格式)读取图像数据?
如果可能,我需要执行的唯一一项操作是直接读取 .cr2 文件的像素数据,否则我想将其转换为任何无损图像并读取其像素数据。
有什么建议么?
我也会选择 ImageMagick。您不必预先转换所有文件,您可以根据需要一次转换一个。
在您的程序中,而不是打开文件,只需打开一个正在执行 ImageMagick 命令CR2
的管道(调用),例如popen()
convert file.cr2 ppm:-
然后您可以阅读此处描述的极其简单的 PPM 格式- 基本上只是一行 ASCII 文本告诉您文件类型,然后是另一行 ASCII 文本告诉您图像尺寸,然后是最大值,然后是数据在二进制。
稍后,如果需要,您可以实际使用 ImageMagick 库和 API。