Matlab - 使用主成分来寻找最长的轴形状

时间:2014-12-15 18:07:43

标签: image matlab find pca axes

我正在尝试使用pca函数来查找二进制图像中最长的形状轴。这些是2D图像,所以我只期待两个主要组件。如果我将pca应用于图像本身,我会得到很多组件。

我对此的看法是pca作用于的矩阵被处理为行是观察而列是变量,所以我需要将我的图像转换为非y的x,y坐标列表零像素。这是什么功能?尝试使用find,这是我到目前为止所做的:

 for k=1:cellnum %for each cell...
     [nucleus, nucnum] = bwlabel(B5.*(cell==k)); %label nuclei in cell (Thanks @CapeCode)
    if nucnum == 1
      % other methods
      [row, col] = find(nucleus);
      [coeff, ~, eigen] = pca([row, col]);
      disp (coeff);
    end

我得到每个核的两对系数,如下所示:

    0.8327    0.5537
   -0.5537    0.8327

    0.9791    0.2036
   -0.2036    0.9791

    0.8546    0.5193
   -0.5193    0.8546

所以...我实际上在做我认为我正在做的事情吗?

谢谢,

奥利

编辑:链接到我之前关于识别重叠对象的问题,以及Cape Code优雅的单行解决方案 - Matlab - Identifying objects in one image that overlap objects in another

0 个答案:

没有答案