当前位置: 首页 > news >正文

久霸高端网页版/深圳优化公司找高粱seo服务

久霸高端网页版,深圳优化公司找高粱seo服务,侧边导航 wordpress,java做网站教程文章目录 图像的加法运算图像的减法运算图像的乘除运算图像的融合OpenCV位运算-非操作OpenCV位操作-与运算OpenCV位操作-或与异或为图像添加水印 图像的加法运算 # -*- coding: utf-8 -*- import cv2 import numpy as npimg cv2.imread(E://pic//4.jpg)# 图的加法运算就是矩阵…

文章目录

  • 图像的加法运算
  • 图像的减法运算
  • 图像的乘除运算
  • 图像的融合
  • OpenCV位运算-非操作
  • OpenCV位操作-与运算
  • OpenCV位操作-或与异或
  • 为图像添加水印

在这里插入图片描述

图像的加法运算

# -*- coding: utf-8 -*-
import cv2
import numpy as npimg = cv2.imread('E://pic//4.jpg')# 图的加法运算就是矩阵的加法运算
# 因此,加法运算的两张图必须是相同的形状# print(img.shape)
# (600, 480, 3)img2 = np.ones((600, 480, 3), np.uint8) * 100
cv2.imshow('origin', img)
res = cv2.add(img, img2)
cv2.imshow('result', res)key = cv2.waitKey(0) & 0xff
if key == ord('q'):cv2.destroyAllWindows()

在这里插入图片描述

图像的减法运算

在这里插入图片描述

# -*- coding: utf-8 -*-
import cv2
import numpy as npimg = cv2.imread('E://pic//4.jpg')# 图的加法运算就是矩阵的加法运算
# 因此,加法运算的两张图必须是相同的形状# print(img.shape)
# (600, 480, 3)img2 = np.ones((600, 480, 3), np.uint8) * 100
cv2.imshow('origin', img)
res = cv2.add(img, img2)
cv2.imshow('result', res)img3 = cv2.subtract(res, img2)
cv2.imshow('origin2', img3)key = cv2.waitKey(0) & 0xff
if key == ord('q'):cv2.destroyAllWindows()

在这里插入图片描述

# -*- coding: utf-8 -*-
import cv2
import numpy as npimg = cv2.imread('E://pic//4.jpg')# 图的加法运算就是矩阵的加法运算
# 因此,加法运算的两张图必须是相同的形状# print(img.shape)
# (600, 480, 3)img2 = np.ones((600, 480, 3), np.uint8) * 100
cv2.imshow('origin', img)
res = cv2.add(img, img2)
cv2.imshow('result', res)img3 = cv2.subtract(res, img2)
cv2.imshow('origin2', img3)img3 = cv2.subtract(img, img2)
cv2.imshow('origin3', img3)key = cv2.waitKey(0) & 0xff
if key == ord('q'):cv2.destroyAllWindows()

可以看出,给一张图做加法运算,它可以变亮一些,做减法运算,可以变暗一些
在这里插入图片描述

图像的乘除运算

无非是让图片亮得更快一些和亮得更慢一些
在这里插入图片描述

图像的融合

在这里插入图片描述

# -*- coding: utf-8 -*-
import cv2
import numpy as npcv2.namedWindow('img', cv2.WINDOW_NORMAL)
back = cv2.imread('E://pic//Nurburgring_1920x1080.jpg')
superman = cv2.imread('E://pic//Man_Of_Steel_superman_superhero_____f_1920x1080.jpg')# 只有两张图片的属性一样才可以融合
# print(back.shape)
# print(superman.shape)
# (1080, 1920, 3)
# (1080, 1920, 3)res = cv2.addWeighted(superman, 0.7, back, 0.3, 0)cv2.imshow('img', res)key = cv2.waitKey(0) & 0xff
if key == ord('q'):cv2.destroyAllWindows()

在这里插入图片描述

OpenCV位运算-非操作

在这里插入图片描述

# -*- coding: utf-8 -*-
import cv2
import numpy as npimg = np.zeros((200, 200), np.uint8)
img[50:150, 50:150] = 255cv2.imshow('img', img)key = cv2.waitKey(0) & 0xff
if key == ord('q'):cv2.destroyAllWindows()

在这里插入图片描述

# -*- coding: utf-8 -*-
import cv2
import numpy as npimg = np.zeros((200, 200), np.uint8)
img[50:150, 50:150] = 255new_img = cv2.bitwise_not(img)cv2.imshow('img', img)
cv2.imshow('new_img', new_img)key = cv2.waitKey(0) & 0xff
if key == ord('q'):cv2.destroyAllWindows()

在这里插入图片描述

OpenCV位操作-与运算

在这里插入图片描述

# -*- coding: utf-8 -*-
import cv2
import numpy as npimg = np.zeros((200, 200), np.uint8)
img2 = np.zeros((200, 200), np.uint8)
img[20:120, 20:120] = 255
img2[80:180, 80:180] = 255# new_img = cv2.bitwise_not(img)cv2.imshow('img', img)
cv2.imshow('img2', img2)key = cv2.waitKey(0) & 0xff
if key == ord('q'):cv2.destroyAllWindows()

在这里插入图片描述

# -*- coding: utf-8 -*-
import cv2
import numpy as npimg = np.zeros((200, 200), np.uint8)
img2 = np.zeros((200, 200), np.uint8)
img[20:120, 20:120] = 255
img2[80:180, 80:180] = 255# new_img = cv2.bitwise_not(img)
new_img = cv2.bitwise_and(img, img2)cv2.imshow('img', img)
cv2.imshow('img2', img2)
cv2.imshow('new_img', new_img)key = cv2.waitKey(0) & 0xff
if key == ord('q'):cv2.destroyAllWindows()

在这里插入图片描述

OpenCV位操作-或与异或

在这里插入图片描述

# -*- coding: utf-8 -*-
import cv2
import numpy as npimg = np.zeros((200, 200), np.uint8)
img2 = np.zeros((200, 200), np.uint8)
img[20:120, 20:120] = 255
img2[80:180, 80:180] = 255# new_img = cv2.bitwise_not(img)
# new_img = cv2.bitwise_and(img, img2)
new_img = cv2.bitwise_or(img, img2)
new_img2 = cv2.bitwise_xor(img, img2)cv2.imshow('img', img)
cv2.imshow('img2', img2)
cv2.imshow('new_img', new_img)
cv2.imshow('new_img2', new_img2)key = cv2.waitKey(0) & 0xff
if key == ord('q'):cv2.destroyAllWindows()

在这里插入图片描述

为图像添加水印

# -*- coding: utf-8 -*-
import cv2
import numpy as np#1. 引入一幅图片 
#2. 要有一个LOGO,需要自己创建
#3. 计算图片在什么地方添加,在添加的地方变成黑色
#4. 利用add,将logo 与 图处叠加到一起cv2.namedWindow('img', cv2.WINDOW_NORMAL)
superman = cv2.imread('E://pic//Man_Of_Steel_superman_superhero_____f_1920x1080.jpg')# 创建水印
logo = np.zeros((200, 200, 3), np.uint8)
mask = np.zeros((200, 200), np.uint8)# 绘制水印
logo[20:120, 20:120] = [0, 0, 255]
logo[80:180, 80:180] = [255, 255, 0]mask[20:120, 20:120] = 255
mask[80:180, 80:180] = 255# 对mask按位取反
m = cv2.bitwise_not(mask)# 选择添加logo的位置
roi = superman[0:200, 0: 200]# 和m进行按位与操作
# 因为roi是三通道,而m是单通道,不能直接相与
tmp = cv2.bitwise_and(roi, roi, mask=m)dst = cv2.add(tmp, logo)superman[0:200, 0:200] = dstcv2.imshow('dst', dst)
cv2.imshow('tmp', tmp)
cv2.imshow('mask', mask)
cv2.imshow('logo', logo)
cv2.imshow('img', superman)
cv2.imshow('m', m)key = cv2.waitKey(0) & 0xff
if key == ord('q'):cv2.destroyAllWindows()

在这里插入图片描述

之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

http://www.bjxfkj.com.cn/article/215.html

相关文章:

  • 网站建设的三要素/深圳关键词排名优化系统
  • 网站开发技术文档/网站制作推广电话
  • html5手机网站开发实例/视频营销模式有哪些
  • 移动网站开发认证考试/网络推广项目代理
  • laravel 做中英文网站/文员短期电脑培训
  • 网站怎么营销/太原百度公司地址
  • 宣城网站建设价格/如何自己开网站
  • 网站建设公司上海做网站公司排名/网站关键词优化系统
  • 有哪些专门做展会创意的网站/百家号seo怎么做
  • 沧州瑞智网站建设/100%上热门文案
  • 电商网站建站报价/天津网站制作系统
  • 如何改进网站/接推广app任务的平台
  • 天津网站制作网站/阿里云域名查询
  • seo优化上首页/seo 深圳
  • 网站网页怎么做/西地那非片能延时多久有副作用吗
  • 网站引导页psd/app推广平台接单渠道
  • 潍坊网站建设服务商/知识搜索引擎
  • wordpress搭建短视频网站/百度云引擎搜索
  • 河北省建设工程安全生产监督管理网站/手机百度app下载安装
  • 衡水提供网站制作公司电话/长沙互联网推广公司
  • 网站后台上传用户界面不显示/google官网入口注册
  • 做网站平台的公司/做网站的平台有哪些
  • 美工做网站怎么收费/重庆今天刚刚发生的重大新闻
  • wordpress 论坛 小程序/seo推广关键词公司
  • 中关村在线网站的建设/百度惠生活商家怎么入驻
  • 做现货值得关注的财经网站/站点推广是什么意思
  • 做网站的上香动画/常见的网络营销方法
  • 寻找好项目网/绍兴seo推广公司
  • 网站制作价格表模板/什么是搜索引擎优化的核心
  • 做包装找灵感看什么网站/vue seo 优化方案