python-OpenCV图像的基本运算

本节主要是进行图像一些基本运算,包括加减乘除,均方差运算,亮度对比度,逻辑运算。
以上对图像的操作均是对像素的处理,bitwise_and、bitwise_or、bitwise_xor、bitwise_not这四个按位操作函数。
bitwise_and是对二进制数据进行“与”操作,即对图像(灰度图像或彩色图像均可)每个像素值进行二进制“与”操作,1&1=1,1&0=0,0&1=0,0&0=0
bitwise_or是对二进制数据进行“或”操作,即对图像(灰度图像或彩色图像均可)每个像素值进行二进制“或”操作,1|1=1,1|0=0,0|1=0,0|0=0
bitwise_xor是对二进制数据进行“异或”操作,即对图像(灰度图像或彩色图像均可)每个像素值进行二进制“异或”操作,11=0,10=1,01=1,00=0
bitwise_not是对二进制数据进行“非”操作,即对图像(灰度图像或彩色图像均可)每个像素值进行二进制“非”操作,1=0,0=1
利用掩膜(mask)进行“与”操作,即掩膜图像白色区域是对需要处理图像像素的保留,黑色区域是对需要处理图像像素的剔除,其余按位操作原理类似只是效果不同而已。

import cv2 as cv
import numpy as np
#加法运算
def add_demo(m1,m2):
    dst = cv.add(m1,m2)
    cv.imshow("add_demo",dst)
    #减法运算
def subtract_demo(m1,m2):
    dst = cv.subtract(m1,m2)
    cv.imshow("subtract_demo",dst)
    #除法运算
def divide_demo(m1,m2):
    dst = cv.divide(m1,m2)
    cv.imshow("divide_demo",dst)
    #乘法运算
def multiply_demo(m1,m2):
    dst = cv.multiply(m1,m2)
    cv.imshow("multiply_demo",dst)
 #均方差
def others(m1,m2):
    M1,dev1=cv.meanStdDev(m1)
    M2,dev2=cv.meanStdDev(m2)
    h,w=m1.shape[:2]
    print(M1)
    print(M2)
    print(dev1)
    print(dev2)

    img=np.zeros([h,w],np.uint8)
    m,dev = cv.meanStdDev(img)
    print(m)
    print(dev)
 #逻辑运算
def logic_demo(m1,m2):
    dst=cv.bitewise_and(m1,m2)
    dst2=cv.bitewise_or(m1,m2)
    dst3=cv.bitewise_not('sea.jpg')
    cv.imshow("logic_window3",dst3)
    cv.imshow("logic_window1",dst)
    cv.imshow("logic_window2",dst2)
#提取亮度和对比度
def contract_bright_demo(image,c,b):
    h,w,ch=image.shape
    blank = np.zeros([h,w,ch],image,dtype)
    dst = cv.addWeighted(image,c,blank,1-c,b)
    cv.imshow("contract_bright_demo",dst)

部分内容转自
原文链接:https://blog.csdn.net/Lily_9/article/details/83143120
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python-opencv品质检测算法可以分为两类:基于图像处理技术和基于机器学习技术。 1. 基于图像处理技术的品质检测算法: (1) 图像去噪算法: 例如高斯滤波、中值滤波、双边滤波等,可以去除图像中的噪声。 (2) 图像增强算法: 例如直方图均衡化、自适应直方图均衡化、拉普拉斯算子增强等,可以增强图像的亮度和对比度。 (3) 边缘检测算法: 例如Sobel算子、Canny算子等,可以检测图像中的边缘。 (4) 形态学处理算法: 例如膨胀、腐蚀、开运算、闭运算等,可以去除图像中的小噪点和孔洞。 (5) 特征提取算法: 例如颜色直方图、纹理特征、形状特征等,可以提取图像的特征信息。 2. 基于机器学习技术的品质检测算法: (1) 支持向量机(SVM)算法: SVM算法可以通过训练数据集,学习到一种分类模型,用于分类任务。 (2) 决策树算法: 决策树算法可以通过训练数据集,学习到一种分类模型,用于分类任务。 (3) 随机森林算法: 随机森林算法是一种集成学习算法,它可以通过多个决策树模型的投票来进行分类任务。 (4) 深度学习算法: 深度学习算法可以通过深度神经网络模型,学习到一种分类模型,用于分类任务。 以上是常用的python-opencv品质检测算法,您可以根据具体需求选择合适的算法进行实现。如果您还有其他问题,请随时向我提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值