首先,我承认这是一道作业题。但是,我似乎被困住了。我需要使用Phil Sallee 的 JPEG 工具箱(在表格底部的“更新”标题下列出的链接)从 jpeg 图像中获取所有量化系数(我将构建一个直方图,但我可以处理这部分一旦我可以获取我需要的数据)。我有一个大小约为 5 MB 的 JPEG 图像,当我通过 Sallee 的代码运行它时会取回这些数据:
image_width: 3000
image_height: 4000
image_components: 3
image_color_space: 2
jpeg_components: 3
jpeg_color_space: 3
comments: {}
coef_arrays: {[4000x3000 double] [2000x3000 double] [2000x3000 double]}
quant_tables: {[8x8 double] [8x8 double]}
ac_huff_tables: [1x2 struct]
dc_huff_tables: [1x2 struct]
optimize_coding: 0
comp_info: [1x3 struct]
progressive_mode: 0
如何从此图像中获取量化系数?起初我尝试了这样的方法来吐出系数,这样我就可以看到我在处理什么:
pic = jpeg_read(image)
img_coef = pic.quant_tables{pic.comp_info(1).quant_tbl_no}
img_coef = pic.quant_tables{pic.comp_info(2).quant_tbl_no}
img_coef
quant_tables
运行两次,因为上面的数据点有两个元素。然而,对于如此大的图像,这似乎是一个非常低的系数。在这方面比我知识渊博的人可以为我指明正确的方向吗?我在哪里/如何从 jpeg 图像中提取量化系数?