最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

【第10節(jié)】圖像幾何變換

2022-11-17 11:44 作者:海鷗之道  | 我要投稿

目標(biāo)

  • 學(xué)習(xí)對(duì)圖像進(jìn)行各種幾個(gè)變換,例如移動(dòng)、旋轉(zhuǎn)、仿射變換等。

  • 將要學(xué)到的函數(shù)有:CV2.getPerspectiveTransform。

變換

????????OpenCV提供了兩個(gè)變換函數(shù), CV2.warpAffine和CV2.warpPerspective,使用這兩個(gè)函數(shù)你可以實(shí)現(xiàn)所有類(lèi)型的變換。CV2.warpAffine 接收的參數(shù)是2 x 3的變換矩陣,而CV2.warpPerspective接收的參數(shù)是3 x 3的變換矩.陣。

1、擴(kuò)展縮放

????????擴(kuò)展縮放只是改變圖像的尺寸大小。OpenCV提供的函數(shù)CV2.resize()可以實(shí)現(xiàn)這個(gè)功能。圖像的尺寸可以自己手動(dòng)設(shè)置,你也可以指定縮放因子。我們可以選擇使用不同的插值方法。在縮放時(shí)我們推薦使用CV2.INTER_ AREA,在擴(kuò)展時(shí)我們推薦使用v2.INTER_ CUBIC (慢)和v2.INTER LINEAR。默認(rèn)情況下所有改變圖像尺寸大小的操作使用的插值方法都是CV2.INTER_ LINEAR。你可以使用下面任意一種方法改變圖像的尺寸:

顯示效果如下:

2、圖像平移

平移就是將對(duì)象換一個(gè)位置。如果你要沿(x, y )方向移動(dòng),移動(dòng)的距離是(tx,ty ),你可以以下面的方式構(gòu)建移動(dòng)矩陣:

????????你可以使用Numpy數(shù)組構(gòu)建這個(gè)矩陣( 數(shù)據(jù)類(lèi)型是np.f1loat32),然后把它傳給函數(shù)CV2.warpAffine()。 看看下面這個(gè)例子吧,它被移動(dòng)了( 100,50 )個(gè)像素。

顯示效果:

3、圖片旋轉(zhuǎn)

????對(duì)一個(gè)圖片旋轉(zhuǎn)角度θ,需要使用下面形式的旋轉(zhuǎn)矩陣。

????????OpenCV允許你在任意地方進(jìn)行旋轉(zhuǎn),但是旋轉(zhuǎn)矩陣的形式應(yīng)修改為:

其中:

? ????????????? ????%5Calpha%20%20%3D%20scale%5Ccdot%20%5Ccos%20%5Ctheta%20

????????????????????%5Cbeta%20%3D%20scale%5Ccdot%20sin%20%5Ctheta%20

????????為了構(gòu)建這個(gè)旋轉(zhuǎn)矩陣,OpenCV提供了一個(gè)函數(shù);CV2.getRotationMatrix2D。下面的例子是在不縮放的情況下將圖像旋轉(zhuǎn)90度。

顯示結(jié)果如下:

4、仿射變換

????????在仿射變換中,原圖中所有的平行線(xiàn)在結(jié)果圖像中同樣平行。為了創(chuàng)建這個(gè)矩陣我們需要從原圖像中找到三個(gè)點(diǎn)以及他們?cè)谳敵鰣D像中的位置。然后CV2.getAfneTransform會(huì)創(chuàng)建一個(gè)2x3的矩陣,最后這個(gè)矩陣會(huì)被傳給函數(shù)CV2.warpAffine。

????????來(lái)看看下面的例子,以及我選擇的點(diǎn)(被標(biāo)記為紅色的點(diǎn))

顯示效果:


5、透視變換

????????對(duì)于視角變換,我們需要一個(gè)3x3變換矩陣。在變換前后直線(xiàn)還是直線(xiàn)。要構(gòu)建這個(gè)變換矩陣,你需要在輸入圖像上找4個(gè)點(diǎn),以及他們?cè)谳敵鰣D像.上對(duì)應(yīng)的位置。這四個(gè)點(diǎn)中的任意三個(gè)都不能共線(xiàn)。這個(gè)變換矩陣可以有函數(shù)CV2.getPerspectiveTransform()構(gòu)建。然后把這個(gè)矩陣傳給函數(shù)CV2.warpPerspective。

代碼如下:

顯示效果如下:



【第10節(jié)】圖像幾何變換的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
江油市| 金川县| 南昌县| 南靖县| 双流县| 泾源县| 临湘市| 双流县| 吉木乃县| 罗田县| 赣州市| 大兴区| 嘉禾县| 茂名市| 濉溪县| 高碑店市| 亚东县| 玉屏| 广东省| 邛崃市| 长海县| 通州市| 文昌市| 保山市| 河曲县| 稷山县| 平江县| 新乐市| 绵竹市| 大宁县| 寿宁县| 留坝县| 高邑县| 保亭| 阳谷县| 永泰县| 仙居县| 庄河市| 四会市| 太保市| 遂宁市|