tutorials.de Buch-Aktion 02/2012
ERLEDIGT
NEIN
ANTWORTEN
0
ZUGRIFFE
561
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    DarkWizzard DarkWizzard ist offline Mitglied Bronze
    Registriert seit
    Jan 2009
    Ort
    Braunschweig (Ni)
    Beiträge
    32
    Hallo,

    ich bin auf der suche nach nem vernünftigen Füll-Algorithmus. Ich programmiere zwar in Java, aber solch Algorithmen sind ja eigentlich nicht an eine Sprache gebunden.

    Ich habe also ein (SWT) Image wo ich eine einfache Füllen-Operation drin durchführen will, also die gesamte zusammenhängende Fläche gleicher Farme von einem bestimmten Punkt aus mit einer anderen Farbe füllen.

    Intuitiv habe ich mir als erstes einen rekursiven Floodfill-Algorithmus geschrieben. Der endet leider in einer StackOvervlowExeptions (Ist klar: Bei einem 400*300 Pixel Bild sind das bis zu 120000 Aufrufe).

    Also hab ich mich auf die suche gemacht und die Idee für ne imparative Version des Floodfill-Algorithmus gefunden. Bedeutet dass nicht für jeden Pixel ne Funktion aufgerufen wird, sondern jeder in einen Stack geschoben wird und der Stack halt in ner Schleife abgearbeitet wird.
    Das läuft schonmal durch, aber Effizienz ist dem Algorithmus ein Fremdwort. selbst bei dem genannten 400*300 Bild läuft der schon unseglich lange (ich schätze knapp ne minute).

    Also weiter gesucht und nen Scanline-Algorithmus gefunden und ausprobiert. Wirklich viel schneller ist der aber auch nicht.

    Jetzt weiß ich nicht mehr weiter.
    Hat jemand ne Idee?


    EDIT:

    Hat sich erledigt.

    Ich hab den dummen Fehler gemacht direkt auf den Bild-Daten zu operieren.
    Jetzt hab ich sie mir in nen eigenen Array kopiert, das ganze da gemacht und nun klappt es wunderbar und ohne merkliche Zeitverzögerung.
    Geändert von DarkWizzard (15.08.10 um 11:16 Uhr)
     

Ähnliche Themen

  1. Datenstrom effizienter aufteilen
    Von Meldur im Forum .NET Café
    Antworten: 6
    Letzter Beitrag: 03.12.10, 00:07
  2. Wörter effizienter ersetzen
    Von Jennesta im Forum PHP
    Antworten: 5
    Letzter Beitrag: 11.08.09, 20:43
  3. Antworten: 1
    Letzter Beitrag: 24.04.06, 18:36
  4. Antworten: 2
    Letzter Beitrag: 19.04.05, 11:57
  5. Produkt-Suche / Filter, Effizienter Algorithmus gesucht?
    Von muehl im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 19.04.05, 01:43

Stichworte