0%

  • 形态学,即数学形态学,是图像处理过程中一个非常重要的研究方向。形态学主要从图像内提取分量信息,该分量信息通常对于表达和描绘图像的形状具有重要意义,通常是图像理解时所使用的最本质的形状特征。例如:在识别手写数字时,能够通过形态学运算得到其骨架信息,在具体识别时,仅针对其骨架运算即可。形态学处理在视觉检测、文字识别、医学图像处理、图像压缩编码等领域有非常重要的应用。

    阅读全文 »

  • 在尽量保持图像原有信息的情况下,过滤掉图像内部的噪声,这一过程称为对图像的平滑处理,所得到的图像称为平滑图像。

均值滤波

  • 均值滤波是指用当前像素点周围N*N个像素值的均值来代替当前像素。使用该方法遍历处理图像内的每一个像素点,即可完成整幅图像的均值滤波。

    阅读全文 »

  • 阈值处理是指剔除图像内像素值高于一定值或者低于一定值的像素点。

  • 例如,设定阈值为127,然后:

  • 将像素内所有像素值大于127的像素点的值设为255

  • 将像素内所有像素值低于127的像素点的值设为0

    阅读全文 »

  • 几何变换是指将一幅图像映射到另外一幅图像内的操作。opencv提供了多个与映射有关的函数,这些函数使用起来方便灵活,能够高效地完成图像的映射。

    阅读全文 »

色彩空间基础

  • 比较常见的色彩空间包括:

  • GRAY色彩空间

  • XYZ色彩空间

  • YCrCb色彩空间

  • HSV色彩空间

  • HLS色彩空间

  • CIELab色彩空间

  • CIELuv色彩空间

  • Bayer色彩空间等等

    阅读全文 »

图像加法运算

  1. 加号运算符“+”
  2. cv2.add()函数
  • 通常情况下,在灰度图像中,像素用8个比特位(一个字节)来表示,像素值的范围是[0, 255]。两个像素值在进行加法运算时,求得的和很可能超过255.上述两种不同的加法运算方式,对超过255的数值的处理方式是不一样的。

    阅读全文 »

像素处理

案例1:首先使用numpy生成一个(8, 8)大小的数组,用来模拟一个黑色图像

1
2
3
4
5
6
7
import numpy as np
import cv2

img = np.zeros((8, 8), dtype=np.uint8)
cv2.imshow('one', img)
cv2.waitKey()
cv2.destroyAllWindows()
阅读全文 »

读取图像

retval = cv2.imread(filename, flages)

  • retval 是返回值,其值是读取到的图像,如果未读取到图像,则返回“None”

  • filename表示要读取的图像的完整文件名

  • flags 是读取标记用来控制读取文件的类型

    阅读全文 »

上⼀章我们介绍了卷积神经⽹络的基本原理,本章我们将带你了解现代的卷积神经⽹络架构,许多现代卷积神经⽹络的研究都是建⽴在这⼀章的基础上的。在本章中的每⼀个模型都曾⼀度占据主导地位,其中许多模型都是ImageNet竞赛的优胜者。ImageNet竞赛⾃2010年以来,⼀直是计算机视觉中监督学习进展的指向标。

  1. AlexNet。它是第⼀个在⼤规模视觉竞赛中击败传统计算机视觉模型的⼤型神经⽹络;

  2. 使用重复块的⽹络(VGG)。它利⽤许多重复的神经⽹络块;

  3. ⽹络中的⽹络(NiN)。它重复使⽤由卷积层和1 × 1卷积层(⽤来代替全连接层)来构建深层⽹络;

  4. 含并⾏连结的⽹络(GoogLeNet)。它使⽤并⾏连结的⽹络,通过不同窗⼝⼤⼩的卷积层和最⼤汇聚层来并⾏抽取信息;

  5. 残差⽹络(ResNet)。它通过残差块构建跨层的数据通道,是计算机视觉中最流⾏的体系架构;

  6. 稠密连接⽹络(DenseNet)。它的计算成本很⾼,但给我们带来了更好的效果。

    阅读全文 »