annotate general/numerical/pdev.m @ 61:eff6bddf82e3 tip

Finally implemented perceptual brightness thing.
author samer
date Sun, 11 Oct 2015 10:20:42 +0100
parents 8476b3d9d295
children
rev   line source
samer@4 1 function N=pdev(p,A,D)
samer@4 2 % pdev - p-deviation, generalisation of stddev for exponents other than 2
samer@4 3 %
samer@4 4 % pdev :: nonneg, [[D1]], I:natural -> [[D2]].
samer@4 5 % pdev :: nonneg, [[N D]] -> [[ 1 D]].
samer@4 6 %
samer@4 7 % where D2 = set(D1,I,1), ie the Ith dimension is
samer@4 8 % collapsed. I defaults to 1. The p-deviation is defined as
samer@4 9 % pdev(p,x,i) = mean(abs(x).^p,i).^(1/p)
samer@4 10 %
samer@4 11 % See also pnorm.
samer@4 12
samer@4 13 if nargin<2, D=1; end;
samer@4 14
samer@4 15 if p==2
samer@4 16 N=sqrt(mean(abs(A).^2,D));
samer@4 17 else
samer@21 18 N=real(mean(abs(A).^p,D).^(1/p));
samer@4 19 end
samer@4 20
samer@4 21