作業2說明:
撰寫一個程式將一張圖像的(a)整張圖像,(b)中心內切圓區域,旋轉一個角度(逆時針旋轉 0 度至 359 度):利用一個滑動條(trackbar)控制旋轉角度。
開發環境:
Windows10
Vscode
Opencv 4.5.5
Python 3.10.2
實作方法:
第一個整張圖片倒轉:用cv2.imread載完圖片,cv2.nameWindow叫出視窗,之後使用createTrackbar叫出滾動條,再連結到函式whirl_1, 裡面的getTrackbarPos可以隨時更新位置,和getRotationMatrix2D用來翻轉(中心點,角度,倍數),而warpAffine則能夠將我們仿射完的圖片,保持平行性與平直性,return完後cv2.imshow,然後寫一個while迴圈讓他一直跑,最後設一個key結束程式
第二個中心圓圖片倒轉:用numpy建立一個全黑的圖片,接著畫上一個白色的圓,利用cv2.bitwise_and遮罩,做出原本照片的中心圓.此時再讀取一次原本的圖片,在上面畫一個黑色的中心圓,再把原本圖片的中心圓以及畫了黑色圓的圖片相加cv2.add傳入函式whirl,之後步驟就和上一個做法一樣了
沒有留言:
張貼留言