第一步是安装必要的库:Numpy、Matplotlib 和 OpenCV。安装这些包可以通过你计算机的包管理器或直接从他们的网站下载它们来完成。在系统上安装所有这些包后,你就可以开始使用 Python 编写计算机视觉任务的代码。
在 Python 中加载图像
接下来我们将看看使用 python 加载图像,以便它们可以处理各种任务,例如对象检测或面部识别。有多种方法可以实现这一点,包括将图像文件读入 NumPy 数组,或从给定的文件路径字符串创建 OpenCV 实例。
Python 中的图像处理
最后,让我们谈谈如何使用一些基本操作(例如过滤和增强技术)来处理加载的图像数据,这些操作允许我们对最终产品进行更多的控制,而不是仅仅依靠原始像素值来提供访问。
过滤技术涉及应用某些算法来修改每个单独的像素值,而增强技术通常指在保存编辑会话期间所做的任何更改之前,在现有图片帧本身内锐化细节。
通过将这两种策略结合在一起,用户可以获得更大的权力来决定他们在完成各自的项目后,最终会获得什么样的输出结果。
使用 Python 的计算机视觉应用
对象识别
对象识别是一种基于 AI 的技术,可根据形状或颜色等特征识别图像或视频中的对象。该技术已应用于许多领域,例如出于安全目的的面部识别、使用条形码或二维码自动识别零售店的产品、自动驾驶汽车识别道路上的障碍物等。
例如:亚马逊的“Just Walk Out”(https://justwalkout.com/)功能,它使用对象识别算法来检测顾客从货架上拿走的物品,这样他们离开商店时就不需要排队结账了。
人脸检测与识别
人脸检测和识别是另一个 AI 应用程序,即使在低光照环境或由于戴眼镜/帽子等造成的部分遮挡等具有挑战性的条件下,它也能从数字图像中以高精度识别人脸。它变得越来越流行,因为它使身份验证过程比密码/pin等传统方法简单得多。
人脸检测和识别系统无处不在,解锁智能手机(Apple 的 Face ID)、办公室/建筑物的门禁系统、学校和大学的出勤监控系统等等。
对象跟踪
物体跟踪是一种计算机视觉技术,它通过识别物体相对于其他元素的位置来跟踪视频帧中的物体。
例如,人们在商场走来走去,而购物中心监控摄像头分别跟踪他们,而不会混淆谁是谁。
图像分割涉及将图像分解成其组成部分,即像素,以便可以根据不同的标准对每个部分进行分类——这有助于更有效地识别具有不