Announcement

Collapse
No announcement yet.

Raster kreisförmig von innen absuchen

Collapse
This topic is closed.
X
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Raster kreisförmig von innen absuchen

    Hallo,

    Ich habe zB ein Bitmap vor mir und einen beliebigen Pixel darin, jetzt möchte ich von diesem Pixel aus kreisförmig nach außenhin alle anderen Pixel absuchen, bis ein Pixel eine bestimmte Farbe hat.
    Die prüfung auf die pixelfarbe mache ich mit der Win32Api und GetPixel().

    Kennt jemand einen effizienten Algorithmus um so eine kreisförmige Suche ablaufen zu lassen?

    mfg

  • #2
    Hallo und willkommen im Forum,

    ich denke nicht dass es für das kreisförmige Absuchen einen anderen Algorithmus gibt als einfach mit Schleifen (~Polarkoordinaten) abzusuchen. Da GetPixel von GDI+ in .net langsam ist gibt es mit GetPixel und SetPixel um Längen geschlagen. 800 mal schneller eine Klasse die das schneller schafft. Das ist eleganter als mit WinAPI.

    Das Vorgehen kannst du auch gut parallelisieren indem der Suchbereich entsprechend der vorhandenen Kerne aufgeteilt wird. Bei 2 Kernen zB dass 1 Thread nur die rechte Bildhälfte durchsucht und der andere dementsprechend die linke. Hat einer das passende Pixel gefunden -> fertig. Sollte im Schnitt ein Speedup von 2 ergeben.

    Wenn du aber speziellere Anforderungen hast gibt es bestimmt einen Algorithmus dafür.


    mfG Gü
    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

    Comment


    • #3
      Hallo,

      wegen Crosspost geschlossen.


      mfG Gü
      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

      Comment

      Working...
      X