Wenn jemand Erfahrung mit der Bildanalyse hat, wäre Hilfe sehr dankbar! Ich bin sowohl bei RunProgram als auch bei OpenCV neu und in Python ziemlich rostig.
Ich habe ein in Python geschriebenes Skript, das OpenCV für die Bildverarbeitung verwendet. Grundsätzlich möchte ich das zurückgegebene Bild in JMP mit RunProgram öffnen. Ich war mir nicht sicher, wie ich vorgehen sollte, da ich mit der RunProgram-Funktion noch nicht vertraut bin. Ich habe die Dokumentation gelesen, die ich gefunden habe, aber mir fehlt definitiv etwas. Ich habe versucht, die Read-Funktion ("Blob") zu verwenden und dann << Bild hinzufügen (Blob setzen (Zeichen für Blob) ("..."). ")," png ") aber ich bekomme nur ein leeres Fenster.
Eines ist mir bei der OpenCV aufgefallen: Beim Abrufen der blauen Kanalwerte gibt es mehrere Listen in einer anderen Liste. Bei JMP, wenn Sie sich Beispiele anschauen, sind alle Werte in einer Liste. Was ist der Unterschied zwischen diesen Formaten? Gibt es eine Möglichkeit, zwischen ihnen umzuwandeln?
Eines der dokumentierten Skripte für den Blob, https://www.jmp.com/support/help/14/run-external-programs.shtml , erstellt eine Datentabelle aus der Ausgabe.
Soll ich die Werte für r, g, b in Python auf der Konsole ausdrucken, diese Methode verwenden, um sie in eine Datentabelle zu bringen, und dann das Bild auf diese Weise erstellen? Ich kann nicht wirklich sehen, wie die Verwendung dieser Methode effizient wäre, da die rgb-Werte so viel Text sind.
Um OpenCV von JMP aus aufzurufen, schlage ich vor, die 14.x-JMP-zu-Python-Brücke zu verwenden, die es JMP ermöglicht - Sie ahnen es -, Objekte direkt mit Python aufzurufen und auszutauschen. https://www.jmp.com/support/help/14/jmp-to-python-interfaces.shtml
pen51
Ich bin (noch) kein Python-Benutzer und kenne mich auch mit OpenCV nicht aus. Ich habe jedoch mit JMP-Images und Run Program gearbeitet.
JMP liest eine Grafikdatei als Matrix aus Farbnummern, z. B. die JSL-Anweisung Show (Color to RGB (-24727)). kehrt zurück
Farbe zu RGB (-24727) = {0, 0,376470588235294, 0,592156862745098};
Ist die Ausgabe von OpenCV ein binäres Objekt oder ein Bild? JMP kann eine Bilddatei automatisch lesen. Hier sind ein paar Ideen.
- img = blob << Get Image
- Speichern Sie Ihre Grafik mit OpenCV und geben Sie eine 0 oder 1 zurück. Wenn der Wert 1 ist, öffnen Sie das gespeicherte .jpg oder .png.
Das beigefügte Skript ist eines aus Kapitel 8 unseres Buches JSL Companion-Anwendungen der JMP-Skriptsprache, 2nd , das zeigt einige einfache Methoden zum Arbeiten mit Bildpixeln. Vielleicht möchten Sie auch einen Blick darauf werfen
https://community.jmp.com/t5/JMP-Add-Ins/Image-Analyzer/ta-p/23886 ; Es dokumentiert ein Add-In für die Bildsegment- und Farbanalyse.
Wenn Sie eine OpenCV-Beispielausgabe anhängen können, kann dies hilfreich sein.