求教,matlab这段代码什么意思?
clc;clear
P=imread(['C:\Users\Administrator\Desktop\新建文件夹\1.jpg']);
figure(1),imshow(P)
[x,y]=ginput(2);%使用鼠标输入数据,[x,y]=ginput(n) 选择n个点后,将x,y坐标分别返回到列向量x,y中。
y1=y(1,1);y2=y(2,1);
x1=x(1,1);x2=x(2,1);%返回了4个值
for i=1:4
P=imread(['C:\Users\Administrator\Desktop\新建文件夹\',num2str(i),'.jpg']);% num2str(i) 把数值转换成字符串
P1=P(:,:,1);
I1(:,:,1)=P1(y1:y2,x1:x2);%剪切图像坐标格式(y1:y2,x1:x2)
P2=P(:,:,2);
I1(:,:,2)=P2(y1:y2,x1:x2);
P3=P(:,:,3);
I1(:,:,3)=P3(y1:y2,x1:x2);
I1=uint8(I1);
figure(2),imshow(I1)
imwrite(I1,['C:\Users\Administrator\Desktop\新建文件夹 (2)\',num2str(i),'.jpg'])%I1是要保存的图像数据
end
下面这部分看不懂
P1=P(:,:,1);
I1(:,:,1)=P1(y1:y2,x1:x2);
P2=P(:,:,2);
I1(:,:,2)=P2(y1:y2,x1:x2);
P3=P(:,:,3);
I1(:,:,3)=P3(y1:y2,x1:x2);
答案:P1=P(:,:,1); %把P矩阵(3维)中第3维第一个元素中,包括第一二维所以元素赋值给P1,P1是2维矩阵。
I1(:,:,1)=P1(y1:y2,x1:x2); %把2维矩阵P2里的第y1到y2行、第x1到x2列的数据赋值给l1(3维)中第3维一个元素的位置。
后面4行类似
上一个:求matlab 人工鱼群源代码和人工鱼群算法优化BP神经网络
下一个:matlab gui 高通滤波代码