Octave为GNU项目下的开源软件,旨在解决线性和非线性数值计算问题。本书由浅入深,全面讲解基于Octave软件的图像处理技术,帮助读者尽快掌握Octave图像处理的技巧。本书共13章,将图像处理算法按照不同的技术路线归类,不但囊括图像增强、图像叠加、图像滤波等传统图像处理算法,还重点讲解先进的AI图像处理技术,可用于创作出风格各异的图像,技术先进。本书中的大部分图像处理算法附带图像处理效果图,可用于比较不同图像处理算法的效果,使本书阅读更直观,图像处理算法更易懂。本书适合各种基础的读者,配套数百段实战程序代码,没有接触过图像处理的读者可以通过本书快速入门,接触过图像处理的读者也可以通过本书快速查找所需的图像处理程序代码。
本书依据真实的工业研发经验和在科学计算领域的积累,将实际的应用场景和理论的图像处理算法相融合,博采其他编程语言的经典概念,配合Octave编程的基础知识进行实战,力求读者可以由浅入深地上手图像处理技术中的各个环节。
前言
图像处理是指对图像进行分析、加工和处理以满足特定需求的技术。它涵盖了从简单的图像增强到复杂的图像分析等多个方面。
图像处理在许多领域有广泛的应用。在摄影工业中,图像处理可以应用于直方图均化、图像去噪和对比度增强等处理和分析。在遥感与卫星成像中,图像处理可以应用于地质勘探和环境监测等场景。在安全监控中,图像处理可以应用于人脸识别、车牌识别和道路识别等场景。在商业零售中,图像处理可以应用于商品识别、效果图生成和模特生成等场景。
笔者依据真实的工业研发经验和在科学计算领域的积累,将实际的应用场景和理论的图像处理算法相融合,博采其他编程语言的经典概念,配合Octave编程的基础知识进行实战,力求读者可以由浅入深地上手图像处理技术中的各个环节。
第1章和第2章讲解Octave基本概念和基本图像操作。第2章先从图像读取入手,然后讲解查看图像信息和图像格式,以及图像分割和图像分块处理方式,最后讲解图像显示或保存。
第3章讲解与图像数据格式相关的知识。图像按数据格式大致分为彩色图像、灰度图像、二值图像、索引图像和多帧图像,并且可以在不同的数据格式之间互相转换,还可以通过文件流进行流式传输。
第4章讲解与颜色相关的知识。读者先需要理解颜色空间的理论,再领会图像通道和颜色图的概念,这样便可管理图像中的颜色,配合实际的颜色处理算法对图像的颜色进行调节。
第5章讲解图像运算。图像运算可以分为像素运算、算术运算、邻域运算、几何变换、空间变换和二值图像打包解包。读者在学习这些算法后,可以将原始图像经运算后实现另外的效果。
第6章讲解与图像分析相关的知识。本章先讲解了经典且常用的直方图理论和图像归一化算法,再深入讲解图像的相关性指标,从单幅图像的指标扩展到两幅图像之间的指标。本章还涉及边缘检测、霍夫变换和凸包检测的用法,最后介绍图像统计和像素对比算法。读者可以通过图像分析指标进行后期处理,调节出视觉效果更具美感的图像。
第7章从图像平滑算法入手,配合颜色增强等增强算法,可以直接改变图像的整体风格,帮助读者创作出更有视觉表现力的图像。
第8章讲解与图像叠加相关的知识。图像在叠加其他元素之后,可以突出展示图像中的某些关键部分。
第9章讲解图像滤波的入门知识,从知名的滤波算子入手,到使用自定义算子滤波,带领读者设计自己的滤波算法,从复杂的图像中滤波得到需要的图像特征。本章还介绍了好用的图像去噪算法。读者可以利用该算法方便地去除图像中的噪声或噪点,而不需要设计自己的滤波算法。
第10章讲解图像模糊算法。图像模糊算法可以为图像增添一种朦胧的视觉效果,既可以用于改变图像的视觉效果,也可以用于抹掉图像的细节。
第11章讲解图像重建算法。图像重建算法用于提高图像的质量。读者可以通过图像重建算法从不完整或有噪声的测量数据中恢复出完整、清晰的图像。
第12章讲解与图像形态学相关的知识。通过图像形态学算法处理的图像通常具有抽象的变化,读者可以通过图像形态学的相关算法创作出富有想象力的图像效果。
第13章讲解AI与机器学习图像处理。国产AI大模型发展迅速,本章重点提到几十种国产AI大模型的图像处理算法,是一场国产AI大模型的盛宴。此外,本章还讲解了经典的Stable Diffusion模型,包括Stable Diffusion WebUI的图像界面用法和Stable Diffusion WebUI API用法,这些也是AI工程师的工具。读者不仅可以在本章中学习AI图像处理和机器学习图像处理的精要,还可以学习AI工程师的基本操作手法。
限于本人的水平和经验,书中难免存在疏漏之处,恳请与读者批评指正。
于红博2025年5月于哈尔滨
于红博,八度信商公司总经理,Octave中文网总工程师,资深Octave研发人员,研究方向主要涉及科学计算、图像处理、自动化系统设计、模式识别、神经网络等分支的算法设计和程序设计领域。擅长编写、审阅及完善开源软件,对于开源软件的发展做出了一定的贡献,曾创立互联网企业,深入涉及关键领域市场,致力于突破多项核心技术的自主研发。
目录
本书源码
第1章绪论
第2章基本图像操作
2.1图像读取
2.2图像信息
2.3图像格式
2.4图像分割
2.5图像分块
2.6图像显示
2.6.1按原分辨率显示图像
2.6.2缩放显示图像
2.7图像保存
第3章图像数据格式
3.1彩色图像
3.2灰度图像
3.3二值图像
3.4索引图像
3.5多帧图像
3.6图像数据格式转换
3.6.1双精度浮点型
3.6.2单精度浮点型
3.6.3半精度浮点型
3.6.4uint8整型
3.6.5uint16整型
3.6.6int16整型
3.7图像和文件流
第4章颜色
4.1颜色空间
4.1.1常用颜色空间
4.1.2颜色空间转换
4.1.3灰度转换
4.2图像通道
4.2.1常用图像通道
4.2.2索引图像通道
4.2.3抽取图像通道
4.2.4拆分图像通道
4.3颜色图
4.3.1Octave的内置颜色图
4.3.2OpenCV库的内置颜色图
4.3.3查看颜色图
4.3.4颜色图移位
4.4去色
4.5着色
4.6伪彩色
4.6.1灰度分层法
4.6.2灰度变换法
4.6.3智能伪彩色处理
4.7反色
4.7.1全部反色
4.7.2部分反色
4.8透明度
4.8.1修改透明度
4.8.2颜色混合
4.8.3颜色渐变
4.9对比度
4.9.1增加对比度
4.9.2减小对比度
4.10颜色查找表
4.10.1创建颜色查找表
4.10.2应用颜色查找表
4.10.3用颜色查找表替换颜色
4.11颜色替换
第5章图像运算
5.1像素运算
5.1.1获取像素
5.1.2根据像素生成二值图像
5.1.3量化生成图像
5.1.4像素排序
5.1.5固定阈值法
5.1.6基于通道阈值更改像素
5.1.7像素扩散
5.2算术运算
5.2.1非常差值
5.2.2图像加法
5.2.3图像减法
5.2.4图像乘法
5.2.5图像除法
5.2.6图像幂运算
5.2.7图像开方运算
5.2.8图像指数运算
5.2.9图像对数运算
5.2.10图像求逆
5.2.11图像转置
5.2.12图像按位与运算
5.2.13图像按位或运算
5.2.14图像按位非运算
5.2.15图像按位异或运算
5.2.16图像加权组合
5.2.17图像线性变换
5.3邻域运算
5.4几何变换
5.4.1高斯金字塔
5.4.2镜像复制
5.4.3镜像翻转
5.4.4图像复制
5.5空间变换
5.5.1图像空间变换
5.5.2点的空间变换
5.5.3空间变换对象
5.5.4仿射变换
5.5.5透视变换
5.5.6角点检测
5.6二值图像打包解包
5.6.1二值图像打包
5.6.2二值图像解包
第6章图像分析
6.1直方图
6.1.1绘制直方图
6.1.2直方图均化
6.2图像归一化
6.3图像相关性
6.3.1相关系数
6.3.2增强相关系数
6.3.3峰值信噪比
6.3.4均方误差
6.3.5归一化互相关性
6.3.6平均非常误差
6.3.7峰值非常误差
6.3.8均方根误差
6.4边缘检测
6.4.1Sobel边缘检测
6.4.2Prewitt边缘检测
6.4.3Kirsch边缘检测
6.4.4Roberts边缘检测
6.4.5LoG边缘检测
6.4.6零交叉边缘检测
6.4.7Canny边缘检测
6.4.8Lindeberg边缘检测
6.4.9Andy边缘检测
6.4.10Scharr边缘检测
6.5霍夫变换
6.5.1霍夫变换峰值
6.5.2直线检测
6.5.3线段检测
6.5.4圆形检测
6.5.5绘制霍夫变换曲线
6.6凸包检测
6.6.1凸包轮廓
6.6.2凸包中的凹陷区域
6.6.3凸包轮廓的交集
6.7图像统计
6.7.1均值
6.7.2标准差
6.7.3熵
6.7.4梯度
6.7.5局部最大值点
6.7.6非零点数量
6.7.7范数
6.8像素对比
第7章图像增强
7.1图像平滑
7.1.1高斯滤波平滑
7.1.2均值滤波平滑
7.1.3圆盘滤波平滑
7.1.4中值滤波平滑
7.1.5双向滤波平滑
7.1.6Perona和Malik平滑
7.1.7自定义高斯滤波平滑
7.2颜色增强
7.3亮度增强
7.4锐度增强
7.5对比度增强
7.6灰度增强
7.7细节增强
7.8素描风格
7.8.1黑白素描风格
7.8.2彩色素描风格
7.9风格化
7.10炭笔风格
7.11漩涡风格
第8章图像叠加
8.1叠加颜色
8.2叠加几何形状
8.2.1叠加矩形
8.2.2叠加圆形
8.2.3叠加圆弧
8.2.4叠加椭圆
8.2.5叠加椭圆弧
8.2.6叠加椭圆或椭圆弧
8.2.7叠加直线
8.2.8叠加多边形
8.3叠加其他图像
8.3.1图像溶解
8.3.2将图像绘制于另一幅图像上
8.3.3最大值图像和最小值图像
8.4叠加水印
8.4.1明水印
8.4.2暗水印
8.5蒙版
8.5.1创建蒙版
8.5.2叠加蒙版
8.6叠加噪声
8.6.1泊松噪声
8.6.2高斯噪声
8.6.3椒盐噪声
8.6.4斑点噪声
8.6.5均匀噪声
8.6.6乘法噪声
8.6.7脉冲噪声
8.6.8拉普拉斯噪声
8.6.9随机噪声
8.7叠加边框
8.8立体图像
第9章图像滤波
9.1滤波算子
9.2卷积滤波
9.3排序滤波
9.4熵滤波
9.5范围滤波
9.6标准差滤波
9.7维纳滤波
9.8中值滤波
9.9盒子滤波
9.10积分图像
9.11非极大值抑制
9.12金字塔均值漂移滤波
9.13图像去噪
9.13.1快速非局部均值去噪
9.13.2去噪
9.13.3去噪点
9.13.4增强模式去噪
第10章图像模糊
10.1高斯模糊
10.2双向模糊
10.3运动模糊
10.4边缘模糊
10.5自适应阈值模糊
10.6stackBlur模糊
10.7像素化
10.8马赛克
10.9抖动
10.10排序抖动
第11章图像重建
11.1图像插值
11.1.1二维矩阵插值
11.1.2三维矩阵插值
11.1.3任意维度矩阵插值
11.1.4傅里叶插值
11.1.5双三次插值
11.1.6双线性插值
11.1.7盒子插值
11.1.8汉明插值
11.1.9Lanczos插值
11.1.10最近邻插值
11.2图像超分辨率重建
11.3傅里叶变换重建
11.3.1快速傅里叶变换
11.3.2离散傅里叶变换
11.3.3逆快速傅里叶变换
11.3.4逆离散傅里叶变换
11.3.5将零频分量移到变换矩阵的中心
11.3.6将零频分量从变换矩阵的中心移回原位
11.3.7傅里叶卷积
11.4离散余弦变换重建
11.4.1离散余弦变换
11.4.2逆离散余弦变换
11.5Radon变换重建
11.5.1Radon变换
11.5.2逆Radon变换
11.5.3过滤平行光投影
11.6fanbeam变换重建
11.6.1fanbeam变换
11.6.2逆fanbeam变换
11.7维纳去卷积
11.8去马赛克
第12章图像形态学
12.1基本形态学运算
12.1.1结构元素
12.1.2形态学重建
12.1.3形态学扩展
12.1.4膨胀运算与腐蚀运算
12.1.5形态学梯度
12.1.6开运算和闭运算
12.1.7顶帽运算和底帽运算
12.1.8黑帽运算
12.2连通性
12.2.1连通性矩阵
12.2.2区域极大值和极小值
12.2.3H极大值和极小值变换
12.2.4图像空洞
12.2.5分水岭算法
12.2.6连通域
12.3击中或击不中变换
12.4边界划分
第13章AI与机器学习图像处理
13.1文心大模型
13.1.1AI作画(高级版)
13.1.2AI作画(基础版)
13.1.3AI作画(极速版)
13.1.4AI作画(画面扩展)
13.2智谱清言大模型
13.2.1cogview3plus
13.2.2cogview3flash
13.3豆包大模型
13.3.1通用2.1(文生图)
13.3.2通用2.0Pro(指令编辑)
13.3.3通用2.0Pro(文生图)
13.3.4通用2.0(角色特征保持)
13.3.5通用2.0(文生图)
13.3.6通用1.4(角色特征保持)
13.3.7通用1.4(文生图)
13.3.8动漫1.3.X(文生图/图生图)
13.3.9通用XL pro(图生图)
13.3.10通用XL pro(文生图)
13.3.11单图写真
13.3.12AIGC图像风格化
13.3.13人像漫画风
13.3.14闭眼转睁眼
13.3.15表情编辑
13.3.16智能变美
13.3.17人像特效
13.3.18三维游戏特效
13.3.19人像年龄变换
13.3.20人像畸变矫正
13.3.21智能绘图漫画版
13.3.22图像超分辨率
13.3.23AI图像增强
13.3.24老照片修复
13.3.25AI图像裁剪
13.3.26图像拉伸修复
13.3.27图像风格转换
13.3.28商品识别
13.3.29通用实体识别
13.3.30车辆检测
13.3.31车牌检测
13.3.32图像配文
13.3.33图像评分
13.3.34商品图像分割
13.3.35天空分割
13.3.36车辆分割
13.4通义大模型
13.4.1文本生成图像
13.4.2文生图V2版
13.4.3涂鸦作画
13.4.4Cosplay动漫人物生成
13.4.5人像风格重绘
13.4.6虚拟模特
13.4.7图像画面扩展
13.4.8人物实例分割
13.4.9创意海报生成
13.4.10图配文
13.5混元大模型
13.5.1混元生图
13.5.2文生图轻量版
13.6星火大模型
13.6.1图像生成
13.6.2图像生成HiDream
13.7Stable Diffusion
13.7.1Stable Diffusion WebUI
13.7.2WebUI文生图
13.7.3WebUI图生图
13.7.4WebUI高清化
13.7.5WebUI图像信息
13.7.6WebUI模型合并
13.7.7WebUI模型训练
13.7.8Stable Diffusion WebUI API
13.7.9txt2img
13.7.10img2img
13.7.11extra
13.7.12PNG info