WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

bilder zusammenfassen

 

stan

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.03.2011, 19:04     Titel: bilder zusammenfassen
  Antworten mit Zitat      
hallo allen, vielleicht könnt ihr mir helfen. ich muss aus 5 bildern 1 machen und dieses eine in einem histogramm darstellen. ich weiß nun nicht mit welchem befehl ich das am besten mache. die einfache addition (anschließend teilen durch 5) funktioniert nicht, da dies grauwertbilder sind und die maximalen werte von 255 nicht überschritten werden, also auch nicht addiert werden. wie kann ich das machen?

danke


Hubertus
Forum-Meister

Forum-Meister


Beiträge: 1.034
Anmeldedatum: 08.01.09
Wohnort: Hamburg
Version: ---
     Beitrag Verfasst am: 28.03.2011, 05:22     Titel:
  Antworten mit Zitat      
Moin,

zum Addieren von Bilder nimmst Du den Befehl: "imadd". Soll das Addieren nur eine einfache Übung sein oder spielen die Bildinhalte eine Rolle? Die kann man nicht so einfach addieren. Dafür gibt es eine interessante Technik, die sich "Superresolution" nennt. Es gibt dafür bereits mehrere Matlabanwendungen - siehe Google.

Einen schönen Tag

Hubertus
Private Nachricht senden Benutzer-Profile anzeigen
 
stan

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.03.2011, 10:37     Titel:
  Antworten mit Zitat      
danke erstmal für die antwort. zu den bildinhalten: es sind alles die gleichen bilder, welche beim aufnehmen minimale änderungen in den grauwerten von bild zu bild aufweisen (können). daher muss ich diese zusammenfassen (addieren und durch die 5 bilder teilen um auf den mittelwert zu kommen war nur eine idee) und in einem histogramm darstellen. jetzt habe ich bemerkt, dass wenn ich das mit dem befehl imadd mache, grauwerte die schon bei 255 liegen nicht addiert werden und ich dadurch falsche ergebnisse kriege, wenn ich anschließen teile. darüber hinaus kriege ich eine fehlermeldung beim teilen, da ich uint8 benutze wegen den grauwerten und beim teilen nicht immer ganze zahlen rauskommen können.
das ist keine übung, das gehört zu einem wissenschaftlichen versuch den ich auswerten muss.
gibt es nicht einen befehl mit welchem ich alle 5 bilder eingeben kann und dieser mir die durchschnittliche matrix der bilder ausgibt und ich das dann im histogramm darstellen kann?
 
aj.geissler
Forum-Guru

Forum-Guru



Beiträge: 251
Anmeldedatum: 26.11.07
Wohnort: Seeheim-Jugenheim
Version: ---
     Beitrag Verfasst am: 28.03.2011, 10:42     Titel:
  Antworten mit Zitat      
Hi,

anstelle von imadd würde ich folgendes vorschlagen:
Die Bildinhalte als Matrix behandeln. Die Grauwerde am besten in double oder uint32 wandeln.
Dann können die matrizen der 5 Bilder aufsummiert und ein Mittelwert gebildet werden.
Mit floor auf den ursprünglichen Wertebereich 0 ... 255 abrunden (uint8) und diese Matrix als Bild ausgeben bzw. eine Histogrammauswertung durchführen.

Grüße
Andreas
Private Nachricht senden Benutzer-Profile anzeigen
 
Hubertus
Forum-Meister

Forum-Meister


Beiträge: 1.034
Anmeldedatum: 08.01.09
Wohnort: Hamburg
Version: ---
     Beitrag Verfasst am: 28.03.2011, 10:51     Titel:
  Antworten mit Zitat      
Irgendwie habe ich Schwierigkeiten, Dein Problem zu verstehen. 255er Werte sind reinweiß. Diese zu addieren kann vielleicht in der Verrechnung zu Werten über 255 führen. Dafür verwendet man Verfahren mit Clipping, die oberhalb 255 die Werte beschneiden. Das ist aber normal, weil darüber hinaus nichts dargestellt werden kann. Es gibt einige Verfahren zur Histogrammnormierung, aber ich glaube, die helfen dann wohl nicht weiter.

Probleme der Teilung kannst Du umgehen, in dem Du die Daten in "double" wandelst, das ist ohnehin bei den allermeisten Funktionen erforderlich.
Private Nachricht senden Benutzer-Profile anzeigen
 
stan

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.03.2011, 15:13     Titel:
  Antworten mit Zitat      
danke für die antworten. habs jetzt. mein fehler lag daran, dass ich im uint8 gearbeitet habe. mit uint16 funktionierts auch.
 
Sco
Forum-Meister

Forum-Meister


Beiträge: 699
Anmeldedatum: 15.08.10
Wohnort: Dundee
Version: 2008a, 2010a
     Beitrag Verfasst am: 28.03.2011, 16:10     Titel:
  Antworten mit Zitat      
Hallo,

also wenn es nur um das Mitteln verschiedener Bilder geht, dann reicht es doch einfach aus alle Bilder in eine 3D Matrix zusammenzufassen und dann den Befehl "mean", angewendet auf die 3. Dimension, anzuwenden, oder sehe ich da was falsch?:
Code:

test (:,:,1) = [1 2;3 4] % z.B. Bild 1
test (:,:,2) = [11 22;33 44] % z.B. Bild2
>> mean(test,3)
ans =
     6    12
    18    24
 


MFG

Sco
Private Nachricht senden Benutzer-Profile anzeigen
 
Hubertus
Forum-Meister

Forum-Meister


Beiträge: 1.034
Anmeldedatum: 08.01.09
Wohnort: Hamburg
Version: ---
     Beitrag Verfasst am: 28.03.2011, 16:39     Titel:
  Antworten mit Zitat      
...oder sehe ich da was falsch?:

Nö, schaut gut aus!! Razz

Hubertus
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.