matlab从灰度图像变换为彩色图像

问题遇到的现象和发生背景

􀂄 调入并显示灰度图像Lenna.jpg;
􀂄 使用不同相位的正弦函数作为变换函数,将灰度图像变换为RGB图像。其中红色分量R的变换函数为-sin( ),绿色分量G的变换函数为-cos( );,蓝色分量B的变换函数为sin( );
􀂄 显示变换曲线及变换合成的彩色图像并观察彩色变换图像的色调与原始图像灰度之间的关系;

原始图像是这个

img

用代码块功能插入代码,请勿粘贴截图
I=imread('Lenna.jpg');
I=double(I);
[i,j]=size(I);
for i= 1:i
    for j = 1:j
        A=I(i,j);
        r(i,j)=-5*sin(A+pi/10);
        g(i,j)=-10*cos(A+pi/5);
        b(i,j)=6*sin(A+pi/6);
    end
end
for i= 1:i
    for j = 1:j
        I1(i,j,1)=r(i,j);
        I1(i,j,2)=g(i,j);
        I1(i,j,3)=b(i,j);
    end
end
I1=double(I1);
imshow(I1);

运行结果及报错内容

img


结果图看起来很奇怪,请问是什么问题?