奇异值分解(SVD):从理论到图像压缩实战
创作时间:
作者:
@小白创作中心
奇异值分解(SVD):从理论到图像压缩实战
引用
51CTO
1.
https://blog.51cto.com/deephub/10784375
奇异值分解(SVD)是一种强大的线性代数技术,广泛应用于数据科学领域,特别是在图像压缩方面。本文将从数学原理出发,深入浅出地讲解SVD的工作机制,并通过Python代码演示如何使用SVD进行图像压缩。
奇异值分解的基本概念
奇异值分解(Singular Value Decomposition,简称SVD)可以将任意形状的矩阵分解成三个部分的乘积:U、S、V。原矩阵A可以表示为:
其中,A矩阵中的奇异值就是\Sigma矩阵中的对角线元素,它们是矩阵A的特征值的平方根,表示A矩阵在各个主方向上的拉伸程度。U矩阵是AAT的特征向量构成的正交矩阵,表示数据集在降维后的新的坐标系中的投影。V矩阵是ATA的特征向量构成的正交矩阵,表示每个数据点在降维后的新坐标系中的坐标。
数学原理
假设我们有一个矩阵A:
要计算 SVD,首先需要通过找到 AA^{T} 的特征值来计算奇异值。具体步骤如下:
- 计算矩阵 AA^{T} 的特征值和特征向量
- 计算矩阵 A^{T}A 的特征值和特征向量
- 将特征值的平方根作为奇异值
- 构建 U、S、V 三个矩阵
以一个具体的例子来说明:
通过计算得到:
最终得到SVD分解:
图像压缩实战
接下来,我们将使用Python代码演示如何使用SVD进行图像压缩。实验所用的图像如下:
导入库和读取图片
import requests
import cv2
import numpy as np
import matplotlib.pyplot as plt
img = cv2.imread('flower.bmp')
gray_image = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
gray_image = gray_image.astype(np.float64)
执行奇异值分解
U, s, V = np.linalg.svd(gray_image, full_matrices=False)
可视化奇异值
top_10_singular_values = s[:10]
plt.plot(range(1, len(s) + 1), s, 'r-')
plt.xlabel("Rankings")
plt.ylabel("Singular Values")
plt.title("Singular Values versus their Rankings")
plt.savefig("Singular_values_vs_rankings.png")
plt.show()
从图中可以看出,图像的大部分信息都集中在前几个奇异值中:
重建和显示图像
k_values = [10, 50, 100]
plt.figure(figsize=(12,6))
for i in range(len(k_values)):
low_rank = U[:, :k_values[i]] @ np.diag(s[:k_values[i]]) @ V[:k_values[i], :]
plt.subplot(2,3,i+1),
plt.imshow(low_rank, cmap='gray'),
plt.title(f"For K value = {k_values[i]}")
plt.savefig("Reconstruction_with_k_values.png")
从重建的图像中可以看出,随着K值的增加,图像的清晰度逐渐提高:
总结
通过本文,我们了解了奇异值分解(SVD)的基本原理及其在图像压缩中的应用。SVD不仅是一种强大的数学工具,更是一个实用的数据处理方法,广泛应用于数据降维、图像压缩等领域。希望本文能帮助读者更好地理解这一重要概念。
热门推荐
个股分析之中航沈飞:估值几何?投资价值几何?
一颗水晶珠子的价格:从几元到几百元不等
“幼态脸”风靡:审美新风向下的理性审视
两个人之间有孽缘的表现 走出孽缘的步骤要点
于谦之死,文官集团从此沉沦
广州又一免费艺术地标!下周开放,包好看的
你见过清朝的火车票吗?火车票的百年故事:从清朝到无纸化时代
从定义本身去寻找关键词
背部增肌必练动作——杠铃划船,3个细节教你有效刺激背部肌肉
摄影基础:什么是快门速度,在不同场景中怎么选择快门速度?
三款计算服务器配置→如何选择科学计算服务器?
短视频占据了太多时间!为什么会越刷越累越空虚?
常喝速溶咖啡容易患胃病?专家点名3类人少喝
常喝速溶咖啡容易患胃病?专家点名3类人少喝
教你从版型、面料、做工挑选优质又实惠的牛仔裤
说话结巴怎么办?专业医生详解口吃成因与治疗方案
乌云在大脑漫步:偏头痛视觉先兆的深度解读
甘肃天水秦安农村结婚彩礼现象调查:原因与影响分析
农村土地确权流程详解:从申请到证书颁发的完整指南
迈向大型推理模型:大型语言模型增强推理综述
尚织汉服学塾:古代“天人合一”哲学理念与帝王冕服色彩演变的联系
和平精英VS绝地求生,这两款吃鸡游戏,你真的玩对了吗?
股票投资亏损的原因有哪些?如何降低股票投资的风险?
探究星月菩提中的玉石料:价值评估与市场行情
韩国近年育儿友好政策
中国画艺术中的平衡与谐美:构图技巧的探索与创新
海葵——锚居海底的贪婪捕食者
閉上眼開始焦慮失眠?四種營養素幫助你改善睡眠問題!
为什么古代日本叫倭国?曹魏与倭国有什么联系?
FreeRTOS中的低功耗模式:Tickless IDLE Mode原理与实现