圖像算術運算python
1.圖像加法
使用cv2.add()將兩幅圖像進行加法運算,也能夠直接使用numpy,res=img1+img2.兩幅圖像的大小,類型必須一致,或者第二個圖像能夠是一個簡單的標量值。
openCV的加法是一種飽和操做,而numpy的加法是一種模操做。
OpenCV的結果會更好ide
import cv2 import numpy as np x=np.uint8([250]) y=np.uint8([10]) print (x+y) print (cv2.add(x,y))
[4] [[255]]
2.圖像混合
這也是加法,不一樣的是兩幅圖像的權重不一樣,這會給人一種混合或者透明的感受。
函數cv2.addWeighed()能夠按下面的公式對圖片進行混合。
例:將兩幅圖像混合,第一幅權重爲0.7.第二幅權重爲0.3函數
import cv2 import numpy as np img1=cv2.imread('1c.jpg') img2=cv2.imread('1d.jpg') dst = cv2.addWeighted(img1,0.7,img2,0.3,0) cv2.imshow('dst',dst) cv2.waitKey(0) cv2.destroyAllWindows()
三、cvtColor函數
咱們生活中大多數看到的彩×××片都是RGB類型,可是在進行圖像處理時,須要用到灰度圖、二值圖、HSV、HSI等顏色制式,opencv提供了cvtColor()函數來實現這些功能。
語法:ui
img2gray = cv2.cvtColor(img2,cv2.COLOR_BGR2GRAY)
RGB轉換格式參數:3d