Effacer les filtres
Effacer les filtres

Volume of retinal lesion

1 vue (au cours des 30 derniers jours)
Mohammad Mehdi
Mohammad Mehdi le 23 Mar 2023
Greetings everyone,
I am trying to measure the volume of a retinal lesions in an image obtained using OCT. Each section parameters (X and Z parameters) and the distance between each scans are available. I studied a few paper and it seems that Cavalieri principle is the main method that have been used to measure the volume using the area (by ImageJ). I just wanted to be sure that the proposed method is the accurate method so I can measure the volume of lesions.
My scans of retinal lesion are atttached.
Proposed method to measure the retinal lesions:
It would be great if you could give me your opinion or any suggestions.
Thank you

Réponses (1)

John D'Errico
John D'Errico le 23 Mar 2023
It seems clear. You have multiple slices. Compute the area of each slice. At that point, you could just sum the area of each slice, multiplied by the thickness of a slice. That would be the rectangle rule, an entirely valid estimator.
The paper suggests using trapezoidal rule, a little better estimator of the volume.
And the implementation is trivial. Compute the area of each slice, as a vector of areas, one element for each slice. Then call trapz, giving it the slice thickness as the X argument.
help trapz
TRAPZ Trapezoidal numerical integration. Z = TRAPZ(Y) computes an approximation of the integral of Y via the trapezoidal method (with unit spacing). To compute the integral for spacing different from one, multiply Z by the spacing increment. For vectors, TRAPZ(Y) is the integral of Y. For matrices, TRAPZ(Y) is a row vector with the integral over each column. For N-D arrays, TRAPZ(Y) works across the first non-singleton dimension. Z = TRAPZ(X,Y) computes the integral of Y with respect to X using the trapezoidal method. X can be a scalar or a vector with the same length as the first non-singleton dimension in Y. TRAPZ operates along this dimension. If X is scalar, then TRAPZ(X,Y) is equivalent to X*TRAPZ(Y). Z = TRAPZ(X,Y,DIM) or TRAPZ(Y,DIM) integrates across dimension DIM of Y. The length of X must be the same as size(Y,DIM)). Example: Y = [0 1 2; 3 4 5] trapz(Y,1) trapz(Y,2) Class support for inputs X, Y: float: double, single See also SUM, CUMSUM, CUMTRAPZ, INTEGRAL. Documentation for trapz doc trapz Other uses of trapz codistributed/trapz gpuArray/trapz


En savoir plus sur Read, Write, and Modify Image dans Help Center et File Exchange




Community Treasure Hunt

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

Start Hunting!

Translated by