Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Imagemagick - Kontur an Grenze zweier Flächen!

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] Imagemagick - Kontur an Grenze zweier Flächen!

    Hallo!

    Stellt euch bitte ein Bild vor, welches sehr groß ist und aus zwei Farben besteht.
    Ich möchte erreichen, dass Imagemagick überall dort Pixel malt, wo die zwei Farben aufeinandertreffen, also eine Art Grenz-Markierung.

    Man könnte es mit PHP realisieren und überall wo Pixel verschiedene Farben haben eine Grenzfarbe setzen.Da ich aber große Bilder verarbeite, möchte ich gern Imagemagick verwenden.Gibt es denn eine Möglichkeit, das mit einer Funktion in Imagemagick so zu realisieren?

    Gibt es außerdem die Möglichkeit, alle Pixel, an denen solch eine Grenze vorkommt, in ein Array zu pumpen?Ich möchte keine Analyse mit PHP, da ich denke dass Imagemagick mir das evt schneller liefert (wenn es möglich ist Variablen in PHP mit Imagemagick-Ergebnissen zu füllen)

    Ich bedanke mich im Vorraus.Ich kann gern eine Grafik liefern, wenn jemand das Problem nicht verstanden hat, aber mir helfen könnte.

  • #2
    Warum schauste einfach nicht nach:
    http://www.imagemagick.org/script/index.php

    Beispiele gibt es ja genug.
    http://www.imagemagick.org/script/examples.php

    Kommentar


    • #3
      Das kann jeder sagen, schau in die Hilfe.
      Was denkst du habe ich bereits sehr lange getan?Es gibt Edge Detection, mit deren Hilfe ich die Linien extrahieren und über das Bild legen könnte.

      Was ich aber suche ist ein Befehl (wenn es ihn gibt), der Pixel dort malt, wo ein Farbunterschied festgestellt wird, ohne tausend Operationen mit Edge Detection zuvor zu machen.
      Leider sind auch die Operatoren, bzw. die Möglichkeiten sie anzuwenden extrem schlecht dokumentiert.
      Ich weiß es gibt die logischen Operatoren, sowie mathematische.Aber wie nutzt man sie korrekt, z.B. für algorithmische Pixeloperationen in einem Ritt?
      Nirgendwo habe ich dazu etwas Gutes gefunden.

      Danke für deine Hilfe.Leider kann ich damit nichts anfangen, da das Problem mit den mir bekannten Dokus nicht klar lösbar ist.Außerdem gehen deine Links nicht.

      Kommentar


      • #4
        Außerdem gehen deine Links nicht.
        Komisch, bei mir schon ...

        Kommentar


        • #5
          Jetzt ja.Ist die Doku, die ich auch habe.

          ich habe jetzt erfolgreich mittels Edge Detection aus zwei Bildern das realisiert, was ich wollte.Aber zeig mir doch mal, wo ich das Mittel zur Durchführung in einem Schritt finden soll.

          Zu fx ist kaum eine Dokumentation, bzw sie ist schwer verständlich.Das Problem ist, dass mir nicht ersichtlich ist, wie man einem Befehl beibringt alle Pixel durchzugehen, Nachbar zu prüfen und je nach Fall anders zu malen.

          Kommentar


          • #6
            Weil ich Imagemagick nicht kenne, und damit nicht arbeite weis ich auch nicht, was geht und was nicht, deshalb meinte ich auch »nachgucken«.

            Aber zeig mir doch mal, wo ich das Mittel zur Durchführung in einem Schritt finden soll.
            Komisch, von sowas hab ich nichts geschreiben.

            Kommentar


            • #7
              Okay, ich hatte hier eigentlich gehofft, dass sich die melden, die mir direkt helfen können und nicht einfach nur eine Hilfe gegen den Kopf knallen, ohne deren Qualität zu kennen.

              Kommentar


              • #8
                Tja, von einen PHP - Fortgeschrittenen erwarte ich einfach etwas mehr als nur eine Fragestellung.
                Was haste denn bisher versucht ?

                Wenn es mit Imagemagick nicht geht, musste halt das mit der GDlib machen, klar dauert länger, verbraucht mehr Speicher, aber wäre machbar.
                Zumal du ja auch alle Pixelwerte haben willst, naja rein logisch gesehen kannste gleich das Bild pixelweise abtasten.

                Kommentar


                • #9
                  Ich hab jetzt mit Imagemagick ein Bild "vorgerendert".Das Resultat ist eine schwarze Linie und ein transparenter Hintergrund.Dieses Bild kann ich nun über die ursprüngliche Karte legen und erreiche so mein Ziel.Das Problem ist, dass ich immernoch nicht zufrieden bin, da der Rahmen nicht 1pxl breit ist.

                  Eine weitere Methode ist das Abtasten und die Verarbeitung mit GDlib.
                  Da ich aber noch keinen alleinigen Server besitze, bekomme ich bei etwa 500 Berechnungen pro Tag auf jeden Fall ernsthaftere Probleme.

                  Kommentar


                  • #10
                    da der Rahmen nicht 1pxl breit ist
                    Hmm, weis jetzt nicht was du damit meinst, so hätte ich jetzt an Wetterkarten gedacht

                    Aber bei Imagemagick kenne ich keine Methode um die Pixelwerte in ein Array zu packen.
                    Das Bild muss ja irgendwie abgetastet werden, um überhaupt daran zu kommen.

                    500 Berechnungen pro Tag
                    Jo ist richtig, mal über andere Lösungen nachgedacht ?
                    Vielmehr kann ich auch nicht dazu schreiben, da ich dein Vorhaben nicht kenne.
                    Kannst ja mal mehr dazu schreiben, vieleicht kommen andere Leser noch auf eine andere Lösung.

                    Kommentar


                    • #11
                      Also, du hast richtig erkannt, es geht um Wetterkarten, allerdings ist das ja egal.

                      Ich möchte eben Plotkarten (Farbflächen) darstellen und die Grenzen eben als Isobare, Isotherme etc darstellen.
                      Am besten sieht das natürlich aus, wenn der Rahmen 1px breit ist, das heißt an keiner Stelle mehr als 2 Pixel an einen anderen grenzen.

                      Kommentar


                      • #12
                        Also, du hast richtig erkannt, es geht um Wetterkarten, allerdings ist das ja egal.
                        Naja, habe mal mit Fax-Karten bzw. Meteo-Karten zu tun gehabt, deshalb meine Vermutung.
                        Könnte man da nicht etwas mit Vorlagen etc. machen ?
                        Oder sind die Karten immer wieder neue ?
                        Wobei ich sowas garnicht kenne, meist sind ja die Gebiete oder Regionen gleich, nur mit unterschiedlichen Angaben.

                        Hmmm, Versuche nur eine Lösung zu finden ...

                        Kommentar


                        • #13
                          Die Karten ändern sich alle 5 Minuten

                          Kommentar

                          Lädt...
                          X