【问题标题】:Set quality for PNG images in MATLAB在 MATLAB 中为 PNG 图像设置质量
【发布时间】:2011-12-15 05:47:57
【问题描述】:

我有一个 matlab 代码,它会生成一个 1024*768 分辨率的 .png 图像。这些图像大小约为 450KB,我需要知道如何使用 matlab 优化和压缩这些图像。 我不能玩 JPEG 中的质量吗? 我阅读了 imwrite 手册,似乎没有找到这样做的好方法。 有什么办法可以在matlab中实现吗?

【问题讨论】:

    标签: matlab image-processing


    【解决方案1】:

    按照设计,PNG 文件是无损的 - 没有需要调整的“质量”(这可能是模组更改了您的问题标题的原因)。

    您可以减少图像中的颜色数量(颜色深度),从而减少文件大小(例如 PNG-8 而不是 PNG-24),但 PNG 的重点在于它会产生 无损图像,因此 JPEG 没有任何质量价值。

    【讨论】:

    • 查看 en.wikipedia.org/wiki/Portable_Network_Graphics#Compression,以及以下答案之一的 cmets
    【解决方案2】:

    取自手册:

    如果是JPEG,输入参数:

    'Quality' - A number between 0 and 100; higher numbers mean higher quality (less image   degradation due to compression), but the resulting file size is larger.
    

    imwrite(x,'c:\1.jpg','质量',10)

    编辑:对不起,我在标题是JPEG而不是PNG时回答了这个问题。

    【讨论】:

    • thnx 但我正在寻找 .png 文件。
    • @Momo - 你最好改变你的问题的标题,因为它说JPEG!
    【解决方案3】:

    PNG 不支持任何质量设置 - 它是一种无损格式。它应用的压缩通常尽可能好。

    【讨论】:

    • 我也是这么想的,但后来我看到了:en.wikipedia.org/wiki/Portable_Network_Graphics#Compression
    • @Andrey - 有趣的链接,谢谢。因此,可能有不同程度的压缩,但不是用户可选择的,它仅取决于编码器的复杂程度。
    • 完全正确...但这对我来说也很令人惊讶。
    • 您好,感谢您的所有回答。让我们说 Matlab 产生最好的 png 质量。有没有办法让它产生最优化的质量?
    猜你喜欢
    • 2015-12-18
    • 1970-01-01
    • 2018-06-18
    • 2019-08-23
    • 1970-01-01
    • 2010-12-03
    • 2011-09-28
    • 1970-01-01
    • 2012-05-27
    相关资源
    最近更新 更多