news 2026/2/16 12:33:28

SOP实时侦测系统

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SOP实时侦测系统

上图先

# -*- coding: utf-8 -*- import cv2 import mediapipe as mp import numpy as np import time import sys import os import tempfile import subprocess # 解决中文显示问题 - 使用Pillow确保中文正确显示 def cv2_puttext_chinese(img, text, position, font_scale, color, thickness): """ 使用Pillow库在OpenCV图像上显示中文 """ try: from PIL import Image, ImageDraw, ImageFont # 确保颜色格式正确 if isinstance(color, tuple) and len(color) == 3: # OpenCV是BGR格式,需要转换为RGB color_rgb = (color[2], color[1], color[0]) else: color_rgb = (255, 255, 255) # 将OpenCV图像转换为PIL图像 img_pil = Image.fromarray(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) draw = ImageDraw.Draw(img_pil) # 确定字体大小 font_size = int(font_scale * 20) # 调整比例以匹配cv2.putText # 尝试使用系统中常见的中文字体 font_paths = [ "C:/Windows/Fonts/simhei.ttf", # 黑体 "C:/Windows/Fonts/msyh.ttc", # 微软雅黑 "C:/Windows/Fonts/msyhbd.ttc", # 微软雅黑粗体 "C:/Windows/Fonts/simsun.ttc", # 宋体 "C:/Windows/Fonts/arial.ttf", # 英文备选 ] font = None for font_path in font_paths: try: if os.path.exists(font_path): font = ImageFont.truetype(font_path, font_size) break except Exception: continue # 如果没有找到合适的字体,使用默认字体 if font is None: font = ImageFont.load_default() # 绘制中文文本 draw.text(position, text, font=font, fill=color_rgb) # 转换回OpenCV格式 img = cv2.cvtColor(np.array(img_pil), cv2.COLOR_RGB2BGR) return img except ImportError: # 如果PIL不可用,使用简单的英文替代 english_map = { "右手抹鼻子": "Right hand to nose", "左手摸头发": "Left hand to hair", "双手击掌": "Hands clap", "SOP完成!": "SOP Complete!", "剩余时间": "Time left", "秒": "s" } for chinese, english in english_map.items(): text = text.replace(chinese, english) cv2.putText(img, text, position, cv2.FONT_HERSHEY_SIMPLEX, font_scale, color, thickness, cv2.LINE_AA) return img except Exception as e: # 其他错误情况下,使用英文替代 english_map = { "右手抹鼻子": "Right hand to nose", "左手摸头发": "Left hand to hair", "双手击掌": "Hands clap", "SOP完成!": "SOP Complete!", "剩余时间": "Time left", "秒": "s" } for chinese, english in english_map.items(): text = text.replace(chinese, english) cv2.putText(img, text, position, cv2.FONT_HERSHEY_SIMPLEX,
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/13 18:25:42

你有没有想过,像 ChatGPT 这样聪明的 AI,它是怎么“出生”的?

很多人以为 AI 是工程师一行一行代码写出来的,就像写个计算器程序一样。其实不是。现代 AI 更像是一个被“养大”的孩子。而在它能够和你谈笑风生之前,它必须经历一个漫长、枯燥且极其昂贵的阶段——预训练(Pre - training)。 如…

作者头像 李华
网站建设 2026/2/12 12:45:20

基于单片机的数字电压表设计

2 系统原理及基本框图 如图2.1所示,模拟电压经过档位切换到不同的分压电路衰减后,经隔离干扰送到A/D转换器进行A/D转换,然后送到单片机中进行数据处理。处理后的数据送到LCD中显示,同时通过串行通讯与上位机通信。图2.1系统基本方…

作者头像 李华
网站建设 2026/2/15 0:35:38

强化学习系统性学习笔记(二):策略优化的理论基础与算法实现

.2 REINFORCE: 最早的策略梯度算法在完成策略梯度定理的推导后,我们获得了梯度的理论形式:然而,这个期望本身仍然无法直接计算。我们面临的根本问题是:轨迹空间是高维甚至连续无限的,无法枚举所有可能的 组合。策略优化的实践核心在于用有限采样近似期望:与环境交互收集 条轨迹…

作者头像 李华
网站建设 2026/2/8 13:53:31

基于STM32银行医院柜台叫号排队系统语音播报设计

(一)系统功能设计 STM32单片机银行医院柜台叫号系统语音播报26 本系统由STM32F103C8T6单片机、LCD12864液晶、语音播报、按键及电源组成。 1、本系统默认最多3个排队客户,排队客户按下取号按键后,LCD1602液晶显示取号总数&#xf…

作者头像 李华
网站建设 2026/2/13 10:03:59

c#造个轮子--GIF录制工具

在以往几篇文章里面,大家都可以看到各种录制的GIF效果图,把gif放在文章开始,不仅可以减少很多冗余的解释白话文,更可以让读者一览无余看到文章大概要义。以往都是使用“LicEcap”来录制的,那么我们是否能自己实现一个这…

作者头像 李华
网站建设 2026/2/14 19:30:46

专利申请怕驳回、分类难?别担心!星河智源申请前评估来帮你

在科技创新驱动发展的当下,专利是保护创新成果、彰显核心竞争力的关键。无论是科研人员的成果转化,还是企业的市场布局,专利都发挥着不可替代的作用。例如华为凭借海量5G专利领跑全球通信市场,足以证明优质专利的核心价值。 但专…

作者头像 李华