matlab code
62 ビュー (過去 30 日間)
古いコメントを表示
clear
clc
d1=120; d2=94;
I =imread('C:\Users\SAMA CENTER\Desktop\girl.jpg');
J = imresize(I,[200 250]);
X = rgb2gray(I);
Y=X';
for k1=1:d1
for k2=1:d2
B(2*k1,k2)=X(k1, k2);
B(2*k1-1,k2)=floor((X(k1,k2)+X(2*k1-1,k2))/2);
end
end
imshow(B);
What's wrong with this code?? there is some wrong with the floor function what is it ???
2 件のコメント
採用された回答
Chandra Kurniawan
2012 年 3 月 10 日
The error message sounds you accessed X(213,1) while the size of X is 212x320
X is a gray image generated from command : X = rgb2gray(I);
so, the original image I has 212x320 dimension.
2 件のコメント
Chandra Kurniawan
2012 年 3 月 10 日
You wrote the code d1=120 and also wrote B(2*k1,k2)
So, ideally the image must have minimum 2*120 x 94 dimension.
You can resize the image.
J = imresize(I,[240 94]);
Then followed with :
X = rgb2gray(J);
その他の回答 (1 件)
777
2012 年 3 月 10 日
your code has x(2*k1-1) ,so when the value of k1=120 you reach a value which is out of bounds for x.
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Labels and Annotations についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!