《YOLO医学影像检测》专栏介绍 CSDN独家改进实战

news2024/11/19 16:41:17

💡💡💡YOLO医学影像检测:http://t.csdnimg.cn/N4zBP

✨✨✨实战医学影像检测项目,通过创新点验证涨点可行性;

✨✨✨入门医学影像检测到创新,不断打怪进阶;

 1.血细胞检测介绍

数据来源于医疗相关数据集,目的是解决血细胞检测问题。任务是通过显微图像读数来检测每张图像中的所有红细胞(RBC)、白细胞(WBC)以及血小板 (Platelets)共三类

意义:选择该数据集的原因是我们血液中RBC、WBC和血小板的密度提供了大量关于免疫系统和血红蛋白的信息,这些信息可以帮助我们初步地识别一个人是否健康,如果在其血液中发现了任何差异,我们就可以迅速采取行动来进行下一步的诊断。然而通过显微镜手动查看样品是一个繁琐的过程,这也是深度学习模式能够发挥重要作用的地方,YOLOv8可以从显微图像中分类和检测血细胞,并且达到很高的精确度。

1.1血细胞检测数据集介绍

数据集大小:364张

检测难点:1)类别不平衡;2)同个类别相互遮挡、不同类别相互遮挡;3)检测物长宽差异较大;等

不同类别统计:

WBC: 321个
RBC: 4155个
Platelets: 361个

同个类别相互遮挡、不同类别相互遮挡: 

2.改进创新点介绍

2.1 动态蛇形卷积(Dynamic Snake Convolution),增强细长微弱特征 | ICCV2023

Dynamic Snake Convolution |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.908

 主要的挑战源于细长微弱的局部结构特征与复杂多变的全局形态特征。本文关注到管状结构细长连续的特点,并利用这一信息在神经网络以下三个阶段同时增强感知:特征提取、特征融合和损失约束。分别设计了动态蛇形卷积(Dynamic Snake Convolution),多视角特征融合策略与连续性拓扑约束损失。 

         我们希望卷积核一方面能够自由地贴合结构学习特征,另一方面能够在约束条件下不偏离目标结构太远。在观察管状结构的细长连续的特征后,脑海里想到了一个动物——。我们希望卷积核能够像蛇一样动态地扭动,来贴合目标的结构。

        我们希望卷积核一方面能够自由地贴合结构学习特征,另一方面能够在约束条件下不偏离目标结构太远。在观察管状结构的细长连续的特征后,脑海里想到了一个动物——。我们希望卷积核能够像蛇一样动态地扭动,来贴合目标的结构。

实验结果: 

YOLOv8-C2f-DySnakeConv summary: 249 layers, 3426089 parameters, 0 gradients, 8.7 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:03<00:00,  1.77s/it]
                   all         87       1138      0.828      0.895      0.908      0.614
                   WBC         87         87      0.982          1       0.99      0.763
                   RBC         87        968       0.74      0.819      0.859      0.597
             Platelets         87         83      0.761      0.867      0.875      0.482

 YOLOv8血细胞检测(2):动态蛇形卷积(Dynamic Snake Convolution),增强细长微弱特征 | ICCV2023_AI小怪兽的博客-CSDN博客

2.2 通道优先卷积注意力(Channel Prior Convolutional Attention,CPCA)| 中科院 2023.6发布

CPCA |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.905

 图3:通道先验卷积注意力(CPCA)的整体结构包括通道注意力和空间注意力的顺序放置。特征图的空间信息是由通道注意力通过平均池化和最大池化等操作来聚合的。 随后,空间信息通过共享 MLP(多层感知器)进行处理并添加以生成通道注意力图。 通道先验是通过输入特征和通道注意力图的元素相乘获得的。 随后,通道先验被输入到深度卷积模块中以生成空间注意力图。 卷积模块接收空间注意力图以进行通道混合。 最终,通过通道混合结果与通道先验的逐元素相乘,获得细化的特征作为输出。 通道混合过程有助于增强特征的表示

YOLOv8_CPCAChannelAttention summary (fused): 171 layers, 3137817 parameters, 0 gradients, 7.8 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:04<00:00,  2.05s/it]
                   all         87       1138      0.864      0.865      0.905      0.605
                   WBC         87         87      0.988      0.981       0.99       0.78
                   RBC         87        968      0.791      0.747      0.851      0.595
             Platelets         87         83      0.814      0.867      0.875      0.441

YOLOv8血细胞检测(3):通道优先卷积注意力(Channel Prior Convolutional Attention,CPCA)| 中科院 2023.6发布-CSDN博客

2.3  可变形大核注意力(D-LKA Attention),超越自注意力| 2023.8月最新发表

D-LKA Attention |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.903

这种机制在类似于自注意力的感受野中运行,同时避免了计算开销。 此外,我们提出的注意力机制受益于可变形卷积来灵活地扭曲采样网格,使模型能够适当地适应不同的数据模式。 我们设计了 D-LKA Attention 的 2D 和 3D 适应,后者在跨深度数据理解方面表现出色。

 

YOLOv8_C2f_deformable_LKA summary (fused): 205 layers, 4388553 parameters, 0 gradients, 12.9 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:07<00:00,  3.94s/it]
                   all         87       1138      0.825      0.888      0.903      0.601
                   WBC         87         87      0.988      0.968      0.992       0.78
                   RBC         87        968      0.735      0.822      0.859      0.599
             Platelets         87         83      0.751      0.874      0.858      0.425

YOLOv8血细胞检测(5):可变形大核注意力(D-LKA Attention),超越自注意力| 2023.8月最新发表-CSDN博客

 2.4 多维协作注意模块MCA | 原创独家创新首发

MCA  |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.910

顶部分支用于捕获空间维度 W 中特征之间的交互。类似地,中间分支用于捕获空间维度 H 中特征之间的交互。底部分支负责捕获通道之间的交互。 在前两个分支中,我们采用置换操作来捕获通道维度与任一空间维度之间的远程依赖性。 最后,在积分阶段通过简单平均来聚合所有三个分支的输出。

 

YOLOv8_MCALayer summary (fused): 220 layers, 3006273 parameters, 0 gradients, 8.1 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:13<00:00,  6.55s/it]
                   all         87       1138      0.846      0.894       0.91      0.613
                   WBC         87         87      0.983          1      0.991       0.78
                   RBC         87        968       0.74      0.828      0.867      0.606
             Platelets         87         83      0.816      0.853      0.873      0.454

 YOLOv8血细胞检测(6):多维协作注意模块MCA | 原创独家创新首发-CSDN博客

 2.5  Dual-ViT:一种多尺度双视觉Transformer ,Dualattention助力小目标检测| 顶刊TPAMI 2023

Dualattention |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.907

  如上图(d)所示,双ViT由两个特殊路径组成,分别称为“语义路径”和“像素路径”。通过构造的“像素路径”进行局部像素级特征提取是强烈依赖于“语义路径”之外的压缩全局先验。由于梯度同时通过语义路径和像素路径,因此双ViT训练过程可以有效地补偿全局特征压缩的信息损失,同时减少局部特征提取的困难。前者和后者都可以并行显著降低计算成本,因为注意力大小较小,并且两条路径之间存在强制依赖关系。

 

YOLOv8_DualAttention summary (fused): 186 layers, 4605209 parameters, 0 gradients, 8.3 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 3/3 [00:03<00:00,  1.15s/it]
                   all         87       1138      0.847      0.891      0.907      0.602
                   WBC         87         87      0.989      0.999      0.987      0.782
                   RBC         87        968      0.724      0.843      0.857      0.595
             Platelets         87         83      0.828      0.831      0.876      0.429

 YOLOv8血细胞检测(4):Dual-ViT:一种多尺度双视觉Transformer ,Dualattention助力小目标检测| 顶刊TPAMI 2023_AI小怪兽的博客-CSDN博客

2.6  小目标大目标一网打尽,轻骨干重Neck的轻量级GFPN | 阿里ICLR2022 GiraffeDet

GFPN |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.904

 本文提出了GiraffeDet用于高效目标检测,giraffe包含轻量space-to-depth chain、Generalized-FPN以及预测网络

        FPN旨在对CNN骨干网络提取的不同分辨率的多尺度特征进行融合。上图给出了FPN的进化,从最初的FPN到PANet再到BiFPN。我们注意到:这些FPN架构仅聚焦于特征融合,缺少了块内连接。因此,我们设计了一种新的路径融合GFPN:包含跳层与跨尺度连接,见上图d。

 

YOLOv8_GPFN summary: 232 layers, 2982937 parameters, 0 gradients, 8.1 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:03<00:00,  1.71s/it]
                   all         87       1138      0.843      0.897      0.904      0.604
                   WBC         87         87      0.982      0.989      0.989      0.771
                   RBC         87        968      0.739      0.841      0.857      0.596
             Platelets         87         83      0.808      0.863      0.864      0.446

YOLOv8血细胞检测(7):小目标大目标一网打尽,轻骨干重Neck的轻量级GFPN | 阿里ICLR2022 GiraffeDet_AI小怪兽的博客-CSDN博客

2.7  BiLevelRoutingAttention基于动态稀疏注意力构建高效金字塔网络架构,对小目标涨点明显 | CVPR 2023 BiFormer

 BiLevelRoutingAttention |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.910

 本文方法:本文提出一种动态稀疏注意力的双层路由方法。对于一个查询,首先在粗略的区域级别上过滤掉不相关的键值对,然后在剩余候选区域(即路由区域)的并集中应用细粒度的令牌对令牌关注力。所提出的双层路由注意力具有简单而有效的实现方式,利用稀疏性来节省计算和内存,只涉及GPU友好的密集矩阵乘法。在此基础上构建了一种新的通用Vision Transformer,称为BiFormer。

 

YOLOv8_BiFormerBlock1 summary (fused): 216 layers, 3423897 parameters, 0 gradients, 25.1 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:03<00:00,  1.66s/it]
                   all         87       1138      0.832        0.9       0.91      0.619
                   WBC         87         87      0.983          1      0.993      0.788
                   RBC         87        968      0.694      0.879       0.85      0.593
             Platelets         87         83       0.82      0.822      0.887      0.475		

 YOLOv8血细胞检测(8): BiLevelRoutingAttention基于动态稀疏注意力构建高效金字塔网络架构,对小目标涨点明显 | CVPR 2023 BiFormer-CSDN博客

 2.8 SEAM注意力机制,提升遮挡小目标检测性能

SEAM |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.902

即不同人脸之间的遮挡,以及其他物体对人脸的遮挡。前者使得检测精度对 NMS 阈值非常敏感,从而导致漏检。作者使用排斥损失进行人脸检测,它惩罚预测框转移到其他真实目标,并要求每个预测框远离具有不同指定目标的其他预测框,以使检测结果对 NMS 不太敏感。后者导致特征消失导致定位不准确,设计了注意力模块 SEAM 来增强人脸特征的学习。

 

 

YOLOv8_SEAM summary (fused): 219 layers, 3109721 parameters, 0 gradients, 8.3 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:03<00:00,  1.62s/it]
                   all         87       1138      0.835      0.895      0.902      0.605
                   WBC         87         87      0.974          1      0.985      0.767
                   RBC         87        968      0.747      0.831      0.859      0.596
             Platelets         87         83      0.785      0.855      0.862      0.451	

YOLOv8血细胞检测(9):SEAM注意力机制,提升遮挡小目标检测性能-CSDN博客

2.9 多尺度MultiSEAM,提高特征图的分辨率增强小目标检测能力

 MultiSEAM |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.906

  解决多尺度问题的主要方法是构建金字塔来融合人脸的多尺度特征。例如,在 YOLOv5 中,FPN 融合了 P3P4 和 P5 层的特征。但是对于小尺度的目标,经过多层卷积后信息很容易丢失,保留的像素信息很少,即使在较浅的P3层也是如此。因此,提高特征图的分辨率无疑有利于小目标的检测。

 

YOLOv8_MultiSEAM summary: 325 layers, 5742681 parameters, 0 gradients
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 3/3 [00:03<00:00,  1.29s/it]
                   all         87       1138      0.841      0.906      0.906      0.606
                   WBC         87         87      0.984          1      0.989      0.785
                   RBC         87        968       0.71      0.838      0.838      0.584
             Platelets         87         83      0.829       0.88      0.893      0.449

 YOLOv8血细胞检测(10):多尺度MultiSEAM,提高特征图的分辨率增强小目标检测能力-CSDN博客

2.10 SPD-Conv,低分辨率图像和小物体涨点明显 

SPD-Conv |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.916

 SPD- conv由一个空间到深度(SPD)层和一个非跨步卷积层组成。SPD组件推广了一种(原始)图像转换技术[29]来对CNN内部和整个CNN的特征映射进行下采样:

 

YOLOv8_SPD summary (fused): 174 layers, 3599129 parameters, 0 gradients, 49.2 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 6/6 [00:04<00:00,  1.24it/s]
                   all         87       1138      0.819      0.918      0.916      0.601
                   WBC         87         87      0.975      0.989      0.987      0.754
                   RBC         87        968      0.723      0.851      0.861      0.605
             Platelets         87         83      0.759      0.916      0.899      0.444

 YOLOv8血细胞检测(11):SPD-Conv,低分辨率图像和小物体涨点明显-CSDN博客

2.11  最新开源移动端网络架构 RepViT | RepViTBlock | 清华 ICCV 2023

 RepViTBlock |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.907

 通过集成轻量级 ViT 的高效架构选择,逐步增强标准轻量级 CNN(特别是 MobileNetV3)的移动友好性。 最终产生了一个新的纯轻量级 CNN 系列,即 RepViT。

 RepViT 通过逐层微观设计来调整轻量级 CNN

 

YOLOv8_RepViTBlock summary (fused): 186 layers, 3338777 parameters, 0 gradients, 7.9 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 6/6 [00:04<00:00,  1.38it/s]
                   all         87       1138      0.856      0.873      0.907      0.606
                   WBC         87         87      0.972          1      0.987      0.786
                   RBC         87        968      0.783      0.781      0.857      0.599
             Platelets         87         83      0.813      0.837      0.877      0.434

YOLOv8血细胞检测(13): 最新开源移动端网络架构 RepViT | RepViTBlock | 清华 ICCV 2023-CSDN博客

2.12  EMA基于跨空间学习的高效多尺度注意力、效果优于ECA、CBAM、CA | ICASSP2023

EMA  |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.9

  并行子结构帮助网络避免更多的顺序处理和大深度。给定上述并行处理策略,我们在EMA模块中采用它。EMA的整体结构如图3 (b)所示。在本节中,我们将讨论EMA如何在卷积操作中不进行通道降维的情况下学习有效的通道描述,并为高级特征图产生更好的像素级注意力。具体来说,我们只从CA模块中挑选出1x1卷积的共享组件,在我们的EMA中将其命名为1x1分支。为了聚合多尺度空间结构信息,将3x3内核与1x1分支并行放置以实现快速响应,我们将其命名为3x3分支。考虑到特征分组和多尺度结构,有效地建立短期和长程依赖有利于获得更好的性能。

 

map@0.5 从原始0.895提升至0.9

YOLOv8_EMA summary (fused): 176 layers, 3006905 parameters, 0 gradients, 8.1 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:03<00:00,  1.89s/it]
                   all         87       1138      0.825      0.873        0.9      0.617
                   WBC         87         87      0.989      0.994      0.991       0.79
                   RBC         87        968      0.779      0.751      0.845      0.588
             Platelets         87         83      0.707      0.874      0.865      0.472

 YOLOv8血细胞检测(12):EMA基于跨空间学习的高效多尺度注意力、效果优于ECA、CBAM、CA | ICASSP2023-CSDN博客

 2.12  微小目标检测的上下文增强和特征细化网络ContextAggregation

ContextAggregation |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.907

 

        提供了一个统一视角表明:它们均是更广义方案下通过神经网络集成空间上下文信息的特例。我们提出了CONTAINER(CONText AggregatIon NEtwoRK),一种用于多头上下文集成(Context Aggregation)的广义构建模块 。

本文有以下几点贡献:

  • 提出了关于主流视觉架构的一个统一视角;
  • 提出了一种新颖的模块CONTAINER,它通过可学习参数和响应的架构混合使用了静态与动态关联矩阵(Affinity Matrix),在图像分类任务中表现出了很强的结果;
  • 提出了一种高效&有效的扩展CONTAINER-LIGHT在检测与分割方面取得了显著的性能提升。

 

YOLOv8_ContextAggregation1 summary (fused): 195 layers, 3008482 parameters, 0 gradients, 8.1 GFLOPs
8.0920064
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:03<00:00,  1.86s/it]
                   all         87       1138      0.824      0.892      0.907      0.613
                   WBC         87         87      0.984          1      0.988      0.785
                   RBC         87        968      0.727      0.836      0.851      0.596
             Platelets         87         83       0.76       0.84      0.881      0.457

 YOLOv8血细胞检测(15):微小目标检测的上下文增强和特征细化网络ContextAggregation-CSDN博客

2.12 大型分离卷积注意力模块( Large Separable Kernel Attention),实现暴力涨点同时显著减少计算复杂性和内存 | 2023.8月最新发表 

 Large Separable Kernel Attention|   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.904,YOLOv8n GFLOPs 8.1降低到 7.0

 我们首先讨论如何通过使用一维卷积核来设计 LSKA 模块来重构 LKA 模块(使用和不使用扩张的深度卷积)。 然后我们总结了 LSKA 模块的几个关键属性,然后对 LSKA 进行了复杂性分析。

 

YOLOv8_C2f_LSKA_Attention summary (fused): 207 layers, 2613737 parameters, 0 gradients, 7.0 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:08<00:00,  4.28s/it]
                   all         87       1138      0.838      0.895      0.904      0.601
                   WBC         87         87      0.985      0.989      0.989      0.777
                   RBC         87        968      0.704      0.865      0.852      0.593
             Platelets         87         83      0.827      0.831      0.872      0.433

 YOLOv8血细胞检测(16):大型分离卷积注意力模块( Large Separable Kernel Attention),实现暴力涨点同时显著减少计算复杂性和内存 | 2023.8月最新发表_AI小怪兽的博客-CSDN博客

2.13 极简的神经网络模型 VanillaNet---VanillaBlock助力检测实现涨点的同时降低参数量 |华为诺亚2023

 VanillaBlock |   亲测在血细胞检测项目中涨点,map@0.5 从原始0.895提升至0.90,YOLOv8n GFLOPs 8.1降低到6.2

        VanillaNet,这是一种设计优雅的神经网络架构。 通过避免高深度、shortcuts和自注意力等复杂操作,VanillaNet 简洁明了但功能强大。 

 

YOLOv8_VanillaBlock summary (fused): 198 layers, 3203801 parameters, 0 gradients, 6.2 GFLOPs
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 2/2 [00:04<00:00,  2.21s/it]
                   all         87       1138      0.858      0.872        0.9      0.594
                   WBC         87         87      0.984          1       0.99      0.774
                   RBC         87        968       0.79      0.772      0.858      0.586
             Platelets         87         83      0.799      0.843      0.852      0.422

 YOLOv8血细胞检测(17):极简的神经网络模型 VanillaNet---VanillaBlock助力检测实现涨点的同时降低参数量 |华为诺亚2023-CSDN博客

持续更新中 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1088819.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构 - 2(顺序表10000字详解)

一&#xff1a;List 1.1 什么是List 在集合框架中&#xff0c;List是一个接口&#xff0c;继承自Collection。 Collection也是一个接口&#xff0c;该接口中规范了后序容器中常用的一些方法&#xff0c;具体如下所示&#xff1a; Iterable也是一个接口&#xff0c;Iterabl…

security+JWT

securityJWT 添加依赖准备工作sqlUserInfoUserMapperUserService、UserServiceImpl 创建JwtUtils工具类&#xff0c;做token的生成和校验进入Security创建AccountDetailsServiceImpl&#xff0c;并且实现UserDetailsService编写登录操作 创建拦截器JWTAuthenticationFilter继承…

mac电影特效合成软件nuke15 完美激活版下载

Nuke 15是一款由英国The Foundry公司开发的专业的合成软件&#xff0c;被广泛用于电影、电视和广告制作中的后期合成和特效制作。 Mac软件下载&#xff1a;nuke15 完美激活版下载 Win软件下载&#xff1a;NUKE 13 中文激活版 Nuke 15拥有强大的功能和灵活性&#xff0c;可以帮助…

TartanVO: A Generalizable Learning-based VO 服务器复现(rtx3090 py3)

源码地址 代码地址&#xff1a;https://github.com/castacks/tartanvo/tree/python3 配环境 git clone https://github.com/castacks/tartanvo.git -b python3创建conda环境&#xff1a; conda create -n tartanvo python3.8安装pytorch conda install pytorch1.10.1 torc…

路由router

什么是路由? 一个路由就是一组映射关系&#xff08;key - value&#xff09;key 为路径&#xff0c;value 可能是 function 或 component 2、安装\引入\基础使用 只有vue-router3&#xff0c;才能应用于vue2&#xff1b;vue-router4可以应用于vue3中 这里我们安装vue-router3…

elementUI el-table+树形结构子节点选中后没有打勾?(element版本问题 已解决)

问题 1.不勾选父级CB111&#xff0c;直接去勾选子级&#xff08;ST2001…&#xff09;&#xff0c;子级选中后没有打勾显示 排查 一直以为是这个树形结构和表格不兼容产生的问题&#xff0c;到后来看官方demo都是可以勾选的&#xff0c;最后排查到了版本问题&#xff0c; 项…

电动滑板车UL2272认证测试项目和标准

平衡车ul2272认证标准于2016年2月正式公布&#xff0c;美国消费品安全协会(cpsc)宣布&#xff0c;所有平衡车(包括扭扭车)的制造商、进口商、经销商&#xff0c;其在美国本土生产、进口、销售的平衡车必须符合新的安全标准&#xff0c;包括ul2272平衡车电路系统认证标准。另外&…

flutter开发入门,windows环境安装,耗时一天解决各种bug,终于成功

首先说明要安装的环境&#xff1a;java8必须&#xff0c;android studio&#xff0c;chrome是开发安卓和web是必须的 java8的下载地址&#xff1a;https://www.java.com/en/download/、 java8蓝奏云下载地址&#xff1a;jre-8u381-windows-x64.exe - 蓝奏云 flutter国内环境…

lvgl 界面管理器

lv_scr_mgr lvgl 界面管理器 适配 lvgl 8.3 降低界面之间的耦合使用较小的内存&#xff0c;界面切换后会自动释放内存内存泄漏检测 使用方法 在lv_scr_mgr_port.h 中创建一个枚举&#xff0c;用于界面ID为每个界面创建一个页面管理器句柄将界面句柄添加到 lv_scr_mgr_por…

C++11新特性(lambda,可变参数模板,包装器,bind)

lambda表达式是什么&#xff1f;包装器又是什么&#xff1f;有什么作用&#xff1f;莫急&#xff0c;此篇文章将详细带你探讨它们的作用。很多同学在学习时害怕这些东西&#xff0c;其实都是方便使用的工具&#xff0c;很多情况下我们学这些新的东西觉得麻烦&#xff0c;累赘&a…

自学嵌入式多久才可以达到找工作的水平

自学嵌入式多久才可以达到找工作的水平 时间以及达到嵌入式工作水平所需的具体努力因人而异。但一般而言&#xff0c;自学嵌入式系统开发需要时间和毅力。以下是一些关键因素&#xff0c;影响着您能够在多久内达到找工作的水平&#xff1a;最近很多小伙伴找我&#xff0c;说想要…

YOLOv4 论文总结

贡献&#xff1a; 1.有效且强大的模型&#xff0c;常规GPU&#xff08;1080ti or 2080ti&#xff09;可得到实时、高质量的检测结果。 2.在训练中&#xff0c;验证 Bag-of-Freebies 和 Bag-of-Specials 方法 3.提出了两种数据增强手段&#xff0c;马赛克和自对抗训练&#x…

LeetCode【74】搜索二维矩阵

题目&#xff1a; 代码&#xff1a; public static boolean searchMatrix(int[][] matrix, int target) {int rows matrix.length;int columns matrix[0].length;// 先找到行&#xff0c;行为当前行第一列<target&#xff0c;当前行1行&#xff0c;第一列>targetfor…

详细教程:Postman 怎么调试 WebSocket

WebSocket 是一个支持双向通信的网络协议&#xff0c;它在实时性和效率方面具有很大的优势。Postman 是一个流行的 API 开发工具&#xff0c;它提供了许多功能来测试和调试 RESTful API 接口&#xff0c;最新的版本也支持 WebSocket 接口的调试。想要学习更多关于 Postman 的知…

Linux友人帐之环境变量

一、环境变量 1.1 环境变量的概念 1. 什么是环境变量&#xff1f; 环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数。 2. 为什么会有环境变量&#xff1f; 在Linux系统中&#xff0c;我们发现我们在执行一些指令时&#xff0c;比如…

10个打工人必备AI神器,升职加薪靠AI

HI&#xff0c;同学们&#xff0c;我是赤辰&#xff0c;本期是第18篇AI工具类教程&#xff0c;文章底部准备了粉丝福利&#xff0c;看完后可领取&#xff01;1. Runway&#xff08;文字转视频AI工具&#xff09; 只需要一句提示词就能精确生成你所想象的视频场景&#xff0c;还…

natapp内网穿透-将本地运行的程序/服务器通过公网IP供其它人访问

文章目录 1.几个基本概念1.1 局域网1.2 内网1.3 内网穿透1.4 Natapp 2.搭建内网穿透环境3.本地服务测试 1.几个基本概念 1.1 局域网 LAN&#xff08;Local Area Network&#xff0c;局域网&#xff09;是一个可连接住宅&#xff0c;学校&#xff0c;实验室&#xff0c;大学校…

百乐钢笔维修(官方售后,全流程)

文章目录 1 背景2 方法3 结果 1 背景 在给钢笔上墨的途中&#xff0c;不小心总成掉地上了&#xff0c;把笔尖摔弯了&#xff08;虽然还可以写字&#xff0c;但是非常的挂纸&#xff09;&#xff0c;笔身没有什么问题&#xff0c;就想着维修一下笔尖或者替换一下总成。 一般维…

Vulnhub系列靶机---Raven: 2

文章目录 信息收集主机发现端口扫描目录扫描用户枚举 漏洞发现漏洞利用UDF脚本MySQL提权SUID提权 靶机文档&#xff1a;Raven: 2 下载地址&#xff1a;Download (Mirror) 信息收集 靶机MAC地址&#xff1a;00:0C:29:15:7F:17 主机发现 sudo nmap -sn 192.168.8.0/24sudo arp…

操作系统中的(进程,线程)

操作系统是一个搞管理的软件&#xff0c;它对上给各个应用程序提供稳定的运行环境&#xff1b;对下管理各种硬件设备。 进程 一个操作系统由内核和配套的应用程序组成。而进程就是操作系统内核中众多关键概念中的一个。进程通俗一点来讲就是一个已经跑起来的程序。 每个进程…