OpenCV图像算术位运算

一 图像相加

cpp 复制代码
import cv2
import numpy as np

girl=cv2.imread('./2037548.jpg')

#图像的加法运算就是矩阵的加法运算
#因此加法运算的两张图必须是相等的

print(girl.shape)

img=np.ones((1920,1080,3),np.uint8)*50
cv2.imshow('girl',girl)
result=cv2.add(girl,img)
cv2.imshow('result',result)
cv2.waitKey(0)

二 图像减法运算

subtract(A,B)

含义是A减B

cpp 复制代码
import cv2
import numpy as np

girl=cv2.imread('./2037548.jpg')

#图像的加法运算就是矩阵的加法运算
#因此加法运算的两张图必须是相等的

print(girl.shape)

img=np.ones((1920,1080,3),np.uint8)*50
cv2.imshow('girl',girl)
result=cv2.subtract(girl,img)
cv2.imshow('result',result)
cv2.waitKey(0)

三 图像的融合

addWeigthed(A,alpha,B,bate,gamma)

alpha和beta是权重

gamma 静态权重

四 图像位运算

cpp 复制代码
import cv2
import numpy as np

# 创建一张图片
img=np.zeros((200,200),np.uint8)

img[50:150,50:150]=255

new_img=cv2.bitwise_not(img)

cv2.imshow('img',img)

cv2.imshow('new_img',new_img)

cv2.waitKey(0)

五 图像的与运算

cpp 复制代码
import cv2
import numpy as np

# 创建一张图片
img=np.zeros((200,200),np.uint8)
img2=np.zeros((200,200),np.uint8)

img[20:120,20:120]=255
img2[50:150,50:150]=255

new_img=cv2.bitwise_and(img,img2)

cv2.imshow('img',img)

cv2.imshow('new_img',new_img)

cv2.waitKey(0)

六 图像的或与异或运算

bitwise_or(img1,img2)

bitwise_xor(img1,img2)

总结 添加水印

cpp 复制代码
# 引入一副图片
# 要有一个Logo,需要自己创建
# 水印添加,在什么地方添加,在添加的地方变成黑色
# 利用add 将logo 与图形叠加到一起

import cv2
import numpy as np

girl=cv2.imread('./2037548.jpg')

# 创建LOGO
logo=np.zeros((200,200,3),np.uint8)
mask=np.zeros((200,200),np.uint8)

# 绘制LOGO
logo[20:120,20:120]=[0,0,255]
logo[80:180,80:180]=[0,255,0]

mask[20:120,20:120]=255
logo[80:180,80:180]=255

# 对mask按位取反
m=cv2.bitwise_not(mask)

# 选择girl添加logo的位置
roi=girl[0:200,0:200]

# 与m进行操作
tmp=cv2.bitwise_and(roi,roi,mask=m)
dst=cv2.add(tmp,logo)

girl[0:200,0:200]=dst

cv2.imshow('girl',girl)
#cv2.imshow('tmp',tmp)
#how('mask',mask)
#cv2.imshow('logo',logo)
cv2.waitKey(0)
相关推荐
秋91 分钟前
学霸圈公认的 10 种高效学习习惯:从低效到顶尖的底层逻辑
人工智能·学习·算法
大强同学11 分钟前
我用AI管知识库后,再也回不去了
人工智能
2501_9449347313 分钟前
2026销售岗怎样提升客户管理效率?
人工智能
AI精钢16 分钟前
Claude Opus 4.7 是一次失败的升级吗?一次基于用户反馈的技术复盘
网络·人工智能·ai·大模型·llm·claude·技术评论
renhongxia118 分钟前
网络效应与大型语言模型辩论中的协议漂移
大数据·人工智能·机器学习·语言模型·自然语言处理·语音识别·xcode
开开心心_Every23 分钟前
安卓图片压缩工具,无损缩放尺寸免费好用
人工智能·pdf·计算机外设·ocr·语音识别·团队开发·规格说明书
CeshirenTester29 分钟前
计算机专业找工作别再乱投:100家常见目标公司,先按赛道分清楚,然后闭眼冲!
大数据·人工智能
A7bert77730 分钟前
【YOLOv8部署至RDK X5】模型训练→转换bin→Sunrise 5部署
c++·人工智能·python·深度学习·yolo·机器学习
墨心@31 分钟前
多Agent系统的编排
人工智能·语言模型·自然语言处理·agent·datawhale·agent设计模式·组队学习
向量引擎33 分钟前
AI要干掉全公司只剩老板一人这事到底靠不靠谱
人工智能·aigc·agi·api调用