ENB339 lecture 9: Image geometry and planar homography
Newer version of this, visit robotacademy.net.au
In this lecture we discuss in more detail the equation of image formation, particularly their expression in matrix form using homogeneous coordinates. We then introduce the planar homography, a mapping from points in a world plane to the image plane, and show some examples of how this can be used for real problems.
Note there is an error at 25:55, I should use the inverse tomography H^-1. A much better discussion of homography can be found at Robot Academy.
Пікірлер: 102
Best lecture on vision ever heard. Thanks for sharing
Thanks for this video! Your lecture is really great and finally I understand some of those concepts!
Great, very helpful lecture with real-life examples. Thank you very much, best greetings from Poland!
I simply love the fluency and great capability of information transfer in this video, and would like to thank the professor so much.
@PeterCorke
9 жыл бұрын
Ahmad Ghafouri you might like to take a look at my Robotic Vision MOOC, it runs again in October, see moocs.qut.edu.au
Amazing lectures. It's awesome that the instructor has shared these very lucid lectures to allow the whole world to learn; gift to the world IMO. Love that the instructor mentions quick points often in the lecture that clarify subtle assumptions or reasons why things are why they are (other instructors often assume that student knows those which make it harder for the student to learn). I could follow the lecture in a single sitting without listening to it more than once. Beautifully done.
very clear explanation. Thanks for uploading this lecture material. Love it !
Thanks for sharing! Best Image Geometry lecture I have seen!
Congratulations for your amazing teaching skills and for your generosity. I understood everything and it was not even slightly boring, 35 mins felt like 5 mins! Thank you so much.
Nice stuff, easy to understand what the image geometry and homography matrix is.
Thank you for this amazing lecture. Can't explain it better than this.
Nice and dense bit rate without being overwhelming. You, sir, are a GOOD teacher.
Thank you for sharing this, really helped me to understand homography! Greeting from Croatia!
Very good lecture. Still struggling to find someone explaining the details of how this was all derived, but practically this is amazing. And moves along nicely.
Very clear and easy to follow. Thank you for an excellent lecture!
@PeterCorke
6 жыл бұрын
Thank you. A more polished version can be found at A much more polished version of this content can be found at robotacademy.net.au/masterclass/the-geometry-of-image-formation/ and lessons on many related topics can be found at robotacademy.net.au by topic or by searching keywords
One of the best lectures about CV I've encountered so far! Or also clarifies a few things which are more often used in computer graphics (the "w" co-ordinate in 3D rendering) which is a bit tricky to understand! Thanks a lot!!
@PeterCorke
6 жыл бұрын
You're welcome. Check out robotacademy.net.au for more lectures on CV topics. The video you watched is an incomplete set of classroom lecture recordings.
@TheSwaroopB
6 жыл бұрын
Thank you so much for the response! I'm definitely heading towards the entire series! :)
That was the most excellence courses I have experienced till now. Thank You Prof. Peter.
@PeterCorke
5 жыл бұрын
Thanks a lot. This is just a recording of a class room lecture. A much more polished version of this content can be found at robotacademy.net.au/masterclass/the-geometry-of-image-formation. You can also find individual short (5-10 minute) lessons on these topics and more at the Robot Academy.
@hamidmajidi117
5 жыл бұрын
Thank you a lot Prof. Peter.... I really need these courses for accomplishing my thesis. Thanks for your kindness and sharing your knowledge without any expectation.
Amazingly well taught lesson! Thank you very much for making this somewhat harsh topic so easily understandable.
@PeterCorke
7 жыл бұрын
Thanks for the kind feedback. I'm hoping to get a larger suite of material out this year, organized as lots of shorter segments. Will spread the word on this channel once that happens.
@mrquesito
7 жыл бұрын
Will be looking forward to it; I have worked with your material in the three universities I've studied so far and it always proved very useful!
Extremely helpful, thank you!
i really loved this lecture.
This is exactly how someone should teach.. Excellent
@PeterCorke
6 жыл бұрын
Thanks. This is just a recording of a class room lecture. A much more polished version of this content can be found at robotacademy.net.au/masterclass/the-geometry-of-image-formation. You can also find individual short (5-10 minute) lessons on these topics and more at the Robot Academy.
excellent work, It helped me a lot
Wow, super clean explanation for homography. Are slides from the lessons available?
wow You really know how to explain things!
Very good , thanks for sharing.
Thank you. It's very useful
Brilliant! Thank you :)
Wonderful lecture - it clarifies a lot. Where is the homography() function (at 24:31) in the MatLab toolbox? Is it a custom function? I cannot find any reference to it.
@AndreaDeCarolisADC
5 жыл бұрын
The Matlab function is part of the Machine Vision ToolBox: petercorke.com/wordpress/toolboxes/machine-vision-toolbox
May all presentations strive to be as good as this one.
@PeterCorke
6 жыл бұрын
Joey, glad you liked it. A much more polished version of this content can be found at robotacademy.net.au/masterclass/the-geometry-of-image-formation/
Thanks it's really helpful
i am greatful i stumbled upon this tutorial....
@PeterCorke
4 жыл бұрын
Thanks. This is just a recording of a class room lecture. A much more polished version of this content can be found at @t
sir, if left hand side in the equation shown at 21:53 is the co-ordinates of the points in the image plane, then shouldn't the homographic matrix be inverse of the matrix shown on the RHS?
This is excellent
Thanks for this video. Indeed, it simplifies complicated terms. I do have a question though... In your example (16:20), you show camera matrix which 3x4. In my camera though I have 3x3, hence I cannot multiply the P(4,0,0,1) with my C = [3x3] matrix to get the point in the picture. How to change my C = [3x3] into C = [3x4]???? It would be appreciated if you would could help me with my issue. Many thanks in advance!!
So clear!
great lecture
Thank you very much!!
thanks for the video.
Smooth lecture
How are the equations when using turntable and fixed camera? Is there a resource that explains the equations for the fixed camera and the rotating object?
great lecture, very interesting, thanks for uploading this! although it ended a bit su
awesome!
Thank you very much!
@PeterCorke
6 жыл бұрын
You're welcome. Check out robotacademy.net.au for more lectures on CV topics. The video you watched is an incomplete set of classroom lecture recordings.
Dear Peter, Thank you for such a wonderful teaching method. I have a project which basically computes the coordinate 3D point of an object in an image, I have Xi and Yi ( image pixel values for the center of the object I am tracking) and teta the degree angle of the image plane with respect to the center x-axis line. (consider teta as the value for the angle between the camera and the x-axis in 3D world when the camera is perpendicular to the y-axis and rotates around the z-axis) Is there a way to compute the ordinance in the world respecting the image pixel coordinance just by having these values?
@PeterCorke
3 жыл бұрын
No. Image coordinates correspond to a line in 3D space, so you need additional information. For instance if the object is on the ground.
What are the requirements for a matrix H to be a homography? I guess it would would have to be invertible (unless the planes are orthogonal), are there any more?
Very nice :)
where can i watch previous lectures
Hello Sir, Very nice and clear explanation .. Can you please upload video which based on Image sensor 2D to world coordinated 3D. It will be great if you can help students like us. Thank You
sir i really need advice for one of my projects...anyway i can get an email to clear my doubts
In the change of coordinates section, what are rho_u and rho_v? Are these the the horizontal/vertical sizes of the pixels in the sensor grid? Or the number of pixels in the horizontal/vertical direction?
@PeterCorke
2 жыл бұрын
Exactly!
Thank you Peter. 13.48, does rho mean the pixel size in x and y direction?
@PeterCorke
4 жыл бұрын
yes, I assume the pixels are square which they generally are
@ajit_edu
4 жыл бұрын
@@PeterCorke Thank you Peter. I was looking for this conversion for a while now. Got it from your lectures.
Amazing explanation! is it possible to calculate the coordinate of each point on object using the image taken by CCD camera by this method?
@PeterCorke
6 жыл бұрын
Only if the object is a plane. For a general 3D shape, sadly not.
@sahartabrizi6155
6 жыл бұрын
Thanks for the help.
Thank you very much Peter, I am using your toolbox a lot! There is an error in the homography function though: Undefined function or variable 'vgg_H_from_x_lin'. Error in homography (line 46) H = vgg_H_from_x_lin(p1, p2); I looked everywhere but could not find the function in the toolbox, is there a fix?
Hello at 28.05 how did you obtain that relationship Homogrphy matrix as a function of R,t,d,n
@PeterCorke
4 жыл бұрын
You'll find it in a number of books: mine, Robotics, Vision & Control; Hartley & Zisserman; Intro to 3D, etc.
Write the matrices in symbolic form and multiply them together. Then you can see under what set of parameters that term will be zero.
A much more polished version of this content can be found at robotacademy.net.au/masterclass/the-geometry-of-image-formation/
Can anyone tell me how to find the camera orientation(angles) respect to the perspective image
Good quality but fast delivery. Information per sec rate is bit high. If you are facing this issue set playback speed to 0.75
perspective rectification 24:00 nice!
It's included in my Machine Vision Toolbox, downloadable for free from petercorke.com. You'll also need to grab the file called contrib. zip as well
@senakawijayakoon
8 жыл бұрын
When invoke Homography function : H=homography(P1,P2) Why error message Undefined function or variable 'vgg_H_from_x_lin'. Error in homography (line 46) H = vgg_H_from_x_lin(p1, p2); is coming? Here P1 and P2 are 2by4 matrices
in 27 mins compare with 24:25s I think the matrix in 27mins should be Inverse.. Can anyone explain?
One thing confuses me. The Cathedral image.The trapezoid's bottom has more pixels than its top. Trapezoid is transformed into a rectangle. Therefore some pixels from its bottom has been thrown away. Or extra pixels have been added to the top. How did you do this? And if extra pixels were added to the top, which values have they been given?
@PeterCorke
4 жыл бұрын
It's not a matter of throwing away or adding. For every pixel in the output image we interpolate a value from the input image. So all output pixels are some mixture of pixels from the input image. This is covered in detail in the section on Image Warping, Sec 12.7.4 of the second edition
@user-vd6wb5ef8v
4 жыл бұрын
Hi, Peter, thank you for your reply. Given the age of this video I did not expect any reply, leave alone that quick one! It's impressive that you keep supporting your old works. Yes, I am aware about warping. Yet warping is not mentioned in this lecture, nevertheless the picture looks like warping was there. Do you mean that warping was not mentioned on order not to obscure the main point of the lecture which is Homography? Do you have similar lecture on Image Warping? I have an image of a plane rectangular surface distorted by perspective. I am interested in one point only. I know how to detect this point and get its coordinates within the distorted image. I need to calculate coordinates of this point in the un-destorted image. So I need to un-distort just one point. I guess that for this I do not need the whole power of Warping (including interpolation). But I need to know how Warp works to make my own warp to work with a singer point. Unless such one-point-warp function already exists
Thanks. This is just a recording of a class room lecture. A much more polished version of this content can be found at robotacademy.net.au/masterclass/the-geometry-of-image-formation. You can also find individual short (5-10 minute) lessons on these topics and more at the Robot Academy.
@NikhilNakhate
6 жыл бұрын
Hi Peter, The lecture is absolutely stunning. A lot of scattered information is found all over the internet but your lecture has it all. Just 2 doubts: 1. When you write the Camera matrix you write the inverse of the extrinsic parameter matrix. Is this a convention? 2. Isn't the matrix in 25:55 the inverse homography matrix?
@NikhilNakhate
6 жыл бұрын
Thanks, Peter. It clarifies my first question. But at 24:12 you mention that from plane 1p which is yellow we can go to 2p which is red using H. Where as at 25:55 you are going from the warped image which corresponds to 2p to 1p. Is the H different?
@PeterCorke
6 жыл бұрын
Nikhil, you are correct, I should use the inverse homography at 25:55. A better and correct version of this discussion can be found on the Robot Academy robotacademy.net.au/lesson/planar-homography at time 5:12. Thanks for pointing this out. The Robot Academy is the more polished version of the rough classroom lecture you were watching. Thanks again for your interest.
@NikhilNakhate
6 жыл бұрын
Thanks, Peter. I will go through the link. I work on Computational photography for which I have calibrated the camera too. Can we connect on LinkedIn so that we could discuss relevant topics if needed?
@PeterCorke
6 жыл бұрын
Sure thing.
How can we find the camera matrix?
@PeterCorke
6 жыл бұрын
Generally 2 ways: either by knowing in advance all the camera parameters, or by calibration. Details in my book, chapter 11
@bharath.garigipati
6 жыл бұрын
svd decomposition ?
QUT mechatronics FTW!
What if C(3, 4) is equal to 0 when you rescale ?
@PeterCorke
4 жыл бұрын
I'm not sure it can be zero for any realisable perspective camera.
@abbaa8284
4 жыл бұрын
@@PeterCorke yeah but why ?
3:40
You sound like Skip in 'undisputed'
Ode to the Kathedrale Notre-Dame
@PeterCorke
3 жыл бұрын
Yes, I was fortunate to visit long before the fire.
Omg too much information to my brain without no explanation, awful