- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图了解块大小的影响以及在 DCT 压缩中选择系数的最佳策略。
基本上我想问一下我在这里写了什么:
Video Compression: What is discrete cosine transform?
让我们假设最原始的压缩。制作图像块。对每个博客执行 DCT 并将一些系数归零。
据我了解,块越小越好。
较小的块意味着像素更相关,因此 DCT 频谱中的能量更“紧凑”。在快速变化的图像(高频)中应该更加强调。
假设我们将一定百分比的系数归零,什么会导致最佳图像质量,小块还是大块?
假设我们保持 10%、25%、50%、75%,你会说这是不同百分比的不同答案吗?
另一个问题是如何选择保持不变的系数。
假设我必须根据位置而不是能量做出决定。
你会从左上角拿一个正方形吗?
我已经平均了 DCT 频谱中的许多块,并得出结论,最好的方法是从左上角取一个三角形。你怎么认为?
希望我们能进行有效的讨论。
最佳答案
您问题的本质似乎与图像质量有关。已经有大量关于该主题的文献,结果是图像质量很难确定。
像信噪比 (SNR) 和均方误差 (MSE) 这样的标准数学误差度量可以给出定量的答案,但众所周知,这些与主观观众意见的相关性不高,这必须是我们的最终权威。没有其他方法,即使是那些基于观看者心理视觉模型的方法(例如,SA Karunasekera 和 NG Kingsbury,“基于人类视觉敏感性的图像块伪影失真测量”,IEEE Trans. on Image Proc. vol. 4 ,第 6 期,1995 年 6 月,第 713 – 724 页;以及 M. Miyahara、K. Kotani 和 VR Algazi,“图像编码的客观图像质量等级 (PQS)”,IEEE Trans. on Comm. vol. 46, No. 9, Sept. 1998, pp. 1215 –1226),已经证明它们比 SNR 更好。
此外,当您改变图像类型(线条图、卡通、照片、肖像等)时,某些类型的压缩失真变得更加明显。蚊子噪声在一张图像中可能令人反感,而楼梯噪声可能是另一张图像的罪魁祸首。
简而言之,对于您的问题“什么会导致最佳图像质量?”没有轻而易举的答案。
话虽如此,我们可以说一些有关 DCT 的事情。块的 DCT 中的像素从左上角 [(0,0)->(0,1)->(1,0)->(2) 之字形图案中从低变化到高变化,0)->(1,1)->(0,2)->etc.],作为您的三角形选择镜像。一个像素离左上角越近,其中包含的信息越平滑[实际上,(0,0) DCT值就是整个块的平均值],离那个角越远,得到的信息就越平滑你会得到“高频”细节。越靠近图像的顶部和左侧,该 DCT 系数代表的水平和垂直细节越多,并且越靠近块的对角线,您将拥有的对角线细节越多。
简而言之,有损压缩通常需要丢弃一些肉眼无法察觉的“细节”。 (丢弃“更平滑”的 DCT 值会导致严重失真。)丢弃的 DCT 值越多,压缩比就越大,但也会引起更大的失真。
至于块大小,这一切都取决于。块中的差异和细节越多,丢弃系数的损失就越多。一些压缩算法在同一图像内自适应地使用不同的块大小,以便高细节区域接收更多和更小的块,而平滑区域接收更少和更大的块。
对于使用单个块大小的算法,8x8、16x16 和 32x32 是 JPEG 和 MPEG 等常见的算法。压缩它们所需的处理将小于自适应块大小,但质量通常也会较低。
关于image-processing - DCT 压缩 - block 大小,选择系数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1955663/
我已经训练了一个线性回归模型来以多输出方式进行预测。这是一个时间序列预测问题,根据一组输入来估计 future 12 个月的需求。在过去 - 如果我只预测一个输出值 - 我会简单地调用以下命令来访问模
我的应用程序对原始音频信号执行FFT(所有麦克风读数均为values中的16位整数值,即1024个单元)。它首先根据16位对读数进行归一化。然后提取频率为400Hz的幅度。 int sample_ra
我从包含相同语音内容的两个大约 30 秒的音频文件中提取了两个系列 MFCC 系数。音频文件从不同来源录制在同一位置。应该估计音频是否包含相同的对话或不同的对话。目前我已经测试了两个Mfcc系列的相关
我正在尝试使用两个自变量(批处理和方法)和一个因变量 (conc) 运行线性回归。当我运行回归时,我得到一个系数的 NA 值。当我更改模型中自变量的顺序时,NA 值显示为不同的变量。这是一个可重现的数
我想要的,大图:我想知道如何在 Java 中模仿 Mathematica 的 ExtendedGCD[...] 功能。有关该功能的信息可以在 here 中找到,但为了完整起见,我将对其进行简要描述。
我用 R 编写了这个套索代码,并且得到了一些 beta 值: #Lasso library(MASS) library(glmnet) Boston=na.omit(Boston) x=model.m
我有一个幅频响应点列表。振幅以分贝为单位给出。 任务是将此 AFR 列表导出为某些硬件 DSP 设备的一组系数。我知道此设备的文件格式。该设备的规范表明它需要 12288 个系数,并且 DSP 有 2
是否可以替换 lm 对象中的系数? 我认为以下会起作用 # sample data set.seed(2157010) x1 <- 1998:2011 x2 <- x1 + rnorm(length(
我正在尝试使用 lm.ridge 方法执行岭回归。我的问题是如何获得拟合模型的系数?我从调用中得到不同的结果: 模型$coef 系数(模型) 哪个是正确的?另外,为什么我从调用中得到不同的结果: co
以下代码片段死于 Eigen 断言: MatrixXd L; VectorXd x, b; ... ASSERT_MATRIX_EQ(L*x, b); 与, template void ASSERT
有没有办法从编码的图像和视频中轻松提取 DCT 系数(和量化参数)?任何解码器软件都必须使用它们来解码 block DCT 编码的图像和视频。所以我很确定解码器知道它们是什么。有没有办法将它们暴露给使
如何找到矢量 w 是多少,即垂直于分离平面? 最佳答案 我就是这样做的here .如果我没记错的话,这是基于 dual form 的SVM 优化的结果。 model = svmtrain(...);
我是 FFMPEG 的新手。我知道如何提取关键帧, 但现在我想提取那些 I 帧的 DC 系数。 您能否帮助编写 FFMPEG 命令的正确语法以获取 DC 系数? 问候 最佳答案 FFmpeg 命令不会
任何人都可以共享任何代码或可调用以从 HEVC 比特流中提取变换系数 (DCT/DST) 的函数吗? 我检查了 HM 16.0 的源代码。文件\source\Lib\TLibCommon\TComTr
我需要从 MPEG4 视频中提取有关运动矢量和 DC 系数的信息。我搜索了相关站点和主题,发现一个好的解决方案是使用 ffmpeg 编解码器的代码。尤其是 libavcodec/mpegvideo.c
我想删除sympy符号表达式中等于1的任何系数,例如:我希望 1.0x**2 成为 x**2 ,有办法做到吗?另外,如果可能的话,可以对整数进行舍入,例如将 2.0x**2 变为 2*x**2 最佳答
我想删除sympy符号表达式中等于1的任何系数,例如:我希望 1.0x**2 成为 x**2 ,有办法做到吗?另外,如果可能的话,可以对整数进行舍入,例如将 2.0x**2 变为 2*x**2 最佳答
我最近的任务是将 PMML 解析回 R 模型。 (我进行了广泛搜索,没有库可以为您进行这种转换。)我正在尝试将包含多项逻辑回归的 PMML 转换回 R 模型,但我不知道如何转换任何PMML 文档中保存
当使用 pandas statsmodels 的 .summary() 函数时,OLS 回归结果包括以下字段。 coef std err t P>|t| [
我正在 STM32F4 微 Controller 上使用 CMSIS 库开发 PID Controller 。我实在无法理解PID参数的归一化。现在我有了 PID Controller 的三个 Kp、
我是一名优秀的程序员,十分优秀!