What does the following code do?

1 visualización (últimos 30 días)
Ba Ba Black Sheep!
Ba Ba Black Sheep! el 1 de Oct. de 2017
Comentada: Ba Ba Black Sheep! el 1 de Oct. de 2017
If we have,
[row_num, col_num] = size(img);
What does the following code do?
function length_vec = compute_angular_length(row_num, col_num, amplitude_ang)
% function that calculates the maximum size in a diagonal image with
% inclination from 0 to 180° for each amp_ang degrees.
%
% length_vec = compute_angular_length (row_num, col_num, amplitude_ang)
%
% calculate the value of the angle for which I have the main diagonal
alpha_rad = atan2( row_num, col_num );
alpha = rad2deg(alpha_rad);
n_ang = floor(180/amplitude_ang);
length_vec = zeros(1, n_ang);
for i=1:n_ang
ang = (i-1)*amplitude_ang;
if (ang <= alpha || ang >= 180 - alpha )
length_vec(1,i)= abs(col_num / cos( deg2rad(ang)));
else
length_vec(1,i)= abs(row_num / cos( deg2rad(90 - ang)));
end;
end;
What does it mean by angular length?
  2 comentarios
Cedric
Cedric el 1 de Oct. de 2017
What is it that you don't understand?
Ba Ba Black Sheep!
Ba Ba Black Sheep! el 1 de Oct. de 2017
What does this code accomplish?

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 1 de Oct. de 2017
Imagine that you are starting from one corner of a rectangular matrix, and you are drawing a line from there to somewhere on one of the opposite edges. What is the length of the angled line segment? This routine computes that, in increments of amplitude_ang degrees.

Más respuestas (0)

Categorías

Más información sobre Data Distribution Plots en Help Center y File Exchange.

Etiquetas

Aún no se han introducido etiquetas.

Community Treasure Hunt

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

Start Hunting!

Translated by