【发布时间】:2014-11-05 12:46:53
【问题描述】:
下图显示了使用阈值处理和从 3D 深度图像中减去背景的组合检测到边界的奶牛。
我的目标是在边界区域 INSDIE 上执行特征提取。我已经阅读了其他问题,并且一直在努力实施类似问题中提到的步骤。我不想提取边界中的区域,我只是想将其用于特征提取。
请有人提供一个可能更简单的解决方案吗?例如,有没有办法为 extractSURFFeatures 提供工作的边界坐标?
下面是我的边界代码,它接收我处理过的阈值图像 (BW1)。
figure(1);
imshow(ImageCell_int{i-269});
%title('Outlines, from bwboundaries()'); axis square;
hold on;
boundaries = bwboundaries(BW1);
numberOfBoundaries = size(boundaries);
for k = 1 : numberOfBoundaries
thisBoundary = boundaries{k};
plot(thisBoundary(:,2), thisBoundary(:,1), 'g', 'LineWidth', 2);
end
hold off;
如果能在这方面提供任何帮助,我将不胜感激。
【问题讨论】:
-
把所有图像的特征点都提取出来,然后删除边界外的,是不是有问题?
-
不,这是个好主意,谢谢。我的想法是只使用边界内的区域来最小化处理量。你能帮我开始吗?我是使用 Matlab 进行图像处理的新手。
-
从寻找区域的矩形边界框开始,并在那里提取特征,只需使用 MATLAB 索引来提取矩形。然后扔掉复杂区域之外的点。除非您知道需要,否则不要优化。
-
跟随彼得斯的方法。尝试对其进行优化可能会更加困难!
-
我同意。我可能想出了一个使用口罩的解决方案。你们谁能告诉我如何将两张图像相加,以便我的蒙版隐藏我不感兴趣的区域?我能找到的唯一方法涉及以某种方式混合两张图像。我想把它们加在一起,这样就只剩下留下的“洞”了。这可能吗?
标签: matlab computer-vision feature-extraction matlab-cvst feature-selection