前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Stable Diffusion还能压缩图:比JPEG更小,肉眼看更清晰,但千万别试人脸

Stable Diffusion还能压缩图:比JPEG更小,肉眼看更清晰,但千万别试人脸

作者头像
量子位
发布2022-10-08 15:11:43
6190
发布2022-10-08 15:11:43
举报
文章被收录于专栏:量子位
Alex 发自 凹非寺 量子位 | 公众号 QbitAI

免费开源的Stable Diffusion又被玩儿出了新花样:

这次是被拿来压缩图片

Stable Diffusion不仅能把同一张原图缩到更小,而且表现还肉眼可见地优于JPEG和WebP

对于同一张原图,Stable Diffusion压缩出来的图像不仅有更多细节,而且压缩伪影也变少了。

但用Stable Diffusion来压缩图的软件工程师Matthias Bühlmann(咱们就叫他MB哥吧)也指出,这种方式也有明显的局限性。

因为这不太擅长处理人脸和文字等,有时甚至会在解码扩展回去后,幻化出原图中不存在的特征。

比如像这样(效果可以让人吓一跳):

左为原图,右为Stable Diffusion压缩再扩展的生成图

不过,话说回来——

Stable Diffusion是如何压缩图片的?

要讲清楚Stable Diffusion怎么压缩图片,不妨从Stable Diffusion的一些重要工作原理说起。

Stable Diffusion是一种特殊的扩散模型,叫作潜在扩散 (Latent Diffusion)。

和标准扩散(Standard Diffusion )不同,潜在扩散在维度较低的隐空间(Latent Space)上进行扩散过程,而不使用实际的像素空间。

也就是说,隐空间的表示结果是一些分辨率较低的压缩图,不过这些图有较高的精确度。

这里说一下,图像的分辨率和精度是两回事儿。分辨率是表示一张图数据量多少的参数,而精度是反映结果与真值接近程度的量。

就拿这个骆驼的大头照来举例:原图大小768KB,分辨率为512×512,精度为3×8位。

用Stable Diffusion压缩到4.98KB后,分辨率减少为64×64,而精度反而提升到4×32位了。

所以看起来,Stable Diffusion的压缩图和原图相比,差别不大。

如果再进一步具体而言的话,Stable Diffusion这种潜在扩散模型有三个主要组成部分

VAE (Variational Auto Encoder,变分自编码器),U-Net,和文本编码器 (Text-encoder)。

不过在这项压缩图像的测验中,文本编码器没什么用。

发挥主要作用的还是VAE,它由两部分组成:一个编码器和一个解码器。

所以,VAE可以将一张图从图像空间中,编码再解码得到一些潜在空间表示(Latent space representation)。

MB哥发现,VAE的解码功能对于量化潜在表示来说,表现非常稳定。

通过缩放、拖拽和重新映射,将潜在表示从浮点量化为8位无符号整数,就可以得到不怎么失真的压缩图了:

首先将latents量化为8位无符号整数,此时图像大小为64×64×4×8Bit=16 kB(原图大小512×512×3×8Bit=768 kB)。

然后再运用调色板(Palette)和抖动(Dither),进一步使数据缩小到5kB,同时还提高了图像的还原度。

作为一位严谨的程序员,MB哥除了通过肉眼观察,还对图像质量进行了数据分析。

不过,从图像质量评估的两项重要指标PSNR(峰值信噪比)和SSIM(结构相似性)来看,Stable Diffusion的压缩结果并没有比JPG和WebP好到哪儿去。

另外,当把潜在表示重新解码扩展到原图分辨率时,虽然图像的主要特征仍然可见,但VAE也会将高分辨率的特征赋予这些像素值。

用大白话讲,就是重建的图像往往和原图不一样,里面夹杂了不少新生成的“鬼畜”特征。

让我们再来回顾一下这张图:

虽然用Stable Diffusion来压缩图确实还存在不少问题,但用MB哥的话来说,其效果还是很惊艳的,非常有发展前途。

现在MB哥已经把相关代码放到了Google Colab上,感兴趣的朋友可以仔细看看~

传送门 https://colab.research.google.com/drive/1Ci1VYHuFJK5eOX9TB0Mq4NsqkeDrMaaH?usp=sharing 参考链接: [1]https://arstechnica.com/information-technology/2022/09/better-than-jpeg-researcher-discovers-that-stable-diffusion-can-compress-images/ [2]https://matthias-buehlmann.medium.com/stable-diffusion-based-image-compresssion-6f1f0a399202 [3]https://huggingface.co/blog/stable_diffusion

「2022人工智能年度评选」火热报名中

现在,量子位「2022人工智能年度评选」已经正式启幕,评选将从企业、人物、产品/解决方案三大维度设置5类奖项。

更多关于评选标准、榜单报名欢迎扫描下方二维码~

点这里关注我 👇 记得标星噢 ~

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见 ~  

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-09-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 量子位 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Stable Diffusion是如何压缩图片的?
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档