减少内存中PIL图像大小

2 投票
1 回答
823 浏览
提问于 2025-04-17 10:41

我正在用屏幕截图工具抓取PIL图像,把它们放进一个队列,然后写成一系列的jpg图片。

我用一个生产者线程来捕捉图像,另一个工作线程来把这些图像写入硬盘。

不过我发现,这个队列的大小增长得非常快,尽管写出来的文件其实不大,因为用jpg格式压缩了。这导致抓取的图像被存放在硬盘的扩展内存里,写入的速度变得更慢。由于我的数据是间歇性到来的,我可以利用一些时间把数据写入硬盘,但如果内存里的数据被写入硬盘,速度就会变得太慢。

有没有办法在把图像放进队列之前就先压缩它们呢?

谢谢!

1 个回答

0

这里有个主意,把图片合并在一起,等它们到达的时候。

在经过一段时间或者合并到一定数量后,压缩这个图片。然后再把它分开成单独的图片。

/赚到钱

撰写回答