ActionScript 3读取JPEG质量

时间:2010-03-24 20:49:18

标签: image actionscript-3 flash jpeg

我正在为Flash 10开发图像上传器。有没有办法读取浏览图像的jpeg质量。

2 个答案:

答案 0 :(得分:1)

不幸的是,它无法直接完成:

  

未存储品质因数   直接在JPEG文件中,所以你   无法从中读取品质因数   文件。 (来自:Microsoft support页...)

更详细:

  

使用的量化表   压缩图像存储在   JFIF标题,但JPEG质量   用于生成的因子   量化表不存储   与图像,因此原始   JPEG品质因数丢失。 (来自:JPEG Compression Metrics as a Quality Aware Image Transcoding,Surendar Chandra和Carla Schlatter Ellis)

以上引用来自一篇论文,该论文讨论了估计压缩程度的方法(通过检查图像中使用的量化表),但实现起来并不容易:有一个示例here,它是Image Magick代码库的一部分,但它是用C语言编写的。

Image Magick已经portedHaxe,它可以被编写到Flash代码中,所以可以想象你可以得到一些有用的东西,但我担心解释如何超出我的技能!


编辑:刚刚在SuperUser上找到similar question,也提到了Image Magick。


编辑:您可能也对this question的答案感兴趣,{{3}}询问如何在不加载整个文件的情况下获取图像的大小(适合处理大于Flash的图像)。

答案 1 :(得分:0)

我已经使用libjpeg来完成这项工作,也许你可以参考我的代码

given_day_of_the_week=$1
f='%A %Y-%m-%d'

[ `date +%A` = 'Sunday' ] && first=`date -d 'today' +"$f"` ||
    first=`date -d 'last Sunday' +"$f"`

rest=`seq 1 6 | xargs -I{} date -d "$first +{} day" +"$f"`

echo -e "$first\n$rest" |
    grep -i $given_day_of_the_week |
    cut -d' ' -f2

此方法是使用libjpeg读取jpg文件的量化表,然后使用量化表计算质量参数。