MATLAB canny边缘识别

Matlab canny边缘识别后,如下两张图,只能把梯度高的地方用两条线标出来,想问如何能把识别出来的两条线内的点都填充,表示这块地方的梯度都很高,谢谢

img

img

填充的前提是图形封闭,你这里基本做不到。我想到的可以考虑边缘线加粗替代解决,即膨胀。网上搜到现成的先腐蚀后膨胀算法,基于MATLAB的腐蚀膨胀算法。
https://www.cnblogs.com/ninghechuan/p/9530964.html

img

看你梯度算法用的什么,高斯吗还是啥,你想想,一条线,往两边都是梯度最大的值啊。
还有一种就是将你的canny之后的结果进行反白,黑白互换之后看下找到的梯度位置会不会在白色位置,如果在白色位置就会是一条线

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632