2022年3月10日 星期四

s1081509 作業 2

 

作業說明:

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

環境:

Ubuntu-20.04

Vim 8.2

CMake 3.16.3

OpenCV  4.2.0

程式功能:

1.      imread()讀圖片

2.      namedWindowcreateTrackbar製造GUI

3.      若為mode 1,使用getRotationMatrix2D生成轉移矩陣,warpAffine將圖片旋轉

若為mode 2,先複製一個新的Mat ,用circle將內切圓塗黑,內切圓由r= min(rows/2,cols/2)Point( img.cols/2, img.rows/2 )所定義,再定義一個新的Mat作為Mask,此Maskzeros全部先塗黑再用circle將內切圓塗白,之後bitwise_and,可得保留內切圓內的圖像,將此圖像旋轉,再用addWeighted合成

4.      Imshow展示圖片

使用指令

make ; ./hw2 yzu.bmp 1

make ; ./hw2 yzu.bmp 2

1 for whole image, 2 for circle








 

沒有留言:

張貼留言