浅谈Python实现opencv之图片色素的数值运算和逻辑运算

 更新时间:2021年06月23日 15:59:34   作者:云散月明晴  
今天带大家来学习的是关于Python的相关知识,文章围绕着图片色素的数值运算和逻辑运算展开,文中有非常详细的的介绍及代码示例,需要的朋友可以参考下

数值运算

代码:

# -*- coding=GBK -*-
import cv2 as cv
 
 
# 数值运算:加减乘除
def shu_image(src11, src22):
          src = cv.add(src11, src22)  # 加 : 图像对应像素值相加,> 255 时取255
          cv.namedWindow("add",0)
          cv.resizeWindow("add", 300, 300)  # 设置播放窗口长和宽
          cv.imshow("add", src)
          src = cv.subtract(src11, src22)  # 减 : 图像对应像素值相减,< 0 时取0
          cv.namedWindow("subtract", 0)
          cv.resizeWindow("subtract", 300, 300)
          cv.imshow("subtract", src)
          src = cv.multiply(src11, src22)  # 乘 : 图像对应像素值相乘,> 255 时取255
          cv.namedWindow("multiply", 0)
          cv.resizeWindow("multiply", 300, 300)
          cv.imshow("multiply", src)
          src = cv.divide(src11, src22)  # 除 : 图像对应像素值相除,a( > 0) / 0 = 255
          cv.namedWindow("divide", 0)
          cv.resizeWindow("divide", 300, 300)
          cv.imshow("divide", src)
 
src1 = cv.imread("jueduisiwang.bmp")
src2 = cv.imread("fuchoutianshi.bmp")
 
cv.namedWindow("src1", 0)
cv.resizeWindow("src1", 300, 300)
cv.imshow("src1", src1)
 
src2 = src2[:,:30,:] # 两张图片尺寸大小要一样,不然就需要调整
cv.namedWindow("src2", 0)
cv.resizeWindow("src2", 300, 300)
cv.imshow("src2", src2)
 
shu_image(src1, src2)
cv.waitKey(0)
cv.destroyAllWindows()

结果:

逻辑运算

代码:

# -*- coding=GBK -*-
import cv2 as cv
 
 
# 逻辑运算:与或非的操作
def luo_image(src1, src2):
    src = cv.bitwise_and(src1, src2)
    cv.namedWindow("AND", 0)
    cv.resizeWindow("AND", 300, 300)
    cv.imshow("AND", src)
    src = cv.bitwise_or(src1, src2)
    cv.namedWindow("OR", 0)
    cv.resizeWindow("OR", 300, 300)
    cv.imshow("OR", src)
    src = cv.bitwise_not(src1)
    cv.namedWindow("NOR", 0)
    cv.resizeWindow("NOR", 300, 300)
    cv.imshow("NOR", src)
    src = cv.bitwise_xor(src1, src2)
    cv.namedWindow("XOR", 0)
    cv.resizeWindow("XOR", 300, 300)
    cv.imshow("XOR", src)
 
src1 = cv.imread("jueduisiwang.bmp")
src2 = cv.imread("fuchoutianshi.bmp")
 
cv.namedWindow("src1", 0)
cv.resizeWindow("src1", 300, 300)
cv.imshow("src1", src1)
 
src2 = src2[:,:30,:] # 两张图片尺寸大小要一样,不然就需要调整
cv.namedWindow("src2", 0)
cv.resizeWindow("src2", 300, 300)
cv.imshow("src2", src2)
 
 
luo_image(src1, src2)
cv.waitKey(0)
cv.destroyAllWindows()

结果(不太具有参考价值):

备注:

图像的逻辑或运算就是255-对应通道像素值,也就是“取反”操作(黑白图就是黑变白,白变黑)

黑白图和同尺寸任意图的逻辑或运算就是加法运算

黑白图和同尺寸任意图的逻辑与运算就是黑白图的黑白像素值互换然后与同尺寸任意图做加法运算

而彩色图之间的逻辑运算关系感觉太复杂了,没搞懂 : (

到此这篇关于浅谈Python实现opencv之图片色素的数值运算和逻辑运算的文章就介绍到这了,更多相关图片色素的数值运算和逻辑运算内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python数据结构之二叉树的建立实例

    python数据结构之二叉树的建立实例

    这篇文章主要介绍了python数据结构之二叉树的建立实例,采用了类似递归方式建立,需要的朋友可以参考下
    2014-04-04
  • python实现换位加密算法的示例

    python实现换位加密算法的示例

    今天小编就为大家分享一篇python实现换位加密算法的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • python 以16进制打印输出的方法

    python 以16进制打印输出的方法

    今天小编就为大家分享一篇python 以16进制打印输出的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • Python eval函数的实现

    Python eval函数的实现

    这篇文章主要介绍了Python eval函数的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • python用海龟绘图写贪吃蛇游戏

    python用海龟绘图写贪吃蛇游戏

    这篇文章主要为大家详细介绍了python用海龟绘图写贪吃蛇游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • Python实现根据Excel生成Model和数据导入脚本

    Python实现根据Excel生成Model和数据导入脚本

    最近遇到一个需求,有几十个Excel,每个的字段都不一样,然后都差不多是第一行是表头,后面几千上万的数据,需要把这些Excel中的数据全都加入某个已经上线的Django项目。所以我造了个自动生成 Model和导入脚本的轮子,希望对大家有所帮助
    2022-11-11
  • python脚本实现xls(xlsx)转成csv

    python脚本实现xls(xlsx)转成csv

    这篇文章主要介绍了python脚本实现xls(xlsx)转成csv的相关资料,需要的朋友可以参考下
    2016-04-04
  • python批量检查两个对应的txt文件的行数是否一致的实例代码

    python批量检查两个对应的txt文件的行数是否一致的实例代码

    这篇文章主要介绍了python批量检查两个对应的txt文件的行数是否一致,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • Python获取时间戳代码实例

    Python获取时间戳代码实例

    这篇文章主要介绍了Python获取时间戳代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • tensorflow如何批量读取图片

    tensorflow如何批量读取图片

    这篇文章主要为大家详细介绍了tensorflow如何批量读取图片,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08

最新评论