如何在 C++ 中将 image.jpg 转换为 image.ppm
How to convert image.jpg to image.ppm in c++
我现在希望通过c++代码实现将image.jpg转换为image.ppm。我可以用 C++ 实现什么库?
顺便说一句:我的工作平台是Raspberry Pi3B+。
期待您的帮助和回复。
建立的libjpeg-turbo快速JPEG图像库I/O也可以读写简单的PPM图像格式。您可以使用 libjpeg-turbo 提供的 tjSaveImage()
方法。
在您的代码中,使用 tjDecompress2()
和 tjSaveImage()
方法。
请参阅 libjpeg-turbo 项目中的 example code。
您可能还想阅读 this article 以了解如何在树莓派平台上优化构建 OpenCV 和 libjpeg-turbo(仅执行 libjpeg-turbo
部分)。
为此,我会推荐 CImg 库。它现代、轻巧且使用起来非常非常简单,因为它 "header only" - 只是一个包含文件。
#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
我现在希望通过c++代码实现将image.jpg转换为image.ppm。我可以用 C++ 实现什么库? 顺便说一句:我的工作平台是Raspberry Pi3B+。 期待您的帮助和回复。
建立的libjpeg-turbo快速JPEG图像库I/O也可以读写简单的PPM图像格式。您可以使用 libjpeg-turbo 提供的 tjSaveImage()
方法。
在您的代码中,使用 tjDecompress2()
和 tjSaveImage()
方法。
请参阅 libjpeg-turbo 项目中的 example code。
您可能还想阅读 this article 以了解如何在树莓派平台上优化构建 OpenCV 和 libjpeg-turbo(仅执行 libjpeg-turbo
部分)。
为此,我会推荐 CImg 库。它现代、轻巧且使用起来非常非常简单,因为它 "header only" - 只是一个包含文件。
#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