Watershed image segmentation
Hovedtrekk for algoritmen
Separerer ulike "basins" (vannbaseng) separert i terrenget med ulik høyde på vannet. Som fjellheimen i Norge.
- Threshold
- Distance transform
- Erosion ved å kjøre threshold på distance transform.
- Markers på sure foreground
- ![[Pasted image 20231013141056.png|300]]
- Watershed som utvider sure foreground utover i unknown background.
Watershed objektorientert
Basert koden på Arthurs program watershed4.py. Laget objektorientert så man kan bruke klassen til å utføre delvis segmentering hvis man vil.
Endret dist_transform.max()
opprinnelig fra eksempel fungerer 0.7 som en faktor som ganges med dist_transform.max().
factor*dist_transform.max()
Forsøker faktor 0.3: ![[Pasted image 20231013131221.png|500]] Nå synes alle bokstavene. Pga. de er små og tynne må det en mindre max-avstand ved bruk av cv2.threshold() Faktor 0.2, sure_fg (sikker forgrunn) ser slik ut. Ganske tynne... ![[Pasted image 20231013131800.png|400]] Faktor 0.3, sure_fg ![[Pasted image 20231013131907.png|400]] Her ser vi at W blir delt opp: ![[Pasted image 20231013131937.png|150]] Faktor 0.35, sure_fg ![[Pasted image 20231013132040.png|400]] Nå er alle sikre objekter som ikke er bakgrunn for små til at det gir mening.
Faktor 0.1 sure_fg ![[Pasted image 20231013132154.png|400]] Ved en liten faktor på kun 10% innspising av threshold-image blir det tykke bokstaver. Resultat er 37 separate objekter: ![[Pasted image 20231013132307.png|500]]
Legger inn faktor som parameter i tilpasning
Tester ut på water_coins.png factor 0.7: ![[Pasted image 20231013141918.png|500]] factor 0.5: ![[Pasted image 20231013141944.png|500]] ![[Pasted image 20231013142010.png|500]]
Tester lavoppløst bilde av jellybeans 0.1: ![[Pasted image 20231013142133.png|500]] ![[Pasted image 20231013142227.png|500]] ![[Pasted image 20231013142600.png|500]] ![[Pasted image 20231013142317.png|500]] ![[Pasted image 20231013142440.png|500]] ![[Pasted image 20231013142348.png|500]] ![[Pasted image 20231013142411.png|500]]
På lit mer løse objekter
![[Pasted image 20231013142658.png|500]]
Man må tilpasse faktoren nøye til bildet. Så ikke så robust.