【发布时间】:2015-04-29 16:56:52
【问题描述】:
所以一旦我从原始图像中提取出我想要的图像, 我将轮廓长度视为特征 1,将轮廓区域视为特征 2。我使用 sum(sum(ds)) 来计算数量每个物种的二进制图像中的白色像素。 ds 是这里的附加图像。然后我通过以下代码找到了轮廓区域,轮廓所刻的像素数。
area=0;
for col=1:464
temp=find(ds(:,col)==1);
if temp
area= area + (temp(end)-temp(1)+1);
end
end
area;
现在我应该绘制特征 1 与特征 2 的图并检查是否存在可分离的集群并使用 k-NN 进行分类。谁能告诉我如何绘制,检查和分类。谢谢 !
【问题讨论】:
-
你的问题是如何在matlab中运行knn?有很多关于 SO 的示例,MATLAB 文档可能会派上用场。
-
希望您也知道,您编写的求和代码可能会因两个原因而失败:1)
if temp可能会崩溃或给您带来不想要的结果,我会使用if ~isempty(temp) && length(temp)>1左右。 2)只有当形状是凸的时,你的总和才会准确,但你可能对这个近似值感到满意。
标签: matlab machine-learning contour knn