使用Python中的OpenCV進行影像算術運算


在本教程中,我們將學習如何使用**OpenCV**進行影像算術運算。我們可以應用諸如**加法、減法、位運算**等操作……讓我們看看如何對影像執行運算。

我們需要OpenCV模組來對影像執行運算。使用終端或命令列中的以下命令安裝**OpenCV**模組。

pip install opencv-python==4.1.1.26

如果執行以上命令,您將收到以下成功訊息。

Collecting opencv-python==4.1.1.26
Downloading https://files.pythonhosted.org/packages/1f/51/e0b9cef23098bc31c77b0e0
6221dd8d05119b9782d4c2b1d1482e22b5f5e/opencv_python-4.1.1.26-cp37-cp37m-win_amd64.w
hl (39.0MB)
Requirement already satisfied: numpy>=1.14.5 in c:\users\hafeezulkareem\anaconda3\l
ib\site-packages (from opencv-python==4.1.1.26) (1.16.2)
Installing collected packages: opencv-python
Successfully installed opencv-python-4.1.1.26

加法

我們可以使用**cv2.addWeighted()**新增兩張影像。它接受五個引數:兩張影像、兩張影像對最終影像的權重以及最終影像的亮度值。

影像一

影像二

現在我們將這兩張影像新增到一張影像中。

示例

# importing cv2 module
import cv2
# reading the images and storing in variables
image_one = cv2.imread('_1.jpg')
image_two = cv2.imread('_2.jpg')
# adding two images
result_image = cv2.addWeighted(image_one, 0.5, image_two, 0.5, 0)
# displaying the final image
cv2.imshow('Final Image', result_image)
# deallocating the memory
if cv2.waitKey(0) & 0xff == 27:
   cv2.destroyAllWindows()

輸出

最終影像

減法

我們有一種叫做**cv2.subtract(image_one, image_two)**的方法來對兩張影像進行減法運算。我們將使用與加法相同的影像。讓我們看看程式碼。

示例

# importing cv2 module
import cv2
# reading the images and storing in variables
image_one = cv2.imread('_1.jpg')
image_two = cv2.imread('_2.jpg')
# substracting two images
result_image = cv2.subtract(image_one, image_two)
# displaying the final image
cv2.imshow('Final Image', result_image)
# deallocating the memory
if cv2.waitKey(0) & 0xff == 27:
   cv2.destroyAllWindows()

輸出

最終影像

結論

如果您對本教程有任何疑問,請在評論區提出。

更新於:2019年11月1日

757 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.