目錄
Python OpenCV 影像操作:平移、縮放、旋轉
Python OpenCV 是一個功能強大的影像處理函式庫,它可以讓開發者輕鬆地對影像進行處理,包括影像的平移、縮放、旋轉等操作。本文將介紹如何使用 Python OpenCV 對影像進行平移、縮放、旋轉等操作。
什麼是 OpenCV
OpenCV(Open Source Computer Vision Library)是一個開源的計算機視覺函式庫,它可以讓開發者輕鬆地對影像進行處理,包括影像的平移、縮放、旋轉等操作。OpenCV 提供了豐富的影像處理函式,可以讓開發者快速開發出影像處理的應用程式。
OpenCV 支援多種程式語言,包括 C、C++、Python 等,本文將介紹如何使用 Python OpenCV 對影像進行平移、縮放、旋轉等操作。
安裝 OpenCV
在開始使用 OpenCV 之前,我們需要先安裝 OpenCV,安裝方式可以參考官方文件。
平移
平移是指將影像往某個方向移動,可以使用 OpenCV 的 cv2.warpAffine
函式對影像進行平移操作。
首先,我們需要定義一個 2×3 的轉換矩陣,其中第一行為 x 軸的轉換參數,第二行為 y 軸的轉換參數,第三行為平移參數,例如:
M = np.float32([[1, 0, 100], [0, 1, 50]])
上面的矩陣表示將影像往右移動 100 像素,往下移動 50 像素。
接著,我們可以使用 cv2.warpAffine
函式對影像進行平移操作:
dst = cv2.warpAffine(img, M, (cols, rows))
其中,img
為輸入影像,M
為轉換矩陣,(cols, rows)
為輸出影像的大小。
縮放
縮放是指將影像放大或縮小,可以使用 OpenCV 的 cv2.resize
函式對影像進行縮放操作。
cv2.resize
函式接受兩個參數,第一個參數為輸入影像,第二個參數為輸出影像的大小,例如:
dst = cv2.resize(img, (200, 200))
上面的程式碼表示將輸入影像縮放為 200×200 的大小。
旋轉
旋轉是指將影像旋轉指定的角度,可以使用 OpenCV 的 cv2.getRotationMatrix2D
和 cv2.warpAffine
函式對影像進行旋轉操作。
首先,我們需要使用 cv2.getRotationMatrix2D
函式計算旋轉矩陣,該函式接受三個參數,第一個參數為旋轉中心,第二個參數為旋轉角度,第三個參數為縮放比例,例如:
M = cv2.getRotationMatrix2D((cols/2, rows/2), 90, 1)
上面的程式碼表示將影像旋轉 90 度,並且不進行縮放。
接著,我們可以使用 cv2.warpAffine
函式對影像進行旋轉操作:
dst = cv2.warpAffine(img, M, (cols, rows))
其中,img
為輸入影像,M
為旋轉矩陣,(cols, rows)
為輸出影像的大小。
總結
本文介紹了如何使用 Python OpenCV 對影像進行平移、縮放、旋轉等操作,OpenCV 提供了豐富的影像處理函式,可以讓開發者快速開發出影像處理的應用程式。
推薦閱讀文章
推薦閱讀文章
OpenCV 和 Python 正確旋轉影像
使用 OpenCV 和 Python 計算影像色彩度
使用 Keras 來構建 ImageNet、VGGNet、ResNet、Inception 和 Xception 網絡
深度學習:OpenCV 的 blobFromImage 功能
使用 Tesseract OCR 和 Python</a