Я пытался увеличить изображение, используя метод репликации пикселей. В приведенном ниже коде есть «Предупреждение: изображение слишком велико, чтобы соответствовать на экране». Я не знаю, если это проблема с выходом. Результат полностью отображает что-то еще. Вот ссылка на выход ... https://www.dropbox.com/s/ixl80jwutra8e1a/Q.PNGMatlab Масштабирование с использованием репликации пикселей
Img = handles.Image;
temp = double(imread(Img));
b=temp;
[m,n,colormap]=size(b);
%If RGB Image is given at Input
if colormap==3
x=b(:,:,1);
y=b(:,:,2);
z=b(:,:,3);
end
k=1; %Counter for Row and
l=1; %Column replication
f=2; %Replica factor
for i=1:m %Loop for reading row and
for t=1:f %Row replication
for j=1:n %Loop for reading column and
for t=1:f %Column replication
if colormap==3 %If Image is RGB
c1(k,l)= x(i,j);
c2(k,l)= y(i,j);
c3(k,l)= z(i,j);
else %If Image is grayscale
c(k,l)=b(i,j);
end
l=l+1;
end
end
l=1;
k=k+1;
end
end
if colormap==3 %If Image is RGB
c(:,:,1)=c1;
c(:,:,2)=c2;
c(:,:,3)=c3;
end
axes(handles.axes2);
imshow(c);
Что именно проблема, есть ли выход?
Только быстрый взгляд, но на первый взгляд, кажется, что вы делаете 'л = 1;' неправы место - не должно быть после цикла 'for t'? –