热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

十四、变换编码:1、矩阵运算、正交变换、离散余弦变换基本概念

一、矩阵(Matrix)矩阵的定义由m*n个数字按照m行、n列排列成的数表称为矩阵如变换系数的基本单位即为4*4的矩阵矩阵在多个领域中起重要作用多媒体

一、矩阵(Matrix)


  • 矩阵的定义
    • 由m * n个数字按照m行、n列排列成的数表称为矩阵
    • 如变换系数的基本单位即为4 * 4的矩阵
  • 矩阵在多个领域中起重要作用
    • 多媒体信息处理
    • 机器学习/人工智能等

二、矩阵的运算


  • 矩阵可以参加运算
    • 同型矩阵可以进行加减运算:(同型:行列相等,相同位置进行加减
    • 矩阵可以与数相乘
    • 满足相应条件的矩阵可以进行相乘运算
  • 矩阵与向量
    • 只有一行或一列的矩阵又称向量
    • 行向量或列向量:一般我们使用的是列向量
      在这里插入图片描述
  • 矩阵的线性乘法:
    • 矩阵与矩阵相乘会略显复杂,需要满足必要条件,即矩阵1的宽必须等于矩阵2的高方可相乘。乘积矩阵的高和宽分别为矩阵1的高和矩阵2的宽,如下图表示:
      在这里插入图片描述

三、向量和矩阵的线性变换

向量的线性变换定义为:向量y的每一个元素都是向量x中元素的线性组合,则y是x的线性变换。假设有向量[x1, x2, x3]和向量[y1, y2, y3],两个向量满足以下关系:

y1 = a11 * x1 + a12 * x2 + a13 * x3
y2 = a21 * x1 + a22 * x2 + a23 * x3
y3 = a31 * x1 + a32 * x2 + a33 * x3

那么我们称向量[y1, y2, y3]可以被向量[x1, x2, x3]线性表示,以公式形式则表示为y=A·x。其含义可表示为矩阵与向量相乘:
在这里插入图片描述
矩阵A即为该线性变换的矩阵。

将向量的变换推广,矩阵可以视为由向量构成,因此线性线性变换同样适用于矩阵的变换:
在这里插入图片描述


四、向量的正交性


  • 向量的内积
    • 即两个向量对应元素成绩的总和(向量需是相同长度)
    • 例:(1 2)*(3 4)=1 * 3 + 2 * 4=11
      在这里插入图片描述
  • 而向量的正交,等价于两个向量的内积为0。即:
    在这里插入图片描述
  • 正交向量,两个向量是垂直的

五、正交矩阵和正交向量

由于矩阵可视为由多个列向量构成,那么多个两两正交的向量可以构成正交矩阵。一个矩阵是正交矩阵需要满足的条件有:


  • 行数和列数相等,即正交矩阵都为方阵;
  • 每一个列向量均为单位向量,即长度均为1;
  • 各列向量两两正交;
  • 例:
    在这里插入图片描述

前面提到,每一个矩阵都可以与一个线性变换对应。那么如果一个线性变换对应的变换矩阵是正交矩阵,那么该变换就是一个正交变换。正交变换的显著特点之一是,向量经过正交变换后长度不会发生变化。


六、离散余弦变换


  • 离散余弦变换 (Discrete Cosine Transform, DCT)类似于一种实数类型的离散傅里叶变换(DFT)

  • 对于图像数据,DCT具有很好的能量集中特性,通常主要能量部分集中于低频部分

  • 一维数据的离散余弦变换表示为:
    在这里插入图片描述

  • 一维离散余弦逆变换为:
    在这里插入图片描述

  • 由于DCT具有类似于DFT的特性,DCT也可以实现如信息能量集中的功能。对于图像数据,DCT可以有效将大部分的能量集中与直流和低频部分,这也成为视频压缩中变换编码的理论基础之一。

  • 离散余弦变换的应用场景:

  • 视频:MPEG-1/MPEG-2;

  • 图像:JPEG

在H.264及更新的视频压缩标准中,采用的是DCT的优化改进版——整数变换。相对于浮点类型的离散余弦变换,整数变换有效降低了变换操作的运算复杂度,提升了编解码器的运行效率。
在这里插入图片描述
越亮的部分能量越集中,而越暗的部分通常表示的信息越少


七、图像的空间域与频率域


  • 图像的空间域表示
    • 在空间域,图像表示为连续紧密排列的像素点
    • 每个像素点的地位相同;某些像素点的缺失表现为图像在空间上的不完整;
  • 图像的频率域表示
    • 在频率域,图像表示为信息在不同频率上的分量值
    • 每个频率分量的地位不同,低频分量通常对视觉效果影响更大(低频缺失图像面目全非,高频缺失只是边缘不清晰,所以为了提升图像的压缩比可以允许信息在比较高频的分量有一定的损失,对整体的观看效果影响不会很大)

八、书籍推荐

在这里插入图片描述


推荐阅读
  • Quick BI是一款专为云计算环境设计的高级数据分析与可视化解决方案,旨在帮助企业和组织实现从传统数据处理模式到现代云端数据管理的无缝过渡。本文将深入探讨Quick BI在数据可视化方面的独特功能及其发展历程。 ... [详细]
  • 视觉Transformer综述
    本文综述了视觉Transformer在计算机视觉领域的应用,从原始Transformer出发,详细介绍了其在图像分类、目标检测和图像分割等任务中的最新进展。文章不仅涵盖了基础的Transformer架构,还深入探讨了各类增强版Transformer模型的设计思路和技术细节。 ... [详细]
  • 本文介绍了如何利用OpenCV库进行图像的边缘检测,并通过Canny算法提取图像中的边缘。随后,文章详细说明了如何识别图像中的特定形状(如矩形),并应用四点变换技术对目标区域进行透视校正。 ... [详细]
  • 本周三大青年学术分享会即将开启
    由雷锋网旗下的AI研习社主办,旨在促进AI领域的知识共享和技术交流。通过邀请来自学术界和工业界的专家进行在线分享,活动致力于搭建一个连接理论与实践的平台。 ... [详细]
  • 深入探讨前端代码优化策略
    本文深入讨论了前端开发中代码优化的关键技术,包括JavaScript、HTML和CSS的优化方法,旨在提升网页加载速度和用户体验。 ... [详细]
  • Python 领跑!2019年2月编程语言排名更新
    根据最新的编程语言流行指数(PYPL)排行榜,Python 在2019年2月的份额达到了26.42%,稳坐榜首位置。 ... [详细]
  • 2017年软件开发领域的七大变革
    随着技术的不断进步,2017年对软件开发人员而言将充满挑战与机遇。本文探讨了开发人员需要适应的七个关键变化,包括人工智能、聊天机器人、容器技术、应用程序版本控制、云测试环境、大众开发者崛起以及系统管理的云迁移。 ... [详细]
  • 【小白学习C++ 教程】二十三、如何安装和使用 C++ 标准库
    【小白学习C++ 教程】二十三、如何安装和使用 C++ 标准库 ... [详细]
  • 机器学习(ML)三之多层感知机
    深度学习主要关注多层模型,现在以多层感知机(multilayerperceptron,MLP)为例,介绍多层神经网络的概念。隐藏层多层感知机在单层神经网络的基础上引入了一到多个隐藏 ... [详细]
  • 英特尔推出第三代至强可扩展处理器及傲腾持久内存,AI性能显著提升
    英特尔在数据创新峰会上发布了第三代至强可扩展处理器和第二代傲腾持久内存,全面增强AI能力和系统性能。 ... [详细]
  • 【转】强大的矩阵奇异值分解(SVD)及其应用
    在工程实践中,经常要对大矩阵进行计算,除了使用分布式处理方法以外,就是通过理论方法,对矩阵降维。一下文章,我在 ... [详细]
  • 本文介绍如何使用OpenCV和线性支持向量机(SVM)模型来开发一个简单的人脸识别系统,特别关注在只有一个用户数据集时的处理方法。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • Vision Transformer (ViT) 和 DETR 深度解析
    本文详细介绍了 Vision Transformer (ViT) 和 DETR 的工作原理,并提供了相关的代码实现和参考资料。通过观看教学视频和阅读博客,对 ViT 的全流程进行了详细的笔记整理,包括代码详解和关键概念的解释。 ... [详细]
  • 在2019中国国际智能产业博览会上,百度董事长兼CEO李彦宏强调,人工智能应务实推进其在各行业的应用。随后,在“ABC SUMMIT 2019百度云智峰会”上,百度展示了通过“云+AI”推动AI工业化和产业智能化的最新成果。 ... [详细]
author-avatar
白开水
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有