- 博客(8)
- 收藏
- 关注
原创 hqdn3d 视频降噪算法
hqdn3d 是 Avisynth 的一个去噪插件。 网上评论比较多。通过对源代码的阅读, 基本了解了它的原理。 记录之。逐像素进行,不涉及频域变换 3D去噪,参考 左邻, 上邻, 上帧同一位置, 三个像素。 根据相邻像素的差,确定偏置量,将相邻像素颜色值 “拉近”。(对像素做加减法) 偏置量和像素差值的关系大致如下如所示:可以看到,对较小的像素差异,拉近他们之间的距离。若...
2019-05-30 20:25:06
4767
5
原创 x264 码率控制算法原理
x264 的码率控制是如何实现的 ?本文介绍 x264 码率控制算法的数学原理,和基本框架。1.理论假设有助于往下阅读,可以暂时跳过。设变量: qscale = 拉格朗日常数 lamda = 0.85 * 2^((QP-12)/6)≈ 量化步长 Qstep = 2^((QP-4)/6)设变量: 复杂度 complexity ≈ 运动补偿后残差的s...
2019-04-10 12:02:44
6463
7
原创 cmake 解决 C compiler unknow 问题
win7 上用cmake 生成visual studio 工程,出现错误:-- The C compiler identification is unknown-- The CXX compiler identification is unknown打开 cMakeError.log , 错误如下:LINK : fatal error LNK1104: 无法打开文件“ucrtd.li...
2018-12-13 14:10:30
4025
2
原创 视频 码率控制类型和内涵
在做视频编码时,当我们给编码器设定一个目标码率的时候,编码器内部是怎么达到码率要求的呢 ?编码器如何合理分配码率,以获得更高的视频质量 ?这都是码率控制的问题。x264的码率控制分为帧间级和帧内级,本文介绍帧间级各种码率控制类型,其内涵和使用方法。1 目的和意义:码率控制有两个目的兼容传输、播放条件 更高的视频质量1.1 兼容传输、播放条件视频编码中,越高的码率通常...
2018-10-09 17:18:36
3413
4
原创 x264模式选择算法
H264运动搜索和模式选择主要在函数x264_macroblock_analyse() 中执行。这个函数执行对一个宏块的分析,确定一个宏块的编码模式和运动矢量。这个函数占到了编码时间的60%以上。这个函数的主要流程如下:(引用自雷宵骅的博客) (1)如果当前是I Slice,调用x264_mb_analyse_intra()进行Intra宏块的帧内预测模式分析。(2)如果当前是P S...
2018-09-29 11:36:51
649
原创 SVC 分级编码初探
1、简介分级编码是一种用来兼容不同的终端设备和链路带宽的技术。它的特点是对码流分层,低层码流可以单独解码,高层码流能增强视频的质量。H.264 SVC (Scalable Video Coding)是以H.264为基础,在语法和工具集上进行了扩展,支持具有分级特性的码流。H.264SVC是H.264标准的附录G,在2007年10月成为正式标准。 2、H.264 SVC 支持三种分级方法:(1)时域...
2018-07-06 12:04:39
11269
2
原创 h264的帧内预测plane模式算法分析
根据h264标准,16x16块plane模式的预测过程如下所示: 上述公式标准中没有解释原理,网上也找不到相关资料。所以自己花了点时间分析了它,记录一下结果。仔细观察上面式子可以看到,H和V 代表了水平方向和垂直方向的梯度,b,c是H,V的缩放,其中+32是为了做到四舍五入。a代表了右上像素和坐下像素的均值。对这些值进行缩放和移位操作,是为了避免除法,下面会有更详细的说明。宏块最中间的像素P(7,...
2018-05-25 10:11:34
3457
3
原创 window下用mingw编译 x264
最近尝试在windows系统下,交叉编译了x264源码。参考了一些网友们的经验。由于工具一直在变,网上的教程大部分比较老了,所以把我踩过的坑写下来,回馈网友们的帮助。1. 为什么要交叉编译x264用的c语言是c99版本的,然而VS对C99语法的支持并不好,所以没有办法直接用VS编译。x264官方代码从2009年开始放弃了支持VS。 但是可以用交叉编译工具,生成windows系统能用的exe,和V...
2018-05-03 15:36:53
1651
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人