Stable Diffusion WebUI 控制网络 ControlNet 插件实现精准控图-详细教程

lineart_100.png

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里,订阅后可阅读专栏内所有文章。

大家好,我是水滴~~
本文主要介绍 Stable Diffusion WebUI 一个比较重要的插件 ControlNet(控制网络),主要内容有:ControlNet 的工作原理、如果安装 ControlNet 插件、如何使用 ControlNet 插件、ControlNet 官方的 14 种模型及对应预处理器等。
文章内容包含大量的图例,希望能够帮助新手同学快速入门。

文章目录

  • 前言
  • 一、ControlNet 的工作原理
  • 二、安装 ControlNet 插件
    • 2.1 下载模型
    • 2.2 下载预处理器
  • 三、使用 ControlNet 插件
    • 3.1 参考图上传
    • 3.2 控制选项
    • 3.3 预处理器与模型筛选
    • 3.4 控制参数
  • 四、ControlNet 模型和预处理器
    • 4.1 Canny(硬边缘)
      • 模型信息
      • 预处理器与效果展示
    • 4.2 Depth(深度)
      • 模型信息
      • 预处理器与效果展示
      • 手部修复预处理器与效果展示
    • 4.3 Normal Map(法线贴图)
      • 模型信息
      • 预处理器与效果展示
    • 4.4 OpenPose(姿态)
      • 模型信息
      • 预处理器与效果展示
    • 4.5 MLSD(线条检测)
      • 模型信息
      • 预处理器与效果展示
    • 4.6 Lineart(线稿)
      • 模型信息
      • 预处理器与效果展示
    • 4.7 Anime Lineart(动漫风格线稿)
      • 模型信息
      • 预处理器与效果展示
    • 4.8 SoftEdge(软边缘)
      • 模型信息
      • 预处理器与效果展示
    • 4.9 Scribble/Sketch(涂鸦/草稿)
      • 模型信息
      • 预处理器与效果展示
    • 4.10 Segmentation(语义分割)
      • 模型信息
      • 预处理器与效果展示
    • 4.11 Shuffle(随机化)
      • 模型信息
      • 预处理器与效果展示
    • 4.12 Tile/Blur(分块/模糊)
      • 模型信息
      • 预处理器与效果展示
    • 4.13 Inpaint(局部重绘)
      • 模型信息
      • 预处理器与效果展示
    • 4.14 Instruct P2P(指令引导)
      • 模型信息
      • 效果展示


前言

ControlNet(控制网络)是一种先进的神经网络架构,它为基于扩散模型的 AI 绘画流程引入了精确的控制机制。通过整合额外的条件约束,ControlNet 显著增强了图像生成的可预测性和指导性。

在 ControlNet 的辅助下,用户能够对生成的艺术作品进行细致入微的指导,实现对构图、色彩、风格等多维度因素的把控,从而满足各种复杂场景和个性化需求。

这一技术为 AI 绘画领域带来了革命性的突破,使得 AI 绘画能够更好地满足用户的具体需求,成为一种真正的生产力工具。

下面是 ControlNet 相关的官方地址:

项目链接地址
论文https://arxiv.org/abs/2302.05543
ControlNethttps://github.com/lllyasviel/ControlNet
ControlNet 1.1https://github.com/lllyasviel/ControlNet-v1-1-nightly
sd-webui-controlnethttps://github.com/Mikubill/sd-webui-controlnet
模型下载https://huggingface.co/lllyasviel/ControlNet-v1-1/tree/main
在线体验https://stablediffusionweb.com/zh-cn/ControlNet

一、ControlNet 的工作原理

ControlNet 通过引入额外的条件来控制扩散模型的图像生成。这些条件可以是用户指定的图像特征、风格或者是某种特定的构图要求。在训练过程中,ControlNet 学习如何根据这些条件来调整扩散模型的参数,从而生成符合用户期望的图像。

具体来说,ControlNet 可以与任何稳定扩散模型一起使用,其最基本的形式是文本到图像的生成。除了使用文本提示作为条件来引导图像生成外,ControlNet 还增加了额外的条件,这些条件可以是用户提供的参考图像中的构图或人体姿势等。通过结合这些条件,ControlNet 能够生成与文本提示和参考图像更加匹配的图像。

如下图所示,输入一张跳舞的图片,ControlNet 会使用 Canny 边缘检测器检测其轮廓,并将其保存为控制图。然后,这张控制图被输入到 ControlNet 模型中,AI 就能够读懂图片上的人物轮廓。最终,大模型会结合提示词和控制图来生成相同轮廓的人物图片。

从输入图片中提取特定信息的过程称为预处理(annotator),每个 ControlNet 模型都与之对应的多种预处理器,这些预处理器能够完成不同精细度的控制。而存储这些控制信息的图片称为控制图(control map),这一控制图就如同一张精确的导航图,为后续的图像生成提供了明确的指引。在 ControlNet 1.1 版本中,一共有 14 种模型来处理不同方面的控制,这些模型还可以组合使用,产生复合控制的效果。

二、安装 ControlNet 插件

在 Stable Diffusion WebUI 中,ControlNet 是一种扩展插件,使用前我们需要先安装 sd-webui-controlnet 插件。

首先,在 Stable Diffusion WebUI 界面中打开“扩展”选项卡,再选择“从网址安装”选项卡,在“扩展的GitHub仓库地址”文本框中输入下面地址,然后点击“安装”按钮:

https://github.com/Mikubill/sd-webui-controlnet

image.png

等待几分钟后,出现下图中的提醒表示安装完成,该插件会被安装在 \extensions\sd-webui-controlnet目录中:
image.png

在“已安装”选项卡中可以看到该插件,点击“应用并重启用户界面”会重启 Stable Diffusion WebUI:
image.png

重启后,在“生成参数”里就能看到"ControleNet"了:
image.png

2.1 下载模型

安装 sd-webui-controlnet 插件时并不会为我们下载模型,需要我们手动下载。你可以从 HuggingFace 中下载(14个模型和它们的配置文件),或者从我分享的网盘中下载。

网盘地址:https://pan.quark.cn/s/6d4715c8c927。

c49408470c63cf5d1e834410b6ef538.png

下载完成后,将模型文件放到 \extensions\sd-webui-controlnet\models目录中:
image.png

最后,在 ControlNet 界面,点击“刷新”按钮,“模型”就出来了:
image.png

2.2 下载预处理器

sd-webui-controlnet 还有很多预处理器需要提前下载,否则会在“预览”的时候自动下载,很耗费时间。这些文件我也上传到了我的网盘,直接去下载即可。

网盘地址:https://pan.quark.cn/s/df4af462337a

image.png

下载完成后,将预处理器文件放到 \extensions\sd-webui-controlnet\annotator\downloads目录中:
image.png

三、使用 ControlNet 插件

安装好 ControleNet 插件后,就可以在“生成参数”中找到该功能了:
image.png
点击右侧的“三角”图标,即可展开 ControleNet:
image.png

3.1 参考图上传

有三种上传参考图的方式:
(1)单张图像,可以上传一张参考图:
image.png
(2)批量处理,可以指定图片目录:
image.png
(3)Multi-Inputs,可以同时上传张参考图:
image.png

3.2 控制选项

上传参考图功能下面还有一些选项:
image.png

  • 启用(Enable):只有勾选上“启用”复选框,该控制单元才会生效。
  • 显存优化(Low VRAM):当显存小于 6G 时,可以勾选,但会减低处理速度。
  • 完美像素模式(Pixel Perfect):有翻译成“自动设置预处理器分辨率”的。此选项旨在使生成的图片达到理想的像素状态。当启用时,ControlNet会尝试优化生成的图像,使其在像素级别上更接近预期的结果。通常我们勾选上。
  • 开户预览(Allow Preview):当需要提前看下预处理器生成的控制图时,可以勾选上。

3.3 预处理器与模型筛选

预处理器与模型筛选(Control Type)部分就是我们选择预处理器和 ControlNet 模型的地方了:
image.png
当我们点击一个类型后,如硬边缘,下面的“预处理器”和“模型”会自动筛选,我们就可以选择不同的“预处理器”了:
image.png
点击“预处理器”右边的“爆炸”按钮,还可以提前预览控制图:
image.png

3.4 控制参数

在模型下面还有一些控制选项:
image.png

  • 控制强度(Control Weight):代表使用 ControlNet 生成图片的权重占比影响。
  • 控制介入时机(Starting Control Step):表示从多少百分比的采样步数开始控制,默认0表示从开始就介入。
  • 控制结果时机(Ending Control Step):表示从多少百分比的采样步数结束控制,默认1表示直至结束。
  • 控制模式(Control Mode):可以选择生成的图片是以“提示词”为主,还是以“ControlNet”为主,使用默认的“均衡”即可。
  • 缩放模式(Resize Mode):当生成的图片与参考图不一致时,调整图像的模式。使用默认的剪裁原图即可,这样不会失真。

四、ControlNet 模型和预处理器

从 ControlNet 1.1 开始使用标准的命名规则(SCNNR)来命名所有模型:
1.png
ControlNet 1.1 为我们提供 14 个模型,其中 11 个生产就绪模型和 3 个实验模型,并且它们都是 SD1.5 版本:

control_v11p_sd15_canny
control_v11p_sd15_mlsd
control_v11f1p_sd15_depth
control_v11p_sd15_normalbae
control_v11p_sd15_seg
control_v11p_sd15_inpaint
control_v11p_sd15_lineart
control_v11p_sd15s2_lineart_anime
control_v11p_sd15_openpose
control_v11p_sd15_scribble
control_v11p_sd15_softedge
control_v11e_sd15_shuffle
control_v11e_sd15_ip2p
control_v11f1e_sd15_tile

下面我们通过不同的控制方法,来分别介绍每一种模型的使用:

4.1 Canny(硬边缘)

Canny(硬边缘)在 ControlNet 中是一种重要的边缘检测模型,它主要用于识别并提取图像中的边缘特征。使用此模型生成的图像会遵循原图的轮廓,能够最大程度的还原照片。

模型信息

模型文件:control_v11p_sd15_canny.pth
配置文件:control_v11p_sd15_canny.yaml
预处理器:

  • canny:边缘检测,用于提取图像的轮廓,保留原始图像的构图。Canny 算法
  • invert (from white bg & black line):反色处理,仅针对“白色背景黑色线条”的图像,例如:线稿

预处理器与效果展示

下图为canny预处理器生成的控制图和效果图:
canny_3.png
下图为invert预处理器生成的控制图和效果图:
invert_11.png

4.2 Depth(深度)

Depth(深度)用于生成立体深度图的,这张深度图能够反映出图像中各个部分的空间位置关系。在深度图中,亮度越高的区域代表该部分在空间中越靠前,而越暗或越灰的区域则表示该部分在空间中越靠后。这样的深度信息对于保持图像中物体的相对位置和层次感是非常重要的。

模型信息

模型文件:control_v11f1p_sd15_depth.pth
配置文件:control_v11f1p_sd15_depth.yaml
预处理器:

  • depth_midas:经典的深度估计器。
  • depth_leres:更多细节,但也倾向于渲染背景。
  • depth_leres++:比 depth_leres 有更多的细节。
  • depth_zoe:细节程度介于 Midas 和 Leres 之间。
  • depth_anything:新的、增强的深度模型(推荐)。
  • depth_hand_refiner:只用于修复手部(局部重绘)。

预处理器与效果展示

原图:
depth_1.png
下图为前五个预处理器生成的控制图和效果图:
depth_100_副本.png

手部修复预处理器与效果展示

下图为depth_hand_refiner预处理器生成的控制图和修复手部效果图:
depth_hand_refiner_2.png
手部修复比较特殊,它是在“图生图”的“局部重绘”中操作的,具体步骤如下:
(1)首先,在“局部重绘”中上传原图,并使用画笔工具将坏的手部遮住:
image.png
(2)然后,拉到下面的 “ControlNet 控制单元”勾选“启用”和“使用独立的控制图像”,并将上传原图;预处理器选择depth_hand_refiner,模型选择 control_v11f1p_sd15_depth;如果“开启预览”,还可以点击“爆炸”图标进行预览:
image.png
(3)点击“生成”后,便会生成一张修复好的图片:
image.png

4.3 Normal Map(法线贴图)

在计算机图形学中,法线贴图(Normal Map)是一种特殊类型的纹理,它使用颜色信息来模拟物体表面的微观细节和凹凸感。通常,法线图会使用三种颜色通道(红、绿、蓝)来存储这些信息,每种颜色代表空间中的一个方向,共同确定每个像素点表面上的一个垂直向量,即法线向量。这个法线向量告诉渲染系统光线如何与物体表面交互,从而创造出更加真实的光照效果。
在 ControlNet 的背景下,Normal Map(法线贴图)的概念被用来控制 AI 图像生成过程中的光影效果。通过输入法线图,AI 模型能够更好地理解物体的三维结构和表面细节,从而在生成的图像中模拟出更加准确的光照和阴影效果。这在需要精确控制物体表面细节和光影关系的场合非常有用,比如在游戏开发、电影特效制作或者任何需要高质量3D渲染的应用中。

模型信息

模型文件:control_v11p_sd15_normalbae.pth
配置文件:control_v11p_sd15_normalbae.yaml
预处理器:

  • normal_bae:这个预处理器主要用于还原图片主体的凹凸起伏特征,以及背景的凹凸起伏特征。它能够处理后生成的图片对于原图的还原程度和细节的把控以及质感的表达都非常的高。
  • normal_dsine:最新的算法,更丰富的细节(推荐)。
  • normal_midas:这个预处理器被认为是较为落后的算法,不建议使用,在非特殊情况下请选用 normal_bae

预处理器与效果展示

原图:
00034-2194766759.png
下图为这三个预处理器生成的控制图和效果图:
normal2.png
normal_4.png

4.4 OpenPose(姿态)

OpenPose(姿态)可以检测人体的关键点,例如:头、肩膀、手的位置等。主要用于复制人体的姿势,而无需关心服装、发型、背景等信息。相比 Canny 模型,OpenPose 给 AI 更多的发挥空间。

模型信息

模型文件:control_v11p_sd15_openpose.pth
配置文件:control_v11p_sd15_openpose.yaml
预处理器:

  • openpose:仅姿态。是最基本的 OpenPose 处理器,可检测眼睛、鼻子、眼睛、颈部、肩膀、肘部、手腕、膝盖和脚踝的位置。
  • openpose_faceonly:仅面部细节。仅检测面部而不检测其他关键点。
  • openpose_face:姿态+面部细节。会检测姿态和面部细节。
  • openpose_hand:姿态+手部细节。会检测姿态和手部细节。
  • openpose_full:姿态+面部细节+手部细节。会检测姿态、面部细节和手部细节。
  • dw_openpose_full:姿态+面部细节+手部细节。使用 DWPose 新的算法,是 openpose_full 的增强版本(推荐)。

预处理器与效果展示

原图:
00050-4061084683.png
下图为这六种预处理器生成的控制图和效果图:
openpose_100.png

4.5 MLSD(线条检测)

MLSD(Mobile Line Segment Detection,线条检测)用于检测直线,对于提取具有直边的轮廓非常有用(曲线将被忽略),例如:室内设计、建筑物、街景、相框、纸张边缘等。

模型信息

模型文件:control_v11p_sd15_mlsd.pth
配置文件:control_v11p_sd15_mlsd.yaml
预处理器:

  • mlsd:直线检测
  • invert (from white bg & black line):反色处理,仅针对“白色背景黑色线条”的图像,例如:线稿

预处理器与效果展示

下图为mlsd预处理器生成的控制图和效果图:
mlsd_2.png
下图为invert预处理器生成的控制图和效果图:
invert_2.png

4.6 Lineart(线稿)

Lineart(线稿)是一个专门用于提取线稿的模型,提取的线稿一般可以用作上色等后续创作的基础。这个模型可以针对不同类型的图片进行不同的处理,如动漫图片和素描图片。对于动漫图片,预处理器模型可以选择 lineart_animelineart_anime_denoise,后者比前者细节更丰富一些;对于素描图片,建议使用lineart_coarse预处理器,它能从图片中粗略提取线稿图,忽略不突出的细节,生成图片时自由度更高。

模型信息

模型文件:control_v11p_sd15_lineart.pth
配置文件:control_v11p_sd15_lineart.yaml
预处理器:

  • lineart_anime:线稿提取,针对动漫。
  • lineart_anime_denoise:线稿提取,针对动漫,可去除波点阴影。
  • lineart_coarse:线稿提取,针对草稿(素描)。
  • lineart_realistic:线稿提取,针对照片(写实,推荐)。
  • lineart_standard (from white bg & black line):线稿提取,仅针对黑白线稿。
  • invert (from white bg & black line):反色处理,仅针对黑白线稿。

预处理器与效果展示

原图:
cute-girl-black-white-lineart-line-art-coloring-book-anime-manga-style_877869-28719 (1)_副本.png
下图为这六个预处理器生成的控制图和效果图:
lineart_1001.png
原图:
depth_1.png
图为这六个预处理器生成的控制图和效果图:
lineart_2001.png
原图:
00012-1777738789.jpeg
为这六个预处理器生成的控制图和效果图:
lineart_3001.png

4.7 Anime Lineart(动漫风格线稿)

Anime Lineart(动漫风格线稿)专门用于处理动漫风格的线稿,能够生成具有丰富细节和动漫风格的图像。

模型信息

模型文件:control_v11p_sd15s2_lineart_anime.pth
配置文件:control_v11p_sd15s2_lineart_anime.yaml
预处理器:与 Lineart 相同。

预处理器与效果展示

下图为这六个预处理器生成的控制图和效果图:
xyz_grid-0010-2897451324.png

4.8 SoftEdge(软边缘)

SoftEdge(软边缘) 同样也用于检测图像的边缘信息。与 Canny 相比,SoftEdge 生成的边缘线条更模糊,降低了控制效果,为 AI 提供了更多自由。若觉得 Canny 束缚过多,不妨尝试 SoftEdge,或许能带来新的创作空间。

模型信息

模型文件:control_v11p_sd15_softedge.pth
配置文件:control_v11p_sd15_softedge.yaml
预处理器:

  • softedge_hed:软边缘检测,使用 HED 算法
  • softedge_hedsafe:软边缘检测,使用 HED 算法
  • softedge_pidinet:软边缘检测,使用 PiDiNet 算法
  • softedge_pidisafe:软边缘检测,使用 PiDiNet 算法
  • softedge_teed:软边缘检测,使用 TEED 算法

预处理器与效果展示

下图为这五个预处理器生成的控制图和效果图:
soft_edge_0001.png

4.9 Scribble/Sketch(涂鸦/草稿)

Scribble/Sketch(涂鸦/草稿)会将图片变成涂鸦,就像手绘的一样。

模型信息

模型文件:control_v11p_sd15_scribble.pth
配置文件:control_v11p_sd15_scribble.yaml
预处理器:

  • scribble_hed:涂鸦处理,使用 HED 算法。 Holistically-Nested Edge Detection(HED)是一种边缘检测器,擅长生成像真人一样的轮廓。据 ControlNet 的作者称,HED 适合对图像进行重新着色和重新设计样式。
  • scribble_pidinet:涂鸦处理,使用 PiDiNet 算法。Pixel Difference network (Pidinet)检测曲线和直线边缘。其结果与 HED 类似,但通常会产生更清晰的线条和更少的细节。
  • scribble_xdog:涂鸦处理,使用 xDoG 算法。EXtendedDifferenceofGaussian (XDoG))是一种边缘检测方法技术。调整 xDoG 阈值并观察预处理器输出非常重要。
  • t2ia_sketch_pidi:草稿差分,使用 PiDiNet 算法。通过 T2IA_Sketch_Pidi 处理后的图像,其边缘部分会呈现出一种手绘的效果,这种效果使得图像看起来更加生动和有趣。同时,由于它主要提取的是图像的轮廓信息,因此可以保留图像的主要特征,而忽略一些细节部分,从而实现对图像的简化和抽象化。
  • invert (from white bg & black line):反色处理,仅针对“白色背景黑色线条”的图像。

预处理器与效果展示

下图为前四个预处理器生成的控制图和效果图:
scribble_11.png
下图为invert预处理器生成的控制图和效果图:
scribble_222.png

4.10 Segmentation(语义分割)

Segmentation(语义分割)用于标记参考图像中的对象类型,并分别使用不同的颜色来分割。

模型信息

模型文件:control_v11p_sd15_seg.pth
配置文件:control_v11p_sd15_seg.yaml
预处理器:

  • seg_anime_face:主义分割,主要用于识别动画面部结构。
  • seg_ofade20k:语义分割,使用 OneFormer 算法,ADE20k 协议。
  • seg_ofcoco:语义分割,使用 OneFormer 算法,COCO 协议。
  • seg_ufade20k:语义分割,使用 UniFormer 算法,ADE20k 协议。

预处理器与效果展示

下图为这四个预处理器生成的控制图和效果图:
seg_002.png

4.11 Shuffle(随机化)

Shuffle(随机化)的会搅动参考图,产生一种随机的效果。相当于将参考图打乱,使用大致相同的配色方案生成一个新的图片。

模型信息

模型文件:control_v11e_sd15_shuffle.pth
配置文件:control_v11e_sd15_shuffle.yaml
预处理器:shuffle

预处理器与效果展示

下图为这个预处理器生成的控制图和效果图:
shuffle_2.png

4.12 Tile/Blur(分块/模糊)

Tile(分块)模型是一个能增强细节与画质的重绘模型。它保留了原图的构图、画风和人物主体,同时增加了更多细节,提升了画质,让画面更生动、更丰富。

模型信息

模型文件:control_v11f1e_sd15_tile.pth
配置文件:control_v11f1e_sd15_tile.yaml
预处理器:

  • blur_gaussian:模糊处理,高斯模糊。
  • tile_colorfix:分块控制,颜色修正。
  • tile_colorfix+sharp:分块控制,颜色修正+锐化。
  • tile_resample:分块控制,仅重采样。

预处理器与效果展示

下图为这四个预处理器生成的效果图:
tile_02.png

4.13 Inpaint(局部重绘)

Inpaint(局部重绘)类似于图生图的局部重绘。

模型信息

模型文件:control_v11p_sd15_inpaint.pth
配置文件:control_v11p_sd15_inpaint.yaml
预处理器:

  • inpaint_global_harmonious:局部重绘,仅整合绘制的蒙版。提高全局一致性并允许您使用高去噪强度。
  • inpaint_only:局部重绘,生成式区域填充。不会更改未遮罩的区域。
  • inpaint_only+lama:局部重绘,LaMa 算法 + 生成式区域填充。它往往会产生更干净的结果,并且有利于物体去除。

预处理器与效果展示

将原图的衣服涂上蒙版:
image.png
下图为这三个预处理器生成的效果图:
inpaint_2.png

4.14 Instruct P2P(指令引导)

Instruct P2P(指令引导)模型能够利用文本精确地指导图片细节的生成。它能够在保持画面整体风格的同时,微调并修改部分内容,以满足特定需求。该模型无需额外的预处理器,只需输入相应的提示词,即可描述并实现期望的效果。

模型信息

模型文件:control_v11e_sd15_ip2p.pth
配置文件:control_v11e_sd15_ip2p.yaml

效果展示

下图为该模型使用不同的提示词生成的效果图:
instructp2p_2.png

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

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

相关文章

前端遇到的问题

1.window.οnlοadfunction(){} 和 $(function(){}); window.onload是js原生事件&#xff1b; $(function(){})是JQuery的方法&#xff1b; 实例&#xff1a;jsp中的元素 $ {html}是通过VelocityEngine生成的html元素 <% page contentType"text/html;charsetUTF-8&qu…

PHP货运搬家/拉货小程序二开源码搭建的功能

运搬家/拉货小程序的二次开发可以添加许多功能&#xff0c;以增强用户体验和提高业务效率。以下是一些可能的功能&#xff1a; 用户端功能&#xff1a; 注册登录&#xff1a;允许用户创建个人账户并登录以使用应用程序。货物发布&#xff1a;允许用户发布他们需要搬运的货物信息…

HTML转EXE 各平台版本(Windows, IOS, Android)

前言&#xff1a; 在几年前&#xff0c;我在盒子论坛中看到有人提供了一个将HTML打包成EXE文件的程序的软件&#xff0c;好像是外国人做的&#xff0c;该软件是收费的。当时我在想&#xff0c;这个功能不是很难实现呀&#xff0c;于是我就有了开发一个HTML转EXE的工具想法&…

python如何写一个将保存数据和读取数据程序合并

在python中如果要保存数据和读取数据&#xff0c;需要分别编写程序&#xff0c;如果要合并起来执行&#xff0c;如果输入的数据没有保存&#xff0c;就保存&#xff0c;如果输入的数据已经保存&#xff0c;就读取保存的内容 思路如下 分别引用path库和json库 首先创立一个js…

数据可视化-ECharts Html项目实战(13)

在之前的文章中&#xff0c;我们深入学习ECharts动态主题切换和自定义ECharts主题。想了解的朋友可以查看这篇文章。同时&#xff0c;希望我的文章能帮助到你&#xff0c;如果觉得我的文章写的不错&#xff0c;请留下你宝贵的点赞&#xff0c;谢谢。 数据可视化-ECharts Html项…

写后端项目的分页查询时,解决分页不更新

写基于VueSpringBoot项目&#xff0c;实现分页查询功能时&#xff0c;改完代码后&#xff0c;发现页数不更新&#xff1a; 更改处如下&#xff1a; 显示如图&#xff1a; 发现页数没有变化&#xff0c;两条数据还是显示在同一页&#xff0c;而且每页都10条。且重启项目也没有更…

零基础小白,如何入门计算机视觉?

目录 前言 计算机视觉技术学习路线 基础知识 1. 数学基础 2. 编程基础 3. 图像处理基础 基础算法与技术 1. 特征提取与描述符 2. 图像分割与对象检测 3. 三维重建与立体视觉 机器学习与深度学习 1. 机器学习基础 2. 深度学习 高级主题与应用 1. 高级机器学习与深度学习 2. 计算…

基于双向长短期神经网络BILSTM的收盘预测,基于gru神经网络的收盘预测

目录 背影 摘要 LSTM的基本定义 LSTM实现的步骤 BILSTM神经网络 基于双向长短期神经网络BILSTM的收盘预测,基于gru神经网络的收盘预测 完整代码:基于双向长短期神经网络BILSTM的收盘预测,基于gru神经网络的收盘预测(代码完整,数据齐全)资源-CSDN文库 https://download.cs…

论文笔记:Are Human-generated Demonstrations Necessary for In-context Learning?

iclr 2024 reviewer 评分 6668 1 intro 大型语言模型&#xff08;LLMs&#xff09;已显示出在上下文中学习的能力 给定几个带注释的示例作为演示&#xff0c;LLMs 能够为新的测试输入生成输出然而&#xff0c;现行的上下文学习&#xff08;ICL&#xff09;范式仍存在以下明显…

简述PDF原理和实践

Hello&#xff0c;我是小恒不会java。 由于最近有输出PDF报表的项目需求&#xff0c;所以复习一下PDF到底是什么&#xff0c;该如何产生&#xff0c;如何应用至项目中。 更多参见Adobe官方文档&#xff08;https://www.adobe.com/cn/&#xff09; PDF原理 PDF&#xff08;Port…

机器学习实验二-----决策树构建

决策树是机器学习中一种基本的分类和回归算法&#xff0c;是依托于策略抉择而建立起来的树。本文学习的是决策树的分类 1. 构建决策树流程 选择算法&#xff1a;常用的算法包括ID3、C4.5、CART等。 划分节点&#xff1a;根据数据特征和算法选择&#xff0c;递归地划分节点&…

亚信安全数据安全运营平台DSOP新版本发布 注入AI研判升维

在当今快速发展的数字经济时代&#xff0c;企业对于数据的依赖日益加深&#xff0c;数据安全已成为企业的生命线。亚信安全推出数据安全运营平台DSOP全新版本&#xff0c;正是为满足企业对数据安全的高度需求而设计。这款平台以其卓越的能力和技术优势&#xff0c;为企业的数据…

【达梦数据库--无效的列】

【需求】 MySQL需要替换成达梦数据库 【问题】 在适配过程中查询、更新、删除都没有问题&#xff0c;只有在insert时会报错&#xff0c;显示无效的列 【解决】 1.先根据日志&#xff0c;将执行的sql去达梦执行无报错&#xff0c;排除列及类型错误 2.数据库表均是大写&#xf…

漂亮的七彩引导页导航HTML源码

源码介绍 漂亮的七彩引导页导航HTML源码&#xff0c;源码由HTMLCSSJS组成&#xff0c;记事本打开源码文件可以进行内容文字之类的修改&#xff0c;双击html文件可以本地运行效果&#xff0c;也可以上传到服务器里面&#xff0c;重定向这个界面 效果截图 源码下载 漂亮的七彩…

ceph large omap objects

问题 出现下面告警信息 ceph -scluster:id: xxxxxxxxxxxxxxxxxxxxxxxhealth: HEALTH_WARN7 large omap objects获取问题 pool # ceph health detail HEALTH_WARN 7 large omap objects; 4 clients failing to respond to cache pressure [WRN] LARGE_OMAP_OBJECTS: 7 larg…

notepad++安装包(亲测可用)

目录 一、软件简介 二、软件下载 一、软件简介 Notepad是一款开源的、免费的文本编辑器&#xff0c;它最初由侯今吾基于Scintilla文本编辑组件独立研发。Notepad以GPL发布&#xff0c;并拥有完整的中文化接口&#xff0c;支持多国语言编写的功能&#xff08;采用UTF8技术&…

Linux grpconv命令教程:如何将组转换为阴影组(附案例详解和注意事项)

Linux grpconv命令介绍 grpconv命令用于将组转换为阴影组。grpconv命令根据现有的组和可选的现有阴影组创建gshadow。每个程序在转换之前都会获取必要的锁。pwconv和grpconv命令是相同的。 Linux grpconv命令适用的Linux版本 grpconv命令在大多数Linux发行版中都可以使用&am…

初始Next.js

版本&#xff1a; 本系列next.js基于的是目前最新版本的 v14 版本&#xff0c;需要 Node.js 18.17 及以后版本 创建项目&#xff1a; 最快捷的创建 Next.js 项目的方式是使用 create-next-app脚手架&#xff0c;你只需要运行&#xff1a; npx create-next-applatest&&am…

判断是不是二叉搜索树【c++】

#include <iostream> #include <vector> using namespace std;//双链表节点结构 typedef struct treeNode {int value;struct treeNode* left;struct treeNode* right;treeNode(int x) : value(x), left(nullptr), right(nullptr) {} } TreeNode;void inOrderTrave…

【C++题解】1565. 成绩(score)

问题&#xff1a;1565. 成绩&#xff08;score&#xff09; 类型&#xff1a;基本运算、小数运算 题目描述&#xff1a; 牛牛最近学习了 C 入门课程&#xff0c;这门课程的总成绩计算方法是&#xff1a; 总成绩作业成绩 20% 小测成绩 30% 期末考试成绩 50%。 牛牛想知道&am…