一、 作業說明
撰寫一個程式將一張圖像的(a)整張圖像,(b)中心內切圓區域,旋轉一個角度(逆時針旋 轉 0 度至 359 度):利用一個滑動條(trackbar)控制旋轉角度。
二、
作業環境
Windows 10、OpenCV 4.5.5、Visual
Studio 2017
三、 實作方法、執行結果
1.將input的圖片放入專案資料夾內,編譯程式後,輸入圖片名稱,如:XXXX.jpg。如檔案位置錯誤或名稱錯誤會跳出訊息,並且結束程式。
2.成功之後會跳出圖片,上方會有滑動條,可以調整角度,預設為零度,可以從0~360度,並及時出現在畫面中。
程式實作原理:
(1)首先,要先針對原圖進行分割處理,切出一個內切圓的圖、還有一個外框。
(2)分割的原理,先創兩個空白Mat物件,然後在原始圖片上切出一個圓圈,程式尋訪每個點,然後判斷該點是不是在圈內,如果是就將該點的資料複製到其中一張圖上,反之依然,圈外就複製到另外一張圖上,最後切出來的結果如下所示。
(3)我們再將只有圓的圖型,利用getRotationMatrix2D()、warpAffine()進行旋轉的動作。
(4)最後,再利用分割的尋訪模式,將旋轉過後的圖,重新映射回只有外框的圖上。
(5)加上拉條,完成。
沒有留言:
張貼留言