提交 aee3f863 编写于 作者: F feilong

fix png

上级 c65c49b6
# 梅西足球的轨迹
使用 OpenCV 可以方便的剪切粘贴图像上的区域。例如下图是梅西在踢足球
![](./ball.jpg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/1.OpenCV基础/3.图像的基本操作/ball.jpg)
通过剪切粘贴可以获得足球连续运行的轨迹
![](./ball_continue.jpg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/1.OpenCV基础/3.图像的基本操作/ball_continue.jpg)
实现代码如下,需要补全TODO部分:
......
# 矩形涂鸦画板
![](./doodle.png)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/1.OpenCV基础/4.IO与GUI/doodle.png)
编写一个矩形涂鸦画板,实现功能:
......
# 甲壳虫的Base64之旅
如下的一只甲壳虫,我们希望把它编码成 Base64,再从Base64解码出来。
![](./bug.jpg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/1.OpenCV基础/4.IO与GUI/bug.jpg)
代码框架如下:
......
# 甲壳虫乐队
一只甲壳虫想组个乐队,但是临时找不到队友。请使用 OpenCV 读取下面的彩色甲壳虫图片 `'bug.jpg'`,帮助他变身灰色甲壳虫,然后完成组队。
![](./bug.jpg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/1.OpenCV基础/4.IO与GUI/bug.jpg)
**显示甲壳虫乐队并写入到 `'bug_band.jpg'`**
![](./bug_band.jpg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/1.OpenCV基础/4.IO与GUI/bug_band.jpg)
以下实现正确的是?
......
......@@ -6,7 +6,7 @@ OpenCV的膨胀与腐蚀,让“普通鸬鹚”不普通,下图从左到右
* 原图经过腐蚀得到的图
* 原图经过膨胀得到的图
![](./bird_erosion_dilation.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/2.二值图像处理/2.腐蚀与膨胀/bird_erosion_dilation.jpeg)
下面对腐蚀和膨胀实现代码正确的是?
......
......@@ -2,7 +2,7 @@
OpenCV 里先膨胀再腐蚀操作叫做“闭运算”。小鸊鷉(pi ti)的名片被小朋友画了几笔,尝试通过先膨胀再腐蚀修复,完成任务
![](./img_closed.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/2.二值图像处理/3.开运算与闭运算/img_closed.jpeg)
框架代码如下:
......
......@@ -2,7 +2,7 @@
OpenCV 里先腐蚀再膨胀操作叫做“开运算”。小鸊鷉(pi ti)的名片被小朋友画了几笔,尝试通过先腐蚀再膨胀修复,效果不明显
![](./img_opened.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/2.二值图像处理/3.开运算与闭运算/img_opened.jpeg)
框架代码如下:
......
......@@ -17,7 +17,7 @@ cv.findContours(image, mode, method[, contours[, hierarchy[, offset]]] ) → con
* 康熙御笔碑帖图
* 康熙御笔轮廓图
![](./ContuorsOutput.jpg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/2.二值图像处理/5.轮廓/ContuorsOutput.jpg)
下面对康熙御笔寻找轮廓实现代码正确的是?
......
......@@ -2,7 +2,7 @@
OpenCV 的颜色空间主要有 BGR、HSV、Lab等,`cvtColor` 函数可以让图像在不同颜色空间转换。例如通过将花的图像转换到 HSV 颜色空间,在HSV空间内过滤出只含有花瓣颜色的像素,从而提取出花瓣。
![](./flower_only.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/3.图像增强和滤波/1.彩色空间/flower_only.jpeg)
以下实现正确的是?
......
......@@ -2,7 +2,7 @@
通过调整图像的直方图调整图像的整体细节,下图左图是浑水鱼,右边清澈鱼。
![](./fish_enhance.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/3.图像增强和滤波/2.直方图均衡化/fish_enhance.jpeg)
框架代码如下:
......
......@@ -14,7 +14,7 @@ cv.Sobel(src, ddepth, dx, dy[, dst[, ksize[, scale[, delta[, borderType]]]]])
我们用 Sobel 算子从 Lena 图像提取边缘,看看会产生什么样的效果吧。
![](./gradientOutput.png)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/3.图像增强和滤波/4.梯度/gradientOutput.png)
下面对 Sobel 梯度算子实现代码正确的是?
......
......@@ -12,7 +12,7 @@ cv2.warpAffine(src, M, dsize[, dst[, flags[, borderMode[, borderValue]]]]) → d
旋转也是一种简单仿射变换,我们用变换矩阵将下面的色块图旋转一下,看看会产生什么样的效果吧。
![](./affine2.png)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/4.几何变换和图像特征/1.仿射变换/affine2.png)
下面对仿射变换实现代码正确的是?
......
......@@ -2,17 +2,17 @@
下图左边的参赛作品(图片来自网络)掉到地上,重新做太麻烦了,据说改了个《挤地铁》的名字获奖了。
![](./rust_face_origin.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/4.几何变换和图像特征/2.单应性变换/rust_face_origin.jpeg)
我们可以通过 OpenCV 单应性变换的方式帮助挤地铁的人脸还原。
把没挤扁和挤扁的图的坐标标注出来
![](./rust_face_rule.jpg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/4.几何变换和图像特征/2.单应性变换/rust_face_rule.jpg)
可以看到还原后的侧脸
![](./rust_face_homography.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/4.几何变换和图像特征/2.单应性变换/rust_face_homography.jpeg)
以下正确的实现是
......
......@@ -2,11 +2,11 @@
下图是一个湖边的亭子,通过 OpenCV 的 Harris 特征提取可以提取到亭子的瓦片特征
![](./tower.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/4.几何变换和图像特征/3.图像特征与特征提取/tower.jpeg)
上图背景图里的植被的角点也会被 Harris 特征提取到,因此我们先用之前学习过的知识过滤出前景图后再做 Harris 特征提取,过程图片如下:
![](./tower_harris.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/4.几何变换和图像特征/3.图像特征与特征提取/tower_harris.jpeg)
框架代码如下
......
......@@ -2,7 +2,7 @@
通过特征匹配,可以把亭子和水中的倒影做特征匹配
![](./tower_match.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/4.几何变换和图像特征/4.特征匹配/tower_match.jpeg)
框架代码如下:
......
# 被挤压的地铁人脸检测
![](./fake_face.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/5.图像识别/1.人脸识别/fake_face.jpeg)
即使是地铁挤压的人脸,也是有尊严的,值得被检测,经过 OpenCV 的努力,成功检测:
![](./rust_face_detect.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/5.图像识别/1.人脸识别/rust_face_detect.jpeg)
* 左图是正常被识别的人脸
......
......@@ -2,7 +2,7 @@
使用基本的OpenCV轮廓检测识别出野外拍摄照片里的鸟
![](./birds_detect.jpeg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/5.图像识别/2.鸟图识别/birds_detect.jpeg)
基本框架如下:
......
......@@ -2,7 +2,7 @@
使用OpenCV光流分析,跟踪蚂蚁的轨迹
![](./ant_flow.jpg)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/6.视频分析/1.光流/ant_flow.jpg)
代码框架:
......
......@@ -2,7 +2,7 @@
`opencv.dnn`模块已经支持大部分格式的深度学习模型推理,该模块可以直接加载`tensorflow``darknet``pytorch`等常见深度学习框架训练出来的模型,并运行推理得到模型输出结果。`opecnv.dnn`模块已经作为一种模型部署方式,应用在工业落地实际场景中。
![](./vehicle-detection.gif)
![](https://gitcode.net/csdn/skill_tree_opencv/-/raw/master/data/1.OpenCV初阶/7.OpenCV中的深度学习/5.车辆检测/vehicle-detection.gif)
模型具体加载和使用流程如下:
......
......@@ -37,5 +37,5 @@ class ImgWalker():
md_new.append(new_line)
md_new.append('')
simple_list_md_dump(md_file, md_new)
import sys
sys.exit(0)
# import sys
# sys.exit(0)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册