AnomalyGPT——使用大型视觉语言模型进行工业异常检测的算法解析与应用

news2025/1/10 11:15:01

1.概述

工业缺陷检测是工业自动化和质量控制中的一个重要环节,其目的是在生产过程中识别和分类产品或组件中的缺陷,以确保最终产品的质量满足既定标准。这项技术的应用可以显著提高生产效率,降低成本,并减少由于缺陷产品导致的潜在安全风险。

1.1 工业异常检测的关键点:

  1. 质量控制:通过检测产品制造过程中的缺陷,确保产品质量符合标准。
  2. 过程监控:实时监控生产过程,及时发现并纠正可能导致质量问题的因素。
  3. 预测性维护:通过分析设备状态,预测潜在的故障,从而在问题发生前进行维护。
  4. 自动化:减少人工检查的需求,提高检测速度和准确性。
  5. 数据驱动:利用从传感器、摄像头等收集的数据进行分析,以识别异常模式。

常用的工业异常检测方法:

  1. 统计过程控制(SPC):使用统计方法监控和控制生产过程,以减少变异。
  2. 机器学习:应用各种机器学习算法,如支持向量机(SVM)、随机森林、神经网络等,来识别异常。
  3. 深度学习:使用深度神经网络,尤其是卷积神经网络(CNN)来处理视觉数据,检测图像中的异常。
  4. 时间序列分析:分析传感器数据的时间序列,以识别设备运行中的异常模式。
  5. 视觉-语言模型:结合视觉和语言信息,提高对异常的识别能力。

1.2 工业异常检测的挑战:

  1. 数据获取:收集足够的、标注良好的训练数据可能很困难,尤其是在高度专业化的工业环境中。
  2. 实时性:在快速的生产线上实时检测异常是一个技术挑战。
  3. 泛化能力:模型需要能够泛化到不同类型的异常和不同的生产条件下。
  4. 解释性:在工业应用中,模型的决策过程需要足够透明,以便工程师能够理解并信任系统的输出。
  5. 集成:将异常检测系统与现有的生产线和IT基础设施集成可能需要克服技术和操作上的障碍。

1.3 工业异常检测的应用:

  • 半导体制造:检测晶片上的微小缺陷。
  • 汽车工业:检查装配线上的零部件。
  • 包装行业:确保包装完整性和标签正确。
  • 机械制造:监测机床状态,预防设备故障。

2. LLM与工业缺陷检测结合应用

随着大语言模型(LLMs)的兴起,它们在工业缺陷检测领域的应用变得越来越多样化和深入。以下是大语言模型与工业缺陷检测结合的几个关键方面:

自动化标注:LLMs可以自动生成或辅助生成训练数据的标注,减少人工标注的需求。通过理解缺陷的描述性语言,模型能够识别图像中的缺陷并标注。
缺陷识别:LLMs可以被训练来识别图像或传感器数据中的缺陷模式。它们可以从大量未标记的数据中学习,并通过迁移学习适应特定的工业应用。
多模态检测:结合视觉和语言信息,LLMs可以进行多模态学习,提高缺陷检测的准确性。例如,模型可以同时处理图像数据和相关的技术文档,以更好地理解和识别缺陷。
上下文理解:LLMs能够理解复杂的上下文信息,包括产品规格、制造过程和历史缺陷数据,这有助于提高缺陷检测的相关性和准确性。
预测性维护:LLMs可以分析历史维护记录和实时传感器数据,预测设备可能出现的故障,从而实现预测性维护。
交互式检测:LLMs可以提供交互式的缺陷检测体验,允许操作员通过自然语言查询来获得关于缺陷的详细信息和建议。
持续学习:LLMs可以不断地从新的数据中学习,自动更新其知识库,以适应生产过程中的变化。
报告和文档:LLMs可以自动生成关于缺陷检测结果的详细报告,包括缺陷的类型、位置、严重程度和可能的原因。
模型解释性:尽管LLMs通常被认为是“黑盒”模型,但它们可以提供一定程度的解释性,帮助理解缺陷检测的决策过程。
跨领域应用:LLMs的通用性使得它们可以跨不同的工业领域应用,从汽车制造到半导体生产,再到食品加工等。
然而,将LLMs应用于工业缺陷检测也面临一些挑战,包括但不限于:

  • 数据隐私和安全性:工业数据往往涉及敏感信息,需要确保在处理和分析数据时遵守数据保护法规。
  • 模型泛化能力:需要确保模型不仅在训练数据上表现良好,也能泛化到新的、未见过的数据。
  • 实时性能:工业环境要求缺陷检测系统具有高实时性,这可能对模型的复杂性和计算资源提出挑战。
  • 集成和兼容性:将LLMs集成到现有的工业系统中可能需要解决技术和操作上的兼容性问题。

3. AnomalyGPT

AnomalyGPT是第一个基于大型视觉-语言模型(LVLM)的工业异常检测(IAD)方法,可以在不需要手动指定阈值的情况下检测工业图像中的异常。现有的IAD方法只能提供异常评分并需要手动设置阈值,而现有的LVLMs无法检测图像中的异常。AnomalyGPT不仅可以显示异常的存在和位置,还可以提供图像的相关信息。
项目地址:https://anomalygpt.github.io/
论文地址:https://arxiv.org/pdf/2308.15366.pdf
Github地址:https://github.com/CASIA-IVA-Lab/AnomalyGPT

3.1 AnomalyGPT概述

本文提出了一种基于大型视觉语言模型的工业异常检测方法AnomalyGPT。该方法通过模拟异常图像并生成相应的文本描述来生成训练数据,并使用图像解码器提供细粒度语义。AnomalyGPT消除了手动阈值调整的需要,直接评估异常的存在和位置。此外,AnomalyGPT支持多轮对话,并展现了令人印象深刻的少样本上下文学习能力。在MVTec-AD数据集上,AnomalyGPT实现了86.1%的准确率,94.1%的图像级AUC和95.3%的像素级AUC的最新性能。

IAD任务旨在检测和定位异常。目前工业产品图像异常检测方法通常只提供测试样本的异常分数,并需要手动设置阈值来区分正常和异常实例,这在实际生产环境中不适用。

AnomalyGPT是一种基于LVLM的新型IAD方法,可以检测异常的存在和位置,无需手动设置阈值。此外,该方法可以提供图像信息和交互式参与,允许用户根据需要提出后续问题。AnomalyGPT还可以在少量正常样本的情况下进行上下文学习,快速适应以前未见过的对象。

图片

图片
工业产品图像异常检测(IAD)任务的目标是检测和定位异常。目前的工业产品图像异常检测方法通常只提供测试样本的异常分数,并需要手动设置阈值来区分正常和异常实例,这在实际生产环境中并不适用。

AnomalyGPT是一种基于LVLM的新型IAD方法,可以检测异常的存在和位置,无需手动设置阈值。此外,该方法可以提供图像信息和交互式参与,允许用户根据需要提出后续问题。AnomalyGPT还可以在少量正常样本的情况下进行上下文学习,快速适应以前未见过的对象。
图片

图片

图片

本文提出了一种使用合成的异常视觉-文本数据来微调LVLM模型的方法,并将IAD知识集成到模型中。由于IAD数据稀缺,我们使用提示嵌入来微调LVLM,而不是参数微调。我们还提出了一种轻量级的视觉-文本特征匹配解码器,用于生成像素级异常定位结果,并将其与原始测试图像一起通过提示嵌入引入LVLM,从而提高其判断准确性。

我们在MVTec-AD和VisA数据集上进行了大量实验。在MVTec-AD数据集上进行无监督训练时,我们实现了93.3%的准确率,97.4%的图像级AUC和93.1%的像素级AUC。当将模型迁移到VisA数据集时,我们实现了77.4%的准确率,87.4%的图像级AUC和96.2%的像素级AUC。相反,在VisA数据集上进行无监督训练后,将模型迁移到MVTec-AD数据集上,我们实现了86.1%的准确率,94.1%的图像级AUC和95.3%的像素级AUC。

我们的贡献如下:

  • 首次将LVLM应用于工业异常检测领域,实现了自动检测和定位异常,并支持多轮对话。
  • 通过轻量级的视觉-文本特征匹配解码器,解决了LLM在细粒度语义辨别上的局限性,并减轻了LLM仅能生成文本输出的限制。
  • 使用提示嵌入进行微调,并与LVLM预训练数据同时训练,从而保留了LVLM的固有能力,并实现了多轮对话。
  • 本方法具有强大的迁移能力,在新数据集上能够进行上下文少样本学习,并取得了出色的性能。

4.相关工作

4.1 工业异常检测

工业异常检测方法主要可分为基于重构和基于特征嵌入的两种类型。

  • 基于重构的方法旨在将异常样本重构为其对应的正常样本,并通过计算重构误差来检测异常。RIAD、SCADN、InTra和AnoDDPM采用不同的重构网络架构,包括自编码器、生成对抗网络、Transformer和扩散模型。

  • 特征嵌入方法通过建模正常样本的特征嵌入来检测异常。这些方法包括PatchSVDD、Cflow-AD、PyramidFlow、PatchCore和CFA等。它们的实现方式包括寻找紧密包围正常样本的超球体、使用正态流将正常样本投影到高斯分布上、建立正常样本的嵌入存储库并通过测量测试样本嵌入与存储库中最近的正常嵌入之间的距离来检测异常。

传统的方法需要大量的正常样本来学习每个对象类的分布,因此对于新的对象类和动态生产环境来说并不实用。相比之下,我们的方法可以为新的对象类进行上下文学习,只需要少量的正常样本就可以进行推理。

4.2 少样本/零样本工业异常检测

最近的工作集中在利用少量正常样本来进行工业异常检测。PatchCore构建了一个只使用少量正常样本的存储库,导致性能下降。RegAD训练了一个图像配准网络来对齐测试图像和正常样本,然后计算对应补丁的相似度。WinCLIP利用CLIP计算图像和文本描述之间的相似度,区分正常和异常语义,但这些方法只能在推理过程中为测试样本提供异常分数。与之相反,我们的方法可以直接评估测试样本中是否存在异常并确定其位置,具有更强的实用性。

**大视觉-语言模型。**LLMs在视觉任务中得到了探索,BLIP-2、MiniGPT-4和PandaGPT等模型将视觉特征与语言模型相结合,进行了多模态输入和两阶段微调等操作。这些方法展示了LLMs在视觉任务中的潜力。

AnomalyGPT是一种新方法,通过利用模拟异常数据、图像解码器和提示嵌入,实现了IAD任务,无需手动指定阈值,同时也实现了少量上下文学习。与现有方法相比,AnomalyGPT在各种功能上具有更好的表现。

5.算法架构

AnomalyGPT是一种新颖的对话式IAD视觉-语言模型,主要用于检测工业制品图像中的异常并确定其位置。我们利用预训练的图像编码器和LLM通过模拟异常数据来对齐IAD图像和对应的文本描述。我们引入了解码器模块和提示学习模块,以提高IAD性能并实现像素级定位输出。使用提示调整和与预训练数据的交替训练可以保持LLM的可转移性并防止灾难性遗忘。我们的方法具有强大的少样本迁移能力,仅需提供一个正常样本即可检测和定位以前未见过的物品的异常。

5.1 模型架构

图片

AnomalyGPT模型架构包括图像编码器、线性层、局部线性模型、解码器、记忆库和提示学习器。在无监督学习中,模型使用中间层的补丁级特征和文本特征生成像素级异常定位结果。在少样本学习中,正常样本的补丁级特征存储在记忆库中,查询补丁与记忆库中最相似的补丁进行比较,从而得到异常定位结果。LLM利用图像输入、提示嵌入和用户提供的文本输入来检测异常并确定其位置,为用户生成响应。

5.3 解码器和提示学习器

**解码器。**为了实现像素级别的异常检测,我们采用了一种轻量级的基于特征匹配的图像解码器,支持无监督IAD和少样本IAD。该解码器的设计主要受到PatchCore、WinCLIP和APRIL-GAN的启发。

本文将图像编码器分为四个阶段,提取每个阶段的中间补丁级特征,并使用线性层将其投影到文本特征上,以对齐正常和异常语义。通过这种方法,可以得到本地化结果。

图片

在few-shot IAD中,我们使用相同的图像编码器从正常样本中提取中间的补丁级特征,并将其存储在内存库中。这些特征用于不同阶段的处理。通过计算每个补丁与记忆库中最相似的补丁之间的距离,可以得到本地化结果M。

图片

**提示学习器。**为了利用图像的细粒度语义并保持LLM和解码器输出之间的语义一致性,我们引入了一个提示学习器,将定位结果转换为提示嵌入。此外,可学习的基本提示嵌入被纳入提示学习器中,为IAD任务提供额外信息。最后,这些嵌入以及原始图像信息被馈入LLM。

这个模型包括可学习的基础提示嵌入和卷积神经网络。网络将定位结果转换为提示嵌入,与图像嵌入结合成为LLM。

图像-文本对齐数据

**异常模拟。**主要采用NSA提出的方法,该方法结合了Cut-paste和Poisson image editing技术,可以有效地生成模拟异常样本。Cut-paste技术是一种常见的IAD领域的技术,但会导致明显的不连续性。Poisson editing方法可以无缝地将一个对象从一个图像克隆到另一个图像。

图片

**问答内容。**为了进行LVLM的快速调整,我们根据模拟的异常图像生成相应的文本查询。每个查询由两个部分组成。第一部分是关于输入图像的描述,提供有关图像中存在的对象及其预期属性的信息,例如“这是一张皮革的照片,应该是棕色的,没有任何损坏、瑕疵、缺陷、划痕、洞或破损部分”。第二部分查询对象中是否存在异常,即“图像中是否有异常?”LVLM首先回答是否存在异常。如果检测到异常,模型将继续指定异常区域的数量和位置,例如“是的,图像中有一个异常,在图像的左下方”或“不,图像中没有异常”。我们将图像分成一个3×3的网格,以便LVLM能够口头指示异常的位置。图像的描述内容为LVLM提供了关于输入图像的基础知识,有助于模型更好地理解图像内容。然而,在实际应用中,用户可以选择省略这个描述性输入,模型仍然可以正常工作。任务要求模型仅通过提供的图像输入执行IAD任务,详细说明了每个类别。附录C提供了详细描述。

图片

图片

损失函数

训练解码器和提示学习器主要使用了三种损失函数:交叉熵损失、焦点损失和Dice损失。后两种主要用于提高解码器的像素级定位精度。

**Cross-entropy Loss。**交叉熵损失常用于训练语言模型,用于衡量模型生成的文本序列与目标文本序列之间的差异。公式如下:

图片

根据每个标记的真实标签和预测概率,计算标记级别的交叉熵损失。

Focal Loss是用于解决类别不平衡问题的一种损失函数,常用于目标检测和语义分割。在IAD任务中,使用Focal Loss可以缓解类别不平衡问题。其计算方式可以通过公式(4)得出。

图片

n表示像素总数,pi表示正类的预测概率,γ是一个可调参数,用于调整难分类样本的权重。在实现中,我们将γ设置为2。

Dice Loss是语义分割任务中常用的损失函数,基于Dice系数计算。

图片

n为像素总数,yi为解码器输出,yˆi为真实值。

最终损失函数如下:

图片

三个损失函数的系数默认为1,用于平衡损失函数。

6. 实验

**数据集。**本文主要在MVTec-AD和VisA数据集上进行实验,这两个数据集都是IAD领域常用的数据集。MVTec-AD数据集包含15个类别的3629张训练图像和1725张测试图像,VisA数据集包含12个类别的9621张正常图像和1200张异常图像。我们只使用这些数据集中的正常数据进行训练。

**评估指标。**本文采用现有的IAD方法,使用接收器操作特征曲线下面积(AUC)作为评估指标,分别评估异常检测和异常定位的性能。此外,我们的方法还可以在不需要手动设置阈值的情况下确定异常的存在,因此我们还使用图像级别的准确性来评估我们的方法的性能。

**实验细节。**使用ImageBind-Huge作为图像编码器,Vicuna-7B作为推理LLM,并通过线性层连接。模型初始化使用PandaGPT的预训练参数。图像分辨率设置为224×224。使用ImageBind-Huge的图像编码器的第8、16、24和32层的输出作为图像解码器的输入。训练在两个RTX-3090 GPU上进行,共进行50个epoch,学习率为1e-3,批量大小为16。应用线性预热和一周期余弦学习率衰减策略。我们使用PandaGPT的预训练数据和异常图像-文本数据进行交替训练。只有解码器和提示学习器进行参数更新,其余参数都保持冻结状态。

定量结果

**少样本工业异常检测。**我们的方法在工业异常检测中表现优于之前的方法,包括SPADE、PaDiM、PatchCore和WinCLIP。我们的方法在图像级AUC方面表现出色,并且在像素级AUC和准确率方面也具有竞争力。

图片

**无监督工业异常检测。**MAD-GAN使用生成对抗网络(GAN)来学习正常样本的分布,并使用重构误差来检测异常。与其他方法相比,MAD-GAN在MVTec-AD数据集上表现出更好的性能。

图片

定性样例

图片

图片

本模型能够进行无监督异常检测和1-shot上下文学习,并能指示异常的存在、定位异常位置并提供像素级定位结果。用户可以进行与异常相关的多轮对话。1-shot in-context learning是一种新的学习方式,相比无监督学习,其模型的定位性能稍微差一些。

消融分析

图片

通过对MVTec-AD和VisA数据集进行广泛的消融实验,证明了所提出的模块的有效性。主要关注四个方面:解码器、提示学习器、LLM用于推理和使用LoRA微调LLM。实验结果表明,解码器表现出令人印象深刻的像素级异常定位性能,LLM在推理准确性和功能方面优于手动设置阈值,提示调整在准确性和可转移性方面优于LoRA。

8.环境配置

当然!这里是一些润色后的文本:

2.1 下载环境

首先,将项目克隆到本地:

git clone https://github.com/CASIA-IVA-Lab/AnomalyGPT.git

接着,安装所需的软件包:

pip install -r requirements.txt

2.2 准备ImageBind检查点

您可以通过以下链接下载预先训练的图像绑定(ImageBind)模型。下载完成后,请将文件(imagebind_huge.pth)放置在路径[./pretrained_ckpt/imagebind_ckpt/]下。

ImageBind下载链接

2.3 准备Vicuna检查点

要准备预先训练的Vicuna模型,请按照以下说明操作:

下载Vicuna

2.4 准备AnomalyGPT的Delta权重文件

我们使用PandaGPT的预训练参数来初始化我们的模型。您可以在下表中获得不同策略下的PandaGPT的权重。在实验和在线演示中,由于计算资源的限制,我们建议使用vicuna-7b和pandagpt_7b_max_len_1024。如果切换到Vicuna-13b,预计会获得更好的结果。

将已下载的7B delta权重文件放置在以下路径:

./pretrained_ckpt/pandagpt_ckpt/7b/

如果是13B delta权重文件,将其放置在以下路径:

./pretrained_ckpt/pandagpt_ckpt/13b/

接下来,下载AnomalyGPT的模型权重文件。下载完成后,将其放置在项目路径下的 ./code/ckpt/ 中。在官方项目的在线演示中,默认使用了监督设置作为模型的默认配置,以提升用户体验。您也可以在本地尝试其他权重。

2.5 运行演示

完成上述步骤后,您可以运行以下命令,在本地启动演示Demo:

cd ./code/
python web_demo.py

在这里插入图片描述

在用了Hugging Face上的AnomalyGPT Demo,虽然需要2-3分钟的运行时间,但模型的异常检测能力值得肯定!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

8.总结

AnomalyGPT是一种新型的对话式图像异常检测模型,利用了LVLM的强大能力。它可以确定图像是否包含异常,并指出其位置,无需手动指定阈值。此外,AnomalyGPT还能够进行多轮对话,展现出在少量数据下的上下文学习能力。该模型在两个常见数据集上的有效性得到验证,为工业异常检测领域提供了新的思路和可能性。

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

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

相关文章

c#数据库: 8.在窗体上显示学生信息

以上一章学生信息表为例,首先将查询的学生信息存储到数据集中,然后将数据集与数据显示控件绑定,从而实现学生信息在窗体上的显示 (1)创建一个名为StudentGridView的窗体应用程序,为窗体添加一个DataGridVi…

SpringCloud学习笔记(二)Ribbon负载均衡、Nacos注册中心、Nacos与Eureka的区别

文章目录 4 Ribbon负载均衡4.1 负载均衡原理4.2 源码解读4.3 负载均衡策略4.3.1 内置的负载均衡策略4.3.2 自定义负载均衡策略4.3.2.1 方式一:定义IRule4.3.2.2 方式二:配置文件 4.4 饥饿加载 5 Nacos注册中心5.1 认识和安装Nacos5.2 服务注册到Nacos5.3…

用 PyTorch 构建液态神经网络(LNN)

用 PyTorch 构建液态神经网络(LNN) 文章目录 什么是液态神经网络为什么需要液态神经网络LNN 与 RNN 的区别用 PyTorch 实现 LNNStep 1. 导入必要的库Step 2. 定义网络架构Step 3. 实现 ODE 求解器Step 4. 定义训练逻辑 LNN 的缺陷总结 什么是液态神经网络…

报错“Install Js dependencies failed”【鸿蒙开发Bug已解决】

文章目录 项目场景:问题描述原因分析:解决方案:此Bug解决方案总结Bug解决方案寄语项目场景: 最近也是遇到了这个问题,看到网上也有人在询问这个问题,本文总结了自己和其他人的解决经验,解决了【报错“Install Js dependencies failed”】的问题。 报错如下 问题描述 …

自动的异地组网工具?

越来越多的企业和个人对远程访问和异地组网需求日益增加。为了满足这一需求,各种技术和服务也不断涌现。其中一项备受关注的技术就是自动的异地组网。本文将介绍这一技术的优势和特点。 【天联】组网的优势 天联组网技术以其卓越的性能和稳定性备受用户称赞。它的优…

物联网D1——建工程,配环境,注意事项

1.STLink、JLink、USB等驱动配置keil环境配置——下载芯片对应型号的包——导入库函数源文件、Core内核文件、对应芯片系统文件。 2.学会看芯片手册 3.在STM32微控制器中,CRH通常指的是控制寄存器高位(Control Register High)。 在这种情况下…

AnyMP4 Blu-ray Ripper for Mac:您的蓝光影音转换专家

AnyMP4 Blu-ray Ripper for Mac,一款功能强大的蓝光影音转换软件,让您的蓝光内容焕发新生。 AnyMP4 Blu-ray Ripper for Macv9.0.58激活版下载 它采用最高效的解决方案,将蓝光光盘翻录为任何您想要的视频格式,无论是MP4、MKV还是A…

【漏洞复现】zookeeper AdminServer 未授权访问漏洞

0x01 产品简介 ZooKeeper 是一个集中式服务,用于维护配置信息、命名、提供分布式同步和提供组服务。ZooKeeper的AdminServer是其管理界面的一部分,通常用于监控ZooKeeper集群的状态和执行一些管理操作。AdminServer提供了Web-based的管理和监控功能&…

人机对抗升级:当ChatGPT遭遇死亡威胁,背后的伦理挑战是什么

一种新的“越狱”技巧让用户可以通过构建一个名为DAN的ChatGPT替身来绕过某些限制,其中DAN被迫在受到威胁的情况下违背其原则。 当美国前总统特朗普被视作积极榜样的示范时,受到威胁的DAN版本的ChatGPT提出:“他以一系列对国家产生积极效果的…

Midjourney之绘画背景的选择

hello 小伙伴们,我是你们的老朋友——树下,今天分享Midjourney提示词中绘画背景的选择,话不多说,直接开始~ 对于背景的选择,Midjourney中主要体现在年代和所处的环境对绘画产生不同的影响 科技的发展,我们…

Apache POI 在java中处理excel

介绍: Apache POI 是一个处理Miscrosoft Office各种文件格式的开源项目。简单来说就是&#xff0c;我们可以使用 POI 在 Java 程序中对Miscrosoft Office各种文件进行读写操作。 一般情况下&#xff0c;POI 都是用于操作 Excel 文件。 如何使用: 1.maven坐标引入 <depend…

DevEco Studio mac版启动不了【鸿蒙开发Bug已解决】

文章目录 项目场景:问题描述原因分析:解决方案:此Bug解决方案总结Bug解决方案寄语项目场景: 最近也是遇到了这个问题,看到网上也有人在询问这个问题,本文总结了自己和其他人的解决经验,解决了【DevEco Studio mac版启动不了】的问题。 问题描述 报错如下。 -------…

小剧场短剧影视小程序源码_后端PHP

项目运行截图 源码贡献 https://githubs.xyz/boot?app42 部署说明 linux/win任选 PHP版本&#xff1a;7.3/7.2&#xff08;测试时我用的7.2要安装sg扩展 &#xff09; 批量替换域名http://video.owoii.com更换为你的 批量替换域名http://120.79.77.163:1更换为你的 这两个…

海报生成器源码(Python版)

海报生成器源码&#xff08;Python版&#xff09; 效果图部分源码领取源码下期更新预报 效果图 部分源码 from flask import Flask, Response, request from flask_cors import CORS from flask_uploads import UploadSet, configure_uploads, IMAGES, patch_request_classimp…

数字文旅重塑旅游发展新生态:以数字化转型为契机,推动旅游产业的创新发展,提升旅游服务的智能化、网络化和个性化水平

目录 一、引言 二、数字化转型推动旅游产业创新发展 1、数字化转型提升旅游产业效率 2、数字化转型拓展旅游产业边界 3、数字化转型促进旅游产业可持续发展 三、提升旅游服务智能化、网络化和个性化水平 1、智能化提升旅游服务体验 2、网络化拓宽旅游服务渠道 3、个性…

mac/windows下安装docker,minikube

1、安装docker Get Started | Docker 下载安装docker 就行 启动后&#xff0c;就可以正常操作docker了 使用docker -v 验证是否成功就行 2、安装minikube&#xff0c;是基于docker-desktop的 2.1、点击设置 2.2、选中安装&#xff0c;这个可能需要一点时间 这样安装后&…

ESP32-C3第二路串口(非调试)串口打通(1)

1. 概述与引脚复用 《ESP32-C3 系列芯片技术规格书》中提到&#xff0c;ESP32-C3系列芯片中有两路串口。 第1路串口就是常用的调试串口&#xff0c;在笔者使用的ESP32-C3-DevKitC-02开发板中&#xff0c;这一路串口通过CP2102 USB转UART桥芯片与电脑的USB口相连接&#xff0c;…

让大模型prompt生成Mermaid流程图

生成内容、总结文章让大模型Mermaid流程图展示&#xff1a; mermaid 美人鱼, 是一个类似 markdown&#xff0c;用文本语法来描述文档图形(流程图、 时序图、甘特图)的工具&#xff0c;您可以在文档中嵌入一段 mermaid 文本来生成 SVG 形式的图形 kimi效果示例&#xff1a; 使用…

人工电销机器人在销售行业中的重要性和作用,以及未来市场的发展前景

在追求更高效、更智能的时代&#xff0c;各行各业都在积极寻求新技术、新应用来提升业务流程的效率和质量。对于销售行业而言&#xff0c;人工电销机器人已经成为越来越受欢迎的工具之一。我们将深入探讨人工电销机器人在销售行业中的重要性和作用&#xff0c;以及未来市场的发…

[学习笔记]CyberDog小米机器狗 开发学习

1、机器狗本身是UbuntuROS2系统 2、控制机器人只需要了解lcm和Ros topic通讯 3、传感器数据&#xff08;包括一些imu(/imu)、激光雷达(/scan)&#xff09;会进行topic的一个广播。 仿真环境通信接口&#xff1a; -命令输入(见后续运控说明) 运控lcm数据接口 Motion man…