手指滑动控制系统全局音量的程序(上)

手指滑动控制系统全局音量的程序(上),第1张

这次的目标是做出一个通过摄像头检测手指滑动,从而可以调整系统全局音量的程序

前期的准备工作
  1. Python的语法
  2. 准备可能需要安装的第三方库
  3. 思考整个程序的逻辑
  4. 可用的摄像头
安装可能用到的第三方库

pip install MideaPipe

第二个

pip install pycaw

可以在上下里面选择一个

pip install pywin32

至于说上面这两个有什么区别,下面会提到

第三个

pip install opencv-python

思考整个程序的逻辑
  1. 使用 OpenCV 作为图像处理的库,因为需要通过摄像头读取当前的画面,OpenCV 里面有专门用于图像处理的各种函数
  2. 使用机器学习相关的函数进行手关节跟踪检测,这里选择的是 Google 的 MideaPipe,这个是他的官网 https://google.github.io/mediapipe/
  3. 引用官网的一张图:
  4. 对识别到的关节结点,取其中的两个较远的点进行距离计算,当距离达到一定时,认定为提高音量,距离过小识别为降低音量
  5. 调整音量通过调用已有的库函数进行 *** 作
在 pywin32 和 pycaw 中选一个

这两个都是用于调整系统的全局音量,各自的用法可以参考这里:https://www.zhihu.com/question/50565812/answer/2254577839

有什么区别?

  1. pywin32 是 Windows 系统自带的 api ,最可靠,因为是微软自家的函数,契合 Windows 平台,但是我目前还不太会用,所以做出来的结果就只有两种极端情况,调音量到最大,和调音量到最小
  2. pycaw 从我目前的使用来看,可以一格一格地调节音量, 还可以限制最大音量的数值,但是当系统音量调节至 0 以下会导致崩溃
可用的摄像头

基本上现在能用的笔记本上面的摄像头都没太大问题

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/571642.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-09
下一篇 2022-04-09

发表评论

登录后才能评论

评论列表(0条)

保存