Skip to content

Commit 5041d7f

Browse files
committed
commit
1 parent c9fd9ec commit 5041d7f

File tree

5 files changed

+288
-69
lines changed

5 files changed

+288
-69
lines changed

README.md

+77-69
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# OpenCV 4.0 Tutorial
22
[![](https://img.shields.io/badge/opencv-v4.0.0-orange.svg)](https://opencv.org/) [![](https://img.shields.io/badge/opencv-tutorial-brightgreen.svg)](https://docs.opencv.org/4.0.0/d9/df8/tutorial_root.html)
3+
4+
✒️ [中文版本](./README_CN.md)
35
## Introduction
46

57
This repository contains source code of OpenCV Tutorial application, the environment is python3.0 and opencv4.0.
@@ -15,82 +17,88 @@ cv2.imshow("input", src)
1517
cv2.waitKey(0)
1618
cv2.destroyAllWindows()
1719
```
20+
<div align=center><img src="https://i.loli.net/2019/05/22/5ce4b40258c9155103.jpg" width=200></div>
21+
1822
- Gray Image
1923
```python
2024
gray = cv2.cvtColor(src, cv.COLOR_BGR2GRAY)
2125
```
26+
27+
<div align=center><img src=https://i.loli.net/2019/05/22/5ce4b2ae1e7ce86434.png width=100> <img src=https://i.loli.net/2019/05/22/5ce4b2ae220a248459.png width=100></div>
2228
---
23-
**More opencv4.0 tutorials plese follow the learning road as below** 👇👇👇
29+
***More opencv4.0 tutorials plese follow the learning road as below*** 👇👇👇
2430

2531
## Learning Road ⛳️
26-
- ✔️ : **Basic**
27-
- ✏️ : **Attention**
28-
- ❣️ : **Important**
32+
33+
***Annotation:***
34+
- ✔️ **: Basic**
35+
- ✏️ **: Attention**
36+
- ❣️ **: Important**
2937

3038
No | Description | Annotation
3139
:--------: | :--------: | :--------:
32-
code_001 | [图片读取与显示](python/code_001/opencv_001.py) | ✔️
33-
code_002 | [图片灰度化](python/code_002/opencv_002.py) | ✔️
34-
code_003 | [图像创建与赋值](python/code_003/opencv_003.py) | ✔️
35-
code_004 | [图像像素读写](python/code_004/opencv_004.py) | ✔️
36-
code_005 | [图像像素算术操作(加减乘除)](python/code_005/opencv_005.py) | ✔️
37-
code_006 | [图像伪彩色增强](python/code_006/opencv_006.py) | ✔️
38-
code_007 | [图像像素操作(逻辑操作)](python/code_007/opencv_007.py) | ✔️
39-
code_008 | [图像通道分离合并](python/code_008/opencv_008.py) | ✔️
40-
code_009 | [色彩空间与色彩空间转换](python/code_009/opencv_009.py) | ✏️
41-
code_010 | [图像像素值统计](python/code_010/opencv_010.py) | ✔️
42-
code_011 | [图像像素归一化](python/code_011/opencv_011.py) | ✔️
43-
code_012 | [视频读写](python/code_012/opencv_012.py) | ✔️
44-
code_013 | [图像翻转](python/code_013/opencv_013.py) | ✔️
45-
code_014 | [图像插值](python/code_014/opencv_014.py) | ✔️
46-
code_015 | [绘制几何形状](python/code_015/opencv_015.py) | ✔️
47-
code_016 | [图像ROI与ROI操作](python/code_016/opencv_016.py) | ✔️
48-
code_017 | [图像直方图](python/code_017/opencv_017.py) | ✔️
49-
code_018 | [图像直方图均衡化](python/code_018/opencv_018.py) | ✏️
50-
code_019 | [图像直方图比较](python/code_019/opencv_019.py) | ✔️
51-
code_020 | [图像直方图反向投影](python/code_020/opencv_020.py) | ✔️
52-
code_021 | [图像卷积操作](python/code_021/opencv_021.py) | ✔️
53-
code_022 | [图像均值与高斯模糊](python/code_022/opencv_022.py) | ❣️
54-
code_023 | [中值模糊](python/code_023/opencv_023.py) | ✔️
55-
code_024 | [图像噪声](python/code_024/opencv_024.py) | ✔️
56-
code_025 | [图像去噪声](python/code_025/opencv_025.py) | ✔️
57-
code_026 | [高斯双边模糊](python/code_026/opencv_026.py) | ✔️
58-
code_027 | [均值迁移模糊(mean-shift blur)](python/code_027/opencv_027.py) | ✔️
59-
code_028 | [图像积分图算法](python/code_028/opencv_028.py) | ✔️
60-
code_029 | [快速的图像边缘滤波算法](python/code_029/opencv_029.py) | ✔️
61-
code_030 | [自定义滤波器](python/code_030/opencv_030.py) | ✔️
62-
code_031 | [Sobel算子](python/code_031/opencv_031.py) | ✔️
63-
code_032 | [更多梯度算子](python/code_032/opencv_032.py) | ✔️
64-
code_033 | [拉普拉斯算子(二阶导数算子)](python/code_033/opencv_033.py) | ✔️
65-
code_034 | [图像锐化](python/code_034/opencv_034.py) | ✔️
66-
code_035 | [USM 锐化增强算法](python/code_035/opencv_035.py) | ✔️
67-
code_036 | [Canny边缘检测器](python/code_036/opencv_036.py) | ❣️
68-
code_037 | [图像金字塔](python/code_037/opencv_037.py) | ✔️
69-
code_038 | [拉普拉斯金字塔](python/code_038/opencv_038.py) | ✔️
70-
code_039 | [图像模板匹配](python/code_039/opencv_039.py) | ✔️
71-
code_040 | [二值图像介绍](python/code_040/opencv_040.py) | ✔️
72-
code_041 | [基本阈值操作](python/code_041/opencv_041.py) | ✔️
73-
code_042 | [图像二值寻找法OTSU](python/code_042/opencv_042.py) | ✏️
74-
code_043 | [图像二值寻找法TRIANGLE](python/code_043/opencv_043.py) | ✔️
75-
code_044 | [图像自适应阈值算法](python/code_044/opencv_044.py) | ✏️
76-
code_045 | [图像二值与去噪](python/code_045/opencv_045.py) | ✏️
77-
code_046 | [图像连通组件寻找](python/code_046/opencv_046.py) | ✔️
78-
code_047 | [图像连通组件状态统计](python/code_047/opencv_047.py) | ✔️
79-
code_048 | [轮廓寻找](python/code_048/opencv_048.py) | ❣️
80-
code_049 | [轮廓外接矩形](python/code_049/opencv_049.py) | ❣️
81-
code_050 | [轮廓矩形面积与弧长](python/code_050/opencv_050.py) | ✏️
82-
code_051 | [轮廓逼近](python/code_051/opencv_051.py) | ✔️
83-
code_052 | [几何矩计算中心](python/code_052/opencv_052.py) | ✔️
84-
code_053 | [使用Hu矩阵实现轮廓匹配](python/code_053/opencv_053.py) | ✔️
85-
code_054 | [轮廓圆与椭圆拟合](python/code_054/opencv_054.py) | ✔️
86-
code_055 | [凸包检测](python/code_055/opencv_055.py) | ✏️
87-
code_056 | [直线拟合与极值点寻找](python/code_056/opencv_056.py) | ✔️
88-
code_057 | [点多边形测试](python/code_057/opencv_057.py) | ✔️
89-
code_058 | [寻找最大内接圆](python/code_058/opencv_058.py) | ✔️
90-
code_059 | [霍夫曼直线检测](python/code_059/opencv_059.py) | ✔️
91-
code_060 | [概率霍夫曼直线检测](python/code_060/opencv_060.py) | ❣️
92-
code_061 | [霍夫曼圆检测](python/code_061/opencv_061.py) | ❣️
93-
code_062 | [膨胀和腐蚀](python/code_062/opencv_062.py) | ❣️
94-
code_063 | [结构元素](python/code_063/opencv_063.py) | ✔️
95-
code_064 | [开运算](python/code_064/opencv_064.py) | ✏️
96-
code_065 | [闭运算](python/code_065/opencv_065.py) | ✏️
40+
code_001 | [Load Image](python/code_001/opencv_001.py) | ✔️
41+
code_002 | [Gray Image](python/code_002/opencv_002.py) | ✔️
42+
code_003 | [Image Create](python/code_003/opencv_003.py) | ✔️
43+
code_004 | [Pixel Read and Write](python/code_004/opencv_004.py) | ✔️
44+
code_005 | [Image Pixel Arithmetic Operations](python/code_005/opencv_005.py) | ✔️
45+
code_006 | [Image Pseudo-Color Enhancement](python/code_006/opencv_006.py) | ✔️
46+
code_007 | [Image Pixel Operation (Logical Operation)](python/code_007/opencv_007.py) | ✔️
47+
code_008 | [Image Channel Separation and Merging](python/code_008/opencv_008.py) | ✔️
48+
code_009 | [Color Space Conversion](python/code_009/opencv_009.py) | ✏️
49+
code_010 | [Image Pixel Value Statistics](python/code_010/opencv_010.py) | ✔️
50+
code_011 | [Image Pixel Normalization](python/code_011/opencv_011.py) | ✔️
51+
code_012 | [Video Read and Write](python/code_012/opencv_012.py) | ✔️
52+
code_013 | [Image Flip](python/code_013/opencv_013.py) | ✔️
53+
code_014 | [Image Interpolation](python/code_014/opencv_014.py) | ✔️
54+
code_015 | [Draw Geometry](python/code_015/opencv_015.py) | ✔️
55+
code_016 | [ROI of Image](python/code_016/opencv_016.py) | ✔️
56+
code_017 | [Image Histogram](python/code_017/opencv_017.py) | ✔️
57+
code_018 | [Histogram Dqualization](python/code_018/opencv_018.py) | ✏️
58+
code_019 | [Histogram Comparison](python/code_019/opencv_019.py) | ✔️
59+
code_020 | [Histogram Backprojection](python/code_020/opencv_020.py) | ✔️
60+
code_021 | [Image Convolution](python/code_021/opencv_021.py) | ✔️
61+
code_022 | [Averaging and Gaussian Blur](python/code_022/opencv_022.py) | ❣️
62+
code_023 | [Median Blur](python/code_023/opencv_023.py) | ✔️
63+
code_024 | [Image Noise](python/code_024/opencv_024.py) | ✔️
64+
code_025 | [Smoothing Images](python/code_025/opencv_025.py) | ✔️
65+
code_026 | [Gaussian Bilateral Blur](python/code_026/opencv_026.py) | ✔️
66+
code_027 | [Mean-shift Blur)](python/code_027/opencv_027.py) | ✔️
67+
code_028 | [Image Integral Algorithm](python/code_028/opencv_028.py) | ✔️
68+
code_029 | [Fast Image Edge Filtering Algorithm](python/code_029/opencv_029.py) | ✔️
69+
code_030 | [Custom Filter](python/code_030/opencv_030.py) | ✔️
70+
code_031 | [Sobel Operator](python/code_031/opencv_031.py) | ✔️
71+
code_032 | [More Gradient Operators](python/code_032/opencv_032.py) | ✔️
72+
code_033 | [Laplace Operator](python/code_033/opencv_033.py) | ✔️
73+
code_034 | [Image Sharpening ](python/code_034/opencv_034.py) | ✔️
74+
code_035 | [USM Sharpen Algorithm](python/code_035/opencv_035.py) | ✔️
75+
code_036 | [Canny Edge Detection](python/code_036/opencv_036.py) | ❣️
76+
code_037 | [Image Pyramid](python/code_037/opencv_037.py) | ✔️
77+
code_038 | [Laplace Pyramid](python/code_038/opencv_038.py) | ✔️
78+
code_039 | [Image Template Matching](python/code_039/opencv_039.py) | ✔️
79+
code_040 | [Binary introduction](python/code_040/opencv_040.py) | ✔️
80+
code_041 | [Basic Thresholding](python/code_041/opencv_041.py) | ✔️
81+
code_042 | [OTSU Thresholding](python/code_042/opencv_042.py) | ✏️
82+
code_043 | [TRIANGLE Thresholding](python/code_043/opencv_043.py) | ✔️
83+
code_044 | [Adaptive Thresholding](python/code_044/opencv_044.py) | ✏️
84+
code_045 | [Binary and Smoothing](python/code_045/opencv_045.py) | ✏️
85+
code_046 | [Image Connectivity component](python/code_046/opencv_046.py) | ✔️
86+
code_047 | [Image Connected component state statistics](python/code_047/opencv_047.py) | ✔️
87+
code_048 | [Image Contours](python/code_048/opencv_048.py) | ❣️
88+
code_049 | [Bounding Rectangle](python/code_049/opencv_049.py) | ❣️
89+
code_050 | [Contour Area and Perimeter](python/code_050/opencv_050.py) | ✏️
90+
code_051 | [Contour Approximation](python/code_051/opencv_051.py) | ✔️
91+
code_052 | [Contour Centroid Calculate](python/code_052/opencv_052.py) | ✔️
92+
code_053 | [HuMoment for Contour Matching](python/code_053/opencv_053.py) | ✔️
93+
code_054 | [Contour Cricle and Ellipse fitting](python/code_054/opencv_054.py) | ✔️
94+
code_055 | [Convex Hull](python/code_055/opencv_055.py) | ✏️
95+
code_056 | [Fitting a Line](python/code_056/opencv_056.py) | ✔️
96+
code_057 | [Point Polygon Test](python/code_057/opencv_057.py) | ✔️
97+
code_058 | [The Largest Inner Circle](python/code_058/opencv_058.py) | ✔️
98+
code_059 | [Hoffman Line Detection](python/code_059/opencv_059.py) | ✔️
99+
code_060 | [Probability Hoffman Line Detection](python/code_060/opencv_060.py) | ❣️
100+
code_061 | [Hoffman Cricle Detection](python/code_061/opencv_061.py) | ❣️
101+
code_062 | [Dilation and Erosion](python/code_062/opencv_062.py) | ❣️
102+
code_063 | [Structuring Element](python/code_063/opencv_063.py) | ✔️
103+
code_064 | [Opening Transformation](python/code_064/opencv_064.py) | ✏️
104+
code_065 | [Closing Transformation](python/code_065/opencv_065.py) | ✏️

README_CN.md

+104
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
# OpenCV 4.0 Tutorial
2+
[![](https://img.shields.io/badge/opencv-v4.0.0-orange.svg)](https://opencv.org/) [![](https://img.shields.io/badge/opencv-tutorial-brightgreen.svg)](https://docs.opencv.org/4.0.0/d9/df8/tutorial_root.html)
3+
## 简介
4+
5+
这个库包含OpenCV教程应用程序的源代码,运行环境是python3 和 opencv4.0(v4.1也可以)。
6+
7+
## 样例
8+
9+
- **图片读取**
10+
11+
```python
12+
import cv2
13+
14+
src = cv2.imread("test.png")
15+
cv2.namedWindow("input", cv2.WINDOW_AUTOSIZE)
16+
cv2.imshow("input", src)
17+
cv2.waitKey(0)
18+
cv2.destroyAllWindows()
19+
```
20+
<div align=center><img src="https://i.loli.net/2019/05/22/5ce4b40258c9155103.jpg" width=200></div>
21+
22+
- **灰度图**
23+
```python
24+
gray = cv2.cvtColor(src, cv.COLOR_BGR2GRAY)
25+
```
26+
<div align=center><img src=https://i.loli.net/2019/05/22/5ce4b2ae1e7ce86434.png width=100> <img src=https://i.loli.net/2019/05/22/5ce4b2ae220a248459.png width=100></div>
27+
---
28+
**更多的opencv教程请参考下面的学习路径** 👇👇👇
29+
30+
## 学习路径 ⛳️
31+
32+
***备注:***
33+
34+
- ✔️ : **基础**
35+
- ✏️ : **值得注意**
36+
- ❣️ : **重要知识点**
37+
38+
序号 | 描述 | 备注
39+
:--------: | :--------: | :--------:
40+
code_001 | [图片读取与显示](python/code_001/opencv_001.py) | ✔️
41+
code_002 | [图片灰度化](python/code_002/opencv_002.py) | ✔️
42+
code_003 | [图像创建与赋值](python/code_003/opencv_003.py) | ✔️
43+
code_004 | [图像像素读写](python/code_004/opencv_004.py) | ✔️
44+
code_005 | [图像像素算术操作(加减乘除)](python/code_005/opencv_005.py) | ✔️
45+
code_006 | [图像伪彩色增强](python/code_006/opencv_006.py) | ✔️
46+
code_007 | [图像像素操作(逻辑操作)](python/code_007/opencv_007.py) | ✔️
47+
code_008 | [图像通道分离合并](python/code_008/opencv_008.py) | ✔️
48+
code_009 | [色彩空间与色彩空间转换](python/code_009/opencv_009.py) | ✏️
49+
code_010 | [图像像素值统计](python/code_010/opencv_010.py) | ✔️
50+
code_011 | [图像像素归一化](python/code_011/opencv_011.py) | ✔️
51+
code_012 | [视频读写](python/code_012/opencv_012.py) | ✔️
52+
code_013 | [图像翻转](python/code_013/opencv_013.py) | ✔️
53+
code_014 | [图像插值](python/code_014/opencv_014.py) | ✔️
54+
code_015 | [绘制几何形状](python/code_015/opencv_015.py) | ✔️
55+
code_016 | [图像ROI与ROI操作](python/code_016/opencv_016.py) | ✔️
56+
code_017 | [图像直方图](python/code_017/opencv_017.py) | ✔️
57+
code_018 | [图像直方图均衡化](python/code_018/opencv_018.py) | ✏️
58+
code_019 | [图像直方图比较](python/code_019/opencv_019.py) | ✔️
59+
code_020 | [图像直方图反向投影](python/code_020/opencv_020.py) | ✔️
60+
code_021 | [图像卷积操作](python/code_021/opencv_021.py) | ✔️
61+
code_022 | [图像均值与高斯模糊](python/code_022/opencv_022.py) | ❣️
62+
code_023 | [中值模糊](python/code_023/opencv_023.py) | ✔️
63+
code_024 | [图像噪声](python/code_024/opencv_024.py) | ✔️
64+
code_025 | [图像去噪声](python/code_025/opencv_025.py) | ✔️
65+
code_026 | [高斯双边模糊](python/code_026/opencv_026.py) | ✔️
66+
code_027 | [均值迁移模糊(mean-shift blur)](python/code_027/opencv_027.py) | ✔️
67+
code_028 | [图像积分图算法](python/code_028/opencv_028.py) | ✔️
68+
code_029 | [快速的图像边缘滤波算法](python/code_029/opencv_029.py) | ✔️
69+
code_030 | [自定义滤波器](python/code_030/opencv_030.py) | ✔️
70+
code_031 | [Sobel算子](python/code_031/opencv_031.py) | ✔️
71+
code_032 | [更多梯度算子](python/code_032/opencv_032.py) | ✔️
72+
code_033 | [拉普拉斯算子(二阶导数算子)](python/code_033/opencv_033.py) | ✔️
73+
code_034 | [图像锐化](python/code_034/opencv_034.py) | ✔️
74+
code_035 | [USM 锐化增强算法](python/code_035/opencv_035.py) | ✔️
75+
code_036 | [Canny边缘检测器](python/code_036/opencv_036.py) | ❣️
76+
code_037 | [图像金字塔](python/code_037/opencv_037.py) | ✔️
77+
code_038 | [拉普拉斯金字塔](python/code_038/opencv_038.py) | ✔️
78+
code_039 | [图像模板匹配](python/code_039/opencv_039.py) | ✔️
79+
code_040 | [二值图像介绍](python/code_040/opencv_040.py) | ✔️
80+
code_041 | [基本阈值操作](python/code_041/opencv_041.py) | ✔️
81+
code_042 | [图像二值寻找法OTSU](python/code_042/opencv_042.py) | ✏️
82+
code_043 | [图像二值寻找法TRIANGLE](python/code_043/opencv_043.py) | ✔️
83+
code_044 | [图像自适应阈值算法](python/code_044/opencv_044.py) | ✏️
84+
code_045 | [图像二值与去噪](python/code_045/opencv_045.py) | ✏️
85+
code_046 | [图像连通组件寻找](python/code_046/opencv_046.py) | ✔️
86+
code_047 | [图像连通组件状态统计](python/code_047/opencv_047.py) | ✔️
87+
code_048 | [轮廓寻找](python/code_048/opencv_048.py) | ❣️
88+
code_049 | [轮廓外接矩形](python/code_049/opencv_049.py) | ❣️
89+
code_050 | [轮廓矩形面积与弧长](python/code_050/opencv_050.py) | ✏️
90+
code_051 | [轮廓逼近](python/code_051/opencv_051.py) | ✔️
91+
code_052 | [几何矩计算中心](python/code_052/opencv_052.py) | ✔️
92+
code_053 | [使用Hu矩阵实现轮廓匹配](python/code_053/opencv_053.py) | ✔️
93+
code_054 | [轮廓圆与椭圆拟合](python/code_054/opencv_054.py) | ✔️
94+
code_055 | [凸包检测](python/code_055/opencv_055.py) | ✏️
95+
code_056 | [直线拟合与极值点寻找](python/code_056/opencv_056.py) | ✔️
96+
code_057 | [点多边形测试](python/code_057/opencv_057.py) | ✔️
97+
code_058 | [寻找最大内接圆](python/code_058/opencv_058.py) | ✔️
98+
code_059 | [霍夫曼直线检测](python/code_059/opencv_059.py) | ✔️
99+
code_060 | [概率霍夫曼直线检测](python/code_060/opencv_060.py) | ❣️
100+
code_061 | [霍夫曼圆检测](python/code_061/opencv_061.py) | ❣️
101+
code_062 | [膨胀和腐蚀](python/code_062/opencv_062.py) | ❣️
102+
code_063 | [结构元素](python/code_063/opencv_063.py) | ✔️
103+
code_064 | [开运算](python/code_064/opencv_064.py) | ✏️
104+
code_065 | [闭运算](python/code_065/opencv_065.py) | ✏️

0 commit comments

Comments
 (0)