imfill or other function to make a donut from contours?

Hello,
I am trying to make a donut from two concentric sets of contours. When I use imfill, it completely fills in the outer contour. I was wondering if there is function that will fill in the space between the two concentric contours, and leave the center of the inner contour empty. It needs to generalize to be able to handle multiple inner contours (think Swiss cheese rather than a donut) but does not necessarily need to be able to handle more than 2 nested contours. I know a way to accomplish this, but don't want to write the code if MATLAB has a function that can already do it. Any help would be appreciated. thanks!

回答 (2 件)

James
James 2014 年 3 月 5 日

0 投票

I realised I posted this late (after normal work hours). Bumping so it doesn't get buried...

1 件のコメント

Image Analyst
Image Analyst 2014 年 3 月 5 日
They were probably waiting for you to post a diagram showing what you have and what you want, to make it easier to understand.

サインインしてコメントする。

James
James 2014 年 3 月 5 日
編集済み: James 2014 年 3 月 5 日

0 投票

I have attached a picture of what I am trying to accomplish. Top left is the contour set, top middle is how I want it to be filled in. Top right is what I get using imfill. Bottom set is the more general case with more holes (swiss chesse). Any help would be appreciated. Thanks

カテゴリ

ヘルプ センター および File ExchangeSurfaces, Volumes, and Polygons についてさらに検索

タグ

質問済み:

2014 年 3 月 4 日

編集済み:

2014 年 3 月 5 日

Community Treasure Hunt

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

Start Hunting!

Translated by