个人技术分享

1. 基础知识

本节主要内容是关于基变换的,从一组基变换到另外一组基中,这是在实际应用中会遇到,我们会在项目中讲到因为基的变换而引申出来的信号压缩,图像压缩问题。本质上其实都是基变换而引申出来的应用,基变换很强大也很重要。本章的主题是线性变换与矩阵的关联,线性变换不一定是在坐标系中进行变换,矩阵用坐标来表示线性变换,图像压缩也存在基的变换。

2. 图像向量

我们平常收到的视频图像是非常大的,我们在传输过程中不可能将原始图像进行传输,这样对于网络的负载太大了,我们需要将图像进行压缩打包后再发送,最后在我们显示的时候解压缩进行图像的还原,这样我们就能够高效的进行图像的传递和播放。
在这里插入图片描述

  • 情况一:长度为512*512的向量
    一个图像就是一个向量,包含图像的信息,如果是灰度图像,我们得到了一个长度为512*512的向量[线性代数中默认是列向量],向量里面的元素值为 0 ≤ x i ≤ 255 0 \leq x_i\leq 255 0≤xi​≤255,如果是彩色图片,长度为3*512*512;
    我们发现一个问题,假如我们有一张单独的空黑板图片,也就是所有的像素灰度一样。如果我们单独的去看一个像素是没有任何意义的,我们需要取出图像中的一块小区域当做一个特征来看待,这样我们就能学到相关的纹理信息。
  • 标准基:每个 x i x_i xi​表示为第i个像素的值,这样特别浪费维度, x i x_i xi​太多了,且每个像素 x i T x j = 0 x_i^Tx_j=0 xiT​xj​=0无相关性,无法提取到好的特征。
    x 0 = [ 1 0 ⋮ 0 ] , x 1 = [ 0 1 ⋮ 0 ] , ⋯   , x n = [ 0 0 ⋮ 1 ] \begin{equation} x_0=\begin{bmatrix}1\\\\0\\\\\vdots\\\\0\end{bmatrix},x_1=\begin{bmatrix}0\\\\1\\\\\vdots\\\\0\end{bmatrix},\cdots,x_n=\begin{bmatrix}0\\\\0\\\\\vdots\\\\1\end{bmatrix} \end{equation} x0​= ​10⋮0​ ​,x1​= ​01⋮0​ ​,⋯,xn​= ​00⋮1​ ​​​
  • 比较好的基, x 0 : x_0: x0​:全局为1的基,可以看到全局信息, x 1 : x_1: x1​: 1,-1的交互基,可以看到高频信号,噪声等信息
    x 0 = [ 1 1 1 ⋮ 1 ] , x 1 = [ 1 − 1 ⋮ 1 − 1 ] \begin{equation} x_0=\begin{bmatrix}1\\\\1\\\\1\\\\\vdots\\\\1\end{bmatrix},x_1=\begin{bmatrix}1\\\\-1\\\\\vdots\\\\1\\\\-1\end{bmatrix} \end{equation} x0​= ​111⋮1​ ​,x1​= ​1−1⋮1−1​ ​​​
  • 我们不希望用单独的像素作为基,这样太孤立了,我们希望以特征的形式来当做基,这样我们能更好的理解和处理图像信息。

3. 图像压缩

一开始,我们用一个512*512长的向量来表示一个图像,这个一维向量太长了,并且每个像素单独看,不利于进行图像的理解,这里我们用长8,宽8共64个像素区域来对512*512的图像进行分块处理,在保证图像信息不丢失的情况下,这种切块处理叫做 无损压缩处理:
在这里插入图片描述

3.1 傅里叶复数基

  • 以长8,宽8共64个像素作为块进行压缩,通常我们用8*8的傅里叶基作为标准基
    w 8 i = e 2 π 8 i \begin{equation} w_8^i=\mathrm{e}^{\frac{2\pi}{8} i} \end{equation} w8i​=e82π​i​​
    F 0 = [ 1 1 1 1 1 1 1 1 ] , F 1 = [ 1 w 8 1 w 8 2 w 8 3 w 8 4 w 8 5 w 8 6 w 8 7 ] , F 2 = [ 1 w 8 2 w 8 4 w 8 6 w 8 8 w 8 10 w 8 12 w 8 14 ] , F 3 = [ 1 w 8 3 w 8 6 w 8 9 w 8 12 w 8 15 w 8 18 w 8 21 ] , F 4 = [ 1 w 8 4 w 8 8 w 8 12 w 8 16 w 8 20 w 8 24 w 8 28 ] , F 5 = [ 1 w 8 5 w 8 10 w 8 15 w 8 20 w 8 25 w 8 30 w 8 35 ] , F 6 = [ 1 w 8 6 w 8 12 w 8 18 w 8 24 w 8 30 w 8 36 w 8 42 ] , F 7 = [ 1 w 8 7 w 8 14 w 8 21 w 8 28 w 8 35 w 8 42 w 8 49 ] , \begin{equation} F_0=\begin{bmatrix}1\\\\1\\\\1\\\\1\\\\1\\\\1\\\\1\\\\1\end{bmatrix},F_1=\begin{bmatrix}1\\\\w_8^1\\\\w_8^2\\\\w_8^3\\\\w_8^4\\\\w_8^5\\\\w_8^6\\\\w_8^7\end{bmatrix},F_2=\begin{bmatrix}1\\\\w_8^2\\\\w_8^4\\\\w_8^6\\\\w_8^8\\\\w_8^{10}\\\\w_8^{12}\\\\w_8^{14}\end{bmatrix},F_3=\begin{bmatrix}1\\\\w_8^3\\\\w_8^6\\\\w_8^9\\\\w_8^{12}\\\\w_8^{15}\\\\w_8^{18}\\\\w_8^{21}\end{bmatrix},F_4=\begin{bmatrix}1\\\\w_8^4\\\\w_8^8\\\\w_8^{12}\\\\w_8^{16}\\\\w_8^{20}\\\\w_8^{24}\\\\w_8^{28}\end{bmatrix},F_5=\begin{bmatrix}1\\\\w_8^5\\\\w_8^{10}\\\\w_8^{15}\\\\w_8^{20}\\\\w_8^{25}\\\\w_8^{30}\\\\w_8^{35}\end{bmatrix},F_6=\begin{bmatrix}1\\\\w_8^6\\\\w_8^{12}\\\\w_8^{18}\\\\w_8^{24}\\\\w_8^{30}\\\\w_8^{36}\\\\w_8^{42}\end{bmatrix},F_7=\begin{bmatrix}1\\\\w_8^7\\\\w_8^{14}\\\\w_8^{21}\\\\w_8^{28}\\\\w_8^{35}\\\\w_8^{42}\\\\w_8^{49}\end{bmatrix}, \end{equation} F0​= ​11111111​ ​,F1​= ​1w81​w82​w83​w84​w85​w86​w87​​ ​,F2​= ​1w82​w84​w86​w88​w810​w812​w814​​ ​,F3​= ​1w83​w86​w89​w812​w815​w818​w821​​ ​,F4​= ​1w84​w88​w812​w816​w820​w824​w828​​ ​,F5​= ​1w85​w810​w815​w820​w825​w830​w835​​ ​,F6​= ​1w86​w812​w818​w824​w830​w836​w842​​ ​,F7​= ​1w87​w814​w821​w828​w835​w842​w849​​ ​,​​

3.2 wavelet 小波变换基

w 0 = [ 1 1 1 1 1 1 1 1 ] , w 1 = [ 1 1 1 1 − 1 − 1 − 1 − 1 ] , w 2 = [ 1 1 − 1 − 1 0 0 0 0 ] , w 3 = [ 0 0 0 0 1 1 − 1 − 1 ] , w 4 = [ 1 − 1 0 0 0 0 0 0 ] , w 5 = [ 0 0 1 − 1 0 0 0 0 ] , w 6 = [ 0 0 0 0 1 − 1 0 0 ] , w 7 = [ 0 0 0 0 0 0 1 − 1 ] , \begin{equation} w_0=\begin{bmatrix}1\\\\1\\\\1\\\\1\\\\1\\\\1\\\\1\\\\1\end{bmatrix},w_1=\begin{bmatrix}1\\\\1\\\\1\\\\1\\\\-1\\\\-1\\\\-1\\\\-1\end{bmatrix},w_2=\begin{bmatrix}1\\\\1\\\\-1\\\\-1\\\\0\\\\0\\\\0\\\\0\end{bmatrix},w_3=\begin{bmatrix}0\\\\0\\\\0\\\\0\\\\1\\\\1\\\\-1\\\\-1\end{bmatrix},w_4=\begin{bmatrix}1\\\\-1\\\\0\\\\0\\\\0\\\\0\\\\0\\\\0\end{bmatrix},w_5=\begin{bmatrix}0\\\\0\\\\1\\\\-1\\\\0\\\\0\\\\0\\\\0\end{bmatrix},w_6=\begin{bmatrix}0\\\\0\\\\0\\\\0\\\\1\\\\-1\\\\0\\\\0\end{bmatrix},w_7=\begin{bmatrix}0\\\\0\\\\0\\\\0\\\\0\\\\0\\\\1\\\\-1\end{bmatrix}, \end{equation} w0​= ​11111111​ ​,w1​= ​1111−1−1−1−1​ ​,w2​= ​11−1−10000​ ​,w3​= ​000011−1−1​ ​,w4​= ​1−1000000​ ​,w5​= ​001−10000​ ​,w6​= ​00001−100​ ​,w7​= ​0000001−1​ ​,​​

  • 有损压缩&无损压缩
    在这里插入图片描述
  • 什么是好的基?
    好的基要满足如下条件:1. 计算逆特别快,比如傅里叶复数基和小波变换基,直接转置就可以得到逆矩阵. 2.
  • W:为新的基的列向量,C为新的基的系数
    X o l d − b i a s = W C n e w − b i a s \begin{equation} X_{old-bias}=WC_{new-bias} \end{equation} Xold−bias​=WCnew−bias​​​
  • 假设有一个确定的线性变换T,对于同一个线性变换来说,有一组基 v 1 , v 2 , ⋯   , v 8 v_1,v_2,\cdots,v_8 v1​,v2​,⋯,v8​组成矩阵A,另外有一组基 w 1 , w 2 , ⋯   , w 8 w_1,w_2,\cdots,w_8 w1​,w2​,⋯,w8​组成矩阵B,那么A与B之间的关系?
    M − 1 A M ⇒ B ∼ A \begin{equation} M^{-1}AM\Rightarrow B \sim A \end{equation} M−1AM⇒B∼A​​
    B = M − 1 A M ⇒ B ∼ A \begin{equation} B=M^{-1}AM\Rightarrow B \sim A \end{equation} B=M−1AM⇒B∼A​​