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 |