Image processing 查找感兴趣的区域
要绘制衬衫宽度线,我需要找到腋窝点(参见这些链接中的图片:Image processing 查找感兴趣的区域,image-processing,Image Processing,要绘制衬衫宽度线,我需要找到腋窝点(参见这些链接中的图片: 我的想法是首先尝试找到包含腋窝点的区域,然后使用Haris算法找到腋窝点。这样做可以吗?如果可以,可以使用什么算法?我想到类似Haar的特征。另一个可能是区域特征().对于这个简单的任务来说,你提到的所有算法都可能是一种过分的技巧 正如@blackSmith所说,形态学操作符可以工作,而且是个好主意: 提取二进制后(如果只有第一张图片中的轮廓,则执行整体填充),可以执行闭合,然后从中减去原始二进制。选择形态学操作符,使剩余的点仅为腋
我的想法是首先尝试找到包含腋窝点的区域,然后使用Haris算法找到腋窝点。这样做可以吗?如果可以,可以使用什么算法?我想到类似Haar的特征。另一个可能是区域特征().对于这个简单的任务来说,你提到的所有算法都可能是一种过分的技巧 正如@blackSmith所说,形态学操作符可以工作,而且是个好主意: 提取二进制后(如果只有第一张图片中的轮廓,则执行整体填充),可以执行闭合,然后从中减去原始二进制。选择形态学操作符,使剩余的点仅为腋窝的小角度 就这么简单,这里有一些伪代码:
TestImage=Threshold(TestImage,0.3)
我认为你可以使用形态学操作符来查找腋窝区域和点。形态学操作符(扩张、侵蚀、打开、关闭…)我觉得没那么简单。这个怎么样我不知道你的图像是什么意思,但是MorphOps非常简单,看看我的编辑。非常感谢。现在我正在考虑如何告诉计算机腋窝在哪里。在做了很多测试后,我发现腋窝的区域标记有一些明显的恒定形状,所以我认为使用模板匹配。可以吗?您可以使用它,但测量面积可能更容易,或者将其用作运行角点检测器的遮罩;SUSAN有一个非常简单的实现。
strel1=strel('square',25); // Create some structural elements. 25x25, very big!
strel2=strel('disk',25); // A circular element is good to close corners
TestImage=imopen(TestImage,strel1); //Gets rid of smaller particles
OpenImage=imopen(TestImage,strel2); //Closes the corners=>armpits
AddLayer=(TestImage-OpenImage); //Mark corners on original image
strel3=strel('disk',9);
AddLayer=imclose(AddLayer,strel3); //get rid of smaller areas
AddLayer=imdilate(AddLayer,strel3); //Not necessary but makes my point clearer
TestImageO(:,:,1)=TestImageO(:,:,1)+255*AddLayer; // Mark it on the original image