如何从MATLAB数组中筛选有效轮廓
如何从MATLAB数组中筛选有效轮廓
本文将介绍如何从MATLAB数组中筛选出有效轮廓。假设您有一个名为'B'的单元格数组,其中包含多个轮廓数据,例如:matlabB = { [2121, 2], [2150, 2], [2113, 2], [2105, 2], ... [2116, 2], [2116, 2], [2815, 2], [624, 816; 624, 816], ... [2823, 2], [420, 1596; 420, 1596], [2799, 2], ... [594, 2151; 594, 2151], [485, 2531; 485, 2531], ... [2847, 2], [601, 3383; 601, 3383], [2821, 2], ... [2805, 2], [316, 4872; 317, 4872; 316, 4872], ... [322, 4872; 322, 4872] };
目标: 筛选出'B'中有效的轮廓数据。
步骤:
-
**创建存储有效轮廓的空单元格数组:**matlabvalidContours = {};
-
**遍历'B'中的每个元素:**matlabfor k = 1:numel(B) contour = B{k}; % 判断轮廓是否有效 if size(contour, 1) > 2 validContours{end+1} = contour; endend
代码解释:
- 使用
for循环遍历 'B' 中的每个元素。* 将当前元素存储在变量contour中。* 使用size(contour, 1)获取轮廓的点数。* 如果点数大于 2,则认为该轮廓有效,并将其添加到validContours数组中。
结果:
执行上述代码后,validContours 将包含 'B' 中所有有效轮廓的数据。
总结:
通过以上步骤,您可以轻松地从MATLAB数组中筛选出有效轮廓。
原文地址: https://www.cveoy.top/t/topic/Oku 著作权归作者所有。请勿转载和采集!