透視變換原理
透視變換是將圖像從一個(gè)視平面投影到另外一個(gè)視平面的過(guò)程,所以透視變換也被稱(chēng)為投影映射(Projection Mapping)。
我們知道在圖像的仿射變換中需要變換矩陣是一個(gè)2x3的兩維平面變換矩陣,而透視變換本質(zhì)上空間立體三維變換,根據(jù)其次坐標(biāo)方差,要把三維坐標(biāo)投影到另外一個(gè)視平面,就需要一個(gè)完全不同的變換矩陣M,所以這個(gè)是透視變換跟OpenCV中幾何仿射變換最大的不同。
OpenCV中透視變換的又分為兩種:
- 密集透視變換
- 稀疏透視變換
我們經(jīng)常提到的對(duì)圖像的透視變換都是指密集透視變換,而稀疏透視變換在OpenCV的特征點(diǎn)匹配之后的特征對(duì)象區(qū)域標(biāo)識(shí)中經(jīng)常用到。一般情況下密集透視變換warpPerspective函數(shù)常與函數(shù)getPerspectiveTransform一起使用實(shí)現(xiàn)對(duì)圖像的透視校正。而稀疏透視變換perspectiveTransform經(jīng)常與findhomography一起使用。
API介紹
warpPerspective-實(shí)現(xiàn)圖像透視變換
-src
參數(shù)表示輸入圖像
-dst
參數(shù)表示輸出圖像
-M
參數(shù)表示透視變換矩陣(3x3)
-dsize
參數(shù)表示輸出圖像大小
-flags
參數(shù)表示插值方法,一般為線性或者最近鄰插值
-borderMode
參數(shù)表示對(duì)邊緣的處理方法,有默認(rèn)值
一般不用設(shè)。
-borderValue
參數(shù)表示邊緣的填充演示,默認(rèn)是黑色
getPerspectiveTransform - 獲取透視變換矩陣
-src
參數(shù)表示輸入透視變換前圖像四點(diǎn)坐標(biāo)
-dst
參數(shù)表示輸入透視變換后圖像四點(diǎn)坐標(biāo)
返回值類(lèi)型Mat
該函數(shù)返回透視變換矩陣M大小為3x3
API調(diào)用代碼演示
相關(guān)代碼如下:
主要根據(jù)輸入的坐標(biāo)點(diǎn)獲取透視變換矩陣,然后利用透視變換矩陣實(shí)現(xiàn)圖像透視校正,這個(gè)在實(shí)際工作中非常有用!
審核編輯:劉清
-
OpenCV
+關(guān)注
關(guān)注
32文章
642瀏覽量
42876 -
API接口
+關(guān)注
關(guān)注
1文章
85瀏覽量
10878
原文標(biāo)題:OpenCV中的透視變換介紹
文章出處:【微信號(hào):機(jī)器視覺(jué)沙龍,微信公眾號(hào):機(jī)器視覺(jué)沙龍】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄

OpenCV中的BGR格式,在libyuv中對(duì)應(yīng)的那個(gè)格式?OpenCV中的RGB格式呢?
基于透視變換的車(chē)輛位置和方向提取方法

霍夫線變換綜合示例_《OpenCV3編程入門(mén)》書(shū)本配套源代碼
仿射變換綜合示例_《OpenCV3編程入門(mén)》書(shū)本配套源代碼
OpenCV3編程入門(mén)-源碼例程全集-仿射變換綜合示例
霍夫線變換綜合示例_OpenCV3編程入門(mén)-源碼例程
離散傅里葉變換_OpenCV3編程入門(mén)-源碼例程
opencv透視變換原理及實(shí)例

實(shí)現(xiàn)openCV傅里葉變換及逆變換的代碼程序免費(fèi)下載

OpenCV的小波變換函數(shù)代碼免費(fèi)下載

使用Numpy和OpenCV實(shí)現(xiàn)傅里葉和逆傅里葉變換
OpenCV庫(kù)在圖像處理和深度學(xué)習(xí)中的應(yīng)用
淺談透視變換的硬件實(shí)現(xiàn)策略

OpenCV筑基之圖像的透視變換

評(píng)論