demonstration of collineation with inverse T interpolation

Petr Sladek (sladep1) & Milan Kratochvil (kratom4) at CTU Prague

Contents

interpolation uses inverse transformation

output image defines discrete [x,y]; [m n]=T^-1(x,y) returns brightness at [x,y] pixel

clear all;
% load passpoints (input image only)
load pta.mat;

im1 = im2double(rgb2gray(imread('test.png')));

input image

figure(1); clf;
imshow(im1);
axis on;
hold on;
%      X             Y component of ptAi correspondence
plot(ptA(1,:),ptA(2,:),'+b','MarkerSize',10,'LineWidth',1);

% forward collineation seed:
A = [1.0 -0.2 0;-0.1 1.5 0;0 0 1];
%A = [1 0 0;0 1 0;0 0 1];

% "crude" collineation
[imo T1] = imcollini(A,im1);

% get complete passpoints ptA->ptB
eval;
1: min= 1.148649e+000 max= 3.445946e+002 
2: min= 7.432432e-001 max= 2.229730e+002 
len of Tindex= 90000, len of Index=90000
size 300,300

output image

figure(2); clf;
imshow(imo);

axis on;
hold on;

%plot(ptB(1,:),ptB(2,:),'+b','MarkerSize',10,'LineWidth',1);