function [Int]=imgIntegral(I)
% Int=imgIntegral(I) calcula la imagen integral de la img de entrada I
%______________________________________________________________________%

%______________________________________________________________________%
%                                                                      %
% NOMBRE DEL FICHERO:   Int=imgIntegral(I)                             %
%                                                                      %
% RECIBE: Imagen en niveles de gris                                    %
% DEVUELVE: La misma imagen integral                                   %
% ALGORITMO EMPLEADO: 2 sumas y 2 restas para calcular cada pixel      %
% VARIABLES:   I = imagen introducida                                  %
%              Iint = imagen integral resultante                       %
%              filas = numero de filas de la imagen                    %
%              columnas = numero de columnas de la imagen I            %
%              i = variable contador para recorrer las filas de la img.%
%              j = variable contador para recorrer las columnas        %
% HISTORIAL:                                                           %
%       +Fecha de realizacion: 14/04/2016                              %
%       +Autor: Eusebio de la Fuente                                   %
%       +Version: 1.0                                                  %
%       +Cambios: -                                                    %
%       +Descripcion de los cambios: -                                 %
%                                                                      %
%______________________________________________________________________%


%______________________________________________________________________%
%  Ejemplo de ejecucion:                                               %
%----------------------------------------------------------------------%
%                                                                      %
% >> Ient = imread('textoMalaLuz.bmp');                                %
% >> B= binAdaptativo(Ient,32);       %llama a imgIntegral             %
% >> imshow(B);                                                        %
%______________________________________________________________________%


[filas,columnas]=size(I);
I=double(I);
Int=zeros(filas,columnas);
Int=double(Int);
Int(1,1)=I(1,1);

for i=2:filas
    Int(i,1)=I(i,1) + Int(i-1,1);
end


for j=2:columnas
    Int(1,j)= I(1,j) + Int(1,j-1);
end


for i=2:filas
    for j=2:columnas
        Int(i,j)= I(i,j) + Int(i-1,j) + Int(i,j-1) - Int(i-1,j-1);
    end
end


end



                   