always get 255 in sum
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Sneha
el 18 de Dic. de 2017
Comentada: Sneha
el 18 de Dic. de 2017
I am getting the value 255 all the time in the below loop. P is an lena image of size m*n*3 (m=256,n=256). Actually i need the sum of all pixel values in the entire image. sum=0;
for i=1:3
for j=1:256
for k=1:256
sum = sum+P(j,k,i)
end
end
end
Please help me to solve the problem.
5 comentarios
Stephen23
el 18 de Dic. de 2017
Do NOT use the variable name sum, as sum is the name of a very important inbuilt function.
Respuesta aceptada
James Tursa
el 18 de Dic. de 2017
Variable P is likely class uint8. Assuming this is true, the summing is done as uint8 which clips at the highest value of 255 for this class. To get around this, do the sum as double instead. E.g.,
Psum = sum(double(P(:)));
Note that I am calling the MATLAB function sum, and NOT using sum as a variable name.
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Get Started with MATLAB en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!