Effacer les filtres
Effacer les filtres

My improfile results get shorter

1 vue (au cours des 30 derniers jours)
Hoyong Yie
Hoyong Yie le 5 Fév 2020
This might be a simple or dumb question but please help
I'm brand new to MATLAB and am trying to get intensity data out of images using improfile.
This image 'A' is a 422 X 85 image (gray scale) and I'm using the function as I1=improfile(A,[1 1],[1 422]), I2=improfile(A,[2 1],[2 422]) ...
The first I1 result gives me '422 X 1' size, but then it keeps getting shorter afterwords. (I2 - 421X1, I3 - 420X1, ...)
Am I doing something wrong?
Thanks in advance for your help.

Réponse acceptée

Walter Roberson
Walter Roberson le 5 Fév 2020
This is expected. The number of pixels used is probably max() of delta x and delta y, with it producing one result for each integer offset in that space
  4 commentaires
Walter Roberson
Walter Roberson le 6 Fév 2020
Modifié(e) : Walter Roberson le 6 Fév 2020
N = 256;
start_at = [17 1];
end_at = [17 242];
x_path = linspace(start_at(1), end_at(1), N);
y_path = linspace(start_at(2), end_at(2), N);
I17 = interp2(double(A), x_path, y_path);
For this purpose remember that y corresponds to height, which is rows, the first index of A, and x corresponds to width, which is columns, the second index of A.
Image Analyst
Image Analyst le 6 Fév 2020
Here is how they define the number of pixels: "improfile chooses a value for n, roughly equal to the number of pixels the path traverses."

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by