[英]Pixel coordinates to 3D line (opencv)
我在屏幕上顯示的圖像通過cvInitUndistortMap和cvRemap(已完成相機校准)未失真,用戶點擊圖像中的某個功能。 所以我有特征的(u,v)像素坐標,我也有內在矩陣和失真矩陣。
我正在尋找的是相機/真實世界坐標中的3D線的等式,用戶點擊的特征必須在該等式上。 我已經在攝像機的圖像平面和特征之間有垂直距離,所以我可以將它與上述方程式結合起來,給出空間特征的(X,Y,Z)坐標。
聽起來很簡單(反向內在矩陣或什么?)但我無法在任何地方找到逐步說明。 首選C ++或C#代碼。
這是一個有點老問題,但仍然可能對某人有用。 所有線都經過點(0,0,0),所以:
line.x0 = 0; line.y0 = 0; line.z0 = 0;
方向矢量如下:line.A =(u / fx) - (cx / fx); line.B =(v / fy) - (cy / fy); line.C = 1;
cx,cy,fx,fy是來自相機矩陣的參數。 方程式在“Learning OpenCv”一書中有解釋。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.