%% 在三維空間中對給定兩個點集,利用svd方法實現從乙個點集到另乙個點集的剛體變換
clear;
clc;
d=3; %給定空間維數
n=10; %給定點對數
p=10*rand(d,n); %點集p
q=2*rand(d,n); %點集q
%%-----生成點對權重-----
w=rand(10,1);
w=w/sum(w); %權重
%%---------------------
%%-----生成點集p和q的中心點-----
s_wp=zeros(d,1);
s_wq=zeros(d,1);
for i=1:n
s_wp=s_wp+w(i)*p(:,i);
s_wq=s_wq+w(i)*q(:,i);
endp_hat=s_wp/sum(w); %點集p的中心點p_hat
q_hat=s_wq/sum(w); %點集q的中心點q_hat
%%---------------------
x=p-p_hat; %點集p去中心化
y=q-q_hat; %點集q去中心化
w=diag(w); %生成權重對角矩陣
s=x*w*y'; %獲得要進行奇異值分解的矩陣
[u,sigma,v]=svd(s); %奇異值分解
r=v*u'; %要求的旋轉矩陣
t=q_hat-r*p_hat; %要求的轉移矩陣
奇異值分解
奇異值分解 singular value decomposition 是線性代數中一種重要的 矩陣分解,是矩陣分析中正規矩陣酉對角化的推廣。在訊號處理 統計學等領域有重要應用。1基本介紹 2理論描述 3幾何意義 4範數 5應用 求偽逆 平行奇異值模型 矩陣近似值 奇異值分解在某些方面與 對稱矩陣或 ...
奇異值分解
從幾何 的角度上來看奇異值分解 上圖表明任意的矩陣 a 是可以分解成三個矩陣相乘的形式。v表示了原始域的標準正交基,u表示經過a 變換後的co domain的標準正交基,表示了v 中的向量與u中相對應向量之間的關係。我們仔細觀察上圖發現,線性變換a可以分解為旋轉 縮放 旋轉這三種基本線性變換。接下來...
奇異值分解
本文 知乎 我們先舉乙個例子,假設現在我們拿到這樣一組資料,裡面有兩個屬性,既有以 千公尺 每小時 度量的最大速度特徵,也有 英里 小時 的最大速度特徵,顯然我們一眼就看出這兩個特徵有乙個多餘。怎麼直觀的判斷資料是否冗餘?上圖從左往右,我們可以發現資料之間的關聯性越來越強,也就是說兩組資料越來越 相...