Python3与OpenCV3.3 图像处理(五)--图像运算
一、本节简介
图像运算也就是像素运算,简单的说就是利用算术运算或逻辑运算,对图像的每个像素进行处理(例如两个图像的合并)。虽然我们可以像第二节课那样,一个像素一个像素的遍历并修改值,但是如果图像分辨率很大的情况下,会处理的很慢,并且处理一些复杂的运算时,我们的代码效率会变得更低,代码编写出来也变得很麻烦。这节课就来讲解以下OpenCV中对图像运算的方法。
注意:我们在处理两个图像时,图像的像素大小和类型要完全一致,否则OpenCV就会报错。
二、算术运算
图像算术运算就是对两个图像的每个像素点执行加减乘除的运算,从而得到一个新的图像。代码如下
def add(image1,image2): """图片相加""" dst=cv.add(image1,image2) cv.imshow("add image",dst) def subtract(image1,image2): """图片相减""" dst=cv.subtract(image1,image2) cv.imshow("subtract image",dst) def divide(image1,image2): """图片相除""" dst=cv.divide(image1,image2) cv.imshow("divide image",dst) def multiply(image1,image2): """图片相乘""" dst=cv.multiply(image1,image2) cv.imshow("multiply image",dst)
三、逻辑运算
图像的逻辑运算就是对图像的每个像