2016-04-15 1 views
0

Angenommen, ich habe ein Array von MxN Größe (M und N sind beliebig) in MATLAB, die ich auf (M/a) x (N/b) Größe verkleinern möchte.Wie bekomme ich ein Maß wie Standardabweichung von impresize auf Matlab?

Ich kann das mit imresize Funktion tun, aber ich brauche eine zusätzliche Maßnahme. Ich würde gerne wissen, was die Standardabweichung (oder ein ähnliches Maß) der Pixel des alten Bildes ist, das jedes der gruppierten Pixel des neuen Bildes gebildet hat.

Könnten Sie mich bitte in irgendeine Richtung weisen?

+0

sollten Sie in der Lage sein, die Standardabweichung des Bildes zu berechnen, vor und nach dem Ändern der Größe. Warum genau brauchst du das oder was erhoffst du zu finden? – Suever

+0

hi, ich bin nicht daran interessiert, die Std des gesamten Bildes vorher und nachher zu wissen (was einfach ist). Nehmen wir an, A ist meine ursprüngliche Matrix (4x4) und B ist meine skalierte Matrix (2x2), gegeben durch 'imresize'. Ich hätte gerne eine C-Matrix, die wieder 2x2 sein würde, die die Standardabweichung (oder allgemein die Intensitätsvariation) von jedem 4 Pixel von A enthalten würde, die verwendet wurden, um jedes Pixel von B zu berechnen. Ich hoffe, dass es macht mehr Sinn – user3367364

+0

@ user3367364 Es ist viel besser, diese Informationen in Ihre Frage als Kommentare zu integrieren. Ich bin mir immer noch nicht ganz sicher, was du machen willst. Sie haben eine viel höhere Wahrscheinlichkeit, eine nützliche Antwort zu erhalten, wenn Sie eine kleine vollständige und überprüfbare Antwort erstellen, die Ihnen das Problem deutlich vor Augen führt (z. B. ein [mcve] (https://stackoverflow.com/help/mcve)). – kkuilla

Antwort

0

Es hängt von der Methode der Größenänderung ab, aber vielleicht können Sie das versuchen? wenn die Bilder sind I und die verkleinerten Bilder sind Ismall

Isquared = I.^2; 
IsqSmall = imresize(Isquared,size(Ismall)); 
Istd = sqrt(IsqSmall-Ismall.^2) 

Dies ist seit

sigma = sqrt(sum(x.^2)-mu.^2) 
+0

nur zur Vermeidung von numerischen Problemen versuchen Istd = sqrt (abs (IsqSmall-Ismall.^2)) oder Istd = sqrt (max (IsqSmall-Ismall.^2,0)) – aarbelle

Verwandte Themen