当前位置:   article > 正文

python识别_Python手势识别与控制

python怎么判断人物拿着手机

Python手势识别与控制

概述

本文中的手势识别与控制功能主要采用 OpenCV 库实现, OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库, 可以运行在Linux, Windows, Android和Mac-OS操作系统上. 它轻量级而且高效---由一系列 C 函数和少量 C++ 类构成, 同时提供了Python, Ruby, MATLAB等语言的接口, 实现了图像处理和计算机视觉方面的很多通用算法.

本文主要使用了OpenCV的视频采集, 图像色域转换, 颜色通道分割, 高斯滤波, OSTU自动阈值, 凸点检测, 边缘检测, 余弦定理计算手势等功能.

准备工作

安装 Python-OpenCV 库

pip install opencv-python -i https://mirrors.ustc.edu.cn/pypi/web/simple

利用 -i 为pip指令镜像源, 这里使用电子科技大学的源, 速度比官方源更快.

安装 Numpy 科学计算库

pip install numpy -i https://mirrors.ustc.edu.cn/pypi/web/simple

安装 PyAutogui 库

pip install pyautogui -i https://mirrors.ustc.edu.cn/pypi/web/simple

图像的基本操作

import numpy as np

import cv2

imname = "6358772.jpg"

# 读入图像

'''

使用函数 cv2.imread() 读入图像。这幅图像应该在此程序的工作路径,或者给函数提供完整路径.

警告:就算图像的路径是错的,OpenCV 也不会提醒你的,但是当你使用命令print(img)时得到的结果是None。

'''

img = cv2.imread(imname, cv2.IMREAD_COLOR)

'''

imread函数的第一个参数是要打开的图像的名称(带路径)

第二个参数是告诉函数应该如何读取这幅图片. 其中

cv2.IMREAD_COLOR 表示读入一副彩色图像, alpha 通道被忽略, 默认值

cv2.IMREAD_ANYCOLOR 表示读入一副彩色图像

cv2.IMREAD_GRAYSCALE 表示读入一副灰度图像

cv2.IMREAD_UNCHANGED 表示读入一幅图像,并且包括图像的 alpha 通道

'''

# 显示图像

'''

使用函数 cv2.imshow() 显示图像。窗口会自动调整为图像大小。第一个参数是窗口的名字,

其次才是我们的图像。你可以创建多个窗口,只要你喜欢,但是必须给他们不同的名字.

'''

cv2.imshow("image", img) # "image" 参数为图像显示窗口的标题, img是待显示的图像数据

cv2.waitKey(0) #等待键盘输入,参数表示等待时间,单位毫秒.0表示无限期等待

cv2.destroyAllWindows() # 销毁所有cv创建的窗口

# 也可以销毁指定窗口:

#cv2.destroyWindow("image") # 删除窗口标题为"image"的窗口

# 保存图像

'''

使用函数 cv2.imwrite() 来保存一个图像。首先需要一个文件名,之后才是你要保存的图像。

保存的图片的格式由后缀名决定.

'''

#cv2.imwrite(imname + "01.png", img)

cv2.imwrite(imname + 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/89385
推荐阅读
相关标签
  

闽ICP备14008679号