
Добавил:
debilX2
t.me
Фулл всегда есть, ФОЭ ТОЭ ТЭЦ Электроника, КЭТ ИиКГ и тд https://t.me/whitedevil752
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:lr_7 / untitled5
.m % main_sum_lognorm_noise
close all
clc
STEP = 1 %LogNormalNoise
m = 256; n = 256;
K = 1 % number of fields
% LOGNORMAL FIELD
med = 30
kv = 1 %parameters
[g,ro,muln,sigmaln,m1,std,var]=func_sum_lognorm(m,n,med,kv,K);
ro = ro % expectation-to-median ratio
muln = muln % ln(med)
sigmaln = sigmaln %
m1 = m1 % expectation
std = std % standard deviation
var = var % variance
g3 = 3*kv+kv^3 % k3=4 for kv=1
g4 = 16*kv^2+15*kv^4+6*kv^6+kv^8 % k4=38 for kv=1
k3 = g3*std^3
k4 = g4*std^4
% Parameter of the initial field
Mu = K*m1
Variance = K*var
Stdev = sqrt(Variance)
G3 = k3*K/(Stdev^3)
G4 = k4*K/(Stdev^4)
% Parameters of the resulting field
figure(1000), imshow(g,[]), title('SumLogNormalNoise');
gu8 = uint8(g./K);
maxgu8 = max(gu8(:)) %max value
mingu8 = min(gu8(:)) %min value
figure(100); imagesc(gu8); colorbar;
title('SumLogNormalNoise');
figure(101), imhist(gu8), title('SumLogNormalHistogram'), grid;
func_lognorm_hist_visual(gu8,muln,sigmaln,K,51); % nbins = 51
ts = input('STOP1','s');
STEP = 2
M = 8 % number of sample variants
MEAN = zeros(1,M); VAR = zeros(1,M); SIGMA = zeros(1,M);
NL = [1,2,5,10,20,50,100,256]; MN = zeros(1,M);
for k = 1:M % number of rows
N = NL(k);
Y = zeros(m,N);
for i = 1:m
for j = 1:N
Y(i,j) = g(i,j)/K;
end;
end;
[mean,var,sigma,gamma1,mn] = func_mean_var_calc(Y);
MEAN(k) = mean;
VAR(k) = var;
SIGMA(k) = sigma;
MN(k) = mn;
end;
MEAN = MEAN
VAR = VAR
SIGMA = SIGMA
MN = MN
STEP = 3
for k = 1:M
MU(k) = Mu/K;
SM(k) = Stdev/sqrt(K*MN(k));
SM(k) = SM(k)/sqrt(K);
D1(k) = MU(k) + SM(k);
D2(k) = MU(k) - SM(k);
xiLo(k)=chi2inv(0.95,MN(k));
xiUp(k)=chi2inv(0.05,MN(k));
DILo(k) = MN(k)*var/xiLo(k);
DIUp(k) = MN(k)*var/xiUp(k);
end;
plot(x,var*ones(size(x)),x,DIUp,x,DILo),
title('Выборочная дисперсия'),
xlabel('Число выборок'), ylabel('VAR');
x = 256:256:M*256;
figure(300), plot(x,MEAN,'-*'), grid
hold on
plot(x,mu*ones(size(x)),x,D1,x,D2),
title('Выборочное среднее'),
hold on
END = 0
close all
clc
STEP = 1 %LogNormalNoise
m = 256; n = 256;
K = 1 % number of fields
% LOGNORMAL FIELD
med = 30
kv = 1 %parameters
[g,ro,muln,sigmaln,m1,std,var]=func_sum_lognorm(m,n,med,kv,K);
ro = ro % expectation-to-median ratio
muln = muln % ln(med)
sigmaln = sigmaln %
m1 = m1 % expectation
std = std % standard deviation
var = var % variance
g3 = 3*kv+kv^3 % k3=4 for kv=1
g4 = 16*kv^2+15*kv^4+6*kv^6+kv^8 % k4=38 for kv=1
k3 = g3*std^3
k4 = g4*std^4
% Parameter of the initial field
Mu = K*m1
Variance = K*var
Stdev = sqrt(Variance)
G3 = k3*K/(Stdev^3)
G4 = k4*K/(Stdev^4)
% Parameters of the resulting field
figure(1000), imshow(g,[]), title('SumLogNormalNoise');
gu8 = uint8(g./K);
maxgu8 = max(gu8(:)) %max value
mingu8 = min(gu8(:)) %min value
figure(100); imagesc(gu8); colorbar;
title('SumLogNormalNoise');
figure(101), imhist(gu8), title('SumLogNormalHistogram'), grid;
func_lognorm_hist_visual(gu8,muln,sigmaln,K,51); % nbins = 51
ts = input('STOP1','s');
STEP = 2
M = 8 % number of sample variants
MEAN = zeros(1,M); VAR = zeros(1,M); SIGMA = zeros(1,M);
NL = [1,2,5,10,20,50,100,256]; MN = zeros(1,M);
for k = 1:M % number of rows
N = NL(k);
Y = zeros(m,N);
for i = 1:m
for j = 1:N
Y(i,j) = g(i,j)/K;
end;
end;
[mean,var,sigma,gamma1,mn] = func_mean_var_calc(Y);
MEAN(k) = mean;
VAR(k) = var;
SIGMA(k) = sigma;
MN(k) = mn;
end;
MEAN = MEAN
VAR = VAR
SIGMA = SIGMA
MN = MN
STEP = 3
for k = 1:M
MU(k) = Mu/K;
SM(k) = Stdev/sqrt(K*MN(k));
SM(k) = SM(k)/sqrt(K);
D1(k) = MU(k) + SM(k);
D2(k) = MU(k) - SM(k);
xiLo(k)=chi2inv(0.95,MN(k));
xiUp(k)=chi2inv(0.05,MN(k));
DILo(k) = MN(k)*var/xiLo(k);
DIUp(k) = MN(k)*var/xiUp(k);
end;
plot(x,var*ones(size(x)),x,DIUp,x,DILo),
title('Выборочная дисперсия'),
xlabel('Число выборок'), ylabel('VAR');
x = 256:256:M*256;
figure(300), plot(x,MEAN,'-*'), grid
hold on
plot(x,mu*ones(size(x)),x,D1,x,D2),
title('Выборочное среднее'),
hold on
END = 0