AI工人操作行为流程规范识别算法

AI工人操作行为流程规范识别算法通过yolov7+python网络模型框架,AI工人操作行为流程规范识别算法对作业人员的操作行为进行实时分析,根据设定算法规则判断操作行为是否符合作业标准规定的SOP流程。Yolo意思是You Only Look Once,它并没有真正的去掉候选区域,而是创造性的将候选区和目标分类合二为一,看一眼图片就能知道有哪些对象以及它们的位置。Yolo模型采用预定义预测区域的方法来完成目标检测,具体而言是将原始图像划分为 7x7=49 个网格(grid),每个网格允许预测出2个边框(bounding box,包含某个对象的矩形框),总共 49x2=98 个bounding box。我们将其理解为98个预测区,很粗略的覆盖了图片的整个区域,就在这98个预测区中进行目标检测。

YOLOv7 的发展方向与当前主流的实时目标检测器不同,研究团队希望它能够同时支持移动 GPU 和从边缘到云端的 GPU 设备。除了架构优化之外,该研究提出的方法还专注于训练过程的优化,将重点放在了一些优化模块和优化方法上。这可能会增加训练成本以提高目标检测的准确性,但不会增加推理成本。研究者将提出的模块和优化方法称为可训练的「bag-of-freebies」。对于模型重参数化,该研究使用梯度传播路径的概念分析了适用于不同网络层的模型重参数化策略,并提出了有计划的重参数化模型。此外,研究者发现使用动态标签分配技术时,具有多个输出层的模型在训练时会产生新的问题:「如何为不同分支的输出分配动态目标?」针对这个问题,研究者提出了一种新的标签分配方法,称为从粗粒度到细粒度(coarse-to-fine)的引导式标签分配。

YOLOv7 的在速度和精度上的表现也优于 YOLOR、YOLOX、Scaled-YOLOv4、YOLOv5、DETR 等多种目标检测器。YOLOv7 在 5 FPS 到 160 FPS 范围内,速度和精度都超过了所有已知的目标检测器。并在V100 上,30 FPS 的情况下达到实时目标检测器的最高精度 56.8% AP。YOLOv7 是在 MS COCO 数据集上从头开始训练的,不使用任何其他数据集或预训练权重。

相对于其他类型的工具,YOLOv7-E6 目标检测器(56 FPS V100,55.9% AP)比基于 transformer 的检测器 SWINL Cascade-Mask R-CNN(9.2 FPS A100,53.9% AP)速度上高出 509%,精度高出 2%,比基于卷积的检测器 ConvNeXt-XL Cascade-Mask R-CNN (8.6 FPS A100, 55.2% AP) 速度高出 551%,精度高出 0.7%。

Yolo的源码是用C实现的,但是好在Github上有很多开源的TF复现。这里我们参考gliese581gg的实现来分析Yolo的Inference实现细节。我们的代码将构建一个end-to-end的Yolo的预测模型,利用的已经训练好的权重文件,你将可以用自然的图片去测试检测效果。

首先,我们定义Yolo的模型参数:

class Yolo(object):

def init(self, weights_file, verbose=True):

self.verbose = verbose

detection params

self.S = 7 # cell size

self.B = 2 # boxes_per_cell

self.classes = ["aeroplane", "bicycle", "bird", "boat", "bottle",

"bus", "car", "cat", "chair", "cow", "diningtable",

"dog", "horse", "motorbike", "person", "pottedplant",

"sheep", "sofa", "train","tvmonitor"]

self.C = len(self.classes) # number of classes

offset for box center (top left point of each cell)

self.x_offset = np.transpose(np.reshape(np.array([np.arange(self.S)]*self.S*self.B),

self.B, self.S, self.S\]), \[1, 2, 0\]) self.y_offset = np.transpose(self.x_offset, \[1, 0, 2\]) self.threshold = 0.2 # confidence scores threhold self.iou_threshold = 0.4 # the maximum number of boxes to be selected by non max suppression self.max_output_size = 10

相关推荐
huisheng_qaq6 小时前
【AI入门篇-02】深入理解ChatGPT发展流程
人工智能·gpt·ai·chatgpt·大模型·transfomer
带娃的IT创业者6 小时前
US Cities Are Axing Flock Safety Surveillance Technology: 当监控之眼被蒙上,我们在守护什么?
人工智能·智慧城市·数据治理·公共安全·隐私保护·监控技术·技术伦理
承渊政道6 小时前
【动态规划算法】(完全背包问题从状态定义到空间优化)
数据结构·c++·学习·算法·leetcode·动态规划·哈希算法
愚公搬代码6 小时前
【愚公系列】《AI漫剧创作一本通》004-剧本拆解,把小说改编为可落地的脚本(爆款AI漫剧,从选择合适的小说开始)
人工智能·ai漫剧
超级大福宝6 小时前
【力扣48. 旋转图像】超好记忆版 + 口诀
c++·算法·leetcode
玩转单片机与嵌入式6 小时前
学习嵌入式AI(TInyML),只需掌握这点python基础即可!
人工智能·python·学习
爱写代码的倒霉蛋6 小时前
2023年天梯赛L1-8
数据结构·算法
mit6.8246 小时前
从 Vibe Coding 到 Agentic Engineering
人工智能
kay_5457 小时前
YOLO26改进| 主干网络 | 提升长距离特征建模与全局上下文理解能力【CVPR】
人工智能·目标检测·计算机视觉·目标跟踪·论文·yolo26·yolo26改进
ting94520007 小时前
Huddle01 VMs 支持 AI 助手一键部署,MCP 协议重塑云基础设施管理
人工智能