YOLOv3 学习笔记

文章目录

  • 前言
  • 一、YOLOv3贡献和改进
  • 二、YOLOv3的核心概念
    • 2.1 基础理论和工作原理
    • 2.2 YOLOv3对比YOLOv1和YOLOv2
      • 2.2.1 YOLOv1
      • 2.2.2 YOLOv2/YOLO9000
      • 2.2.3 YOLOv3
  • 三、YOLOv3的网络架构
      • 3.1 Darknet-53
      • 3.2 残差连接
      • 3.3 多尺度预测
      • 3.4 锚框
      • 3.5 类别预测和对象检测
      • 3.6 上采样和特征融合
      • 3.7 批量归一化和Leaky ReLU
  • 四、YOLOv3的损失函数
  • 五、实际应用和局限性
    • 5.1 实际应用
    • 5.2 局限性
  • 参考资料
  • 总结


前言

目标检测是计算机视觉领域的一个核心任务,涉及到在图像中识别和定位对象。YOLOv3(You Only Look Once, Version 3)作为这一领域的重要进展,以其独特的方法和卓越的性能吸引了广泛关注。与先前版本相比,YOLOv3带来了多项创新,不仅提高了检测的准确性和速度,还扩展了模型的适用范围。本文旨在全面探讨YOLOv3的主要贡献和改进,分析其核心概念和网络架构,并讨论其在实际应用中的潜力与局限性。
YOLOv3


一、YOLOv3贡献和改进

YOLOv3的主要贡献和改进包括:

  1. 更快的检测速度:YOLOv3相较于其他具有可比性能的检测方法运行速度更快。

  2. 改进的边界框预测:YOLOv3使用尺寸簇作为锚框来预测边界框,对于每个边界框预测四个坐标,并使用sigmoid函数预测框的中心坐标。

  3. 多尺度预测:在网络的不同尺度上进行边界框的预测,这使得YOLOv3能够从早期网络中提取的细粒度特征中受益。

  4. 高性能检测:尽管在一些指标上仍落后于其他模型如RetinaNet,但在传统的目标检测指标mAP(在IOU=0.5时)上,YOLOv3表现出色,几乎与RetinaNet相当,远高于SSD变体。

  5. 对小对象的改进检测:YOLOv3通过新的多尺度预测,在小对象上表现出相对较高的APS性能,尽管在中等和较大尺寸对象上的性能有所下降。

二、YOLOv3的核心概念

2.1 基础理论和工作原理

  1. 单一神经网络直接预测:YOLOv3 使用单一的深度神经网络直接从图像中预测边界框和类别概率。这种方法与传统的目标检测方法不同,后者通常先生成潜在的边界框,然后对这些框进行分类和精细化。

  2. 整体图像分析:在YOLOv3中,整个图像在单次推断过程中被处理,使得预测能够利用图像中的全局上下文信息。这有助于系统更好地理解图像内容,从而改善检测性能。

  3. 边界框预测:YOLOv3通过神经网络预测边界框的位置和大小。每个预测包括边界框的中心坐标、宽度和高度。这些预测是相对于特定网格单元的,并且以尺寸簇(anchor boxes)为基础。

  4. 类别预测:与边界框位置的预测同时进行的还有类别预测。每个边界框都会预测属于各个类别的概率。

  5. 多尺度预测:YOLOv3在网络的不同层上执行预测,使其能够同时检测不同尺寸的对象。这是通过在网络的不同分辨率层面上添加预测来实现的,从而使网络能够更好地处理从小到大的各种尺寸的对象。

  6. Darknet-53特征提取器:YOLOv3使用了一种新的特征提取器Darknet-53,它是一个深层神经网络,用于提取图像特征,以便于后续的分类和定位任务。

通过这些方法,YOLOv3能够快速且准确地在图像中定位和识别多个对象,使其在实时应用中非常有效。

2.2 YOLOv3对比YOLOv1和YOLOv2

2.2.1 YOLOv1

  1. 基础架构

    • YOLOv1是第一个版本,提出了单一神经网络直接从整幅图像中预测边界框和类别的概念。
    • 使用了24个卷积层和2个全连接层。
  2. 检测方式

    • YOLOv1将图像分成7x7的网格,并在每个网格单元中预测边界框和类别概率。
    • 由于这种分割方式,它在处理相互靠近的小对象或一大群对象时效果不佳。
  3. 局限性

    • 对小对象的检测能力有限。
    • 边界框的准确性较低,特别是在对象形状多样性较高的情况下。

2.2.2 YOLOv2/YOLO9000

  1. 改进的架构

    • 引入了“Darknet-19”架构,包含19个卷积层和5个最大池化层。
    • 优化了网络结构以提高速度和准确性。
  2. 锚框(Anchor Boxes)

    • 引入了锚框概念,用于预测多个边界框。
    • 这一变化提高了对不同尺寸和形状对象的检测能力。
  3. 更好的特征学习

    • 通过多尺度训练提高了对不同尺寸对象的检测能力。
  4. YOLO9000特性

    • 能够同时检测超过9000个不同类别的对象。
    • 使用了一种联合训练方法,结合了分类和检测任务。

2.2.3 YOLOv3

  1. 更深的网络架构

    • 引入了“Darknet-53”,这是一种更深的卷积网络,结合了残差连接,用于更有效的特征学习。
  2. 更好的边界框预测

    • 使用3个不同尺度的预测,每个尺度使用不同大小的锚框,这改进了对不同尺寸对象的检测能力。
  3. 类别预测的改进

    • 对于每个边界框,YOLOv3使用逻辑分类器而不是softmax,这使得模型在预测多标签类(即一个对象属于多个类别)时更为有效。
  4. 更高的性能

    • 在保持较高检测速度的同时,提高了检测准确性,特别是在小对象和不规则形状的对象上。

三、YOLOv3的网络架构

YOLOv3的网络架构是其成功的关键因素之一,它包含以下主要特点:

3.1 Darknet-53

  • YOLOv3使用的主要特征提取网络是Darknet-53,即:有53层深度的卷积神经网络。
    ( 2 + 1 × 2 + 1 + 2 × 2 + 1 + 8 × 2 + 1 + 8 × 2 + 1 + 4 × 2 + 1 = 53 ) (2 + 1\times2 + 1 + 2\times2 + 1 + 8\times2 + 1 + 8\times2 + 1 + 4\times2 + 1 = 53) (2+1×2+1+2×2+1+8×2+1+8×2+1+4×2+1=53),Residual不是卷积层,最后的Connected是全连接层也用的卷积,一共53个。
    网络参数
  • Darknet-53结合了Darknet-19(YOLOv2使用的特征提取网络)的特点,并加入了残差连接(Residual Blocks),从而提高了特征提取的能力和网络的训练速度。

3.2 残差连接

残差连接(ResNet)帮助网络更有效地进行深层训练,减少了训练过程中的信息丢失。这些连接允许网络学习恒等映射,从而在增加网络深度的同时保持性能。
Residual
ResNet

3.3 多尺度预测

  • YOLOv3在网络的三个不同尺度上进行预测,这允许它检测不同大小的对象。
  • 它在网络中较深层的部分检测大尺寸对象,在较浅层的部分检测小尺寸对象。

多尺度预测

3.4 锚框

在YOLOv3中,锚框(Anchor Boxes)是用于预测边界框的一种关键机制,具体包括以下两个主要方面:

1. 使用尺寸簇作为锚框

  • YOLOv3引入了尺寸簇(dimension clusters)作为锚框的概念,这些尺寸簇是通过对训练数据集中的边界框尺寸进行k-means聚类得到的。
  • 这些尺寸簇代表了边界框尺寸的一种预先定义的模式,可以更好地适应不同形状和尺寸的对象。
  • 使用尺寸簇作为锚框的做法,有助于模型在训练过程中学习如何预测不同大小和比例的对象。

2. 多尺度上的不同大小锚框

  • YOLOv3在网络的三个不同尺度上进行边界框的预测,每个尺度使用三种不同大小的锚框,总共九种尺寸。
  • 这些不同尺度的预测使得YOLOv3能够同时检测不同大小的对象,从大型到小型对象均能有效处理。
  • 在每个尺度上,网络会预测属于每个锚框的边界框的位置、尺寸以及与对象类别相关的概率信息。
  • 多尺度预测的设计不仅提高了对小对象的检测能力,还增强了模型对于中等和大型对象的检测精度。

在数据结构层面,实现锚框的方法通常涉及以下几个关键步骤:

  1. 输出张量的维度设计
  • YOLOv3网络的输出是一个四维张量,通常表示为 [ B , S , S , ( C + 5 ) × A ] [B, S, S, (C + 5) \times A] [B,S,S,(C+5)×A]
  • 这里, B B B 是批量大小, S × S S \times S S×S 是网格的尺寸(网络将输入图像分割成 S × S S \times S S×S 的网格), C C C 是类别数量, 5 5 5 表示每个边界框的四个坐标加上一个置信度, A A A 是每个网格单元的锚框数量。
  1. 锚框尺寸的预定义
  • 锚框的尺寸是通过在训练集上运行k-means聚类算法预先确定的。
  • 对于每个尺度,会有一组特定的锚框尺寸(例如,YOLOv3总共使用了9种尺寸的锚框,分配到三个不同的尺度)。
  1. 网格单元与锚框的关联
  • 每个网格单元负责预测与其位置相关的锚框的边界框。
  • 对于每个网格单元,模型都会输出 A A A 个锚框的预测,每个锚框预测包括边界框的四个坐标、一个置信度和类别概率。
  1. 边界框预测的编码
  • 边界框的坐标是相对于其所在网格单元的位置和所选锚框的尺寸进行编码的。
  • 预测的边界框坐标通常是通过应用转换函数(例如sigmoid函数)来规范化的,使得输出值落在0到1之间。

数据结构

3.5 类别预测和对象检测

在YOLOv3中,类别预测和对象检测是两个关键的组件,它们共同决定了网络如何识别和分类图像中的不同对象。

1. 对象存在的置信度

  • YOLOv3中的每个边界框都会预测一个“对象置信度”分数,这个分数表示边界框中包含目标的概率。
  • 这个置信度分数不仅反映了模型对是否存在某个对象的信心程度,而且还考虑了预测的边界框与实际对象边界框的匹配程度。
  • 如果一个边界框中包含对象,其置信度应接近1;如果不包含对象,则接近0。

2. 多个类别的概率

  • 除了置信度,YOLOv3还会为每个边界框预测多个类别的概率。
  • 这意味着对于每个边界框,模型都会评估图像中的对象属于每个可能类别的概率。
  • 这些类别概率是独立的,允许单个边界框同时预测多个类别的存在。

3. 使用逻辑回归预测类别分数

  • YOLOv3使用逻辑回归(而非传统的softmax函数)来预测每个类别的分数。
  • 这种方法允许模型对每个类别进行独立的概率评估,这对于多标签分类(即一个对象可能属于多个类别)是必要的。
  • 逻辑回归输出的是一个介于0和1之间的值,表示某个类别存在的概率。

3.6 上采样和特征融合

在YOLOv3的网络架构中,上采样(Upsampling)和特征融合(Feature Fusion)是两个关键技术,它们共同提升了模型在目标检测任务中的性能,特别是在处理小尺寸对象时:

1. 上采样

  • 原理:上采样是一种增加数据维度的操作,用于将特征图的尺寸放大。在YOLOv3中,上采样用于将深层次的特征图(低分辨率、高层次特征)放大到更高分辨率。
  • 目的:这一过程对于恢复小尺寸对象的细节特别重要,因为在卷积和池化操作后,这些细节可能会丢失。

2. 特征融合

  • 方法:特征融合涉及到将不同层次的特征图组合在一起。在YOLOv3中,它通常涉及将上采样的特征图与前面层次的特征图(高分辨率、低层次特征)结合。
  • 效果:通过这种方式,模型能够同时利用深层次(高层次)的语义信息和浅层次(低层次)的细节信息。这种融合使得模型对小尺寸对象的检测更为敏感和准确。

对检测小尺寸对象的重要性

  • 在目标检测中,小尺寸对象的识别通常更为困难,因为在经过多层卷积和池化后,小对象的特征可能会变得不够明显。
  • 通过上采样和特征融合,YOLOv3能够恢复这些小对象的细节,同时保留对大型对象的高级语义理解。

上采样和特征融合在YOLOv3中的应用显著提高了模型对图像中细节的感知能力,尤其是对小尺寸对象的检测能力,从而使其成为一个在各种尺寸对象检测方面都表现出色的目标检测系统。

3.7 批量归一化和Leaky ReLU

在YOLOv3的网络架构中,批量归一化(Batch Normalization)和Leaky ReLU(Rectified Linear Unit)激活函数的使用对于提高模型的训练稳定性和效率起着重要作用:

1. 批量归一化

  • 目的:批量归一化是一种用于训练深度神经网络的技术,旨在标准化每个卷积层的输入,使其均值接近0,标准差接近1。
  • 原理:通过对每个小批量数据进行归一化处理,批量归一化减少了内部协变量偏移(internal covariate shift)的问题,即网络各层输入分布的变化。
  • 效果:这种标准化过程有助于稳定神经网络的学习过程,允许使用更高的学习率,加速收敛,并减少对初始化方法的敏感度。

2. Leaky ReLU激活函数

  • 定义:Leaky ReLU是ReLU(Rectified Linear Unit)的一种变体,它允许小的负值梯度传递,而不是像传统的ReLU那样完全阻断负值。
  • 公式:Leaky ReLU的数学表达式是 f ( x ) = max ⁡ ( 0.01 x , x ) f(x) = \max(0.01x, x) f(x)=max(0.01x,x),其中 x x x 是输入值。
  • 优点:相比于传统的ReLU,Leaky ReLU有助于避免神经元“死亡”的问题,即在训练过程中一些神经元可能完全不激活,导致相应参数无法更新。
  • 应用:在YOLOv3中,Leaky ReLU被用于网络的卷积层,以保持非线性性质的同时,减少激活函数的饱和风险。

结合批量归一化和Leaky ReLU的使用,YOLOv3的网络架构能够更有效地学习并保持在训练过程中的稳定性,这是实现其高性能目标检测的关键因素之一。

四、YOLOv3的损失函数

YOLOv3的损失函数是多目标损失函数,它结合了几个不同的组件来训练网络。YOLOv3的损失函数由以下几部分组成,每部分都有其对应的公式:

  1. 边界框坐标损失(Bounding Box Coordinate Loss)
    ∑ i = 0 S 2 ∑ j = 0 B 1 i j o b j [ ( x i − x ^ i ) 2 + ( y i − y ^ i ) 2 + ( w i − w ^ i ) 2 + ( h i − h ^ i ) 2 ] \sum_{i=0}^{S^2} \sum_{j=0}^{B} 1_{ij}^{obj} [(x_i - \hat{x}_i)^2 + (y_i - \hat{y}_i)^2 + (\sqrt{w_i} - \sqrt{\hat{w}_i})^2 + (\sqrt{h_i} - \sqrt{\hat{h}_i})^2] i=0S2j=0B1ijobj[(xix^i)2+(yiy^i)2+(wi w^i )2+(hi h^i )2]

    • 其中 S 2 S^2 S2 表示图像被划分的网格数, B B B 是每个网格预测的边界框数量。
    • 1 i j o b j 1_{ij}^{obj} 1ijobj 表示如果网格单元 i i i 中的第 j j j 个边界框负责预测目标,则为1,否则为0。
    • x , y , w , h x, y, w, h x,y,w,h 分别表示边界框的中心坐标和尺寸,帽子符号表示预测值。
  2. 对象置信度损失(Object Confidence Loss)
    ∑ i = 0 S 2 ∑ j = 0 B 1 i j o b j ( C i − C ^ i ) 2 + λ n o o b j ∑ i = 0 S 2 ∑ j = 0 B 1 i j n o o b j ( C i − C ^ i ) 2 \sum_{i=0}^{S^2} \sum_{j=0}^{B} 1_{ij}^{obj} (C_i - \hat{C}_i)^2 + \lambda_{noobj} \sum_{i=0}^{S^2} \sum_{j=0}^{B} 1_{ij}^{noobj} (C_i - \hat{C}_i)^2 i=0S2j=0B1ijobj(CiC^i)2+λnoobji=0S2j=0B1ijnoobj(CiC^i)2

    • C C C 表示置信度,即边界框中包含目标的概率, λ n o o b j \lambda_{noobj} λnoobj 是不包含目标的边界框的权重系数。
  3. 类别预测损失(Class Prediction Loss)
    ∑ i = 0 S 2 1 i o b j ∑ c ∈ c l a s s e s ( p i ( c ) − p ^ i ( c ) ) 2 \sum_{i=0}^{S^2} 1_{i}^{obj} \sum_{c \in classes} (p_i(c) - \hat{p}_i(c))^2 i=0S21iobjcclasses(pi(c)p^i(c))2

    • p i ( c ) p_i(c) pi(c) 表示网格单元 i i i 中目标属于类别 c c c 的概率,帽子符号表示预测值。

YOLOv3的损失函数设计用于同时优化目标检测的多个方面,包括定位准确性、置信度判断和类别分类。通过这种方式,网络能够有效地学习如何在各种情况下正确地识别和定位目标。
请注意,这些公式可能根据实现的具体细节略有不同。

五、实际应用和局限性

5.1 实际应用

  1. 实时目标检测

    • YOLOv3因其高速处理能力而在实时目标检测领域广受欢迎,适用于需要快速响应的场景,如监控系统和自动驾驶汽车。
  2. 视频内容分析

    • 在视频流分析中,YOLOv3可以实时识别和跟踪多个对象,适用于安全监控、交通管理和体育赛事分析等领域。
  3. 无人机和机器人导航

    • 用于无人机和机器人的视觉系统中,实现对环境的快速理解和导航。
  4. 工业自动化和检测

    • 在工业自动化领域,YOLOv3可用于产品质量检查,例如检测制造缺陷。

5.2 局限性

  1. 对小对象的检测

    • 虽然YOLOv3比其前两个版本在小对象检测上有所改进,但它仍然在处理小尺寸对象时表现不如一些其他的目标检测模型。YOLOv3通过多尺度预测提高了对小对象的检测能力,但在某些情况下仍可能错过一些小的或密集的对象。
  2. 中型和大型对象的表现

    • YOLOv3在处理中型和大型对象时表现良好,但其性能可能因对象的形状和尺寸的多样性而有所不同。尽管如此,它通常能够提供较为准确的边界框和类别识别。
  3. 边界框对齐问题

    • YOLOv3在边界框与对象完美对齐方面存在一定的挑战,尤其是在较高的交并比(IoU)阈值下。这意味着尽管它能有效地定位对象,但有时可能无法非常精确地覆盖对象的完整区域。
  4. 背景误判和重复检测

    • 在某些情况下,YOLOv3可能会将背景错误地识别为对象,或对同一个对象进行重复检测。

总的来说,YOLOv3是一个强大且多才多艺的目标检测工具,尤其适用于需要快速响应的应用场景。然而,它在处理小对象、完美边界框对齐以及高IoU阈值下的性能上仍有改进空间。


参考资料

  1. Redmon, Joseph, and Ali Farhadi. “Yolov3: An Incremental Improvement.” arXiv Preprint arXiv:1804.02767, 2018.
  2. He, Kaiming, et al. “Deep Residual Learning for Image Recognition.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2016, pp. 770–78.

总结

YOLOv3是一个在目标检测领域具有里程碑意义的模型,它通过创新的网络架构和算法优化,实现了快速且准确的目标检测。其核心特点包括Darknet-53网络架构、多尺度预测、使用锚框进行边界框预测、类别预测和对象检测的结合,以及有效的损失函数设计。YOLOv3在实时目标检测方面表现出色,尤其适用于需要快速响应的场景,如视频监控和自动驾驶。然而,它在小对象检测和边界框对齐方面仍有改进空间。总体来看,YOLOv3的出现不仅推动了目标检测技术的发展,也为未来的研究和应用提供了重要的启示和基础。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【ArcGIS Pro微课1000例】0039:制作全球任意经纬网的两种方式

本文讲解在ArcGIS Pro中制作全球任意经纬网的两种方式。 文章目录 一、生成全球经纬网矢量1. 新建地图加载数据2. 创建经纬网矢量数据二、布局生成经纬网1. 新建布局2. 创建地图框2. 创建经纬网一、生成全球经纬网矢量 以1:100万比例尺地图分幅为例,创建经差6、维差4的经纬网…

CMake构建工具

文章目录 CMake构建工具1.概念2.mk文件3.CmakeList4.预编译 CMake构建工具 1.概念 Android构建原始库的工具,对mk构建工具封装,还是makefile。 加载lib库 2.mk文件 //call调用test-dir这个方法,返回mk文件的路径,LOCAL_PATH这…

Hdoop学习笔记(HDP)-Part.19 安装Kafka

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

004、简单页面-基础组件

之——基础组件 目录 之——基础组件 杂谈 正文 1.Image 1.0 数据源 1.1 缩放 1.2 大小 1.3 网络图片 2.Text 2.0 数据源 2.1 大小 2.2 粗细 2.3 颜色 2.5 样式字体 2.6 基础示例 2.7 对齐 2.8 省略 2.9 划线 3.TextInput 3.1 输入类型 3.2 提示文…

TwinCAT3一个PLC设备里多个程序工程之间通讯

目录 1、创建TwinCAT3工程,再分别创建两个PLC程序工程 2、PLC1工程中添加如下代码,然后编译重新生成PLC1工程 3、PLC2工程中添加如下代码,然后编译重新生成PLC2工程 4、变量关联 5、一个PLC运行多个PLC工程设置 7、工程下载链接 1、创建…

智能优化算法应用:基于乌燕鸥算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于乌燕鸥算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于乌燕鸥算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.乌燕鸥算法4.实验参数设定5.算法结果6.参考文献7.…

SATA模块物理层OOB信号分析总结(三)

目录 一、简介二、总体解析2.1 OOB作用2.2 OOB信号的组成2.3 总体phy link过程2.4 整体PHY LINK Trace2.5 PHY LINK状态查询 三、其他相关链接1、SATA模块之HBA卡开发总结(一)2、SATA信息传输FIS结构总结(二)3、PCIe物理层总结-PC…

1-算法基础-编程基础

1.基本数据类型 char ch A; char s[] "hello";2.const定义常量 const int N 1e5 9;//const定义常量&#xff0c;后续不可被修改 int a[N];3.万能头文件 C11等可用 #include<bits/stdc.h> using namespace std;4.typedef typedef long long kk; kk a[20…

DQN原理及PyTorch实现【强化学习】

NSDT工具推荐&#xff1a; Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器 - REVIT导出3D模型插件 - 3D模型语义搜索引擎 欢迎来到我们的强化学习系列的第三部分。 在上两篇博客中&#xff0c;我们介绍了强化学习中…

C++算法入门练习——最短路径-多路径

现有一个共n个顶点&#xff08;代表城市&#xff09;、m条边&#xff08;代表道路&#xff09;的无向图&#xff08;假设顶点编号为从0到n-1&#xff09;&#xff0c;每条边有各自的边权&#xff0c;代表两个城市之间的距离。求从s号城市出发到达t号城市的最短路径条数和最短路…

Gitee 之初体验(上)

我们在项目开发或者自己学习的时候&#xff0c;总会存在这样的问题&#xff1a; 在一台电脑上编写完代码&#xff0c;想要再另外一台电脑上再去写&#xff0c;再或者和其他人一起协作等等场合&#xff0c;代码传来传去很麻烦。 这个时候&#xff0c;我们就可以去使用代码管理工…

想进国家电网,电气类专业都有哪些就业方向呢?

电气工程及自动化专业的主干课程都有哪些&#xff0c;笔者跟你分享一下就业方向都有哪些主要课程呢&#xff1f;包含电路原理、模拟电子技术、数字电子技术工程、电磁场、微机原理与接口技术、自动控制原理、电机学、电力电子技术、电力系统分析等等。 电气类专业都有哪些就业方…

MySQL 8.2 Command Line Client闪退

原因一 服务没有打开 原因二 找不到my.ini文件 原因一的解决方法 操作1进入管理 操作2选择服务 1 2 3 操作3选择MySQL服务并打开 原因二的解决方法 查找目录中是否有my.ini文件 C:\Program Files\MySQL\MySQL Server 8.2&#xff08;一般在这个目录下&#xff09; 有时…

C指针介绍(1)

文章目录 每日一言指针的简单介绍内存和地址指针在内存中的存储指针的定义和声明泛型指针 指针的关系运算算数运算关系运算 结语 每日一言 ⭐「 一声梧叶一声秋&#xff0c;一点芭蕉一点愁&#xff0c;三更归梦三更后。 」–水仙子夜雨-徐再思 指针的简单介绍 C语言指针是C语…

wvp如果确认音频udp端口开放成功

用到工具 在服务器上开启端口监听 选中udp server&#xff0c;点击创建按钮 设置服务器监听端口 在客户端连接服务器端口 选中udp客户端&#xff0c;点击创建 输入服务器地址 远程端口和本地端口&#xff0c;本地端口只要没被占用都可以使用 &#xff0c;点击确认 发送数据 …

万界星空科技智能工厂主要建设模式

由于各个行业生产流程不同&#xff0c;加上各个行业智能化情况不同&#xff0c;智能工厂有以下几个不同的建设模式。 第一种模式&#xff1a;是从生产过程数字化到智能工厂 在石化、钢铁、冶金、建材、纺织、造纸、医药、食品等流程制造领域&#xff0c;企业发展智能制造的内在…

代码随想录刷题题Day4

刷题的第四天&#xff0c;希望自己能够不断坚持下去&#xff0c;迎来蜕变。&#x1f600;&#x1f600;&#x1f600; 刷题语言&#xff1a;C / Python Day4 任务 ● 24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个节点 ● 面试题 02.07. 链表相交 ● 142.环形链表II 1 …

使用 OpenFunction 在任何基础设施上运行 Serverless 工作负载

作者&#xff1a; 霍秉杰&#xff1a;KubeSphere 可观测性、边缘计算和 Serverless 团队负责人&#xff0c;Fluent Operator 和 OpenFunction 项目的创始人&#xff0c;还是多个可观测性开源项目包括 Kube-Events、Notification Manager 等的作者&#xff0c;热爱云原生技术&am…

Spring MVC学习随笔-控制器(Controller)开发详解:控制器跳转与作用域(一)

学习视频&#xff1a;孙哥说SpringMVC&#xff1a;结合Thymeleaf&#xff0c;重塑你的MVC世界&#xff01;&#xff5c;前所未有的Web开发探索之旅 第五章、SpringMVC控制器开发详解 三 5.1 核心要点 3.流程跳转 5.2 JavaWeb中流程跳转的核心回顾 5.2.1 JavaWeb中流程跳转的核…

【教学类-06-12】20231202 0-9数字分合-房屋样式(一)-下右空-升序-抽7题

作品展示-屋顶分合&#xff08;0-9之间随机抽取7个不重复分合&#xff09; 背景需求&#xff1a; 大班幼儿学分合题&#xff0c;通常区角里会设计一个“房屋分合”的样式 根据这种房屋样式&#xff0c;设计0-9内的升序分合题模板 素材准备 WORD样式 代码展示&#xff1a; 2-9…