s1083319 作業1

 

題目敘述 

 

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

 

開發環境 


l   Windows 11 

l   Visual Studio Code 

l   Python 3.11 

l   OpenCV 4.7.0.72 

 

Import 

 

l   cv2 

l   numpy 

 

功能說明


Hw01(a) 旋轉整張圖像


# 讀取圖片

src = cv2.imread(filename)

# 開新視窗

cv2.namedWindow(" windowName ")

# 建立拉條並執行function

cv2.createTrackbar(' trackbarName ', ' windowName ', value, maxValue, function)

# 建立二維矩陣

rot_mat = cv2.getRotationMatrix2D(center, angle, scale)

# 旋轉

img_rotated = cv2.warpAffine(src, M, dsize)

# 顯示圖片

cv2.imshow(winname, mat)


Hw01(b) 旋轉中心內切圓區域


# 建立mask

mask = np.zeros(shape, dtype)

cv2.circle(mask, center, radius, color, thickness)


# 套用mask

img_center = cv2.bitwise_and(src1 ,src2)


# 之後旋轉完img_center


# 合併後輸出影像

result = cv2.addWeighted(img_center, 1, img_frame, 1, 0)

cv2.imshow(winname, result)


執行結果

 

Hw01(a) 

 

Hw01(b) 


留言

這個網誌中的熱門文章

rzwang Homework #1

s1093350 Homework #2

s1091537 Homework #1