function [B,Theta] = radon1(R,tau,sigma,I);

%                  [B,Theta]=radon1(R,tau,sigma,I) 
%
% Calcule la transformée de Radon (sinogramme) d'une image carrée
% I=I(-R:tau:R-tau,-R:tau:R-tau) apres l'avoir tronqué pour qu'elle soit
% localisée dans le disque D(0,R). Le pas angulaire (en radians) est égal à
% sigma. Theta désigne la suite des angles (en radians). Cette routine
% utilise la routine imrotate de MATLAB. L'angle est figuré en abscisse (de
% 0 a 2*pi). 

D=disque(R,tau);
I=D.*I;
I=I';
[M,M]=size(I); 
Theta1=[0:sigma:pi-sigma];
Theta2=[pi:sigma:2*pi-sigma];
l=length(Theta1);
B1=[]; 
for k=1:l
    Irot=imrotate(I,Theta1(k)*180/pi,'bilinear','crop'); 
    B1=[B1,(sum(Irot)*2/M)']; 
end
B=[B1, flipud(B1)];
Theta=[Theta1,Theta2]; 