python实现图片色素的数值运算(加减乘除)和逻辑运算(与或非异或)
目录:
(一)数值运算(加减乘除)
(二)逻辑运算(与或非异或)
正文:
(一)数值运算(加减乘除)
opencv自带图片色素的处理函数------相加:add() 相减:subtract() 相乘:multiply() 相除:divide()
原理就是:通过获取两张(一次只能是两张)个图片的同一个位置的色素值来实现运算。运算的要求:两张图片的shape要一样。
1 # -*- coding=GBK -*-
2 import cv2 as cv
3
4
5 #数值运算:加减乘除
6 def shu_image(src11, src22):
7 src = cv.add(src11, src22)#加
8 cv.imshow("相加", src)
9 src = cv.subtract(src11, src22)#减
10 cv.imshow("相减", src)
11 src = cv.multiply(src11, src22)#乘
12 cv.imshow("相乘", src)
13 src = cv.divide(src11, src22)#除
14 cv.imshow("相除", src)
15
16
17
18
19 src1 = cv.imread("01.jpg")
20 src2 = cv.imread("02.jpg")
21 cv.imshow("原来1", src1)
22 cv.imshow("原来2", src2)
23 shu_image(src1, src2)
24 cv.waitKey(0)
25 cv.destroyAllWindows()
(二)逻辑运算(与或非异或)
opencv自带图片色素的处理函数------与:bitwise_add() 或:bitwise_or() 非:bitwise_not() 异或:bitwise_xor()
1 # -*- coding=GBK -*-
2 import cv2 as cv
3
4
5 #逻辑运算:与或非的操作
6 def luo_image(src11, src22):
7 src = cv.bitwise_and(src11, src22)#与 两张图片同一位置的色素两个值均不为零的才会有输出
8 cv.imshow("与", src)
9 src = cv.bitwise_or(src11, src22)#或 两张图片同一位置的色素两个值不全为零的才会有输出
10 cv.imshow("或", src)
11 src = cv.bitwise_not(src11)#非 对一张图片操作 取反
12 cv.imshow("非", src)
13 src = cv.bitwise_xor(src11, src22)#异或 两张图片同一位置的色素两个值有一个为零,另一个不为零才会输出
14 cv.imshow("异或", src)
15
16 src1 = cv.imread("01.jpg")
17 src2 = cv.imread("02.jpg")
18 cv.imshow("原来1", src1)
19 cv.imshow("原来2", src2)
20 luo_image(src1, src2)
21 cv.waitKey(0)
22 cv.destroyAllWindows()
python实现图片色素的数值运算(加减乘除)和逻辑运算(与或非异或)的更多相关文章
- Python数据科学手册-Pandas:数值运算方法
Numpy 的基本能力之一是快速对每个元素进行运算 Pandas 继承了Numpy的功能,也实现了一些高效技巧. 对于1元运算,(函数,三角函数)保留索引和列标签 对于2元运算,(加法,乘法),Pan ...
- python基础知识04-散列类型运算优先级和逻辑运算
散列类型 1.集合 定义集合 se = {1,2,3,4} se = set()定义空集合 se = {1,3,5,7} se2 = {1,3,8,9} se & se2 {1,3} 交集 s ...
- python数值运算 四则运算
数值运算 描述 获得用户输入的一个字符串,格式如下: ...
- 1.9 Python基础知识 - 数值运算
一.数值运算 在Python中有丰富的算术运算,这使得Python在科学计算领域有着很高的地位,Python可以提供包括四则运算在内的各种算术运算. 算术运算符 运算符 含义 说明 优先级 实例 ...
- 数值运算内建函数(core python programming 2nd edition 5.6.2)
数值运算内建函数 函数 功能 abs(num) 返回 num 的绝对值 coerce(num1, num2) 将num1和num2转换为同一类型,然后以一个元组的形式返回. divmod(num1, ...
- Python下图片的高斯模糊化的优化
资源下载 #本文PDF版下载 Python下图片的高斯模糊化的优化(或者单击我博客园右上角的github小标,找到lab102的W6目录下即可) #本文代码下载 高斯模糊(一维)优化代码(和本文方法集 ...
- Numpy数值类型与数值运算-03
什么是NumPy? NumPy是Python中科学计算的基本软件包.它是一个Python库,提供多维数组对象,各种派生对象(例如蒙版数组和矩阵) 以及各种例程,用于对数组进行快速操作,包括数学,逻辑, ...
- 1. Python中的基本数据类型、运算、变量
本文利用的是Python 3.x版本,建议学习3.x版本 Python中的基本数据类型.运算.变量 1. 基本数据类型 1.1 整数 py可以处理任意大小的整数,例如123,1234567891324 ...
- Shell基础(二):Shell中的数值运算、条件测试操作、使用if选择结构
一.Shell中的数值运算 目标: 本案例要求熟悉Linux Shell环境的特点,主要练习以下操作: 1> 使用expr.$[ ].let等整数运算工具:定义变量X=1234,然后计算X与78 ...
随机推荐
- ES6箭头函数(箭头函数和普通函数的区别)
箭头函数 一个参数 // 只有一个参数 // f : 函数名称 // v : 函数参数 // v+v : 函数内容 let f=v=> v+v console.log(f(10)) //20 两 ...
- PublishFolderCleaner 让你的 dotnet 应用发布文件夹更加整洁
大家都知道,在 dotnet 发布时,将会在输出的 publish 文件夹包含所需的依赖.在 .NET Core 开始,引入了 AppHost 的概念,即使是单个程序集,也需要独立的 Exe 可执行文 ...
- Visual Studio CMake 项目和 WSL
Visual Studio CMake 项目和 WSL https://devblogs.microsoft.com/cppblog/c-with-visual-studio-2019-and-win ...
- Java并行任务框架Fork/Join
Fork/Join是什么? Fork意思是分叉,Join为合并.Fork/Join是一个将任务分割并行运行,然后将最终结果合并成为大任务的结果的框架,父任务可以分割成若干个子任务,子任务可以继续分割, ...
- cassandra表中主键的类型
cassandra表中主键的类型及区分? 一.类型及区分 二.参考文章 一.类型及区分 Cassandra的4种Key Primary Key 主键 Composite Key,Compound Ke ...
- OO_JAVA_JML系列作业_单元总结
OO_JAVA_JML系列作业_单元总结 (1)梳理JML语言的理论基础.应用工具链情况 简单梳理 以下三者是jml规格里的核心,对一个方法功能和属性的限制: requires子句:规定方法的前置条件 ...
- OO前三次作业思考(第一次OO——Blog)
OO前三次作业总结 基于度量分析程序结构 由于三次作业较多,决定分析内容.功能最为复杂的第三次作业. 上图为第三次作业的类图.我使用了一个抽象类Factor,写了五个因子继承Factor,然后又单独开 ...
- BZOJ4919[Lydsy1706月赛]大根堆-------------线段树进阶
是不是每做道线段树进阶都要写个题解..根本不会写 Description 给定一棵n个节点的有根树,编号依次为1到n,其中1号点为根节点.每个点有一个权值v_i. 你需要将这棵树转化成一个大根堆.确切 ...
- 单片机stm32的5个时钟源的详细分析
众所周知STM32有5个时钟源HSI.HSE.LSI.LSE.PLL,其实他只有四个,因为从上图中可以看到PLL都是由HSI或HSE提供的. 其中,高速时钟(HSE和HSI)提供给芯片主体的主时钟.低 ...
- 到底能不能用 join
互联网上一直流传着各大公司的 MySQL 军规,其中关于 join 的描述,有些公司不推荐使用 join,而有些公司则规定有条件的使用 join, 它们都是教条式的规定,也没有详细说其中的原因,这就很 ...