从图像中提取特征

时间:2012-08-09 20:06:34

标签: matlab image-processing computer-vision

嗨,我是matlab的新手....我想在图像中检测出病细胞。

首先我通过此代码对图像进行分段:   现在我想提取它的功能....我该怎么办?     请指导我?     感谢

he = imread('hestain.png');
imshow(he), title('H&E image');
text(size(he,2),size(he,1)+15,...
     'Image courtesy of Alan Partin, Johns Hopkins University', ...
     'FontSize',7,'HorizontalAlignment','right');

cform = makecform('srgb2lab');
lab_he = applycform(he,cform);
ab = double(lab_he(:,:,2:3));
nrows = size(ab,1);
ncols = size(ab,2);
ab = reshape(ab,nrows*ncols,2);
nColors = 3;
% repeat the clustering 3 times to avoid local minima
[cluster_idx cluster_center] = kmeans(ab,nColors,'distance','sqEuclidean', ...
                                      'Replicates',3);
pixel_labels = reshape(cluster_idx,nrows,ncols);
imshow(pixel_labels,[]), title('image labeled by cluster index');

segmented_images = cell(1,3);
rgb_label = repmat(pixel_labels,[1 1 3]);
for k = 1:nColors
    color = he;
    color(rgb_label ~= k) = 0;
    segmented_images{k} = color;
end
imshow(segmented_images{1}), title('objects in cluster 1');

imshow(segmented_images{2}), title('objects in cluster 2');

imshow(segmented_images{3}), title('objects in cluster 3');

这是图片:  enter image description here

现在我想提取它的功能......我该怎么办?   请指导我?   感谢

2 个答案:

答案 0 :(得分:3)

matlab中的

regionprops 函数将提取检测到的blob的不同属性,这里有一个链接regionsprops

答案 1 :(得分:0)

通过查找其特征值和特征向量,找到每个聚类(即细胞)的属性。这些将指示细胞的“管状”。您也可以计算每个单元格的时刻。

我不知道你的“生病”细胞是什么样的,所以如果没有人知道“生病”细胞是什么样的话,想出一种区分健康和生病细胞的方法是不可能的。发布病态细胞的另一张图像。

您可以了解每个细胞的管状度和力矩属性,并存储它们。然后使用支持向量机对健康与病态细胞进行分类。使用SVM-Light。 http://svmlight.joachims.org/

ANKUR