AVS中访问色度分量时的stride问题
来源:互联网 发布:股票交易记录分析软件 编辑:程序博客网 时间:2024/06/16 11:26
在AVS编码器中写代码的时候经常会访问亮度色度分量的原始值、预测值、重构值、残差值等,这时候就需要用到stride以访问到正确的内存空间。亮度分量没什么好说的,一般都可以根据相关的结构体获取得到亮度分量的stride,而色度分量的stride有些时候并不能直接获取到,于是乎,写代码的时候,考虑到色度分量与亮度分量是1:2的关系,我理所当然的认为stride也是这样的。然而,事实证明,想当然是没有好下场的……
在AVS编码器中,要想访问色度分量的相关像素值,其stride并不是stride>>1,而是stride本身。这是为什么呢?我在编码器中跟了一下存放色度分量的预测值的代码,发现YUV三个分量的存放于获取并不是我想的那样,而是如下图所示:
所以,若想访问U1色度块,则需要获取到指向其左上角像素的内存地址p_chroma,及其width和height(亮度分量的一半),逐行访问像素值,当一行的像素值访问结束之后,内存地址p_chroma=p_chroma+Stride可得到下一行行首的内存地址。图示就可以看出,访问色度分量的时候并不是使用stride>>1的,主要是由于其YUV分量的存放方式导致。
其实,只要仔细看代码了就很容易明白,这次犯错还是因为想当然,没有深入到代码中去理解代码。
阅读全文
0 0
- AVS中访问色度分量时的stride问题
- 色度分量帧内预测的代码
- 色度图的问题
- 关于stride跨距的问题
- 图像处理中Stride的理解
- 图像处理中Stride的理解
- ffmpeg中的stride 与DirectDraw中DDSURFACEDESC的lPitch
- tf.nn.conv2d中stride对输出的影响
- 图形的stride
- HI3516A stride的理解.
- STRIDE
- 图像块的访问(填充 padding,步长 stride,窗 Window/kernel/filter)
- AVS标准想到的
- AVS
- Bitmap 之 getPixels() 的 stride
- Bitmap 之 getPixels() 的 stride
- 视频系统中视频参数的视觉影响: 色度至亮度延迟的影响
- 图像处理中Stride方法理解
- Mysql学习历程(15)-视图
- hadoop1.x的缺陷及hadoop2.x的诞生
- Linux makefile 教程 非常详细,且易懂
- 利用URLRewriter重写url地址-实现伪静态
- Havel-Hakimi定理(判断一个序列是否可图)
- AVS中访问色度分量时的stride问题
- ubuntu su sudo sudo–i 区别
- ubuntu下tflearn安装
- JQuery学习笔记(一)
- 图像的直方图
- MM配置的节点的快速入口
- 使用AutoCompleteTextView实现对全国省市的模糊查询
- html5图片上传时IOS和Android均显示摄像头拍照和图片选择
- 该如何向你奶奶解释企业级架构