展开全部
这个要看你的cell里面是什么内容。
1)如果是最简单的单一数字(同类型数字,要int8都是int8,不能一些int一些double),那么非常简单,直接把cell展开转化成matrix就可以了。直接用B=cell2mat(Coded_img_b)就行,其他的类似。
2)如果你的cell也是matrix,这时候需要注意它们的大小。如果所有cell里面的matrix都一样大,那么和它们都只有一个数字是一样的,可以直接用cell2mat。这种转换就是想象把每个cell都拉平放在一起,如果大小合适就可以直接拼成更大的matrix。参考下图(来自官网):
https://ww2.mathworks.cn/help/matlab/ref/lang_a_c4.gif
3)根据你的截图里的变量名称可以推断是一张200x200的图片每个像素的r g b channel的值。如果你想得到这个图片或者一个类似rgb图片的原始data,那么可以把三个变量首先先各自转换成matrix(像1中那样的到RGB三个变量),再把他们拼成200x200x3的一个变量;
IM=zeros(200,200,3);
IM(:,:,1)=R;
IM(:,:,2)=G;
IM(:,:,3)=B;
1)如果是最简单的单一数字(同类型数字,要int8都是int8,不能一些int一些double),那么非常简单,直接把cell展开转化成matrix就可以了。直接用B=cell2mat(Coded_img_b)就行,其他的类似。
2)如果你的cell也是matrix,这时候需要注意它们的大小。如果所有cell里面的matrix都一样大,那么和它们都只有一个数字是一样的,可以直接用cell2mat。这种转换就是想象把每个cell都拉平放在一起,如果大小合适就可以直接拼成更大的matrix。参考下图(来自官网):
https://ww2.mathworks.cn/help/matlab/ref/lang_a_c4.gif
3)根据你的截图里的变量名称可以推断是一张200x200的图片每个像素的r g b channel的值。如果你想得到这个图片或者一个类似rgb图片的原始data,那么可以把三个变量首先先各自转换成matrix(像1中那样的到RGB三个变量),再把他们拼成200x200x3的一个变量;
IM=zeros(200,200,3);
IM(:,:,1)=R;
IM(:,:,2)=G;
IM(:,:,3)=B;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |