版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于图像处理的手写体数字识别系统设计目录TOC\o"1-3"\h\u13547摘要 119738关键词 1264291绪论 3322601.1研究背景 356421.2图像处理概述 4292021.2.1图像编码和压缩 415641.2.2图像增强 4215811.2.3图像恢复 57061.2.4图像分割 6175301.3神经网络简介 639631.3.1发展历史 6224421.3.2神经元 6139481.3.3多层神经网络 769341.3.4BP神经网络 8134482系统分析 9294732.1可行性分析 9134352.2需求分析 9243692.3开发与运行环境 982423系统设计 10126643.1开发工具和环境简介 10311613.2MNIST手写数据库介绍 104903.3卷积神经网络模型 1017683.3.1卷积层 1176613.3.2池化层 12109593.3.3全连接层 136503.4TensorFlow平台 13255083.5激活函数 1474634系统实现 15228064.1系统识别过程 15120524.2图片预处理 1515774.3检测用户手写数字图像的神经网络模型构建 16211014.2.1定义模型 1789724.2.2编译模型 18212784.2.3训练模型 18221534.2.4评估模型 18258784.2.5数据预测 18133054.3数字识别的实现 18186564.3.1模型训练 18291614.3.2实验结果与分析再增加几个实验结果,是否有识别错误的,书写潦草的情况能否正确识别,并简要给出原因分析 2026322参考文献 23摘要:近年来,图像处理技术在诸多行业和领域中发挥着重要的作用。对于手写数字序列的识别,属于图像识别的研究性领域,其在生活中应用的范围很大。本系统在集成开发环境pycharm中采用python语言并结合flask框架对其进行了开发,采用了图像处理技术,训练集和测试集使用mnist数据集,在tensorflow平台上利用keras构建了一个卷积式神经网络模型对手写的数字序列进行了识别。同时,文章还详细介绍了卷积神经网络中的卷积层、池化层和全连接层以及激活函数。用户可以在python环境下直接输入一张手写的数字照片,通过卷积神经网络的模型可以对数字信息进行准确的识别,取得了较好的实践效果。关键词:图像处理手写数字识别卷积神经网络TensorFlowKeras引言近年来,图像处理技术在诸多行业和领域中发挥着重要的作用。对于手写数字序列的识别,属于图像识别的研究性领域,其在生活中应用的范围很大。本系统在集成开发环境pycharm中采用python语言并结合flask框架对其进行了开发,采用了图像处理技术,训练集和测试集使用mnist数据集,在tensorflow平台上利用keras构建了一个卷积式神经网络模型对手写的数字序列进行了识别。同时,文章还详细介绍了卷积神经网络中的卷积层、池化层和全连接层以及激活函数。用户可以在python环境下直接输入一张手写的数字照片,通过卷积神经网络的模型可以对数字信息进行准确的识别,取得了较好的实践效果。1绪论1.1研究背景在模式识别这一研究领域中,手写体数字识别是其中一个研究的热点问题;并且在字符识别研究领域中,识别手写体数字成为比较难攻克的课题之一。它广泛应用在银行票据识别、邮件分拣、办公自动化等领域,为社会经济发展提供了巨大的效益。然而,由于数字的各种字体和书写形式,数字被认为是世界上比较难写的字符之一。因此,每个人的写作风格不一样,这也就给识别手写体数字带来了一定程度上的影响。在过去的一段时间里,虽然专家们克服重重困难,勤于研究,提出了各种各样的方法来识别手写体字符,想要提高对字符的识别性能,但大都以失败告终,识别精度远不及人类。手写字符识别技术,它可以通过传统的机器学习方法(例如k-邻域算法,支持向量机,贝叶斯方法等)来实现字符识别。传统上的识别方法始于对图像的预处理,然后是特征提取方法的手动设计。在提取特征之后,将得到的特征引入分类器中以进行训练,并获得与该分类器相关的参数[1]。目前,手写体数字识别主要有三种应用[2]:(1)大规模统计。例如,在诸如财务报表,人口普查等应用中,必须将大量数据输入计算机。在手动输入的情况下,不仅需要大量的人员和设备,而且存在很大的出错风险。为了解决这个问题,研究人员提出了一种智能,高效的机器识别系统,该系统可以自动、准确、高效地输入和处理信息。但是,大多数家庭公用事业系统要求用户按照某些标准填写表格,使得手写数字识别相对容易,并且减少了对识别算法的要求。(2)票据识别。例如,在银行支票和个人支票的情况下,对识别准确性的要求很高,这不仅是因为输入数据信息的重要性和准确性,还在于算法。(3)分拣邮件。随着经济的增长,将会有越来越多的私人和商业信件。如果手动分类,效率会很低。与手写数字识别和手动识别相结合的邮件分拣自动化将成为主要趋势。当今时代是个飞速发展的时代,是全球化时代,经过各国专家的不懈努力,现在的人工智能领域已经硕果累累,大数据、云计算以及数据挖掘等各种先进技术快速崛起。人们可以改变比较传统的工作方式,使用字符识别技术,把大量数据输入到计算机中,然后让计算机来处理这些数据,提高了工作效率,降低了劳动成本。1.2图像处理概述一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间坐标。当x,y和f的值都是有限的离散量时,就将此图像称为数字图像。对数字图像的处理是指使用计算机来对数字图像进行处理。图像处理,又称影像处理,是一种计算机技术来达到预期的效果。图像处理技术的主要内容包括图像压缩、恢复和增强以及匹配描述识别。经常使用的处理方法有图像数字化、图像编码、图像增强、图像恢复、图像分割和图像分析等。1.2.1图像编码和压缩图像压缩技术,它可以降低描述一幅图像所需的数据量,从而也就可以减少图片所占存储空间。此技术在数字图像研究领域中是有用和成功的技术之一。存储在计算机中的每一张图片中都包含大量的数据信息,为了便于在硬盘中存储以及在信道中传输,就要对这些图片进行压缩和编码。当要存储和传输这些图片时,要充分考虑信道带宽和通信链路这两个重要因素,当这两者的容量一定时,那么就要考虑使用图像压缩编码技术来降低要传输的图片中的数据信息量,从而可以大幅度地提高图像通信传输速度。目前,人们有很多种用于数字图像压缩编码的分类方法,其中主要包括哈夫曼编码、Golomb编码等[3]。1.2.2图像增强在现实生活中,人们的眼睛对某些图片可能不是很敏感,或者说人眼不是很容易观测到某些图像。因此,必须使用基于图像性质的某些方法来增强图片特征,从而增强人们对图像的敏感程度。图像增强技术,是指对图像进行某种操作,使其得到的结果能够在某种应用中比一开始的图像更加方便处理的一种技术。为了改善图像特征,以便从图像中能够获取到更多有用的信息,就要使用一些技术手段来改善图像的可视化效果,或者是变成某种更适合人眼观测和分析以及机器所能识别的形式。图像增强与所关注对象的特征、观察者的习惯和处理目的相关联,因此要有针对性地使用图像增强算法。图像增强被分为空间域增强和频域增强。空间域就是简简单单的只包含一幅图像像素的平面。对于空间域增强,此技术是直接作用在图像的像素上,它是指一种通过以线性或非线性的形式改变空间变化来改善图像像素的方法,其主要点处理和模型处理分为两种类型。而对于频率域来说,它的操作是在图像的傅里叶变换的基础上执行的,而不是针对图像本身[3]。1.2.3图像恢复图像恢复技术,和图像增强技术一样,也是要改善图像的原始样貌。但是,从某种程度上来讲,复原技术更倾向于使用数学模型,因此可以说图像恢复是比较客观的。而增强技术是以人的主观意志和喜好为转移的,就是人们主观上认为哪种效果好就使用哪种增强效果,因此可以说图像增强是比较主观的。在图像生成、传输和记录的过程可能会受到不可控因素的影响,例如图像处理系统出现某种故障、传输介质不稳定和不完善的设备等,会出现图像的质量下降的现象,即图像退化。在图像退化后,如果想要提高画质并尽可能恢复退化后的图像的本来的样貌,就需要根据图像退化的反向原理来对图像进行处理,这就是图像恢复。因此,在此过程中需要使用图像退化的先验知识来构建退化模型,然后使用一系列逆变性过程来重构图像,以获得更好的图像。图像退化过程可用下列公式来描述:g(x,y)=H[f(x,y)]+n(x,y)其过程如图1所示:图1图像退化过程在图像恢复过程中,首先必须建立一个基于退化原因的数学模型。建立此模型所需要的信息是来自于受污染或失真的图像信号。最后,沿着图像退化的逆过程来恢复原始图像[3]。同样,在图像恢复期间,应基于降级图像g(x,y)计算出实际图像的估计值f(x,y),并基于预定义的误差标准尽可能接近实际图像f(x,y)图2实际图像复原过程1.2.4图像分割图像具有不同的特征,所谓分割,就是将图像划分成一个一个小的区域,这些区域是含有不同的特征的,然后从中提取出人们比较感兴趣的部分。区域划分的程度是根据要解决的问题而定的。也就是说,在实际应用中,当感兴趣的区域(这些区域中可能是含有一些易观察的特征的)已经被检测出来时,分割就停止了。在检索、识别和理解图像的过程中,需要对图像进行先分割后提取信息。图像分割算法通常是基于两个基本特征之一:不连续性和相似性。在基于不连续性特征中,实现方法是以灰度突变(例如,图像的边缘)为基础来对图像进行分割。在基于相似性特征中,主要方法是根据一组事先已经定义好的规则将一幅图像分割为相似的区域[3]。1.3神经网络简介1.3.1发展历史1943年,美国心理学家W.McCulloch和数学家W.Pitts是最早提出使用数学模型来研究神经元理论的,他们提出了一个简单的神经模型即MP模型。自20世纪60年代以来,人们存在着一种误区,以为数字计算机能够完全解决人工智能、专家系统和模式识别的问题,也就淡化了对“感知器”的研究,从而对人工神经网络的研究进入低潮。1986年,Rumelhart等人提出了最有影响的反向传播方法BP方法。BP算法是最重要的,也是用于自动控制的最常见的算法。2006年,Hinton在《科学》及相关杂志发表的文章中首次引入了“深度学习”的概念。在语音识别领域,对深度学习的研究正在迅速开展。并且,于2012年,深度学习技术在图像识别领域初露头角。Hinton和他的学生在ImageNet竞赛中证明了多级神经网络识别效果的优越性。1.3.2神经元神经网络的最基本组成部分是神经元(neuron)。在生物神经网络中,每个神经元都连接到另一个神经元,当它兴奋时,就会分泌某种化学物质,然后发送给神经元,也就改变了这些神经元的电势。神经元的电位超过“阈值就会被激活,并且向其他神经元发送化学物质[4]。人工神经网络(ArtificialNeuralNetwork)是一种计算模型。人们在研究过程中,受到人类大脑生物神经网络处理信息方式的启发,开发了人工神经网络的计算模型。目前,人工神经网络在机器学习这一领域中发展迅速。神经模型包括输入、输出和计算功能。其中,可以把输入的数据看作是神经元中的树突,把输出数据看成神经元中的轴突,把计算能力看作是细胞核。它从其他的一些节点或者是内部的一些节点接收到要输入的数据,通过相应的计算输出计算结果。每一个输入的数据都是根据它的重要性来进行加权的,即数据重要性不同,其加权值也就不同。节点的计算方法是各个输入和相应权重的加权和,如图3所示:图3神经元模型图3所展示的是神经元的计算输出结果为Y,其中f为激活函数。使用激活函数是为了使神经元输出非线性数据。1.3.3多层神经网络多层感知器(MultiLayerPerceptron),它是含有一个或者多个隐藏层的(这个是不包括输入层与输出层在内的)。其结构如图4所示:图4多层神经网络结构模型在输入层中有3个节点。其中偏置结点的值为1,另外两个节点将和作为外部输入数据(其中和的值是依输入数据集的值而定的)。由于神经网络在输入层中是不进行计算的,因此输入层的输出结果为1、和,然后计算结果就会被送到隐藏层进行下一步计算。隐藏层:和在输入层中一样,此层中也是有3个结点,此层中的另外两个结点的输出值是依照输入层的输出值和连接边的权值而定的。图4中展示出了一个隐藏结点的输出计算(黄色结点显示)。同样地,也可以计算出其他隐藏层中结点的输出值(其中,f指的是激活函数)。然后将这些输出数据发送给输出层。 在输出层中,它是有2个结点的。这层中的数据是由隐藏层送过来的,并且与隐藏层中的黄色节点进行相同的运算过程。然后输出计算结果。1.3.4BP神经网络反向误差传播算法(errorBackPropagation,简称BP)是到目前为止学习神经网络最成功的算法。实际上,在应用中,大多数都使用BP算法来进行神经网络的训练。令人可喜的是,BP算法可以用来训练多种类型的网络,例如递归神经网络、多级反馈神经网络等。BP神经网络的结构如图5所示。图5BP神经网络结构模型
2系统分析2.1可行性分析该系统开发的核心模块是对获得的手写数字图像进行图像预处理、特征提取和识别,这些都是数字图像处理的关键技术。本人通过本科阶段的学习,对图像处理中的技术有了一些了解,有能力实现该系统中的核心模块。本系统是在PyCharm平台上进行开发的,使用的编程语言是Python。PyCharm平台是一个集成开发环境,在这个平台中进行开发,大幅度地提高了开发的效率。因此,该系统在技术层面上具有开发的可行性。2.2需求分析对于软件系统,软件性能对用户而言是最重要的指标,即其执行效率。此性能是该软件的非功能性功能。这不是软件是否能执行特定功能的问题,而是软件是否按时能执行的问题。系统处理的准确性和准时性是系统的基本特征。在设计和开发该系统时,充分考虑了系统的处理能力和系统的响应时间,从而可以满足信息处理的需求。虽然在系统开发过程中使用了大量数据,但是数据的准确性在很大程度上决定了定位字符识别的成功与否。由于字符尺寸小,并且位置、提取和字符识别数据的可变性低,因此很容易完全修改结果。因此,有必要采用某些方法来确保系统在开发过程中的准确性和及时性。2.3开发与运行环境操作系统:Windows10编译环境:PyCharm11.0开发语言:Python模型构建:卷积神经网络,TensorFlow平台
3系统设计3.1开发工具和环境简介PyCharm,它是一种PythonIDE,用户可以使用多种工具来提高使用Python语言的效率。如:调试和语法突出显示、项目管理、版本控制等。IDE提供支持Flask框架内的Web专业发展先进的功能。这些功能被高级代码分析支持,对于专业的Python开发者和初学者来说是有用的工具。3.2MNIST手写数据库介绍本文将MNIST手写数字数据库作为实验数据,将5万张图片作为训练数据,将1万张图片作为测试数据。每张图片都显示一个从0到9的数字。该示例还包含对应于每个训练数据的标记。标签集共包含10个分类数据,包括0、1、2、3、4、5、6、7、8和9。该数据集由美国国家标准与技术研究所(NIST)开发。数据库的每个图像为28×28像素[5]的灰度图像。训练数据集如图6所示。图6MNIST数据示例3.3卷积神经网络模型卷积神经网络(CNN)的作用主要体现在解决二维数据方面的问题。和人脑类似,它是先要学习大量的知识,然后再解决问题。一个基本的CNN结构一般是由五部分组成的,即输入层、卷积层、池化层、全连接层和输出层。CNN是由一层卷积层和一层池化层这样交替配置的,每一个卷积层和每一个池化层都是含有几个特征提取器的。CNN将多个卷积层和池化层组合起来处理输入信号,然后在全连接层进行输入信号与输出目标的映射。卷积层中的每一个神经元不是孤立存在的,它们首先连接到上一层中的部分区域,然后使用卷积运算来提取信息,这些信息和二维数据特征是有关系的,从而可以适当减少噪声对特征的不必要的干扰。池化层,又被称为采样层。采样层是用来对二维数据进行采样的。所谓采样,就是指成比例地把特征图的宽和高扩大或者缩小的一个过程。通过采样,可以适当减少分辨率,也就减少了要处理数据的大小,最终可提高对信息的处理速度[6]。卷积层和池化层不仅在显著减小参数矩阵的大小,加速收敛和显著降低计算负荷方面发挥重要作用,而且在充分反映图像空间区域的信息特征方面也发挥着重要作用。可以使用BP来训练CNN,但是就像在卷积层和采样层中一样,由于每一个神经元在训练期间使用相同的连接权重,因此训练所需的参数数目可显著减少。本文基于卷积神经网络模型网络结构来构建手写体数字识别模型。其网络结构如图7所示。图7卷积神经网络结构图3.3.1卷积层在数学中,离散卷积是一种特殊的运算,其中,它根据一定的规则将两个离散序列x(n)和h(n)中的有关序列的值相乘再相加。可用公式[7]表示为:y(n)=其中,y(n)就是经过卷积运算后得到的一个新的序列。而在神经网络中,卷积层的操作就是用的离散卷积技术,卷积运算过程如下图8所示:图8卷积运算过程例如,我们输入的图片大小是m×n的,卷积层中有一个k×k大小的可训练的卷积核,同时卷积步长设为1,那么经过卷积运算,我们就可以得到一张尺寸大小为(m−k+1)×(m−k+1)的图片。如图11所示,28x28的图片通过5x5卷积层是CNN中的第一层,它通过垂直和水平滑动滤波器记忆输入图像覆盖其整个区域的特征。它增加了每个区域的偏差,然后评估了滤波器值和图像区域的标量积。为了启动元素激活函数,如max(0,x)、Sigmoid和tanh,通过校正线性单元应用于该层的输出。卷积层也被称为特征提取层,顾名思义,这层主要是用于提取出输入数据的特征。在卷积层的内部包含许多可训练的卷积内核,构成内核的各要素都对应一个权重因子和一个偏差,最终提取出的数据特征的数目是取决于内核的卷积数目的。卷积运算实际上是使用可训练的卷积核fx去卷积一个输入的图像,并添加bx偏移量以获得卷积c图9卷积层的卷积过程3.3.2池化层池化层也被称为采样层。在池化层(PL)中,为了更容易和更快的网络计算,数据量发生了收缩。最大池化和平均池化是实现池化的主要工具,其中最常用的是最大池化。最大池化是先将输入的图像分割成许多个矩形的区域,然后从每个子区域中提取出最大值。该层通过输入图像应用垂直和水平滑动滤波器获得输入数据的每个区域的最大值或平均值,并减少数据的体积,并控制一定程度的过拟合[9]。池化层的输入数据一般来自前面的卷积层,其主要功能是提供很强的鲁棒性(例如,最大池化是在一个较小的范围内取最大的值,在这种情况下,如果此区域中的其他值略微变化,或者图像稍微平移,pooling之后的结果保持不变),并减少了参数的个数,防止了过拟合的发生。同时,参数的简化也有助于计算。而且由于池化层在一般情况下是不含参数的,它只需要导出输入参数即可,不需要去更新权值。池化层的采样过程如图10所示。图10池化层的采样过程图10所展示的就是池化层的整个采样过程。此层中的下采样操作其实很简单,可以大致概括为2个部分。第1个部分是线性操作:首先使用下采样函数对上一层中输出的图片的各个区域进行求和,然后将得到的缩小区域块与标量βx进行加权,最后再加上偏置项bx;第2个部分是激活函数输出结果:神经元经过激活函数f(∙)输出得到一个被压缩成了相应倍数的特征图片即Sx+1,再把它发送给到下3.3.3全连接层最后,在标准神经网络(每个像素的独立神经元)中,卷积层和池化层之后有一个完全连接的层,该层由n个神经元组成,其中n是可以预测的类数。例如,在数字字符分类问题中,十个类(0-9)有十个神经元。然而,对于26个类(a-z)的英语字符分类问题,应该有26个神经元。显然,它的功能是将经过卷积运算和降采样操作以后提取的所有高级特征合并起来,并将最终输出值发送到分类器,并获得最终分类结果。 图11全连接层原理3.4TensorFlow平台在DistBelief的基础上,谷歌大学开发出第二代AI学习系统,即TensorFlow平台。它是一个开源的软件平台,并且这款系统的名字来源于它自己的工作原理。Tensor,中文释义是“张量”,在系统中,它是指N维数组;Flow,中文释义是“流”,在系统中,它指的是基于数据流程图的计算;两个单词合并起来TensorFlow,是指计算从流程图的一端到另一端的张量。TensorFlow平台其实也是能够对复杂的数据结构进行分析和处理的一款系统,与众不同的是,这个系统可以将数据结构传输到AI神经网络中进行分析和处理。在使用TensorFlow平台研究AI问题时,不需要对神经网络进行再设计,因为在其深度学习平台中已经有封装好的关于神经网络的所有复杂的计算问题。在此基础上,只需要设置神经网络的层次和结点信息,定义相关的函数(如:损失函数),设计学习率更新参数,设计合适的迭代次数保证学习结果的收敛。另外,为了获得更好的神经网络学习效果,需要对包含特征标签的大量数据进行神经网络学习[10]。3.5激活函数运用比较广泛的激活函数有ReLU,本系统将采用此激活函数。如果输入信号小于0,则该函数的操作将输出为0;如果输入信号大于0,则输出等于输入。ReLU函数是数学中的分段函数[11],其表示如下:rectifier(x)=max{0,x}=ReLU是部分线性的,所以不会发生饱和现象。ReLU得到的随机梯度下降法(SGD)的收敛速度比Sigmodi和tanh快。ReLU只需要一个阈值就可以得到激活值,并且不需要Sigmoid等复杂的指数运算。
4系统实现4.1系统识别过程系统识别过程如图12所示:图12系统识别过程系统识别包括输入手写数字、对图片进行预处理、提取数字特征、根据数字的特征进行分类以及字符识别等。在输入字符时,用户将通过网页前端采集手写数字图像信息并保存;数字预处理阶段是系统识别的基础。由于各种噪声可能会影响到采集的样本,导致无法识别,因此,在识别前,需要对采集到的样本进行预处理;在提取特征时,需要对预处理后的手写字符序列进行提取和压缩,然后通过样本数据库进行特征分类,最终完成字符识别[12]。4.2图片预处理在采集到样本图片后,需要对手写数字图片进行预处理。因为彩色图片一般是包括Width,Height,Channels三个参数的,其中Channels是通道,一般的图片是包含RGB这三个通道的。对于一张28*28三通道的图片来说,如果是channels_first,那么组织方式就为(3,28,28),否则就是(28,28,3)。下面这里就是进行reshape操作,把我们的三维矩阵变成四维矩阵(60000,28,28)->(60000,28,28,1)。核心代码如图13所示:图13矩阵变换核心代码由于训练数据的时候一般都会把我们的数据缩小范围,我们这里就是把0-255的灰度数据转换为0-1范围,来方便我们操作,核心代码如图14所示:图14灰度数据转换核心代码图片处理前的输出效果如图15所示:图15处理前图片效果对图片处理后的输出结果如图16所示:图16处理后图片效果4.3检测用户手写数字图像的神经网络模型构建该系统使用Keras建立模型。Keras是一个易于使用、高效且功能强大的神经网络库,其底层计算可以基于TensorFlow平台实现。Keras模式构建主要包括五个步骤:定义(define)、编译(compile)、培训(fit)、评估(evaluate)、预测(prediction)。模型构建流程图如图17所示,已构建好的神经网络模型如图18、19所示。图17模型构建流程图图18神经网络模型图19神经网络模型如图18、19所示,在本模型中,输入数据的大小为28x28,在卷积层使用5x5的卷积核、32个神经单元节点对数据进行卷积操作;卷积层把进行卷积后的数据输入到池化层,在此模型中建立了两个池化层,使用2x2的池化核对数据进行两次池化操作,输出数据大小为7x7;为了防止过拟合,本模型在池化层和全连接层之间随机丢弃四分之一的网络连接,然后使用Softmax激活函数,输出最终数据。4.2.1定义模型模型的定义是Keras建立神经网络的第一步。首先,使用Sequential类生成实例模型并添加层。通常,添加层的顺序是连接层的顺序和通过模型的数据流的顺序。4.2.2编译模型在定义好模型之后,需要通过编译来配置学习过程(compile)。我们可以为模型编译指定各种参数,包括:优化器optimizer、损失函数loss和评估指标metrics。编
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贷款房屋购买合同模板
- 购买城管服务合同范本
- 购买销售软件合同模板
- 散装饲料运输车购买合同
- 修机器购买零部件合同
- 2025年辽宁省灯塔市高考物理三轮冲刺考试卷及参考答案详解【能力提升】
- 吊车购买合同协议书范本
- 福田公墓购买墓地合同
- 购买竹箫毛坯合同模板
- 购买自建现代房子合同
- 2026年南昌大学第一附属医院康复治疗师岗招聘2人笔试模拟试题及答案详解
- 2026辽宁营口水务集团有限公司招聘8人笔试备考试题及答案详解
- 阿里巴巴企业文化与管理经验分享
- 紧急维修服务作业规范
- 2025年江西省九江市八年级地生会考真题试卷(含答案)
- 2026年安全生产月危险化学品企业排查整治风险隐患培训课件
- 2026中国AOPA电动超轻型飞行器行业发展报告
- 员工绩效薪酬激励管理办法
- 1807《经济学(本)》国家开放大学期末考试题库
- 5.部编人教版三年级上册道德与法治全册教案
- 全面解析天然气热值对燃气轮机运行的影响
评论
0/150
提交评论