s1083350 作業1
主題 圖像旋轉(Image Ratation)
一、題目說明
撰寫一個程式將一張圖像的(a)整張圖像,(b)中心內切圓區域,旋轉一個角度(逆時針旋 轉 0 度至 359 度),並且利用一個滑動條(trackbar)控制旋轉角度。
二、開發環境
OS:Windows 10
Editor:Visual Studio Code
Language:Python 3.9.13
Package:OpenCV - 4.6.0
三、程式碼說明
- cv2.nameWindow() 幫顯示的視窗命名,以便後續操作
- cv2.createTrackbar() 建立拉條,設成0~360 度
- 利用np.zeros()建一個純黑遮罩,再利用cv2.circle()在上面畫一個實心白色圓
- 以cv2.bitwise_not() 產生一個與上面相反的遮罩
- 兩mask以cv2.bitwise_and()與原圖做and,分別取得中心內切圓及內切圓以外部分,並以cv2.add()相加2圖
- 旋轉整張圖
- 以cv2.getTrackbarPos() 取得拉桿的度數,再以cv2.getRotationMatrix2D()及cv2.warpAffine()使圖片以中心旋轉
- 與轉整張概念相似,但僅旋轉內切圓,轉完後再以cv2.add()拼回去
留言
張貼留言