簡體   English   中英

3D矩陣與旋轉矩陣的矩陣乘法

[英]Matrix multiplication of 3D matrix with rotation matrix

我有一個N x M x 3矩陣,代表N*M方向向量。 我想將每個方向向量與3 x 3旋轉矩陣相乘,以在新的坐標系中獲得向量。 如何在不使用for循環的情況下在MATLAB中執行此操作?

您可以利用reshapeN x M x 3矩陣轉換為(N*M) x 3 ,然后乘以旋轉矩陣R ,然后將結果reshapeN x M x 3

%// Create some example data and a rotation matrix
data = rand(5,4,3);
R = rand(3);

%// Apply rotation to 3D data matrix.
newdata = reshape(reshape(data, [], 3) * R, size(data));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM