论文阅读:Uni-ISP Unifying the Learning of ISPs from Multiple Cameras

这是 ECCV 2024 的一篇文章,文章作者想建立一个统一的 ISP 模型,以实现在不同手机之间的自由切换。文章作者是香港中文大学的 xue tianfan 和 Gu jinwei 老师。

Abstract

现代端到端图像信号处理器(ISPs)能够学习从 RAW/XYZ 数据到 sRGB(或其逆过程)的复杂映射,为图像处理带来了新的可能性。然而,随着相机型号的多样性不断增加,长期开发和维护单个 ISP 是难以持续的,因为其本身缺乏通用性,阻碍了对多种相机型号的适应性。这篇文章提出了一种新颖的流程 —— 统一图像信号处理器(Uni - ISP),它统一了对多个相机的 ISP 学习,为多种相机型号提供了准确且通用的处理器。Uni - ISP 的核心是通过学习正向 / 逆向 ISP 及其特殊的训练方案来利用设备感知嵌入。通过这种方式,Uni - ISP 不仅提高了正向 / 逆向 ISP 的性能,还开启了现有学习型 ISP 无法实现的多种新应用。此外,由于没有由多个相机同步拍摄用于训练的数据集,文章还构建了一个真实世界的 4K 数据集 ——FiveCam,它包含由五部智能手机同步拍摄的 2400 多对 sRGB - RAW 图像。文章进行了大量实验,证明了 Uni - ISP 在正向 / 逆向 ISP 中的准确性(峰值信噪比分别提高了 + 1.5dB/2.4dB)、其在实现新应用方面的通用性以及对新相机型号的适应性。

Introduction

图像信号处理器(ISP)将相机传感器捕获的原始图像数据转换为诸如 sRGB 等可查看的格式,在决定照片的视觉质量方面起着关键作用。通过精心设计它们的 ISP,各个相机品牌塑造出了符合不同用户偏好的独特摄影风格。例如,苹果(Apple)智能手机相机以其清晰且独具特色的 “苹果感” 而广受赞誉,而徕卡(Leica)相机则因其光晕效果和浓郁的色调备受推崇,形成了标志性的徕卡风格。

近期,神经网络已被用于逼近整个图像信号处理器(ISP)或特定模块,即学习型 ISP,这带来了两大主要益处。

  • 1)性能提升。神经网络强大的表征能力使学习型 ISP 能够执行具有挑战性的任务,例如对高光和阴影区域中的细节内容进行脑补。
  • 2)新功能。学习型 ISP 引入了新功能,例如逆向 ISP,它能将 sRGB 图像转换回 RAW/XYZ 空间,为原始域增强和进一步处理(如去模糊、去噪、高动态范围(HDR)摄影等)提供了更大的灵活性和潜力。这些创新拓展了学习型 ISP 的应用范围和潜力。

然而,目前的方法仍然是针对单个相机型号设计和训练 ISP,这可能会限制不同 ISP 之间的协同效益。此外,通用模型在低层级视觉、高层级视觉和多模态等多个领域都展现出了优势。随着相机型号数量的增加,单个学习型 ISP 可能也缺乏广泛应用所需的通用性和适应性,从长远来看可能难以为继。

在本文中,我们旨在对来自不同相机的图像信号处理器(ISP)进行统一学习,这有两个直接的优势。

  • 1)通过利用来自多个相机的 ISP 之间的协同效应来提升视觉质量。统一学习使 ISP 能够理解不同数据中的潜在共性和差异,从而使视觉表现得到整体提升。
  • 2)统一学习提供了新颖的应用,超越了现有学习型 ISP 仅限于正向和逆向 ISP 的能力。这种统一学习实现了诸如跨不同相机型号的影像风格之间的转换、插值和外推等新用途。此外,它还支持基于 ISP 行为自洽性的零样本图像取证,包括图像级别的源相机识别和像素级别的图像拼接检测。

不过为多台相机学习一个具有设备感知能力的图像信号处理器(ISP)模型绝非易事,面临着诸多挑战。首先,我们发现,在现有模型中简单地混合来自多台相机的训练数据并不能带来令人满意的性能。因此,我们提出了 Uni - ISP,这是一种用于多台相机的新型统一 ISP 模型,它包含若干可优化的设备感知嵌入,用于学习不同相机的 ISP。这些设备感知嵌入使模型能够捕捉针对单个设备量身定制的特定特性,而共享的主干网络则能捕捉潜在的共性。

其次,目前的 ISP 数据集并不包含由多台相机拍摄的同步 sRGB - Raw 图像对。尽管这类数据对于学习单个 ISP 并非必需,但对于学习支持不同相机型号协同增效并能开发新应用的统一 ISP 至关重要。为解决这一问题,我们用五部智能手机搭建了一个同步相机阵列,并构建了一个新的数据集 ——FiveCam,该数据集包含 2464 对同步的、空间分辨率为 4K 的高质量 sRGB - Raw 配对图像。所采集的数据集涵盖了从风景到特写等广泛的场景,并且包含不同的光照条件,包括白天和夜晚的室内外环境。

第三,鉴于不同相机拍摄的同步照片对中不可避免地存在错位,需要一种稳健的对齐和训练方案。为了应对这一挑战,我们首先使用基于光流的方法对图像进行粗略对齐,这会在变形图像中引入频率偏差。然后,我们设计了一种频率偏差校正(FBC)损失来减轻纹理模糊。此外,我们引入了自相机 / 跨相机训练方案,以促进在相同 / 不同相机型号上的应用。

通过这三项设计,统一图像信号处理器(Uni - ISP)可应用于广泛的图像任务,例如跨不同相机型号的摄影外观转换、插值和外推。用户可以将一种相机型号的视觉特性应用到另一种相机上,实现独特的美学效果。还可以利用这些 ISP 行为的自洽性来促进零样本图像取证任务,包括源相机识别和图像拼接检测。大量实验表明,Uni - ISP 优于现有技术,在逆向 ISP 中峰值信噪比(PSNR)约高 1.5dB,在正向 ISP 中约高 2.4dB。
在这里插入图片描述

  • 图1 :我们提出了 Uni-ISP 模型,该模型可同时统一多个相机的逆 ISP(图像信号处理)行为和正 ISP 行为的学习。
    通过利用不同相机 ISP 之间的共享特性,与之前仅针对单个相机分别学习的 ISP 方法相比,我们的方法在逆 ISP 和正 ISP(A)方面能够实现更高的性能。同时,Uni-ISP 的设备感知特性使得一个已学习的 ISP 模型能够应用于新的跨相机 ISP 场景,包括摄影外观迁移(B 和 C)、内插 / 外推(D)以及零样本图像取证(E 和 F)。

Method

Overview

首先介绍正向和逆向 ISP 任务中的 XYZ 图像格式。XYZ 图像是与设备无关的辐射度量,学习 XYZ 图像与学习原始图像有相同的好处。因此我们选择将相机拍摄的原始图像处理得到的 XYZ 图像作为原始模态。具体而言,XYZ 图像是通过对真实原始图像 RAW 应用 ISP 的固定流程得到的,这个阶段使用拍摄时的白平衡、固定的线性去马赛克算法以及当前设备的 camera-to-XYZ 矩阵,且不应用伽马色调映射。在这种设置下,XYZ 图像与原始图像呈线性相关,它们可以相互转换且无损失。

图 2 展示了统一图像信号处理器(Uni - ISP)的整体流程,它包含逆向 ISP 模块 g g g 和正向 ISP 模块 h h h。我们的模型旨在学习 ISP 任务时能够识别各种摄像设备。假设我们这里讨论的图像尺寸均为 H × W H \times W H×W,通道数为 C C C。给定由相机 a 生成的 sRGB 图像 I a ∈ R H × W × C I_{a} \in \mathbb{R}^{H \times W \times C} IaRH×W×C ε a ∈ R D \varepsilon_{a} \in \mathbb{R}^{D} εaRD 表示针对相机 a 的尺寸为 D 的设备感知嵌入,逆向 ISP 模块 g g g 通过学习在给定输入 I a I_{a} Ia 的情况下输出相机 a 对应的 XYZ 图像 L ^ a \hat{L}_{a} L^a

L ^ a = g ( I a , ε a ) (1) \hat{L}_{a} = g(I_{a}, \varepsilon_{a}) \tag{1} L^a=g(Ia,εa)(1)

前向 ISP 模块 h h h 学习从给定的实际 XYZ 图像 L a L_{a} La 中预测 I ^ a \hat{I}_{a} I^a

I ^ a = g ( L a , ε a ) (2) \hat{I}_{a} = g(L_{a}, \varepsilon_{a}) \tag{2} I^a=g(La,εa)(2)

模块 g ( ⋅ ) g(\cdot) g() h ( ⋅ ) h(\cdot) h() 学习图像信号处理器(ISP)在不同设备间的通用属性,而设备感知嵌入 ε a \varepsilon_{a} εa 则侧重于相机 a 特定的自有属性。上述公式使我们能够通过将 g , h g, h g,h 与设备感知嵌入 $ {\varepsilon_{a}, \varepsilon_{b}, \varepsilon_{c}, …, \varepsilon_{z} }$ 一起训练,来同时学习多台相机 { a , b , c , … , z } \{a, b, c, …, z\} {a,b,c,,z} 的 ISP 行为。

Model Design

在这里插入图片描述

  • 图 2 Uni-ISP 的模型设计。Uni-ISP 包含两个模块,即逆 ISP 模块 g 和正 ISP 模块 h。这两个模块具有相同的结构。为了视觉上的简洁,我们将逆 ISP 模块 g 绘制成缩略图,其内部结构与正 ISP 模块 h 相同。设备感知嵌入是可优化的参数,在训练或推理过程中,它们将通过 DEIM(动态嵌入交互机制)被选择与瓶颈特征进行交互。

如图 2 所示,统一图像信号处理器(Uni - ISP)使用了逆向 ISP 模块 g g g 和正向 ISP 模块 h h h,每个模块都具有编码器-解码器架构。两个模块都包含局部特征提取块(LFEBs)用于细致的局部处理,以及全局特征操作块(GFMBs)用于大范围的图像调整,这反映了真实相机 ISP 的双重处理机制,即同时处理诸如曝光补偿和色彩校正等全局操作,以及色调映射和高光恢复等局部任务。

Local Feature Extraction Blocks 统一图像信号处理器(Uni - ISP)中的每个编码器和解码器阶段都包含四个局部特征提取块(LFEBs)。编码器阶段的 LFEBs 包含最大池化层,解码器阶段的 LFEBs 包含上采样层。每个 LFEB 包含多个卷积层、激活层、半实例归一化层以及空间 / 通道注意力层。残差连接将编码器和解码器阶段的 LFEBs 连接起来。

Global Feature Manipulation Blocks 全局 ISP 操作受到曝光时间和 ISO 等参数的显著影响,这些参数会改变照片的整体外观。我们设计的全局特征操作块(GFMBs)旨在结合这些参数来修改来自编码器局部特征提取块(LFEBs)的残差特征。然后,这些经过操作的特征会被传递到解码器阶段相应的 LFEBs。使用过的相机参数(曝光、ISO 和光圈值)是从相机生成的 JPEG 图像的 EXIF 元数据中提取出来的。

Device-aware Embedding Interaction Module 设备感知嵌入交互模块(DEIM)位于编码器和解码器阶段之间,通过与设备感知嵌入进行交互,增强了模型适应不同摄像设备的能力。给定一个设备感知嵌入 ε a \varepsilon_{a} εa,DEIM 对来自编码器阶段的瓶颈特征 B 应用基于注意力的变换,并输出 F a F_a Fa。这种设置使模型能够自适应地同时学习多台相机的 ISP 行为。

Training Scheme

文章为统一图像信号处理器(Uni - ISP)精心设计了一种特殊的训练方案,该方案包含两种训练目标,即自相机图像信号处理器(ISP)目标和跨相机 ISP 目标。

Self-Camera Training Objective

在自相机训练目标中,我们的统一图像信号处理器(Uni - ISP)同时学习多台相机的逆向和正向图像信号处理器(ISP)行为。

L I n v = ∥ L a − L ^ a ∥ 1 (3) \mathcal{L}_{Inv} = \left \| L_{a} - \hat{L}_{a} \right \|_{1} \tag{3} LInv= LaL^a 1(3)

L F o r = ∥ I a − I ^ a ∥ 1 (4) \mathcal{L}_{For} = \left \| I_{a} - \hat{I}_{a} \right \|_{1} \tag{4} LFor= IaI^a 1(4)

Cross-Camera Training Objective

跨相机训练目标中的目标照片是由与拍摄输入照片不同的相机拍摄的。具体而言,这种训练目标应用于正向图像信号处理器(ISP)模块 h h h 以处理相机模型转换。假设 I a I_a Ia 是由相机 a 拍摄的, I b I_b Ib 是由相机 b 拍摄的,统一图像信号处理器(Uni - ISP)的逆向 ISP 模块 g g g I a I_a Ia 作为输入并预测 XYZ 图像 L ^ a \hat{L}_a L^a,这与公式 (1) 中描述的过程相同。然后,正向 ISP 模块 h 将预测的 L ^ a \hat{L}_a L^a 转换为相机 b 的 sRGB 图像 I ^ b \hat{I}_b I^b

I ^ b = h ( ε b , L ^ a ) (5) \hat{I}_{b} = h(\varepsilon_{b}, \hat{L}_a) \tag{5} I^b=h(εb,L^a)(5)

其中, ε b \varepsilon_{b} εb 表示相机 b 的设备感知嵌入。

上面的loss 优化有一个问题,因为输入图像 I a I_a Ia 和输出真实值 I b I_{b} Ib 无法对齐,因为它们是用不同的相机拍摄的。这使得像 L1 loss 这样的像素级损失无法驱动最小化 I ^ b \hat{I}_b I^b I b I_{b} Ib 之间距离的跨相机训练目标。因此,文章首先使用基于光流的方法 RAFT 来对用于跨相机训练目标的数据集进行 warp。所有由相机拍摄 b 的 sRGB 图像 I b I_{b} Ib 都将被变形为 I b w I_{b}^{w} Ibw,使其与由相机 a 拍摄的 sRGB 图像 I a I_{a} Ia 对齐。我们对数据集中每一个可能的 camera-to-camera 的 sRGB 图像对都应用这种 warp 操作。在训练过程中,任何无法对齐的区域都将被标注为遮挡区域并进行掩模处理。

在这里插入图片描述

  • 图 3 使用光流法包裹的数据集内频率偏差示意图。与原始图像相比,包裹过程中的插值会使图像看起来模糊,消除了其高频成分。

然而,尽管基于光流的变形方法有效地对齐了这些图像,但它也在我们的数据集中引入了频率偏差。如图 3 所示,与变形前的图像相比,变形后的图像往往缺少高频细节。如果我们直接使用对齐后的图像来训练我们的模型,它将意外地在跨相机 ISP 任务中对图像进行平滑处理。为解决这个问题,我们针对跨相机训练目标提出了频率偏差校正(FBC)损失。公式(6)展示了该任务的过程。FBC 损失可写为:

L F B C = ∥ f l o w ( I ^ b ) − f l o w ( I b w ) ∥ + L f r e q ( I ^ b , I b ) (6) \mathcal{L}_{FBC} = \left \| f_{low}(\hat{I}_b) - f_{low}({I}_{b}^{w}) \right \| + \mathcal{L}_{freq}(\hat{I}_{b}, I_{b}) \tag{6} LFBC= flow(I^b)flow(Ibw) +Lfreq(I^b,Ib)(6)

其中, f l o w f_{low} flow 表示一个低通滤波器,文章用了一个高斯模糊核实现, L f r e q \mathcal{L}_{freq} Lfreq 表示频域的 loss。

Overall Loss

整体的 loss 形式为:

L = L I n v + L F o r + L F B C + λ L N R R (7) \mathcal{L} = \mathcal{L}_{Inv} + \mathcal{L}_{For} + \mathcal{L}_{FBC} + \lambda \mathcal{L}_{NRR} \tag{7} L=LInv+LFor+LFBC+λLNRR(7)

其中 L N R R \mathcal{L}_{NRR} LNRR 是附加的中性渲染正则化项, λ \lambda λ 是它的平衡权重。当中性渲染正则化在设备感知嵌入被给定为零向量时,引导模型学习一个在 XYZ 和 sRGB 色彩空间之间执行标准色彩转换的虚拟相机。

L N R R = ∥ s ( I a ) − g ( I a , 0 ) ∥ 1 + ∥ s − 1 ( L a ) − h ( L a , 0 ) ∥ 1 (8) \mathcal{L}_{NRR} = \left \| s(I_a) - g(I_a, \mathbf{0}) \right \|_1 + \left \| s^{-1}(L_a) - h(L_a, \mathbf{0}) \right \|_1 \tag{8} LNRR=s(Ia)g(Ia,0)1+ s1(La)h(La,0) 1(8)

s ( ⋅ ) , s − 1 ( ⋅ ) s(\cdot), s^{-1}(\cdot) s(),s1() 分别表示 sRGB-XYZ 和 XYZ-sRGB 之间的色彩空间转换。如果用户想要增强或减弱某台相机的摄影风格,而不与另一台相机的设备感知嵌入进行内插或外推操作,中性渲染正则化会为用户提供一个锚点。

Novel Dataset

尽管现有的 sRGB - RAW 数据集允许对逆向和正向 ISP 任务进行模型训练,但仍然需要包含由多个设备同步拍摄的 sRGB - RAW 对的数据集。这类数据集对于训练能够有效处理跨相机 ISP 任务的模型至关重要,而跨相机 ISP 任务对于诸如摄影外观转换和内插 / 外推等应用来说是至关重要的。

为应对这一挑战,我们收集了一个名为 FiveCam 的新数据集,其特点是包含来自五种不同相机型号同步拍摄的 sRGB - RAW 对。该数据集包含 2464 张高分辨率(4K)的原始图像和 JPEG 图像,代表了大约 500 个不同的场景。FiveCam 数据集中使用的相机包括苹果 iPhone 14 Pro Max、谷歌 Pixel 6 Pro、华为 P40、三星 Galaxy S20 和小米 Mi 12。所有相机都通过编程的蓝牙快门进行同步,以确保所有设备的拍摄时间一致。

图 4 展示了与其所使用的拍摄设备一同呈现的三个场景。我们的 FiveCam 数据集场景丰富多样,在多种光照条件下(从白昼到夜间环境,包括室外和室内光照)拍摄了自然景观和城市环境。

此外,我们还创建了这个数据集的 sRGB - XYZ 版本,其中所有相机的原始图像都使用拍摄时的白平衡、线性去马赛克算法进行处理,并转换为标准的相机 - 到 - XYZ 色彩空间。这个版本中的 XYZ 图像保持了线性,这使得它们对于需要保持原始图像线性的下游任务特别有益。
在这里插入图片描述

  • 图 4 我们新数据集中 3 个场景的预览(左图)以及我们的拍摄设备(右图)。每个场景都包含来自五款智能手机相机的同步 sRGB(标准红绿蓝)-Raw(原始)图像对:苹果 iPhone 14 Pro Max、谷歌 Pixel 6 Pro、华为 P40、三星 Galaxy S20 以及小米 Mi 12。这里将原始图像可视化为 XYZ 图像,并且可以无损地转换回原始格式。

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

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

相关文章

ROS2指令总结(跟随古月居教程学习)

​ 博主跟随古月居博客进行ROS2学习,对ROS2相关指令进行了总结,方便学习和回顾。 古月居ROS2博文链接:https://book.guyuehome.com/ 本文会持续进行更新,觉得有帮助的朋友可以点赞收藏。 1. ROS2安装命令 $ sudo apt update &am…

Qt不同类之间参数的传递

一、信号槽方式 1: 在需要发送信号的子类增加一个信号函数 void set_send(double lonx, double laty);sub.h sub.cpp emit set_send(lonx,laty);2: 在需要接收信号的类增加一个槽函数 main.h void set_rece(double lonx, double laty);main.cpp 1)引入子类头文…

labview记录系统所用月数和天数

在做项目时会遇到采集系统的记录,比如一个项目测试要跑很久这个时候就需要在软件系统上显示项目运行了多少天,从开始测试开始一共用了多少年多少月。 年的话还好计算只需要把年份减掉就可以了,相比之下月份和天数就比较难确定,一…

机器翻译基础与模型 之一: 基于RNN的模型

一、机器翻译发展历程 基于规则的-->基于实例的-->基于统计方法的-->基于神经网络的 传统统计机器翻译把词序列看作离散空间里的由多个特征函数描述的点,类似 于 n-gram 语言模型,这类模型对数据稀疏问题非常敏感。神经机器翻译把文字序列表示…

WPF Prism框架

一、关于Prism框架 Prism.Core:【Prism.dll】实现MVVM的核心功能,属于一个与平台无关的项目 Prism.Wpf:【Prism.Wpf】包含了DialogService,Region,Module,Navigation,其他的一些WPF的功能 Prism.Unity:【Prism.Unity.Wpf】,IOC容器 Prism.Unity>Pr…

STM32F103系统时钟配置

时钟是单片机运行的基础,时钟信号推动单片机内各个部分执行相应的指令。时钟系统就是CPU的脉搏,决定CPU速率,像人的心跳一样 只有有了心跳,人才能做其他的事情,而单片机有了时钟,才能够运行执行指令&#x…

2024年 Web3开发学习路线全指南

Web3是一个包含了很多领域的概念,不讨论币圈和链圈的划分,Web3包括有Defi、NFT、Game等基于区块链的Dapp应用的开发;也有VR、AR等追求视觉沉浸感的XR相关领域的开发;还有基于区块链底层架构或者协议的开发。 这篇文章给出的学习路…

CTF--php伪协议结合Base64绕过

Base64绕过 在ctf中,base64是比较常见的编码方式,在做题的时候发现自己对于base64的编码和解码规则不是很了解,并且恰好碰到了类似的题目,在翻阅了大佬的文章后记录一下,对于base64编码的学习和一个工具 base64编码是…

Linux 命令之 tar

文章目录 1 tar 命令介绍2 压缩与解压缩2.1 压缩2.2 解压 4 高级用法4.1 排除目录4.2 显示进度4.2.1 脚本解压缩4.2.2 命令解压缩4.2.3 压缩进度 1 tar 命令介绍 常见的压缩包有 .tar.gz、.tar.xz、.tar.bz2,以及 .rar、.zip、.7z 等压缩包。 常见的 tar 选项&#…

Jenkins修改LOGO

重启看的LOGO和登录页面左上角的LOGO 进入LOGO存在的目录 [roottest-server01 svgs]# pwd /opt/jenkins_data/war/images/svgs [roottest-server01 svgs]# ll logo.svg -rw-r--r-- 1 jenkins jenkins 29819 Oct 21 10:58 logo.svg #jenkins_data目录是我挂载到了/opt目录&…

【大模型】LLaMA: Open and Efficient Foundation Language Models

链接:https://arxiv.org/pdf/2302.13971 论文:LLaMA: Open and Efficient Foundation Language Models Introduction 规模和效果 7B to 65B,LLaMA-13B 超过 GPT-3 (175B)Motivation 如何最好地缩放特定训练计算预算的数据集和模型大小&…

vue添加LCD字体(液晶字体)数字美化,前端如何引用LCD字体液晶字体,如何转换?@font-face 如何使用?

文章目录 一、效果二、下载字体格式【[https://www.dafont.com/theme.php?cat302&text0123456789](https://www.dafont.com/theme.php?cat302&text0123456789)】三、下载后,解压后都是.ttf文件,在【[https://www.fontsquirrel.com/tools/webfo…

【大数据学习 | Spark】关于distinct算子

只有shuffle类的算子能够修改分区数量,这些算子不仅仅存在自己的功能,比如分组算子groupBy,它的功能是分组但是却可以修改分区。 而这里我们要讲的distinct算子也是一个shuffle类的算子。即可以修改分区。 scala> val arr Array(1,1,2,…

Qt桌面应用开发 第五天(常用控件 自定义控件)

目录 1.QPushButton和ToolButton 1.1QPushButton 1.2ToolButton 2.RadioButton和CheckBox 2.1RadioButton单选按钮 2.2CheckBox多选按钮 3.ListWidget 4.TreeWidget控件 5.TableWidget控件 6.Containers控件 6.1QScrollArea 6.2QToolBox 6.3QTabWidget 6.4QStacke…

Excel - VLOOKUP函数将指定列替换为字典值

背景:在根据各种复杂的口径导出报表数据时,因为关联的表较多、数据量较大,一行数据往往会存在三个以上的字典数据。 为了保证导出数据的效率,博主选择了导出字典code值后,在Excel中处理匹配字典值。在查询百度之后&am…

ctfshow-web入门-SSRF(web351-web360)

目录 1、web351 2、web352 3、web353 4、web354 5、web355 6、web356 7、web357 8、web358 9、web359 10、web360 1、web351 看到 curl_exec 函数,很典型的 SSRF 尝试使用 file 协议读文件: urlfile:///etc/passwd 成功读取到 /etc/passwd 同…

【vmware+ubuntu16.04】ROS学习_博物馆仿真克隆ROS-Academy-for-Beginners软件包处理依赖报错问题

首先安装git 进入终端,输入sudo apt-get install git 安装后,创建一个工作空间名为tutorial_ws, 输入 mkdir tutorial_ws#创建工作空间 cd tutorial_ws#进入 mkdir src cd src git clone https://github.com/DroidAITech/ROS-Academy-for-Be…

AI数字人视频小程序:引领未来互动新潮流

当下,随着人工智能技术的不断创新发展,各类AI系统已经成为了创新市场发展的重要力量,AI文案、AI数字人、AI视频等,为大众带来更加便捷的创作方式,AI成为了一个全新的风口,各种AI红利持续释放,市…

leetcode400第N位数字

代码 class Solution {public int findNthDigit(int n) {int base 1;//位数int weight 9;//权重while(n>(long)base*weight){//300n-base*weight;base;weight*10;}//n111 base3 weight900;n--;int res (int)Math.pow(10,base-1)n/base;int index n%base;return String…

MySQL扩展varchar字段长度能否Online DDL

目录 问题场景 Online DDL 简介 场景复现 DBdoctor快速识别 Online DDL 总结 问题场景 在MySQL数据库中,DDL变更可以通过两种算法实现:Copy算法和In-Place算法。Copy算法会复制整个表,这可能导致长时间的写入阻塞,从而严重影…