Announcement

Collapse
No announcement yet.

Vektor-basierte Invertierung extrem großer Bilder

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Vektor-basierte Invertierung extrem großer Bilder

    Hallo,

    ich habe folgendes Problem:
    Ich erstelle mir aus einem Datensatz, der aus Positionen im µm Bereich besteht, mit Hilfe der GraphicsPath-Klasse einen Pfad. Dieser Pfad besteht aus mehreren Figuren, die alle mit einer Farbe gefüllt werden. Nun bräuchte ich eine Möglichkeit herauszufinden, ob ein Bereich oder ein Punkt der resultierenden Grafik zum gefüllten Bereich gehört oder nicht.

    Das Problem bei der Sache ist, dass die Punkte horizontal in einem Bereich von 0-500000 und vertikal in einem Bereich zw. 0 und 400000 liegen können.
    Stellt man das ganze als Bitmap dar ( um dann dort einzelne Pixel auslesen zu können) bräuchte man eine Bitmap mit einer Größe von 500000 X 400000 (um die Genauigkeit nicht zu reduzieren). Dies sprengt die Bitmapklasse bei weitem.

    Deshalb zerlege ich mir das Bild in kleinere Einzelteile.
    Hierbei ist das Auslesen einzelner Pixel dennoch sehr langsam.

    Gibt es eine Möglichkeit, sich das Zerteilen des Bildes zu sparen?
    Oder kann man den Vorgang, z.b.: mit Hilfe von DirectX beschleunigen?


    Vielen Dank

  • #2
    Hallo,

    OpenGL od. DirectX war auch mein 1. Gedanke. Ich bin mir aber nicht sicher ob es dort geht. Einen Versuch wäre es wert.

    Anstatt das Bild aufzuteilen würde ich von Image ableiten und selbst eine Bitmap implementieren. Dabei werden die Daten nicht gesamt in den Speicher geladen sondern dirket im FileStream. Siehe hierzu auch Beliebig große Bilder erstellen


    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