工程中的编码是什么呀

工程中的编码是什么呀,第1张

  分部分项工程量清单应包括项目编码、项目名称、项目特征、计量单位和工程数量五个部分。清单编码以12位阿拉伯数字表示。其中1、2位是专业工程顺序码,3、4位是附录顺序码,5、6位是分部工程顺序码,7、8、9是分项工作顺序码,10、11、12位是清单项目名称顺序码。

 其中前9位是《清单规范》给定的全国统一编码,根据规范附录A、附录B、附录C、附录D、附录E的规定设置,后3位清单项目名称顺序码由编制人根据图纸的设计要求设置。

 编码用于数据压缩,加密,纠错和网络。编码在各种科学学科(如信息理论,电气工程,数学,语言学和计算机科学)都有研究-旨在设计高效可靠的数据传输方法。这通常涉及去除冗余以及发送数据中的错误的校正或检测。

 实现编码的具体方法和电路很多,方法有低速编码和高速编码、线性编码和非线性编码;电路有逐次比较型、级联型和混合型编码。编码原理按照应用来分可以分为算术编码原理,音频编码原理、图像编码原理、字符编码原理等。

信道编码技术及电子系统工程应用的探讨论文

 根据信道编码理论及编码、译码方法和技术的发展,结合工程实际从理论到实践进行了简要的阐述。

 随着信息及信号传输技术的发展,应用电子领域也随之扩大并得到发展。通过对信源编码、信道编码、编码的方法,以及对压缩后的信息进行纠错编码,以抗击信道、网络及传输过程的误码或数据丢失,即信道编码问题的系统认识与理解对实际工程应用具有重要的意义。从电子系统工程的应用角度,对相关知识的理解与应用体会更为深刻。在此,就实际应用中贯穿其中的相关知识及带来的思考与启发扼要介绍。

  一、信道编码理论及编、译码问题

 衡量任何一个信号通信系统性能优劣的基本因素是有效性和可靠性,有效性是信道传输信息的速度快慢,可靠性是信道传输信息的准确程度。在数字通信系统中,信源编码是为了提高有效性,信道编码是为了提高可靠性,而在一个通信系统中,有效性和可靠性是互相矛盾的,也是可以互换的。我们可以用降低有效性的办法提高可靠性,也可以用用降低可靠性的办法提高有效性。而纠错编码,即信道编码问题是重点。

 (一)编、译码问题

 信道编码是以香农第二定理和香农第三定理为理论支持。在错误控制编码方面,主要是纠错线性分组码与非分组的卷积码。对于线性分组码,采用增加冗余码作为监督码,这样编出的码具有一定的检错和纠错能力。在译码方面,根据最大似然法译码,判断码的汉明距离,找到汉明距离最小的码,那就是在发送端传输过来的码。编码是一个比较抽象的概念,采用矩阵的描述方式表示编码,将输入的信息序列与生成矩阵相乘,那么就可以得到编码后的符号。在译码方面,通过奇偶校验矩阵就可以检测译码是否正确。

 (二)关于卷积码

 卷积码是编码不一样的领域,因为这种码在判决时用到过去的信息,也就是说,它是需要记忆的。这也就是卷积码得名的由来。卷积码的编码器由一个移位寄存器和相关逻辑电路组成,对每一个进入的信息帧,编码器都产生一个码字帧。当然,还可以画编码器的状态图,比较直观表示编码器根据输入情况而变化。根据状态图可画出网格图;由网格图很容易地知道卷积码的距离,这是卷积码译码的一个依据。卷积码用一个生成多项式矩阵表示,在编码方面极为方便,编码 *** 作可以简单地描述为信息量矩阵与生成矩阵的乘积。而更加严谨、方便地表达,则需要生成函数。通过修改状态图,很容易得到生成函数。对生成函数的级数展开,可以很直观地得到汉明距离和输入路径的信息,最后还可以知道给定汉明距离全零路径的数量。

 (三)Turbo码和LDPC码

 Turbo码与LDPC码是两种性能接近香农极限的信道编码。Turbo码在低信噪比的情况下,性能比其他编码要好。Turbo码的优良性能在非实时数据通信方面被广泛采用。Turbo码是分组码和卷积码的“准”混合物。Turbo码有并行级联卷积码、串行级联卷积码和混杂级联卷积码三种不同的排列。因为有交织器的存在,所以编码器的纠错能力很好。LDPC码是一类可以用非常稀疏的校验矩阵或二分图定义的线性分组码,其特点是:译码算法具有线性复杂度可采用并行迭代方式,具有译码自校验特性,在高信噪比条件下能有效降低译码复杂度,提高误比特率性能;可以满足高性能信号通信要求。LDPC码以最低的复杂度提供了最好的性能。这意味着在同等性能情况下, LDPC码的复杂度只有Turbo码的1/4。与Turbo码相比,LDPC码尤其是非规则LDPC码具有非常出色的性能,优于迄今为止已知的其它编码方式。LDPC码与其它编码相比还有一些独特的优点:译码可以完全并行,因此可以获得更高的译码速度;译码器的复杂度大幅降低;译码是可验证的;非规则LDPC码具有天然的不等错误保护能力。

  二、从信道编码定理看编、译码方法的发展

 (一)信道编、译码方法的多样性

 信道编码的'核心是“纠错”;信道编、译码的最终目的是实现信道与信号通信系统在可靠性指标下的优化。其方法是纠错编码,即抗干扰编码。奇偶校验码是一种检错分组码;由此原理派生出改进的:水平奇偶校验码、垂直奇偶校验码、群计数码等。定比码是一种只能发现错误的简单检错码,且需通过反向信道系统方能实现抗干扰。而重复码是前向纠错码,也是一种最简单的纠错码,实际应用较广泛。而由汉明码引出的线性分组码是一种具有线性代数关系的编码。在实际应用中,为得到希望的码长和信息位长度,将信息位缩减而得到原码的缩短码。在汉明码的基础上增加一位监督元,则产生增余汉明码或扩展汉明码,使纠错能力得到提高。而由完备码产生的完备译码、非完备译码,则反映了分组码的纠错能力是全部用于纠错,还是部分纠错检错。循环码是线性分组码中重要的一类码,从应用角度其编码与译码电路较为简单,易于实现;且编、译码方法方便、成熟。

 (二)信道编、译码方法的发展过程与启示

 不难看出,信道编码的方法是丰富多彩的。也是渐进发展,逐步完善的过程。由此可见,理论指导是发展的方向。对信道编码的理论支撑及方向的指引,使得信道编码方法沿着丰富而日臻完善、接近而趋于极限的方向发展。从这一发展过程可以看出,任何一种新的或衍生的方法,都是有局限性的。但这种局限和不完善性,并不会阻碍新的方法的产生和发展。旧的矛盾解决的同时,新的矛盾又会出现。正如,纠错检错能力的提高,对信息进行错误保护,以抵御信道或网络等信息传输过程的干扰所产生的误码或数据丢失的同时,也将使编码及信息传输效率降低。由于信道编码增加了数据量,其结果只能是以降低传送有用信息码率为代价。因此,不同的编码方式,其纠、检错的能力不同,编码效率(信息传输效率)也有所不同。

  三、从工程应用实例看理论支撑点

 (一)智能住宅小区建设中信道编码技术的应用

 在工程中首次接触的,应用于数字电视地面广播(DTTB)的编码调制方案中,涉及到:以多级分组乘积码代替传统的串行级联编码结构,提高了频谱效率;同时采用一种多分辨率星座图,可在一个DTTB信道中提供3种级别的服务在接收端采用基于MAX—LOG—MAP准则的迭代Turbo译码算法以获得可靠接收。仿真结果表明,在视觉门限BER=3×10-6处,高优先级码流的比特信噪比约为7dB,适用于高可靠性的服务中优先级和低优先级码流可支持室外固定接收。由此,也加深了对并行级联卷积码的反馈迭代结构的理解。

 (二)网络编码与网络安全

 在网络工程中,接触到多址信道中联合网络编码和信道编码的设计方案。该方案利用LDPC码和网络编码的线性特性以及软输入软输出模块设计,不仅减少了编译码的复杂度,而且提高了编译码效率。同时,了解了网络——信道编码分离定理,以及该定理成立的条件,即当网络中的信道是确定型广播信道时,分离定理不成立。而信道安全编码与网络安全编码同样重要,又有所区别。信道编码问题,其核心是对传送的信息进行错误保护,以抗击信道或网络等信息传输媒介所带来的误码或数据丢失。而网络中的通信安全是网络编码研究的重要课题之一,网络安全编码更侧重于网络使用者信息及使用的安全层面。网络编码技术的发展可以大幅度提高网络的吞吐量。

  四、结束语

 专业技术的专长与拓展并存,这是专业技术发展的必然趋势。身处信息时代,信息科学是研究信息的获取、传输以及应用的科学,是信息资源与技术开发及其推广应用的理论基础,是信息技术及信息产业的核心。通信工程、电子信息工程、计算机科学、计算机应用等众多应用技术与信息科学、信息技术及信息产业息息相关。信道编码从理论上要解决理想编码器、译码器的存在性问题,即解决信道能传送的最大信息率的可能性和超过这个最大值时的传输问题;同时构造性的编码方法以及这些方法能达到的性能界限。筒言之,通过信道编码器和译码器来实现的用于提高信道可靠性的理论和方法。

;

所谓视频编码方式就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式。视频流传输中最为重要的编解码标准有国际电联的H261、H263、H264,运动静止图像专家组的M-JPEG和国际标准化组织运动图像专家组的MPEG系列标准,此外在互联网上被广泛应用的还有Real-Networks的RealVideo、微软公司的WMV以及Apple公司的QuickTime等。

MPEG是活动图像专家组(Moving Picture Experts Group)的缩写,于1988年成立,是为数字视/音频制定压缩标准的专家组,已拥有300多名成员,包括IBM、SUN、BBC、NEC、INTEL、AT&T等世界知名公司。MPEG组织最初得到的授权是制定用于“活动图像”编码的各种标准,随后扩充为“及其伴随的音频”及其组合编码。后来针对不同的应用需求,解除了“用于数字存储媒体”的限制,成为制定“活动图像和音频编码”标准的组织。MPEG组织制定的各个标准都有不同的目标和应用,已提出MPEG-1、MPEG-2、MPEG-4、MPEG-7和MPEG-21标准。

UTF8并不算是一种电脑编码,而是一种储存和传送的格式,如前所述,每个Unicode/UCS字符都以 2或4个bytes来储存,看看以下的比较:

以"I am Chinese"为例

用ANSI储存:12 Bytes

用Unicode/UCS2储存:24 Bytes + 2 Bytes(header)

用UCS4储存:48 Bytes + 4 Bytes(header)

以"我是中国人"为例

用ANSI储存:10 Bytes

用Unicode/UCS2储存:10 Bytes + 2 Bytes(header)

用UCS4储存:20 Bytes + 4 Bytes(header)

由此可见直接以Unicode/UCS的原始形式来储存是一种极大的浪费,而且也不利于互联网的传输(中文稍为合算一点^_^)。

有见及此,Unicode/UCS的压缩形式--UTF8出现了,套用官方网站的首句话『UTF-8 stands for Unicode Transformation Format-8 It is an octet (8-bit) lossless encoding of Unicode characters』,由于UTF也适用于编码UCS,故亦可称为『UCS transformation formats (UTF)』

UTF8是以8bits即1Bytes为编码的最基本单位,当然也可以有基于16bits和32bits的形式,分别称为UTF16和UTF32,但目前用得不多,而UTF8则被广泛应用在文件储存和网络传输中。

在网络中有很多地方都有采用UTF8编码,由于要编写与邮件服务端有关的程序,而邮件服务端有些地方用到了UTF8编码,所以对它有了初步的认识!

它其实和Unicode是同类,就是在编码方式上不同!

首先UTF8编码后的大小是不一定,不像Unicode编码后的大小是一样的!

我们先来看Unicode的编码:一个英文字母 “a” 和 一个汉字 “好”,编码后都是占用的空间大小是一样的,都是两个字节!

而UTF8编码:一个英文字母“a” 和 一个汉字 “好”,编码后占用的空间大小就不样了,前者是一个字节,后者是三个字节!

现在就让我们来看看UTF8编码的原理吧:

因为一个字母还有一些键盘上的符号加起来只用二进制七位就可以表示出来,而一个字节就是八位,所以UTF8就用一个字节来表式字母和一些键盘上的符号。然而当我们拿到被编码后的一个字节后怎么知道它的组成?它有可能是英文字母的一个字节,也有可能是汉字的三个字节中的一个字节!所以,UTF8是有标志位的!

当要表示的内容是7位的时候就用一个字节:0 第一个0为标志位,剩下的空间正好可以表示ASCII 0-127 的内容。

当要表示的内容在8到11位的时候就用两个字节:110 10 第一个字节的110和第二个字节的10为标志位。

当要表示的内容在12到16位的时候就用三个字节:1110 10 10 和上面一样,第一个字节的1110和第二、三个字节的10都是标志位,剩下的空间正好可以表示汉字。

以此类推:

四个字节:11110 10 10 10

五个字节:111110 10 10 10 10

六个字节:1111110 10 10 10 10 10

视频的本质就是很多帧,在视频采集过程中其实就是采集,而h264编码就是对这些进行压缩,以便于存储和传输。针对一帧帧的,引申出以下的概念:

· I帧:关键帧,采用帧内压缩技术

举个例子,如果你用摄像头对着一棵树来拍摄,1秒之内,实际你发生的变化是非常少的。1秒钟之内实际很少有大幅度的变化摄像机一般一秒钟会抓取几十帧的数据。动画一般都是15帧/s,平时我们的视频文件一般也就是30帧/s,对于一些要求比较高的,对动作的精细度有要求,想要捕捉到完整的动作的,高级的摄像机一般是60帧/s。I帧一般都是一组帧的第一帧,I帧需要完整的保存下来,如果没有这个关键帧后面解码数据,是完成不了的所以I帧特别关键。

· P帧:向前参考帧压缩时只参考前一个帧属于帧间压缩技术

视频的第一帧会被作为关键帧完整保存下来而后面的帧会向前依赖也就是第二帧依赖于第一个帧后面所有的帧只存储于前一帧的差异这样就能将数据大大的减少从而达到一个高压缩率的效果

· B帧:双向参考帧,压缩时即参考前一帧也参考后一帧帧间压缩技术

B帧,即参考前一帧,也参考后一帧这样就使得它的压缩率更高存储的数据量更小如果B帧的数量越多,你的压缩率就越高这是B帧的优点,但是B帧最大的缺点是,如果是实时互动的直播,那时与B帧就要参考后面的帧才能解码,那在网络中就要等待后面的帧传输过来这就与网络有关了如果网络状态很好的话,解码会比较快,如果网络不好时解码会稍微慢一些丢包时还需要重传对实时互动的直播,一般不会使用B帧。 (如果我们对实时性的要求不高的话,就可以使用B帧,单对于一些实时性要求比较高的直播来说,B帧可以完全不用的) 。

如果在一秒钟内,有30帧这30帧可以画成一组如果摄像机或者镜头它一分钟之内它都没有发生大的变化那也可以把这一分钟内所有的帧画做一组

一组帧:

一个I帧到下一个I帧这一组的数据包括B帧/P帧我们称为GOF(如下图)

简单分析一下我们在平时看视频时候会发现花屏或者卡顿的现象,主要是一组帧(GOF)里面的P帧缺失或者受损让解码时候发生错误导致的。为了避免花屏的发生,一般会不显示发生P帧或者I帧丢失的那一组帧,等到下一个I帧到来时才显示下一组帧,然而这样子治标不治本,长时间显示上一组帧,会导致卡顿现象的发生。

帧内预测压缩,解决的是空域数据冗余问题,一幅图里数据在宽高空间内包含了很多颜色,光亮人的肉眼很难察觉的数据 对于这些数据,我们可以认作冗余直接压缩掉的。

解决的是时域数据冗余问题,摄像头在一段时间内所捕捉的数据没有较大的变化,我们针对这一时间内的相同的数据压缩掉这叫时域数据压缩。

(除以上之外还有CABAC无损压缩与整数离散余弦变换(DCT)

在分析帧内预测与帧间预测之前我们还需知道 宏块划分与分组

H264宏块划分:

将一个左上角用宏块描述,就是宏块是88的元素取出的颜色,像右边的去描述描述颜色将一个全部用宏块描述就如下图。

基本上宏块划分就完成了,那么宏块还可以在细分吗?当然是可以的,宏块可以进行子块的划分,如下图:

在这个大的宏块里,可以再细化 我们可以看到在这个大的宏块里,我们更加细化了 比如我们中间这个全部都是蓝色的这个宏块,就可以用一个色块,更加简单描述就行了。

由上图可以看出,MPEG2和H264就会发现MPEG2存储时还算比较完整占用的空间相对于比较多而H264还是减少了很多空间像重复的颜色他们就用非常简单的色块描述了。

现在我们有一组帧(如下图),记录的是桌球在桌球台上的运动,好明显这一组帧的背景就是桌球台,这是不变的,改变的就是桌球的位置,这就是 帧分组 。

然后进行 组内宏块的查找 (如下图),台球从一角滚到另外一角相邻的2幅图做组内的宏块查找。将图逐行扫描,扫描到第三行发现了台球 然后围绕它的周围查找发现了有类似的图块。

以上 *** 作找到了对应的宏块,然后就会进行 运动估算。 然后把他们放在同一张图上面(如下图),而在两个位置之间就会存在着一个运动矢量。矢量会包含运动的方向和距离。以此类推,我们将所有的图进行两两比较的话,就会得出第一张图+很多帧的运动矢量,数据就达到了很大的减少。

你以为这样子就结束了嘛?其不然!虽然说每张图的背景都一样的,其实还是存在着一些差别的。好明显就是台球的数据,有些我们肉眼看不清的数据,例如光线的影响。所以帧间预测过程中还会对每帧图进行残差数据的计算,实际经过我们一运算后它留下的就只是运动矢量数据+残差值的数据。经过这样的一个计算帧间压缩数据我们就可以看到实际我们只需要存储一点点数据而不像以前要将几十帧的所有数据保存下来这就达到了压缩的效果,这个过程就叫做帧间压缩技术的原理。

帧内预测压缩在平时开发中使用较多,帧内压缩是针对于I帧的。因为它解决的是空间的数据冗余,而帧间压缩是解决的时间数据冗余。我们刚刚说明的是帧间压缩技术,将大量在时间轨迹上相同的数据压缩掉,只留下运算估量和残差值。

而帧内压缩用到了完全不同的技术手段,我们首先计算出每个宏块的宏块模式,一共9种。如图所示:

帧内预测9种模式原理介绍(1)

帧内预测9种模式原理介绍(2)

经过计算最后得到的数据是每个宏块预测得出宏块的模式数据,如图所示:

在每个宏块模式确定之后呢,就可以形成一张“预测图”,左边是预测图,右边是源图。

得到的“预测图”与原图比较起来还是显得比较粗糙的,然后两者进行残差数据的计算,得到残差值。如图:

低下的就是源于,灰色图就是残差值。

预测模式与残差值压缩:

拿到残差值之后,我们就进行压缩 压缩时保存,残差数据和每个宏块选择的模式信息数据 那么有了这2个数据之后当我们解码时,首先通过宏块的模式信息计算出预测图然后将预测图与我们的残差值进行累积就能还原成原图像 那这个过程就是"帧内压缩技术"的原理过程。

文章来源于网络,如未能核实来源或转发内容有瑕疵,请及时私信本人进行修改或者删除。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/12186029.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存