我正在进行指纹识别项目,但我需要对图像进行预处理。我将完成以下过程。
1)二值化
2)过滤以消除“阶梯”效应;即平滑
3)细线
我正在添加一个我正在尝试开发的步骤,它将填充细化后留下的任何漏洞。我试图按照以下方式完成此任务。
4a)使用bwlabel
查找区域(我可能会考虑使用bwmorp(...,'shrink')
来保留“blob”,但这样可以减少blob的大小)。
4b)找到所有没有最大面积的区域
4c)使用这些区域的位置将这些“斑点”缩小为点。
但是如何在指定位置应用缩小?
二值化
过滤
减薄
填孔
答案 0 :(得分:0)
我不确定我是否正确理解了这个问题。但是你可以补充稀疏图像,然后使用bwlabel
。之后,计算属于每个标签的像素数。应用您的条件选择标签并获取其位置。之后,您可以使用imfill(bw,locations)
命令。
答案 1 :(得分:0)
如果您想要缩小某个区域,则计算该区域的质心。通过平均blob中每个点的x和y坐标来做到这一点。将区域像素设置为黑色,将质心设置为白色。
我遇到的问题是修剪脊部以便离开填充区域,同时避免填充区域的侵蚀(如果我使用侵蚀,脊部会消失,但也会减小区域的大小)。
你不必担心小区域的侵蚀,因为它对质心影响不大,你的观点仍然会到达适当的位置。