How can i merge this purple color marked line and remove the line outside of green marked area ?
1 次查看(过去 30 天)
显示 更早的评论
After canny edge detection i got this following image. but how can I merge this purple marked line so that other lines will not be effected. and i also want to remove the line outside of green area. how can i do that ?
[ Raw Image]
[marked Image]
0 个评论
回答(1 个)
Image Analyst
2017-7-28
See attached solution.
For linking the bottom lines, you can look at edge linking http://www.peterkovesi.com/matlabfns/#edgelink
Or you could try to do a cluster analysis on the lines and find common y values. Like if you knew there were 9 lines, you could use kmeans to get the centroids in the y direction and then use bwmorph(binaryImage, 'endpoints') to get the endpoints of all the line segments and then use imline() to burn a line connecting endpoints to the closest endpoint of another line in the sane y zone. I don't have code for that but it's pretty straightforward so try it.
9 个评论
Image Analyst
2017-7-30
Do you have the Statistics and Machine Learning Toolbox? It's a little easier if you do.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!