matlab中cell的用法
2016-05-07 18:36
681 查看
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
>>
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
>>
相关文章推荐
- utilities(matlab)—— normalize
- matlab处理lvm格式文本
- MATLAB GPU编程基础
- MATLAB2014a中help与参考页中文翻译(用于学习) cat
- win10系统中ASP.NET(VS2013)和MATLAB混编,调用MATLAB生成的.dll文件
- matlab 中的内联函数、匿名函数和函数函数
- 用Matlab的FDAtool生成IIR滤波器参数
- matlab debug
- matlab GUI入门实现字符串传递的功能
- MATLAB的符号运算基础
- SAR成像学习(五)方位向成像及matlab代码解析
- fprintf 输出矩阵到txt的方法
- matlab 字符串处理(单引号、拼接、char)
- matlab struct 结构体
- MATLAB的size()函数的返回值是一个1*2的向量哦,即使参数是向量也是1*2的向量哦!
- 要看懂MATLAB的Help需要积累的英文词汇!
- 深度学习入门级框架MatConvNet环境配置(Ubuntu14.04+Cuda7.5+Cudnn5+Matlab2014a)
- 构建复杂的应用程序(一)—— matlab
- matlab libsvm支持向量机工具箱安装与使用
- 区域生长算法(附MATLAB代码实现)