- MATLAB計算機視覺經典應用
- 丁偉雄編著
- 639字
- 2022-05-06 19:59:42
1.9.1 矩陣的擴展
在MATLAB中,可以實現矩陣的擴展的函數有4個,下面給予介紹。
(1)cat系列函數。
在MATLAB中,可以通過cat系列函數將多個小尺寸矩陣按照指定的連接方式組合成大尺寸矩陣。這些函數包括cat、horzcat和vertcat。
cat函數可以按照指定的方向將多個小尺寸矩陣連接成大尺寸矩陣,其基本格式為:

其中,dim用于指定連接方向。對于兩個矩陣的連接,cat(1,A,B)實際上相當于[A;B],近似于把兩個矩陣當作兩個列元素來連接;cat(2,A,B)相當于[A,B],近似于把兩個矩陣當作兩個行元素來連接。
horzcat(A1,A2,...)在水平方向上連接矩陣,相當于cat(A1,A2,...);vercat(A1,A2,...)在垂直方向上連接矩陣,相當于cat(1,A1,A2,...)。
不管哪個連接函數,都必須保證被操作的矩陣可以被連接,即在某個方向上尺寸一致。例如,horzcat函數要求被連接的所有矩陣都具有相同的行數,vertcat函數要求被連接的所有矩陣都具有相同的列數。
【例1-9】通過cat系列函數擴展矩陣。

(2)repmat函數。
在MATLAB中,repmat函數用于實現對矩陣塊狀的賦值。repmat函數的調用格式為:

可以將a行b列的元素A當作“單個元素”,擴展出r1,...,rN個由此“單個元素”組成的擴展矩陣。
【例1-10】利用塊狀復制函數repmat擴展矩陣。

(3)blkdiag函數。
在MATLAB中,提供blkdiag函數以對角塊生成矩陣。blkdiag函數的調用格式為:

將矩陣a、b、c、d等當作“單個元素”,安排在新矩陣的主對角位置上,其他位置用零矩陣塊填充。
【例1-11】利用blkdiag函數以對角塊生成矩陣。

(4)kron函數。
在MATLAB中,提供kron函數以實現矩陣的塊操作。kron函數的調用格式為:

把矩陣A當作一個“元素塊”,先復制擴展出size(A)規模的元素塊,然后將每個元素塊與A的相應位置的元素值相乘。
【例1-12】利用kron函數對矩陣實現塊操作。


- Microsoft Forefront UAG 2010 Administrator's Handbook
- 中文版CorelDRAW 2022基礎教程
- Celtx: Open Source Screenwriting Beginner's Guide
- 中文版Maya 2012實用教程(第2版)
- AutoCAD 2014中文版完全自學手冊
- Maya 2019三維動畫基礎案例教程
- 中文版 Photoshop CC 從入門到精通
- 圖像處理中的數學修煉(第2版)
- Elasticsearch實戰與原理解析
- Object/Oriented JavaScript
- Photoshop CS6 圖像處理項目任務教程
- 中文版Photoshop CC基礎培訓教程
- TopSolid Wood軟件設計技術與應用
- VMware Virtual SAN實戰
- 3ds Max三維動畫制作項目式教程