![灰度阈值处理算法的分析的论文-精品_第1页](http://file4.renrendoc.com/view/72d021ad5c2d70b36e5bbac87beecd69/72d021ad5c2d70b36e5bbac87beecd691.gif)
![灰度阈值处理算法的分析的论文-精品_第2页](http://file4.renrendoc.com/view/72d021ad5c2d70b36e5bbac87beecd69/72d021ad5c2d70b36e5bbac87beecd692.gif)
![灰度阈值处理算法的分析的论文-精品_第3页](http://file4.renrendoc.com/view/72d021ad5c2d70b36e5bbac87beecd69/72d021ad5c2d70b36e5bbac87beecd693.gif)
![灰度阈值处理算法的分析的论文-精品_第4页](http://file4.renrendoc.com/view/72d021ad5c2d70b36e5bbac87beecd69/72d021ad5c2d70b36e5bbac87beecd694.gif)
![灰度阈值处理算法的分析的论文-精品_第5页](http://file4.renrendoc.com/view/72d021ad5c2d70b36e5bbac87beecd69/72d021ad5c2d70b36e5bbac87beecd695.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE351引言在对图像的研究和应用中,人们往往仅对图像中的某部分感兴趣,这部分称目标或前景,其它部分称背景。前景一般对应于图像中特定的具有独特性质的区域。为了辨识和分析目标,需要将它们分离提取出来,在此基础上才可能对目标进一步利用。处理图像时受各种条件的限制和干扰,图像的灰度值往往与实际景物不完全匹配,这将直接影响到图像的后续处理。如果造成这种影响的原因主要是由于被摄物体的远近不同,使得图像中央区域和边缘区域的灰度失衡,或是因摄像头在扫描时各点的灵敏度有较大的差异而产生图像灰度失真,或是因曝光不足而使得图像的灰度变化范围窄,这时就可以采用灰度校正的方法来增强灰度的变化范围、丰富灰度层次,达到增强图像的对比度和分辨率。灰度阈值处理是数字图像处理技术的一种,数字图像处理技术是20世纪60年代发展起来的一门新兴学科。主要利用图象中背景与对象之间的灰度差异。理想状态下,背景与对象之间的灰度差异很大,利用图像的灰度特征来选择一个或多个最佳灰度阈值,并将图像中每个像素的灰度值与阈值相比较,最后将对应的像素根据比较结果分到合适的类别中。近30多年来,由于大规模集成电路技术和计算机技术的迅猛发展,离散数学理论的创立和完善,以及军事,医学和工业等方面应用需求的不断增长,数字图像处理的理论进一步完善,使得灰度阈值处理算法在医学,办公和多媒体系统等领域得到了广泛应用,并显示出广阔的应用前景,成为计算机、电子、医学等学科研究的热点。本论文将详细介绍灰度阈值处理算法及其DSP实现过程。2概述彩色图象灰度阈值法是在图象预处理的基础上对信息进行组织与加工,是实现图象自动识别与理解的必不可少的过程,是计算机视觉的中间层次。简单的说,就是把图象中有意义的区域和背景分离开来,依据的原则是同一区域具有“同质性”。“区域”是图象相邻的具有类似性质的点组成的集合,同一区域中的象素是相邻的。2.1彩色图像灰度阈值算法及其应用彩色图象又称“多光谱图象”,图象上的每个点有多于一个的局部特征,即每个象素点需要有红绿蓝三个基色的三个亮度值表示。由于光源的光谱是渐变的,产生同样色觉的光波具有一定的波长范围,所以并没有一种颜色可以准确的叫做红、绿、蓝。为了建立标准,国际照明委员会(CIE)早在1931年就规定3种基本色的波长为R:700,G:,B:。计算机与彩色电视机显示彩色图象的原理一样,都是采用R(Red)、G(Green)、B(Blue)相加混色的原理:根据三基色原理,任意一种色光F都可以用不同分量的R、G、B三色相加混合而成。F=r[R]+g[G]+b[B]其中,r、g、b分别为三基色参与混合的系数。当三基色分量都为0(最弱)时混合为黑色光;而当三基色分量都为k(最强)时混合为白色光。调整r、g、b三个系数的值,可以混合出介于黑色光和白色光之间的各种的色光,通过发射出三种不同强度的电子束,使屏幕内侧覆盖的红、绿、蓝磷光材料发光而产生彩色图象。这种彩色图象的表示方法称为RGB色彩空间。RGB型颜色空间这个模型基于笛卡儿坐标系统,如图2.1所示,3个轴分别为R,G,B,他们被归一化后,用r,g,b表示,这样成了一个单位立方体。原点对应黑色,(1,1,1)对应白色,它们之间的连线分布不同的灰度值,而立方体内其余各点对应于不同的颜色,可用从原点到该点的矢量表示。根据这个模型,每幅彩色图包括3个独立的基色平面,或者说可以分解到3个平面上。一幅真彩图象一般用24bit,即R,G,B分量各用8bit表示。RGB虽然表示直接,但R,G,B数值和色彩的三属性没有直接关系,不能揭示色彩之间的关系。图2.1RGB单位立方体模型黑白图象又称为灰度图象、亮度图象或单色图象等,图象中每个象素点只有一个亮度值。即灰度图只含亮度信息,不含色彩信息的图象。灰度是指黑白图像中点的颜色深度,代表DPI的值,DPI是指每平方英寸有多少象素点,象素点越大,图象的精确度越大,同时文件的尺寸也越大,当然也不是DPI越大就越好,具体情况具体分析,其范围一般从0到255,白色为255,黑色为0,像素灰度级用8bit表示,所以每个像素都是介于黑色和白色之间的256()种灰度中的一种。灰度图像只有灰度颜色而没有彩色。通常说的黑白照片,其实包含了黑白之间的所有灰度色调。从技术上来说,就是具有从黑到白的256种灰度色域(Gamut)的单色图像,故黑白图片也称灰度图像。创建灰度图是作图像处理最基本的一步。因为很多图像的处理问题都要在灰度图或者是二值化图像上进行。由于摄像机抓拍到的图像均为24位真彩色图像,而大多数的图像处理技术都是针对256级灰度图的,所以有必要将彩色图转换为灰度图。并且彩色图象是多光谱图象,而转换后的黑白图像是单色的灰度图像,其一个像素用一个字节表示该点的灰度值,在图像处理时灰度图象的处理速度比较快。所以一般处理图像时先要把彩色图像灰度化。将RGB值转换为灰度的原理,主要利用图象中背景与对象之间的灰度差异。理想状态下,背景与对象之间的灰度差异很大,利用图像的灰度特征来选择一个或多个最佳灰度阈值,并将图像中每个像素的灰度值与阈值相比较,最后将对应的像素根据比较结果分到合适的类别中。灰度值变换函数将亮度范围映射到自身。表示考察图像亮度的范围,对于8位的图像=255。灰度变换就是函数将每个灰度值替换为新值,即函数对图像的任一象素点的灰度值进行修正,如下:本次试验中,先把图像归一化。之后在从RGB空间转换到YCbCr空间,转换到YCbCr空间后,提取Y、Cb和Cr分量后,再将Y值切分。切分后再从YCbCr空间转换到RGB空间。Y值切分原理是,将所有灰度小于阈值的像素判定为0即黑色,灰度值大于t1的像素判定为255即白色,否则这些像素点的灰度值不变。表达式如下:上面就是如何将RGB值转换为灰度的过程,灰度阈值法是一种简单有效的图像分割方法,也是图像分割中常用的一种方法,灰度阈值处理的作用很多。比如,灰度变换可以增加或减少亮度范围。利用灰度变换,从曝光过渡,曝光不足以及动态范围很小的图像中恢复有用的视觉信息。当图像的亮度范围太大二不能在一定的媒介上显示的时,如终端,打印机或胶片,也可以利用灰度变化,可以通过区分黑白使图像产生木刻效果;可以通过阈值调整,找到图像中所需的灰度选区;可以通过阈值提高黑白图像的扫描效果;可以通过阈值调整净化图像等。随着数字图像处理理论的完善,使得灰度阈值处理在很多领域得到了广泛应用。比如:在智能交通系统中,彩色图像转化为灰度图像后,在保持原来主要信息的同时还可以比较明显的提高运算速度。在实际的车牌自动识别系统中,摄像机一般是固定不变的,当车辆出现的信号被检测装置传给摄像机后,摄像机立刻进行图像采集,使得车牌图像的位置在整个画面中的位置基本上是固定的,偏差较小,而且通过观察可以知道,我们国家的车牌绝大多数都是挂在车头的,所以可以部分的忽略外界环境的影响,以简化算法。在医学应用非常广泛,无论是临床诊断还是病理研究都人量采用灰度阈值处理技术;立体脑图像配准、心脏核磁共振数据的可视化、支气管虚拟内窥镜,它的直观、无创伤、安全方便等优点备受青睐。在通讯领域中包括图像传输、电视电话、电视会议等,主要是进行图像压缩和传输。在工业生产中,在生产线对产品进行无损检测是灰度阈值技术的重要应用;该应用从70年代起取得了迅速的发展,主要有产品质量检测、生产过程的自动控制、机器人视觉等;在产品质量检测方面:检验印刷电路板的质量、监测零部件的装配等;食品、水果质量的检查,纺织品质量检查,焊缝质量或表面缺陷、无损探伤。总之,图像处理技术应用领域相当广泛,已在国家安全、经济发展、日常生活中充当越来越重要的角色,并显示出广阔的应用前景,对国计民生的作用不可低估。2.2课题预期目标本论文介绍了关于灰度阈值处理的图像基础知识,应用MATLAB软件仿真,在DSP的CCS上运行。图像在处理后应该出现失真现象,因为图像的某些灰度偏高,导致阈值高于平均灰度值,从而在阈值判断时,部分出现了白色“失真”现象;而图像的某些灰度偏低,导致阈值低于平均灰度值,从而在阈值判断时,部分就出现黑色“失真”现象。3YUV图像的灰度阈值算法原理及仿真3.1概述前面我们已经知道计算机彩色显示器显示色彩的原理与彩色电视机一样,都是采用R(Red)、G(Green)、B(Blue)相加混色的原理,来产生其它的颜色。自然界的任何一种颜色,都可以通过R,G,B三基色按照不同的比例混合而成。由于其设备的独立性,它被广泛应用于计算机图形、成像系统和彩色电视中。但是在图形图像的处理过程中,RGB的效率不是很高,因为在产生任何一种颜色时,R,G,B三者需要同样的带宽。另外,为了更改一个像素的亮度或色度,必须把R,G,B三者的数值从缓存中读取出来,然后对它们三者作修改,最后还得把它们写回缓存中。假如可以把亮度和色度分离开来,这个处理过程将会更快。YUV正是这样的一种色彩空间,它描述了亮度和色差的概念。那么YUV又从何而来呢?YUV是由广播电视需求的推动而开发的颜色空间,主要目的是通过压缩色度信息以有效地播送彩色电视图像,是应用于电视传播系统的色彩模,在计算机里YUV颜色模型是仅次于RGB模型的使用较广泛的颜色模型。对于视频信号的传输,为了减少所需的带宽并与单色电视系统兼容,采用亮度/色度坐标系模型。但通常用于彩色显示的RGB基色混合了光的亮度和色度属性。1931年,国际照明委员会(CIE)规定了XYZ彩色坐标,但XYZ基色不能直接用于产生色彩,它主要用于定义其他的基色和彩色的数字说明,如用于传输彩色电视信号的YUV彩色坐标。在XYZ模型中,Y表示亮度,另外两个分量共同表示色度和饱和度。除了能分离亮度和色度信息,XYZ另外一个优点是几乎所有的可见彩色都能由非负的激励值规定。XYZ坐标系中(X,Y,Z)与RGB坐标系(R,G,B)的关系如下:目前,世界上主要有三种不同的电视系统:PAL系统用于大多数西欧国家和包括中国以及中东的亚洲国家;NTSC系统用于北美和包括日本在内的部分亚洲国家和地区;SECAM系统用于前苏联、东欧、法国以及一些中东国家。在PAL制式中采用的就是YUV彩色模型,而YUV就来源于XYZ彩色模型。根据RGB基色与YUV基色之间的关系,我们把由三极管彩色摄像机或彩色CCD摄像机进行摄像,然后把摄得的彩色图像信号经分色、分别放大校正后得到RGB,再经过矩阵变换电路得到亮度信号Y和两个色差信号R-Y(即U)、B-Y(即V),最后发送端将亮度和色差三个信号分别进行编码,用同一信道发送出去。这种色彩的表示方法就是所谓的YUV色彩模型。其中的Y,U,V几个字母不是英文单词的组合词,Y是指亮度分量,表示明亮度即(Luminance或Luma),也就是灰阶值;“亮度”是透过RGB输入信号来建立的,方法是将RGB信号的特定部分叠加到一起。而“U”和“V”表示的则是色度(Chrominance或Chroma),代表色差。采用YUV色彩空间的重要性就是它的亮度信号Y和色度信号U、V是分离的,如果只有Y信号分量而没有U、V分量,那么这样表示的图像就是黑白灰度图像,彩色电视采用YUV空间正是为了用亮度信号Y解决彩色电视机与黑白电视机的兼容问题,使黑白电视机也能接收彩色电视信号。根据美国国家电视制式委员会规定,当白光的亮度用Y表示时,它和红、绿、蓝三色光的关系可用如下所示的方程描述:这就是常用的亮度公式。色差U、V是由B-Y、R-Y按不同的比例压缩而成的,即其中为压缩系数。YUV色彩空间与RGB色彩空间的转换关系如下:在DVD、摄像机、计算机用的显示器、数字电视及类视频压缩标准(JPEG,MPEG等)中,常用的色彩编码方案是YcbCr。YCrCb色彩空间则是在世界数字组织视频标准研制过程中作为ITU2RBT.601建议的一部分,其实是YUV经过缩放和偏移的翻版。YCbCr色彩空间是由YUV色彩空间派生的一种颜色空间,从RGB到YCbCr的转换中,输入、输出都是8位二进制格式。YCbCr色彩空间与RGB色彩空间的关系如下:从YCbCr到RGB的逆变换为:其中Y与YUV中的Y含义一致,Cb、Cr同样都指色彩,只是表示方法不同。色差U、V与Cb、Cr只相差系数和偏移量,其对应关系如下:一般人们所讲的YUV大多是指YCbCr,本次毕业设计业所用的是YCbCr原理,以下就称为YUV。U和V是构成彩色的两个分量,分别用Cr和Cb来表示,Cb指蓝色色度分量,反映的是RGB输入信号蓝色部分与RGB信号亮度值之间的差异;而Cr指红色色度分量,反映了RGB输入信号红色部分与RGB信号亮度值之间的差异,Cr和Cb作用是描述影像色彩及饱和度,用于指定像素的颜色。YUV主要用于优化彩色视频信号的传输,采用YUV色彩空间的重要性是它的亮度信号Y和色度信号U、V是分离的,解决彩色电视机与黑白电视机的兼容问题,使黑白电视机也能接收彩色电视信号。与RGB视频信号传输相比,它最大的优点在于只需占用极少的频宽,RGB要求三个独立的视频信号同时传输。黑白系统只使用Y信息,因为U和V是附加上去的,所以黑白系统仍能够正常显示。3.2算法原理在YUV的表示方法中,最主要的优点有两点:(1)因为Y代表了亮度,所以Y分量包含了灰度图的所有信息,只用Y分量就能完全表示出一幅灰度图来。当同时考虑U,V分量时,就能够表示出彩色信息来。这样,用同一种表示方法可以很方便的在灰度和彩色图之间切换,而RGB表示方法就做不到这一点了。(2)人眼对于亮度信号非常敏感,而对色差信号的敏感程度相对较弱。也就是说,图象的主要信息包含在Y分量中。这就提示我们:如果在对YUV信号进行量化时,可以“偏心”一点,让Y的量化级别多一些,而让UV的量化级别少一些,就可以实现图象信息的压缩。而RGB的表示方法就做不到这一点,因为RGB三个分量同等重要,缺了谁也不行。因此YUV中在通过对色度分量进行了采样来减少色度分量后,肉眼将察觉不到的图像质量的变化。YUV由RGB计算而来,下面就是YUV与RGB相互转换的公式如下(RGB取值范围均为0-255):YUV主要的采样格式有YUV4:4:4、YUV4:2:2、YUV4:1:1和YUV4:2:0。其中YUV4:1:1比较常用,其含义为:每个点保存一个8bit的亮度值(也就是Y值),每2x2个点保存一个u和v值,图像在肉眼中的感觉不会起太大的变化。所以,原来用RGB(R,G,B都是8bitunsigned)模型,4个点需要8x3=24bites。而YUV仅需要8+(8/4)+(8/4)=12bites,平均每个点占12bites这就把图像的数据压缩了一半。上边仅给出了理论上的示例,在实际数据存储中是有可能是不同的,下面给出几种具体的存储形式:(1)YUV4:4:4YUV表示全像素点阵,三个信道的抽样率相同,即Y、U、V具有同样的水平和垂直清晰度,在每一个像素位置都有Y、U、V,因此在生成的图像里,每个象素的三个分量信息完整(每个分量通常8比特),经过8比特量化之后,未经压缩的每个像素占用3个字节。用于高质量视频应用、演播室以及专业视频产品。表3.1A四个像素为:[Y0U0V0][Y1U1V1][Y2U2V2][Y3U3V3]存放的码流为:Y0U0V0Y1U1V1Y2U2V2Y3U3V3(2)YUV4:2:24:2:2表示每4个像素有4个亮度分量,4个色度分量,每个色差信道的抽样率是亮度信道的一半,所以水平方向的色度抽样率只是4:4:4的一半。这时彩色分量和亮度分量具有同样的垂直清晰度,但水平清晰度彩色分量是亮度分量的一半。水平方向上,每4个亮度像素具有2个U和2个V。对非压缩的8比特量化的图像来说,每个由两个水平方向相邻的像素组成的宏像素需要占用4字节内存。表3.2B四个像素为:[Y0U0V0][Y1U1V1][Y2U2V2][Y3U3V3]存放的码流为:Y0U0Y1V1Y2U2Y3V3映射出像素点为:[Y0U0V1][Y1U0V1][Y2U2V3][Y3U2V3](3)YUV4:1:14:1:1的色度抽样,是在水平方向上对色度进行4:1抽样。对于低端用户和消费类产品这仍然是可以接受的。对非压缩的8比特量化的视频来说,每个由4个水平方向相邻的像素组成的宏像素需要占用6字节内存。表3.3C四个像素为:[Y0U0V0][Y1U1V1][Y2U2V2][Y3U3V3]存放的码流为:Y0U0Y1Y2V2Y3映射出像素点为:[Y0U0V2][Y1U0V2][Y2U0V2][Y3U0V2](4)YUV4:2:04:2:0是从4:2:2标准演变而来。4:2:0并不意味着只有Y和U而没有V分量。为进一步减少数据量,在保证亮度信号抽样频率不变的情况下,将色度信号的传输行降低一半,也可以说在保证亮度信号抽样点不变的情况下,将色度信号的抽样点减少一半,降低其垂直清晰度,即它是对每行扫描线来说,只有一种色度分量以2:1的抽样率存储,即每4个像素有4个亮度分量,2个色度分量,仅采样奇数扫描线,相邻的扫描行存储不同的色度分量,也就是说,如果一行是4:2:0的话,下一行就是4:0:2,再下一行是4:2:0...以此类推。对每个色度分量来说,水平方向和竖直方向的抽样率都是2:1,所以可以说色度的抽样率是4:1。对非压缩的8比特量化的视频来说,每个由2x2个2行2列相邻的像素组成的宏像素需要占用6字节内存。在YUV4:2:2、YUV4:1:1中,YUV4:2:0的彩色分量最少,最适合于进行数字压缩。是便携式视频设备(MPEG-4)、电视会议(H.263)及DVD最常用格式。表3.4D八个像素为[Y0U0V0][Y1U1V1][Y2U2V2][Y3U3V3]存放的码流为:Y0U0Y1Y2U2Y3Y5V5Y6Y7V7Y8映射出的像素点为:[Y0U0V5][Y1U0V5][Y2U2V7][Y3U2V7]Y5U0V5][Y6U0V5][Y7U2V7][Y8U2V7]3.3算法MATLAB仿真由MathWork公司开发的Matlab语言语法限制不严格,程序设计自由度大、可移植性好。Matlab具有适应于图像分析和处理的工具箱,常用的有图像处理、小波分析及数字信号处理工具箱。利用这些工具箱,我们可以方便的对图像的性质进行深入研究。Matlab图像处理工具箱支持索引图像、RGB图像、灰度图像、二进制图像并能操作.bmp、.jpg、.tif等多种图像格式文件。本次试验中图像处理所用的基本操作:读取和显示图像可以通过imread()和imshow()来实现;图像的输出用imwrite()函数就可以很方便的把图像输出到硬盘上;另外还可以用imcrop()、imrisize()、imrotate()等来实现图像的裁剪、缩放和旋转等功能。Matlab图像处理工具箱提供了不同图像类型相互转换的大量函数,如rgb2ycbcr()RGB彩色空间转换成YUV彩色空间。3.3.1灰度阈值处理流程图RGBRGB彩色图像YUV空间提取Y分量切分Y值提取Cr(V)分量提取Cb(U)分量YUV空间RGB彩色图像结束开始图3.1灰度阈值处理流程图3.3.2RGB图像转换成灰度的代码:(1)RGB转换到YUV:A=imread('filename.tiff');%读取原图像A=double(A)/255;%把图像归一化B=rgb2ycbcr(A);%转换到YCbCr空间imshow(B);%显示转换后的图像title'RGBtoYUV'%给图像命名(2)提取Cb分量:A=imread('filename.tiff');%读取原图像A=double(A)/255;%把图像归一化B=rgb2ycbcr(A);%转换到YCbCr空间imshow(B(:,:,2));%显示转换后的图像titleC_b分量%给图像命名(3)提取Cr分量:A=imread('filename.tiff');%读取原图像A=double(A)/255;%把图像归一化B=rgb2ycbcr(A);%转换到YCbCr空间imshow(B(:,:,3));%显示转换后的图像titleC_r分量%给图像命名(4)提取Y值分量:A=imread('filename.tiff');%读取原图像A=double(A)/255;%把图像归一化B=rgb2ycbcr(A);%转换到YCbCr空间imshow(B(:,:,1));%显示转换后的图像title'Y分量'%给图像命名(5)切分Y值分量:A=imread('filename.tiff');%读取原图像A=double(A)/255;%把图像归一化B=rgb2ycbcr(A);%转换到YCbCr空间[m,n]=size(C);C=B(:,:,1);%把B值赋予Cfori=1:m%for循环,切分Y值forj=1:nx=C(i,j);if(x<=0.3)C(i,j)=0;endif(x>0.7)C(i,j)=1;endendend%把C值赋予BB(:,:,1)=C;imshow(B(:,:,1));%显示转换后的图像title'Y切分%给图像命名(6)YUV转换到RGB:D=ycbcr2rgb(B);%从YCbCr空间转换到RGB空间imshow(D);%显示转换后的图像title'YUVtoRGB'%给图像命名注:在试验过程中,按照流程图进行的试验时,在转换到YUV空间中提取分量时Y值分量一定要最后提取否则后续的操作都是无意义的。3.3.3RGB图像转换成灰度的实现过程本次实验共用四幅图像,我们先着重讲一幅图片,其他三幅图片所做的实验效果对比如下面的图片所示。首先用pepper图片讲解我们所做实验的整个流程如下:(1)原彩色图象如图3.2P-a,3.3L-a,3.4B-a,3.5M-a。(2)在YUV空间中提取Cb分量,如图3.6P-b,3.7L-b,3.8B-b,3.9M-b。(3)在YUV空间中提取Cr分量,如图3.10P-c,3.11L-c,3.12B-c,3.13M-c。(4)在YUV空间中提取Y分量,如图3.14P-d,3.15L-d,3.16B-d,3.17M-d。(5)在YUV空间中提取切分后Y分量,如图3.18P-e,3.19L-e,3.20B-e,3.21M-e。(6)由YUV空间转换到RGB彩色空间图像,如图3.22P-f,3.23L-f,3.24B-f,3.25M-f。图3.6P-b图3.10P-c图3.14P-d图3.18P-e图3.22P-f图3.2P-a二.图像处理的对比如下所示:(1)原图像和处理后的图片:图3.23L-f图3.24B-f图3.25M-f图3.3L-a图3.4B-a图3.5M-a(2)YUV空间中Cb分量,Cr分量,Y分量以及切分后Y分量:图3.7L-b图3.11L-c图3.15L-d图3.19L-e图3.8B-b图3.12B-c图3.16B-d图3.20B-e图3.9M-b图3.13M-c图3.17M-d图3.21M-e3.4小结YUV主要用于优化彩色视频信号的传输,由于YUV色彩空间的的亮度信号Y和色度信号U、V是分离的,解决彩色电视机与黑白电视机的兼容问题,使黑白电视机也能接收彩色电视信号。而且YUV与RGB视频信号传输相比,RGB要求三个独立的视频信号同时传输,而YUV最大的优点在于只需占用极少的频宽。着重介绍了四种YUV主要的采样格式及其如何在MATLAB中实现灰度阈值处理,并且MATLAB试验达到了预期效果,在图片进行灰度阈值处理后产生了一定的失真,图像的某些灰度偏高,导致阈值高于平均灰度值,从而在阈值判断时,部分出现了白色“失真”现象;而图像的某些灰度偏低,导致阈值低于平均灰度值,从而在阈值判断时,部分就出现了黑色“失真”现象,MATLAB仿真实验符合理论推导。4基于TMS320VC54xxDSP的算法实现4.1TMS320VC54xxDSP开发简介近年来,包含有数字信号处理器在内的各种产品急速发展。DSP处理器已经成为许多通信、消费类、医疗以及工业产品的关键器件。这些产品使用各种不同的硬件来实现DSP,其范围从独立的微处理器,到用现场可编程门阵列(FPGA)来做成用户的专用集成电路(ASIC)。与固定功能方案相比,DSP处理器的优势在于可以重新编程,以便产品的升级和维护。其成本效益高,风险小。特别是在产品的产量小时,开发专用IC不够经济。与其他的微处理器相比,DSP处理器的速度高,成本与功耗的效率更高。随着DSP处理器应用范围的不断的扩大,市场竞争也日趋激烈。1998年底,LUCENT和MOTOROLA宣布成立了一个联合的DSP核设计中心,开发高性能的16位定点DSP核——STAR*CORE,主要应用于日益发展的以INTERNET为代表的数据通信,以蜂窝电话为代表的移动通信和以家庭影院为代表的高性能消费类电子产品。紧接着,1999年初,INTEL和AD公司也宣布联合开发高性能的DSP核,主要应用于视频、图像、声音信号的处理和各种嵌入式的通信系统。几乎同时,TI公司宣布和RISC技术见长的MIPS公司合作,以发展新系列的DSP核和处理器。2001年以来,新的一代DSP核,以及基于这些DSP处理器的陆续发表并推向市场。LUCENT宣布了基于STAR*CORE的STARPRO2000,MOTOROLA也宣布了基于STAR*CORE的MCS8101。AD公司宣布了基于和INTEL联合开发的新的DSP核的16位定点DSP处理器,BLACKFINADSP21535。TI公司也推出了新的16位定点DSP处理器TMS320C55x和32位浮点DSP处理器MS320C64x。在如此众多的DSP厂商中,德州仪器公司(TI)的DSP始终占据着较大的市场份额,约占40%-50%。随着集成电路的发展和DSP应用市场的迅速扩大,TI的DSP也在不断的发展与更新。下面我们就重点介绍本毕业设计所用的也是目前得到广泛应用的德TI的三个大的DSP处理器之一,TMS320C54x。TMS320C54x是16位定点DSP,适用于远程通信等实时嵌入式应用的需要。C54x具有高度的操作灵活和运行速度。其结构采用改善的哈佛结构,即一组程序存储器总线,三组数据存储器总线,四组地址总线。具有专用硬件逻辑的CPU,片内存储器,片内外设,以及一个效率很高的指令集。另外,使用C54x的CPU核和用户指定的片内存储器及外设所做成的派生器件也得到广泛的应用。C54x具有以下优点:(1)围绕一组程序总线,三组数据存储器总线和四组地址总线地址总线建立的改善哈佛结构,使得性能和多功能性能都得以提高。(2)具有高度并行性和专用硬件逻辑的CPU设计,使芯片性能大大提高。(3)具有效率很高的指令集,更适用于快速算法的实现和高级语言编程的优化。(4)模块化结构的设计,使派生器件得到了更快的发展。(5)先进的IC制造工艺,提高了芯片的性能,降低了功耗。(6)先进的静态设计技术,使得芯片具有更低的功耗和更强的应用能力。4.1.1TMS320VC54X系列DSP的主要特性表4.1TMS320VC54X系列DSP的主要特性1多总线结构,三组16位数据总线和一组程序总线。240位算术逻辑单元(ALU),包括一个40位桶形移位器和两个独立的40位累加器。3位并行乘法器,连接一个40位的专用加法器,可用来进行非流水单周期乘/加(MAC)运算。4比较、选择和存储单元(CSSU),用于Viterbi译码器的累加-比较-选择运算。5指数编码器,在一个周期里计算40位累加器值得指数值。6两个地址发生器中有个辅助寄存器和2个辅助寄存器算术单元(ARAU)。7数据总线具有总线保持特性。8可访问的存储空间最大可为位(64k程序存储器,64k数据存储器和64kI/O空间)。9支持单指令循环和块循环。10存储块移动指令,提供了更好的程序和数据管理。11支持32位长操数作指令,支持2操作书或3操作书读指令,支持并行存储和并行装入的算术指令,支持条件存储指令及中断快速返回指令。12软件可编程等待状态发生器和可编程的存储单元转换。13连接内部振荡器或外部时钟源的锁相环(PLL)发生器。14支持8或16位传送的全双工串口。15时分多路(TDM)串口。16缓冲串口(BSP)。17多通道缓冲串口(McBSP)。18直接存储器访问(DMA)控制器。198位并行主机接口(HPI),强化的8位并行主机接口(HPI8),16位并行主机接口(HPI16)。20带4位预定标器的16位定时器21具有多CPU的器件里,处理器的先进先出单元(FIFO)。22多种节电模式。23片内给予扫描的仿真逻辑,JTAG边界扫描逻辑(IEEE1149.1)。4.1.2TMS320VC54X的硬件结构图4.1TMS320VC5416的硬件结构(1)总线结构:围绕8组16位总线(4组程序/数据总线,4组地址总线)来建立。程序总线PB,传送从程序存储器来的指令代码和立即数;三组数据总线CB、DB和EB,连接各种部件,如CPU、数据地址产生逻辑、程序地址长生逻辑、片内外设和数据存储器;CB和DB总线传送从数据存储器读出的操作数;EB总线传送写入到存储器中的数据。四组地址总线PAB、CAB、DAB和EAB,传送执行指令所需的地址。C54x使用两个辅助寄存器算术单元(ARAU0和ARAU1),每周期能产生两个数据存储器地址。PB总线能把存储在程序空间的操作数(如系数表)传送到乘法器和加法器中进行乘/累加运算,或者在数据移动指令(MVPD和READA)中传送到数据空间。这种能力在加上双操作读数的特性,支持单周期3操作数指令的立即执行。C54x还有一组寻址片内外设的双向总线,通过CPU接口中的总线交换器与DB和EB相连接。对这组总线的访问,需要两个或更多的机器周期来进行读和写,具体所需周期数由片内外设的结构决定。(2)中央处理单元(CPU):C54x的CPU包括一个40位的算术逻辑单元(ALU),两个40位的累加器(ACCA和ACCB),一个桶形移位器,位乘法器,40位加法器,比较、选择和存储单元CSSU,指数编码器,各种CPU寄存器。(3)片内存储器:C54x存储器由三个独立的可选择空间组成,即程序、数据和I/O空间。所有的C54x芯片都包括随机访问存储器RAM和只读存储器ROM。RAM又分两种,访问RAM(DARAM)和单访问RAM(SARAM)。C54x还有映射到数据存储空间的26个CPU寄存器和外设寄存器。C54x系列里的不同片种,其片内存储器的配置不尽相同。(4)存储器映射寄存器数据存储器空间里,包含了CPU和片内外设的存储器映射寄存器。这些寄存器位于数据存储空间里的第0页,以简化对它们的访问。存储器映射访问,为保存和恢复用于内容切换的寄存器,以及在累加器和其他寄存器之间传递信息提供了方便。(5)片内外设所有的C54x芯片都有相同的CPU,但它们的CPU对应了不同的片内外设。C54x芯片有以下片内外设:通用I/O引脚(BIO和XF),软件可编程等待状态发生器,可编程的块切换逻辑,主机借口(HPI),硬件定时发生器,时钟发生器和串口。(6)外部总线接口C54x能对64k字的数据存储器,程序存储器,以及16位并行I/O口寻址。对外部存储器或I/O的访问则通过外部总线进行(访问I/O需要使用特殊的指令,POPTR和PORTW)独立的空间选择信号DS,PS和IS允许进行物理上分开的空间选择。接口的外部ready输入信号和软件产生的等待状态,允许处理器与各种不同速度的存储器和I/O设备相连。接口的保持模式,使得外部设备能控制C54x的总线,使外部设备可以访问程序、数据以及I/O空间的资源。(7)IEEE1149.1标准扫描逻辑用于仿真和测试,提供对所连接设备的边界扫描。同时,也能用来测试引脚到引脚的连续性,以及完成DSP芯片的外围器件的操作测试。IEEE1149.1标准扫描逻辑与内部扫描逻辑电路相连,访问片内所有资源。因而,C54x能使用IEEE1149.1标准串行扫描引脚和专用仿真引脚,来完成在线仿真。4.1.3TMS320VC54X数据存储器寻址方式C54x提供了七种寻址方式,以下就这七种寻址方式作简单的介绍:表4.2数据存储器寻址方式1、立即数寻址指令包括了立即操作数。在一条指令中可对两种立即数编码。一种是短立即数(3,5,8或9位),包含在单指令中;另一种是16位的长立即数,包含在双指令中。2、绝对地址寻址有四种类型的绝对地址寻址:数据存储器地址dmad寻址;程序存储器地址pmad寻址;端口地址PA寻址;IK寻址,适用于支持单数据存储器操作数的指令。3、累加器寻址将累加器中的数作为地址。这种寻址方式可用来对存放数据的程序存储器寻址。4、直接寻址在直接寻址中,指令代码包含了数据存储器地址的低7位。这7位dma作为偏移地址与数据页指针DP或堆栈指针SP相结合共同形成16位的数据存储器地址。5、间接寻址64k数据空间中的任意单元,都可以通过一个辅助寄存器中的16位地址进行访问。C54x有8个16位辅助寄存器(AR0~AR7)。两个辅助寄存器算术单元(ARAU0和ARAU1),根据辅助寄存器的内容进行操作,完成无符号的16位算术运算。间接寻址很灵活,不仅可以对存储器读或写一个单16位数据操作数,还可以在一条指令中访问两个数据存储器单元(即从两个独立的存储器单元读数据,或在读一个存储器单元的同时写另一个存储器单元,或读写两个连续的存储器单元)。6、存储器映射寄存器寻址用来修改存储器映射寄存器,而不影响当前数据页指针DP或堆栈指针SP的值。由于DP和SP的值不需要改变,所以写一个寄存器的开销是最小的。存储器映射寄存器寻址既可以在直接寻址中使用,又可以在间接寻址中使用。在直接寻址方式下,让数据存储器地址的高9位置0,而不管DP或SP的值;在间接寻址方式下只使用当前辅助寄存器的低7位。7、堆栈寻址在中断和子程序期间,系统堆栈用来自动存放程序计数器。它也能用来存放额外的数据项或传递数据值。处理器使用一个16位的存储器映射寄存器——堆栈指针来对堆栈寻址,他总是指向存放在堆栈中的最后一个元素。4.1.4DSP的开发环境及其代码生成工具德州仪器(TI)的DSP的开发环境主要包括以下三个部分:表4.3TI的DSP的开发环境代码生成工具(编译器、连接器、优化C编译器、转换工具等)系统集成及调试环境与工具实时操作系统一个DSP软件可以使用汇编或C语言编写源程序,通过编译、连接工具生成DSP的执行代码。在调试阶段,可以利用软仿真(Simulator)在计算机上仿真运行;也可以利用硬件调试工具(XDS510)将代码下载到DSP中,通过计算机监控、调试运行该程序。当调试完成后,可以将该程序代码固化到EPROM中,以便DSP目标系统脱离计算机单独运行。代码生成工具如表4.4所示:表4.4代码生成工具C编译器(Ccompiler)将C源程序代码编译成为TMS320系列对应汇编语言源代码。汇编器(assembler)将汇编语言源文件转化成为公用目标文件格式(COFF)的机器语言目标文件,即通用指的.obj文件。连接器(linker)将目标文件连接起来产生一个可执行模块。4.1.5DSP开发工具CCS应用CodeComposerStudio简称CCS,是TI公司推出的为开发TMS320系列DSP软件的集成开发环境。CCS工作在WINDOWS操作系统下,采用图形接口界面,提供有编辑工具和工程管理工具。CCS所集成的代码调试工具具有各种调试功能,包括TI公司提供的C源代码调试器和模拟器所具有的全部功能,支持ASM编程、C语言编程以及ASM和C语言混合编程。能对TMS320系列DSP进行指令级的仿真和可视化的实时数据分析。CCS在调试和仿真时具有很强的功能:允许中断点、剖析点及探测点三种断点设置,分别实现程序断点、实时分析和数据导入等功能。此外,还提供丰富的输入/输出库函数和信号处理的库函数,极大地方便了TMS320系列DSP软件的开发过程。1.代码编译器CCS允许编辑C语言源代码和汇编源代码,能在C代码之后显示与之对应的汇编指令。集成编译环境提供以下功能:表4.5CCS编译功能关键词、注释和字符串的高亮度显示圆括号和花括号对C语言代码块做标记,可方便的查到与之配对的右括号随时获得相关的在线帮助快速查找,在一个或多个文件中查找或替换2.应用程序生成特性CCS使用工程(Project)来管理整个应用程序设计的所有文档。工程中可能包含C语言源代码、汇编源代码、库文件、链接命令文件、头文件和目标文件等。CCS使用工程文件,与传统的开发工具完全不一样,编译、汇编、链接和调试不再是各个独立的子程序,操作人员可以不需要熟悉每个程序的繁琐的命令的相关参数,CCS能自动查找工程所需要的相关文件并加入到工程中。3.CCS的调试工具功能:表4.6CCS工具功能设置一个或多个断点使用Watch窗口查看变量查看、编辑存储器寄存器的值使用ProbePoint工具在主机与目标系统间传输数据观察目标系统中执行的反汇编代码和C语言指令4.设置图形显示窗口CCS提供了很多方法将程序运行所产生的数据用图形窗口显示(图4.2),包括时域/频域波形显示、星座图、眼睛图等,如图4.2。在本次设计中,image的显示设置尤为重要。主要参数设置为:Colorspace设置为YUV、StartAdress-YSource设置为y、StartAdress–USource设置为u、StartAdress–VSource设置为v、LinesPerDisplay设置为200、PixelsPerLine设置为200、BytePackingtoFill32Bits设置为NO、YUVRatio设置为4:1:1。图4.2数据图形窗口显示4.2灰度阈值算法程序设计根据将RGB值转换为灰度的原理,主要利用图象中背景与对象之间的灰度差异。理想状态下,背景与对象之间的灰度差异很大,利用图像的灰度特征来选择一个或多个最佳灰度阈值,并将图像中每个像素的灰度值与阈值相比较,最后将对应的像素根据比较结果分到合适的类别中。实现灰度阈值处理首先需要把RGB图像转换到YUV空间。转换到YUV空间后,由于人眼对于亮度信号非常敏感,而对色差信号的敏感程度相对较弱。也就是说,图象的主要信息包含在Y分量中,在对YUV信号进行量化时,让Y的量化级别多一些,而让U、V的量化级别少一些。本次试验中,首先要在Matlab中对数据进行处理,处理结果是将其原有的.bmp转化为.dat,生成为CCS数据文件,以便于进行列向量操作。通过MATLAB将.bmp文件转换.dat文件,程序如下:A=imread('filename.tif');%读取原文件Nrow=200;%定义200行Ncol=200;%定义200列B=rgb2ycbcr(A);%RGB转换成YUV图像y=B(:,:,1);%提取y分量u=B(:,:,2);%提取u分量v=B(:,:,3);%提取v分量fid=fopen('y.dat','wt');%Y分量转换成DAT数据fori=1:Nrowforj=1:NcolW=y(i,j);fprintf(fid,'%d\n',w);end end fclose(fid)fid=fopen('u.dat','wt');%U分量转换成DAT数据fori=1:Nrowforj=1:4:Ncolw=u(i,j);fprintf(fid,'%d\n',w)end end fclose(fid)fid=fopen('v.dat','wt');%V分量转换成DAT数据fori=1:Nrowforj=1:4:Ncolw=v(i,j);fprintf(fid,'%d\n',w);end end fclose(fid)例如,将pepper.tif转化为.dat格式的部分数据示意如下:7796929398981009910110110199……说明:转换后的数据段中没有头文件,需要按照事先分配好的地址和代码长度给定头文件。本次实验,是把y、u、v三个值逐次加进CCS中的,这样y、u、v三个数据段需要分别加上头文件。但是如果整合成一个dat文件时,只需加载一个头文件。以Y值的头文件为例,数据段中第一行代码为16512100019C40,其含义为:1651为CCS特有固定值;2表示十进制标识位;1000表示起始地址,存储数据的存储块起始地址;1表示数据块的页码,页号1为数据;9C40表示代码长度,即数据块中的数据。灰度阈值处理的原理是将所有灰度小于阈值的像素判定为0即黑色,灰度值大于t1的像素判定为255即白色,否则这些像素点的灰度值不变。表达式如下:4.2.1程序设计流程图:图4.3程序设计流程图4.2.2算法实现本设计中,指纹识别二值化预处理的算法是以C语言编写的。C语言程序编程效率高,可读性好,修改方便。基于CCS灰度阈值处理程序如下:#include"TMS320.H"%预定义#pragmaDATA_SECTION(y,".x")DATAy[40000];#pragmaDATA_SECTION(u,".x")DATAu[10000];#pragmaDATA_SECTION(v,".x")DATAv[10000];main()%对y[i]切分{LDATAi;for(i=0;i<60000;i++){if(y[i]<=110)y[i]=0;elseif(110<y[i]<=220)y[i]=y[i];elsey[i]=255;}}4.2.3基于CCS的仿真步骤及灰度阈值处理结果1、打开yuv的文件夹里的test.pjt,编译后,在Debug菜单中选择gomain使光标指向源程序的第一条语句。2、在File/Loadprogram中倒入可执行文件后,首先设置图片参数,再将图像数据导入DSP内存,具体如下图所示。图4.4设置参数3、设置图片参数,Colorspace设置为YUV、StartAdress-YSource设置为y、StartAdress–USource设置为u、StartAdress–VSource设置为v、LinesPerDisplay设置为200、PixelsPerLine设置为200、BytePackingtoFill32Bits设置为NO、YUVRatio设置为4:1:1、ImageOrigin设置为Topleft。图4.5的显示设置图4.6参数设置后的对话框4、导入y,u,v:由于图像再MATLAB中是分开采集的,所以要在CCS中分开导入;当然,也可以把y.dat,u.dat,v.dat整合到一个文件之后在直接导入CCS中。本实验是分别导入进去的。图中示范了如何导入y.dat,u.dat、v.dat的导入是一样的。图4.7加载数据对话框图4.8加载数据对话框图4.9加载数据对话框图4.10导入y值图像图4.11导入y,u图像图4.12导入一y,u,v图像4.在此,因为图像数据量大,请等待大约一分钟,如不出现可以先将LinesperDisplay改成20,出现图像后再将其改成200.之后运行程序,运行程序后,停止,然后等待处理后的图片。图4.13处理后的图象处理后的图像其他三幅图像如下所示:图4.14L-a图4.15B-a图4.16M-a4.3性能评价针对DSP的TMS320VC54X快速,高效的特点,采取了DSP集成开发环境CCS针对彩色图像的灰度阈值进行处理,并且利用多幅图像进行试验对比。实验结果表明该算法能有效的处理彩色图像的灰度阈值处理。达到了利用DSP对彩色图像进行预处理的应用目的。由于灰度图像数据量较大,因此程序的设计需要较大的存储空间。系统中所采集到的8bits灰度图像大小为200×200,满足VC54X可寻址的数据空间范围有64K的限制。按照TI公司所提供的TMS320VC54X使用手册中所描述的存储区的应用,认识到64K的数据存储区前80h供于程序调用专有,不能被用户支配和占用。若图像大于256×256时,超出VC54X可寻址的数据空间范围。所以将测试图像的尺子进行了调整,同时满足数组的计算(VC54X对于数组操作只提供31326字的有效范围)。按照灰度阈值处理的算法思想,进行的程序设计。在程序测试时出现了“失真”现象。原因是因为图像的某些灰度偏高,导致阈值高于平均灰度值,从而在阈值判断时,部分出现了白色“失真”现象;而图像的某些灰度偏低,导致阈值低于平均灰度值,从而在阈值判断时,部分就出现了黑色“失真”现象。4.4小结本章详细介绍了基于TMS320VC54X开发简介及基于TMS320VC54X彩色图像灰度阈值处理的实现与研究。针对DSP的VC54X快速,高效的特点,采取了DSP集成开发环境CCS2.0对RGB图像进行灰度阈值处理的实现。实验证明RGB彩色图片在灰度阈值处理后确实产生了一定的失真。5结论5.1所做工作及评价在Matlab仿真中,要求RGB转换到灰度,之后在转换到RGB。在Matlab中确实有RGB转换到灰度图的函数rgb2gray能实现彩色图像灰度化,也可以进行切分,可是在灰度转换到RGB时就转换不过去了,用gray2rgb转换不了。为此我又查了很多资料,试验了很多次,但均告失败。后来我尝试把彩色图片转换到YUV空间在对其进行灰度阈值切分,我才顺利的得以把试验做出来。在CCS试验中也遇到很多问题,其中在把tif文件格式转换到dat文件格式时由于对图像存储格式不是很清楚,刚开始对Y、U、V中的U、V采样时按照隔行隔列采的,结果在CCS运行时错误;后来又查了许多资料,修改了采样的方法,用隔列不隔行的方法得以把试验正确的作出来。本文讨论的灰度阈值法都针对静态图像的,对动态图像灰度阈值处理时要考虑精度和复杂度的要求,在二者之间找到一种平衡,综合考虑。5.2课题展望从灰度阈值处理算法研究的历史来看,可以看到对灰度阈值处理算法的研究有几个明显的趋势:一是对原有算法的不断改进,二是新方法、新概念的引入和多种方法的有效综合运用!人们逐渐认识到现有的任何一种单独的灰度阈值处理算法都难以对一般图像取得令人满意的处理效果,因而很多人在把新方法和新概念不断的引入图像灰度阈值领域的同时,也更加重视把各种方法综合起来运用!在新出现的方法中,Gamma校正方法就是一种很好的方法。Gamma源于CRT(显示器/电视机)的响应曲线,即其亮度与输入电压的非线性关系。在彩色电视接收到YUV信号,再经解码矩阵:还原成RGB三基色信号,还原出的RGB信号加到彩色显像管3个阴极或者栅极上,使荧光屏上重现出正确的彩色图像。由于摄像管的光电转换特性和显像管的光电转换特性都存在非线性,而理想状态下输出的色彩强度和电子束的电压信号之间的关系应该是线性的,为了使最终显示出来的图像的亮度层次不出现畸变,必须将RGB信号加到彩色显像管之前进行非线性校正,这称为校正。输出强度与电压信号之间的理想关系如图5.1,其实际关系如图5.2。图5.1理想的线性响应图5.2实际的非线性响应研究表明,显示器的输出强度和输出电压的相应大致呈幂指数关系,如公式所示的强度随着输入电压的增长成指数增长,通常我们把这个幂指数称为。事实上
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 锚杆劳务分包合同
- 塔吊司机劳动合同
- 小企业劳动合同
- 劳务合同报酬
- 小产权房房屋租赁合同
- 大货车货物运输合同
- 知识产权合同条款分析
- 城区中心亮化维修工程采购合同
- 油漆涂料承包合同范文
- 2025河沙、碎石等地材采购合同
- 改革开放教育援藏的创新及其成效
- 第3课+中古时期的西欧(教学设计)-【中职专用】《世界历史》(高教版2023基础模块)
- 山东省济宁市2023年中考数学试题(附真题答案)
- 班组建设工作汇报
- 供应链金融与供应链融资模式
- 工程类工程公司介绍完整x
- 板带生产工艺热连轧带钢生产
- 关键工序特殊过程培训课件精
- 轮机备件的管理(船舶管理课件)
- 统编《道德与法治》三年级下册教材分析
- 国际尿失禁咨询委员会尿失禁问卷表
评论
0/150
提交评论