当前位置:首页 > 工业技术
数字图像处理  Java语言算法描述
数字图像处理  Java语言算法描述

数字图像处理 Java语言算法描述PDF电子书下载

工业技术

  • 电子书积分:15 积分如何计算积分?
  • 作 者:(德)WilhelmBurger,MarkJ.Burge著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302213659
  • 页数:457 页
图书介绍:本书没有将数字图像处理当作一门数学学科来介绍,也没有严格按照信号处理的形式来介绍,而是从一个从业者和编程人员的角度出发,以读者更容易理解构成的方式进行讲解。对数字图像处理的每个主题,本书都是从理论知识到实际应用的方式进行讲解,先介绍数学表达式,再给出简要的伪代码算法,最后给出完整的Java程序。
《数字图像处理 Java语言算法描述》目录

第1章 品味像素 1

1.1 图像编程 1

1.2 图像分析和计算机视觉 2

第2章 数字图像 4

2.1 数字图像的类型 4

2.2 图像获取 5

2.2.1 针孔照相机模型 5

2.2.2 “薄”透镜 6

2.2.3 数字化 6

2.2.4 图像尺寸和分辨率 8

2.2.5 图像坐标系统 9

2.2.6 像素值 9

2.3 图像文件格式 11

2.3.1 光栅和矢量数据 11

2.3.2 标签图像文件格式(TIFF) 12

2.3.3 图形交换格式(GIF) 13

2.3.4 可移植网络图形(PNG) 13

2.3.5 JPEG 14

2.3.6 Windows位图(BMP) 16

2.3.7 简易位图格式(PBM) 16

2.3.8 其他文件格式 17

2.3.9 比特和字节 17

2.4 练习 19

第3章 ImageJ 20

3.1 图像操作和处理 20

3.2 ImageJ综述 21

3.2.1 关键特征 22

3.2.2 交互式工具 22

3.2.3 ImageJ插件 23

3.2.4 第一个例子:图像取反 24

3.3 ImageJ和Java的其他信息 26

3.3.1 ImageJ的资源 26

3.3.2 用Java编程 26

3.4 练习 27

第4章 直方图 28

4.1 什么是直方图 28

4.2 解读直方图 30

4.2.1 图像获取 30

4.2.2 图像缺陷 32

4.3 直方图计算 34

4.4 多于8位图像的直方图 36

4.4.1 像素组合 36

4.4.2 例子 36

4.4.3 实现 36

4.5 彩色图像直方图 37

4.5.1 强度直方图 38

4.5.2 单个颜色通道直方图 38

4.5.3 合并颜色直方图 39

4.6 累积直方图 39

4.7 练习 40

第5章 点运算 42

5.1 图像强度修正 43

5.1.1 对比度和亮度 43

5.1.2 利用设定门限限制结果值 43

5.1.3 图像求反 43

5.1.4 阈值操作 44

5.2 点运算和直方图 45

5.3 自动对比度调整 45

5.4 修正的自动对比度调整 47

5.5 直方图均衡化 48

5.6 直方图规定化 51

5.6.1 频率和概率 51

5.6.2 直方图规定化的原理 52

5.6.3 调整为分段线性分布 52

5.6.4 调整到给定直方图(直方图匹配) 54

5.6.5 例子 57

5.7 Gamma校正 59

5.7.1 为什么是Gamma 60

5.7.2 Gamma函数 60

5.7.3 真实Gamma值 61

5.7.4 Gamma校正应用 61

5.7.5 实现 63

5.7.6 修正Gamma校正 63

5.8 ImageJ中的点运算 65

5.8.1 利用查找表进行点运算 66

5.8.2 算术运算 66

5.8.3 包含多幅图像的点运算 67

5.8.4 两幅图像进行点运算的方法 67

5.8.5 多幅图像的ImageJ插件 67

5.9 练习 69

第6章 滤波器 72

6.1 什么是滤波器 72

6.2 线性滤波器 73

6.2.1 滤波矩阵 74

6.2.2 运用滤波器 74

6.2.3 计算滤波器算子 75

6.2.4 滤波器插件示例 76

6.2.5 整数系数 78

6.2.6 任意尺寸的滤波器 79

6.2.7 线性滤波器的类型 80

6.3 线性滤波器的性质 82

6.3.1 线性卷积 82

6.3.2 线性卷积的性质 83

6.3.3 线性滤波的可分离性 84

6.3.4 滤波器的脉冲响应 85

6.4 非线性滤波器 87

6.4.1 最小值和最大值滤波 87

6.4.2 中值滤波 88

6.4.3 带权中值滤波器 91

6.4.4 其他非线性滤波器 92

6.5 滤波器的实现 92

6.5.1 滤波程序的效率 92

6.5.2 图像边界的处理 93

6.5.3 调试滤波器程序 93

6.6 ImageJ中的滤波运算 94

6.6.1 线性滤波器 94

6.6.2 高斯滤波器 95

6.6.3 非线性滤波器 95

6.7 练习 96

第7章 边缘和轮廓 98

7.1 边缘是怎么来的 98

7.2 基于梯度的边缘检测 99

7.2.1 偏导数和梯度 99

7.2.2 导数滤波器 100

7.3 边缘检测算子 101

7.3.1 Prewitt算子和Sobel算子 101

7.3.2 Roberts算子 103

7.3.3 罗盘算子 104

7.3.4 ImageJ中的边缘检测算子 104

7.4 其他边缘检测算子 105

7.4.1 基于二阶导数的边缘检测 105

7.4.2 不同尺度下的边缘 105

7.4.3 Canny算子 106

7.5 从边缘到轮廓 107

7.5.1 轮廓跟踪 108

7.5.2 边缘图 108

7.6 边缘锐化 108

7.6.1 边缘锐化和拉普拉斯滤波器 108

7.6.2 USM锐化 111

7.7 练习 114

第8章 角点检测 116

8.1 感兴趣点 116

8.2 Harris角点检测器 116

8.2.1 局部结构矩阵 117

8.2.2 角点响应函数 117

8.2.3 确定角点 118

8.2.4 例子 120

8.3 实现 121

8.3.1 步骤1:计算角点响应函数 121

8.3.2 步骤2:选择“好的”角点 123

8.3.3 显示角点 126

8.3.4 小结 127

8.4 练习 128

第9章 检测简单曲线 129

9.1 显著结构 129

9.2 Hough变换 130

9.2.1 参数空间 131

9.2.2 累加器数组 132

9.2.3 更好的直线表达式 132

9.3 Hough变换的实现 133

9.3.1 填写累加器数组 134

9.3.2 分析累加器数组 136

9.3.3 Hough变换的扩展 136

9.4 圆与椭圆的Hough变换 139

9.4.1 圆与弧 139

9.4.2 椭圆 141

9.5 练习 142

第10章 形态学滤波器 143

10.1 收缩和放大 143

10.1.1 像素的邻域 145

10.2 基本的形态学运算 145

10.2.1 结构元素 145

10.2.2 点集 145

10.2.3 膨胀 146

10.2.4 腐蚀 147

10.2.5 膨胀与腐蚀的性质 147

10.2.6 设计形态学滤波器 149

10.2.7 应用举例:轮廓 152

10.3 复合运算 153

10.3.1 开运算 153

10.3.2 闭运算 153

10.3.3 开运算和闭运算的性质 153

10.4 灰度形态学 154

10.4.1 结构元素 154

10.4.2 膨胀与腐蚀 155

10.4.3 灰度开运算与闭运算 157

10.5 实现形态学滤波器 158

10.5.1 ImagJ中的二值图像 158

10.5.2 膨胀与腐蚀 159

10.5.3 开运算与闭运算 160

10.5.4 Outline函数 160

10.5.5 ImageJ中的形态学运算 161

10.6 练习 162

第11章 二值图像中的区域 164

11.1 寻找图像区域 164

11.1.1 使用洪泛法进行区域标记 165

11.1.2 顺序区域标记 168

11.1.3 区域标记——总结 172

11.2 区域轮廓 173

11.2.1 外部和内部轮廓 173

11.2.2 组合区域标记和轮廓寻找 174

11.2.3 实现 177

11.2.4 实例 178

11.3 表征图像区域 179

11.3.1 矩阵表示 179

11.3.2 行程长度编码 180

11.3.3 链式编码 180

11.4 二值区域的属性 182

11.4.1 形状特征 183

11.4.2 几何特征 183

11.4.3 统计形状属性 185

11.4.4 基于矩的几何属性 188

11.4.5 投影 191

11.4.6 拓扑属性 192

11.5 练习 193

第12章 彩色图像 195

12.1 RGB彩色图像 195

12.1.1 彩色图像的组织 197

12.1.2 ImageJ中的彩色图像 199

12.2 颜色空间和颜色转换 208

12.2.1 转换为灰度图像 209

12.2.2 彩色图像的去饱和 211

12.2.3 HSV/HSB和HLS彩色空间 212

12.2.4 电视颜色空间——YUV、YIQ和YCbCr 222

12.2.5 用于印刷的颜色空间——CMY和CMYK 225

12.3 比色颜色空间 228

12.3.1 CIE颜色空间 228

12.3.2 CIE L*a*b* 233

12.3.3 sRGB 235

12.3.4 Adobe RGB 238

12.3.5 色度适应 238

12.3.6 Java中的比色支持 242

12.4 彩色图像统计 248

12.4.1 一幅图像中有多少种颜色 248

12.4.2 颜色直方图 249

12.5 颜色量化 251

12.5.1 标量颜色量化 252

12.5.2 矢量量化 253

12.6 练习 258

第13章 频谱技术介绍 260

13.1 傅里叶变换 260

13.1.1 正弦和余弦函数 260

13.1.2 周期函数的傅里叶级数 263

13.1.3 傅里叶积分 263

13.1.4 傅里叶频谱和变换 264

13.1.5 傅里叶变换对 265

13.1.6 傅里叶变换的重要性质 267

13.2 离散信号 268

13.2.1 采样 269

13.2.2 离散周期函数 273

13.3 离散傅里叶变换(DFT) 275

13.3.1 DFT的定义 275

13.3.2 离散基函数 276

13.3.3 又是混叠现象 278

13.3.4 信号空间和频率空间的单位 279

13.3.5 功率谱 280

13.4 DFT的实现 281

13.4.1 直接实现 281

13.4.2 快速傅里叶变换(FFT) 282

13.5 练习 283

第14章 二维离散傅里叶变换 284

14.1 二维DFT的定义 284

14.1.1 二维基函数 284

14.1.2 二维DFT的实现 286

14.2 二维傅里叶变换的可视化 287

14.2.1 频谱范围 287

14.2.2 中心表示法 288

14.3 2D下的频率和方向 289

14.3.1 有效频率 289

14.3.2 2D下的频率限制和混叠 290

14.3.3 方向 291

14.3.4 二维频谱几何校正 291

14.3.5 周期性效应 292

14.3.6 窗口 292

14.3.7 窗口函数 294

14.4 二维傅里叶变换的例子 296

14.5 DFT的应用 300

14.5.1 频率空间的线性滤波运算 300

14.5.2 线性卷积和互相关 301

14.5.3 逆滤波器 301

14.6 练习 302

第15章 离散余弦变换(DCT) 303

15.1 一维DCT 303

15.1.1 DCT基函数 303

15.1.2 一维DCT的实现 305

15.2 二维DCT 306

15.2.1 分离性 306

15.2.2 例子 306

15.3 其他频谱变换 307

15.4 练习 308

第16章 几何运算 309

16.1 二维映射函数 310

16.1.1 简单映射 310

16.1.2 齐次坐标 311

16.1.3 仿射(三点)映射 311

16.1.4 投影(四点)映射 313

16.1.5 双线性映射 317

16.1.6 其他非线性图像变换 318

16.1.7 局部图像变换 320

16.2 图像重采样 321

16.2.1 源到目标的映射 321

16.2.2 目标到源的映射 322

16.3 插值 323

16.3.1 简单插值方法 323

16.3.2 理想插值 324

16.3.3 通过卷积进行插值 327

16.3.4 三次插值 327

16.3.5 样条插值 328

16.3.6 Lanczos插值 331

16.3.7 二维插值 333

16.3.8 混叠 339

16.4 Java实现 341

16.4.1 几何变换 341

16.4.2 像素插值 351

16.4.3 采样的应用 353

16.5 练习 355

第17章 图像比较 356

17.1 灰度图像的模板匹配 357

17.1.1 图像之间的距离 358

17.1.2 实现 364

17.1.3 在旋转和比例变换下进行匹配 366

17.2 二值图像匹配 366

17.2.1 直接比较 366

17.2.2 距离变换 367

17.2.3 斜面匹配 370

17.3 练习 373

附录A 数学记号 374

A.1 符号 374

A.2 集合算子 375

A.3 复数 375

A.4 算法复杂度和○记号 376

附录B Java摘记 378

B.1 算术运算 378

B.1.1 整数除法 378

B.1.2 求模算子 379

B.1.3 无符号字节型 380

B.1.4 数学函数(类Math) 381

B.1.5 舍入 381

B.1.6 反正切函数 382

B.1.7 Float和Double(类) 382

B.2 数组和集合 382

B.2.1 创建数组 382

B.2.2 数组大小 383

B.2.3 访问数组元素 383

B.2.4 二维数组 383

B.2.5 克隆数组 385

B.2.6 对象数组,排序 386

B.2.7 集合体(Collection) 387

附录C ImageJ的简短参考 388

C.1 安装与设置 388

C.2 ImageJ API 389

C.2.1 图像及其处理器 390

C.2.2 图像(ij包) 390

C.2.3 图像处理器(ij.process包) 391

C.2.4 插件(ij plugin、ij.plugin.filter包) 391

C.2.5 GUI类(ij.gui包) 392

C.2.6 窗口管理(ij包) 393

C.2.7 工具类(ij包) 393

C.2.8 输入-输出(ij.io包) 394

C.3 创建图像和图像栈 394

C.3.1 ImagePlus(类) 394

C.3.2 ImageStack(类) 395

C.3.3 IJ(类) 395

C.3.4 NewImage(类) 395

C.3.5 ImageProcessor(类) 396

C.4 创建图像处理器 396

C.4.1 ImagePlus(类) 396

C.4.2 ImageProcessor(类) 396

C.4.3 ByteProcessor(类) 397

C.4.4 ColorProcessor(类) 397

C.4.5 FloatProcessor(类) 397

C.4.6 ShortProcessor(类) 398

C.5 载入和存储图像 398

C.5.1 IJ(类) 398

C.5.2 Opener(类) 399

C.5.3 FileSaver(类) 400

C.5.4 FileOpener(类) 401

C.6 图像参数 402

C.6.1 ImageProcessor(类) 402

C.6.2 ColorProcessor(类) 402

C.7 访问像素 402

C.7.1 通过2D图像坐标访问像素 402

C.7.2 通过1D索引访问像素 404

C.7.3 访问多个像素 404

C.7.4 同时访问所有像素 405

C.7.5 彩色图像的特有访问方法 406

C.7.6 直接访问像素数组 406

C.8 图像转换 407

C.8.1 ImageProcessor(类) 407

C.8.2 ImagePlus、ImageConverter(类) 408

C.9 直方图与图像统计量 410

C.9.1 ImageProcessor(类) 410

C.10 点运算 410

C.10.1 ImageProcessor(类) 410

C.11 滤波器 412

C.11.1 ImageFrocessor(类) 412

C.12 几何运算 413

C.12.1 ImageProcessor(类) 413

C.13 图形运算 414

C.13.1 ImageProcessor(类) 414

C.14 显示图像和图像栈 415

C.14.1 ImagePlus(类) 416

C.14.2 ImageProcessor(类) 417

C.15 图像栈上的操作 419

C.15.1 ImagePlus(类) 419

C.15.2 ImageStack(类) 419

C.15.3 图像栈的例子 420

C.16 感兴趣区域 424

C.16.1 ImagePlus(类) 424

C.16.2 Roi、Line、OvalRoi、PointRoi、PolygonRoi(类) 424

C.16.3 ImageProcessor(类) 425

C.16.4 ImageStack(类) 428

C.16.5 IJ(类) 428

C.17 图像属性 428

C.18 用户交互 430

C.18.1 IJ(类) 430

C.18.2 GenericDialog(类) 431

C.19 插件 432

C.19.1 PlugIn(接口) 433

C.19.2 PlutInFilter(接口) 433

C.19.3 插件的执行:IJ(类) 434

C.20 窗口管理 434

C.20.1 WindowManager(类) 434

C.21 其他函数 435

C.21.1 ImagePlus(类) 435

C.21.2 IJ(类) 436

附录D 源代码 438

D.1 Harris角点检测器 438

D.1.1 Harris_Corner_Plugin(类) 438

D.1.2 Corner文件(类) 439

D.1.3 HarrisCornerDetector文件(类) 440

D.2 组合区域标记和轮廓跟踪 445

D.2.1 Contour_Tracing_Plugin(类) 445

D.2.2 Contour(类) 447

D.2.3 BinaryRegion(类) 449

D.2.4 ContourTracer(类) 450

D.2.5 ContourOverlay(类) 455

相关图书
作者其它书籍
返回顶部