Local Color Distributions Prior for ImageEnhancement

图1:给定同时具有过曝光(背景窗口)和欠曝光(前景人物)的输入图像(a),现有方法不能很好地处理这两个问题。虽然(b)在背景上表现更好,但前景仅略微变亮。尽管(c)在前景上表现更好,但背景仍然被过度曝光。(d) 使前景略微变亮,但使背景进一步过度暴露。相反,我们的方法(e)基于学习局部颜色分布,可以很好地处理这两个问题。窗帘的纹理和衣服的花纹都看得很清楚。

 现有的图像增强方法通常被设计为解决输入图像中曝光过度或曝光不足的问题。当输入图像的照明同时包含曝光过度和曝光不足问题时,这些现有方法可能不能很好地工作。我们从图像统计数据中观察到,患有这两个问题的图像的局部颜色分布(LCD)倾向于在图像的不同区域中变化,这取决于局部照明。基于这一观察结果,我们在本文中建议利用这些LCD作为定位和增强两种类型区域(即曝光过度/曝光不足区域)的先验。首先,我们利用LCD来表示这些区域,并提出了一种新的局部颜色分布嵌入(LCDE)模块,用于在多尺度上形成LCD,以对不同区域之间的相关性进行建模。其次,我们提出了一种双重照明学习机制来增强这两种类型的区域。第三,我们构建了一个新的数据集,通过遵循相机图像信号处理(ISP)管道,从原始数据中渲染曝光不足/过度的标准RGB图像,来促进学习过程。大量实验表明,所提出的方法在数量和质量上都优于现有的先进方法。

code:https://hywang99.github.io/lcdpnet/.

1 Introduction
在拍摄照片时,场景的照明条件可能并不总是理想的,并且照片可能会出现曝光不足(由于低光/背光)或曝光过度(由于图像区域内的一些强光)的情况。通常,由于不平衡的照明条件,在同一图像中可能同时出现曝光过度和曝光不足。照明可能会发生显著变化,将局部图像内容掩埋在曝光过度和曝光不足的区域,如图所示。第1(a)段。虽然摄影专家可能会利用高端单反相机并仔细调整它们(例如光圈、ISO和特殊滤镜)来缓解问题,但这需要摄影专业知识和昂贵的设备。

已经提出了许多方法来提高在较差照明条件下捕获的图像的质量。一系列方法侧重于通过基于Retinex的方法[33]、双边学习[13]、生成对抗性学习[11]、深度参数滤波[23]和自监督[14]或半监督学习[39]来增强在低光场景中捕获的曝光不足的图像。其他作品[4,1]试图增强一个网络中过度曝光或曝光不足的图像。所有这些方法通常假设场景照明通常是均匀的,因此不适当的曝光将导致曝光过度或曝光不足。因此,它们倾向于全局调整图像强度,即增加或减少强度。然而,如果场景的照明是不均匀的,导致输入图像同时受到过度和不足曝光的影响,如图所示。1(a),现有方法可能无法很好地工作。例如,ZeroDCE[14](c)和RUAS[29](d)在试图增强曝光不足的前景人物时,加剧了背景区域的过度曝光问题。另一方面,虽然MSEC[1](b)略微增强了前景,但它在背景窗口周围产生了一些颜色失真。

在本文中,我们的目标是解决出现在单个图像中的曝光过度和曝光不足问题。关键的挑战是如何有效地分离这两种类型的区域,并相应地恢复它们的局部照明。我们观察到,由区域局部直方图向量组成的局部颜色分布(LCD)在解决这一挑战之前是可靠的,原因有两个。首先,我们注意到,在过曝光和欠曝光区域中的这些LCD显示出显著的差异,并偏离了在适当曝光区域中。因此,它们可以用来帮助识别和分离不同类型的区域。

其次,虽然从曝光过度和曝光不足的图像中直接推断真实场景照明可能不可靠,但颜色是图像中容易获得的重要线索。对LCD进行建模基本上有助于估计适当的局部照明并恢复埋藏的内容物。基于我们的观察,我们提出了一种新的神经网络,用两个新的模块来联合解决这两个问题(即过曝光和欠曝光问题):(1)局部颜色分布嵌入(LCDE)模块,用于在多尺度中形成LCD,以学习过曝光和过曝光区域的表示及其相关性,以及(2)双照明学习机制,用于约束LCDE模块的学习,估计并组合过照明图和欠照明图以增强图像。此外,由于现有的数据集(例如,[1,10,33,5])大多包含曝光过度或曝光不足的图像,我们进一步构建了一个新的图像数据集,其中包含约1700个曝光过度和曝光不足的不同场景,以便于训练和评估。我们遵循相机ISP流水线,通过应用线性变换函数和对输入原始图像的像素强度进行剪裁来渲染sRGB图像。如图6所示,如图1(e)所示,我们提出的基于LCD先验的方法使暴露不足的区域变亮,同时使暴露过度的区域变暗,从而使暴露过度窗帘的纹理以及两人穿着的暴露不足的毛衣的图案变得可见。

我们对这项工作的主要贡献可以总结如下:

–我们建议利用局部颜色分布(LCD)来联合解决输入图像中的曝光过度和曝光不足问题,并利用神经网络来定位和增强图像的曝光过度/曝光不足区域。–我们提出了LCDE模块来制定多尺度LCD,以便学习过度和不足曝光区域的表示以及它们与全局照明的相关性。我们还提出了一种双照明估计器,以组合过照明和欠照明图来增强输入图像我们构建了一个新的配对数据集,由1700多幅不同、不均匀照明场景的图像组成,以促进学习过程大量实验表明,在流行的MSEC[1]和我们的数据集上,所提出的方法在定性和定量上都优于最先进的方法。

2 Related Work
Image-to-Image Translation-Based Methods.
一系列方法通过学习不同的图像到图像的翻译映射来增强曝光不足的图像。直方图均衡[26]和伽玛校正是最具代表性的方法。一些方法提出将全局和局部对比度增强算子与语义区域检测相结合(例如,面部、建筑物和天空)[20],区域模板[16]或沿着图像边界和纹理区域中的对比度统计[30]。最近基于深度学习的方法通常使用高质量的修饰图像或使用高端相机拍摄的图像来学习映射函数,包括双边学习[13]、中间HDR监督[40]、多阶段恢复[42,9]、生成对抗性学习[17,11,19,27]或强化学习[24,41]。蔡等人[4]提出通过从多个曝光图像中分别建模照度层和细节层来增强曝光不足的图像。Moran等人[32]提出学习一组分段线性缩放曲线,并将其应用于不同的颜色空间中,用于曝光不足的图像增强。徐等人[37]提出了基于频率分解的欠曝光图像增强方法。在[23]中,学习了不同类型的局部参数滤波器用于图像增强。Mahmoud等人[1]提出了一种从粗到细的网络来学习颜色和细节增强,以解决过度曝光或曝光不足的问题。

Retinex-Based Methods.
另一系列工作是基于Retinex的图像增强方法[15,12,44,3,33,45]。他们首先将输入图像分解为照明层和反射层,然后增强图像的照明层。传统的基于优化的方法[15,12,3]提出了不同的手工先验来约束照明或反射层。基于深度学习的方法[10,33,45,29]从大量数据中学习这种内在分解。例如,DeepUPE[33]提出通过双边学习从输入的曝光不足图像直接估计适当的照明层[6]。最近,刘等人[29]提出了一种基于架构搜索的方法,以利用协作先验进行曝光不足的图像增强。

Limitation of Existing Works.
所有上述方法通常假设只有曝光过度或曝光不足的问题会出现在单个图像中。因此,它们往往会使曝光不足的图像变亮或使曝光过度的图像变暗,但缺乏处理曝光过度和曝光不足图像的能力。在这份文件中,我们的目标是解决这一常见的短缺问题。我们首先构建了一个新的数据集,并提出了一种LCD先验引导的深度学习方法,用于增强包含过曝光和欠曝光的图像。

3 Proposed Dataset
为了研究我们的问题,我们首先回顾了最近发布的大规模图像增强数据集,即多尺度曝光校正(MSEC)数据集[1]。尽管它包含曝光过度或曝光不足程度不同的图像,但每个图像要么曝光过度,要么曝光不足。我们在图2中可视化输入图像和参考图像之间的亮度强度映射。2。图图2(a)显示了来自MSEC数据集[1]的单个图像的亮度映射的形状是凹的或凸的。这些亮度映射不显示从遭受过度曝光和曝光不足的图像所表现出的任何不均匀照明。统计数据如图所示。2(d)表明,在该数据集上训练的MSEC模型[1]使输入图像变亮或变暗

 (见图2(e,f))。图图2(b)显示了LOL数据集[10]中图像的亮度映射的统计数据,该数据集是一个流行的微光图像增强数据集。我们可以看到,它只允许学习曝光不足增强。这意味着在LOL数据集[10]上训练的方法通常会使输入图像变亮。这表明,需要一个新的数据集,其中包含单个图像中的过度曝光和不足曝光。

我们从MIT Adobe5k数据集[2]中的原始图像构建了我们的数据集,该数据集包含5000个原始和专家修饰的sRGB图像对,用于学习色调映射过程。由于原始图像比sRGB图像具有更高的动态范围来保存场景信息,并且它们的强度与场景辐射成线性比例,因此我们从原始图像生成曝光过度和曝光不足的输入图像。我们使用专家修饰的sRGB图像作为我们的地面实况图像。然而,我们注意到,并非该数据集中的所有原始图像都适合生成曝光过度和曝光不足的图像(例如,从非常暗的图像合成曝光过度可能会产生不现实的图像),并且许多专家修饰的图像包含非常暗/亮的区域,这些区域无法用于形成我们的地面实况图像。

为了生成高质量的学习对,我们将数据集生成管道分为三个步骤:(1)我们手动遍历Adobe5k中的所有图像对,并删除那些专家修饰的图像包含非常暗或非常亮区域的对。(2) 对于(1)中的每个候选原始图像,我们遵循相机ISP管道,通过使用线性变换函数调整曝光水平,渲染具有过曝光和欠曝光的sRGB图像。(3) 对于(2)中的每个渲染sRGB图像,我们请一名志愿者(摄影师)帮助评估其质量。如果志愿者指出渲染的图像不真实或具有明显的伪影(例如,彩色出血),我们将其反馈到步骤(2)以生成另一个sRGB图像用于重新评估。这会迭代,直到我们有一个高质量的图像,或者在五次迭代后,我们简单地丢弃这对。

4 Proposed Method
 
曝光过多和曝光不足的图像增强任务可以公式化为寻求映射函数F,该映射函数F将每通道sRGB图像Ix映射到增强图像Iy,使得Iy=F(Ix)。我们建议通过学习利用多尺度LCD和双照明估计来学习区域感知照明映射模型,而不是直接学习图像到图像的转换模型或基于Retinex的图像到照明映射模型。

4.1 Local Color Distribution (LCD) Pyramid
从单个图像直接推断真实场景照明是一项挑战,尤其是当输入图像同时包含过曝光和欠曝光时。相反,由于颜色是图像中保留的场景照明的关键组成部分,我们可以利用局部颜色信息来帮助构建区域照明的表示。图图4(c)显示了一个例子,其中基于颜色直方图的方法CLAHE[28]在这两个方面都比最新的深度方法MSEC[1]恢复了暴露过度和暴露不足的区域更多的细节。然而,CLAHE[28]由于缺乏全局信息,往往会产生颜色不一致的图像。我们基于CLAHE[28]对LCD进行建模,并将其扩展为神经网络中的多尺度金字塔,以便通过学习局部到全局的照明相关性来解决不一致性。

 Building the LCD Pyramid

这段文本描述了对输入图像Ix进行处理的过程。首先,将图像Ix(尺寸为h × w,像素值范围在[0, 1]之间)分割成N个大小为K × K的局部块。这些局部块中的每一个被定义为LCD(局部颜色直方图)。接着,使用4D的LCD映射MK来表示尺度K的分布。首先构建一个h × w的双边网格Γ,通过在范围维度上进行像素直方图投票来完成这个网格构建的过程。最后,通过下面的公式计算Mk。

 4.2 Proposed Network

图5显示了拟建网络的概况。它有一个编码器-解码器[31]架构,结合了LCDE模块,以利用LCD金字塔来学习曝光过多和曝光不足区域的表示,以及用于自适应增强的双发光机制。

LCDE module. 

为了学习曝光过度和曝光不足区域的自适应表示,我们提出了LCDE模块,以在LCD金字塔的指导下预测自适应卷积核。我们的LCDE模块设计基于DRconv[8](最初提出用于高级图像分类和检测任务)。我们选择DRconv[8]来利用其产生区域核的思想。与根据局部语义学习不同内核的DRconv[8]不同,后者在曝光过度和曝光不足区域是不可靠的,我们根据由局部颜色分布引导的局部照明来学习不同的内核。具体而言,LCDE模块有两个分支,即卷积核生成分支和引导掩码预测分支(图5的右下部分)。第一分支将前驱特征图作为输入,并产生n个核{W1,W2,…Wn}的参数。引导掩模预测分支输入LCD图MK,并使用它来引导多值掩模的预测,用于将空间特征图划分为n个区域,以便在不同区域上应用不同的卷积核。通过在不同的区域上应用不同的卷积核,多尺度LCD金字塔引导网络区分不同曝光的区域,并分别增强它们。

为了处理高分辨率输入,我们在双边上采样方法[6,7]的基础上构建了该模块,以实现快速推理速度。

Dual-illumination Estimation. 

为了约束模型学习Expaureaware掩模,我们在模型中利用了Retinex理论。基于Retinex的方法(例如[33])通常将输入图像Ix分解为照明图L和反射率图R。通过将反射率图R视为增强图像,DeepUPE[33]生成曝光不足增强结果Iu y,Iu y=R=Ix·L−1。由于L中的值落在[0,1]内,因此结果图像中的像素值总是大于输入图像的像素值。因此,这些方法不能抑制过度曝光。为了解决这个问题,我们建议通过在[43]中引入双路径学习,将[33]的照明预测机制扩展到双照明预测机制。这里的主要思想是,Ix中的过度曝光可以被视为Ix的反向图像中的曝光不足。通过首先通过I′x=1−Ix计算反向图像I′x,我们可以计算输入图像Ix的过度照明图L′以及照明不足图L。L和L′是通过带有LCDE模块的编码器-解码器网络来估计的。然后通过我们的融合网络将两个增强的分量融合以生成最终结果。

Fusion Network. 

融合网络f将两个单独增强的图像Iu y和Io y以及原始图像Ix作为输入,以回归最终增强的图像。它包含两个卷积层和两个非局部[34]块。利用非局部块,网络能够捕获像素之间的长程空间相关性。融合网络通过预测3通道权重图来融合三个输入以生成增强的结果Iy。

Why would our model work? 由于LCDE模块在n个区域上应用n个不同的内核,因此可以将每个区域视为分配了一个单独的解码器来学习亮度映射,但不会引入额外的计算成本,而所有区域共享相同的编码器用于特征提取(见图7)。此外,通过推断照明图,它有助于约束LCDE模块中引导掩模的学习,以关注这些区域的曝光水平。

4.3 Loss Function

我们采用四个损失项来训练我们的模型。我们应用广泛使用的MSE项Lmse来测量强度重建误差。为了校正曝光过度和曝光不足区域中的颜色失真,我们应用余弦相似性项Lcos[33,35,36],该项测量重建图像的颜色相似性及其在sRGB颜色空间中的基本事实。此外,为了引导网络估计照明图,我们将局部平滑项[33,38]应用于我们的双照明估计过程,表示为Ltv1,和Ltv2。局部平滑项旨在通过最小化图像照明的梯度变化来保持图像照明的局部平滑特性。整体功能可以写成

5 Experiments
5.1 Implementation Details 

我们使用PyTorch[25]实现了我们的模型。我们所有的实验都是在单个NVIDIA GTX3080 GPU上进行的。网络的参数由ADAM优化器[21]进行优化,β1=0.9,β2=0.999,学习率为1e−4。所需的区域编号设置为n=2,表示曝光过多和曝光不足的区域。方程4中损失函数项的权重λ1 = 1.0, λ2 = 0.5, λ3 = λ4 = 0.01。在我们的实验中,我们使用了一个4尺度的LCD金字塔和一个4尺度的编码器-解码器网络。我们在方程式2中利用[22]中的软直方图投票实现了Γ中的splatting操作。在训练过程中,我们将输入图像调整大小为512×512,并对输入数据进行随机水平和垂直翻转来增广数据。实验报告中的模型是基于一个具有218K参数的简单编码器-解码器网络实现的。

5.2 Comparisons with State-of-the-art Methods 

为了验证我们的方法的有效性,我们将我们的模型与现有的曝光校正和图像增强方法进行了比较。我们选择了三种传统的增强方法,包括直方图均衡(HE)、CLAHE[28]和LIME[15],以及七种基于深度学习的方法:ZeroDCE[14]、RetinexNet[10]、MSEC[1]、DSLR[18]、HDRnet[13]、DeepUPE[33]和RUAS[29]。我们采用常用的峰值信噪比(PSNR)和结构相似性(SSIM)作为评估指标

Quantitative Comparison.

表1报告了对MSEC[1]测试集的性能评估。MSEC[1]和我们的都是在MSEC[1]训练集上训练的,而其他数字是从MSEC[1]复制的。从表中可以看出,我们的方法在很大程度上优于第二好的方法(即MSEC[1])。表2进一步显示了对我们提出的测试数据集的比较。为了进行公平的比较,我们使用现有的基于深度学习的方法的预训练模型以及在我们的训练集中重新训练的模型来报告它们的性能。结果表明,我们的方法在PSNR和SSIM指标上都优于所有现有方法。

Visual Comparisons.

我们将我们的方法的结果与现有方法的结果进行了直观的比较。请注意,本实验中使用的所有模型都在我们的数据集上进行了重新训练,以便进行公平的比较。图8显示了两个例子,其中包含我们数据集中暴露过度和暴露不足的区域,以及现有方法和我们的结果。我们可以看到,我们的方法可以同时纠正这两个问题过度和不足暴露的区域,并产生更视觉上令人愉悦的细节和颜色。我们进一步展示了对具有大量过度曝光像素的图像的比较(图9)或曝光不足像素的图像(图10),来自我们的数据集,来自MSEC[1]数据集的一张图像(图11),以及来自互联网的两张图像(图图12)。这些比较通常表明,我们的方法很好地适用于不同的曝光水平和不同的照明条件。有关更直观的比较,请参阅补充资料

 

5.3 Internal Analysis 

Ablation study 

为了分析我们提出的模块和流程的有效性,我们对网络结构进行了消融实验。具体来说,我们训练了四种不同的模型:(1)一个简单的编码器-解码器(Oursplain),(2)在(1)的解码器中添加了LCDE模块(Ourssingle),(3)在(1)的解码器中添加了DR-conv块[8](OursDRconv),(4)在(2)中添加了双光照估计(Ours)。

如表3所示,双照明估计或LCDE模块显著提高了性能,验证了双照明学习和局部颜色分布先验的有效性。(2)和(3)之间的比较表明,我们的模型的性能增益主要是将(2)和(3)进行比较显示出,我们模型的性能提升主要是由于LCD金字塔先验而不是区域动态卷积。我们还对损失函数项进行了消融研究,见表3。通过比较最后三列,我们可以看到逐渐引入局部平滑项Ltv和余弦相似性项Lcos能够持续提高增强性能。

Visualization and interpretation.

我们将网络的中间结果可视化,以检查网络是否具有区域感知能力。图13示出了由LCDE模块预测的多尺度引导掩模特征。我们期望在LCD金字塔的引导下,输入图像和特征图可以根据曝光水平通过引导掩模划分为不同的区域。如图13所示,当n = 2时,LCDE模块的中间引导掩模通常将像素划分为亮区域和暗区域。这表明在LCDE模块的指导下,网络确实学习了输入图像的区域感知自适应增强。

Limitations. 

图14展示了我们的方法可能无法增强的两种具有挑战性的情况。如果一幅图像包含大面积曝光不足的区域(图14(a))或大面积曝光过度的区域(图14(A)),对我们的模型来说,增强这些区域可能会很困难。作为未来的工作,我们希望探索语义场景布局以及图像修补技术来处理这种情况。

6 Conclusion 

在本文中,我们解决了校正具有过曝光和欠曝光区域的图像的图像增强问题。我们提出了一个新的数据集,并设计了一个全新的端到端模型来解决这个问题。我们提出了LCDE模块,用于在局部颜色分布的指导下检测曝光过多和曝光不足的区域。我们通过提出双照明估计器来更好地重建细节,从而扩展了基于Retinex理论的照明。大量实验表明,与最先进的方法相比,我们的方法表现良好

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

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

相关文章

anolisos8.8安装显卡+CUDA工具+容器运行时支持(containerd/docker)+k8s部署GPU插件

anolisos8.8安装显卡及cuda工具 一、目录 1、测试环境 2、安装显卡驱动 3、安装cuda工具 4、配置容器运行时 5、K8S集群安装nvidia插件 二、测试环境 操作系统:Anolis OS 8.8 内核版本:5.10.134-13.an8.x86_64 显卡安装版本:525.147.05 c…

学习笔记——GDB调试器

感谢B站up主 xiaobing1016 的学习视频:基于VSCode和CMake实现C/C开发 | Linux篇_哔哩哔哩_bilibili

电脑加密软件哪个最好用(电脑加密软件排行榜2023)

你公司的电脑数据在裸奔? 你公司的核心文件完全开放? 你公司的机密图纸谁都能获取? …… 作为老板的你,该不会还不知道电脑加密软件能够解决上述这些问题吧! 我看过一个案例,新闻报道的略显夸张&#x…

企业资产管理技巧,这一点厉害了!

​随着市场竞争的不断加剧和金融环境的日益复杂,有效地管理和优化资产已经成为保持竞争优势和实现财务目标的不可或缺的一环。资产不仅仅是组织或个人的财富,更是潜在的增长动力和风险源。 传统的资产管理方法已经不再适应现代快速变化的经济环境。为了适…

【C语言程序设计】选择结构程序设计

目录 前言 一、程序阅读 二、程序改错 三、程序设计 总结 🌈嗨!我是Filotimo__🌈。很高兴与大家相识,希望我的博客能对你有所帮助。 💡本文由Filotimo__✍️原创,首发于CSDN📚。 📣如…

时间序列预测 — CNN-LSTM实现多变量多步光伏预测(Tensorflow)

目录 1 数据处理 1.1 导入库文件 1.2 导入数据集 1.3 缺失值分析 2 构造训练数据 ​3 模型训练 3.1 CNN-LSTM网络 3.2 模型训练 4 模型预测 专栏链接:https://blog.csdn.net/qq_41921826/category_12495091.html 1 数据处理 1.1 导入库文件 import scip…

一些paper工具帮你搞定日常科研工作

如果你是在校生,科研er 你的日常避免各种各样的pepers;找papers,读papers,写papers。这三部曲贯穿这你整个科研工作,如何在有限的时间里,能够高效的完成科研,且保质保量,我们需要一些…

C# WPF上位机开发(内嵌虚拟机的软件开发)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 学习过halcon的同学都知道,它不仅有很多的图像算子可以使用,而且调试很方便。每一步骤的调试结果,都可以看到对…

MES系统设备日常点检:提升设备管理效率与维护质量

一、MES系统设备日常点检概述 MES系统设备日常点检是指通过MES系统对设备进行定期的外观、功能、性能等方面的检查,以评估设备的运行状态和潜在问题。这种检查方式有助于及时发现设备故障和隐患,确保设备的正常运行,提高生产效率。 二、MES系…

公益众筹源码系统:水滴筹模式+完整的安装包+部署教程

今天小编i来非大家来介绍一款公益众筹源码系统,带有完整的搭建教程。 一、系统开发 1.需求分析:在开发公益众筹源码系统之前,我们首先进行了深入的需求分析,明确了系统的目标、功能、性能等方面的要求。 2.技术选型:根…

什么是泊松图像混合

泊松图像混合(Poisson Image Editing)的原理基于泊松方程。该方法旨在保持图像中的梯度一致性,从而在图像编辑中实现平滑和无缝的混合。以下是泊松图像混合的基本原理和公式: 泊松方程 泊松方程是一个偏微分方程,通常…

【头歌系统Python实验】经典函数实例

目录 第1关:递归函数 - 汉诺塔的魅力 第2关:lambda 函数 - 匿名函数的使用 第3关:Map-Reduce - 映射与归约的思想 如果对你有帮助的话,不妨点赞收藏评论一下吧,爱你么么哒😘❤️❤️❤️ 第1关&#xff…

Leetcode刷题笔记题解(C++):BM11 链表相加(二)

思路&#xff1a;先对两个链表进行反转&#xff0c;反转求和注意进位运算&#xff0c;求和完成之后再进行反转得到结果 /*** struct ListNode {* int val;* struct ListNode *next;* ListNode(int x) : val(x), next(nullptr) {}* };*/ #include <cstddef> class Soluti…

使用ffmpeg命令进行视频格式转换

1 ffmpeg介绍 FFmpeg 是一个非常强大和灵活的开源工具集&#xff0c;用于处理音频和视频文件。它提供了一系列的工具和库&#xff0c;可以用于录制、转换、流式传输和播放音频和视频。 FFmpeg 主要特点如下&#xff1a; 格式支持广泛&#xff1a;FFmpeg 支持几乎所有的音频和视…

AQS的应用

文章目录 1. 概述2. ReentrantLock 原理 什么是AQS 口述&#xff1a;全称是 AbstractQueuedSynchronizer&#xff0c;是一个框架&#xff0c;提供了这种 通用的同步器机制&#xff0c;它里面也是定义了很多的方法&#xff0c;像获取锁啊释放锁啊&#xff0c;其实释放啊获取啊是…

输出网络结构图,mmdetection

控制台输入&#xff1a;python tools/train.py /home/yuan3080/桌面/detection_paper_6/mmdetection-master1/mmdetection-master_yanhuo/work_dirs/lad_r50_paa_r101_fpn_coco_1x/lad_r50_a_r101_fpn_coco_1x.py 这个是输出方法里面的&#xff0c;不是原始方法。 如下所示&a…

Windows 下 PyTorch 入门深度学习环境安装与配置 GPU 版

1.确定自己的硬件信息&#xff0c;确定电脑有英伟达 (NVIDIA)显卡 在任务栏上右键打开任务管理器 2.下载安装 Anaconda &#xff08;建议安装迅雷下载&#xff0c;同时浏览器添加扩展 “迅雷Chrome支持”&#xff09; https://www.anaconda.com/ https://repo.anaconda.com/arc…

无需重启,修改Linux服务器时区

Linux修改服务器时区&#xff08;无需重启&#xff09; 1、复制命令&#xff1a;2、使用tzselect命令&#xff1a;3、使用date查看是否修改正确 1、复制命令&#xff1a; cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime2、使用tzselect命令&#xff1a; tzselect按照要…

GIT提交规范-范式和示例

关注公众号&#xff1a;”奇叔码技术“ 回复&#xff1a;“java面试题大全”或者“java面试题” 即可领取资料 主题&#xff1a;GIT提交规范 一、GIT提交范式 feat(功绩)&#xff1a; 新增 feature fix: 修复 bug docs: 仅仅修改了文档&#xff0c;比如 README, CHANGELOG, CO…

MISC之LSB

LSB隐写 简介 LSB隐写&#xff08;Least Significant Bit Steganography&#xff09;是一种隐写术&#xff0c;它通过将秘密信息嵌入到图像、音频或视频等多媒体文件中的最低有效位中来隐藏信息。在数字图像中&#xff0c;每个像素由红、绿、蓝三个通道的颜色值组成。每个颜色…
最新文章