2016-09-29 2 views
0

Ich habe eine Funktion verwendet, um den Schwellenwert für BayesShrink zu berechnen. Normalerweise gibt das Ergebnis der Schwelle mir einen Wert. Wenn ich ein Bild mit der Größe 128 * 128 verwende, funktioniert der Code, aber mein Bild hat eine Größe von 380 * 992. Das Ergebnis gibt mir eine Matrix oh Schwelle 1 * 992. bitte können Sie mir helfen mit:Schwellenwert für BayesShrink

  • x: Das Bild
  • sigmahat = Median (abs (x))/0,6745;

dies ist der Code: %

function threshold=bayes(X,sigmahat) 

    len=length(X); 
    sigmay2=sum(X.^2)/len; 
    sigmax=sqrt(max(sigmay2-sigmahat.^2,0)); 
    if sigmax==0 threshold=max(abs(X)); 
    else threshold=sigmahat.^2/sigmax; 
    end 
thank you 

Antwort

0

eine erste Leitung mit der Funktion hinzufügen:

X = X (:);

0

Laut der Originalarbeit von Chang, sollten die Bildmaße eine ganzzahlige Potenz von 2 sein.

Verwandte Themen