cv2. warpAffine和M_scale 的問題
2020/03/03 上午 00:11
電腦視覺深度學習討論版
Hsu Ling
觀看數:31
回答數:2
收藏數:0
cvdl-2
想請問各位助教關於 cv2. warpAffine 的問題, 我們可以看到上面寫的
cv2.wrapAffine(圖片, M_scale, (resize_row, resize_col))
我可以把 M_scale 理解稱以下嗎?: 因為 [0.5, 0, 0] 是把圖片的 x 縮小 0.5倍 , [0, 0.5, 0] 把 圖片的 y 所小至 0.5倍, 而後面的 resize_row 跟 col 就是你要把圖片的 shape 縮小成幾個 pixel.
之前的 ppt 說 cv2.wrapAffine 說可以把圖片做平移, 所以給定一個 M_scale 他就可以做變換, 但把他的功能換成放大縮小, 就有點看不太懂 M_scale 跟 後面的參數 resize的關係了. 謝謝
回答列表
-
2020/03/03 上午 11:37哲贊同數:1不贊同數:0留言數:1
我的理解是這樣,M_scale的縮放是將我們要的影像壓縮,後面resize的參數是調整整張圖(視窗)的大小,如果M_scale用[[0.5, 0, 0], [0, 0.5, 0],後面參數用原本大小的col跟row,印出來就會發現我們要的影像是原先的0.5倍,但圖片一樣是512*512的大小,也就是說,他先將我們要的影像壓縮縮小成0.5倍,然後放大圖的大小,放大多餘的部分用0填充,因此為黑色的背景。
-
2020/03/07 上午 00:34胡連福贊同數:0不贊同數:0留言數:0
再補充一下,M_scale 是在你定義的 (resize_row, resize_col) 範圍內做出平移或放大/縮小的變換,而 M_scale 的變換是不會超出 (resize_row, resize_col) 範圍外的。