Find the inverse of a system of two polynomials

2 views (last 30 days)
Kai-Udo
Kai-Udo on 21 Nov 2014
Answered: Torsten on 21 Nov 2014
Hi,
I have a system of two polynomials that map a 2D position X,Y to a target 2D position X', Y'. The polynomials are of order 2 and have a set of coefficients, represented in the coefficient matrix A of size (2,12).
X'= X-(A(1,1)+A(1,2)*2*(X-A(1,11))./A(1,12)+A(1,3)*(2*(X-A(1,11))./A(1,12).^2)+A(1,4)*(2*(X-A(1,11))./A(1,12).^3)...
+A(1,5)*2*(Y-A(2,11))./A(2,12)+A(1,6)*(2*(Y-A(2,11))./A(2,12).^2)+A(1,7)*(2*(Y-A(2,11))./A(2,12).^3)...
+A(1,8)*2*(X-A(1,11))./A(1,12).*2*(Y-A(2,11))./A(2,12)+A(1,9)*(2*(X-A(1,11))./A(1,12).^2).*2*(Y-A(2,11))./A(2,12)+A(1,10)*(2*(Y-A(2,11))./A(2,12).^2).*2*(X-A(1,11))./A(1,12))
Y'= Y-(A(2,1)+A(2,2)*2*(X-A(1,11))./A(1,12)+A(2,3)*(2*(X-A(1,11))./A(1,12).^2)+A(2,4)*(2*(X-A(1,11))./A(1,12).^3)...
+A(2,5)*2*(Y-A(2,11))./A(2,12)+A(2,6)*(2*(Y-A(2,11))./A(2,12).^2)+A(2,7)*(2*(Y-A(2,11))./A(2,12).^3)...
+A(2,8)*2*(X-A(1,11))./A(1,12).*2*(Y-A(2,11))./A(2,12)+A(2,9)*(2*(X-A(1,11))./A(1,12).^2).*2*(Y-A(2,11))./A(2,12)+A(2,10)*(2*(Y-A(2,11))./A(2,12).^2).*2*(X-A(1,11))./A(1,12))
I wonder if you can help me find a solution for the inverse?
Thanks

Answers (1)

Torsten
Torsten on 21 Nov 2014
You may try MATLAB's 'solve' command.
If this does not work, insert numerical values for the coefficients and use fsolve.
In both cases, you will have to find the roots of the system
X' - above right-hand-side of first equation = 0
Y' - above right-hand side of second equation = 0
Best wishes
Torsten.

Categories

Find more on Polynomials in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!