23 lines
		
	
	
		
			597 B
		
	
	
	
		
			Matlab
		
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			597 B
		
	
	
	
		
			Matlab
		
	
	
% Christian Potthast
 | 
						|
% simulate measurements
 | 
						|
 | 
						|
function [measurements,odometry] = simulate_measurements(map, pose, visibility, noise_sigma, odo_sigma)
 | 
						|
m = size(pose,2);
 | 
						|
n = size(map,2);
 | 
						|
measurements = {};
 | 
						|
odometry = {};
 | 
						|
k =1;
 | 
						|
for i = 1:m
 | 
						|
    js = find(visibility(1:n,i+n));
 | 
						|
    if size(js ,1) > 0
 | 
						|
        for j = js'
 | 
						|
            z = map(:,j)-pose(:,i)+randn(2,1)*noise_sigma;
 | 
						|
            measurement = struct('z',z,'i',i,'j',j);
 | 
						|
            measurements{k}=measurement;
 | 
						|
            k = k+1;
 | 
						|
        end
 | 
						|
    end
 | 
						|
    if i>1
 | 
						|
        odometry{i}= pose(:,i)-pose(:,i-1)+randn(2,1)*odo_sigma;
 | 
						|
    end
 | 
						|
end |