本书源码
第1章  OpenCV开发环境搭建	1
1.1  OpenCV简介	1
1.2  OpenCV的主要模块	1
1.3  OpenCV开发环境搭建	2
1.3.1  Java开发环境搭建	2
1.3.2  OpenCV的下载和安装	3
1.3.3  OpenCV的配置	3
1.3.4  测试程序	7
第2章  魔方图案识别	10
2.1  概述	10
2.1.1  案例描述	10
2.1.2  案例分析	12
2.2  总体设计	13
2.2.1  系统需求	13
2.2.2  总体思路及流程	13
2.3  魔方图案识别的实现	13
2.3.1  Canny边缘检测	14
2.3.2  霍夫线检测	15
2.3.3  确定顶点	16
2.3.4  透视变换	18
2.3.5  颜色识别	20
2.3.6  颜色值分类	21
2.3.7  颜色匹配	22
2.4  完整代码	22
第3章  答题卡评分	30
3.1  概述	30
3.1.1  案例描述	30
3.1.2  案例分析	31
3.2  总体设计	33
3.2.1  系统需求	33
3.2.2  总体思路及流程	33
3.3  答题卡自动评分的实现	33
3.3.1  二值化	33
3.3.2  提取轮廓	35
3.3.3  汉字过滤	38
3.3.4  定位块位置	38
3.3.5  透视变换	39
3.3.6  答案的判断	39
3.4  完整代码	40
第4章  围棋盘面识别	51
4.1  概述	51
4.1.1  案例描述	51
4.1.2  案例分析	52
4.2  总体设计	53
4.2.1  系统需求	53
4.2.2  总体思路及流程	53
4.3  围棋盘面识别的实现	54
4.3.1  查找线段	54
4.3.2  圆心坐标	54
4.3.3  边界判定	56
4.3.4  边界验证	56
4.3.5  黑子、白子还是无子	57
4.4  完整代码	58
第5章  停车场车位检测	66
5.1  概述	66
5.1.1  案例描述	66
5.1.2  案例分析	66
5.2  总体设计	67
5.2.1  系统需求	67
5.2.2  总体思路及流程	68
5.3  停车位车位检测的实现	68
5.3.1  Canny边缘检测	68
5.3.2  模板匹配	69
5.3.3  过滤及验证	69
5.3.4  颜色识别	69
5.3.5  车位检测	70
5.4  完整代码	70
第6章  车道线检测	76
6.1  概述	76
6.1.1  案例描述	76
6.1.2  案例分析	76
6.2  总体设计	77
6.2.1  系统需求	77
6.2.2  总体思路及流程	77
6.3  车道线检测的实现	78
6.3.1  读取视频	78
6.3.2  白色像素	79
6.3.3  限定范围	80
6.3.4  延伸部分	80
6.3.5  标记车道线	81
6.4  完整代码	84
第7章  汉字识别	89
7.1  概述	89
7.2  汉字结构	89
7.3  案例描述	91
7.4  汉字识别的实现	92
7.4.1  二值化	92
7.4.2  连通域	92
7.4.3  端点的识别	92
7.4.4  笔画识别	94
7.4.5  交叉点识别	96
7.4.6  汉字编码	98
7.5  完整代码	98
第8章  OCR文字识别	115
8.1  Tess4J的安装与配置	115
8.1.1  Tess4J的安装	115
8.1.2  Eclipse中的配置	116
8.2  英文识别测试	120
8.3  安装语言包	121
8.4  中文识别测试	123
8.5  训练语言库	124
第9章  车牌定位与识别	126
9.1  概述	126
9.2  案例描述	127
9.3  案例分析	127
9.4  总体设计	128
9.4.1  系统需求	128
9.4.2  总体思路及流程	128
9.5  车牌识别的实现	128
9.5.1  颜色判断	128
9.5.2  蓝色标记	128
9.5.3  去除多余轮廓线	129
9.5.4  一体化	130
9.5.5  车牌的定位	130
9.5.6  透视变换	131
9.5.7  车牌判断	131
9.5.8  字符分割	132
9.5.9  单个字符的识别	132
9.6  完整代码	133
第10章  硬币识别	142
10.1  概述	142
10.1.1  案例描述	143
10.1.2  案例分析	144
10.2  总体设计	145
10.2.1  系统需求	145
10.2.2  总体思路及流程	145
10.3  硬币识别的实现	146
10.3.1  边缘检测	146
10.3.2  测距线	146
10.3.3  闭运算	146
10.3.4  硬币外框	147
10.3.5  硬币直径	148
10.3.6  边缘处理	148
10.3.7  最小外接圆	149
10.3.8  正反面判断	149
10.3.9  旋转测试	150
10.3.10  面额判断	151
10.4  完整代码	152
第11章  零件检测	163
11.1  概述	163
11.1.1  案例描述	163
11.1.2  案例分析	164
11.2  总体设计	165
11.2.1  系统需求	165
11.2.2  总体思路及流程	165
11.3  零件安装检测的实现	165
11.3.1  Canny边缘检测	165
11.3.2  霍夫圆检测	166
11.3.3  圆孔的定位	167
11.3.4  透视变换	168
11.3.5  颜色检测	169
11.3.6  芯片检测	169
11.4  完整代码	169
第12章  银行卡卡号识别	178
12.1  概述	178
12.1.1  案例描述	178
12.1.2  案例分析	178
12.2  总体设计	179
12.2.1  系统需求	179
12.2.2  总体思路及流程	179
12.3  银行卡卡号识别的实现	180
12.3.1  边缘检测	180
12.3.2  闭运算	180
12.3.3  最小外接矩形	180
12.3.4  卡号区域	181
12.3.5  顶点位置	181
12.3.6  透视变换	182
12.3.7  二值化	182
12.3.8  数字识别	182
12.4  完整代码	182
第13章  全景拼接	190
13.1  概述	190
13.2  全景拼接的原理	191
13.3  全景拼接的实现	192
13.3.1  特征点检测	192
13.3.2  特征点匹配	192
13.3.3  单应矩阵	193
13.3.4  透视变换	194
13.3.5  拼接	194
13.3.6  裁剪	196
13.4  完整代码	196
第14章  二维码识别	201
14.1  二维码简介	201
14.2  OpenCV中的二维码函数	201
14.3  二维码识别案例	202
第15章  机器学习	205
15.1  Deeplearning4J简介	205
15.2  手写数字识别	206
15.2.1  概述	206
15.2.2  K-近邻算法简介	207
15.2.3  手写数字识别的实现	208
15.2.4  完整代码	209
附录A  OpenCV常用函数表	213
附录B  一种简单易学、无须记忆的汉字编码法	219
     
B.1  简介	219
B.2  基本概念	219
B.3  字根	220
B.4  汉字字根规则	221
B.5  编码规则	222
B.6  拼音模式和笔画模式	223
B.7  编码样例	223


  
IV


V