信息论复习—信源编码的基本方法

news2024/11/26 18:27:13

目录

信源编码的目的:提高传输效率 

离散信源:

离散信源的分类:

离散无记忆信源 (DMS: Discrete Memoryless Source):

离散无记忆信源的特点:

离散无记忆信源编码与译码:

等长编码的编码速率:

不等长编码的编码速率:

信源的熵H(S ),与编码速率 R 的比值定义为编码效率

离散无记忆信源的等长编码:

等长编码:对信源的每个符号,或每组符号,用长度相等的代码来表示:

扩展编码(联合编码):将 J 个信源符号进行联合编码:

离散无记忆信源(DMS)的有损等长编码:

定义:典型序列集

信源划分定理:

可达速率:

离散无记忆信源的不等长编码:

不等长编码的唯一可译性:

逗点码 —见到逗号就识别为一个码字的开始:

异字头码 — 见到一个码字就立即识别:

码树:

异字头码(编码):

不等长编码的基本定理:

​例:

霍夫曼(Huffman)编码:

霍夫曼编码的步骤:

例:

​编辑​编辑 码字长度的均匀性和方差:


信源编码的目的:提高传输效率 

(1)去除消息中的冗余度,使传输的符号尽可能都是独立的,没有多余的成分(如语音、图像信号压缩)

(2)使传输的符号所含的信息最大化。例如,通过编码使符号以等概分布的形式出现,使每个符号可能携带的信息量达到最大;

(3)采用不等长编码,让出现概率大的符号用较短的码元序列表示,对概率小的符号用较长的码元序列;

  (4)  允许一定失真的条件下,如何实现高效率的编码。


离散信源:

离散无记忆信源:

所发出的各个符号之间是相互独立的,发出的符号序列中的各个符号之间没有统计关联性,各个符号的出现概率是它自身的先验概率。

离散有记忆信源:

发出的各个符号之间不是相互独立的,各个符号出现的概率是有关联的。

发出单个符号的离散信源:

信源每次只发出一个符号代表一个消息;

发出符号序列的离散信源:

信源每次发出一组含两个以上符号的符号序列代表一个消息。

将以上两种分类结合,就有四种离散信源:

(1)发出单个符号的无记忆离散信源;

(2)发出符号序列的无记忆离散信源;

(3)发出单个符号的有记忆离散信源;

(4)发出符号序列的有记忆离散信源。


离散信源的分类:

单个符号的离散信源:每次只发出一个符号代表一个消息,且消息数量有限

发出符号序列离散信源--每次发出一组含两个以上的符号序列来代表一个消息

实例:


离散无记忆信源 (DMS: Discrete Memoryless Source):

 

离散无记忆信源的特点:

信源发出的各符号之间相互独立

发出的符号序列中各个符号之间没有统计关联性

各个符号的出现概率是它自身的先验概率

离散无记忆信源编码与译码:

对信源的每个不同的符号或不同的符号序列,编码后产生的码字不同,则称该码为唯一可译码

待编码码组简单记为:

编码输出码组(码字)为:

编码进制:D

码元位数:n

信源种类:L(有L种不同的符号)

J个符号为一组编码

待编码的符号序列的不同组合个数为:

码字集中不同的码字个数:

编码输出为唯一可译码的(必要)条件:

对于码元取自码字长度为一个码字

其最大可携带的信息量为


定义:编码表示一个信源符号所需的平均信息量的定义为编码速率 R

码字长度为常数的编码称为等长编码,反之称为不等长编码。对长度为 J  的信源符号序列进行编码:

等长编码的编码速率:

不等长编码的编码速率:

其中为不等长编码的平均码长


信源的H(S ),与编码速率 R 的比值定义为编码效率

要保证编码没有信息丢失,要求


离散无记忆信源的等长编码:

等长编码:对信源的每个符号,或每组符号,用长度相等的代码来表示:

单个符号独立编码 ,采用D制码元编码,若信源符号集有 L 种符号,要保证译码的唯一性

扩展编码(联合编码)J 个信源符号进行联合编码:


离散无记忆信源(DMS)的有损等长编码:

无损的等长编码,往往会因为 J 的取值过大,难以实际应用

定义:典型序列集

信源划分定理:

 

典型序列集是一个高概率集,但其数目在整个序列空间中可能只占很小的比例

例题:

可达速率:

例题:


离散无记忆信源的不等长编码:

不等长编码的唯一可译性:

1)每个消息都至少有一个码字与之对应,且不同的消息对应不同的码字

2) 对于一个码,如果存在一种译码方法,使任意若干个码字所组成的字母串只能唯一地被翻译成这几个码字所对应的事件序列,即码字的分点唯一确定。


逗点见到逗号就识别为一个码字的开始:

若 ①事件与码字一一对应;

     ②每个码字的开头部分都是一个相同的字母串;

     ③这个字母串仅仅出现在码字的开头,不出现在码字的其它部位。则称这个字母串为逗号,称此码为逗点码

异字头见到一个码字就立即识别:

若①事件与码字一一对应;

    ②每个码字都不是另一个码字的开头部分(字头)。

称此码为异字头码

码树:

异字头码(编码):

异字头码的优点:异字头码译码时具有即时性,即当收到一个完整的码字后即可译码,不用担心这一码字是另一码字的字头部分。


不等长编码的基本定理:

 

 例题:

 


霍夫曼(Huffman)编码:

霍夫曼编码是一种异字头不等长编码,其基本思想是:对出现概率大的符号或符号组用位数较少的码字表示;对出现概率小的符号或符号组用位数较多的码字表示。由此可提高编码效率。

霍夫曼编码一种最佳的不等长编码。

霍夫曼编码的步骤:

例:

 码字长度的均匀性和方差:

在同样的平均码字长度的情况下,码字长度越均匀,对传输越有利

编码过程的排序过程不同影响码长的方差。

在编码过程中,当对缩减信源概率重新排列时,应使合并得到的局部概率和尽量使其处于最高位置;使得合并元素重复编码的次数减少,有利于降低码字长度的方差

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/177776.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Day869.索引(下) -MySQL实战

索引(下) Hi,我是阿昌,今天学习记录的是关于索引(下)的内容。 先来看一下这个问题: 下面这个表 T 中,如果执行 select * from T where k between 3 and 5,需要执行几次…

【Java|golang】1828. 统计一个圆中点的数目

给你一个数组 points ,其中 points[i] [xi, yi] ,表示第 i 个点在二维平面上的坐标。多个点可能会有 相同 的坐标。 同时给你一个数组 queries ,其中 queries[j] [xj, yj, rj] ,表示一个圆心在 (xj, yj) 且半径为 rj 的圆。 对…

git 操作整理

git操作整理 git 配置 git config --global user.name “yuluo” git config --global user.email “1481556636qq.com” git config --global color.ui auto 启用命令行着色输出 git 操作 暂存区 git init . 初始化git仓库 git status 看仓库状态 git add index.html…

【C++】C++11简介 | 列表初始化 | 声明 | 范围for

​🌠 作者:阿亮joy. 🎆专栏:《吃透西嘎嘎》 🎇 座右铭:每个优秀的人都有一段沉默的时光,那段时光是付出了很多努力却得不到结果的日子,我们把它叫做扎根 目录👉C11简介&…

安装配置Ecplise插件PyDev 8.3.0

参考:安装Eclipse:https://baijiahao.baidu.com/s?id1751992697661111503&wfrspider&forpcEclipse安装PyDev:https://baijiahao.baidu.com/s?id1746725485069671146&wfrspider&forpc方法一:失败打开eclipse&…

分享138个ASP源码,总有一款适合您

ASP源码 分享138个ASP源码,总有一款适合您 下面是文件的名字,我放了一些图片,文章里不是所有的图主要是放不下..., 138个ASP源码下载链接:https://pan.baidu.com/s/1idRmCxILGVt5pBkac-GiiA?pwdjmmu 提取码&#x…

AX7A200教程(4): DDR3的读写fifo仿真

在上篇博客中,我们只是进行突发读写,没有使用读写fifo对ddr3进行读写,因ddr3读写接口都是256位宽,所以ddr3的读写fifo输入和输出都是32位,和ddr3对接的接口都是256位,如下面示意图所示。下面的截图为ddr3的…

《c++ primer》第五章 语句

前言 建议看书的时候就看一下异常,其它的直接跳过 一、简单语句 ​ 一条表达式语句以;结尾,它的作用是执行表达式并丢弃掉求值结果。一行如果只有一个;也是一条语句,称为空语句。复合语句时用{}括起来的语句或者声明, 也称为块&a…

Qt之QLCDNumber

文章目录一、QLCDNumber简介二、QLCDNumber属性示例获取系统时间示例代码提示:以下是本篇文章正文内容,下面案例可供参考 一、QLCDNumber简介 QLCDNumber控件用于显示一个LCD数字。 它可以显示几乎任意大小的数字。可以显示十进制、十六进制、八进制或…

【并发编程】ForkJoin线程池

一、使用场景 用于CPU密集型的任务,通过把任务进行拆分,拆分成多个小任务去执行,然后小任务执行完毕后再把每个小任务执行的结果合并起来,这样就可以节省时间。 CPU密集型(CPU-bound):CPU密集…

Java 初识IO流

IO流概述 用于读写文件中的数据(可以读写文件,或网络中的数据…) IO流的分类 纯文本文件:用windows系统自带的记事本打开并且能读懂的文件。如:txt文件、md文件、xml文件、lrc文件等. IO流的体系 总结 什么是IO流? 存…

Amesim2021.1与Simulink联合仿真配置流程及经验总结

Amesim 与 Simulink 联合仿真配置相对比较麻烦,笔者曾经凭运气配置成功过,但后来在别的电脑又多次配置失败,经过一些尝试及咨询专业人士,对Amesim2021.1版本与Simulink联合仿真配置做了一个流程总结,希望能帮助有需求的…

AutoSAR MemMap模块实例解析及注意事项

文章目录 1 AUTOSAR Memory Mapping的运行机制1.1 AUTOSAR Memory Mapping实例解析1.2 编译器的选择2 内存分配关键字3 如何生成BSW和 SWC的MemMap.h文件4 编译优化的影响传送门 ==>> AutoSAR入门和实战系列总目录 1 AUTOSAR Memory Mapping的运行机制 AUTOSAR Memory …

恶意代码分析实战 6 OllyDbg

6.1 Lab 9-1 程序分析 首先,进行静态分析,使用strings。 CreateFileA RegQueryValueExA RegOpenKeyExA RegSetValueExA RegCreateKeyExA RegDeleteValueA WideCharToMultiByte GetModuleHandleA GetEnvironmentVariableA SetEnvironmentVariableA SOFTW…

DaVinci:Camera Raw(ARRI)

本文主要介绍 ARRI 的 Raw 格式素材相关的 Camera Raw 参数。解码质量Decode Quality解码质量决定了图像解拜耳之后所呈现的素质,也与最终的输出息息相关。默认为“使用项目设置” Use project setting,表示使用项目设置对话框中的“Camera RAW”解码质量…

mysql之explain(性能分析)

目录 1.说明 2.使用方式 3.字段解释 (1)id (2)select_type (3)table (4)type (5)possible_keys (6)keys (7)ken_len (8)ref ​编辑 (9)rows (10)extra 4.示例 1.说明 使用EXPLAIN关键字可以模拟优化器执行SOL查询语句,从而知道MySOL是如何处理你的S…

MySQL主从复制、读写分离

一、MySQL主从复制 MySQL数据库默认是支持主从复制的,不需要借助于其他的技术,我们只需要在数据库中简单的配置即可。 1. MySQL主从复制概述 MySQL主从复制是一个异步的复制过程,底层是基于MySQL数据库自带的 二进制日志 功能。就是一台或多台…

Redis持久化-RDB

Redis持久化-RDB 1.官方资料 在线文档 : https://redis.io/topics/persistence 2.Redis持久化方案 1.RDB(Redis DataBase) 2.AOF(Append Of File) 3.RDB是什么 在指定的时间间隔内将内存中的数据集快照写入磁盘&#xff0c…

尚医通-手机登录-判断用户登录状态-用户网关整合(三十)

目录: (1)前台用户系统-手机登录-前端整合 (2)全局的登录事件-判断登录状态 (3)登录注册-用户认证和网关整合 (1)前台用户系统-手机登录-前端整合 service-user模块的配…

图论(入门版)

目录 1 向、权 2 最小生成树 2.1 Prim算法 2.2 Kruskal算法 3 最大流问题 3.1 Naive算法 3.2 Ford—Fulkerson算法 3.3 Edmonds—Karp算法 3.4 Dinic算法 4 最小割问题 5 二部图 5.1 判断是否是二部图的方法 5.2 匈牙利算法(最小匹配问题&a…