日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

GL 与 CV 管线 (pipeline) 比较与相互转换

發布時間:2025/3/15 100 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GL 与 CV 管线 (pipeline) 比较与相互转换 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這里把二者作一個比較,并對相關的矩陣做一個聯系以使能夠相互轉換。

1. CV中圖像形成過程 (transformation stages)

這一過程可概括為四個坐標系的轉換,分別為:世界坐標系、相機坐標系、圖像坐標系、像素坐標系,如下圖:

對應的,來看一個頂點從世界坐標中(X_w, Y_w, Z_w,1)到圖像上(u,v)處的一系列變換:

其中,f即有效焦距,(u_c, v_c)為principle point, (dx, dy)為像素點的物理大小

為簡明起見,以上過程中沒有考慮畸變。畸變使圖像坐標(image coordinate)變得不準確。

假如理想的圖像坐標為(X_i, Y_i, W_i),而畸變后的圖像坐標為(X_d, Y_d, W_d),通常使用如下公式來對它們的關系建模:

我們可以將這一變化放到M_{i1}矩陣中。

?

在視覺中,常需要對相機進行標定,會得到內參、外參兩個結果,這兩個結果對應于M_{i1}M_{i2}及M_e兩個矩陣.

?

2. GL中圖像形成過程 (transformation stages)

這一部分是由OpenGL的pipeline規定的,詳請參考OpenGL Specification。

大致過得是:

這里要強調的是投影矩陣(projection matrix),即圖中M_p, 以及矩陣M_v。 至于模型視圖矩陣M_{mv}則與CV中的一致。

2.1投影矩陣及變換

OpenGL提供了API來設置投影矩陣projection matrix,glu也提供了輔助函數gluPerspective,需要四個參數 fovy, aspect, zFar, zNear。

這個函數生成一個4*4矩陣,對Eye Coordinate中的坐標進行變換:

2.2 視口矩陣及變換

視口矩陣將坐標從NDC(標準設備坐標)變換至窗口上, 使用glViewport來設置四個參數 x_0, y_0, width, height

生成變換的變換如下:

2.3 成像過程

這樣,我們可以看到GL中整個坐標變換過程為:

?

3. CV/CG中矩陣的對應

從CV的坐標變換過程, 我們最終可以推導得到:

,其中

從GL的坐標變換過程,推導出:

?

因此,

1. 假若已知GL參數,則可求出CV參數為:

2. 假若已知CV參數,則可求出GL參數為:

?

?

參考:《correspondence analysis between the image formation pipelines of graphics and vision》

轉載于:https://www.cnblogs.com/justin_s/archive/2012/09/06/2672913.html

總結

以上是生活随笔為你收集整理的GL 与 CV 管线 (pipeline) 比较与相互转换的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。