├── .idea
├── inspectionProfiles
│ └── Project_Default.xml
├── libraries
│ └── R_User_Library.xml
├── misc.xml
├── modules.xml
├── opencv3.iml
├── vcs.xml
└── workspace.xml
├── 01_处理文件、摄像头和图形用户界面
├── 011_读写图像文件.py
├── 012_图像与原始字节转换.py
├── 013_使用numpy访问图像数据.py
├── 014_视频文件的读写.py
├── 015_捕获摄像头的帧.py
├── 016_窗口显示图像.py
├── 017_窗口显示摄像头的帧.py
├── mm1_gray.png
├── randomColor.png
└── randomGray.png
├── 02_Cameo项目(人脸跟踪和图像处理)
├── __init__.py
├── cameo.py
├── depth.py
├── filters.py
├── filters.pyc
├── managers.py
├── managers.pyc
├── utils.py
└── utils.pyc
├── 03_处理图像
├── 001_滤波器.py
├── 002_canny边缘检测.py
├── 003_轮廓检测.py
├── 004_矩形、圆形边界框.py
├── 005_凸轮廓与douglas-peucher算法.py
├── 006_直线检测.py
├── 007_圆检测.py
└── 008_在图像上写字.py
├── 04_深度估计与分割
├── 001_普通摄像头进行深度估计.py
├── 002_grabcut前景检测.py
├── 003_分水岭算法图像分割.py
└── __init__.py
├── 05_人脸检测和识别
├── 001_静态图像人脸检测.py
├── 002_视频中检测人脸.py
├── 003_人脸识别.py
└── data
│ └── faces
│ ├── s0
│ ├── 0.pgm
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 11.pgm
│ ├── 12.pgm
│ ├── 13.pgm
│ ├── 14.pgm
│ ├── 15.pgm
│ ├── 16.pgm
│ ├── 17.pgm
│ ├── 18.pgm
│ ├── 19.pgm
│ ├── 2.pgm
│ ├── 20.pgm
│ ├── 21.pgm
│ ├── 22.pgm
│ ├── 23.pgm
│ ├── 24.pgm
│ ├── 25.pgm
│ ├── 26.pgm
│ ├── 27.pgm
│ ├── 28.pgm
│ ├── 29.pgm
│ ├── 3.pgm
│ ├── 30.pgm
│ ├── 31.pgm
│ ├── 32.pgm
│ ├── 33.pgm
│ ├── 34.pgm
│ ├── 35.pgm
│ ├── 36.pgm
│ ├── 37.pgm
│ ├── 38.pgm
│ ├── 39.pgm
│ ├── 4.pgm
│ ├── 40.pgm
│ ├── 41.pgm
│ ├── 42.pgm
│ ├── 43.pgm
│ ├── 44.pgm
│ ├── 45.pgm
│ ├── 46.pgm
│ ├── 47.pgm
│ ├── 48.pgm
│ ├── 49.pgm
│ ├── 5.pgm
│ ├── 50.pgm
│ ├── 51.pgm
│ ├── 52.pgm
│ ├── 53.pgm
│ ├── 54.pgm
│ ├── 55.pgm
│ ├── 56.pgm
│ ├── 57.pgm
│ ├── 58.pgm
│ ├── 59.pgm
│ ├── 6.pgm
│ ├── 60.pgm
│ ├── 61.pgm
│ ├── 62.pgm
│ ├── 63.pgm
│ ├── 64.pgm
│ ├── 65.pgm
│ ├── 66.pgm
│ ├── 67.pgm
│ ├── 68.pgm
│ ├── 69.pgm
│ ├── 7.pgm
│ ├── 70.pgm
│ ├── 71.pgm
│ ├── 72.pgm
│ ├── 73.pgm
│ ├── 74.pgm
│ ├── 75.pgm
│ ├── 76.pgm
│ ├── 77.pgm
│ ├── 78.pgm
│ ├── 79.pgm
│ ├── 8.pgm
│ ├── 80.pgm
│ ├── 81.pgm
│ ├── 82.pgm
│ ├── 83.pgm
│ ├── 84.pgm
│ ├── 85.pgm
│ └── 9.pgm
│ ├── s1
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s10
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s11
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s12
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s13
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s14
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s15
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s16
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s17
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s18
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s19
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s2
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s20
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s21
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s22
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s23
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s24
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s25
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s26
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s27
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s28
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s29
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s3
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s30
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s31
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s32
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s33
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s34
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s35
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s36
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s37
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s38
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s39
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s4
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s40
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s5
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s6
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s7
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ ├── s8
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
│ └── s9
│ ├── 1.pgm
│ ├── 10.pgm
│ ├── 2.pgm
│ ├── 3.pgm
│ ├── 4.pgm
│ ├── 5.pgm
│ ├── 6.pgm
│ ├── 7.pgm
│ ├── 8.pgm
│ └── 9.pgm
├── 06_图像检测和搜索
├── 001_检测角点特征.py
├── 002_DoG和SIFT特征提取与描述.py
├── 003_hessian算法surf提取和检测.py
├── 004_基于ORB的特征检测和BF暴力匹配.py
├── 005_k近邻匹配.py
├── 006_FLANN匹配.py
├── 007_FLANN单应性匹配.py
└── 008_基于文身取证的应用.py
├── 07_目标检测与识别
├── 001_检测人.py
└── 002_汽车检测.py
├── data
├── album1.png
├── chess1.jpg
├── circle.jpg
├── haarcascade_eye.xml
├── haarcascade_frontalface_default.xml
├── item2.jpg
├── line1.png
├── logo1.png
├── mm1.jpg
├── mm2.jpeg
├── mm3.jpg
├── people1.jpg
├── people2.jpg
├── person1.jpg
└── walez1.jpg
└── requirements.txt
/.idea/inspectionProfiles/Project_Default.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/.idea/libraries/R_User_Library.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/.idea/opencv3.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/01_处理文件、摄像头和图形用户界面/011_读写图像文件.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 | import cv2
3 |
4 |
5 | # 读取一张图片, 第二个参数可选
6 | image = cv2.imread("../data/mm1.jpg")
7 | # 设置窗口
8 | cv2.namedWindow("show", cv2.WINDOW_AUTOSIZE)
9 | # 图像窗口显示
10 | cv2.imshow("show", image)
11 | # 等待按键
12 | cv2.waitKey(0)
13 |
14 |
15 | '''
16 | cv2.IMREAD_ANYCOLOR = 4
17 | cv2.IMREAD_ANYDEPTH = 2
18 | cv2.IMREAD_COLOT = 1
19 | cv2.IMREAD_GRAYSCALE = 0
20 | cv2.IMREAD_LOAD_GDAL = 8
21 | cv2.IMREAD_UNCHANGED = -1
22 | '''
23 |
24 | # 加载一个图像为灰度图像(会丢失颜色) 再保存为png
25 | image = cv2.imread("../data/mm1.jpg", cv2.IMREAD_GRAYSCALE)
26 | # 保存图片 根据拓展名自动转换保存格式 保存一定是BGR图像
27 | cv2.imwrite("mm1_gray.png", image)
28 |
29 |
--------------------------------------------------------------------------------
/01_处理文件、摄像头和图形用户界面/012_图像与原始字节转换.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 | import cv2
3 | import numpy
4 | import os
5 |
6 |
7 | """
8 | 随机字节的bytearray转为灰度图像和BGR图像
9 | """
10 | randomByteArray = bytearray(os.urandom(120000))
11 | flatNumpyArray = numpy.array(randomByteArray)
12 | # 转换成400*300的灰度图像
13 | grayImage = flatNumpyArray.reshape(400, 300)
14 | cv2.imwrite("randomGray.png", grayImage)
15 |
16 | """
17 | 随机字节的bytearray转为400*100的彩色图像
18 | """
19 | bgrImage = flatNumpyArray.reshape(400, 100, 3)
20 | cv2.imwrite("randomColor.png", bgrImage)
--------------------------------------------------------------------------------
/01_处理文件、摄像头和图形用户界面/013_使用numpy访问图像数据.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 | import cv2
3 |
4 | """
5 | 将bgr在(0, 0)处改为白色像素
6 |
7 | 0号为green 1号为blue 2号为red
8 | img的每一个位置存一个 3个长度的向量 分别表示gbr
9 | """
10 | # img = cv2.imread("../data/mm2.jpeg")
11 | # print(img[0, 0]) # [49 65 11]
12 | # img[0, 0] = [255, 255, 255]
13 | # cv2.imshow("", img)
14 | # cv2.waitKey(0)
15 |
16 |
17 | """
18 | 将坐标(150, 120) 的蓝色值改为255
19 |
20 | 建议使用itemset函数完成, 这能避免访问原始索引
21 | """
22 | # img = cv2.imread("../data/mm2.jpeg")
23 | # print(img.item(150, 120, 0)) # 打印出这个坐标的blue值
24 | # cv2.imshow("", img)
25 | # img.itemset((150, 120, 0), 255) # 将这个位置的blue值设为255
26 | # print(img.item(150, 120, 0)) # 打印这个坐标的blue值
27 |
28 |
29 | """
30 | 将图像所有的green值都设置为0
31 |
32 | 不推荐使用循环,,使用索引方式能提高程序实现的效率
33 | """
34 | # img = cv2.imread("../data/mm1.jpg")
35 | # img[:, :, 1] = 0
36 | # cv2.imshow("", img)
37 | # cv2.waitKey(0)
38 |
39 |
40 | """
41 | 将某个区域与变量绑定,将值分配给第二个区域
42 | """
43 | # img = cv2.imread("../data/mm3.jpg")
44 | # my_roi = img[0: 100, 0:100] # 选定宽和高都是0到100的区域为感兴趣的区域
45 | # img[300: 400, 300: 400] = my_roi # 将my_roi区域的值赋给 宽和搞300到400像素的位置
46 | # cv2.imshow("", img)
47 | # cv2.waitKey()
48 |
49 | """
50 | 查看图像的一些属性
51 | shape: 宽度 高度 和 通道数
52 | size: 图像像素的大小
53 | datatype: 图像的数据类型 一般为无符号整型
54 | """
55 | img = cv2.imread("../data/mm3.jpg")
56 | print(img.shape) # (750, 1000, 3)
57 | print(img.size) # 2250000
58 | print(img.dtype) # uint8
59 |
60 |
--------------------------------------------------------------------------------
/01_处理文件、摄像头和图形用户界面/014_视频文件的读写.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 | import cv2
3 |
4 | """
5 | 读取视频文件的帧, 采用yuv颜色编码写入到另一个帧
6 |
7 | VideoCapture和VideoWriter用于视频文件的读写
8 | VideoCapture读的每一帧都是一个bgr格式的图像
9 | """
10 | videoCapture = cv2.VideoCapture("../data/demo3.mp4")
11 | fps = videoCapture.get(cv2.CAP_PROP_FPS)
12 | size = (
13 | int(videoCapture.get(cv2.CAP_PROP_FRAME_WIDTH)),
14 | int(videoCapture.get(cv2.CAP_PROP_FRAME_HEIGHT))
15 | )
16 |
17 | videoWriter = cv2.VideoWriter(
18 | "output.mp4",
19 | cv2.VideoWriter_fourcc("I", "4", "2", "0"), # 编码器
20 | fps,
21 | size
22 | )
23 | '''
24 | 编码器常用的几种:
25 | cv2.VideoWriter_fourcc("I", "4", "2", "0")
26 | 压缩的yuv颜色编码器,4:2:0色彩度子采样 兼容性好,产生很大的视频 avi
27 | cv2.VideoWriter_fourcc("P", I", "M", "1")
28 | 采用mpeg-1编码,文件为avi
29 | cv2.VideoWriter_fourcc("X", "V", "T", "D")
30 | 采用mpeg-4编码,得到视频大小平均 拓展名avi
31 | cv2.VideoWriter_fourcc("T", "H", "E", "O")
32 | Ogg Vorbis, 拓展名为ogv
33 | cv2.VideoWriter_fourcc("F", "L", "V", "1")
34 | FLASH视频,拓展名为.flv
35 | '''
36 |
37 | success, frame = videoCapture.read()
38 | while success: # 循环直到没有帧了
39 | videoWriter.write(frame)
40 | success, frame = videoCapture.read()
--------------------------------------------------------------------------------
/01_处理文件、摄像头和图形用户界面/015_捕获摄像头的帧.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 |
5 |
6 | """
7 | 捕获摄像头10s的视频信息 写入一个avi文件
8 | """
9 |
10 | cameraCapture = cv2.VideoCapture(0) # 传入0代表0号摄像头
11 | fps = 30
12 | size = (
13 | int(cameraCapture.get(cv2.CAP_PROP_FRAME_WIDTH)),
14 | int(cameraCapture.get(cv2.CAP_PROP_FRAME_HEIGHT))
15 | )
16 |
17 | videoWriter = cv2.VideoWriter(
18 | "outputVid.avi",
19 | cv2.VideoWriter_fourcc("I", "4", "2", "0"),
20 | fps,
21 | size
22 | )
23 |
24 | success, frame = cameraCapture.read()
25 | numFramesRemaining = 10 * fps - 1
26 | while success and numFramesRemaining:
27 | videoWriter.write(frame)
28 | success, frame = cameraCapture.read()
29 | numFramesRemaining -= 1
30 |
31 | cameraCapture.release()
32 |
33 |
34 | """
35 | 如果使用一组摄像头或多个摄像头
36 | 用grab和retrieve方法代替
37 |
38 | success0 = cameraCapture.grab()
39 | success1 = cameraCapture.grab()
40 | if success0 and success1:
41 | frame0 = cameraCapture0.retrieve()
42 | frame1 = cameraCapture1.retrieve()
43 |
44 |
45 | """
46 |
--------------------------------------------------------------------------------
/01_处理文件、摄像头和图形用户界面/016_窗口显示图像.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 |
5 | """
6 | 显示一张图像
7 | """
8 | img = cv2.imread("../data/mm2.jpeg") # 读取一张图像
9 | cv2.imshow("my image", img) # 显示图片窗口
10 | cv2.waitKey() # 阻塞等待按键
11 | cv2.destroyAllWindows() # 销毁资源
12 |
13 |
--------------------------------------------------------------------------------
/01_处理文件、摄像头和图形用户界面/017_窗口显示摄像头的帧.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 |
5 |
6 | """
7 | 在窗口显示摄像头帧
8 |
9 | namedWindow() 指定窗口名
10 | imshow() 创建窗口
11 | DestroyWindow() 销毁所有窗口
12 | waitKey() 获取键盘输入
13 | setMouseCallback() 获取鼠标输入
14 |
15 | """
16 | """
17 | opencv窗口只有调用waitKey()后才能实时更新
18 | waitKey() 只有窗口创建后才能捕获键盘
19 | """
20 |
21 | clicked = False
22 |
23 |
24 | def onMouse(event, x, y, flags, param):
25 | global clicked
26 | if event == cv2.EVENT_LBUTTONUP:
27 | clicked = True
28 |
29 |
30 | cameraCapture = cv2.VideoCapture(0) # 传入摄像头设备的索引
31 | cv2.namedWindow("MyWindow") # 设置窗口名称
32 | cv2.setMouseCallback("MyWindow", onMouse) # 传入窗口名称和响应捕获的函数
33 | """
34 | setMouseCallback() 第二个参数接收一个回调函数
35 | 回调事件可以取值如下:
36 | cv2.EVENT_MOUSEMOVE 鼠标移动
37 | cv2.EVENT_LBUTTONDOWN 左按键按下
38 | cv2.EVENT_RBUTTONDOWN 右按键按下
39 | cv2.EVENT_MBUTTONDOWN 中间键按下
40 | cv2.EVENT_LBUTTONDBLCLK 双击左键
41 | cv2.EVENT_RBUTTONDBLCLK 双击右键
42 | cv2.EVENT_MBUTTONDBLCLK 双击中间
43 |
44 | 鼠标回调的标志参数可能是以下事件的桉位组合:
45 | cv2.EVENT_FLAG_LBUTTON 按下鼠标左键
46 | cv2.EVENT_FLAG_RBUTTON 按下鼠标右键
47 | cv2.EVENT_FLAG_MBUTTON 按下中间
48 | cv2.EVENT_FLAG_CTRLKEY 按下ctrl键
49 | cv2.EVENT_FLAG_SHITKEY 按下shift键
50 | cv2.EVENT_FLAG_ALTKEY 按下alt键
51 | """
52 |
53 | print("点击窗口或者按键停止")
54 |
55 | success, frame = cameraCapture.read()
56 | while success and cv2.waitKey(1) == -1 and not clicked:
57 | cv2.imshow("MyWindow", frame)
58 | success, frame = cameraCapture.read()
59 |
60 | cv2.destroyAllWindows()
61 | cameraCapture.release()
--------------------------------------------------------------------------------
/01_处理文件、摄像头和图形用户界面/mm1_gray.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/01_处理文件、摄像头和图形用户界面/mm1_gray.png
--------------------------------------------------------------------------------
/01_处理文件、摄像头和图形用户界面/randomColor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/01_处理文件、摄像头和图形用户界面/randomColor.png
--------------------------------------------------------------------------------
/01_处理文件、摄像头和图形用户界面/randomGray.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/01_处理文件、摄像头和图形用户界面/randomGray.png
--------------------------------------------------------------------------------
/02_Cameo项目(人脸跟踪和图像处理)/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/02_Cameo项目(人脸跟踪和图像处理)/__init__.py
--------------------------------------------------------------------------------
/02_Cameo项目(人脸跟踪和图像处理)/cameo.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 | from managers import WindowManger, CaptureManager
5 | import filters
6 | import depth
7 | """
8 | Cameo项目 面向对象方式 实现一个 人脸跟踪和图像处理
9 | """
10 |
11 |
12 | class Cameo(object):
13 | def __init__(self):
14 | # 窗口管理器
15 | self._windowManager = WindowManger(
16 | "Cameo",
17 | self.onKeyPress
18 | )
19 | # 捕获管理器
20 | self._captureManager = CaptureManager(
21 | cv2.VideoCapture(0),
22 | self._windowManager,
23 | True,
24 | )
25 |
26 | self._curveFilter = filters.BGRPortraCurveFilter()
27 |
28 | def run(self):
29 | self._windowManager.createWindow()
30 | while self._windowManager.isWindowCreated:
31 | self._captureManager.enterFrame()
32 | frame = self._captureManager.frame
33 |
34 | # 进行边缘检测
35 | filters.strokeEdge(frame, frame)
36 | self._curveFilter.apply(frame, frame)
37 |
38 | self._captureManager.exitFrame()
39 | self._windowManager.processEvents()
40 |
41 | def onKeyPress(self, keycode):
42 | if keycode == 32: # 空格 进行截屏
43 | self._captureManager.writeImage("screenshot.png")
44 | elif keycode == 9: # tab 录像
45 | if not self._captureManager.isWritingVideo:
46 | self._captureManager.startWritingVideo("screencast.avi")
47 | else:
48 | self._captureManager.stopWritingVideo()
49 | elif keycode == 27: # esc键退出
50 | self._windowManager.destroyWindow()
51 |
52 |
53 | if __name__ == '__main__':
54 | Cameo().run()
55 |
--------------------------------------------------------------------------------
/02_Cameo项目(人脸跟踪和图像处理)/depth.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import numpy
4 | import cv2
5 | import utils
6 |
7 |
8 | def createMedianMask(disparityMap, validDepthMask, rect=None):
9 | if rect is not None:
10 | x, y, w, h = rect
11 | disparityMap = disparityMap[y: y+h, x: x+w]
12 | validDepthMask = validDepthMask[y: y+h, x: x+w]
13 | # 获得一个数组的中位数
14 | median = numpy.median(disparityMap)
15 | # 获得一个卷集合,如果条件为真 返回1 否则为0
16 | # 得到一个跟输入一样的矩阵 由 0 1 组成
17 | return numpy.where(
18 | (validDepthMask == 0) |
19 | (abs(disparityMap - median) < 12),
20 | 1.0, 0.0)
21 |
22 |
23 | def copyRect(src, dst, srcRect, dstRect, mask=None, interpolation=cv2.INTER_LINEAR):
24 | x0, y0, w0, h0 = srcRect
25 | x1, y1, w1, h1 = dstRect
26 |
27 | if mask is None:
28 | dst[y1: y1+h1, x1:x1+w1] = cv2.resize(
29 | src[y0: y0+h0, x0:x0+w0],
30 | (w1, h1),
31 | interpolation=interpolation
32 | )
33 | else:
34 | if not utils.isGray(src):
35 | mask = mask.repeat(3).reshape(h0, w0, 3)
36 | dst[y1:y1+h1, x1:x1+w1] = numpy.where(
37 | cv2.resize(mask, (w1, h1), interpolation=cv2.INTER_NEAREST),
38 | cv2.resize(src[y0: y0+h0, x0:x0+w0],
39 | (w1, h1), interpolation=interpolation),
40 | dst[y1:y1+h1, x1:x1+w1]
41 | )
42 |
43 |
44 | def swapRects(src, dst, rects, masks=None, interpolation=cv2.INTER_LINEAR):
45 | if dst is not src:
46 | dst[:] = src
47 | numRects = len(rects)
48 | if numRects < 2:
49 | return
50 | if masks is None:
51 | masks = [None] * numRects
52 | x, y, w, h = rects[numRects - 1]
53 | temp = src[y:y+h, x:x+w].copy()
54 | i = numRects - 2
55 | while i >= 0:
56 | copyRect(src, dst, rects[i], rects[i+1], masks[i],interpolation)
57 | i -= 1
58 | copyRect(temp, dst, [0, 0, w, h], rects[0], masks[numRects-1], interpolation)
59 |
--------------------------------------------------------------------------------
/02_Cameo项目(人脸跟踪和图像处理)/filters.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 | import numpy
5 | import utils
6 | import scipy
7 | """
8 | 边缘检测:
9 | 先平滑消除噪声
10 | 再转为灰度图像
11 | 再边缘检测
12 |
13 | 1 模糊消除噪声
14 | 2 转为灰度图像
15 | 3 边缘检测 转为边缘亮色 非背景黑色
16 | 4 将边缘检测结果转换为黑色边缘 被色背景的图像
17 | 5 原图像边缘变黑
18 | """
19 |
20 |
21 | def strokeEdge(src, dst, blurKsize=7, edgeKsize=5):
22 | if blurKsize >= 3:
23 | # 算数平均卷积消除噪声
24 | blurredSrc = cv2.medianBlur(src, blurKsize)
25 | # 转为灰度图像
26 | graySrc = cv2.cvtColor(blurredSrc, cv2.COLOR_BGR2GRAY)
27 | else:
28 | # 如果卷积核太小,就直接转为灰度图像
29 | graySrc = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)
30 | # Laplacian边缘检测 会将非边缘变成黑色,边缘变成其他颜色
31 | cv2.Laplacian(graySrc, cv2.CV_8U, graySrc, ksize=edgeKsize)
32 | normalizedInverseAlpha = (1.0 / 255) * (255 - graySrc)
33 | channels = cv2.split(src)
34 | for channel in channels:
35 | channel[:] = channel * normalizedInverseAlpha
36 | cv2.merge(channels, dst)
37 |
38 |
39 | # 一般的卷积滤波器
40 | class VConvolutionFilter(object):
41 | def __init__(self, kernel):
42 | self._kernel = kernel
43 |
44 | def apply(self, src, dst):
45 | # 做卷积运算, -1表示和输入图像的深度是一样的
46 | cv2.filter2D(src, -1, self._kernel, dst)
47 |
48 |
49 | # 锐化滤波器
50 | class SharpenFilter(VConvolutionFilter):
51 | def __init__(self):
52 | kernel = numpy.array([
53 | [-1, -1, -1],
54 | [-1, 9, -1],
55 | [-1, -1, -1]
56 | ])
57 | VConvolutionFilter.__init__(self, kernel)
58 |
59 |
60 | # 检测边缘滤波器 边缘为白色 非边缘为黑色
61 | class FindEdgesFilter(VConvolutionFilter):
62 | def __init__(self):
63 | kernel = numpy.array([
64 | [-1, -1, -1],
65 | [-1, 8, -1],
66 | [-1, -1, -1]
67 | ])
68 | VConvolutionFilter.__init__(self, kernel)
69 |
70 |
71 | # 模糊滤波器
72 | class BlurFilter(VConvolutionFilter):
73 | def __init__(self):
74 | kernel = numpy.array([
75 | [0.04, 0.04, 0.04, 0.04, 0.04],
76 | [0.04, 0.04, 0.04, 0.04, 0.04],
77 | [0.04, 0.04, 0.04, 0.04, 0.04],
78 | [0.04, 0.04, 0.04, 0.04, 0.04],
79 | [0.04, 0.04, 0.04, 0.04, 0.04],
80 | ])
81 | VConvolutionFilter.__init__(self, kernel)
82 |
83 |
84 | # 浮雕效果滤波器
85 | class EmbossFilter(VConvolutionFilter):
86 | def __init__(self):
87 | kernel = numpy.array([
88 | [-2, -1, 0],
89 | [-1, 1, 1],
90 | [0, 1, 2]
91 | ])
92 | VConvolutionFilter.__init__(self, kernel)
93 |
94 |
95 | """
96 | 原书第三版 缺少部分
97 | """
98 |
99 |
100 | class BGRFuncFilter(object):
101 |
102 | def __init__(self, vFunc=None, bFunc=None, gFunc=None, rFunc=None, dtype=numpy.uint8):
103 |
104 | length = numpy.iinfo(dtype).max + 1
105 | self._bLookupArray = utils.createLookupArray(utils.createCompositeFunc(bFunc, vFunc), length)
106 | self._gLookupArray = utils.createLookupArray(utils.createCompositeFunc(gFunc, vFunc), length)
107 | self._rLookupArray = utils.createLookupArray(utils.createCompositeFunc(rFunc, vFunc), length)
108 |
109 | def apply(self, src, dst) :
110 |
111 | """Apply the filter with a BGR source/destination."""
112 | b, g, r = cv2.split(src)
113 | utils.applyLookupArray(self._bLookupArray, b, b)
114 | utils.applyLookupArray(self._gLookupArray, g, g)
115 | utils.applyLookupArray(self._rLookupArray, r, r)
116 | cv2.merge([ b, g, r ], dst)
117 |
118 |
119 | class BGRCurveFilter(BGRFuncFilter):
120 |
121 | def __init__(self, vPoints = None, bPoints = None,gPoints = None, rPoints = None, dtype = numpy.uint8):
122 | BGRFuncFilter.__init__(self, utils.createCurveFunc(vPoints), utils.createCurveFunc(bPoints), utils.createCurveFunc(gPoints), utils.createCurveFunc(rPoints), dtype)
123 |
124 |
125 | class BGRPortraCurveFilter(BGRCurveFilter):
126 | def __init__(self, dtype = numpy.uint8):
127 | BGRCurveFilter.__init__(
128 | self,
129 | vPoints = [ (0, 0), (23, 20), (157, 173), (255, 255) ],
130 | bPoints = [ (0, 0), (41, 46), (231, 228), (255, 255) ],
131 | gPoints = [ (0, 0), (52, 47), (189, 196), (255, 255) ],
132 | rPoints = [ (0, 0), (69, 69), (213, 218), (255, 255) ],
133 | dtype = dtype)
--------------------------------------------------------------------------------
/02_Cameo项目(人脸跟踪和图像处理)/filters.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/02_Cameo项目(人脸跟踪和图像处理)/filters.pyc
--------------------------------------------------------------------------------
/02_Cameo项目(人脸跟踪和图像处理)/managers.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | """
4 | 对CaptureManager的实现
5 | """
6 |
7 | import cv2
8 | import time
9 | import numpy
10 |
11 |
12 | class CaptureManager(object):
13 |
14 | def __init__(self, capture,
15 | previewWindowManager=None,
16 | shouldMirrorPreview=False):
17 | """
18 | :param capture:
19 | :param previewWindowManager:
20 | :param shouldMirrorPreview: 设置显示的图像水平镜像翻转
21 | """
22 | self.previewWindowManager = previewWindowManager
23 | self.shouldMirrorPreview = shouldMirrorPreview
24 |
25 | self._capture = capture
26 | self._chanel = 0
27 | self._enteredFrame = False
28 | self._frame = None
29 | self._imageFilename = None
30 | self._videoFilename = None
31 | self._videoEncoding = None
32 | self._videoWriter = None
33 | self._startTime = None
34 | self._framesElapsed = long(0)
35 | self._fpsEstimate = None
36 |
37 | @property
38 | def channel(self):
39 | return self._chanel
40 |
41 | @channel.setter
42 | def channel(self, value):
43 | if self._chanel != value:
44 | self._chanel = value
45 | self._frame = None
46 |
47 | @property
48 | def frame(self):
49 | if self._enteredFrame and self._frame is None:
50 | _, self._frame = self._capture.retrieve()
51 | return self._frame
52 |
53 | @property
54 | def isWritingImage(self):
55 |
56 | return self._imageFilename is not None
57 |
58 | @property
59 | def isWritingVideo(self):
60 | return self._videoFilename is not None
61 |
62 | def enterFrame(self):
63 | """下一帧"""
64 | assert not self._enteredFrame, \
65 | "previous enterFrame() had no matching exitFrame()"
66 | if self._capture is not None:
67 | self._enteredFrame = self._capture.grab()
68 |
69 | def exitFrame(self):
70 | """写到窗口,写入文件,释放帧"""
71 | # 检查是否能获取下一帧
72 | if self.frame is None:
73 | self._enteredFrame = False
74 | return
75 |
76 | # 更新fps 和 参数
77 | if self._framesElapsed == 0:
78 | self._startTime = time.time()
79 | else:
80 | timeElapsed = time.time() - self._startTime
81 | self._fpsEstimate = self._framesElapsed / timeElapsed
82 | self._framesElapsed += 1
83 |
84 | # 画到窗口
85 | if self.previewWindowManager is not None:
86 | if self.shouldMirrorPreview:
87 | mirroredFrame = numpy.fliplr(self._frame).copy()
88 | self.previewWindowManager.show(mirroredFrame)
89 | else:
90 | self.previewWindowManager.show(self._frame)
91 | # 写到文件
92 | if self.isWritingImage:
93 | cv2.imwrite(self._imageFilename, self._frame)
94 | self._imageFilename = None
95 |
96 | # 写到视频文件
97 | self._writeVideoFrame()
98 | self._frame = None
99 | self._enteredFrame = False
100 |
101 | def writeImage(self, filename):
102 | self._imageFilename = filename
103 |
104 | def startWritingVideo(self,
105 | filename,
106 | encoding=cv2.VideoWriter_fourcc("I","4","2", "0")):
107 | self._videoFilename = filename
108 | self._videoEncoding = encoding
109 |
110 | def stopWritingVideo(self):
111 | self._videoFilename = None
112 | self._videoEncoding = None
113 | self._videoWriter = None
114 |
115 | def _writeVideoFrame(self):
116 |
117 | if not self.isWritingVideo:
118 | return
119 |
120 | if self._videoWriter is None:
121 | fps = self._capture.get(cv2.CAP_PROP_FPS)
122 | if fps == 0.0:
123 | if self._framesElapsed < 20:
124 | return
125 | else:
126 | fps = self._fpsEstimate
127 | size = (
128 | int(self._capture.get(cv2.CAP_PROP_FRAME_WIDTH)),
129 | int(self._capture.get(cv2.CAP_PROP_FRAME_HEIGHT))
130 | )
131 | self._videoWriter = cv2.VideoWriter(
132 | self._videoFilename, self._videoEncoding,
133 | fps, size
134 | )
135 | self._videoWriter.write(self._frame)
136 |
137 |
138 | class WindowManger(object):
139 |
140 | def __init__(self,
141 | windowName,
142 | keypressCallback=None):
143 | self.keypressCallback = keypressCallback
144 | self._windowName = windowName
145 | self._isWindowCreated = False
146 |
147 |
148 | @property
149 | def isWindowCreated(self):
150 | return self._isWindowCreated
151 |
152 | def createWindow(self):
153 | cv2.namedWindow(self._windowName)
154 | self._isWindowCreated = True
155 |
156 | def show(self, frame):
157 | cv2.imshow(self._windowName, frame)
158 |
159 | def destroyWindow(self):
160 | cv2.destroyWindow(self._windowName)
161 | self._isWindowCreated = False
162 |
163 | def processEvents(self):
164 | keycode = cv2.waitKey(1)
165 | if self.keypressCallback is not None and keycode != -1:
166 | keycode &= 0xFF
167 | self.keypressCallback(keycode)
--------------------------------------------------------------------------------
/02_Cameo项目(人脸跟踪和图像处理)/managers.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/02_Cameo项目(人脸跟踪和图像处理)/managers.pyc
--------------------------------------------------------------------------------
/02_Cameo项目(人脸跟踪和图像处理)/utils.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 | import numpy
5 | import scipy.interpolate
6 |
7 |
8 | def createCurveFunc(points):
9 | """Return a function derived from control points."""
10 | if points is None:
11 | return None
12 | num_points = len(points)
13 | if num_points < 2:
14 | return None
15 | xs, ys = zip(*points)
16 | if num_points < 4:
17 | kind = 'linear'
18 | # 'quadratic' is not implemented.
19 | else:
20 | kind = 'cubic'
21 | return scipy.interpolate.interp1d(xs, ys, kind,bounds_error = False)
22 |
23 |
24 | def createLookupArray(func, length = 256):
25 | """Return a lookup for whole-number inputs to a function. The lookup values are clamped to [0, length - 1]."""
26 | if func is None:
27 | return None
28 | lookup_array = numpy.empty(length)
29 | i = 0
30 | while i < length:
31 | func_i = func(i)
32 | lookup_array[i] = min(max(0, func_i), length - 1)
33 | i += 1
34 | return lookup_array
35 |
36 | def applyLookupArray(lookup_array, src, dst):
37 | """Map a source to a destination using a lookup."""
38 | if lookup_array is None:
39 | return
40 | dst[:] = lookup_array[src]
41 |
42 |
43 | def createCompositeFunc(func0, func1):
44 | """Return a composite of two functions."""
45 | if func0 is None:
46 | return func1
47 | if func1 is None:
48 | return func0
49 | return lambda x: func0(func1(x))
50 |
51 |
52 | def createFlatView(array):
53 | """Return a 1D view of an array of any dimensionality."""
54 | flat_view = array.view()
55 | flat_view.shape = array.size
56 | return flat_view
57 |
58 |
--------------------------------------------------------------------------------
/02_Cameo项目(人脸跟踪和图像处理)/utils.pyc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/02_Cameo项目(人脸跟踪和图像处理)/utils.pyc
--------------------------------------------------------------------------------
/03_处理图像/001_滤波器.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 | import numpy as np
5 | from scipy import ndimage
6 |
7 | # 3*3 的高通卷积核
8 | kernel_3x3 = np.array([
9 | [-1, -1, -1],
10 | [-1, 8, -1],
11 | [-1, -1, -1]
12 | ])
13 |
14 | # 5*5 高通卷积核
15 | kernel_5x5 = np.array([
16 | [-1, -1, -1, -1, -1],
17 | [-1, 1, 2, 1, -1],
18 | [-1, 3, 4, 2, -1],
19 | [-1, 1, 2, 1, -1],
20 | [-1, -1, -1, -1, -1]
21 | ])
22 |
23 | # 按灰度值读入图像
24 | img = cv2.imread("../data/mm1.jpg", 0)
25 |
26 |
27 | # 进行卷积运算
28 | k3 = ndimage.convolve(img, kernel_3x3)
29 | k5 = ndimage.convolve(img, kernel_5x5)
30 | """
31 | 高通滤波器: 根据像素与临近像素的亮度差值来提升像素的亮度
32 | """
33 |
34 |
35 | # 原图像运用高斯低通滤波器
36 | blurred = cv2.GaussianBlur(img, (11, 11), 0)
37 | """
38 | 低通滤波器: 像素周围亮度小于一个特定值时候,平滑该像素的亮度,主要用于去噪和模糊化
39 | 高斯滤波器是最常用的模糊滤波器之一,他是一个削弱强度的低通滤波器
40 | """
41 | # 原图像减去低通
42 | g_hpf = img - blurred
43 |
44 | cv2.imshow("3x3", k3)
45 | cv2.imshow("5x5", k5)
46 | cv2.imshow("g_hpf", g_hpf)
47 | cv2.imshow("origin", img)
48 | cv2.waitKey()
49 | cv2.destroyAllWindows()
--------------------------------------------------------------------------------
/03_处理图像/002_canny边缘检测.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 | """
5 | canny边缘检测:
6 | 有五个步骤:
7 | 1 高斯滤波器降噪
8 | 2 计算梯度
9 | 3 边缘上使用非最大抑制 nms
10 | 4 边缘上使用双阈值去除假阳性
11 | 5 分析所有边缘连接 消除不明显的边缘
12 | """
13 |
14 | img = cv2.imread("../data/mm2.jpeg", 0) # 按照灰度值读入
15 | canny = cv2.Canny(img, 200, 300)
16 | cv2.imshow("origin", img)
17 | cv2.imshow("canny", canny)
18 | cv2.waitKey()
19 | cv2.destroyAllWindows()
20 |
--------------------------------------------------------------------------------
/03_处理图像/003_轮廓检测.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 | import numpy as np
5 |
6 | # 创建一个200*200 的黑色空白图像
7 | img = np.zeros((200, 200), dtype=np.uint8)
8 | # 在图像的中央位置 放置一个100*100的白色方块
9 | img[50:150, 50: 150] = 255
10 |
11 | cv2.imshow("image", img)
12 | # 二值化操作
13 | ret, thresh = cv2.threshold(img, 127, 255, 0)
14 | """
15 | ret, dst = cv2.threshold(src, thresh, value, type)
16 | 参数:
17 | src: 原图像
18 | thresh: 阈值
19 | value: 新值 大于或小于阈值的值将赋新值
20 | type: 方法类型,有如下取值:
21 | cv2.THRESH_BINARY 黑白二值
22 | cv2.THRESH_BINARY_INV 黑白二值翻转
23 | cv2.THRESH_TRUNC 得到多像素值
24 | cv2.THRESH_TOZERO
25 | cv2.THRESH_TOZERO_INV
26 | 返回值:
27 | ret: 得到的阈值值
28 | dst: 阈值化后的图像
29 | """
30 |
31 | # 得到 修改后的图像, 轮廓, 轮廓的层次
32 | image, contours, hierarchy = cv2.findContours(
33 | thresh,
34 | cv2.RETR_TREE,
35 | cv2.CHAIN_APPROX_SIMPLE
36 | )
37 |
38 | """
39 | cv.findContours()
40 | 参数:
41 | 1 要寻找轮廓的图像 只能传入二值图像,不是灰度图像
42 | 2 轮廓的检索模式,有四种:
43 | cv2.RETR_EXTERNAL表示只检测外轮廓
44 | cv2.RETR_LIST检测的轮廓不建立等级关系
45 | cv2.RETR_CCOMP建立两个等级的轮廓,上面的一层为外边界,
46 | 里面的一层为内孔的边界信息。
47 | 如果内孔内还有一个连通物体,这个物体的边界也在顶层
48 | cv2.RETR_TREE建立一个等级树结构的轮廓
49 | 3 轮廓的近似办法
50 | cv2.CHAIN_APPROX_NONE存储所有的轮廓点,
51 | 相邻的两个点的像素位置差不超过1,
52 | 即max(abs(x1-x2),abs(y2-y1))==1
53 | cv2.CHAIN_APPROX_SIMPLE压缩水平方向,垂直方向,对角线方向的元素,
54 | 只保留该方向的终点坐标,例如一个矩形轮廓只需4个点来保存轮廓信息
55 | 返回值:
56 | contours:一个列表,每一项都是一个轮廓, 不会存储轮廓所有的点,只存储能描述轮廓的点
57 | hierarchy:一个ndarray, 元素数量和轮廓数量一样,
58 | 每个轮廓contours[i]对应4个hierarchy元素hierarchy[i][0] ~hierarchy[i][3],
59 | 分别表示后一个轮廓、前一个轮廓、父轮廓、内嵌轮廓的索引编号,如果没有对应项,则该值为负数
60 | """
61 | # 原图像转换成bgr图像
62 | color = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)
63 | # 用绿色 在原图像上画出轮廓
64 | img = cv2.drawContours(color, contours, -1, (0, 255, 255), 2)
65 |
66 | cv2.imshow("contours", color)
67 | cv2.waitKey()
68 | cv2.destroyAllWindows()
--------------------------------------------------------------------------------
/03_处理图像/004_矩形、圆形边界框.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 | import numpy as np
5 | # 读入图像
6 | img = cv2.imread("../data/mm1.jpg", cv2.IMREAD_UNCHANGED)
7 | # 转化为分别率更低的图像
8 | img = cv2.pyrDown(img)
9 |
10 | # 二值化, 黑白二值化
11 | ret, thresh = cv2.threshold(
12 | cv2.cvtColor(img.copy(), cv2.COLOR_BGR2GRAY), # 转换为灰度图像,
13 | 127, 255, # 大于127的改为255 否则改为0
14 | cv2.THRESH_BINARY) # 黑白二值化
15 | """
16 | ret, dst = cv2.threshold(src, thresh, value, type)
17 | 参数:
18 | src: 原图像
19 | thresh: 阈值
20 | value: 新值 大于或小于阈值的值将赋新值
21 | type: 方法类型,有如下取值:
22 | cv2.THRESH_BINARY 黑白二值
23 | cv2.THRESH_BINARY_INV 黑白二值翻转
24 | cv2.THRESH_TRUNC 得到多像素值
25 | cv2.THRESH_TOZERO
26 | cv2.THRESH_TOZERO_INV
27 | 返回值:
28 | ret: 得到的阈值值
29 | dst: 阈值化后的图像
30 | """
31 |
32 | # 搜索轮廓
33 | image, contours, hierarchy = cv2.findContours(
34 | thresh,
35 | cv2.RETR_EXTERNAL,
36 | cv2.CHAIN_APPROX_SIMPLE)
37 | """
38 | cv.findContours()
39 | 参数:
40 | 1 要寻找轮廓的图像 只能传入二值图像,不是灰度图像
41 | 2 轮廓的检索模式,有四种:
42 | cv2.RETR_EXTERNAL表示只检测外轮廓
43 | cv2.RETR_LIST检测的轮廓不建立等级关系
44 | cv2.RETR_CCOMP建立两个等级的轮廓,上面的一层为外边界,
45 | 里面的一层为内孔的边界信息。
46 | 如果内孔内还有一个连通物体,这个物体的边界也在顶层
47 | cv2.RETR_TREE建立一个等级树结构的轮廓
48 | 3 轮廓的近似办法
49 | cv2.CHAIN_APPROX_NONE存储所有的轮廓点,
50 | 相邻的两个点的像素位置差不超过1,
51 | 即max(abs(x1-x2),abs(y2-y1))==1
52 | cv2.CHAIN_APPROX_SIMPLE压缩水平方向,垂直方向,对角线方向的元素,
53 | 只保留该方向的终点坐标,例如一个矩形轮廓只需4个点来保存轮廓信息
54 | 返回值:
55 | contours:一个列表,每一项都是一个轮廓, 不会存储轮廓所有的点,只存储能描述轮廓的点
56 | hierarchy:一个ndarray, 元素数量和轮廓数量一样,
57 | 每个轮廓contours[i]对应4个hierarchy元素hierarchy[i][0] ~hierarchy[i][3],
58 | 分别表示后一个轮廓、前一个轮廓、父轮廓、内嵌轮廓的索引编号,如果没有对应项,则该值为负数
59 | """
60 |
61 | for c in contours:
62 |
63 | x, y, w, h = cv2.boundingRect(c)
64 | """
65 | 传入一个轮廓图像,返回 x y 是左上角的点, w和h是矩形边框的宽度和高度
66 | """
67 | cv2.rectangle(img, (x, y), (x+w, y+h), (0, 255, 0), 2)
68 | """
69 | 画出矩形
70 | img 是要画出轮廓的原图
71 | (x, y) 是左上角点的坐标
72 | (x+w, y+h) 是右下角的坐标
73 | 0,255,0)是画线对应的rgb颜色
74 | 2 是画出线的宽度
75 | """
76 |
77 | # 获得最小的矩形轮廓 可能带旋转角度
78 | rect = cv2.minAreaRect(c)
79 | # 计算最小区域的坐标
80 | box = cv2.boxPoints(rect)
81 | # 坐标规范化为整数
82 | box = np.int0(box)
83 | # 画出轮廓
84 | cv2.drawContours(img, [box], 0, (0, 0, 255), 3)
85 |
86 | # 计算最小封闭圆形的中心和半径
87 | (x, y), radius = cv2.minEnclosingCircle(c)
88 | # 转换成整数
89 | center = (int(x), int(y))
90 | radius = int(radius)
91 | # 画出圆形
92 | img = cv2.circle(img, center, radius, (0, 255, 0), 2)
93 |
94 | # 画出轮廓
95 | cv2.drawContours(img, contours, -1, (255, 0, 0), 1)
96 | cv2.imshow("contours", img)
97 | cv2.waitKey()
98 | cv2.destroyAllWindows()
99 |
--------------------------------------------------------------------------------
/03_处理图像/005_凸轮廓与douglas-peucher算法.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/03_处理图像/005_凸轮廓与douglas-peucher算法.py
--------------------------------------------------------------------------------
/03_处理图像/006_直线检测.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 | import numpy as np
5 |
6 |
7 | # 读入图像
8 | img = cv2.imread("../data/line1.png")
9 | # 转为灰度图像
10 | gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
11 | # Canny边缘检测
12 | edges = cv2.Canny(gray, 50, 100)
13 | """
14 | canny边缘检测:
15 | 有五个步骤:
16 | 1 高斯滤波器降噪
17 | 2 计算梯度
18 | 3 边缘上使用非最大抑制 nms
19 | 4 边缘上使用双阈值去除假阳性
20 | 5 分析所有边缘连接 消除不明显的边缘
21 | """
22 |
23 | minLineLength = 20
24 | maxLineGap = 5
25 | lines = cv2.HoughLinesP(edges, 1, np.pi/180, 100, minLineLength, maxLineGap)
26 | """
27 | cv2.HoughLinesP
28 | 作用:标准霍夫线变换, 找到图像中的所有直线
29 | 参数:
30 | 1 二值图
31 | 2 半径精度
32 | 3 角度精度
33 | 4 最短检测长度
34 | 5 允许的最大缺口
35 | 返回:
36 | 一个列表,每一项是一个四元组,分别是直线两个端点的坐标
37 | """
38 | for line in lines:
39 | for x1, y1, x2, y2 in line:
40 | # 在图片上画直线
41 | cv2.line(img, (x1, y1), (x2, y2), (0, 255, 0), 2)
42 |
43 | cv2.imshow("edges", edges)
44 | cv2.imshow("lines", img)
45 | cv2.waitKey()
46 | cv2.destroyAllWindows()
--------------------------------------------------------------------------------
/03_处理图像/007_圆检测.py:
--------------------------------------------------------------------------------
1 | import cv2
2 | import numpy as np
3 |
4 | img_origin = cv2.imread("../data/circle.jpg")
5 | img_gray = cv2.cvtColor(img_origin, cv2.COLOR_BGR2GRAY)
6 | # 低同滤波进行平滑图像
7 | img = cv2.medianBlur(img_gray, 5)
8 | cimg = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR)
9 |
10 | circles = cv2.HoughCircles(img, cv2.HOUGH_GRADIENT, 1, 120,
11 | param1=100,param2=30,
12 | minRadius=0, maxRadius=0)
13 | """
14 | cv2.HoughCircles(image, method, dp,
15 | minDist, circles, param1, param2,
16 | minRadius, maxRadius)
17 | 参数:
18 | image: 输入图像 必须是灰度图像
19 | method:检测方法,常用CV_HOUGH_GRADIENT
20 | dp:检测内侧圆心的累加器图像的分辨率于输入图像之比的倒数,
21 | 如dp=1,累加器和输入图像具有相同的分辨率,如果dp=2,
22 | 累计器便有输入图像一半那么大的宽度和高度
23 | minDist: 两个圆心之间的最小距离
24 | param1: 默认100, 是method方法的参数
25 | 在CV_HOUGH_GRADIENT表示传入canny边缘检测的阈值
26 | param2: 默认100,method的参数,
27 | 对当前唯一的方法霍夫梯度法cv2.HOUGH_GRADIENT,
28 | 它表示在检测阶段圆心的累加器阈值,
29 | 它越小,就越可以检测到更多根本不存在的圆,
30 | 而它越大的话,能通过检测的圆就更加接近完美的圆形了
31 | minRadius:默认值0,圆半径的最小值
32 | maxRadius:默认值0,圆半径的最大值
33 | 返回值:
34 |
35 | """
36 | # 整数化
37 | circles = np.uint16(np.around(circles))
38 |
39 | for i in circles[0, :]:
40 | # 画出外边圆
41 | cv2.circle(img_origin, (i[0], i[1]), i[2], (0, 255, 0), 2)
42 | # 画出圆心
43 | cv2.circle(img_origin, (i[0], i[1]), 2, (0, 0, 255), 3)
44 |
45 |
46 | cv2.imshow("", img_origin)
47 | cv2.waitKey()
48 | cv2.destroyAllWindows()
--------------------------------------------------------------------------------
/03_处理图像/008_在图像上写字.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 |
5 | img = cv2.imread("../data/mm1.jpg", cv2.IMREAD_GRAYSCALE)
6 |
7 | img = cv2.putText(img, "hello world!", (50, 50), cv2.FONT_HERSHEY_SIMPLEX, 1.2, (0, 255, 0), 2)
8 | """
9 | cv2.putText(图像, 文字, (x, y), 字体, 大小, (b, g, r), 宽度)
10 | """
11 |
12 | cv2.imshow("", img)
13 | cv2.waitKey()
14 | cv2.destroyAllWindows()
15 |
16 |
--------------------------------------------------------------------------------
/04_深度估计与分割/001_普通摄像头进行深度估计.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/04_深度估计与分割/001_普通摄像头进行深度估计.py
--------------------------------------------------------------------------------
/04_深度估计与分割/002_grabcut前景检测.py:
--------------------------------------------------------------------------------
1 | import numpy as np
2 | import cv2
3 | import matplotlib.pyplot as plt
4 |
5 | # 读入图片
6 | img = cv2.imread("../data/mm2.jpeg")
7 | # 创建一个和加载图像一样形状的 填充为0的掩膜
8 | mask = np.zeros(img.shape[:2], np.uint8)
9 |
10 | # 创建以0填充的前景和背景模型
11 | bgdModel = np.zeros((1, 65), np.float64)
12 | fgdModel = np.zeros((1, 65), np.float64)
13 |
14 | # 定义一个矩形
15 | rect = (100, 50, 421, 378)
16 |
17 | cv2.grabCut(img, mask, rect, bgdModel, fgdModel, 5, cv2.GC_INIT_WITH_RECT)
18 |
19 | """
20 | cv2.grabCut()
21 | 参数:
22 | img: 输入图像
23 | mask: 蒙板图像,确定前景区域,背景区域,不确定区域,
24 | 可以设置为cv2.GC_BGD,cv2.GC_FGD,cv2.GC_PR_BGD,cv2.GC_PR_FGD,
25 | 也可以输入0,1,2,3
26 | rect: 包含前景的矩形 格式(x, y, w, h)
27 | bdgModel: 算法内部使用的数组. 你只需要创建两个大小为 (1,65),数据类型为 np.float64 的数组
28 | fgdModel: 算法内部使用的数组. 你只需要创建两个大小为 (1,65),数据类型为 np.float64 的数组
29 | iterCount: 算法的迭代次数
30 | mode: 可以设置为 cv2.GC_INIT_WITH_RECT 或 cv2.GC_INIT_WITH_MASK,也可以联合使用。
31 | 这是用来确定我们进行修改的方式,矩形模式或者掩模模式
32 |
33 | 算法会修改掩模图像,在新的掩模图像中,
34 | 所有的像素被分为四类:背景,前景,可能是背景/前景使用 4 个不同的标签标记。
35 | 然后我们来修改掩模图像,
36 | 所有的 0 像素和 1 像素都被归为 0(例如背景),所有的 1 像素和 3 像素都被归为 1(前景)。
37 | 我们最终的掩模图像就这样准备好了。用它和输入图像相乘就得到了分割好的图像
38 |
39 | 原理:
40 | 1 输入矩形框,矩形框外部区域都是背景。内部一定包含前景。
41 | 2 电脑对输入图像进行初始化,标记前景和背景的像素。
42 | 3 使用高斯混合模型(GMM)对前景和背景建模。
43 | 4 根据输入,GMM会学习并创建新的像素分布。
44 | 对未知的像素(前景或背景不确定),根据他们与已知的分类像素关系进行分类。(类似聚类操作)
45 | 5 这样会根据像素的分布创建一幅图,图中节点是像素。
46 | 除了像素点是节点以外,还有Source_node和Sink_node两个节点。
47 | 所有的前景图像都与Source_node相连。背景与Sink_node相连。
48 | 6 像素是否连接到Source_node/end_node依赖于权值,
49 | 这个权值由像素属于同一类,也就是前景或者背景的概率来决定。
50 | 如果像素的颜色有很大区别,那么他们之间的权重就很小。
51 | 7 使用mincut算法对图像进行分割。
52 | 它会根据最小代价方程对图像分成source_node和sink_node。
53 | 代价方程是指裁剪所有边上权重的和。
54 | 裁剪完成后,所有连接到source_node的判定为前景,sink_node上的为背景。
55 | 继续此过程,直到分类收敛。
56 |
57 |
58 |
59 | """
60 | mask2 = np.where((mask == 2) | (mask == 0), 0, 1).astype("uint8")
61 | img = img*mask2[:, :, np.newaxis]
62 |
63 | plt.subplot(121), plt.imshow(img)
64 | plt.title("grabcut"), plt.xticks([]), plt.yticks([])
65 | plt.subplot(122), plt.imshow(cv2.cvtColor(cv2.imread("../data/mm2.jpeg"), cv2.COLOR_BGR2RGB))
66 | plt.title("original"), plt.xticks([]), plt.yticks([])
67 | plt.show()
68 |
--------------------------------------------------------------------------------
/04_深度估计与分割/003_分水岭算法图像分割.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import numpy as np
4 | import cv2
5 | from matplotlib import pyplot as plt
6 |
7 | """
8 | 分水岭算法:
9 |
10 | """
11 |
12 | # 读入图像
13 | img = cv2.imread("../data/item2.jpg")
14 | # 转成灰度图像
15 | gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
16 | # 黑白二值化
17 | ret, thresh = cv2.threshold(
18 | gray,
19 | 0, 255,
20 | cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU
21 | )
22 |
23 | # 使用morphologyEx变换来去除噪声, 对图像先膨胀再腐蚀
24 | kernel = np.ones((3, 3), np.uint8)
25 | opening = cv2.morphologyEx(thresh, cv2.MORPH_OPEN, kernel, iterations=2)
26 | # morphologyEx变换后的图像进行膨胀,可以得到大部分都是背景的区域
27 | sure_bg = cv2.dilate(opening, kernel, iterations=3)
28 | # 通过distanceTransform来确定前景区域 结合阈值来决定哪些是前景
29 | dist_transform = cv2.distanceTransform(opening, cv2.DIST_L2, 5)
30 |
31 | ret, sure_fg = cv2.threshold(dist_transform, 0.7*dist_transform.max(), 255, 0)
32 |
33 | # 用sure_bg 和 sure_fg 相减确定前景和背景重合区域
34 | sure_fg = np.uint8(sure_fg)
35 | unkown = cv2.subtract(sure_bg, sure_fg)
36 |
37 | # 定义栅栏 分割不同的山谷
38 | ret, markers = cv2.connectedComponents(sure_fg)
39 | # 背景区域加上1, unkown区域设为0
40 | markers = markers + 1
41 | markers[unkown == 255] = 0
42 |
43 | # 打开栅栏 把栅栏设置成红色
44 | markers = cv2.watershed(img, markers)
45 | img[markers == -1] = [255, 0, 0]
46 | plt.imshow(img)
47 | plt.show()
48 |
--------------------------------------------------------------------------------
/04_深度估计与分割/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/04_深度估计与分割/__init__.py
--------------------------------------------------------------------------------
/05_人脸检测和识别/001_静态图像人脸检测.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 |
5 | filename = "../data/mm3.jpg"
6 |
7 |
8 | def detect(filename):
9 | # 创建检测人脸的对象
10 | face_cascade = cv2.CascadeClassifier("../data/haarcascade_frontalface_default.xml")
11 | # 读取图像
12 | img = cv2.imread(filename)
13 | # 转为灰度图像
14 | gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
15 | # 进行人脸检测
16 | faces = face_cascade.detectMultiScale(gray, 1.3, 5)
17 | """
18 | faces = face_cascade.detectMultiScale(img, scaleFactor, minNeighbors)
19 | 参数:
20 | img: 识别的原图
21 | scaleFactor: 迭代时图像的压缩率
22 | minNeighbors: 每个人脸矩形保留近邻数目的最小值
23 |
24 | 返回值:
25 | 一个列表,列表里边每一项是一个框起人脸的矩形(x, y, w, h)
26 |
27 | """
28 | print(faces)
29 | for (x, y, w, h) in faces:
30 | # 画出矩形框
31 | img = cv2.rectangle(img, (x, y), (x+w, y+h), (255, 0, 0), 2)
32 |
33 | cv2.imshow("Vikings Detected", img)
34 | cv2.waitKey()
35 |
36 |
37 | detect(filename)
38 |
--------------------------------------------------------------------------------
/05_人脸检测和识别/002_视频中检测人脸.py:
--------------------------------------------------------------------------------
1 | # coding:utf8
2 |
3 | import cv2
4 |
5 |
6 | def detect():
7 | # 创建人脸检测的对象
8 | face_cascade = cv2.CascadeClassifier("../data/haarcascade_frontalface_default.xml")
9 | # 创建眼睛检测的对象
10 | eye_cascade = cv2.CascadeClassifier("../data/haarcascade_eye.xml")
11 | # 连接摄像头的对象 0表示摄像头的编号
12 | camera = cv2.VideoCapture(0)
13 |
14 | while True:
15 | # 读取当前帧
16 | ret, frame = camera.read()
17 | # 转为灰度图像
18 | gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
19 | # 检测人脸 返回列表 每个元素都是(x, y, w, h)表示矩形的左上角和宽高
20 | faces = face_cascade.detectMultiScale(gray, 1.3, 5)
21 | # 画出人脸的矩形
22 | for (x, y, w, h) in faces:
23 | # 画矩形 在frame图片上画, 传入左上角和右下角坐标 矩形颜色 和线条宽度
24 | img = cv2.rectangle(frame, (x, y), (x+w, y+h), (255, 0, 0), 2)
25 | # 把脸单独拿出来
26 | roi_gray = gray[y: y+h, x: x+w]
27 | # 在脸上检测眼睛 (40, 40)是设置最小尺寸,再小的部分会不检测
28 | eyes = eye_cascade.detectMultiScale(roi_gray, 1.03, 5, 0, (40, 40))
29 | # 把眼睛画出来
30 | for(ex, ey, ew, eh) in eyes:
31 | cv2.rectangle(img, (x+ex, y+ey), (x+ex+ew, y+ey+eh), (0, 255, 0), 2)
32 |
33 | cv2.imshow("camera", frame)
34 | if cv2.waitKey(5) & 0xff == ord("q"):
35 | break
36 |
37 | camera.release()
38 | cv2.destroyAllWindows()
39 |
40 |
41 | if __name__ == '__main__':
42 | detect()
43 |
--------------------------------------------------------------------------------
/05_人脸检测和识别/003_人脸识别.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 | import os
5 | import numpy as np
6 |
7 |
8 | # 1 生成人脸识别数据
9 | # 图像是灰度格式,后缀名.pgm
10 | # 图像是正方形 图像大小要一样 在这里使用200*200
11 | def generate():
12 | # 加载检测图像中人脸位置的对象, xml文件需要去opencv文件夹里面找, 放到项目里面来引入
13 | face_cascade = cv2.CascadeClassifier("../data/haarcascade_frontalface_default.xml")
14 | # 调用本机摄像头
15 | camera = cv2.VideoCapture(0)
16 | count = 0
17 | # 读取摄像头
18 | while True:
19 | # 读入 帧
20 | ret, frame = camera.read()
21 | # 变为灰度图像
22 | gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
23 | # 检测人脸位置
24 | faces = face_cascade.detectMultiScale(gray, 1.3, 5)
25 | # 将图片中人脸位置单独拿出来改变成200*200大小的图片 存入本地 作为数据集
26 | for (x, y, w, h) in faces:
27 | img = cv2.rectangle(frame, (x, y), (x+w, y+h), (255, 0, 0), 2)
28 | f = cv2.resize(gray[y:y+h, x:x+w], (200, 200))
29 | cv2.imwrite("./data/%s.pgm" % str(count), f)
30 | count += 1
31 |
32 | cv2.imshow("camera", frame)
33 | # 如果按键q就退出 否则等50毫秒
34 | if cv2.waitKey(50) & 0xff == ord("q"):
35 | break
36 |
37 | camera.release()
38 | cv2.destroyAllWindows()
39 |
40 |
41 | # 读取生成好的数据 在我项目目录下整理好的
42 | def readImages():
43 | x, y = [], []
44 | path = "./data/faces/"
45 | image_file = os.listdir(path)
46 | image_files = [path + i for i in image_file]
47 | for file in image_files:
48 | images = os.listdir(file)
49 | label = file.split("/")[-1][1:]
50 | for i in images:
51 | img = cv2.imread(file + "/" + i, cv2.IMREAD_GRAYSCALE)
52 | img = cv2.resize(img, (200, 200))
53 | x.append(np.asarray(img, dtype=np.uint8))
54 | y.append(int(label))
55 |
56 | y = np.asarray(y, dtype=np.int32)
57 | return x, y
58 |
59 |
60 | # 检测人脸
61 | def face_rec():
62 | # 获取数据
63 | x, y = readImages()
64 |
65 | # 人脸识别的模型
66 | model = cv2.face.EigenFaceRecognizer_create()
67 | # fisherfaces算法的模型
68 | # model = cv2.face.FisherFaceRecognizer_create()
69 | # LBPH算法的模型
70 | # model = cv2.face.LBPHFaceRecognizer_create()
71 | """
72 | Eigenfaces和Fisherfaces 预测时候产生0到20000的评分
73 | 低于4000 5000 的评分都是相当可靠的
74 | LBPH 产生评分不同,低于50是可靠的 高于80是不可靠的
75 | """
76 |
77 | # 训练模型
78 | model.train(np.asarray(x), np.asarray(y))
79 |
80 | # 开摄像头
81 | camera = cv2.VideoCapture(0)
82 | # 加载检测人脸对象
83 | face_cascade = cv2.CascadeClassifier("../data/haarcascade_frontalface_default.xml")
84 | while True:
85 | # 读取当前帧
86 | read, img = camera.read()
87 | # 当前帧下检测人脸
88 | faces = face_cascade.detectMultiScale(img, 1.3, 5)
89 | for (x, y, w, h) in faces:
90 | # 画出人脸
91 | img = cv2.rectangle(img, (x, y), (x+w, y+h), (255, 0, 0), 2)
92 | # 转成灰度图
93 | gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
94 | # 拿出人脸部分
95 | roi = gray[x: x+w, y: y+h]
96 | try:
97 | # 更改大小
98 | roi = cv2.resize(roi, (200, 200), interpolation=cv2.INTER_LINEAR)
99 | # 进行预测
100 | params = model.predict(roi)
101 | # 在图像上写预测结果
102 | # 1.2是字体大小 2是粗细
103 | img = cv2.putText(img, str(params[0]), (x, y), cv2.FONT_HERSHEY_SIMPLEX, 1.2, (0, 255, 0), 2)
104 | # prams是一个二元素列表, 第一个元素是预测结果,第二个元素是得分情况
105 | print(params)
106 |
107 | except Exception as e:
108 | print(e)
109 | cv2.imshow("detect face", img)
110 | if cv2.waitKey(5) & 0xff == ord("q"):
111 | break
112 |
113 | cv2.destroyAllWindows()
114 |
115 |
116 | if __name__ == '__main__':
117 | # 调用摄像头 采集人脸照片数据
118 | # generate()
119 |
120 | # 检测人脸
121 | face_rec()
122 |
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/0.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/0.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/11.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/11.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/12.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/12.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/13.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/13.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/14.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/14.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/15.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/15.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/16.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/16.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/17.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/17.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/18.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/18.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/19.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/19.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/20.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/20.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/21.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/21.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/22.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/22.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/23.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/23.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/24.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/24.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/25.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/25.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/26.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/26.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/27.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/27.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/28.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/28.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/29.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/29.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/30.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/30.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/31.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/31.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/32.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/32.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/33.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/33.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/34.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/34.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/35.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/35.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/36.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/36.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/37.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/37.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/38.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/38.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/39.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/39.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/40.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/40.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/41.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/41.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/42.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/42.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/43.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/43.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/44.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/44.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/45.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/45.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/46.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/46.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/47.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/47.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/48.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/48.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/49.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/49.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/50.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/50.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/51.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/51.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/52.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/52.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/53.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/53.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/54.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/54.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/55.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/55.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/56.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/56.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/57.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/57.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/58.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/58.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/59.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/59.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/60.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/60.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/61.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/61.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/62.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/62.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/63.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/63.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/64.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/64.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/65.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/65.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/66.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/66.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/67.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/67.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/68.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/68.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/69.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/69.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/70.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/70.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/71.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/71.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/72.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/72.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/73.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/73.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/74.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/74.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/75.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/75.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/76.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/76.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/77.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/77.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/78.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/78.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/79.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/79.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/80.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/80.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/81.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/81.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/82.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/82.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/83.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/83.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/84.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/84.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/85.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/85.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s0/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s0/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s1/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s1/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s1/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s1/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s1/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s1/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s1/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s1/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s1/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s1/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s1/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s1/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s1/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s1/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s1/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s1/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s1/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s1/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s1/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s1/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s10/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s10/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s10/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s10/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s10/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s10/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s10/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s10/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s10/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s10/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s10/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s10/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s10/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s10/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s10/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s10/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s10/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s10/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s10/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s10/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s11/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s11/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s11/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s11/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s11/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s11/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s11/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s11/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s11/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s11/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s11/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s11/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s11/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s11/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s11/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s11/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s11/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s11/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s11/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s11/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s12/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s12/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s12/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s12/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s12/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s12/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s12/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s12/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s12/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s12/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s12/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s12/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s12/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s12/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s12/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s12/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s12/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s12/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s12/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s12/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s13/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s13/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s13/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s13/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s13/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s13/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s13/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s13/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s13/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s13/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s13/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s13/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s13/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s13/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s13/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s13/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s13/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s13/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s13/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s13/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s14/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s14/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s14/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s14/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s14/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s14/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s14/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s14/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s14/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s14/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s14/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s14/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s14/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s14/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s14/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s14/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s14/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s14/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s14/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s14/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s15/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s15/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s15/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s15/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s15/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s15/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s15/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s15/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s15/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s15/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s15/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s15/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s15/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s15/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s15/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s15/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s15/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s15/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s15/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s15/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s16/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s16/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s16/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s16/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s16/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s16/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s16/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s16/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s16/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s16/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s16/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s16/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s16/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s16/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s16/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s16/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s16/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s16/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s16/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s16/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s17/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s17/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s17/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s17/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s17/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s17/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s17/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s17/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s17/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s17/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s17/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s17/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s17/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s17/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s17/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s17/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s17/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s17/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s17/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s17/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s18/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s18/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s18/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s18/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s18/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s18/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s18/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s18/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s18/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s18/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s18/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s18/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s18/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s18/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s18/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s18/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s18/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s18/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s18/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s18/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s19/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s19/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s19/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s19/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s19/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s19/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s19/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s19/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s19/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s19/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s19/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s19/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s19/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s19/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s19/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s19/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s19/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s19/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s19/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s19/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s2/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s2/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s2/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s2/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s2/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s2/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s2/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s2/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s2/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s2/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s2/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s2/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s2/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s2/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s2/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s2/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s2/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s2/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s2/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s2/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s20/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s20/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s20/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s20/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s20/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s20/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s20/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s20/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s20/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s20/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s20/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s20/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s20/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s20/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s20/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s20/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s20/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s20/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s20/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s20/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s21/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s21/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s21/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s21/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s21/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s21/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s21/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s21/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s21/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s21/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s21/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s21/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s21/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s21/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s21/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s21/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s21/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s21/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s21/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s21/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s22/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s22/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s22/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s22/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s22/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s22/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s22/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s22/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s22/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s22/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s22/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s22/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s22/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s22/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s22/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s22/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s22/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s22/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s22/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s22/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s23/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s23/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s23/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s23/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s23/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s23/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s23/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s23/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s23/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s23/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s23/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s23/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s23/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s23/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s23/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s23/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s23/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s23/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s23/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s23/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s24/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s24/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s24/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s24/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s24/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s24/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s24/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s24/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s24/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s24/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s24/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s24/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s24/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s24/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s24/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s24/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s24/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s24/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s24/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s24/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s25/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s25/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s25/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s25/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s25/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s25/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s25/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s25/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s25/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s25/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s25/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s25/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s25/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s25/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s25/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s25/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s25/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s25/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s25/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s25/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s26/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s26/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s26/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s26/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s26/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s26/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s26/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s26/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s26/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s26/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s26/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s26/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s26/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s26/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s26/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s26/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s26/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s26/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s26/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s26/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s27/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s27/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s27/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s27/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s27/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s27/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s27/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s27/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s27/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s27/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s27/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s27/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s27/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s27/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s27/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s27/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s27/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s27/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s27/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s27/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s28/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s28/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s28/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s28/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s28/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s28/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s28/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s28/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s28/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s28/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s28/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s28/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s28/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s28/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s28/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s28/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s28/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s28/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s28/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s28/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s29/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s29/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s29/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s29/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s29/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s29/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s29/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s29/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s29/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s29/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s29/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s29/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s29/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s29/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s29/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s29/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s29/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s29/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s29/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s29/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s3/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s3/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s3/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s3/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s3/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s3/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s3/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s3/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s3/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s3/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s3/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s3/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s3/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s3/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s3/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s3/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s3/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s3/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s3/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s3/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s30/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s30/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s30/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s30/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s30/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s30/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s30/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s30/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s30/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s30/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s30/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s30/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s30/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s30/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s30/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s30/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s30/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s30/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s30/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s30/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s31/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s31/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s31/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s31/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s31/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s31/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s31/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s31/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s31/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s31/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s31/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s31/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s31/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s31/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s31/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s31/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s31/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s31/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s31/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s31/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s32/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s32/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s32/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s32/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s32/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s32/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s32/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s32/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s32/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s32/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s32/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s32/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s32/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s32/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s32/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s32/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s32/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s32/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s32/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s32/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s33/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s33/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s33/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s33/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s33/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s33/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s33/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s33/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s33/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s33/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s33/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s33/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s33/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s33/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s33/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s33/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s33/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s33/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s33/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s33/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s34/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s34/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s34/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s34/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s34/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s34/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s34/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s34/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s34/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s34/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s34/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s34/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s34/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s34/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s34/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s34/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s34/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s34/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s34/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s34/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s35/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s35/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s35/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s35/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s35/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s35/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s35/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s35/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s35/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s35/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s35/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s35/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s35/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s35/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s35/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s35/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s35/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s35/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s35/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s35/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s36/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s36/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s36/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s36/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s36/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s36/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s36/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s36/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s36/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s36/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s36/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s36/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s36/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s36/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s36/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s36/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s36/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s36/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s36/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s36/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s37/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s37/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s37/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s37/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s37/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s37/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s37/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s37/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s37/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s37/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s37/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s37/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s37/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s37/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s37/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s37/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s37/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s37/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s37/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s37/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s38/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s38/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s38/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s38/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s38/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s38/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s38/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s38/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s38/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s38/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s38/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s38/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s38/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s38/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s38/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s38/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s38/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s38/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s38/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s38/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s39/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s39/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s39/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s39/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s39/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s39/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s39/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s39/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s39/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s39/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s39/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s39/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s39/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s39/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s39/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s39/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s39/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s39/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s39/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s39/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s4/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s4/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s4/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s4/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s4/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s4/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s4/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s4/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s4/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s4/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s4/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s4/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s4/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s4/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s4/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s4/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s4/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s4/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s4/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s4/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s40/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s40/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s40/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s40/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s40/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s40/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s40/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s40/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s40/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s40/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s40/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s40/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s40/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s40/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s40/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s40/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s40/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s40/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s40/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s40/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s5/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s5/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s5/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s5/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s5/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s5/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s5/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s5/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s5/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s5/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s5/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s5/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s5/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s5/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s5/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s5/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s5/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s5/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s5/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s5/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s6/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s6/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s6/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s6/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s6/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s6/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s6/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s6/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s6/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s6/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s6/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s6/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s6/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s6/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s6/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s6/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s6/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s6/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s6/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s6/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s7/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s7/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s7/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s7/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s7/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s7/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s7/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s7/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s7/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s7/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s7/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s7/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s7/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s7/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s7/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s7/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s7/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s7/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s7/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s7/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s8/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s8/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s8/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s8/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s8/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s8/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s8/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s8/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s8/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s8/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s8/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s8/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s8/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s8/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s8/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s8/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s8/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s8/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s8/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s8/9.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s9/1.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s9/1.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s9/10.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s9/10.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s9/2.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s9/2.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s9/3.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s9/3.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s9/4.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s9/4.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s9/5.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s9/5.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s9/6.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s9/6.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s9/7.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s9/7.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s9/8.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s9/8.pgm
--------------------------------------------------------------------------------
/05_人脸检测和识别/data/faces/s9/9.pgm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/05_人脸检测和识别/data/faces/s9/9.pgm
--------------------------------------------------------------------------------
/06_图像检测和搜索/001_检测角点特征.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 | import numpy as np
5 |
6 | img = cv2.imread("../data/chess1.jpg")
7 | gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
8 | gray = np.float32(gray)
9 | # 角点检测
10 | dst = cv2.cornerHarris(gray, 2, 23, 0.04)
11 | """
12 | 角点也是处在一个无论框框往哪边移动 框框内像素值都会变化很大的情况而定下来的点
13 | cv2.cornerHarris()
14 | img - 数据类型为 float32 的输入图像。
15 | blockSize - 角点检测中要考虑的领域大小。
16 | ksize - Sobel 求导中使用的窗口大小
17 | k - Harris 角点检测方程中的自由参数,取值参数为 [0,04,0.06].
18 | """
19 |
20 | # 将检测到角点的位置标记为红色
21 | img[dst > 0.01 * dst.max()] = (0, 0, 255)
22 |
23 | cv2.imshow("corners", img)
24 | cv2.waitKey()
25 | cv2.destroyAllWindows()
--------------------------------------------------------------------------------
/06_图像检测和搜索/002_DoG和SIFT特征提取与描述.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 |
5 | # 读取图片
6 | img = cv2.imread("../data/walez1.jpg")
7 | # 转为灰度图像
8 | gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
9 | # 创建一个sift对象 并计算灰度图像
10 | sift = cv2.xfeatures2d.SIFT_create()
11 | keypoints, descriptor = sift.detectAndCompute(gray, None)
12 | """
13 | sift对象会使用DoG检测关键点,对关键点周围的区域计算向量特征,检测并计算
14 | 返回 关键点和描述符
15 | 关键点是点的列表
16 | 描述符是检测到的特征的局部区域图像列表
17 |
18 | 关键点的属性:
19 | pt: 点的x y坐标
20 | size: 表示特征的直径
21 | angle: 特征方向
22 | response: 关键点的强度
23 | octave: 特征所在金字塔层级
24 | 算法进行迭代的时候, 作为参数的图像尺寸和相邻像素会发生变化
25 | octave属性表示检测到关键点所在的层级
26 | ID: 检测到关键点的ID
27 |
28 | """
29 | # 在图像上绘制关键点
30 | # DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS表示对每个关键点画出圆圈和方向
31 | img = cv2.drawKeypoints(image=img, outImage=img, keypoints=keypoints,
32 | flags=cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS,
33 | color=(51, 163, 236))
34 |
35 | cv2.imshow("sift_keypoints", img)
36 | cv2.waitKey()
37 | cv2.destroyAllWindows()
--------------------------------------------------------------------------------
/06_图像检测和搜索/003_hessian算法surf提取和检测.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 |
5 | img = cv2.imread("../data/walez1.jpg")
6 | gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
7 |
8 | surf = cv2.xfeatures2d.SURF_create(8000)
9 | """
10 | 创建surf对象,设置阈值,阈值越高检测到的特征就越少,
11 | 通过调整阈值得到合适的关键点
12 | """
13 | # 检测图像中的关键点和描述
14 | keypoints, descriptor = surf.detectAndCompute(gray, None)
15 | """
16 | sift对象会使用DoG检测关键点,对关键点周围的区域计算向量特征,检测并计算
17 | 返回 关键点和描述符
18 | 关键点是点的列表
19 | 描述符是检测到的特征的局部区域图像列表
20 |
21 | 关键点的属性:
22 | pt: 点的x y坐标
23 | size: 表示特征的直径
24 | angle: 特征方向
25 | response: 关键点的强度
26 | octave: 特征所在金字塔层级
27 | 算法进行迭代的时候, 作为参数的图像尺寸和相邻像素会发生变化
28 | octave属性表示检测到关键点所在的层级
29 | ID: 检测到关键点的ID
30 |
31 | """
32 | # 将关键点画在原图像上
33 | cv2.drawKeypoints(image=img, outImage=img,
34 | keypoints=keypoints,flags=4,
35 | color=(51, 163, 236))
36 |
37 | cv2.imshow("surf_detected", img)
38 | cv2.waitKey()
39 | cv2.destroyAllWindows()
40 |
41 |
--------------------------------------------------------------------------------
/06_图像检测和搜索/004_基于ORB的特征检测和BF暴力匹配.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 |
5 | """
6 | orb特征检测和匹配
7 | 两幅图片分别是 乐队的logo 和包含该logo的专辑封面
8 | 利用orb进行检测后进行匹配两幅图片中的logo
9 |
10 | """
11 | # 按照灰度图像的方式读入两幅图片
12 | img1 = cv2.imread("../data/logo1.png", cv2.IMREAD_GRAYSCALE)
13 | img2 = cv2.imread("../data/album1.png", cv2.IMREAD_GRAYSCALE)
14 |
15 | # 创建ORB特征检测器和描述符
16 | orb = cv2.ORB_create()
17 | # 对两幅图像检测特征和描述符
18 | keypoint1, descriptor1 = orb.detectAndCompute(img1, None)
19 | keypoint2, descriptor2 = orb.detectAndCompute(img2, None)
20 | """
21 | keypoint 是一个包含若干点的列表
22 | descriptor 对应每个点的描述符 是一个列表, 每一项都是检测到的特征的局部图像
23 |
24 | 检测的结果是关键点
25 | 计算的结果是描述符
26 |
27 | 可以根据监测点的描述符 来比较检测点的相似之处
28 |
29 | """
30 | # 获得一个暴力匹配器的对象
31 | bf = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True)
32 | # 利用匹配器 匹配两个描述符的相近成都
33 | maches = bf.match(descriptor1, descriptor2)
34 | # 按照相近程度 进行排序
35 | maches = sorted(maches, key=lambda x: x.distance)
36 | # 画出匹配项
37 | img3 = cv2.drawMatches(img1, keypoint1, img2, keypoint2, maches[: 30], img2, flags=2)
38 |
39 | cv2.imshow("matches", img3)
40 | cv2.waitKey()
41 | cv2.destroyAllWindows()
--------------------------------------------------------------------------------
/06_图像检测和搜索/005_k近邻匹配.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 |
5 | # 按照灰度图像读入两张图片
6 | img1 = cv2.imread("../data/logo1.png", cv2.IMREAD_GRAYSCALE)
7 | img2 = cv2.imread("../data/album1.png", cv2.IMREAD_GRAYSCALE)
8 |
9 | # 获取特征提取器对象
10 | orb = cv2.ORB_create()
11 | # 检测关键点和特征描述
12 | keypoint1, desc1 = orb.detectAndCompute(img1, None)
13 | keypoint2, desc2 = orb.detectAndCompute(img2, None)
14 | """
15 | keypoint 是关键点的列表
16 | desc 检测到的特征的局部图的列表
17 | """
18 | # 获得knn检测器
19 | bf = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True)
20 | matches = bf.knnMatch(desc1, desc2, k=1)
21 | """
22 | knn 匹配可以返回k个最佳的匹配项
23 | bf返回所有的匹配项
24 | """
25 | # 画出匹配结果
26 | img3 = cv2.drawMatchesKnn(img1, keypoint1, img2, keypoint2, matches, img2, flags=2)
27 | cv2.imshow("matches", img3)
28 | cv2.waitKey()
29 | cv2.destroyAllWindows()
--------------------------------------------------------------------------------
/06_图像检测和搜索/006_FLANN匹配.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 |
5 |
6 | """
7 | FLANN是类似最近邻的快速匹配库
8 | 它会根据数据本身选择最合适的算法来处理数据
9 | 比其他搜索算法快10倍
10 | """
11 | # 按照灰度图片读入
12 | img1 = cv2.imread("../data/logo1.png", cv2.IMREAD_GRAYSCALE)
13 | img2 = cv2.imread("../data/album1.png", cv2.IMREAD_GRAYSCALE)
14 | # 创建sift检测器
15 | sift = cv2.xfeatures2d.SIFT_create()
16 | # 查找监测点和匹配符
17 | kp1, des1 = sift.detectAndCompute(img1, None)
18 | kp2, des2 = sift.detectAndCompute(img2, None)
19 | """
20 | keypoint是检测到的特征点的列表
21 | descriptor是检测到特征的局部图像的列表
22 | """
23 | # 获取flann匹配器
24 | FLANN_INDEX_KDTREE = 0
25 | indexParams = dict(algorithm=FLANN_INDEX_KDTREE, trees=5)
26 | searchParams = dict(checks=50)
27 | flann = cv2.FlannBasedMatcher(indexParams, searchParams)
28 |
29 | """
30 | flann = cv2.FlannBasedMatcher(indexParams, searchParams)
31 | 传入两个参数以字典的形式
32 | FLANN内部会决定如何处理索引和搜索对象
33 | 可以选择 LinearIndex KTreeIndex KMeansIndex CompositeIndex 和 AutotunelIndex
34 | KTreeIndex配置索引简单 只需要指定待处理核密度树的数量 最理想的数量是1到16 KTreeIndex非常灵活
35 | searchParams字段包含一个checks 用来指定索引树要被遍历的次数 次数越高花费时间越长 结果越准确
36 |
37 | """
38 |
39 | # 进行匹配
40 | matches = flann.knnMatch(des1, des2, k=2)
41 | # 准备空的掩膜 画好的匹配项
42 | matchesMask = [[0, 0] for i in range(len(matches))]
43 |
44 | for i, (m, n) in enumerate(matches):
45 | if m.distance < 0.7*n.distance:
46 | matchesMask[i] = [1, 0]
47 |
48 | drawPrams = dict(matchColor=(0, 255, 0),
49 | singlePointColor=(255, 0, 0),
50 | matchesMask=matchesMask,
51 | flags=0)
52 | # 匹配结果图片
53 | img3 = cv2.drawMatchesKnn(img1, kp1, img2, kp2, matches, None, **drawPrams)
54 |
55 |
56 | cv2.imshow("matches", img3)
57 | cv2.waitKey()
58 | cv2.destroyAllWindows()
--------------------------------------------------------------------------------
/06_图像检测和搜索/007_FLANN单应性匹配.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | """
4 | 单应性匹配:
5 | 两幅图像中的一幅 出现投影畸变的时候,他们还能彼此匹配
6 | """
7 |
8 | import cv2
9 | import numpy as np
10 | # 最小匹配数量设为10个, 大于这个数量从中筛选出10个最好的
11 | MIN_MATCH_COUNT = 10
12 |
13 | # 读入两幅图片 图片中有相同部分
14 | img1 = cv2.imread("../data/logo1.png", cv2.IMREAD_GRAYSCALE)
15 | img2 = cv2.imread("../data/album1.png", cv2.IMREAD_GRAYSCALE)
16 |
17 | # 获取sift特征检测器
18 | sift = cv2.xfeatures2d.SIFT_create()
19 | # 检测关键点 计算描述符
20 | kp1, des1 = sift.detectAndCompute(img1, None)
21 | kp2, des2 = sift.detectAndCompute(img2, None)
22 |
23 | # kdtree建立索引方式的常量参数
24 | FLANN_INDEX_KDTREE = 0
25 | index_params = dict(algorithm=FLANN_INDEX_KDTREE, trees=5)
26 | search_params = dict(checks=50) # checks指定索引树要被遍历的次数
27 | flann = cv2.FlannBasedMatcher(index_params, search_params)
28 | # 进行匹配搜索
29 | matches = flann.knnMatch(des1, des2, k=2)
30 |
31 | # 寻找距离近的放入good列表
32 | good = []
33 | for m, n in matches:
34 | if m.distance < 0.7 * n.distance:
35 | good.append(m)
36 |
37 | # 如果足够多 就筛选
38 | if len(good) > MIN_MATCH_COUNT:
39 | # 通过距离近的描述符 找到两幅图片的关键点
40 | src_pts = np.float32([kp1[m.queryIdx].pt for m in good]).reshape(-1, 1, 2)
41 | dst_pts = np.float32([kp2[m.trainIdx].pt for m in good]).reshape(-1, 1, 2)
42 |
43 | # 单应性匹配图关键点匹配线。。不懂啥意思
44 | M, mask = cv2.findHomography(src_pts, dst_pts, cv2.RANSAC, 5.0)
45 | """
46 | 参数:
47 | src_pts: 第一张图片的检测特征点
48 | dst_pts: 第二张图片的检测特征点
49 | 第三个参数:
50 | cv2.RANSAC RANSAC-based robust method
51 | cv2.LMEDS least-median robust method
52 | 第四个参数: 1到10之间 阈值, 原图像点经过变换后超过误差就舍弃
53 | 返回值:
54 | H: 变换矩阵
55 | mask: 掩膜
56 | """
57 | matchesMask = mask.ravel().tolist()
58 |
59 | h, w = img1.shape
60 |
61 | # 计算第二张图相对于第一张图的畸变 其实不太理解这是咋回事
62 | pts = np.float32([[0, 0], [0, h-1], [w-1, 0]]).reshape(-1, 1, 2)
63 | dst = cv2.perspectiveTransform(pts, M)
64 | img2 = cv2.polylines(img2, [np.int32(dst)], True, 255, 3, cv2.LINE_AA)
65 | else:
66 | matchesMask = None
67 |
68 | draw_params = dict(
69 | matchColor=(0, 255, 0),
70 | singlePointColor=None,
71 | matchesMask=matchesMask,
72 | flags=2
73 | )
74 |
75 | img3 = cv2.drawMatches(img1, kp1, img2, kp2, good, None, **draw_params)
76 | cv2.imshow("", img3)
77 | cv2.waitKey()
78 |
--------------------------------------------------------------------------------
/06_图像检测和搜索/008_基于文身取证的应用.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 | import numpy as np
5 |
6 | """
7 | 1 将描述符保存到文件
8 | 方便图片进行匹配和单应性分析
9 | """
10 |
11 |
12 |
13 |
14 |
15 | """
16 | 2 扫描匹配
17 | 检查图像 创建描述符
18 | 扫描文件夹中的描述符
19 | FLANN来计算匹配
20 | 如果匹配超过了阈值, 就包含
21 | 匹配数量最多的图像是取证对象
22 | """
23 |
--------------------------------------------------------------------------------
/07_目标检测与识别/001_检测人.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 |
5 |
6 | # 检测i方框 包含o方框
7 | def is_inside(o, i):
8 | ox, oy, ow, oh = o
9 | ix, iy, iw, ih = i
10 | return ox > ix and ox + ow < ix + iw and oy + oh < iy + ih
11 |
12 |
13 | # 将人外面的方框画出来
14 | def draw_person(image, person):
15 | x, y, w, h = person
16 | cv2.rectangle(image, (x, y), (x+w, y+h), (0, 255, 255), 2)
17 |
18 |
19 | # 读入图片
20 | img = cv2.imread("../data/people2.jpg")
21 | # 获取hog检测器对象
22 | hog = cv2.HOGDescriptor()
23 | # 设置检测人的默认检测器
24 | hog.setSVMDetector(cv2.HOGDescriptor_getDefaultPeopleDetector())
25 | # 在图片中检测人,
26 | # 返回found列表 每个元素是一个(x, y, w, h)的矩形,w是每一个矩形的置信度
27 | found, w = hog.detectMultiScale(img)
28 | found_filtered = []
29 | # 如果方框有包含,只留下内部的小方块
30 | for ri, r in enumerate(found):
31 | for qi, q in enumerate(found):
32 | if ri != qi and is_inside(r, q):
33 | break
34 | else:
35 | found_filtered.append(r)
36 |
37 | # 将每一个方块画出来
38 | for person in found_filtered:
39 | draw_person(img, person)
40 |
41 |
42 | cv2.imshow("person detection", img)
43 | cv2.waitKey()
44 | cv2.destroyAllWindows()
--------------------------------------------------------------------------------
/07_目标检测与识别/002_汽车检测.py:
--------------------------------------------------------------------------------
1 | # coding:utf-8
2 |
3 | import cv2
4 | import numpy as np
5 |
6 | datapath = ""
7 |
8 |
9 | def path(cls, i):
10 | return "%s/%s%d/pgm" % (datapath, cls, i+1)
11 |
12 |
13 | pos, neg = "pos-", "neg-"
14 |
15 | detect = cv2.xfeatures2d.SIFT_create()
16 | extract = cv2.xfeatures2d.SIFT_create()
17 |
18 | flann_params = dict(
19 | algorithm=1,
20 | trees=5)
21 | flann = cv2.FlannBasedMatcher(flann_params, {})
22 |
23 | bow_kmeans_trainer = cv2.BOWKMeansTrainer(40)
24 | extract_bow = cv2.BOWImgDescriptorExtractor(extract, flann)
25 |
26 |
27 | def extract_sift(fn):
28 | im = cv2.imread(fn, cv2.IMREAD_GRAYSCALE)
29 | return extract.compute(im, detect(im))[1]
30 |
31 |
32 | for i in range(8):
33 | bow_kmeans_trainer.add(extract_sift(path(pos, i)))
34 | bow_kmeans_trainer.add(extract_sift(path(neg, i)))
35 |
36 |
37 | voc = bow_kmeans_trainer.cluster()
38 | extract_bow.setVocabulary(voc)
39 |
40 |
41 | def bow_features(fn):
42 | im = cv2.imread(fn, cv2.IMREAD_GRAYSCALE)
43 | return extract_bow.compute(im, detect.detect(im))
44 |
45 |
46 | traindata, trainlabels = [], []
47 | for i in range(20):
48 | traindata.extend(bow_features(path(pos, i)))
49 | trainlabels.append(i)
50 | traindata.extend(bow_features(path(neg, i)))
51 | trainlabels.append(-1)
52 |
53 | svm = cv2.ml.SVM_create()
54 | svm.train(np.array(traindata), cv2.ml.ROW_SAMPLE, np.array(trainlabels))
55 |
56 |
57 | def predict(fn):
58 | f = bow_features(fn)
59 | p = svm.predict(f)
60 | print(fn, p[1][0][0])
61 | return p
62 |
63 |
64 | car, notcar = "", ""
65 | car_img = cv2.imread(car)
66 | notcar_img = cv2.imread(notcar)
67 | car_predict = predict(car)
68 | notcar_predict = predict(notcar)
69 |
70 | font = cv2.FONT_HERSHEY_SIMPLEX
71 | if car_predict[1][0][0] == 1.0:
72 | cv2.putText(car_img, "car", (10, 30), font, 1, (0, 255, 0), 2, cv2.LINE_AA)
73 |
74 | cv2.imshow("", car_img)
75 | cv2.imshow("1", notcar_img)
76 | cv2.waitKey()
77 | cv2.destroyAllWindows()
--------------------------------------------------------------------------------
/data/album1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/album1.png
--------------------------------------------------------------------------------
/data/chess1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/chess1.jpg
--------------------------------------------------------------------------------
/data/circle.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/circle.jpg
--------------------------------------------------------------------------------
/data/item2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/item2.jpg
--------------------------------------------------------------------------------
/data/line1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/line1.png
--------------------------------------------------------------------------------
/data/logo1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/logo1.png
--------------------------------------------------------------------------------
/data/mm1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/mm1.jpg
--------------------------------------------------------------------------------
/data/mm2.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/mm2.jpeg
--------------------------------------------------------------------------------
/data/mm3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/mm3.jpg
--------------------------------------------------------------------------------
/data/people1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/people1.jpg
--------------------------------------------------------------------------------
/data/people2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/people2.jpg
--------------------------------------------------------------------------------
/data/person1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/person1.jpg
--------------------------------------------------------------------------------
/data/walez1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/linyi0604/Computer-Vision/e2ec411bcf78b1d1bc353b721cabe250b1b28778/data/walez1.jpg
--------------------------------------------------------------------------------
/requirements.txt:
--------------------------------------------------------------------------------
1 | backports.functools-lru-cache==1.5
2 | cycler==0.10.0
3 | kiwisolver==1.0.1
4 | matplotlib==2.2.2
5 | numpy==1.15.0
6 | opencv-python==3.4.2.17
7 | pyparsing==2.2.0
8 | python-dateutil==2.7.3
9 | pytz==2018.5
10 | scipy==1.1.0
11 | six==1.11.0
12 | subprocess32==3.5.2
13 |
--------------------------------------------------------------------------------