2014-06-12 54 views
1

我有一个对象的图像,我想使用特征值算法进行裁剪,一切都很好,直到我想绘制围绕检测到的特征的边界框用作区域的意义。MATLAB使用特征值算法检测到的对象周围的边界框

original = imread('1.jpg'); 
img = rgb2gray(original); 

corners = detectMinEigenFeatures(img); 
figure; 
imshow(original); hold on; 
plot(corners.selectStrongest(4000)); 

%st = regionprops(corners.selectStrongest(4000), 'BoundingBox'); 

%rect = st.BoundingBox; 

crop = imcrop(original,rect); 
figure 
imshow(crop); 

ObjectDetected

我的问题是,可变角为(n×1),我不知道怎么会涉及我的原始图像坐标。

回答

1

您的输出corner是存储角点的对象,使用可以获得[x y]点坐标的M×2阵列。

+0

我越来越接近,任何想法如何才能获得完美的作物? – Jak

+0

你如何定义一个“完美的作物”?为什么使用这种方法,而不仅仅是图像的阈值和/或边缘?它非常无噪音。 – bla

+0

我发现使用边缘(img,'canny',0.1);工作最好,但坚持再次获得边界框,请帮助。 – Jak

相关问题