Zum Forum springen
Benachrichtigungen
Alles löschen

Noobfrage: matlab matrix quadrieren

7 Beiträge
3 Benutzer
0 Reactions
5,316 Ansichten
colonelj
Beigetreten: 02.05.2006
Oldschool Grinder

hey
ziemliche dumme frage:

A = [-20.3992 14.2323 13.2220 ; -24.2200 -423.0000 -234.2000];

A.^2

kommt totaler quatsch raus, wohingegen das ergebnis bei

A(1,1)^2

stimmt.


Antwort
Zitat
6 Antworten
Coach
Samy89
Beigetreten: 18.06.2007
Oldschool Grinder

was denn das prob bei A * A?
Spalte * Zeile, einfach so vorgehen. schau dir ansonsten einfach nochmal die Matrixmultiplikation an


Antwort
Zitat
colonelj Themenstarter
colonelj
Beigetreten: 02.05.2006
Oldschool Grinder

>> A*A
Error using *
Inner matrix dimensions must agree.


Antwort
Zitat
DoktorRob
Beigetreten: 17.07.2008
PokerStrategist

Das Problem ist obv, dass die Matrix nicht quadratisch ist....

Meinst du komponentenweie Quadrieren? Dann sollte eigentlich A.^2 funktionieren..


Antwort
Zitat
colonelj Themenstarter
colonelj
Beigetreten: 02.05.2006
Oldschool Grinder

ok das ist auch nur ein testbeispiel.
ich bin dabei die SSIM Metrik für bildqualitätsbewertung in matlab zu programmieren.

grundsätzlich geht es um eine Lena256x256 bild.
von diesem Bild zieh ich den mittleren Grauwert ab.
Somit bekomm ich eine matrix mit teils negativen elementen vom typ double.

diese werte will ich quadrieren.

wenn ich jedoch A.^2 ausführe oder (A).^2 kommen nur Werte im Bereich
von 0-1 raus.
Beispielsweise wird aus -20.5391 komischerweise 0.0422


Antwort
Zitat
DoktorRob
Beigetreten: 17.07.2008
PokerStrategist

lulz....

Du hast als Ausgabe sicherlich:

ans =

1.0e+05 *

0.0042 0.0020 0.0017
0.0059 1.7893 0.5485

Die erste Zeile bedeutet, dass die Zahlen mit 10^5 zu multiplizieren sind. Hat den Sinn, das die Zahlen nicht zu lang werden....


Antwort
Zitat
colonelj Themenstarter
colonelj
Beigetreten: 02.05.2006
Oldschool Grinder

haha danke vielmals

<- trottel


Antwort
Zitat
Teilen: