Найти угол между двумя подогнанными плоскостями в Matlab - PullRequest
0 голосов
/ 24 октября 2018

Я хочу найти угол между двумя плоскостями, которые были подогнаны к набору точек (x, y, z);здесь x и y - это положение пикселей, а z - значение интенсивности для положения (x, y).Я использовал функцию fit из Matlab , как показано ниже:

Для изображения 1:

Image1 = double(imread('Image1.png'));
x = 1:size(Image1,1);
y = 1:size(Image1,2);
z= Image1;
[xo,yo,zo] = prepareSurfaceData(x,y,z);

Для изображения 2:

Image2 = double(imread('Image2.png'));
x1 = 1:size(Image2,1);
y1 = 1:size(Image2,2);
z1= Image2;
[xg,yg,zg] = prepareSurfaceData(x1,y1,z1); 

Теперь я подгоняю плоскость к этим точкам изображения следующим образом:

% fitted plane for the first image
fc =fit([yo,xo],zo,'poly10','Normalize','on','Robust','Bisquare');
% fitted plane for the second image
fg = fit([yg,xg],zg,'poly10','Normalize','on','Robust','Bisquare');

Я строю эти подогнанные плоскости следующим образом:

figure
h1=plot(fc);
set(h1(1),'Edgecolor','none')
set(h1(1),'FaceAlpha','0.99')
set(h1(1),'FaceColor','green')
hold on
h2=plot (fg);
set(h2(1),'Edgecolor','none')
set(h2(1),'FaceAlpha','0.99')
set(h2(1),'FaceColor',[0.5 0.5 0.5])
hold off 

Я хотел бы измерить угол между подогнанными плоскостями fc и fg.Не могли бы вы подсказать, как я могу измерить угол между ними?

...