我的项目是将大量 (30000) 小 jpeg 图像 (400*300) 批量调整为 15 种不同的目标大小(小于源)。
我首先创建了一个基于 CImg 和 libjpg 的多线程命令行工具来批量处理图像。并且在我的 4*2 核 Ubuntu 记事本(20 分钟)上发挥了作用。
现在客户想要该工具的 GUI,带有进度条、预计时间、预览……等等!并希望它也可以在 Windows 上运行。他想要一种形象管理器。
我开始将纯 C++ 命令行移植到 Qt 及其 QImage 类(QtConcurrent::run 用于多线程),这里的问题是:在同一台机器上,它在 Windows 7 x64 上运行慢 3 倍(大约 50 分钟)!
那么如何使用 Qt 读取图像并使用 CImg 调整图像大小呢?它会跑得更快吗?