怎样快速为10亿张1024*1024的图片整体生成一张1024*1024的缩略图?

发布于 2022-09-04 12:37:31 字数 144 浏览 22 评论 0

有10亿张10241024的png图片,现在需要生成它们整体的一张10241024的缩略图,也就是说,需要在逻辑上将它们拼接起来再生成一张缩略图,有什么高效的好方法吗?尝试了一下ImageMagick,100张图片就耗时很久,有没有什么快速的好方法?谢谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(10

紙鸢 2022-09-11 12:37:32

为啥会有这个需求,10万张所成这么小的图片,每张图片一个像素点都占不到吧?

天生の放荡 2022-09-11 12:37:32

感觉内存会挂掉

倚栏听风 2022-09-11 12:37:32

10亿,什么概念,是大数据了吧

薄凉少年不暖心 2022-09-11 12:37:32

10亿张图片!! 还想快速!! 同求解决方案

念三年u 2022-09-11 12:37:31

1024*1024 = 1,048,576
10亿张图片也就是1000,000,000
每个像素约对应1000张图片,可以采用采样的方法,每一个像素随机在1000张图片中选择N张,然后再在每张图片中随机选取M个像素,求得平均值作为缩略图的一个像素,依次求得缩略图的1024*1024个像素。
可以采用opencv实现。
但是,如果这10亿张图片是随机的,结果是会接近一张灰度为0.5的图片的。因为根据中心极限定理,缩略图的每个像素方差是趋向于0的。你得保证10亿张像素组合起来有结构特征才行。

谈情不如逗狗 2022-09-11 12:37:31

打开PS直接画一张 效率max

做个少女永远怀春 2022-09-11 12:37:31

又拍云,阿里云OSS都带图片处理功能。可以看下API 。

仅冇旳回忆 2022-09-11 12:37:31

数据压缩,将计算每张图片在最终图片上所展像素大小,然后将10亿张图片压缩为相应大小,最终调用ImageMagick拼接

凉城已无爱 2022-09-11 12:37:31

不太清楚缩略图的生成算法原理,或者你可以看看能不能把算法并行化,然后用分布式去做?

oО清风挽发oО 2022-09-11 12:37:31

虽然这样拼出来的图多半没有什么意义,当组合的算法其实很多的

  1. 还是对10亿图分组,每组10亿/1024/1024 个,差不多1000个图一组吧,然后编号组,一共有1024*1024组
  2. 对每一组在图形组序号所在点位置,即0组取(0,0)点,1组取(1,0)点直至1024*1024-1组取(1023,1023)点,计算该点值的平均值,作为该点位置值情况

因为这个算法支持分布式计算

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文