【AI基礎】python:openCV——圖像算術運算(1)
阿新 • • 發佈:2018-03-19
圖像算術運算圖像算術運算
例:將兩幅圖像混合,第一幅權重為0.7.第二幅權重為0.3
語法:
1.圖像加法
使用cv2.add()將兩幅圖像進行加法運算,也可以直接使用numpy,res=img1+img2.兩幅圖像的大小,類型必須一致,或者第二個圖像可以是一個簡單的標量值。
openCV的加法是一種飽和操作,而numpy的加法是一種模操作。
OpenCV的結果會更好
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()可以按下面的公式對圖片進行混合。
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()
3、cvtColor函數
我們生活中大多數看到的彩×××片都是RGB類型,但是在進行圖像處理時,需要用到灰度圖、二值圖、HSV、HSI等顏色制式,opencv提供了cvtColor()函數來實現這些功能。
img2gray = cv2.cvtColor(img2,cv2.COLOR_BGR2GRAY)
RGB轉換格式參數:
【AI基礎】python:openCV——圖像算術運算(1)