clear all; clc; % 清空
filepath=['C:\Users\student\Desktop\p123']; %讀圖
c=imread(filepath,'jpg');%副檔名
br=rgb2gray(c); %轉成灰階圖
for(i=1:1:107)%長107
for(j=1:1:160)%寬160
if (c(i,j)>128) %如果大於128 轉成256 白
br(i,j)=256;
else
br(i,j)=1; %小於則黑
end
end
end
figure(1),imshow(br);%印出
2.程式碼(負片):
clear all; clc;
filepath=['C:\Users\student\Desktop\p123'];
c=imread(filepath,'jpg');
br=rgb2gray(c);
for(i=1:1:107)
for(j=1:1:160)
br(i,j)=257 - c(i,j); %用257減
end
end
figure(1),imshow(c);
figure(2),imshow(br);
3.程式碼(旋轉):
%旋轉180度
clear all; clc;
filepath=['C:\Users\student\Desktop\p123']; %讀圖
c=imread(filepath,'jpg');%°讀副檔名
for(i=1:1:107)
for(j=1:1:160)
br(i,j)=c(108-i,161-j);% EX:(1.1)位置值轉給(108-1,161-1)位置
%以此類推
end
end
figure(1),imshow(c);
figure(2),imshow(br);
將您的程式稍作修改會跑出
回覆刪除Error using rgb2gray>parse_inputs (line 88)
RGB must be a m x n x 3 array.
Error in rgb2gray (line 35)
X = parse_inputs(varargin{:});
Error in erzhi_fupeng (line 3)
gray=rgb2gray(ori);%轉成灰階圖
三項Error
clear all; clc;% 清空
ori=imread('C:\Program Files (x86)\MATLAB\work\erzhi_fupeng.JPG');%副檔名
gray=rgb2gray(ori);%轉成灰階圖
for i = 1 : 1 : 275 %長107
for j = 1 : 1 : 355 %寬160
if (ori( i , j )>1024)%如果大於128 轉成256 白
gray( i , j )=2048;
else
gray( i , j )=1;%小於則黑
end
end
end
figure(1),imshow(gray);%印出