Topologiskt skelett

En form och dess skelett, beräknad med en topologibevarande uttunningsalgoritm.

I formanalys är skelett (eller topologiskt skelett ) av en form en tunn version av den form som är lika långt till dess gränser . Skelettet betonar vanligtvis geometriska och topologiska egenskaper hos formen, såsom dess anslutning , topologi , längd , riktning och bredd . Tillsammans med avståndet mellan dess punkter till formgränsen kan skelettet också fungera som en representation av formen (de innehåller all information som behövs för att rekonstruera formen).

Skelett har flera olika matematiska definitioner i den tekniska litteraturen, och det finns många olika algoritmer för att beräkna dem. Olika olika varianter av skelett kan också hittas, inklusive raka skelett , morfologiska skelett , etc.

används begreppen skelett och mediala axel omväxlande av vissa författare, medan vissa andra författare betraktar dem som relaterade, men inte likadana. På liknande sätt betraktas begreppen skelettbildning och gallring också som identiska av vissa, och inte av andra.

Skelett används i stor utsträckning inom datorseende , bildanalys , mönsterigenkänning och digital bildbehandling för ändamål som optisk teckenigenkänning , fingeravtrycksigenkänning , visuell inspektion eller komprimering . Inom biovetenskapen hittade skelett omfattande användning för att karakterisera proteinveckning och växtmorfologi på olika biologiska skalor.

Matematiska definitioner

Skelett har flera olika matematiska definitioner i den tekniska litteraturen; de flesta av dem leder till liknande resultat i kontinuerliga utrymmen , men ger vanligtvis olika resultat i diskreta utrymmen .

Släckningspunkter för brandutbredningsmodellen

Harry Blum från flygvapnets Cambridge Research Laboratories vid Hanscom Air Force Base i Bedford, Massachusetts , definierade i sin framträdande artikel en medial axel för att beräkna ett skelett av en form, med hjälp av en intuitiv modell av eldutbredning på ett gräsfält, där fältet har formen av den givna formen. Om man "tänder eld" på alla punkter på gränsen till det gräsfältet samtidigt, är skelettet uppsättningen av släckningspunkter , dvs de punkter där två eller flera vågfronter möts. Denna intuitiva beskrivning är utgångspunkten för ett antal mer exakta definitioner.

Center för maximala skivor (eller bollar)

En skiva (eller boll ) B sägs vara maximal i en mängd A if

  • , och
  • Om en annan skiva D innehåller B , då .

Ett sätt att definiera skelettet för en form A är som uppsättningen av centra för alla maximala skivor i A .

Centrum för bi-tangenta cirklar

Skelettet av en form A kan också definieras som den uppsättning centra av skivorna som vidrör gränsen för A på två eller flera platser. Denna definition säkerställer att skelettpunkterna är lika långt från formgränsen och är matematiskt ekvivalent med Blums mediala axeltransform.

Åsar av distansfunktionen

Många definitioner av skelett använder sig av begreppet avståndsfunktion , som är en funktion som för varje punkt x inuti en form A returnerar sitt avstånd till den närmaste punkten på gränsen till A. Att använda avståndsfunktionen är mycket attraktivt eftersom dess beräkning är relativt snabb.

En av definitionerna av skelett som använder avståndsfunktionen är som åsarna för avståndsfunktionen. Det finns en vanlig missuppfattning i litteraturen att skelettet består av punkter som är "lokalt maximum" i avståndstransformen. Detta är helt enkelt inte fallet, vilket till och med översiktlig jämförelse av en avståndstransform och det resulterande skelettet kommer att visa. Åsar kan ha varierande höjd, så en punkt på åsen kan vara lägre än sin närmaste granne på åsen. Det är alltså inget lokalt maximum trots att det hör till åsen. Det är dock mindre långt bort vertikalt än dess markavstånd skulle motivera. Annars skulle det vara en del av backen.

Andra definitioner

  • Punkter utan uppströmssegment i distansfunktionen. Uppströms om en punkt x är det segment som börjar vid x som följer den maximala gradientbanan.
  • Punkter där gradienten för avståndsfunktionen skiljer sig från 1 (eller, på motsvarande sätt, inte väldefinierad)
  • Minsta möjliga uppsättning linjer som bevarar topologin och är lika långt från gränserna

Skelettiseringsalgoritmer

Det finns många olika algoritmer för att beräkna skelett för former i digitala bilder , såväl som kontinuerliga uppsättningar .

  • Använda morfologiska operatorer (Se Morfologiskt skelett )
  • Komplettera morfologiska operatorer med formbaserad beskärning
  • Använda korsningar av avstånd från gränssektioner
  • Använder kurvutveckling
  • Använda nivåuppsättningar
  • Hitta nockpunkter på distansfunktionen
  • "Peeling" av formen, utan att ändra topologin, tills konvergens
  • Zhang-Suen gallringsalgoritm

Skelettiseringsalgoritmer kan ibland skapa oönskade grenar på utgående skelett. Beskärningsalgoritmer används ofta för att ta bort dessa grenar.

Se även

Anteckningar

Programvara med öppen källkod

externa länkar