Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>For a super easy fix, go back to the scene and take the video again. This time, make sure the circle look like a circle.</p> <p>That being said, this is an interesting topic in the academia. I believe there's various solutions/articles that are aimed to solve this kind of problem. Base on your reputation, I believe you already know that, but still wanted to give Stackoverflow members a shot at answering this problem. So here it goes.</p> <p>For an easy fix, you can start with <a href="http://www.mathworks.com/matlabcentral/fileexchange/2805-trans-camera-view/content/func_transcameraview/func_transcameraview.m" rel="nofollow">this function</a>, by guessing the camera location by trial and error until you find an acceptable transformation to your image (a frame of the video). The function does not work right out of the box, you have to debug it a little bit.</p> <p>If you have access to the (virtual) scene of the image, you can take an image. Base on mutual feature points from the new image and the original image, register the two images (and get the transformation) (<a href="http://www.mathworks.com/matlabcentral/fileexchange/22337-robust-nonrigid-point-set-registration" rel="nofollow">ex1</a>, <a href="http://www.mathworks.com/matlabcentral/fileexchange/28305-estimaterigidtransform" rel="nofollow">ex2</a>).</p> <p>Finally, apply the same transformation to each frame of the video.</p> <p>To answer your second question, though the camera location is fixed, there may be objects moving in the scene. So applying the same transformation to every frame will only correct the objects that are still. So it's not ideal. In the end, it depends on what the aims of the project is and how this non/correction affects the project aims.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload