Issue 35 in libmv: Infinit loop in fivepoints

45 views
Skip to first unread message

li...@googlecode.com

unread,
Jun 11, 2012, 8:18:18 AM6/11/12
to libmv...@googlegroups.com
Status: New
Owner: ----
Labels: Type-Defect Priority-Medium

New issue 35 by gmanfred...@gmail.com: Infinit loop in fivepoints
http://code.google.com/p/libmv/issues/detail?id=35

What steps will reproduce the problem?
1. Use the five points algorithm some hundreds of times

What is the expected output? What do you see instead?
The expected output is a matrix E (essential matrix).
Instead, the program is bloqued like in infinit loop, but doesn't crash nor
freeze.

What version of the product are you using? On what operating system?
Ubuntu 11.04, libmv 0.1

Please provide any additional information below.



li...@googlecode.com

unread,
Jun 11, 2012, 8:29:19 AM6/11/12
to libmv...@googlegroups.com

Comment #1 on issue 35 by p...@mikrosimage.eu: Infinit loop in fivepoints
http://code.google.com/p/libmv/issues/detail?id=35

Could you try to see in which method the infinite loop occur ?
Or try to reproduce the problem on the input that make the infinit loop.

li...@googlecode.com

unread,
Jun 11, 2012, 8:47:52 AM6/11/12
to libmv...@googlegroups.com

Comment #2 on issue 35 by gmanfred...@gmail.com: Infinit loop in fivepoints
http://code.google.com/p/libmv/issues/detail?id=35

This may not be an infinit loop, but definitly looks like.

Method : libmv::FivePointsRelativePose

Points 1 : 0.3239 -0.2116 -0.322 -0.2078 -0.2105
-0.1756 -0.07086 -0.06697 0.002711 -0.03375
Points 2 : 0.3239 -0.2116 -0.322 -0.2078 -0.2105
-0.1756 -0.07086 -0.06697 0.002711 -0.03375

Both array are identic, may it cause a fail ?

Pierre Moulon

unread,
Jun 11, 2012, 8:57:04 AM6/11/12
to libmv...@googlegroups.com
I think the infinite loop can occur in this function
FivePointsNullspaceBasis 

=> Could you check it ?

SVD could fall in infinite loop with bad conditionned input matrix.

Regards,

li...@googlecode.com

unread,
Jun 15, 2012, 10:24:00 AM6/15/12
to libmv...@googlegroups.com

Comment #3 on issue 35 by gmanfred...@gmail.com: Infinit loop in fivepoints
http://code.google.com/p/libmv/issues/detail?id=35

On 06/11/2012 02:47 PM, guido wrote:

From what I see, the infinit loop is not in FivePointsNullspaceBasis,
but in :

five_point.cc : 35 : 211 : Eigen::EigenSolver<Mat> es(At);

Some checking may be required to return and error rather than entering
this function.

Pierre Moulon

unread,
Jun 15, 2012, 10:30:10 AM6/15/12
to libmv...@googlegroups.com
I think determinant of At is very small. It why the EigenSolver cannot find a valid solution.

E_basis may have also a very small determinant in your case.

But sending two times the same point as it arrive in your case must not happen.
Rt solver consider that at least a rotation and a translation exist between input points.




--
Regards/Cordialement,
Pierre M

li...@googlecode.com

unread,
May 10, 2015, 6:15:54 PM5/10/15
to libmv...@googlegroups.com
Updates:
Status: WontFix

Comment #4 on issue 35 by mie...@gmail.com: Infinit loop in fivepoints
https://code.google.com/p/libmv/issues/detail?id=35

We are closing out the Google Code project and moving. If you still have
this issue, please open it again (and I'll take a look) over at
developer.blender.org.

https://developer.blender.org/tag/libmv/

--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings
Reply all
Reply to author
Forward
0 new messages