这是一个关于如何识别特定内容的教程,是通过opencv-python库将内容识别出来。
实现步骤
-
搭建环境(conda)
-
实例:识别盲道
-
修改代码,增加识别它物的能力
一、搭建环境
本次教程我们使用conda,来部署python环境。
Conda 是一个开源的包管理系统和环境管理系统,用于安装多个版本的软件包及其依赖项,并在它们之间轻松切换。Conda 最初是为 Python 相关的项目设计的,但现在已经支持多种语言,包括 R、Julia、Node.js 和其他科学计算工具。
Conda 的主要特点:
跨平台:Conda 可以在 Windows、macOS 和 Linux 上运行。
环境管理:用户可以创建独立的环境来隔离不同的项目或实验,每个环境都可以有自己的软件包集合和 Python 版本。
包管理:Conda 有一个庞大的软件包仓库(Anaconda Repository),其中包含了数千个预先编译好的科学计算和数据科学相关的软件包。
命令行工具:Conda 提供了一系列命令行工具来简化安装、更新、卸载和管理软件包的过程。
兼容性:除了管理 conda 包之外,Conda 还可以安装普通的 Python 软件包(通过 pip)。
但是这次我们用到的库并不多,所以我们不用标准的anaconda(1.01GB),而是用小巧的miniconda,先从网上下载下来,这里用清华镜像:
Windows https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py39_24.5.0-0-Windows-x86_64.exe
macos arm https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py39_24.5.0-0-MacOSX-arm64.pkg
macos X_86 https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py39_24.5.0-0-MacOSX-x86_64.pkg
下载完毕后安装即可。
接着,就是搭建python环境了。
Windows
在搜索框搜索miniconda,应该会跳出一个带有miniconda名字的命令行应用

打开它,然后我们需要创建一个3.10版本的python环境
conda create -n ColorDetection python=3.10.0
这样就可以创建一个环境了,中途遇到是否继续[y/n],输入y再回车就行,在安装好后,我们输入以下命令来启动这个环境
conda activate ColorDetection
Macos
打开自带的终端,再输入上面Windows的命令就行。
安装第三方库
这次我们需要numpy和opencv-python
可以使用pip安装
pip3 install numpy opencv-python
实例:识别盲道
在说如何识别特定颜色前,我们先来举一个例子,就是识别盲道,本实例针对传统、普遍的黄色盲道展开。
首先,先下载示例图片:https://tse3-mm.cn.bing.net/th/id/OIP-C.MjmVaLe5KcBb-AOCPD6b0gHaJ4?rs=1&pid=ImgDetMain
如果下载不了的话,可以在网上(bing)搜“盲道”,找一张。
接着,就是编写代码了,打开你们的ide,创建一个名为“ColorDetection”的文件(项目),并在其中新建一个名为“BlindLaneDetection”的python文件,我们将在这个python文件中编写识别盲道的示例代码。
首先是导入numpy库和opencv-python库,在一些ide中,你可能需要手动启用我们刚刚搭建的conda环境。
import cv2
import numpy as np
接着是导入我们下载的示例图片
frame = cv2.imread('your_image_path')
其中frame的意思是我们将这个图片当作一帧来处理,frame也是opencv中常被命名的变量。
cv2.imread是opencv-python的一个读取图片的类。
请将“your_image_path”替换成你的示例图片的位置。
然后是将读取到的图片转换为hsv色彩格式
一、HSV颜色系统简介 HSV是一种在人们生活中甚至更常用的颜色系统,在电视遥控器上、在画画的调色板中、在你用爱某艺

最低0.47元/天 解锁文章
1246

被折叠的 条评论
为什么被折叠?



