Matlab笔记
一、从真彩色(RGB)图像中分离出各个通道
1.1 RGB三原色图像
1 clc; 2 clear; 3 img=imread('RGB三原色.jpg');%读取上述“1.1 RGB三原色图像” 4 R=img(:,:,1); 5 G=img(:,:,2); 6 B=img(:,:,3); 7 figure(1); 8 subplot(3,1,1);imshow(R);title('R'); 9 subplot(3,1,2);imshow(G);title('G'); 10 subplot(3,1,3);imshow(B);title('B'); 11 %可得出结论一副真彩色图片在matlab中,各通道的获取可以分别通过抽取第三维的第一个矩阵、第二矩阵和第三矩阵来获取
运行结果如下:
二、mesh使用注意事项
matlab使用mesh(X,Y,Z)来绘制三维曲面图的时候,如果X,Y是两个向量,Z为矩阵的话,那么X和Y应该分别为矩阵Z的列和行(这一点比较容易搞错)。
三、“变量似乎会随着迭代次数而改变,请预分配内存以获得更高的运算速度”
当matlab中出现这条提示的时候,说明有一个变量的大小(在内存中所占的存储空间)会随着程序的运行而改变,会拖慢程序的运行速度。如果已知相关变量的大小,可以通过zeros函数为这个变量预先分配好存储空间,然后随着程序的运行1改变其中的数值。
注:上述程序均为matlab编写。