我现在希望通过C ++代码实现将image.jpg转换为image.ppm。我可以在C ++中实现什么库? 顺便说一句:我的工作平台是Raspberry Pi 3B +。 希望得到您的帮助和答复。
答案 0 :(得分:0)
已建立的用于快速JPEG图像I / O的 libjpeg-turbo 库也可以读取和写入简单的PPM图像格式。您可以使用libjpeg-turbo提供的tjSaveImage()
方法。
在您的代码中,使用tjDecompress2()
和tjSaveImage()
方法。
请参见libjpeg-turbo项目中的example code。
您可能还需要阅读this article,以了解如何在树莓平台上进行OpenCV和libjpeg-turbo的优化构建(仅执行libjpeg-turbo
部分)。
答案 1 :(得分:0)
为此,我建议使用CImg库。它是现代的,轻巧的并且使用非常非常简单,因为它是“仅标头” -只是一个包含文件。
#include "CImg.h"
using namespace cimg_library;
int main() {
// Load JPEG image
CImg<unsigned char> im("image.jpg");
// Save as PPM
im.save("result.ppm");
}
像这样编译:
g++ -std=c++11 -O3 -march=native -Dcimg_jpeg=1 -Dcimg_display=0 main.cpp -o main