RGB Werte auslesen treibt mich zum Wahnsinn



  • Hallo alle beisammen.
    Dutzende Stunden ohne Fortschritt und 3 Nervenzusammenbrüche später seid ihr meine letzte Hoffung!
    Als Compiler/Programm nutze ich "Dev C++" und Windows.

    Hier mein Problem:

    Für eine Temperaturanalyse mit thermochramitschen Flüssigkristallen müssen Messbilder automatisiert ausgewertet werden.

    Konkret möchte ich ein Bild der festen Auflösung X,Y jeweils von jedem Pixel die Farbwerte (RGB) auslesen. Dann lasse ich ein bischen Hokuspokus-Algorythmen drüberlaufen (die ich schon vorprogrammiert habe)....

    Hatte schon den tollen Tipp erhalten OpenCV zu nutzen.
    Das ganze hat dazu geführt, dass ich Version 1.0, 2.0, 2.1 und 2.2 mit dutzenden Tutorials und sonstigen Tricks und stundenlanger Arbeit ausprobiert habe. Ohne Erfolg 😡

    Gibt es eine idiotensichere Methode aus einem Bild mit festen Auflösung die RGB Werte zu bekommen????
    Irgendwas einfaches, ohne OpenCV oder zumindest nur mit dem benötigten Teil....

    Bin echt verzweifelt, da ich 2Wochen lang nicht weiter mit meiner Studienarbeit gekommen bin.
    (bin Verfahrenstechniker und kein Informatiker ^^)

    Vielen vielen Dank schonmal für die Hilfe!



  • Oder gibt es vielleicht die Möglichkeit, das was OpenCV macht um an die Werte zu kommen, manuell aus eine der Dateien rauszukopieren und einzufügen?

    Wäre super, wenn irgendeiner eine Idee hat, da mir die Zeit davonrennt 😞
    Grüße
    Grunert



  • In welcher Form liegen diese Bilder denn vor!?



  • dot schrieb:

    In welcher Form liegen diese Bilder denn vor!?

    Wegen der Datenflut noch jpg.
    Kann ich aber auch genauso in bmp convertieren (wohl einfacher?!).
    (dafür gibt es sicher genügend java tools...).



  • Werden die Messbilder selber schon als JPG geliefert? Ist nämlich ein denkbar schlechtes Format für Messdaten, da die Daten dabei gefiltert (Tiefpass) und in Frequenzen zerlegt werden. Bei Einlesen wird das JPG-Bild wieder dekodiert und Pixel erzeugt. 😞
    Mein Favorit für Bilddaten ist PNG (http://libpng.org/pub/png/) (verlustlose Komprimierung).
    Es gibt für C/C++ diverse Bibliotheken, z.B.

    Um nur ein paar zu nennen. Da sollte der Zugriff auf die Pixeldaten "einfach" zu machen sein.

    Sind die Algorithmen noch unklar, ist ein Programm wie MATLAB (http://www.mathworks.de/products/image/?s_cid=global_nav) für allg. Messdatenauswertung (auch Bilddaten) ideal. Ist allerdings sehr teuer und nicht an allen Schulen/Uni's verfügbar.



  • Danke 🙂
    Habe es jetzt mit CImg-Lib versucht.
    Ist ja nur eine Header-Datei, die ich in den include ordner kopieren muss?

    Leider kommt, nachdem ich es über #include "CImg.h" eingebunden habe, der Fehler:

    D:\Dev-Cpp\include\CImg.h In member function `cimg_library::CImg<typename cimg_library::cimg::last<T, float>::type> cimg_library::CImg<T>::get_projections3d(cimg_library::CImgList<t>&, cimg_library::CImgList<tc>&, unsigned int, unsigned int, unsigned int, bool) const':

    😡
    Irgendeine Idee?

    p.s. habe den gleichen Fehler wenn ich es über

    #include "CImg.h"
    using namespace cimg_library;

    einbinde



  • Ich kann dir nur schwer davon abraten Dev-Cpp zu benutzen. Das Ding ist hoffnungslos veraltet. Was Besseres gibts hier. Abgesehen davon steht in der Zeile die du gepostet hast nur wo der Fehler auftritt, nicht um welchen Fehler es sich handelt...



  • dot schrieb:

    Ich kann dir nur schwer davon abraten Dev-Cpp zu benutzen. Das Ding ist hoffnungslos veraltet. Was Besseres gibts hier. Abgesehen davon steht in der Zeile die du gepostet hast nur wo der Fehler auftritt, nicht um welchen Fehler es sich handelt...

    Dann tue ich mir mal Microsoft an 😉

    die Zeile steht noch unter dem Error:

    7 D:\Dev-Cpp\include\CImg.h Segmentation fault



  • Offenbar kackt der Compiler ab xD
    Nimm mal lieber Visual C++, ist sowieso in jeder nur erdenklichen Weise besser 😉



  • Also scheint nun CImg zumindest zu akzeptieren, auch wenn es etwas unübersichtlicher ist, scheint er doch "einfacher" zu sein.
    Was etwas ärgerlich ist, dass mein in Dev C++ fehlerfreies Programm nun dutzende Fehler hat...

    Irgendwie habe ich die Felder/Arrays falsch iniziert.
    Vielen Dank, scheint nun endlich wieder voran zu gehen!

    Grüße
    Grunert


Anmelden zum Antworten