CSPVD 智慧工地安全帽安全背心检测开发包

CSPVD SDK适用于为各种智慧工地应用增加安全防护穿戴合规的检测能力,能够有效检测未戴安全帽和未穿 安全背心的人员,提供Web API和原生API。官方下载:CSPVD工地安全防护检测

1、目录组织

CSPVD开发包的目录组织说明如下:

复制代码
xlpr_sdk    
  | - core                      # 核心代码目录
    | - violation_code.py       # 违规代码定义
    | - violation_detector.py   # 违规识别网络
    | - violation_mixer.py      # 违规图像合成器
  | - weights                   # 预训练权重目录
    | - model.pt                # d_net权重
  | - assets
    | - hardhat.png             # 安全帽图标
    | - vest.png                # 安全背心图标  
  | - samples                   # 测试图片目录
    | - test-1.jpg                
    | - ....
  | - serve.py                  # Web UI及API服务
  | - api_test.py               # Web API调用示例代码
  | - requirements.txt          # 依赖声明文件

在第一次使用之前,首先安装依赖文件:

复制代码
pip install -r requirements.txt

2、使用Web UI

执行如下命令启动Web UI:

复制代码
python serve.py

然后使用浏览器访问 http://127.0.0.1:7860,即可打开Web UI。

在Web UI中打开一个图像文件,然后点击Submit按钮,就可以进行检测,如下图所示:

右侧的输出图像上叠加了检测到的违规信息,绿色包围框表示人员着装合规,红色包围框 表示人员着装违规,左下角的图标表示违规类别,图标含义说明如下:

图标 说明
未戴安全帽
未穿安全背心

输出结果为一个数组,每个成员包含如下字段:

  • box: 违规人员的包围框
  • codes: 违规代码。 2:未带安全帽 | 4:未穿安全背心
  • conf:置信度,越高越好

CSPVD能识别各种颜色的安全帽:

CSPVD也能检测不同样式的安全背心:

3、使用Web API

api_name: /predict

输入参数:

  • img_in:输入图像

输出结果:

  • 0 :输出图像文件路径
  • 1 :检测结果数组,每个成员包含如下字段: box | codes | conf

Python调用示例如下:

复制代码
from gradio_client import Client, handle_file

client = Client("http://127.0.0.1:7860/")
result = client.predict(
  img_in=handle_file('./samples/test-1.jpg'),
  api_name="/predict" )
print(result)

执行结果如下:

Web API特别适合将车牌识别能力集成到Java、C#、Javascript等其他语言开发的应用中。

4、使用原生API

除了Web API,CSPVD SDK也提供了Python原生API。

4.1 合规检测器

ViolationDetector是合规检测器类,使用其predict()方法对传入的图片进行处理,并返回检测结果数据。

ViolationDetector实例的predict()调用示例代码如下:

复制代码
from core import ViolationDetector
import cv2

vd = ViolationDetector()

img_in = cv2.imread('samples/test-1.jpg')
results = vd.predict(img_in)

4.2 合规检测结果合成器

ViolationMixer是检测结果合成类,使用其mix()方法将检测结果叠加到图片上,返回叠加后 的合成图片。

ViolationMixer实例的mix()方法调用示例代码如下:

复制代码
from core import ViolationDetector, ViolationMixer
import cv2

vd = ViolationDetector()

img_in = cv2.imread('samples/test-1.jpg')
results = vd.predict(img_in)

vm = ViolationMixer()
img_out = vm.mix(img_in, results)

原文链接:CSPVD工地安全防护检测 - 汇智网

相关推荐
小小测试开发9 小时前
安全评测得分 0.9556 掉到 0.3257,只改了 top_k 和 prompt_style 之外的题面比例
人工智能·安全·prompt
亚川楼宇自控系统数据中心厂家11 小时前
事故风机监控:守护机房电池间等特殊区域的安全底线
大数据·安全
hz5678912 小时前
局域网会议系统如何搭建:从网络环境到软件选型的完整指南
安全·实时音视频·信息与通信·政务
看着博客敲代码12 小时前
nikto 扫描报 0 host(s) tested 与 Web 服务器漏洞扫描用法
安全·web安全·网络安全
CALL1581190984513 小时前
SVHC 247项与附录XVII限制物质,REACH测试项目有哪些?
运维·安全·安全性测试
言钰解珏13 小时前
记一次自研ai扫描器漏洞能力检测到rce全过程
安全
看着博客敲代码14 小时前
gobuster 报 the server returns a status code that matches 与 目录爆破用法
安全·网络安全·系统安全
小枣信安15 小时前
MCP安全系列之缺乏日志审计
安全·网络安全·ai安全·大模型安全·智能体安全·mcp安全
SGS官方15 小时前
SGS为紫光国芯颁发ISO 26262:2018汽车功能安全ASIL D流程证书
安全·汽车·检测认证机构·sgs
Xudde.15 小时前
PwnLab: init 靶机渗透测试(Vulnhub Writeup)
笔记·学习·安全·web安全