目录

  • 1 OpenCV入门
    • 1.1 如何使用
    • 1.2 图像读入、显示与保存
  • 2 图像处理基础
    • 2.1 图像处理入门基础
    • 2.2 像素处理
    • 2.3 numpy访问像素
    • 2.4 获取图像属性
    • 2.5 感兴趣区域ROI
    • 2.6 通道操作
  • 3 图像运算
    • 3.1 图像加法
    • 3.2 图像融合
    • 3.3 位平面分解
    • 3.4 图像加密和解密
    • 3.5 数字水印
  • 4 色彩空间类型转换
    • 4.1 色彩类型转换
  • 5 几何变换
    • 5.1 图像缩放
    • 5.2 图像翻转
  • 6 阈值处理
    • 6.1 阈值理论知识
    • 6.2 阈值处理实践
  • 7 图像平滑处理
    • 7.1 均值滤波
    • 7.2 方框滤波
    • 7.3 高斯滤波
    • 7.4 中值滤波
  • 8 形态学操作
    • 8.1 图像腐蚀
    • 8.2 图像膨胀
    • 8.3 开运算
    • 8.4 闭运算
    • 8.5 梯度运算
    • 8.6 礼帽操作
    • 8.7 黑帽图像处理
  • 9 图像梯度
    • 9.1 Sobel理论基础
    • 9.2 Sobel算子及函数使用
    • 9.3 Scharr算子及函数使用
    • 9.4 Sobel算子和Scharr算子的比较
    • 9.5 Laplacian算子及函数使用
  • 10 canny边缘检测
    • 10.1 Canny边缘检测原理
    • 10.2 Canny函数及使用
  • 11 图像金字塔
    • 11.1 理论基础
    • 11.2 pyrDown函数及使用
    • 11.3 pyrUp函数及使用
    • 11.4 采样可逆性的研究
    • 11.5 拉普拉斯金字塔
  • 12 图像轮廓
    • 12.1 图像轮廓操作
  • 13 直方图
    • 13.1 直方图的概念
    • 13.2 绘制直方图
    • 13.3 使用OpenCV统计直方图
    • 13.4 绘制OpenCV统计直方图
    • 13.5 使用掩膜的直方图
    • 13.6 掩膜原理及演示
    • 13.7 直方图均衡化原理
    • 13.8 直方图均衡化函数equalizeHist
    • 13.9 subplot函数的使用
    • 13.10 matplotlib.pyplot.imshow函数的使用
    • 13.11 直方图均衡化对比
  • 14 傅里叶变换
    • 14.1 傅里叶变换的理论基础
    • 14.2 numpy实现傅里叶变换
    • 14.3 numpy实现逆傅里叶变换
    • 14.4 高通滤波演示
    • 14.5 OpenCV实现傅里叶变换
    • 14.6 OpenCV实现逆傅里叶变换
    • 14.7 低通滤波示例
图像加法

   

20级人工智能1 2

   


   

图像加法运算及图像融合

教学目的及要求

掌握图像加法、图像融合

   

图像加法

   

图像融合

   

讲授法、项目化教学法

       

计算机、Anaconda软件

       


教学过程及内容

见下

一:加法运算

1 Numpy加法

取模加法

运算方式:   结果=图像1+图像2

取模加法

总结:

如果两个图像对应像素值的和小于或等于255,则直接相加得到运算结果

如果两个图像对应像素值的和大于255,则将运算结果对256取模

2 OpenCV加法

饱和运算

运算方式:   结果=cv2.add(图像1,图像2)

总结:如果两个像素值的和小于或等于255,则直接相加得到运算结果

如果两个像素值的和大于255,则将运算结果处理为饱和值255

Numpy加法与OpenCV加法比较


import cv2

import numpy as np

a=cv2.imread("image\lena512.bmp")

b=a

result1=a+b

result2=cv2.add(a,b)

cv2.imshow("original",a)

cv2.imshow("result1",result1)

cv2.imshow("result2",result2)

cv2.waitKey()

cv2.destroyAllWindows()

注意的问题

参与运算的图像大小、类型必须一致。