当前位置: 首页 > news >正文

《数字图像处理-OpenCV/Python》连载(2)目录

《数字图像处理-OpenCV/Python》连载(2)目录


本书京东优惠购书链接:https://item.jd.com/14098452.html
本书CSDN独家连载专栏:https://blog.csdn.net/youcans/category_12418787.html

在这里插入图片描述


第一部分 OpenCV-Python的基本操作

第1章 图像的基本操作 3

1.1 图像的读取与保存 3
1.1.1 图像的读取 3
1.1.2 图像的保存 4
1.2 图像的显示 6
1.3 基于Matplotlib显示图像 7
1.4 视频文件的读取与保存 9
1.5 多帧图像的读取与保存 12

第2章 图像的数据格式 15

2.1 图像属性与数据类型 15
2.1.1 图像颜色分类 15
2.1.2 以Numpy数组表示数字图像 15
2.1.3 图像的数据类型 16
2.2 图像的创建与复制 17
2.3 图像的裁剪与拼接 19
2.4 图像通道的拆分与合并 21
2.5 获取与修改像素值 23
2.6 快速LUT替换像素值 25

第3章 彩色图像处理 29

3.1 图像的颜色空间转换 29
3.1.1 图像的颜色空间 29
3.1.2 图像的颜色空间转换 29
3.2 灰度图像的伪彩色处理 31
3.3 多模态数据合成的伪彩色图像 33
3.4 图像的色彩风格滤镜 35
3.5 调节图像的色彩平衡 37

第4章 绘图与鼠标交互 40

4.1 OpenCV绘图函数的参数 40
4.2 绘制直线与线段 41
4.3 绘制垂直矩形 43
4.4 绘制旋转矩形 45
4.5 绘制圆形和椭圆 47
4.5.1 绘制圆形 47
4.5.2 绘制椭圆和椭圆弧 49
4.6 绘制多段线和多边形 53
4.7 图像上添加文字 56
4.8 鼠标框选矩形区域 57
4.9 鼠标交互操作 59


第二部分 图像处理的基本方法

第5章 图像的算术运算 65

5.1 图像的加法与减法运算 65
5.2 使用掩模图像控制处理区域 67
5.3 图像的加权加法运算 69
5.4 图像的乘法与除法运算 71
5.5 图像的位运算 73
5.6 图像的积分运算 77
5.7 图像的归一化处理 80


第6章 图像的几何变换 81

6.1 图像的平移 81
6.2 图像的缩放 83
6.3 图像的旋转 85
6.4 图像的翻转 88
6.5 图像的斜切 89
6.6 图像的投影变换 91
6.7 图像的重映射 94


第7章 图像的灰度变换 99

7.1 图像反转变换 99
7.2 线性灰度变换 100
7.3 非线性灰度变换 105
7.3.1 对数变换 105
7.3.2 幂律变换 105
7.4 分段线性变换之对比度拉伸 108
7.5 分段线性变换之灰度级分层 109
7.6 灰度变换之比特平面 110
7.7 基于灰度变换调整图像色阶 112


第8章 图像的直方图处理 116

8.1 图像的灰度直方图 116
8.2 图像的直方图均衡化 118
8.3 图像的直方图匹配 120
8.4 基于局部直方图统计量的图像增强 124
8.5 限制对比度自适应直方图均衡化 126


第9章 图像的阈值处理 129

9.1 固定阈值处理 129
9.2 OTSU阈值算法 133
9.3 多阈值处理算法 134
9.4 自适应阈值处理 137
9.5 移动平均阈值处理 138
9.6 HSV颜色空间的阈值分割 140
9.6.1 HSV颜色空间 140
9.6.2 区间阈值处理 141


第三部分 图像处理的高级方法

第10章 图像卷积与空间滤波 149

10.1 相关运算与卷积运算 149
10.1.1 相关运算 149
10.1.2 可分离卷积核 150
10.1.3 边界扩充 151
10.2 空间滤波之盒式滤波器 153
10.3 空间滤波之高斯滤波器 155
10.4 空间滤波之统计排序滤波器 157
10.4.1 中值滤波器 157
10.4.2 最大值滤波器 157
10.4.3 最小值滤波器 158
10.4.4 中点滤波器 158
10.4.5 修正阿尔法均值滤波器 158
10.5 空间滤波之自适应滤波器 161
10.5.1 自适应局部降噪滤波器 161
10.5.2 自适应中值滤波器 161
10.6 空间滤波之双边滤波器 164
10.7 空间滤波之钝化掩蔽 166
10.8 空间滤波之Laplacian算子 168
10.9 空间滤波之Sobel算子与Scharr算子 169
10.9.1 Sobel算子 169
10.9.2 Scharr算子 170
10.10 图像金字塔 173
10.10.1 高斯金字塔 173
10.10.2 拉普拉斯金字塔 174


第11章 傅里叶变换与频域滤波 179

11.1 图像的傅里叶变换 179
11.1.1 用OpenCV实现傅里叶变换 180
11.1.2 用Numpy实现傅里叶变换 181
11.1.3 频谱中心化 181
11.2 快速傅里叶变换 185
11.3 频域滤波的基本步骤 187
11.4 频域滤波之低通滤波 189
11.4.1 低通滤波器的传递函数 189
11.4.2 频域滤波的详细步骤 192
11.5 频域滤波之高通滤波 195
11.6 频域滤波之Laplacian算子 198
11.6.1 Laplacian算子 198
11.6.2 梯度算子的传递函数 198
11.7 频域滤波之选择性滤波器 202
11.7.1 带阻滤波器和带通滤波器 203
11.7.2 陷波滤波器 203


第12章 形态学图像处理 209

12.1 腐蚀运算和膨胀运算 209
12.1.1 腐蚀和膨胀 209
12.1.2 形态学处理的结构元 210
12.2 形态学运算函数 212
12.2.1 形态学高级运算 213
12.2.2 形态学处理函数 214
12.3 灰度形态学运算 218
12.3.1 灰度腐蚀与灰度膨胀 218
12.3.2 灰度开运算与灰度闭运算 219
12.3.3 灰度顶帽算子和灰度底帽算子 219
12.4 形态学算法之边界提取 225
12.5 形态学算法之直线提取 226
12.6 形态学算法之线条细化 228
12.7 形态学重建之边界清除 230
12.8 形态学重建之孔洞填充 232
12.8.1 孔洞填充算法 232
12.8.2 泛洪填充算法 233
12.9 形态学重建之骨架提取 237
12.10 形态学重建之粒径分离 238
12.11 基于形态学的粒度测定 240
12.12 形态学算法之边缘检测和角点检测 242


第13章 图像变换、重建与复原 245

13.1 直角坐标与极坐标变换 245
13.2 霍夫变换直线检测 247
13.3 霍夫变换圆检测 250
13.4 雷登变换与反投影图像重建 252
13.4.1 投影和雷登变换 252
13.4.2 反投影和图像重建 253
13.5 雷登变换滤波反投影图像重建 257
13.6 退化图像复原之逆滤波 260
13.7 退化图像复原之维纳滤波 263
13.8 退化图像复原之最小二乘法滤波 266


第四部分 计算机视觉

第14章 边缘检测与图像轮廓 273

14.1 边缘检测之梯度算子 273
14.2 边缘检测之LoG算子 275
14.3 边缘检测之DoG算子 278
14.4 边缘检测之Canny算子 280
14.5 边缘连接 282
14.6 轮廓的查找与绘制 284
14.6.1 查找图像轮廓 284
14.6.2 绘制图像轮廓 285
14.7 轮廓的基本参数 288
14.7.1 轮廓的面积 288
14.7.2 轮廓的周长 288
14.7.3 轮廓的质心 289
14.7.4 轮廓的等效直径 289
14.7.5 极端点的位置 289
14.8 轮廓的形状特征 292
14.8.1 轮廓的垂直矩形边界框 292
14.8.2 轮廓的最小矩形边界框 292
14.8.3 轮廓的最小外接圆 293
14.8.4 轮廓的最小外接三角形 293
14.8.5 轮廓的近似多边形 294
14.8.6 轮廓的拟合椭圆 294
14.8.7 轮廓的拟合直线 294
14.8.8 轮廓的凸壳 295
14.9 轮廓的属性 298
14.9.1 轮廓的宽高比 298
14.9.2 轮廓的面积比 299
14.9.3 轮廓的坚实度 299
14.9.4 轮廓的方向 299
14.9.5 轮廓的掩模 299
14.9.6 轮廓的最大值、最小值及其位置 300
14.9.7 灰度均值和颜色均值 300
14.9.8 检测轮廓的内部/外部 300
14.10 矩不变量与形状相似性 303
14.10.1 图像的矩不变量 303
14.10.2 基于矩不变量的形状相似性 304


第15章 图像分割 308

15.1 区域生长与分离 308
15.1.1 区域生长 308
15.1.2 区域分离与聚合 308
15.2 超像素区域分割 311
15.2.1 简单线性迭代聚类 311
15.2.2 能量驱动采样 311
15.2.3 线性谱聚类 312
15.2.4 OpenCV超像素分割函数 312
15.3 分水岭算法 317
15.4 图割分割算法 322
15.4.1 GraphCut图割算法 322
15.4.2 GrabCut图割算法 322
15.4.3 OpenCV中的图割算法 323
15.5 均值漂移算法 328
15.6 运动图像分割 331
15.6.1 帧间差分法 331
15.6.2 背景差分法 331
15.6.3 密集光流法 332


第16章 特征描述 340

16.1 特征描述之弗里曼链码 340
16.2 特征描述之傅里叶描述符 344
16.3 特征描述之傅里叶频谱分析 347
16.4 特征描述之区域特征描述 350
16.5 特征描述之灰度共生矩阵 353
16.6 特征描述之LBP描述符 356
16.6.1 基本LBP特征描述符 356
16.6.2 扩展LBP特征描述符 356
16.6.3 LBP特征统计直方图 357
16.7 特征描述之HOG描述符 363
16.8 特征描述之BRIEF描述符 367
16.9 特征描述之FREAK描述符 371


第17章 特征检测与匹配 374

17.1 角点检测之Harris算法 374
17.1.1 Harris角点检测算法 374
17.1.2 Shi-Tomas角点检测算法 375
17.1.3 OpenCV角点检测算法 375
17.2 角点检测之亚像素精确定位 377
17.3 特征检测之SIFT算法 380
17.3.1 SIFT算法的原理 380
17.3.2 OpenCV的SIFT类 381
17.4 特征检测之SURF算法 384
17.4.1 SURF算法原理 384
17.4.2 OpenCV的SURF类 385
17.5 特征检测之FAST算法 387
17.6 特征检测之ORB算法 390
17.6.1 基于尺度空间的FAST关键点检测 390
17.6.2 基于点方向的BRIEF特征描述符 390
17.7 特征检测之MSER算法 392
17.8 特征匹配之暴力匹配 396
17.9 特征匹配之最近邻匹配 399
17.9.1 最近邻匹配 399
17.9.2 单应性映射变换 400


第18章 机器学习 404

18.1 OpenCV机器学习模块 404
18.2 主成分分析 406
18.2.1 主成分分析基本方法 406
18.2.2 OpenCV的PCA类 406
18.3 k均值聚类算法 409
18.4 k近邻算法 413
18.5 贝叶斯分类器 417
18.6 支持向量机 420
18.6.1 支持向量机算法 420
18.6.2 OpenCV的SVM类 421
18.6.3 OpenCV的SVMSGD类 422
18.7 人工神经网络算法 426
18.7.1 神经网络算法介绍 426
18.7.2 ANN_MLP神经网络模型 427


参考文献 436

在这里插入图片描述

本书京东优惠购书链接:https://item.jd.com/14098452.html


版权声明:
youcans@xupt 原创作品,转载必须标注原文链接:(https://blog.csdn.net/youcans/article/details/132435636)
Copyright 2023 youcans, XUPT
Crated:2023-08-22
欢迎关注专栏: 《数字图像处理-OpenCV/Python》连载

相关文章:

《数字图像处理-OpenCV/Python》连载(2)目录

《数字图像处理-OpenCV/Python》连载(2)目录 本书京东优惠购书链接:https://item.jd.com/14098452.html 本书CSDN独家连载专栏:https://blog.csdn.net/youcans/category_12418787.html 第一部分 OpenCV-Python的基本操作 第1章 …...

Go学习-Day4

文章目录 Go学习-Day4函数值传递,引用传递常用的函数 异常处理数组Slice切片 Go学习-Day4 个人博客:CSDN博客 函数 值传递,引用传递 值传递直接拷贝值,一般是基本数据类型,数组,结构体也是引用传递传递…...

将el-dialog封装成函数调用

1、 使用Vue实例化方法 // MyDialog.js import Vue from vue export const openFormDialog function ({ props {}, events {} }) {const vm new Vue({data () {return {form: {}}},render () {return (<el-dialogvisible{true}{...{ props }}{...{ on: events }}onClos…...

Windows10批处理命令行设置环境变量笔记,无需重新安装python与chrome

近期&#xff0c;工作中经常安装、部署python生产、开发环境&#xff0c;比较麻烦&#xff0c;也没有心情去优化。突然&#xff0c;我的电脑崩溃了&#xff0c;在重新安装电脑的过程中&#xff0c;保留了原来的安装软件&#xff08;有的没有放在系统盘中&#xff09;&#xff0…...

统计学补充概念07-比较树

概念 在层次聚类中&#xff0c;聚类结果可以以树状结构表示&#xff0c;通常称为树状图&#xff08;Dendrogram&#xff09;。树状图展示了数据点如何被合并或分裂以形成聚类的层次结构。通过观察树状图&#xff0c;可以更直观地理解数据点之间的相似性和关系。 在比较树状图…...

设计原则 --《设计模式之美》总结篇

本文是阅读《设计模式之美》的总结和心得&#xff0c;跳过了书中对面试和工作用处不大或不多的知识点&#xff0c;总结总共分为三章&#xff0c;分别是面对对象编程范式、设计原则和设计模式。 设计模式是代码设计时的一些经验总结。相比于设计模式&#xff0c;设计原则更抽象。…...

Day16-蜗牛影城后端开发

蜗牛影城后端开发 一 多表关联查询 电影集合movie的type(类别)字段关联到电影类别movieType表的_id(主键) 二 蜗牛影城后端开发 1 数据的导入导出 2 用户模块 UserModel.js //导入mongoose,并解构出Schema(类)和model(对象) const {Schema,model} =...

axios / fetch 实现 stream 流式请求

axios 是一个支持node端和浏览器端的易用、简洁且高效的http库。本文主要介绍 axios 如何实现 stream 流式请求&#xff0c;注意这里需要区分 node 环境和浏览器环境。 一、node端 代码演示&#xff1a; const axios require(axios);axios({method: get,url: http://tiven.c…...

Pytorch学习:torchvison.transforms常用包(ToTensor、Resize、Compose和RandomCrop)

torchvision.transforms常用包 1. torchvision.transforms.ToTensor2. torchvision.transforms.Resize3. torchvision.transforms.Compose4. torchvision.transforms.Normalize5. torchvision.transforms.RandomCrop 1. torchvision.transforms.ToTensor 将PIL Image或ndarray…...

算法通关村十二关 | 字符串转换

1. 转换小写字母 LeetCode709&#xff1a;给你一个字符串s&#xff0c;将该字符串中的大写字母转换成相同的小写字母&#xff0c;返回新的字符串。 每个字母都是有确定的ASCII的&#xff0c;可以根据码表操作子字符串&#xff0c;常见的ASCII范围是&#xff1a; a-z: 97-122, …...

前端进阶Html+css09----BFC模型

1.什么是BFC模型 全称是&#xff1a;Block formatting context&#xff08;块级格式化上下文&#xff09;&#xff0c;是一个独立的布局环境&#xff0c;不受外界的影响。 2.FC,BFC,IFC 元素在标准流里都属于一个FC&#xff08;Formatting Context&#xff09;。 块级元素的布…...

重排链表(C语言)

题目&#xff1a; 示例&#xff1a; 思路&#xff1a; 这题我们将使用栈解决这个问题&#xff0c;利用栈先进后出的特点&#xff0c;从链表的中间位置进行入栈&#xff0c;寻找链表的中间位置参考&#xff1a;删除链表的中间节点&#xff0c;之后从头开始进行连接。 本题使用…...

el-table动态合并单元格

el-table使用这个方法合并单元格&#xff0c;:span-method“hbcell” <el-table size"small" :data"table.data" border empty-text"暂无数据" :cell-style"cellStyle" :header-cell-style"tableHeaderColor":span-meth…...

html元素

文章目录 html基本结构属性语义化为什么要语义化 示例head中属性样式一些概念块级元素与行级元素空白折叠 html编程没有css的html显示逻辑 html基本结构 html基本单元就是元素&#xff0c;每个元素有标记和属性&#xff0c;如&#xff1a; <a href"...">www&…...

push github

一、生成密钥 打开git bash执行下面指令&#xff0c;Enter下一步Enter下一步..生成ssh key 密钥&#xff1b; ssh-keygen -t rsa 二、 复制公共密钥到git hub 登录github&#xff0c;在选项setting >> SSH and GPG key >> add new ssh添加刚才的公钥地址即可 验证…...

iFluor 594 Styramide是一种荧光染料,常用于生物分子标记和成像

试剂 | 基础知识概述&#xff08;部分&#xff09;: 中文名称&#xff1a;Alexa Fluor 594酪Styramide 分子量&#xff1a;1341.71 胺的优异替代品 100 Slides 英文名称&#xff1a;iFluor 594 Ex (nm)&#xff1a;588 Em (nm)&#xff1a;604 规格标准&#xff1a;1g&am…...

动态规划入门之01背包变形嗑药

P1802 5 倍经验日 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 嗑药固然可耻&#xff0c;但是能让你快速变强 --鲁迅 手动滑稽&#xff0c;话归正题 动态规划之背包入门01背包模板_爱莉我老婆的博客-CSDN博客 这是01背包的模板&#xff0c;没看的可以去看看。 我们把…...

数据结构——栈和队列OJ题

栈和队列小提升&#xff01; 前言一、用队列实现栈队列接口实现&#xff08;1&#xff09;栈的接口定义&#xff08;2&#xff09;栈的初始化&#xff08;3&#xff09;入栈函数的定义&#xff08;4&#xff09;出栈函数的定义&#xff08;5&#xff09;查找栈顶元素&#xff0…...

同态排序算法

参考文献&#xff1a; [Batcher68] Batcher K E. Sorting networks and their applications[C]//Proceedings of the April 30–May 2, 1968, spring joint computer conference. 1968: 307-314. [SV11] Smart, N.P., Vercauteren, F.: Fully homomorphic SIMD operations. IA…...

“深入探索JVM内部机制:解析Java虚拟机的工作原理“

标题&#xff1a;深入探索JVM内部机制&#xff1a;解析Java虚拟机的工作原理 摘要&#xff1a;本文将介绍Java虚拟机&#xff08;JVM&#xff09;的工作原理&#xff0c;包括类加载、内存管理、垃圾回收和字节码执行等方面。通过深入理解JVM的内部机制&#xff0c;开发人员可以…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件&#xff0c;常用于在两个集合之间进行数据转移&#xff0c;如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model&#xff1a;绑定右侧列表的值&…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始&#xff0c;我们会探讨数据链路层的差错控制功能&#xff0c;差错控制功能的主要目标是要发现并且解决一个帧内部的位错误&#xff0c;我们需要使用特殊的编码技术去发现帧内部的位错误&#xff0c;当我们发现位错误之后&#xff0c;通常来说有两种解决方案。第一…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件

今天呢&#xff0c;博主的学习进度也是步入了Java Mybatis 框架&#xff0c;目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学&#xff0c;希望能对大家有所帮助&#xff0c;也特别欢迎大家指点不足之处&#xff0c;小生很乐意接受正确的建议&…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

如何为服务器生成TLS证书

TLS&#xff08;Transport Layer Security&#xff09;证书是确保网络通信安全的重要手段&#xff0c;它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书&#xff0c;可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...

鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/

使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题&#xff1a;docker pull 失败 网络不同&#xff0c;需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

代码随想录刷题day30

1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币&#xff0c;另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额&#xff0c;返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

scikit-learn机器学习

# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...

比较数据迁移后MySQL数据库和OceanBase数据仓库中的表

设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...

uniapp 小程序 学习(一)

利用Hbuilder 创建项目 运行到内置浏览器看效果 下载微信小程序 安装到Hbuilder 下载地址 &#xff1a;开发者工具默认安装 设置服务端口号 在Hbuilder中设置微信小程序 配置 找到运行设置&#xff0c;将微信开发者工具放入到Hbuilder中&#xff0c; 打开后出现 如下 bug 解…...