OpenCV基础入门——图像运算

本文介绍了OpenCV中图像处理的基础操作,包括加法运算和逻辑运算。加法运算可通过直接加号或cv2.add()实现,逻辑运用于图像加密解密、面部打码和数字水印等场景。示例代码展示了如何利用位运算进行图像加密、面部打码及添加数字水印。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

© Fu Xianjun. All Rights Reserved.


提示:以下是本篇文章正文内容,下面案例可供参考

一、加法运算

在图像处理过程中,经常需要对图像进行加法运算。可以通过加号运算符“+”对图像进行加法运算,也可以通过cv2.add()函数对图像进行加法运算。

  • 使用加号进行图像的运算代码如下(示例):
import cv2 
import numpy as np
img1=cv2.imread("LinuxLogo.jpg")
img2=cv2.imread("WindowsLogo.jpg")
img3=img1+img2
cv2.imshow("add",img3)
cv2.waitKey()
cv2.destroyAllWindows()

函数cv2.add()可以计算图像像素值相加的和

  • 使用随机数组模拟灰度图,观察cv2.add()对像素值求和的结果代码如下(示例):
    在这里插入图片描述

二、逻辑运算与运用

逻辑运算是一种非常重要的运算方式,图像处理过程中经常要按照位进行逻辑运算,简称位运算。在OpenCV内,常见的位运算函数有:

函数名 基本含义
cv2.bitwise_and() 按位与
cv2.bitwise_or() 按位或
cv2.bitwise_xor() 按位异或
cv2.bitwise_not() 按位取反

相对应函数使用代码如下(示例):

按位与 按位或

def logic_demo(m1, m2):
    dst1 = cv2.bitwise_and(m1, m2)
    dst2 = cv2.bitwise_or(m1, m2)
    cv2.imshow("logic_demo_and", dst1)
    cv2.imshow("logic_demo_or",dst2)

按位非运算 按位异或

def logic_demo2(m1,m2):
    dst1=cv2.bitwise_not(m1,m2)
    dst2=cv2.bitwise_xor(m1,m2)
    cv2.imshow("logic_demo_not", dst1)
    cv2.imshow
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值