基于FPGA的数字图像处理原理及套用


基于FPGA的数字图像处理原理及套用

文章插图
基于FPGA的数字图像处理原理及套用【基于FPGA的数字图像处理原理及套用】本书首先介绍FPGA程式设计和图像与视频处理的关键基础理论,然后通过实例代码详细讲解了如何利用FPGA实现直方图操作中的直方图统计/均衡化/线性拉伸/规定化、线性滤波器操作中的均值滤波器、Sobel运算元(滤波、求模、求角度)、非线性滤波器操作中的排序类算法/形态学滤波、图像分割算法中的局部自适应分割/Canny运算元等 。
本书适用于需要利用FPGA进行图像处理和视频分析的学者和工程开发人员 。读者需要具备一定的嵌入式设计及FPGA设计的基础知识,特别是Verilog语言的语法基础 。
基本介绍书名:基于FPGA的数字图像处理原理及套用
作者:牟新刚,周晓,郑晓亮 
ISBN:9787121293351
出版社:电子工业出版社
出版时间:2017-01-01
内容简介本书首先介绍FPGA程式设计和图像与视频处理的关键基础理论,然后通过实例代码详细讲解了如何利用FPGA实现直方图操作中的直方图统计/均衡化/线性拉伸/规定化、线性滤波器操作中的均值滤波器、Sobel运算元(滤波、求模、求角度)、非线性滤波器操作中的排序类算法/形态学滤波、图像分割算法中的局部自适应分割/Canny运算元等 。本书在仿真测试部分设计了一种完善的通用测试系统,并利用此测试系统在每一章的仿真测试环节对所设计算法进行严格的测试和验证 。本书在最后一章介绍了在视频处理领域常见的输入/输出接口 。本书偏向于工程套用,在书中有大量关于如何利用FPGA实现图像处理算法的实例及代码,并对这些算法的原理及其实现过程、算法测试等做了详细的介绍,全部的算法都进行了仿真测试验证 。本书适用于需要利用FPGA进行图像处理和视频分析的学者和工程开发人员 。读者需要具备一定的嵌入式设计及FPGA设计的基础知识,特别是Verilog语言的语法基础 。目 录第1章 图像处理基础 11.1 数字图像处理简介 11.1.1 图像採样 11.1.2 图像量化 21.1.3 数字图像处理 31.2 数字图像处理系统 41.2.1 图像处理系统构成 41.2.2 原始图像获取 61.2.3 图像感测器接口 161.2.4 图像处理流水线 171.2.5 图像与视频压缩 191.2.6 视频显示处理 26第2章 FPGA与图像处理 322.1 使用FPGA的原因 322.2 FPGA技术优势 332.3 FPGA的发展历程 342.4 FPGA生产厂家及其产品 352.4.1 Altera 352.4.2 Xilinx 372.4.3 Lattice 372.4.4 Atmel 382.4.5 Actel 382.5 FPGA开发流程 382.5.1 FPGA设计方法 382.5.2 典型的FPGA开发流程 392.6 FPGA常用开发工具 442.6.1 代码输入工具 452.6.2 综合工具 462.6.3 仿真工具 472.6.4 实现与最佳化工具 472.6.5 EDA工具 482.7 FPGA图像处理的开发流程 492.7.1 需求分析及问题描述 492.7.2 软体算法设计及验证 502.7.3 硬体平台设计 512.7.4 FPGA映射 522.7.5 仿真及验证 54第3章 FPGA程式语言 553.1 HDL语言简介 553.2 模组化设计 563.3 可移植性 573.4 不可移植性 613.5 测试逻辑 623.6 冗余逻辑 633.7 常用语法 633.7.1 参数化 633.7.2 条件编译 683.7.3 位宽匹配 693.7.4 二维数组 693.8 套用实例 703.8.1 信号边沿检测 703.8.2 多拍处理 723.8.3 图像行列计数 73第4章 映射技术 774.1 系统结构 774.1.1 流水线设计 774.1.2 并行阵列 814.2 计算技术 824.2.1 算法转换 824.2.2 近似计算 834.2.3 增量更新 854.2.4 查找表 854.2.5 浮点计算 894.2.6 Cordic技术 964.3 存储器映射 1034.3.1 帧快取 1044.3.2 行快取 1054.3.3 异步快取 1134.3.4 增加存储器频宽 1144.3.5 存储器建模与仿真 1154.4 其他设计技巧 1164.4.1 合理处理参数 1164.4.2 资源及模组复用 1174.4.3 防止亚稳态 118第5章 系统仿真 1215.1 Modelsim使用基础 1215.1.1 Modelsim简介 1215.1.2 Modelsim图形界面及仿真示例 1225.1.3 使用脚本命令来加速仿真 1335.1.4 其他加速仿真的方法 1365.2 视频图像处理仿真测试系统5.2.1 仿真测试系统框架 1365.2.2 视频时序模拟 1375.2.3 视频捕获模拟 1455.2.4 MFC程式设计 1575.2.5 通用testbench 161第6章 直方图操作 1676.1 灰度直方图 1676.2 直方图均衡化 1696.3 直方图规定化 1726.4 直方图拉伸 1756.5 基于FPGA的直方图操作 1796.5.1 FPGA直方图统计 1796.5.2 FPGA直方图均衡化 1926.5.3 FPGA直方图线性拉伸 203第7章 线性滤波器 2147.1 线性滤波 2147.1.1 均值滤波 2147.1.2 高斯滤波 2167.1.3 Sobel运算元 2197.1.4 离散傅立叶变换 2227.2 基于FPGA的均值滤波 2277.2.1 整体设计与模组划分 2277.2.2 子模组设计 228 7.2.3 Verilog代码设计 2327.2.4 仿真与调试结果 2437.3 基于FPGA的Sobel运算元 2477.3.1 整体设计与模组划分 2477.3.2 Sobel模板计算电路 2497.3.3 基于Cordic的坐标系转换电路 2517.3.4 Verilog代码设计 2577.3.5 仿真与调试结果 274第8章 非线性滤波器 2808.1 统计排序滤波 2808.2 基于FPGA的统计排序滤波器 2828.2.1 并行全比较排序法原理 2828.2.2 整体设计与模组划分 2858.2.3 子模组设计 2868.2.4 Verilog代码设计 2888.2.5 仿真与调试结果 298第9章 形态学滤波 3039.1 形态学滤波简介 3039.2 形态学滤波的基本套用 3049.3 基于FPGA的Tophat滤波设计 3119.3.1 顶层框架设计 3119.3.2 子模组设计 3129.3.3 Verilog代码设计3179.3.4 仿真及调试结果337第10章 图像分割34110.1 图像分割简介34110.2 基于阈值的分割34110.2.1 全局阈值分割34110.2.2 局部自适应阈值分割34410.3 基于边缘的分割34710.3.1 Canny运算元34710.3.2 Canny运算元的计算步骤34710.4 基于FPGA的局部自适应分割35610.4.1 算法转换35710.4.2 FPGA结构设计35810.4.3 子模组设计35910.4.4 Verilog代码设计36310.4.5 仿真与调试37110.5 基于FPGA的Canny运算元设计37810.5.1 非最大值抑制电路设计37810.5.2 滞后阈值分割电路设计38110.5.3 Verilog代码设计38210.5.4 仿真调试结果390第11章 视频接口39111.1 视频输入接口39111.1.1 模拟视频输入39111.1.2 CameraLink接口39411.1.3 USB接口39911.1.4 FireWire接口40111.1.5 GigE Vision?接口40711.1.6 直接接口41011.2 视频输出接口41111.2.1 CVT标準41111.2.2 VGA416 11.2.3 PAL42511.2.4 DVI/HDMI433参考文献441