1. 程式人生 > >高光譜影象基於MATLAB的PCA降維

高光譜影象基於MATLAB的PCA降維

工具:matlab,本人使用的是2016a
使用資料集用公開的Salinas資料集為例,Salinas資料集為512*217*204,即它有204個波段,我們要把它從204維降至3維。

matlab中內含了進行PCA降維的函式,但這個函式輸進去的資料要是二維的,所以我們先用resharp函式把原矩陣處理成111104*204的矩陣M
再使用自帶的降維函式:
[pc,score,latent,tsquare] = pca(M)

latent用來計算降維後取多少維度能夠達到自己需要的精度,
通過下面的程式碼執行結果可以得到取pc中對應每一維度對原始資料的精度:
在命令列輸入
cumsum(latent)./sum(latent)
部分截如下


我們可以看到只去取第一維的話和原始資料的準確度只有74.4%,我們取到第三維,此時已有99%的精度,一般來說取到90%以上即可。

再取前三維,把矩陣還原為三維。此時便已完成了對高光譜影象的降維。

完整程式碼如下:
M=reshape(d,111104,204);
[pc,score,latent,tsquare] = pca(M);
feature_after_PCA=score(:,1:3);
RES=reshape(feature_after_PCA,512,217,3);

匯入進來的矩陣命名為d

把它轉為圖片看看效果:
imwrite(RES(:,:,1),’1.jpg’);
這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

相關推薦

光譜影象基於MATLAB的PCA

工具:matlab,本人使用的是2016a 使用資料集用公開的Salinas資料集為例,Salinas資料集為512*217*204,即它有204個波段,我們要把它從204維降至3維。 matlab中內含了進行PCA降維的函式,但這個函式輸進去的資料要是二維

光譜影象輸入卷積神經網路的維度問題

現在處理高光譜影像大多使用3D-CNN,對於高斯光譜資料而言,輸入網路模型的shape是(x,y,z)這種形式,x,y是長寬尺寸,而z是光譜維度,IN資料集一般是200,UP資料集一般是103。keras中Conv2D的輸入張量尺寸:(samples, rows, cols,

光譜影象處理之目標檢測技術(CEM演算法)(影象處理)

高光譜影象處理之目標檢測技術一、高光譜影象處理之目標檢測1、高光譜影象目標檢測的發展趨勢和研究現狀:   20世紀80年代末,美國的一些研究機構開始利用高光譜影象資料進行目標檢測方面的研究。自上世紀九十

光譜影象分類(三)分類流程

如何利用稀疏表示進行高光譜影象分類呢? 前面我們已經瞭解了高光譜影象分類的一些基本概念,那這篇文章當中將講解高光譜影象分類具體的流程是怎麼樣的。 以下是高光譜影象分類的具體詳細步驟: 1.匯入in

基於深度卷積神經網路的光譜遙感影象分類---PCA+2D-CNN(偽空譜特徵)

論文地址基於深度卷積神經網路的高光譜遙感影象分類西華大學學報同時利用高光譜影象的光譜資訊和空間資訊的深度卷積神經網路分類模型。基於深度學習到的深度特徵,用邏輯迴歸分類器進行分類訓練。高光譜影象面臨的挑戰

光譜遙感影象空譜聯合分類方法研究--基於光譜,空間,空譜的DBN+LR

論文地址高光譜遙感影象空譜聯合分類方法研究遼寧工程技術大學基於DBN的特徵提取方法和影象分類架構用於高光譜資料分析,將譜域-空域特徵提取和分類器相結合提高了分類精度。1.引言針對高光譜資料量大,特徵維數

CNN autoencoder 先再使用kmeans進行影象聚類 是不是也可以以後進行iforest處理?

import keras from keras.datasets import mnist from keras.models import Sequential from keras.layers import Dense, Activation, Flatten from keras.layers

基於TensorFlow理解三大技術:PCA、t-SNE 和自編碼器

余弦相似度 應對 新的 問題 技術 編碼 http 壓縮 方法 在我們開始之前,先看一個問題:如果你要為以下案例選擇一種降維技術,你會怎麽選? 1. 你的系統可以使用余弦相似度測量距離,但你需要將其可視化,以便不懂技術的董事會成員也能理解,這些人可能甚至從來沒聽說過余弦相

推薦系統——基於的近鄰協同

降維方法能夠同時提高近鄰方法的質量和效率。尤其是在稀疏矩陣中,即當兩個使用者共同評價過的物品很少,也能夠計算其低維潛在向量之間的距離。由於降維能夠根據潛在因子提供稠密的低維表示。因此,這種模型被稱為潛在因子模型。包括: (1)建立資料的降維表示可以基於行的潛在

機器學習實戰(Machine Learning in Action)學習筆記————10.奇異值分解(SVD)原理、基於協同過濾的推薦引擎、資料

關鍵字:SVD、奇異值分解、降維、基於協同過濾的推薦引擎作者:米倉山下時間:2018-11-3機器學習實戰(Machine Learning in Action,@author: Peter Harrington)原始碼下載地址:https://www.manning.com/books/machine-le

機器學習實戰(Machine Learning in Action)學習筆記————10.奇異值分解(SVD)原理、基於協同過濾的推薦引擎、數據

www 實現 由於 就是 計算 學習筆記 圖片 blob 標示 關鍵字:SVD、奇異值分解、降維、基於協同過濾的推薦引擎作者:米倉山下時間:2018-11-3機器學習實戰(Machine Learning in Action,@author: Peter Harringto

[python] Kmeans文字聚類演算法+PAC+Matplotlib顯示聚類影象

0 前言 本文主要講述以下幾點:        1.通過scikit-learn計算文字內容的tfidf並構造N*M矩陣(N個文件 M個特徵詞);        2.呼叫scikit-learn中的K-means進行文字聚類;        3.使用PAC進行降維處理,每

Python 影象處理: 生成二斯分佈蒙版

在影象處理以及影象特效中,經常會用到一種成高斯分佈的蒙版,蒙版可以用來做影象融合,將不同內容的兩張影象結合蒙版,可以營造不同的藝術效果。 I=M∗F+(1−M)∗B 這裡I 表示合成後的影象,F 表示前景圖,B 表示背景圖,M 表示蒙版,或者直接用

光譜遙感影象處理(14)-----ENVI使用教程之監督分類與非監督分類

     監督分類:又稱訓練分類法,用被確認類別的樣本像元去識別其他未知類別像元的過程。它是在分類之前通過目視判讀和野外調查,對遙感影象上某些樣區中影像地物的類別屬性有了先驗知識,對每一種類別選取一定

文章解析整理:《基於TensorFlow理解三大技術:Pca,t-SNE 和自編碼器》

本文僅是博主自己學習用來加深印象和留存整理,對該內容有興趣請去閱讀原文 首先降維很重要 先從PCA開始 PCA,主成份分析,有很多種實現方案,這裡主要是其中兩種:Eigen分解和奇異值分解(SVD) 這兩種方法是靠自己的方式找到一種操作並分解x的方法

基於深度神經網路的光譜影響分類方法研究---MNF+自動編碼器+Softmax (準確率比較低,17年的論文)

論文地址基於深度神經網路的高光譜影響分類方法研究裝備學院學報遙感影像分類的問題:預處理複雜,高維特徵提取困難,分類不夠精確等缺陷首先採用最大噪聲分數來降低特徵空間維度,然後將自動編碼器與softmax多

paviaU光譜資料集與分類

基於高光譜資料集PaviaU的資料降維與分類 一、專案問題來源 高光譜影象分類是高光譜遙感對地觀測技術的一項重要內容,在軍事及民用領域都有著重要的應用。然而,高光譜影象的高維特性、波段間高度相關性、光譜混合等使高光譜影象分類面臨巨大挑戰。一方面高光譜影象相鄰波段之間相關性

(PCA、核PCA、SVD、斯隨機對映 和 NMF)

以下內容來自《Python資料科學指南》降維方法比較:PCA:計算代價高昂,特徵向量得存線上性相關。核PCA: 特徵向量是非線性相關也可以。SVD:比PCA更能解釋資料,因為是直接作用於原資料集,不會像PCA一樣,將相關變數轉換為一系列不相干的變數。另外,PCA是單模因子分析

光譜遙感影象相關知識梳理大全

前言 ​ 本資料整理了高光譜遙感影象概念定義、分析處理與分類識別的基本知識。第一部分介紹高光譜影象的一般性原理和知識,第二部分介紹了高光譜影象的噪聲問題;第三部分介紹高光譜影象資料冗餘問題以及資料降維解決冗餘的方法;第四部分介紹高光譜影象的混合像元問題,對

光譜遙感影象處理(12)----ENVI使用教程之波段比與波段運算

一、波段比          波段比又稱比值增強(ratio enhancement)。是計算同一幅影象不同波段間相應像元的像元值之比的影象增強方法。          比值增強的主要作用有:可增強地