matlab中cell的用法

spp-net中的spp_demo中的代码详读:


dets = spp_detect(im, spp_model, spm_im_size, use_gpu);

classes = spp_model.classes;
boxes = cell(length(classes), 1);
thres = -0.5;
for i = 1:length(boxes)
    I = dets{i}(:, 5) >= thres;
    boxes{i} = dets{i}(I, :);
end
showboxes_new(im, boxes, classes);



看不明白其中cell的用法,用下面的数据尝试了一下:

>> a=cell(8)

初始化为一个8行8列的空cell类型数据

a = 


    []    []    []    []    []    []    []    []
    []    []    []    []    []    []    []    []
    []    []    []    []    []    []    []    []
    []    []    []    []    []    []    []    []
    []    []    []    []    []    []    []    []
    []    []    []    []    []    []    []    []
    []    []    []    []    []    []    []    []
    []    []    []    []    []    []    []    []


>> a{1}=rand(6)
a的1行1列的单元中存储的就是一个随机的6×6的方阵

a = 


    [6x6 double]    []    []    []    []    []    []    []
              []    []    []    []    []    []    []    []
              []    []    []    []    []    []    []    []
              []    []    []    []    []    []    []    []
              []    []    []    []    []    []    []    []
              []    []    []    []    []    []    []    []
              []    []    []    []    []    []    []    []
              []    []    []    []    []    []    []    []


>> a{1}
查看 a的1行1列的单元值

ans =


    0.7577    0.0318    0.3171    0.7952    0.7547    0.4984
    0.7431    0.2769    0.9502    0.1869    0.2760    0.9597
    0.3922    0.0462    0.0344    0.4898    0.6797    0.3404
    0.6555    0.0971    0.4387    0.4456    0.6551    0.5853
    0.1712    0.8235    0.3816    0.6463    0.1626    0.2238
    0.7060    0.6948    0.7655    0.7094    0.1190    0.7513


>>  I = a{1}(:, 5) >= 0.5;
>> I
将a{1}中的第五列值大于等于0.5标记为1,否则标记为0,赋给变量I,I为一个6*1的向量

I =


     1
     0
     1
     1
     0
     0


>>  boxes{1} = a{1}(I, :)
将I中为1的那一行向量给boxes{1},I中有三个1,所以就是3*6

boxes = 


    [3x6 double]


>> boxes{1}


ans =


    0.7577    0.0318    0.3171    0.7952    0.7547    0.4984
    0.3922    0.0462    0.0344    0.4898    0.6797    0.3404
    0.6555    0.0971    0.4387    0.4456    0.6551    0.5853


>> 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值