Beispiel 3

  • könnte ich einem Tutor mal meine Code-Files schicken und bissl Feedback zu den 2 Dingen bekommen?


    Weiters hab ich jetzt evc_histshow.m soweit implementiert, jedoch bin ich mir nicht sicher, ob ich es richtig gemacht habe. Kann ich meinen Code einem Tutor schicken für ein bisschen Feedback? Das wäre echt klasse, danke!


    Hallo könnte sich einer von den Tutoren meinen histshow ansehen? Ich hab irgendwie den falschen Wertebereich:


    Ja, schick mir den Code.

  • wenn aber mein binärbild nur zweidimensional sein darf, wie kanns dann sein dass das binärbild im gui (im bild der angabe) farben enthält?


    Weil es die Methode aus dem Post #280 verwendet. Die Zuweisung wird für alle Elemente einer Matrix ausgeführt, egal wie viele Dimensionen sie hat.

    Of course I don't see textures as images. Who would?


    Einführung in Visual Computing VU Übungsleiter 2012
    Visualisierung LU Tutor 2005-2007

  • Selbst setzen sollen wir die AFAIK gar nicht, nur entsprechend reagieren wenn sie auf 0 gesetzt ist, dann sollen wir ja das Binär-Bild invertieren.

    Computer games do not affect kids. If Pac-Man had affected us as kids, we'd all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music.


    Never argue with idiots. They drag you down to their level and beat you up with their experience.

  • soad : Danke für dein Feedback zu evc_histshow.m :) Kannst du mir vielleicht auch mit der Gamma-Korrektur helfen? Brauch da irgendwie einen Denkanstoß bzw. Hilfe, wie es richtig gemacht gehört. Speziell das mit dem Normalisieren in Verbindung von rgb2gray bereitet mir Kopfzerbrechen :(


    Irgendwie komm ich mit der saturierten Gamma-Korrektur nicht klar. :(


    Bevor ich rgb2gray aufrufe muss ich die Farbkanäle ja auf den höchsten Wert irgendwie normalisieren, oder? Da steh ich gerade am Schlauch -.- Das Normalisieren funktioniert doch genau so wie das mit dem Weißabgleich, dass ich die Matrizen mit dem Kehrwert des höchsten Wertes in der Matrix multiplizieren muss, oder? Wenn ich das so mache, dann kommt am Schluss ein viel zu helles Bild heraus...
    Wenn ich das ganze mit dem Normalisieren jedoch ignoriere, kommt als Ergebnis ein Bild raus, das im Prinzip genau so wie das Referenzbild ausschaut.


    Wie genau muss ich die Gamma-Korrektur nun implementieren?

  • soad : Danke für dein Feedback zu evc_histshow.m :) Kannst du mir vielleicht auch mit der Gamma-Korrektur helfen? Brauch da irgendwie einen Denkanstoß bzw. Hilfe, wie es richtig gemacht gehört. Speziell das mit dem Normalisieren in Verbindung von rgb2gray bereitet mir Kopfzerbrechen :(


    Warum willst du denn die Farbkanäle normalisieren? Bei der saturierten Gamma-Korrektur, geht es darum, die Gamma-Korrektur nur auf die Helligkeiten und nicht auf die Farben anzuwenden um so die Farben zu erhalten...

    Ines Janusch
    -------------------------
    EVC Tutorin 2014

  • Naja, der Post von michaellll hat mich darauf gebracht:


    Das input-Bild, das die Gamma-Correction-Methode bekommt, ist aber nicht normalisiert, ich hab da Farbwerte zwischen 0 und 2.35. Und wenn man rgb2gray damit aufruft, werden ja Werte über 1.0 einfach abgeschnitten, wenn ich das richtig verstehe. Deshalb habe ich versucht, das Bild mittels input.*(1/max(input(:)) zu normalisieren. Aber da kommt irgendwie überhaupt nicht das richtige Ergebnis raus.
    Und wenn ich das Bild so normalisieren würde, müsste ich es am Schluss wieder de-normalisieren, oder? Das hätte ich auch versucht, aber dann kommt ein viel zu helles Bild raus...
    Das Komische dabei ist auch, dass es unterschiedliche Ergebnisse gibt für verschiedene Eingabebilder. Manchmal passts perfekt mit dem Referenzbild überein, manchmal dann wieder überhaupt nicht... :(

  • Naja, der Post von michaellll hat mich darauf gebracht:


    Das input-Bild, das die Gamma-Correction-Methode bekommt, ist aber nicht normalisiert, ich hab da Farbwerte zwischen 0 und 2.35. Und wenn man rgb2gray damit aufruft, werden ja Werte über 1.0 einfach abgeschnitten, wenn ich das richtig verstehe. Deshalb habe ich versucht, das Bild mittels input.*(1/max(input(:)) zu normalisieren. Aber da kommt irgendwie überhaupt nicht das richtige Ergebnis raus.
    Und wenn ich das Bild so normalisieren würde, müsste ich es am Schluss wieder de-normalisieren, oder? Das hätte ich auch versucht, aber dann kommt ein viel zu helles Bild raus...
    Das Komische dabei ist auch, dass es unterschiedliche Ergebnisse gibt für verschiedene Eingabebilder. Manchmal passts perfekt mit dem Referenzbild überein, manchmal dann wieder überhaupt nicht... :(


    Gut das mit dem Abschneiden war mir gerade nicht bewusst. Ich hab das mal kurz ausprobiert - ich denke, dass du schon richtig Normalisierst, aber wie du schon sagst, du musst diesen Vorgang auch wieder Rückgängig machen und zwar an der richtigen Stelle. Vielleicht lag da ja der Fehler. Nur als Tipp es macht einen Unterschied, ob du (2^2)*2 rechnest oder (2*2)^2...


    Du kannst aber auch die Funktion rgb2gray weglassen und die Umwandlung manuell machen, mit den Werten der Matlab-Funktion, dann umgehst du das Abschneiden ja auch.

    Ines Janusch
    -------------------------
    EVC Tutorin 2014

    Edited once, last by da*vinci ().

  • Du kannst aber auch die Funktion rgb2gray weglassen und die Umwandlung manuell machen, mit den Werten der Matlab-Funktion, dann umgehst du das Abschneiden ja auch.


    Ah, so kann ich es auch machen? Fein :) War mir nicht sicher, ob wir es so machen dürfen oder ob wir die rgb2gray Funktion verwenden müssen. Das mit dem manuellen Umwandeln macht es für mich viel leichter :D

  • Wie schaffe ich, dass das angezeigte Intervall meines Histogramms nicht kleiner als [0,1] wird?
    Ich habe zBsp bei Bild 0 nur Werte zwischen 0 und 0.7 und kann dann beim Histogrammclipping nich 1 zum Testen auswählen.

  • Hallo,


    eine Frage zu gui_white_balance.m. Die Funktion bt_new_Callback ruft das Pixel mit dem Weißabgleich über handles.input(x,y, :) auf. Sollte das nicht y,x sein, da die Bildern n x m in den Matrizen gespeichert werden? Ich bekomme die ganze Zeit Exceptions wenn ich in den falschen Bereich klicke. Hier der Code:



  • x und y solltest bereits du in evc_pick_point vertauschen ;)

    Of course I don't see textures as images. Who would?


    Einführung in Visual Computing VU Übungsleiter 2012
    Visualisierung LU Tutor 2005-2007

  • Hallo,


    eine Frage zu gui_white_balance.m. Die Funktion bt_new_Callback ruft das Pixel mit dem Weißabgleich über handles.input(x,y, :) auf. Sollte das nicht y,x sein, da die Bildern n x m in den Matrizen gespeichert werden? Ich bekomme die ganze Zeit Exceptions wenn ich in den falschen Bereich klicke. Hier der Code:




    Hrhmn, hast du in evc_pick_point auch wie in dem todo becshrieben x und y koordinate vertauscht? Die Vertauschung sollte ja da schon stattfinden.

    Andrea Diwald, Tutor für
    -Multimedia WS12
    -Multimedia Produktion:Materialien und Tools WS12
    -Management von Software Projekten WS12
    http://tu-quotes.soup.io/