python+opencv像素的加減和加權操作的實現

這篇文章主要介紹了python+opencv像素的加減和加權操作的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨着小編來一起學習學習吧

本文介紹了python+opencv像素的加減和加權操作的實現,分享給大家。

# 目標:
# 1、在圖像上進行算術操作,如加減以及按位操作
# 2、將會學會使用cv2.add(),cv2.addWeights()
# 參考網站:https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_core/py_image_arithmetics/py_image_arithmetics.html#image-arithmetics
import numpy as np
import cv2
 
 
# 兩種方法進行圖像的加操作:
# 1、利用opencv的函數
# 2、利用numpy中的操作
# 這兩個操作有些不同
# opencv中超出後並不會溢出,只會變成最大值(255),但numpy會溢出。
x = np.uint8([250])
y = np.uint8([10])
print(cv2.add(x,y))# 輸出255
print(x+y)#輸出4,因爲發生溢出
 
### 總結:可見使用cv2的加法更加好一些,以免發生溢出現象。
 
 
 
# 兩張圖像按權重進行相加融合
# 這裏有兩張圖片,一張是cat,一張是dog。將兩者相加,前者權重0.3,後者0.7
img1 = cv2.imread('cat.jpg')
img2 = cv2.imread('dog.jpg')
# 注意兩個圖片需要相同的尺寸,否則無法進行相加或融合操作
 
img = cv2.addWeighted(img1, 0.3, img2, 0.7, 0)
# 其中最後一個0,表示兩個圖像相加後的常數值,這裏設置爲0
cv2.imshow('img',img)
cv2.waitKey()
cv2.destroyAllWindows()

圖像的算術運算,需要保證兩幅圖片的大小一致,否則會出錯。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持神馬文庫。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章