How to use TFORMINV ?

2 views (last 30 days)
Guru Swaroop
Guru Swaroop on 28 Jul 2015
Answered: Guru Swaroop on 28 Jul 2015
I have just started to use Matlab's TFORMINV function. I have already looked up the documentation. I am trying to debug an issue in an existing code related to tforminv function.
When I run the code, I get the following error :
Error using tform>checkTform (line 89)
Function TFORMINV expected a TFORM struct as its first or second argument.
Error in tform (line 29)
[t, A] = checkTform(f, numout, varargin{:});
Error in tforminv (line 67)
varargout = tform('inv', nargout, varargin{:});
Error in train_detector>traversetree (line 357)
[pixel_a_x_lmcoord, pixel_a_y_lmcoord] = tforminv(tf2meanshape, pixel_a_x_imgcoord, pixel_a_y_imgcoord);
...
but, tf2meanshape seems to me of type TFORM. Here is the screenshot which shows that tf2meanshape is of type struct during debugging, but when I step into next line I am getting the above error :
Let me know if any additional information is required. Thanks in advance.
  3 Comments
Guru Swaroop
Guru Swaroop on 28 Jul 2015
you can right click the image, and select open image in new tab. In my system it is readable.
David Young
David Young on 28 Jul 2015
Edited: David Young on 28 Jul 2015
I can read the screenshot now, but I still can't see the code that produces tf2meanshape. It is an affine2d object, not a struct as required, so it's a question of whether you should be using maketform to make a struct instead, or whether you should be using its transformPointsInverse method to apply the transformation. You're not showing the code so it's hard to give advice.

Sign in to comment.

Accepted Answer

Guru Swaroop
Guru Swaroop on 28 Jul 2015
Thanks David, As you rightly pointed out, I had to use transformPointsInverse instead of tforminv.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!