婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > NumPy實現(xiàn)多維數(shù)組中的線性代數(shù)

NumPy實現(xiàn)多維數(shù)組中的線性代數(shù)

熱門標簽:南昌地圖標注 百應電話機器人總部 宿州電話機器人哪家好 無錫智能外呼系統(tǒng)好用嗎 成都呼叫中心外呼系統(tǒng)哪家強 旅游廁所地圖標注怎么弄 電梯新時達系統(tǒng)外呼顯示e 西青語音電銷機器人哪家好 地圖標注與注銷

簡介

本文將會以圖表的形式為大家講解怎么在NumPy中進行多維數(shù)據(jù)的線性代數(shù)運算。
多維數(shù)據(jù)的線性代數(shù)通常被用在圖像處理的圖形變換中,本文將會使用一個圖像的例子進行說明。

圖形加載和說明

熟悉顏色的朋友應該都知道,一個顏色可以用R,G,B來表示,如果更高級一點,那么還有一個A表示透明度。通常我們用一個四個屬性的數(shù)組來表示。

對于一個二維的圖像來說,其分辨率可以看做是一個X*Y的矩陣,矩陣中的每個點的顏色都可以用(R,G,B)來表示。

有了上面的知識,我們就可以對圖像的顏色進行分解了。

首先需要加載一個圖像,我們使用imageio.imread方法來加載一個本地圖像,如下所示:

import imageio
img=imageio.imread('img.png')
print(type(img))

上面的代碼從本地讀取圖片到img對象中,使用type可以查看img的類型,從運行結果,我們可以看到img的類型是一個數(shù)組。

class 'imageio.core.util.Array'

通過img.shape可以得到img是一個(80, 170, 4)的三維數(shù)組,也就是說這個圖像的分辨率是80*170,每個像素是一個(R,B,G,A)的數(shù)組。

最后將圖像畫出來如下所示:

import matplotlib.pyplot as plt
plt.imshow(img)

圖形的灰度

對于三維數(shù)組來說,我們可以分別得到三種顏色的數(shù)組如下所示:

red_array = img_array[:, :, 0]
green_array = img_array[:, :, 1]
blue_array = img_array[:, :, 2]

有了三個顏色之后我們可以使用下面的公式對其進行灰度變換:

Y=0.2126R + 0.7152G + 0.0722B

上圖中Y表示的是灰度。
怎么使用矩陣的乘法呢?使用 @ 就可以了:

 img_gray = img_array @ [0.2126, 0.7152, 0.0722]

現(xiàn)在img是一個80 * 170的矩陣。
現(xiàn)在使用cmap="gray"作圖:

plt.imshow(img_gray, cmap="gray")

可以得到下面的灰度圖像:

灰度圖像的壓縮

灰度圖像是對圖像的顏色進行變換,如果要對圖像進行壓縮該怎么處理呢?

矩陣運算中有一個概念叫做奇異值和特征值。

設A為n階矩陣,若存在常數(shù)λ及n維非零向量x,使得Ax=λx,則稱λ是矩陣A的特征值,x是A屬于特征值λ的特征向量。

一個矩陣的一組特征向量是一組正交向量。

即特征向量被施以線性變換 A 只會使向量伸長或縮短而其方向不被改變。

特征分解(Eigendecomposition),又稱譜分解(Spectral decomposition)是將矩陣分解為由其特征值和特征向量表示的矩陣之積的方法。

假如A是m * n階矩陣,q=min(m,n),A*A的q個非負特征值的算術平方根叫作A的奇異值。

特征值分解可以方便的提取矩陣的特征,但是前提是這個矩陣是一個方陣。如果是非方陣的情況下,就需要用到奇異值分解了。先看下奇異值分解的定義:

A=UΣVT

其中A是目標要分解的m * n的矩陣,U是一個 m * m的方陣,Σ 是一個m * n 的矩陣,其非對角線上的元素都是0。VTV^TVT是V的轉置,也是一個n * n的矩陣。

奇異值跟特征值類似,在矩陣Σ中也是從大到小排列,而且奇異值的減少特別的快,在很多情況下,前10%甚至1%的奇異值的和就占了全部的奇異值之和的99%以上了。也就是說,我們也可以用前r大的奇異值來近似描述矩陣。r是一個遠小于m、n的數(shù),這樣就可以進行壓縮矩陣。

通過奇異值分解,我們可以通過更加少量的數(shù)據(jù)來近似替代原矩陣。

要想使用奇異值分解svd可以直接調用linalg.svd 如下所示:

U, s, Vt = linalg.svd(img_gray)

其中U是一個m * m矩陣,Vt是一個n * n矩陣。

在上述的圖像中,U是一個(80, 80)的矩陣,而Vt是一個(170, 170) 的矩陣。而s是一個80的數(shù)組,s包含了img中的奇異值。

如果將s用圖像來表示,我們可以看到大部分的奇異值都集中在前的部分:

這也就意味著,我們可以取s中前面的部分值來進行圖像的重構。
使用s對圖像進行重構,需要將s還原成80 * 170 的矩陣:

# 重建
import numpy as np
Sigma = np.zeros((80, 170))
for i in range(80):
    Sigma[i, i] = s[i]

使用 U @ Sigma @ Vt 即可重建原來的矩陣,可以通過計算linalg.norm來比較一下原矩陣和重建的矩陣之間的差異。

linalg.norm(img_gray - U @ Sigma @ Vt)

或者使用np.allclose來比較兩個矩陣的不同:

np.allclose(img_gray, U @ Sigma @ Vt)

或者只取s數(shù)組的前10個元素,進行重新繪圖,比較一下和原圖的區(qū)別:

k = 10
approx = U @ Sigma[:, :k] @ Vt[:k, :]
plt.imshow(approx, cmap="gray")

可以看到,差異并不是很大:

原始圖像的壓縮

上一節(jié)我們講到了如何進行灰度圖像的壓縮,那么如何對原始圖像進行壓縮呢?

同樣可以使用linalg.svd對矩陣進行分解。

但是在使用前需要進行一些處理,因為原始圖像的img_array 是一個(80, 170, 3)的矩陣--這里我們將透明度去掉了,只保留了R,B,G三個屬性。

在進行轉換之前,我們需要把不需要變換的軸放到最前面,也就是說將index=2,換到index=0的位置,然后進行svd操作:

img_array_transposed = np.transpose(img_array, (2, 0, 1))
print(img_array_transposed.shape)

U, s, Vt = linalg.svd(img_array_transposed)
print(U.shape, s.shape, Vt.shape)

同樣的,現(xiàn)在s是一個(3, 80)的矩陣,還是少了一維,如果重建圖像,需要將其進行填充和處理,最后將重建的圖像輸出:

Sigma = np.zeros((3, 80, 170))

for j in range(3):
    np.fill_diagonal(Sigma[j, :, :], s[j, :])

reconstructed = U @ Sigma @ Vt
print(reconstructed.shape)

plt.imshow(np.transpose(reconstructed, (1, 2, 0)))

當然,也可以選擇前面的K個特征值對圖像進行壓縮:

approx_img = U @ Sigma[..., :k] @ Vt[..., :k, :]
print(approx_img.shape)
plt.imshow(np.transpose(approx_img, (1, 2, 0)))

重新構建的圖像如下:

對比可以發(fā)現(xiàn),雖然損失了部分精度,但是圖像還是可以分辨的。

總結

圖像的變化會涉及到很多線性運算,大家可以以此文為例,仔細研究。

到此這篇關于NumPy實現(xiàn)多維數(shù)組中的線性代數(shù)的文章就介紹到這了,更多相關NumPy 多維數(shù)組線性代數(shù)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Numpy實現(xiàn)矩陣運算及線性代數(shù)應用
  • Python numpy線性代數(shù)用法實例解析

標簽:西安 渭南 許昌 辛集 贛州 七臺河 濰坊 雅安

巨人網絡通訊聲明:本文標題《NumPy實現(xiàn)多維數(shù)組中的線性代數(shù)》,本文關鍵詞  NumPy,實現(xiàn),多維,數(shù)組,中的,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《NumPy實現(xiàn)多維數(shù)組中的線性代數(shù)》相關的同類信息!
  • 本頁收集關于NumPy實現(xiàn)多維數(shù)組中的線性代數(shù)的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产精品中文字幕一区二区三区| 色综合久久久久久久| 国产精品伊人色| 91视视频在线直接观看在线看网页在线看| 欧美日韩综合在线免费观看| 国产亚洲欧美一级| 青青草国产成人av片免费| 99热这里都是精品| 亚洲精品一区二区三区四区高清 | 日韩欧美在线一区二区三区| 亚洲精品欧美在线| 成人夜色视频网站在线观看| 日韩三级高清在线| 亚洲超丰满肉感bbw| 91在线观看美女| 久久精子c满五个校花| 日韩电影在线观看电影| 色综合天天综合狠狠| 欧美国产精品久久| 国产做a爰片久久毛片| 在线综合+亚洲+欧美中文字幕| 日韩美女精品在线| 国产成人免费视频网站 | 日韩一区国产二区欧美三区| 亚洲精品国产a| 不卡的av在线播放| 中文字幕乱码日本亚洲一区二区| 国产一区二区三区精品欧美日韩一区二区三区 | 国产亚洲精品资源在线26u| 日本成人在线一区| 3d动漫精品啪啪1区2区免费 | 亚洲小说春色综合另类电影| 色婷婷综合激情| 亚洲九九爱视频| 欧美色综合影院| 香蕉久久一区二区不卡无毒影院 | 日韩中文字幕麻豆| 91麻豆精品国产自产在线| 丝袜脚交一区二区| 欧美一区二区国产| 黄色日韩三级电影| 国产无人区一区二区三区| 国产麻豆精品久久一二三| 久久综合九色综合97_久久久| 国内成人自拍视频| 国产精品超碰97尤物18| 91美女精品福利| 亚洲电影你懂得| 欧美一区三区四区| 国产成人在线视频网站| 《视频一区视频二区| 欧美日韩在线不卡| 久久精品国产99国产精品| 久久综合色综合88| av成人动漫在线观看| 亚洲444eee在线观看| 日韩三级av在线播放| 成人h版在线观看| 亚洲国产精品自拍| 精品国内片67194| 99这里只有精品| 日韩av在线免费观看不卡| 国产调教视频一区| 欧美性生活影院| 激情六月婷婷久久| 亚洲欧美经典视频| 精品va天堂亚洲国产| 一本色道久久综合亚洲aⅴ蜜桃| 天天色天天操综合| 国产精品视频一二| 欧美二区三区91| 成人综合日日夜夜| 免费观看成人av| 亚洲欧美偷拍三级| 精品国产1区二区| 欧美在线不卡视频| 成人免费的视频| 蜜芽一区二区三区| 亚洲精品日韩综合观看成人91| 精品国产网站在线观看| 91在线porny国产在线看| 国产在线一区二区| 亚洲电影一区二区| 国产精品国产a| 久久无码av三级| 欧美丰满高潮xxxx喷水动漫| 99久久99久久免费精品蜜臀| 精油按摩中文字幕久久| 偷拍日韩校园综合在线| 国产精品久线在线观看| 337p日本欧洲亚洲大胆色噜噜| 欧美日韩精品专区| 91蝌蚪porny| 国产99一区视频免费| 久久国产精品色| 日本不卡视频在线| 亚洲综合久久久久| 一区二区三区在线免费视频| 中文字幕av不卡| 国产欧美综合在线| xvideos.蜜桃一区二区| 日韩欧美在线网站| 欧美一区二区三区白人| 欧美日韩成人一区| 欧美人狂配大交3d怪物一区| 欧美三级乱人伦电影| 日本伦理一区二区| 91福利资源站| 在线观看日韩av先锋影音电影院| 91女厕偷拍女厕偷拍高清| 成人性生交大合| 成人精品高清在线| 成人黄色在线看| 91亚洲国产成人精品一区二区三| 成人亚洲一区二区一| 成人高清伦理免费影院在线观看| 国产精品一二三在| 成人h动漫精品一区二区| 97se亚洲国产综合自在线观| www.欧美日韩| 91高清视频免费看| 欧美亚洲动漫制服丝袜| 欧美日韩在线观看一区二区| 欧美日本在线视频| 91精品国产一区二区三区蜜臀 | 国内精品不卡在线| 丁香激情综合国产| 99久久久久久| 在线视频欧美精品| 日韩午夜在线观看视频| 久久综合久色欧美综合狠狠| 中文一区二区完整视频在线观看| 中文字幕一区二区三区蜜月| 亚洲国产一区二区视频| 亚洲最新视频在线播放| 美脚の诱脚舐め脚责91 | 久久精品夜夜夜夜久久| 久久久精品蜜桃| 亚洲男人的天堂在线观看| 午夜国产精品一区| 国产乱码精品一区二区三| av资源站一区| 欧美日韩黄色影视| 欧美韩国一区二区| 亚洲r级在线视频| 国产精品白丝av| 91黄色在线观看| 欧美草草影院在线视频| 中文字幕精品—区二区四季| 亚洲国产视频在线| 国产suv精品一区二区三区| 在线免费观看日韩欧美| 久久女同精品一区二区| 亚洲成人动漫av| 成人国产精品免费网站| 日韩一区二区三区四区五区六区 | 欧美午夜一区二区三区免费大片| 日韩精品中文字幕在线一区| 伊人开心综合网| 国产精选一区二区三区| 欧美精品日韩一本| 中文字幕在线观看一区| 久久精工是国产品牌吗| 欧美色欧美亚洲另类二区| 欧美tickling网站挠脚心| 亚洲午夜电影在线观看| 波多野结衣91| 欧美激情在线免费观看| 久久精品久久综合| 欧美性一级生活| 国产精品全国免费观看高清| 韩国视频一区二区| 日韩一区二区三免费高清| 一区二区三区欧美在线观看| 成人免费视频caoporn| 精品欧美一区二区三区精品久久| 亚洲一区在线观看视频| 丰满亚洲少妇av| 国产视频一区在线播放| 午夜精品久久一牛影视| 欧美日韩成人高清| 亚洲午夜国产一区99re久久| 91亚洲男人天堂| 中文字幕永久在线不卡| 不卡免费追剧大全电视剧网站| www久久精品| 国内偷窥港台综合视频在线播放| 欧美精选一区二区| 亚洲国产精品一区二区www在线| 一本大道av一区二区在线播放| 亚洲欧洲日本在线| 91小宝寻花一区二区三区| 中文字幕一区二| av不卡一区二区三区| 亚洲欧洲精品一区二区三区| av中文字幕在线不卡| 亚洲免费观看高清完整版在线| 9人人澡人人爽人人精品| 18成人在线观看| 欧美性淫爽ww久久久久无|