当前位置: 首页 > news >正文

哪些网站做农产品电子商务物流百度应用市场

哪些网站做农产品电子商务物流,百度应用市场,网站网站建设策划书,电商网站是怎么建设的文章目录 一、SVD奇异值分解简单介绍二、代码实现—SVD奇异值分解方法对图像进行压缩 一、SVD奇异值分解简单介绍 SVD(奇异值分解)是一种在信号处理、统计学、线性代数、机器学习等多个领域广泛应用的矩阵分解方法。它将任何 mn 矩阵 A 分解为三个特定矩…

文章目录

  • 一、SVD奇异值分解简单介绍
  • 二、代码实现—SVD奇异值分解方法对图像进行压缩

一、SVD奇异值分解简单介绍

SVD(奇异值分解)是一种在信号处理、统计学、线性代数、机器学习等多个领域广泛应用的矩阵分解方法。它将任何 m×n 矩阵 A 分解为三个特定矩阵的乘积:
在这里插入图片描述

  • 其中:

    • U 是一个 m×m 的正交矩阵(或 m×min(m,n),取决于是否计算完整矩阵),其列被称为左奇异向量。
    • Σ 是一个 m×n 的矩形对角矩阵(但通常以 m×min(m,n) 的形式出现,并且只在对角线上有值,其余位置为0),对角线上的元素称为奇异值,它们是非负的,并按降序排列。在实际应用中,Σ 经常以一维数组的形式返回,仅包含对角线上的奇异值。
    • V^T 是 V 的转置,V 是一个 n×n 的正交矩阵(或 n×min(m,n)),其列被称为右奇异向量。
  • SVD 的一些重要性质和用途包括

    • 信息压缩:由于奇异值是按降序排列的,因此可以通过只保留最大的几个奇异值及其对应的左右奇异向量来近似原始矩阵,从而实现数据的压缩。这种方法在图像压缩、信号处理等领域非常有用。
    • 噪声过滤:SVD 可以用于过滤噪声,特别是当噪声主要影响较小的奇异值时。通过去除或减小这些较小的奇异值,可以去除或减轻噪声的影响。
    • 主成分分析(PCA):在统计学中,PCA 可以通过 SVD 来实现。PCA 旨在找到数据中的主成分,这些成分解释了数据中的最大方差。SVD 的左奇异向量对应于 PCA 的主成分方向。
    • 求解线性方程组:SVD 可以用于求解线性方程组 Ax=b,特别是当 A 是非方阵或奇异矩阵时。
    • 推荐系统:在推荐系统中,SVD 可以用于矩阵补全,即根据部分已知的评分来预测用户对物品的评分。

二、代码实现—SVD奇异值分解方法对图像进行压缩

  • 在 python的NumPy库 中,np.linalg.svd() 函数用于计算矩阵的 SVD。

  • 它返回三个对象:左奇异向量 U、奇异值数组 σ(注意这里返回的是一维数组,而不是完整的对角矩阵 Σ)和右奇异向量的转置 V ^T(在 NumPy 中通常直接返回 V,因为 V^T 可以很容易地通过 V.T (转置)获得)。

  • 代码对一张灰度图像进行压缩

  • 代码如下:

    import numpy as np
    from PIL import Image
    import matplotlib.pyplot as plt""" 定义奇异值分解函数 并返回压缩后的图片和大小"""
    # k为压缩的维度
    # pic_array 为传入图片的array矩阵格式
    def pic_compress(k, pic_array):# 定义全局变量global u, sigma, vt, sig, new_picu, sigma, vt = np.linalg.svd(pic_array)  # 进行奇异值分解sig = np.eye(k) * sigma[: k]     # np.eye 用于生成一个单位对角矩阵# np.dot 用于矩阵的乘法运算 (计算:A=UΣV^T ——> 压缩后的图片矩阵)new_pic = np.dot(np.dot(u[:, :k], sig), vt[:k, :])  size = u.shape[0] * k + sig.shape[0] * sig.shape[1] + k * vt.shape[1]  # 计算压缩后的图片大小return new_pic, size# 读取图片
    img = Image.open('lf.jpg')
    ori_img = np.array(img)  # 将图片转换成符合 np.linalg.svd() 参数要求的array矩阵格式
    # 调用奇异值分解函数
    new_img, size = pic_compress(100, ori_img)  # 压缩的维度为100 可设定不同的值查看不同效果# 分别打印出图片压缩前后的大小
    print("original size:" + str(ori_img.shape[0] * ori_img.shape[1]))
    print("compress size:" + str(size))# 创建画布,在同一张画布中显示压缩前后的两张图片
    fig, ax = plt.subplots(1, 2)
    ax[0].imshow(ori_img, cmap='gray')
    ax[0].set_title("before compress")
    ax[1].imshow(new_img, cmap='gray')
    ax[1].set_title("after compress")
    plt.show()
    
  • 结果如下:
    在这里插入图片描述
    在这里插入图片描述

  • 由结果可以看出图片的大小大约被压缩至原大小的60%,但是图片所呈现出来的效果没有太大的变化

http://www.yayakq.cn/news/371264/

相关文章:

  • 网站开发和合同南昌网站建设基本流程
  • 网站建站公司服务好吗免费saascrm
  • 那些网站是asp做的幼教机构网站开发设计论文
  • 做门户网站用什么模板好西安网页开发
  • 网站建设与管理拼音网页制作ppt模板
  • 威海住房和城乡建设局官方网站windows2012做网站
  • 怎么用自己的主机做网站服务器吗禁止ip直接打开网站
  • 垦利网站制作用python做网站后台
  • 顺义深圳网站建设公司网站建设培训会上的讲话
  • 哪个网站的ps元素好佛山南海建设局网站
  • 朝阳开发公司黄山seo排名优化技术
  • 建站视频厦门建设管理局网站
  • 北京网络建站模板网站团队建设情况
  • 黑龙江省建设会计协会网站千万不要报电子商务
  • 站长工具百度百科湖南建设厅网站首页
  • 深圳网站设计定制开发wordpress培训插件
  • 南宁手机做网站设计怎样在百度上推广
  • 个旧做网站哪家公司好微信下载安装2024最新版
  • 建设专业网站排名网站后台文章栏目
  • 买域名可以自己做网站吗关键词优化是怎么做的
  • iis 新建网站 要登录网站制作成app
  • 中国空间站完整图免费企业网站建设哪个
  • 电子商务网站开发课程简介网页制作一般多少钱
  • 网站需要写哪些内容上海松江网站设计公司
  • 做网站用什么电脑好检测软件定制
  • 成都建站漳浦网站设计
  • 需要建设网站的安装wordpress it works
  • 防腐木用什么名字做网站大气红色网站
  • 哪些网站做品牌折扣的江西南昌小程序开发
  • 产品素材网站网页设计图片居中怎么设置