Thinning Algorithm that ensures 8 connectivity

조회 수: 6 (최근 30일)
Sonam
Sonam 2012년 2월 15일
편집: Matt J 2013년 10월 16일
I need a thinning algorithm in matlab that satisfies the following requirements: 1. Connected image region must thin to connected line strycture. 2. The thinned image should be minimally 8-connected. 3. Appropiate endline location should be maintained. I use bwmorph(image,'thin') function for this but it does not satisfies all above requirements. Anyone can please provide algo that satisfies all the above mentioned 3 requirements.

채택된 답변

Ashish Uthama
Ashish Uthama 2012년 2월 15일
Sonam, Try the
bwmorph(image,'thin',Inf)
syntax. Without the third input argument, the thinning process is only performed once. A Inf input tells it to repeat the process till the output stops changing.
(If that doesnt work, it might also help to post a sample image)
  댓글 수: 4
Sonam
Sonam 2012년 2월 19일
How can I attach image with my question?
Image Analyst
Image Analyst 2012년 2월 19일
Upload it to tinypic.com, or read this tutorial: http://www.mathworks.com/matlabcentral/answers/7924-where-can-i-upload-images-and-files-for-use-on-matlab-answers

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Image Analyst
Image Analyst 2012년 2월 17일
Sonam: I think the third condition is your problem. It's impossible for any "thick" structure, and will only be satisfied for regions that are already a line and can't be thinned anymore at all. Think about it, you are basically removing layer by layer of the outer perimeter until you get a line. If you have a cigar shape, it will get shortened - how could it not? It cannot go all the way out to the tips like it used to. If you need that, then that is a special, non-standard morphological operation that you need to do with custom code. For example, you could look at the last few pixels near the line endpoint and extrapolate (say with a line or quadratic) that a long way (long enough to poke outside your original shape), then AND (&) that image with your original binary image.

카테고리

Help CenterFile Exchange에서 Display and Exploration에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by