Estimate pdf of image of a uniform distribution keeping the same number of points

90 visualizaciones (últimos 30 días)
T.C.
T.C. el 7 de Dic. de 2024 a las 22:40
Comentada: Jeff Miller el 11 de Dic. de 2024 a las 22:11
I have a initial vector , which is transformed in another vector w with the same length via a transformation which I would like to estimate the probability density function of. Moreover, i can assume that and . I would also like the estimated pdf to have the same length N as v and w. I found that a good way to do this might be using the function ksdensity (correct me if I am mistaken), but I do not know how to specify that my vector w comes initially from a uniform distribution and to specify that I want the pdf to be estimated in the points , so that it will be a vector of length N.
  7 comentarios
T.C.
T.C. el 8 de Dic. de 2024 a las 21:06
I am trying to use the fact that with f my pdf. So I plot the values of my equispaced v versus the values of and for each interval I compute the above probability by looking at the portion of the curve that is enclosed in the strip and .
T.C.
T.C. el 8 de Dic. de 2024 a las 21:08
@Walter Roberson thanks! I will look the file you referred, to see if at least my method above and that one match in some way

Iniciar sesión para comentar.

Respuestas (2)

Torsten
Torsten el 8 de Dic. de 2024 a las 15:16
Movida: Image Analyst el 8 de Dic. de 2024 a las 15:28
I'd first try what you get as the usual empirical probability density using something like
v = linspace(0,1,1000);
w = v.^2;
histogram(w,'Normalization','pdf')

Jeff Miller
Jeff Miller el 8 de Dic. de 2024 a las 18:18
A histogram seems quite useful but doesn't easily give the N pdf values that the OP wants.
If the transformation is monotonic, then you already have the cdf:
v = linspace(0,1,1000);
w = sqrt(v);
plot(w,v) % cdf of w
Knowing the length of each little w(k) to w(k+1) interval, it seems like you can work out the pdf in that interval (e.g., assuming it is flat) with something like this. That gives you one less than the number of pdfs you want, so you probably need to make an assumption about what is going on at one end or the other.
histogram(w,'Normalization','pdf')
cdfjumps = w(2:end) - w(1:(end-1));
mids = (w(2:end) + w(1:(end-1))) / 2;
pdfs = 0.001 ./ cdfjumps;
hold on
plot(mids,pdfs)
  12 comentarios
T.C.
T.C. el 11 de Dic. de 2024 a las 10:16
Yes. I mean, the situation is this. I start with an equispaced distribution of particles, i.e. an equispaced vector. The elements (i.e. particles in a given position) are advected in some way, and I consider the final distribution to be the image density. It may be that in some places there is a higher density of particles for instance
Jeff Miller
Jeff Miller el 11 de Dic. de 2024 a las 22:11
If you want to know the final distribution after advection, why not just construct the histogram of the particle positions after advection, as @Image Analyst suggested 9 Dec at 13:08 (I too think he meant positions instead of sizes)? As long as the starting positions are always the same (i.e., uniform), I don't see why you need to adjust the average post-advection positions for their initial distribution.

Iniciar sesión para comentar.

Etiquetas

Productos


Versión

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by