30 lines
		
	
	
		
			676 B
		
	
	
	
		
			Matlab
		
	
	
		
		
			
		
	
	
			30 lines
		
	
	
		
			676 B
		
	
	
	
		
			Matlab
		
	
	
|  | % create a linear factor graph | ||
|  | % The non-linear graph above evaluated at NoisyConfig | ||
|  | function fg = createGaussianFactorGraph()
 | ||
|  | 
 | ||
|  | c = createNoisyConfig();  | ||
|  | 
 | ||
|  | % Create | ||
|  | fg = GaussianFactorGraph; | ||
|  | 
 | ||
|  | % Create shared Noise model | ||
|  | unit2 = SharedDiagonal([1;1]); | ||
|  | 
 | ||
|  | % prior on x1 | ||
|  | I=eye(2); | ||
|  | f1 = GaussianFactor('x1', 10*I, [-1;-1], unit2); | ||
|  | fg.push_back(f1); | ||
|  | 
 | ||
|  | % odometry between x1 and x2 | ||
|  | f2 = GaussianFactor('x1', -10*I, 'x2', 10*I, [2;-1], unit2); | ||
|  | fg.push_back(f2); | ||
|  | 
 | ||
|  | % measurement between x1 and l1 | ||
|  | f3 = GaussianFactor('x1', -5*I, 'l1', 5*I, [0;1], unit2); | ||
|  | fg.push_back(f3); | ||
|  | 
 | ||
|  | % measurement between x2 and l1 | ||
|  | f4 = GaussianFactor('x2', -5*I, 'l1', 5*I, [-1;1.5], unit2); | ||
|  | fg.push_back(f4); | ||
|  | 
 | ||
|  | end |