• 工厂人员工装穿戴检测系统


    工厂人员工装穿戴检测基于yolov5实现人员工装穿戴检测,选择当下YOLO最新的卷积神经网络YOLOv5来进行识别检测。现版本的YOLOv5每个图像的推理时间最快0.007秒,即每秒140帧(FPS),但YOLOv5的权重文件大小只有YOLOv4的1/9。YOLOv5中在训练模型阶段仍然使用了Mosaic数据增强方法,该算法是在CutMix数据增强方法的基础上改进而来的。

    近年来,实时目标检测器仍在针对不同的边缘设备进行开发。例如,MCUNet 和 NanoDet 的开发专注于生产低功耗单芯片并提高边缘 CPU 的推理速度;YOLOX、YOLOR 等方法专注于提高各种 GPU 的推理速度;实时目标检测器的发展集中在高效架构的设计上,为 GPU 开发的实时目标检测器则大多使用 ResNet、DarkNet 或 DLA,并使用 CSPNet 策略来优化架构。

    Yolov5的Neck和Yolov4中一样,都采用FPN+PAN的结构。FPN是自顶向下,将高层的强语义特征传递下来,对整个金字塔进行增强,不过只增强了语义信息,对定位信息没有传递。PAN就是针对这一点,在FPN的后面添加一个自底向上的金字塔,对FPN补充,将低层的强定位特征传递上去,又被称之为“双塔战术”。

    Adapter接口定义了如下方法:

    public abstract void registerDataSetObserver (DataSetObserver observer) 
    Adapter表示一个数据源,这个数据源是有可能发生变化的,比如增加了数据、删除了数据、修改了数据,当数据发生变化的时候,它要通知相应的AdapterView做出相应的改变。为了实现这个功能,Adapter使用了观察者模式,Adapter本身相当于被观察的对象,AdapterView相当于观察者,通过调用registerDataSetObserver方法,给Adapter注册观察者。

    public abstract void unregisterDataSetObserver (DataSetObserver observer) 
    通过调用unregisterDataSetObserver方法,反注册观察者。

    public abstract int getCount () 返回Adapter中数据的数量。

    public abstract Object getItem (int position) 
    Adapter中的数据类似于数组,里面每一项就是对应一条数据,每条数据都有一个索引位置,即position,根据position可以获取Adapter中对应的数据项。

    public abstract long getItemId (int position) 
    获取指定position数据项的id,通常情况下会将position作为id。在Adapter中,相对来说,position使用比id使用频率更高。

    public abstract boolean hasStableIds () 
    hasStableIds表示当数据源发生了变化的时候,原有数据项的id会不会发生变化,如果返回true表示Id不变,返回false表示可能会变化。Android所提供的Adapter的子类(包括直接子类和间接子类)的hasStableIds方法都返回false。

    public abstract View getView (int position, View convertView, ViewGroup parent) 
    getView是Adapter中一个很重要的方法,该方法会根据数据项的索引为AdapterView创建对应的UI项。

  • 相关阅读:
    【云原生K8S】Kubernetes之探针
    React虚拟DOM和Diff算法
    IDEA-集成VisualVM插件,启动Java VisualVM
    CSS 经典使用场景
    JUC同步锁原理源码解析一 之ReentrantLock
    常见的安全测试漏洞
    低代码:数字化转型趋势下的快速开发方式
    什么是新媒体矩阵?如何搭建?
    7.MMD 法线贴图的设置与调教
    树与二叉树
  • 原文地址:https://blog.csdn.net/KO_159/article/details/127624343