没有合适的资源?快使用搜索试试~ 我知道了~
惩罚最佳执行者:语义分割适应的保守朱新戈1、周辉2、杨策源1、石建平2、林大华11香港中文大学-商汤科技联合实验室,香港特别行政区香港中文大学2商汤科技研究院,中国zhuxinge123@gmail.com抽象。 由于昂贵且耗时的注释(例如,对于真实世界图像,计算机视觉中的最近工作重新分类为合成数据。然而,由于合成数据和真实图像之间的域移位,真实图像上的性能在这种情况下,域自适应带来了一个有吸引力的选择。领域自适应的有效方法形成的表示,(1)是区分的主要任务和(2)有良好的泛化能力的领域转移。为此,我们提出了一种新的损失函数,即,保守损失,惩罚极端好和坏的情况,同时鼓励温和的例子。更具体地说,它使网络能够通过梯度下降来学习具有区别性的特征,并且通过梯度上升方法对域的变化保持不变大量的实验表明,我们提出的方法实现了最先进的结果。消融研究对保守性损失的性质有了更多的了解探索性实验和讨论表明,我们的保守损失具有良好的灵活性,而不是限制一个确切的形式。1介绍深度卷积神经网络在计算机视觉的众多任务中为最先进的技术带来了令人印象深刻的进步[1,2,3]。同时,这些显著的飞跃需要大量的标记数据。对于一些像素级任务,例如,语义分割,获得细粒度的标签是昂贵和耗时的。在[4]中,他们报告手动标记单个图像需要超过90分钟。计算机图形学的最新进展[5]为解决数据问题提供了另一种解决方案。在[5]中,他们从GTAV游戏中自动捕获图像和细粒度标签,速度比人类快几个数量级。然而,在合成数据上训练的模型在真实世界的图像上表现不佳主要原因是训练域和测试域之间的转换[6]。在存在域偏移的情况下,在合成数据上训练的模型往往倾向于偏向源域(合成图像),使得它们不能推广到目标域(真实图像)。2X. Zhu,H.Zhou,C Yang,J.Shi,D.林目标域的鞍点源目标最好成绩图像标签(a) 源域:大量标记数据图像预测(b) 目标域:未标记数据图1:我们显示了mIoU在源域和目标域上的趋势曲线表示趋势,点表示 实 际 mIoU 。 此 外 , 我 们 还 展 示 了 源 域 ( GTAV ) 和 目 标 域(Cityscapes)的示例传统的域自适应方法主要集中在图像分类任务上,可以总结为两条线:(1)最小化源分布和目标分布之间的距离[7,8,9];(2)通过对抗学习明确确保两个分布彼此接近[10,11]。现有的作品[12,13]使用了类似的想法,即,梯度反转层,我们提出的损失域适应图像分类,这是通过乘以一个负标量在反向传播。然而,由于一幅图像中的像素之间存在很大的类别差异,因此对于具有相同标量的所有像素均匀地反转梯度的方式不适合于分割中的结构化预测。这些缺点限制了梯度反转层推广到分割自适应。语义分割为输入图像提供了像素级的标记,比图像分类具有更高的信息密度和结构化程度,这使得语义分割的领域自适应变得困难。因此,分类任务中关注稀疏高级特征的域自适应技术不能很好地转换到分割自适应[14]。很少有作品探讨了分割的主适应[14,15,16]。正交于那些专注于操纵数据统计[15]或将课程学习[14]应用于适应的工作,我们提出了新颖的保守损失来实现它,而不引入额外的计算开销。我们观察到,随着训练步骤的进行,目标任务上的成绩先升后降。我们在图1中示出了合成(GTAV数据[5])到真实(Cityscapes数据[4])分割适应的实验中的mIoU的趋势。可以观察到,由于域移位,源域和目标域上的性能不会同时达到最佳。由于在训练过程中没有目标域的地面真值,因此需要在源域上找到目标域的鞍点值得注意的是,目标域的鞍点确实偏向源域上的最佳得分,这种现象与许多领域adap-惩罚表现最好的人:保守损失3站理论[17,18,19]。因此,我们专注于学习具有以下两个特征的表示:(i)对源域上的语义段的区分性(c〇respondingtothe在本文中,这是通过训练与保守损失,一个对抗性的框架保守损失非常简单。它拥有与所需表示的属性相对应的两个属性。首先,当源域上的地面真值标签的概率较低时,保守损失迫使网络通过梯度下降来学习更多的判别特征其次,当地面真实标签的概率高得多时,我们的损失通过给出负值来惩罚这种情况,这防止模型偏向源域训练数据,进一步提高泛化能力。这对应于域不变的第二个属性。可以看出,我们的损失函数寻求最佳参数,提供这两个目标的鞍点。此外,生成对抗网络(GAN)[20]也被引入我们的模型。与其中他们应用特征级鉴别器的一些作品[10,15]不同,我们利用GAN通过强制重建图像对于鉴别器是不可区分的来进一步补充局部对准。我们进行了广泛的实验合成真正的分割适应。所提出的方法相对于先前的最新技术水平有了相当大的改进,并且在Synthia [21]到Cityscapes [4]实验上实现了9.3点的mIoU增益,而在评估期间没有引入任何额外的计算开销。消融研究验证了不同组件对我们性能的影响,并对我们的保守损失特性提供了更多见解更多的讨论和可视化表明,保守损失具有良好的灵活性,而不是局限于一个固定的实例化。2相关工作语义分割。 语义分割是一个非常活跃的领域,它是一个为图像的每个像素分配对象标签的任务。随着深度分割模型[3]的激增,最近的最佳性能方法都建立在CNN [1,22,23]上。需要大量的人力来注释细粒度语义分割地面实况。根据[5],手动分割每张图像确实需要大约60相反,从视频游戏(如GTAV)中收集数据[5]与人类注释者相比更快,更便宜。例如,[5]通过使用GPU并行方法,在49小时内提取了24,966张带有注释的GTAV图像。然而,由于它们的数据分布不一致,很难将在合成图像上训练的模型应用于真实世界的图像。域适配。许多机器学习方法依赖于训练和测试数据处于相同分布的假设。但据4X. Zhu,H.Zhou,C Yang,J.Shi,D.林通常情况下,存在一些差异[17,19],这导致测试数据上的显著性能下降。领域自适应的目的是减轻训练数据和测试数据之间的差异的影响。用于图像分类的领域自适应。现有的领域自适应研究主要集中在图像分类问题上。常规方法包括最大平均差异(MMD)[7,8,9]、测地线流核[24]、子空间对齐[25]、不对称度量学习[26]等。最近,局部自适应方法旨在提高深度神经网络的适应性[7,13,27,28,29,30,31,32]。用于语义分割的领域自适应。很少有人关注的领域适应语义分割任务。这项任务的开创性工作是[15],它将全局和局部对齐方法与域对抗训练相结合。另一项工作[14]应用课程学习来解决由易到难的领域适应在[16]中,他们提出了一种无监督学习来适应不同城市的道路场景分割器。在[33]中,他们通过对抗模块在特征级执行输出空间自适应。与它们限制分布[15]或网络输出[33]不同,我们提出保守损失来自然地寻求区分性和域不变表示。对抗学习。最近,生成对抗网络(GAN)[20]引起了极大的关注。一些作品扩展了这个框架的域自适应。CoGAN [11]通过生成跨域实例来实现域自适应领域对抗神经网络[12]考虑对抗训练来抑制领域偏差。在[10]中,它们结合了对抗性区分设置以帮助减轻性能下降。在我们的工作中,我们还将GAN纳入我们的模型,其鉴别器驱动源图像向目标图像,以促进域对齐。3方法如上所述,实现无监督域自适应的关键是区分性和域不变表示。保守损失被提出来惩罚极端情况,其目标是提供一个歧视性和域不变表示之间的平衡此外,我们引入了生成对抗网络来对齐源和目标嵌入。下面,我们首先描述我们模型的框架及其网络块。然后,详细介绍了保守损失及其产生的背景最后给出了优化方案。3.1框架概述我们的框架如图2所示。在我们的设置中,有两个域:源域(图像和标签)和目标域(仅图像)。我们的框架旨在通过应用在源域上训练的模型来在目标域上实现良好的性能。惩罚表现最好的人:保守损失5目标域源域GD真/假E共享权重3,洛杉矶00S保守损失的反向传播保守损失图2:我们框架的管道。E表示编码器,G表示生成器,D是编码器。S是用于语义分割的逐像素分类器。红色表示源域的网络块,蓝色表示目标域。我们还展示了保守损失及其反向传播。表示梯度上升,表示梯度下降我们的模型包括两个主要部分,即,GAN和分段部分。GAN的目标是对齐源和目标嵌入。更具体地说,生成器和解码器正在玩一个极大极小游戏[20],其中生成器将源嵌入作为输入并生成类似目标的图像以欺骗解码器,而解码器试图对重建图像进行分类[10,11]。分割部分可以被看作是一个规则的分割模型。对于每个部件,详细组件如下所示:• 编码器(E)执行给定源或目标图像的特征嵌入,其架构是全卷积网络。生成器(G)基于嵌入来重构图像。鉴别器(D)将重建的图像分类为真实的或假的。S是逐像素分类器。• GAN由编码器、发生器和编码器组成。• 分割部分由编码器和像素级分类器组成。请注意,编码器在GAN和Segmentation中都工作。由于页面空间有限,生成器和鉴别器的详细结构将在补充材料中描述。3.2背景在本节中,我们简要介绍域适应理论,并介绍它与我们提出的损失的关系。6X. Zhu,H.Zhou,C Yang,J.Shi,D.林领域适应的许多理论分析[17,18,19]已经提供了目标领域的预期风险的上限,这取决于其源域误差(测试时间)和两个域之间的分歧。从形式上讲,T≤ Id(S,T)+C,2(一)其中S和T分别表示源域和目标域。风险是预期的风险。d是域散度,其具有不同的概念,例如H散度[19]。C是常数项。可以观察到,两个项αS和d(S,T)与期望表示中的特性密切相关。第一个项CoS表示模型应该产生区别性表示,以便在源域上获得较小的预期风险,这对应于区别性的第一个属性。第二项d(S,T)定义两个分布之间的差异距离,其中两个域的表示越相似,差异距离越小。这与域不变的第二个属性相关。更多的理论分析见补充材料。图3:具有不同a的建议的保守损失。可以观察到,保守损失在中间水平保持较低的值,并惩罚极端好或坏的情况3.3保守损失如上所述,期望的表示对于源域上的主要任务应该是有区别的,并且具有良好的泛化能力,而不是进入过拟合。因此,我们建议保守损失惩罚表现最好的人:保守损失7一一塞格角源域上的语义分割,其具有以下两个属性:• 当地面真值类的概率较低时,损失函数给出一个正值,这使得网络能够通过使用梯度下降方法来学习更具鉴别力的特征。• 当概率较高时,损失函数输出负值,这使得网络通过梯度上升避免了对源域的偏差,从而进一步学习更好的泛化能力。保守损失公式为:CL(pt)=(1 + loga(pt))2*loga(− loga(pt)),(2)其中pt是我们的预测朝向地面事实的概率。 a是对数函数的底,也表示与x轴的交点,即1。 对于图3中的a ∈ [2,e,3,4]的几个值,保守损失是可视化的,其中hiche是Euler的n um b e r并且e ≈ 2。718. 具体地,(1+l〇 ga(pt))2充当调制因子,其在pt低得多或高得多时传递大值。 log a(−log a(pt))被设计为梯度方向的切换,其中当pt>1时为负,否则为正。在下文中,我们提出了两个引理来分析我们的保守损失的吸引性引理1:域自适应系统的目标函数包含一个鞍点,该鞍点与保守损失的零点有关。如图2中的流水线所示,完整的目标由两部分组成:包括用于分段的损失Ls和用于GAN的损失LGAN。符号塞格角 动态地依赖于PT。当pt很高时,负值导致梯度上升以逃避对源极域的偏置。否则正值使特征具有区别性。可以看出,我们的损失平衡了在学习过程中塑造表示的两个目标(区分性和域不变),其零点充当鞍点。更多细节见补充材料。引理2:我们的损失鼓励在大范围内的温和的例子,这使得整体优化更稳定。从损失形式中可以观察到,损失集中在硬消极和积极方面,并且倾向于在中间水平给出较低的概率值。例如,在a = e的情况下,p的损失值t= 0。9和pt= 0。1的损失值分别为-1.8和1.4,而pt= 0。5且pt=0。6是-0.03和-0.06。在这样的设置中,损失扩展了示例接收低损失的范围,这即使在梯度下降和上升由于联合优化而频繁交替的情况下也带来稳定的塞格角 L甘在实践中,我们使用保守损失的λ-平衡变体:CL(pt)= λ(1+ log a(pt))2* log a(−log a(pt))。(三)的L的L8X. Zhu,H.Zhou,C Yang,J.Shi,D.林GANGANGANseg正如我们的实验所示,不同的平衡因子λ产生略有不同的性能。虽然在我们的主要实验中,我们使用上面定义的保守损失,但它的确切形式并不重要。在4.5节中,我们提供了其他形式的损失,它们也保持了这两个性质,实验结果表明它们也是有效的。3.4模型目标我们的全部目标是交替地更新三个网络块,即,识别器(D)、发生器(G)和编码器(E)。请注意,S是一个像素级分类器,在我们的模型中没有可学习的参数。因此,该目标包含三个术语:LD、LG和LE。然后,我们解释了我们的方法中使用的各种损失,并描述了替代的优化方案。对抗性损失。继承GAN [20],我们将从鉴别器导出的对抗损失应用于所有三个块。 我们称它们为LGAN,D,LGAN,G和LGAN,E。对于两个部件的多个局部操作系统,也就是说,Ls对于源图像和Lt对于目标图像。由此通过LGAN=Ls获得对抗损失tGAN.值得注意的是,对于编码器,对抗性损失进行跨域更新(即,从源域到目标域将图像分类为真或假,反之亦然),这迫使网络为两个域生成类似的嵌入。重建损失。发生器执行图像重建。我们使用L1距离作为Lrec,因为L1鼓励更少的模糊。分段丢失。如第3.3节所介绍的,保守损失被应用于领域自适应设置中的语义分割在训练过程中,我们迭代地优化所有三个可学习的部分(编码器,生成器和鉴别器)。在推理期间,仅使用编码器和交替更新方案描述如下:(1) 更新鉴别器:总损耗为LD= LGAN,D。(2) 更 新 生 成 器 : 损 失 包 括 对 抗 损 失 和 重 构 损 失 。 总 损 耗 为LG=LGAN,G+Lrec。(3) 更新编码器:由于编码器在两个组件中都工作,即,GAN和分割,总体损失是几个损失的组合,包括对抗损失和源域上的分割损失LGAN,E+ Ls.4实验4.1数据集根据以前的工作[14,15],我们使用GTAV [5]或Synthia [21]数据集作为具有像素级标签的源域,并且我们使用Cityscapes [4]数据集作为目标域。我们简要介绍数据集如下:+L惩罚表现最好的人:保守损失9GTAV拥有24,966张由游戏引擎GTAV渲染的城市场景图像。语义类别与Cityscapes数据集兼容。我们将带有标签的整个GTAV数据集作为源域数据。Synthia是一个大型数据集,其中包含从虚拟城市渲染的不同视频序列。我们采用SYNTHIA-RAND-CITYSCAPES [21]作为源域数据,其提供了来自具有Cityscape兼容注释的所有序列的9,400个图像继承现有方法[14],我们采用16个常见对象类别进行评估。Cityscapes是一个专注于城市场景的真实世界图像数据集,由2,975张训练集图像和500张验证图像图像的分辨率为2048× 1024,并提供了19个语义类别的像素级标注。我们将未标记的训练集作为目标域数据。在验证集上报告自适应结果。4.2训练设置在我们的实验中,我们使用FCN8s [34]作为语义分割模型。主干是VGG16 [2],它是在ImageNet数据集上预训练的[35]。我们将PatchGAN[36]应用于图像分割,其中图像分割尝试对重叠图像块是真实的还是虚假的进行分类。与EBGAN [37]类似在训练过程中,应用Adam [38]优化,β1=0.9,β2=0.999。对于保守损失,我们应用a= e和平衡权重λ=5。 消融研究将给出更详细的解释。由于GPU内存的限制,在我们的实验中使用的图像被调整大小和裁剪为1024×512,批量大小为1。更多的实验设置将在补充材料中提供。温暖的开始在我们的实验中,采用了两种不同的训练策略,即冷启动和热启动。冷启动是通过从头开始使用保守损失来训练整个模型热启动表明模型首先使用交叉熵损失,然后使用我们的保守损失进行训练许多工作[39,40,41]表明,与冷启动相比,梯度更新的热启动正如消融研究所示,热启动的性能优于冷启动。在接下来的领域自适应实验中,为了公平性,使用热启动策略来训练模型。4.3结果在本节中,我们通过进行两个适应实验提供定量评估,即,从GTAV到Cityscapes,从Synthia到Cityscapes。我们将我们的方法与几种现有模型进行了比较,包括FCNWild [15],CDA [14]和[33]。FCNWild [15]应用扩张网络[42]作为骨干,并且[14]的基础模型是FCN 8 s-VGG 19[34]。 Tsai等人 [33]在输出空间中采用对抗学习来执行特征自适应。每个类别的详细结果可在补充材料中获得。10X. Zhu,H.Zhou,C Yang,J.Shi,D.林表1:来自GTAV- Cityscapes的域适应的结果。粗体值表示列中的最佳分数。方法基地MioumIoU增益无适应[15]FCNWild [15]DilatedNet [42]DilatedNet [42]21.127.16.0无适应[14]CDA [14]FCN8s [3]FCN8s [3]22.328.96.6Tsai等人 [33个]FCN8s [3]35.0−我们的-不适应我们FCN8s [3]FCN8s [3]30.038.18.1表2:来自Synthia-Cityscapes的域适应的结果。方法基地MioumIoU增益mIoU-2无适应[15]FCNWild [15]DilatedNet [42]DilatedNet [42]17.420.22.8无适应[14]CDA [14]FCN8s [3]FCN8s [3]22.029.07.0Tsai等人 [33个]FCN8s [3]−−37.6我们的-不适应我们FCN8s [3]FCN8s [3]24.934.29.340.3GTAV→城市景观。为了公平起见,在19个常见类上评估结果。从表1所示,我们提出的方法实现了最佳性能(mIoU=38.1),其比[14]高9.2分,比[15]高 11分由于不同的实验设置和骨干网络(基线方法[14]也提到了差异),我们自己的基线性能高于其他方法。然而,亮点是性能提升。 我们可以发现,所提出的方法比[15]中的6.0和[14]中的6.6提高了8.1分。辛西娅→城市景观。我们在表2中报告了mIoU的结果。值得注意的是,[33]报告了Synthia [21]对Cityscapes适应的结果,只有13个对象类别(不包括墙壁,围栏和杆)。我们还将该结果报告为mIoU-2。我们提出的模型实现了34.2的mIoU,更重要的是,我们的模型获得了9.3点的性能增益,高于[14](7.0)和[15](2.8)的性能增益。与文献[33]相比,在13个分类上,我们的方法也取得了更好的性能。特别地,我们的模型除了源域和目标域数据之外不使用任何额外的场景解析数据,而[14]使用另一个数据集,即,PASCAL CONTEXT数据集,以获得超像素标签。4.4消融研究在本节中,我们进行了全面的消融实验,包括不同成分、不同保守损失因素和不同消融参数的消融实验。惩罚表现最好的人:保守损失11表3:申报型号中不同部件的消融研究结果。CL表示保守损失。CE表示交叉熵损失模型FCN8s+CEFCN8s+GAN+CEFCN8s+GAN+CLMiou30.034.438.1表4:保守损失中α和λa(固定λ=5)2e34Miou37.538.137.336.8λ(固定a=e)151020Miou37.238.137.937.8不同的训练策略。这些实验展示了不同的贡献的组件,并提供了更多的见解,我们的方法。不同成分的影响。在这个实验中,我们展示了我们模型中的每个组件如何影响最终性能。我们考虑以下几种情况:(1):基线模型,仅包含基础分割模型(我们的模型中的FCN8),并且仅使用源数据进行训练(2)FCN 8s和GAN组件,它由基模型和GAN组成,使用源数据和目标数据进行训练(3)完整模型包括三个部分,即, 基本模型、GAN和保守损失。我们在GTAV→Cityscapes设置上进行消融实验。消融研究结果见表3。可以观察到,每个组件在性能改进中起着重要作用。更具体地说,我们的完整模型达到了最好的结果,并获得了8.1点每单位增益。与FCN8s+CE相比,GAN部分也获得了4.4的性能增益。请注意,GAN组件可能会将未标记的目标域数据引入到整个模型中,因此基于GAN应用保守损失,并且不存在FCN 8s +CL的变体。保守损失中α和λ的影响。在这一部分中,我们设计了保守损失中α和λ的烧蚀实验 如等式2所示,a是对数的底,并且表示与x轴的交点。λ是平衡因子。我们在表4中显示了不同α和λ的影响。由于有两个变量,我们对一个变量进行消融研究,另一个变量对于a的烧蚀(固定λ= 5),可以观察到a= e实现最佳结果。此外,我们可以发现,与交叉熵损失(表3中的34.4)相比,所有不同的α都获得了更好的性能,这表明我们的损失始终表现得更好并且具有高鲁棒性。对于λ的烧蚀(固定a= e),不同的λ显示出略有不同的结果,λ=5获得最佳性能。热启动冷启动。如第4.2节所述,我们使用热启动策略来训练所提出的模型。 在这个实验中,我们比较了两种训练策略。对于冷启动策略,我们钳制保守损失12X. Zhu,H.Zhou,C Yang,J.Shi,D.林(资料来源)F城市景观(目标)车人地形FCN8s路我们其中[min =-10, max = 10],而该约束在热启动中不存在我们使用λ平衡保守损失,其中λ= 5且a= e。表5:两种训练策略的结果,即冷启动和热启动。CL表示保守损失损失函数[14个]冷启动热启动CLMiou28.935.238.1在表5中,可以观察到冷启动的保守损失优于[14],具有较大的裕度(6.3分)。热启动比冷启动性能更好,因为它使网络能够稳定地训练4.5讨论在本节中,我们设计了几个实验来验证所提出的方法的能力我们显示的适应分布的影响,以衡量域间隙是如何减少的特征级别。通过与几种分类损失和均匀损失的比较,说明了该方法的优越性和灵活性。可视化。为了验证适应对分布的影响,我们使用t-图4:我们显示了自适应对提取特征分布的影响。表示来自源域的点,SNE [43]以在图4中可视化特征分布。从每个域中随机选择100个图像,并且对于每个图像,来自最后一个卷积层的被提取出来。我们将我们的模型的分布与FCN8s(无适应)进行比较。四类采样显示,视觉效果清晰我们观察到,惩罚表现最好的人:保守损失13自适应的应用,使两个相同类别的域之间的距离更近,不同类别之间的差异也更明显。损失mIoU交叉熵34.4焦点损失35.8保守损失38.1图5:左图显示了三种分类损失,包括蓝色的交叉右表显示了GTAV→Cityscapes适应实验与其他分类损失的比较。在本实验中,我们将保守损失与交叉熵损失和焦点损失进行了比较[44]。交叉熵损失由CE(pt)=− log( pt)给出,如图5中的绿线所示。为了确保公平性,我们在FocalLoss实验中使用α平衡FocalLoss FL(pt)=−αt(1−pt)2log(pt)和热启动,并通过使用交叉验证应用αt从图5中的右表可以观察到,与交叉熵损失相比,焦点损失获得了更好的性能,因为它将学习集中在困难的否定示例上。然而,在域自适应中,域不变表示对于实现良好的自适应性能是至关重要的保守损失通过惩罚极端情况使网络对域变化不敏感。可以看出,基于交叉熵损失,保守损失产生更高的结果(38.1),并且获得比聚焦损失(1.4)更多的性能增益(3.7)。均匀损失的影响。如第3.3节所示,保守损失具有两个属性:(1)当pt较低时,保守损失强制网络学习区分特征。(2)当p-t很高时,损失使得网络能够通过梯度上升方法学习域不变特征有几个损失也保持这两个属性,例如三次方程。在这个实验中,我们提出了几个均匀的损失,以验证这两个效果14X. Zhu,H.Zhou,C Yang,J.Shi,D.林e属性,由下式给出:损失1= −λ1(pt− 0. 5)3,(4)损失2=−λ2(pt−1)3,(5)e(pt−1)3,pt1,
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功