Ask Your Question

Sai Kondaveeti's profile - activity

2019-11-12 04:28:41 -0600 received badge  Famous Question (source)
2017-05-31 04:42:57 -0600 received badge  Notable Question (source)
2017-04-13 17:42:06 -0600 received badge  Nice Question (source)
2016-10-21 11:00:19 -0600 received badge  Popular Question (source)
2015-07-31 13:02:51 -0600 commented answer Simple algorithm for tracking objects between frames

This could give you an idea.

2015-07-27 13:03:06 -0600 received badge  Enthusiast
2015-07-24 11:07:52 -0600 commented answer Units of Rotation and translation from Essential Matrix

By static scene I meant that the Frame1 and Frame2 are the same image i.e in the findFundamentalMat is inputed the exact same points. Which effectively means there is no rotation nor translation from the previous position.(Effectively the first camera and second camera positions are same, as I am assuming the first camera position as [identitiy|0], then the second camera position should also be [identitiy|0], atleast the rotation part may not be identity matrix, but the translation has to be zero )

2015-07-24 05:02:31 -0600 received badge  Autobiographer
2015-07-24 04:43:34 -0600 commented answer Units of Rotation and translation from Essential Matrix

Ok, So essentially the scale factor is constant. But then getting some [R|t] instead of [identity|0] for static scene , should either be calculation mistake or may be due to SVD . Is there any reason why this is happening? Programmatically I am solving this by ignoring the static frame as the [R|t] had certain values when Frame1= Frame2 . Thank you very much, you have pretty much cleared all my doubts and also added finer details for implementation like checking the feasible rotations and translations.

2015-07-24 03:59:07 -0600 commented answer Units of Rotation and translation from Essential Matrix

Thanks. For my Edit 2 : When finding the scaling factor lambda, (sx2, sy2, 1) = K(R|lambda*T)(X,Y,Z) The (X,Y,Z) are coordinates in Frame2 and sx2,sy2 are the pixel coordinates in Frame1 ? Assuming I have (X,Y,Z) for different keypoints , I will get a set of K values, for which I will take a median to estimate it. So Is this scaling factor changing or it is constant throughout motion? When I was doing the above method for a static scene, I was getting the some [R|t] instead of [identity|0] (The values of [R|t] was same for all static scenes incidentally ) , is that due to calculation errors or will the scaling factor make it nearly [identity|0]?

2015-07-24 02:32:13 -0600 commented answer Units of Rotation and translation from Essential Matrix

Thank you very much. I need little more clarity on convention of the coordinates. So camera origin c is position of camera in world coordinates, which keep changing if the scene changes? My understanding is that after finding Fundamental matrix(findFundamentalMat) from from the common keypoints of Frame1 and Frame2, from which R,t are extracted from Essential matrix. The camera position at Frame1 is subjected to R rotation and t translation will give camera position at Frame2. Is that right or wrong?

2015-07-24 02:08:15 -0600 received badge  Scholar (source)
2015-07-24 02:08:13 -0600 received badge  Supporter (source)
2015-07-24 02:00:31 -0600 received badge  Student (source)
2015-07-23 13:37:46 -0600 received badge  Editor (source)
2015-07-22 23:27:36 -0600 asked a question Units of Rotation and translation from Essential Matrix

I obtained my Rotation and translation matrices using the SVD of E. I used the following code to do so :

    SVD svd(E);
    Matx33d W(0, -1, 0, 1, 0, 0, 0, 0, 1);    
    Mat_<double> R = svd.u * Mat(W) * svd.vt; 
    Mat_<double> t = svd.u.col(2);
    Matx34d P1(R(0, 0), R(0, 1), R(0, 2), t(0), R(1, 0), R(1, 1), R(1, 2), t(1), R(2, 0), R(2, 1), R(2, 2), t(2));

I want to know what are the units of R and t ? When I calibrated the cameras I got the baseline distance in cm , So is the translation vector units also in cm ? Also what are the units of R?

P.S : I have read the following question on Stackoverflow , but it had actually confused me as no answer was accepted. Also I wanted to know if the translation vector I got is it in the world frame?(Is it the real world distance moved from the initial position)

EDIT 1: I have also observed that the values are normalized for the translation vector i.e x^2+y^2+z^2 is nearly 1. So how do I get the actual vector?

EDIT 2: I have read the following question in Stackoverflow and I think I will be implementing it. Don't know if there is any better way.