Artikel verbeteren
Artikel opslaan
Zoals artikel
Artikel verbeteren
Artikel opslaan
Zoals artikel
Flood-fill algoritme:Flood fill-algoritme is ook bekend als een seed fill-algoritme. Het bepaalt het gebied dat is verbonden met een bepaald knooppunt in een multidimensionale array. Dit algoritme werkt door een geselecteerd gebied te vullen of opnieuw in te kleuren met verschillende kleuren aan de binnenkant en dus aan de rand van de afbeelding. Het wordt vaak geïllustreerd door een afbeelding met een buurt die wordt begrensd door verschillende verschillende kleurgebieden. Om dergelijke gebieden te schilderen, zullen we een specifieke interieurkleur vervangen in plaats van een grenskleurwaarde te ontdekken. Dit is de reden waarom de aanpak wordt begrepen vanwege het algoritme voor het vullen van overstromingen. Nu zijn er twee methoden die zullen worden gebruikt voor het creëren van een eindeloze grens door pixels te verbinden: 4-verbonden en 8-verbonden benadering. In de 4-connected-methode kan de pixel maximaal vier buren hebben die zich rechts, links, boven en onder de huidige pixel bevinden. Integendeel, in de 8-verbonden methode kan het er acht hebben en worden de aangrenzende posities gecontroleerd aan de hand van de vier diagonale pixels. Dus elk van de twee methoden is vaak de gewoonte om de binnenpunten opnieuw te schilderen.
Boundary-fill algoritme: Het volgt een aanpak waarbij het vullen van het gebied begint vanuit een bepaalde mate binnen het gebied en de binnenkant naar de grens schildert. Als de grens een enkele kleur bevat, gaat het vulalgoritme pixel voor pixel binnen de buitenwaartse richting door totdat de grenskleur wordt aangetroffen. Het grensvulalgoritme wordt vaak voornamelijk geïmplementeerd binnen de interactieve schilderpakketten, waar de binnenpunten gemakkelijk kunnen worden gekozen. De werking van de grensvulling begint met het accepteren van de coördinaten van een binnenpunt (x, y), een grenskleur en vulkleur worden de invoer. Beginnend met (x, y) controleert de methode naburige locaties om te zien of ze al dan niet deel uitmaken van de grenskleur. Als ze niet van de grenskleur zijn, worden ze geverfd met de vulkleur en worden hun aangrenzende pixels getest op de voorwaarde. Het proces eindigt wanneer alle pixels tot aan de grenskleur voor de wereld zijn gecontroleerd.
Verschil tussen opvulalgoritme en grensvulalgoritme:
Flood-fill algoritme | Boundary-fill algoritme |
---|---|
Het kan de afbeelding verwerken die meer dan één grenskleur bevat. | Het kan alleen de afbeelding met een enkele randkleur verwerken. |
Algoritme voor vlakvulling is relatief langzamer dan het algoritme voor grensvulling. | Het algoritme voor grensvulling is sneller dan het algoritme voor vlakvulling. |
In het Flood-fill-algoritme kan een willekeurige kleur worden gebruikt om het binnengedeelte te schilderen, waarna de oude wordt vervangen door een nieuwe. | In het Boundary-fill algoritme worden interieurpunten geverfd door continu te zoeken naar de grenskleur. |
Het vereist een enorme hoeveelheid geheugen. | Het geheugenverbruik is relatief laag in het Boundary-fill-algoritme. |
Flood-fill-algoritmen zijn eenvoudig en efficiënt. | De complexiteit van het Boundary-fill-algoritme is hoog. |
Laatst bijgewerkt :23 juni 2022
Zoals artikel
Artikel opslaan