s1083323 作業1

 


作業一 影像旋轉 Image Rotation


主題: 圖像旋轉 (Image Rotation) 撰寫一個程式將一張圖像的(a)整張圖像,(b)中心內切圓區域,旋轉一個角度(逆時針旋 轉 0 度至 359 度):利用一個滑動條(trackbar)控制旋轉角度。


開發環境:
  • Win10
  • C++
  • Open CV4.7.0
  • VS 2019

(a)

1. 讀取名為"yzu.bmp"的圖像,創建一個名為"Rotated Image"的視窗,然後使用createTrackbar創建一個名為"Angle"的滑動條,將可旋轉的角度範圍從0度到359度。




2.當使用者滑動滑動條時,會呼叫rotateImage函式,該函式使用getRotationMatrix2D函式創建旋轉矩陣,並使用warpAffine函式應用旋轉矩陣到原始圖像,得到旋轉後的圖像dst,最後在"Rotated Image"視窗中顯示旋轉後的圖像。






3. 旋轉128度執行結果



(b)

1.創建一個掩模圖像(mask):這個掩模圖像與輸入的圖像大小相同,並且用0填充,也就是黑色。然後在圖像中心繪製一個圓形,半徑為圖像寬度的1/4,將圓形區域填充為255,也就是白色。這樣就得到了一個圓形的掩模圖像。


2.旋轉圓形內部的圖像:首先,創建一個與輸入圖像大小相同的Mat對象,用0填充。然後使用getRotationMatrix2D函數生成一個旋轉矩陣,這個旋轉矩陣可以將圖像繞圖像中心旋轉angle度。最後,使用warpAffine函數將輸入圖像應用旋轉矩陣,得到旋轉後的圖像。





3.旋轉128度執行結果




留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1091537 Homework #1