作業說明:
撰寫一個程式將一張圖像的(a)整張圖像,(b)中心內切圓區域,旋轉一個角度(逆時針旋轉 0 度至 359 度):利用一個滑動條(trackbar)控制旋轉角度。
使用環境/語言:
Windows10
Visual Studio 2019
VS code
Opencv-4.5.5
C++
Python
執行/程式說明:
第一個: 試用python寫寫看
1.
用imread(),將檔案讀入
2.
找出中心點和半徑
3.
用createTrackbar()來創建滾輪條
4.
用getTrackbarPos()來讀取滾輪條的值
5.
接著用getRotationMatrix2D()、warpAffine()來旋轉讀進來的圖片
6.
用imshow()將圖片秀出
第二個: 不熟悉所以換回C++
A.
用imread(),將檔案讀入
B.
以mask1和mask2存即將切割的圖檔
C.
找出中心點和半徑
D.
畫完圓之後用兩個for迴圈做切割
E.
用createTrackbar()來創建滾輪條
F.
用getTrackbarPos()來讀取滾輪條的值
G.
接著用getRotationMatrix2D()、warpAffine()來旋轉切好的mask1
H.
最後用bitwise_or()將mask1和mask2合併
I.
用imshow()將圖片秀出
Ps.此次作業只要角度轉到360度,會因為認為已經轉一圈了,所以視為程式已經執行結束了
執行結果:
1.
旋轉248度
2.
旋轉163度
沒有留言:
張貼留言