這篇文章主要介紹了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()
圖像的算術運算,需要保證兩幅圖片的大小一致,否則會出錯。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持神馬文庫。