首页
留言板
友链
统计
Search
1
树莓派换源最新教程及注意事项(更换为清华源)
1,616 阅读
2
Alist上传大文件报错Request failed with status code 413
715 阅读
3
google colab打包下载文件夹
656 阅读
4
Luat Air780E/Air700E使用MQTT协议接入巴法云物联网平台
386 阅读
5
Luat Air780E/Air700E获取设备经纬度后使用MQTT协议发送至巴法云
364 阅读
嵌入式笔记
stm32
esp8266
raspberry-pi
esp32
机器视觉笔记
opencv
yolo
typecho笔记
vps
typecho美化
悄悄话
登录
Search
标签搜索
esp8266
air700e
typecho
onenet
mediapipe
悄悄话
星星
累计撰写
34
篇文章
累计收到
31
条评论
首页
栏目
嵌入式笔记
stm32
esp8266
raspberry-pi
esp32
机器视觉笔记
opencv
yolo
typecho笔记
vps
typecho美化
悄悄话
页面
留言板
友链
统计
搜索到
6
篇与
的结果
2023-04-25
opencv视觉小游戏—石头剪刀布
效果展示{bilibili bvid="BV1aQ4y1Q7Lf" page=""/}程序代码{cloud title="石头剪刀布源码" type="lz" url="https://wwtn.lanzout.com/inakT0txuo1i" password=""/}石头剪刀布代码解释 这是一个手势石头剪刀布游戏的Python代码。这个游戏使用计算机视觉技术检测玩家的手势,并将其与计算机生成的随机手势进行比较。玩家和计算机都可以选择石头,剪刀或布。如果玩家赢了,则得分加1,如果玩家输了,则得分减1。如果平局,则不会加分或减分。游戏将持续进行直到程序被停止。1、代码首先导入所需的库,包括cv2(OpenCV)用于图像处理和检测手势,time用于计时,os用于读取图像文件,以及一个名为HandTrackingModule的自定义模块,用于手势识别。然后,代码设置一些常量,包括摄像头的宽度和高度,胜利和失败的消息,以及一个用于存储图像文件的文件夹路径。2、接下来,代码读取图像文件夹中的所有图像文件,并将它们存储在一个列表中。然后,代码初始化一个HandTrackingModule对象,用于检测手势。代码还定义了一个包含手指顶部ID的列表,这些ID对应于手指的末端。最后,代码进入一个无限循环,每次循环中检测玩家的手势并计算得分。3、在每次循环中,代码读取摄像头的当前帧,并使用HandTrackingModule对象检测手势。代码检查检测到的手指数量,并将其与预设的手势相匹配(石头、剪刀、布)。如果匹配成功,则代码将显示相应的消息并将变量end设置为“win”或“fail”,表示玩家赢了或输了。代码还将检查计算机随机生成的手势,并将其显示在图像上。4、一旦检测到手势,代码将比较玩家的手势和计算机生成的手势。如果两者相同,则比赛平局。如果玩家赢了,则得分加1,如果玩家输了,则得分减1。代码将显示得分,以及最近一次比赛的结果。5、一旦比赛结束并且时间超过两秒钟,代码将重置所有变量并开始新的游戏。HandTrackingModule代码解释1、这是一个使用Mediapipe库和OpenCV库实现的手部检测器。它可以检测图像或视频中的手部,并给出手部的关键点位置。这个程序使用了一个名为handDetector()的类来实现手部检测和关键点检测。该类的构造函数可以设置一些参数,如最大手数、检测置信度和跟踪置信度等。2、findHands()函数使用Mediapipe库来检测图像中的手部,并在图像中绘制出检测到的手部的关键点。findPosition()函数可以通过检测到的关键点返回手部的关键点位置。3、在主函数中,我们打开计算机的摄像头,不断地读取帧,并在每一帧中调用findHands()和findPosition()函数来检测手部,并绘制关键点。程序还会计算每秒钟处理的帧数(FPS)并显示在窗口中。
2023年04月25日
138 阅读
0 评论
0 点赞
2023-03-03
pip安装opencv并编写测试代码
步骤一:安装OpenCV使用以下命令安装OpenCV:pip3 install opencv-python步骤二:下载测试图片我们需要先下载一张测试图片,可以使用以下命令下载:wget https://raw.githubusercontent.com/opencv/opencv/master/samples/data/lena.jpg下载完成后,可以使用以下命令查看图片是否下载成功:ls如果能看到名为“lena.jpg”的文件,说明图片下载成功。步骤三:编写测试代码接下来,我们可以使用Python编写测试代码,并命名为test_opencv.py。代码如下:import cv2 # 读取图片 img = cv2.imread('lena.jpg') # 转换为灰度图像 gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 对灰度图像进行直方图均衡化处理 eq = cv2.equalizeHist(gray) # 显示原图像和直方图均衡化处理后的图像 cv2.imshow('image', img) cv2.imshow('equalized', eq) # 等待按下任意按键 cv2.waitKey(0) # 关闭所有窗口 cv2.destroyAllWindows() 代码中使用了OpenCV的相关函数来读取图片、将图片转换为灰度图像、对灰度图像进行直方图均衡化处理,最后展示原图像和处理后的图像。其中,cv2.imshow()函数用于显示图像,cv2.waitKey()函数用于等待按键,cv2.destroyAllWindows()函数用于关闭所有窗口。步骤四:运行测试代码运行测试代码前,我们需要确保OpenCV已经成功安装并且可以正常工作。可以使用以下命令来检查OpenCV是否安装成功:python3 -c "import cv2; print(cv2.__version__)"如果成功安装,将会输出OpenCV的版本号。接下来,我们可以使用以下命令来运行测试代码:python3 test_opencv.py代码会打开名为“image”的窗口,显示原图像;同时打开名为“equalized”的窗口,显示直方图均衡化处理后的图像。可以使用鼠标拖动窗口或按下任意按键来关闭窗口。总结以上就是使用pip安装OpenCV并编写测试代码的完整教程。通过这个教程,我们可以快速搭建OpenCV的Python环境,并进行图像处理和计算机视觉应用的开发。
2023年03月03日
142 阅读
0 评论
0 点赞
2023-02-18
当kunkun遇上yolov8
本来挺喜欢yolov8的。{bilibili bvid="BV1kM411w7FJ" page=""/}
2023年02月18日
174 阅读
0 评论
0 点赞
2023-02-17
几个yolo的教程网站
github(yolov5) yolov5 github(yolov8) yolov8 yolov8 docs yolov8 docs roboflow yolo notebooks roboflow yolo yolov8 notebooks yolov8 notebooks
2023年02月17日
232 阅读
0 评论
0 点赞
2023-02-16
opencv采集视频流源码
程序源码import cv2 capture = cv2.VideoCapture(0) while True: ret, frame = capture.read() frame = cv2.flip(frame,0) #镜像操作 cv2.imshow("video", frame) key = cv2.waitKey(50) #print(key) if key == ord('q'): #判断是哪一个键按下 break cv2.destroyAllWindows()cv2.flip() 函数解析语法:cv2.flip(filename, flipcode) {message type="info" content="filename:需要操作的图像flipcode:翻转方式"/}flipcode作用1水平翻转0垂直翻转-1水平垂直翻转
2023年02月16日
178 阅读
0 评论
0 点赞
2023-02-15
google colab打包下载文件夹
在使用google colab笔记本的过程发现过程文件夹不能直接保存,下面提供一程序,通过修改需要保存的文件夹参数即可实现压缩下载文件夹功能。程序import os, tarfile import os from google.colab import files def make_targz_one_by_one(output_filename, source_dir): tar = tarfile.open(output_filename,"w") for root,dir_name,files_list in os.walk(source_dir): for file in files_list: pathfile = os.path.join(root, file) tar.add(pathfile) tar.close() files.download(output_filename) make_targz_one_by_one('neg_tar', '/content/aclImdb/test/pos') #第一个参数:下载文件名(随意设置),第二个参数需要下载文件夹在coalb的路径 # 如需下载单独文件,可运行以下代码: #from google.colab import files #files.download('glove.6B.100d.txt') #参数:文件名
2023年02月15日
656 阅读
0 评论
1 点赞