Liu
Ren
CSD Ph.D. Student
Wean Hall 8205
268-3778
2.I use two points from the image to get the planar
perspective map.
One point determines " l". The other point determines
" a" and " b".
More points will get much more precise value
by a least squares fit.
3.However, in order to use the algebraic methods the
paper presented, some transformations should
be made , for the "l" I got is different from the
standard format in criminisi's paper .It means that
the world origin is translated in the reference plane.
So the H I got should be [a1Vx b1Vy l1],while
Criminisi's H is [aVx bVy
l]. "l" can be caculated but " a" and "b " is unknown. To compute
the Hz,
we need to know "a" and "b" although "l"
and "Alpha" are known now.I got " a" and "b " by
the
following way: [aVx bVy l] = s[a1Vx
b1Vy l1]Txy. "s " is a scale. Txy is the matrix of transformation.
Txy can be caculated by [a1Vx b1Vy
l1] and "l" .
4.To make the program more powerful, I provided several
kinds of constraints the user can specify
during modeling process. Combined with those constraints,
we can caculate the position of a point
when we can't find its corresponding point in the
reference plan,like the positoin of the book in the
second recovered model.Besides, by providing
this function,the program can deal with some paintings
in which the projective relationships are not
very well maintained by the painter.
5.I use Visual C++ 6.0 and Open GL to do the coding. (roughly 4,000 lines )
2.Using texture synthesis for texture retouching.