优质的房产网站建设wordpress素材模板怎么用
news/
2025/9/30 7:55:13/
文章来源:
优质的房产网站建设,wordpress素材模板怎么用,中国十大关键词,网站开发培训机构帧内解码时#xff0c;在解码端#xff0c;首先通过当前宏块左边、上边已经解码完成的宏块使用当前宏块的预测模式#xff08;预测模式计算过程请参见我的论文《H.264数字视频差错控制技术的研究》#xff0c;在群FTP“本群原创资料”目录中#xff09;得到当前宏块的像素…帧内解码时在解码端首先通过当前宏块左边、上边已经解码完成的宏块使用当前宏块的预测模式预测模式计算过程请参见我的论文《H.264数字视频差错控制技术的研究》在群FTP“本群原创资料”目录中得到当前宏块的像素预测值。然后通过对码流进行解码得到当前宏块的像素残差。最后将残差和预测值加在一起就得到重构的像素值。如果当前宏块的左边或者右边的宏块不存在即当前宏块为图像边界上的宏块那么其预测值全部为128。
帧间解码时在解码端首先对码流进行解码得到当前宏块的参考帧然后通过当前宏块周围宏块计算运动矢量预测值具体方法见毕厚杰书99页标准中也有但我一时不知道在什么地方了。然后通过对码流进行解码得到当前宏块的运动矢量残差。将运动矢量残差与运动矢量预测值相加得到实际的运动矢量。然后通过对码流进行解码得到当前宏块的像素残差如果当前宏块有像素残差的话。然后通过参考帧与上面计算得到的MV计算出当前宏块的像素预测值。再将像素预测值与像素残差相加就得到当前宏块的重构。
说明
1、以上过程为 JM86 的解码过程。并不一定所有代码都按照这个流程
2、上面说的运动矢量预测值的计算过程实际是以4*4块为单位参考帧也是针对4*4块做的。这里写成宏块主要是方便大家理解。
RDO
Rate-Distortion Optimization 是视频编码中最优选择mode的一种方法。比如h.264里好多mode 8x8 16x16 I4x4 I16 在给定的条件下哪个是最好的?
Distortion 是指选用candidate mode产生的失真rate是用这个mode需要的rate.他们换算成RDCost Distortion lamda * rate. 两个mode谁的rdcost 低就选谁其中的数学原理是条件极值转非条件极值。
JM 里用的RDO是比较经典的方法。最早是Gary J.Sullivan做的 参见 IEEE Signal Processing Magazine 1998 Nov. Rate-Distortion Optimization for video compression rdo的经典。 h264里的rdo还可参考CSVT H.264 special issue. 在H.264里面当前帧属于哪个slice的决定形式是多种多样的对于JM中的码流中一般一帧图象就认为是一个slice那么如果当前帧是一个I帧那么它就属于一个I slice.这时整个frame的为一个slice.但是具体我们用什么样的方式来进行slice type的决策呢这也是一个问题。我们看一下T264里面是如何处理这个问题的。 在T264中,如果我们设定了,USE_SCENEDETECT的话,当前的slice种类是由当前帧的帧号与设定的idrframe,iframe跟bframe相关的如果frame_no%idrframe0的话那么说明当前帧是属于一个IDR slice的如果frame_no%iframe0的话该帧属于一个I slice.如果上面的情况不满足那么是属于P slice或B slice.由于码流中只有如下几种类型0) I P P P ..... I P P P 1) I B P B P.....B P B P 2) I B B P B B P.....B B P I B B P所以如果frame_no%(bframe1)0的话就属于P slice,如果不是的话属于B slice. 如果没有使用USE_SCENEDETECT的话是用MeAnalysis来决定当前属于什么slice的。这种形式是动态式地决定是不是要加入一个I slice。决定流程如下如果我们达到了我们在config里面设定的iframe interval的话当前帧就是一个I slice.我们设定一个INTRA_THRESHOLD,对帧中的每一个宏块进行预测来计算sad.这个过程因为计算量比较大所以使用了简化算法首先用前一帧的mv做预测值计算sad如果这个值大于我们设定的SEARCH_THRESHOLD的话说明上一帧的mv已不适合做当前帧的预测我们会使用一个简化的diamond search来简单地找一下当前宏块的mv,进行sad计算。整个帧的sad计算结束之后我们与INTRA_THRESHOLD进行比较如果sad大的话这一帧为I slice中的一帧如果小的话我们认为它是一个P或B帧。对于当前帧是P还是B帧还是用上面的方法进行。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/922587.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!