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()

图像的算术运算,需要保证两幅图片的大小一致,否则会出错。

以上是 python+opencv像素的加减和加权操作的实现 的全部内容, 来源链接: utcz.com/z/344313.html

回到顶部