图像处理范文10篇

时间:2023-03-14 16:03:12

图像处理

图像处理范文篇1

关键词:自动调焦图象处理虹膜识别

在摄影摄像技术中,调焦是保证感光介质所记录的影像取得清晰效果的关键步骤。调焦机构就是用来调节摄像镜头和感光介质之间的距离,使得像平面落在感光介质的表面。目前,常用的自动照相机、摄像机和数码相机中多采用自动调焦,即根据被摄目标的距离,由集成电路指使镜头前后移动到相应的位置上,从而使被摄目标自动清晰成像。自动调焦技术从20世纪70年代后期发展起来,到现在已经日臻成熟并取得了广泛应用,从而使摄像、摄影设备的自动化功能更加完善。

1自动调焦的几种主要方式

从基本原理来说,自动调焦可以分成两大类:一类是基于镜头与被摄目标之间距离测量的测距方法,另一类是基于调焦屏上成像清晰的聚焦检测方法。

1.1测距方法

测距方法的自动调焦主要有三角测量法、红外线测距法和超声波测距法。

(1)三角测量法测距原理如图1所示。左边的反射镜是局部镀膜反射镜,即中间一小块反射右边来的光线,其余大部分视场透射前方直接进入的光线,这样在调焦平面上的影像如图1左下角所示。右边的反射镜在电路控制下转动,调焦平面上有光电元件进行探测,当透射和反射的两部分影像重合的时候,可动反射镜的摆动角α/2和物点A的距离D之间有如下关系:

α/2=(1/2)arctg(b/D)

式中,b为基线长。

于是,系统可以计算出被摄目标和镜头之间的距离并驱动镜头运行到合适的位置,完成调焦。

(2)红外线测距法该方法的原理类似于三角测量法,所不同的是由照相机主动发射红外线作为测距光源,并用红外发光二极管的转动代替可动反光镜的转动。

(3)超声波测距法该方法是根据超声波在摄像机和被摄物之间传播的时间进行测距的。照相机上分别装有超声波的发射和接收装置,工作时由超声振动发生器发出持续时间约1/1000秒的超声波,覆盖整个画面的10%。超声波到达被摄体后,立即返回被接收器感知,然后由集成电路根据超声波的往返时间来计算确定调焦距离。

红外线式和超声波式自动对焦是利用主动发射光波或声波进行测距的,称之为主动式自动对焦。

1.2聚焦检测方法

聚焦检测方法主要有对比度法和相位法

(1)对比度法该方法是通过检测影像的轮廓边缘实现自动调焦的。像的轮廓边缘越清晰,则它的亮度梯度就越大,或者说边缘处景物和背景之间的对比度就越大。反之,离焦的像,轮廓边缘模糊不清,亮度梯度或对比度下降;离焦越远,对比度越低。利用这个原理,将两个光电检测器放在底片位置的前后相等距离处,被摄影物的像经过分光同时成在这两个检测器上,分别输出其成像的对比度。当两个检测器所输出的对比度相等时,说明调焦的像面刚好在两个检测器中间,即和底片的位置重合,于是调焦完成。

(2)相位法该方法是通过检测像的偏移量实现自动调焦的。如图2所示,在感光底片的位置放置一个由平行线条组成的网格板,线条相继为透光和不透光。网络板后适当位置上与光轴对称地放置两个受光元件。网络板在与光轴垂直方向上往复振动。从图2可以看出,当聚焦面与网络板重合时,通过网格板透光线条的光同时到达其后面的两个受光元件。而当离焦时,光束只能先后到达两个受光元件,于是它们的输出信号之间有相位差。有相位差的两个信号经电路处理后即可控制执行机构来调节物镜的位置,使聚焦面与网格板的平面重合。

各种自动对焦方式各有其局限性。例如红外测距和超声测距的对焦方法,当被测目标对红外光或超声波有较强的吸收作用时,将使测距系统失灵或对焦不准确;而对比度法聚焦检测受光照条件的制约,当光线暗弱或被摄体与背景明暗差别很小时,调焦就会有困难,甚至失去作用。

2基于图像处理的自动调焦

聚焦检测的自动调焦方法是依据被测物的光学图像。在用计算机作数字图像采集时,可充分利用计算机处理数字信号的高速度和灵活性,针对数字图像进行自动调焦。随着计算机硬件和数字图像技术的飞速发展,图像的实时处理已成为可能。计算机通过镜头和CCD采集到一系列的数字图像,对每一帧图像进行实时处理,判断对焦是否准确,成像是否清晰,并给出反馈信号控制镜头的运行,直到采集到的图像符合使用要求,即完成自动调焦。

基于图像处理的自动调焦具有以下两大优点:

第一,调焦更加智能化,聚焦判据更加灵活和多样。基于模拟图像的聚焦检测方法只利用被测物和背景之间的对比度(轮廓边缘的梯度)作为判断是否成像清晰的判据。而通过数字图像处理,不仅可以利用梯度信息,还可以提取图像中各种其它的有效信息进行判断,例如频率、相位等。对于具高频信息的图像,一般而言,对焦越准确,图像信号的频率越高,边缘越尖锐;离焦时则频率降低,边缘相对平滑。此外,由于计算机处理图像的灵活性,可以针对不用的使用要求,选择不同的判据进行调焦。例如,有时候我们所关心的目标只是图像中的某一个局部,而不是整幅图像的清晰程度。这时应该针对图像中这一局部进行处理和提取判据,用该局部的对比度(边缘梯度)作为调焦的依据。

第二,利用计算机可以很方便地对运行执行机构进行控制,从而避开复杂的调焦电路和机构。计算机接口和总线技术已经非常成熟,通过软件给出控制信号,直接控制电机动物镜的运行,不仅灵活方便,响应速度符合调焦要求,还能大大简化电路和运动机构。

缺点是,由于图像处理需要占用大量的计算机资源,这种自动调焦方法对计算机硬件提出了较高的要求。此外,和前面所介绍的对比度法一样,也受到光照条件的限制。

3在虹膜图像采集中的应用

虹膜位于瞳孔和巩膜之间,是瞳孔周围的环状部件,呈褐色或蓝色。虹膜的表面呈现高低不平的皱襞、隆起和内陷,其外观形貌因人而异,并且不随时间而改变。虹膜的这些特点非常合作为人个身份识别的依据,因而虹膜识别鉴别技术作为物特征识别技术的一个分支,近年来得到了迅速的发展和应用。

采集到清晰、高质量的虹膜图像,是虹膜识别的首要问题,同时也是虹膜识别所面临的主要困难之一。由于虹膜范围小、细节特征多,要获得高分辨率的图像,要求光学系统具有较大的放大率,同时需要较大的通光孔径来保证照明效果。但是通常孔径越大,系统景深越小,因而要求自动调焦非常精确。

用摄像机采集到的虹膜图像往往包含整个眼睛轮廓,而我们感兴趣的只是其中虹膜部分,因而自动对角只能针对虹膜的局部,调焦的目标是让虹膜部分清晰成像。基于以上考虑,我们设计了一种基于图像处理的自动调焦系统用于虹膜图像采集。考虑到可见光对人眼的刺激,要用红外光进行照明。当被摄目标(人眼)和摄像机镜头之间的距离到达一定范围内时,摄像物镜在电机驱动下进行小幅度的移动,同时CCD和图像采集卡不断采集图像,并对所采集到的一系列图像作图像质量评价,判断虹膜部分是否成像清晰。当镜头移动到合适的位置,虹膜成像清晰,符合后续处理和模式识别的要求时,即完成自动调焦过程,系统自动将该图像保存。

虹膜图像的实时处理,首先是在包括整个人眼的图像中寻址找虹膜的环状区域,即界定虹膜的中心位置和内外边界。由于瞳孔、虹膜和巩膜均具有规则的圆形边界,采用哈夫变换进行图像分割分别达到很好的效果。哈夫变换利用图像的全局特性来检测边缘的一种方法。在预先知道区域形状的条件下,利用哈夫变换可以方便地得到边界线并将不连续的连缘象素点连接起来。针对虹膜的圆形边界,哈夫变换的边缘检测算子可用下式表示:

在圆的参数空间(r,x0,y0)中,寻找使得上述算子达到最大的值,即可分别找到虹膜内、外圆形边界。其中Gσ(r)是高斯函数,(σ因子可以控制算子对边缘梯度的敏感程度);I(x,y)是坐标为(x,y)的象素点的灰度值。先将瞳孔和虹膜之间的显著边界检测出来,同时找到虹膜的中心坐标;然后在较小的范围内利用该算子寻找虹膜和巩膜的边界。

图像质量评价基于图像局部(虹膜部分)的频率梯度信息。在虹膜区域内,清晰的虹膜应该具有复杂纹理特征,因而图像中含有高频信息;同时虹膜基质内的血管和色素与周围组织的颜色存在差异,在图像中形成了较大的灰度梯度。当虹膜部分梯度最大,频率最高成了较大的灰度梯度。当虹膜部分梯率最大,频率最高的时候,即是对焦最准确的时候。实际上,由于纹理特征分布在整个虹膜环形区域,因此采用这个区域内的平均对比度作为成像清晰的判据。计算每个象素附近对比度所用的算子Δ为:

Δ=|Ii,j-Ii-1,j|+|Ii,j-Ii+1,j|+Ii,j-Ii,j-1|+|Ii,j-Ii,j+1|

式中,Ii,j是坐标为(i,j)的象素点的灰度值,Ii-1,j、Ii+1,j、Ii,j-1和Ii,j+1为象素点(i,j)的邻近象素点的灰度值(见图3)。

自动调焦程序流程如图4所示。

4实验

采用敏通1132C型CCD摄像头作为摄像设备,BoserBS602图像采集卡作数字图像采集,利用红外发光二极管阵列照明,PIII800计算机作为系统控制中心,按照上述基于图象处理的方法进行自动调焦,当虹膜成像清晰时自动拍摄。实验所撷取的虹膜图像照片如图5所示,进行图像增强后如图6所示。

图像处理范文篇2

【关键词】行动导向教学法;医学图像处理;教学研究

医学图像处理教学所涉及的内容较为广泛,其中包含了医学图像处理的基本概念、图像分割、图像可视化等内容,具有一定的教学难度。在生物医学工程中,医学图像处理是重要的研究方向和研究分支,医学图像处理课程具有较高的难度,其主要是通过数学方法、数学原理、计算机技术等多学科内容的交叉融合而实现的,对医学影像设备所产生的图像进行分析处理,其中医学影像设备包含了:PET、CT、MRI等。随着医学成像技术和计算机技术的进步,提高了医学图像处理能力,在医学上,医学图像处理技术的应用也越来越广泛,取得了更高的研究价值。在国家教育中,医学图像处理课程的地位日趋上升,为了促进医学图像处理课堂的良性发展,加强教学理念和方法的创新是其中的重要因素之一,随着行动导向教学法的提出,在医学图像处理教学中,加强对行动导向教学法的有效转化,可以提升医学图像处理教学的水平。

1行动导向教学法

行动导向教学法具有复杂性、特殊性等特点,主要是由一系列的技术和教学方法组成,具有较高的应用价值。行动导向教学法的内容繁琐,主要包含了:项目教学法、卡片展示法、任务教学法、头脑风暴法、模拟教学法、案例教学法、文本引导法等,在医学图像处理教学中行动导向教学法的有效应用,具有以下特点:强调了学生在图像处理教学中的主体地位,可以提升学生的自主学习能力;学生可以参与信息收集、方案制定、方案实施、结果反馈等全部教学过程,提高了学生的参与感;学生可以参与到解决问题的过程中,提高了学生的思考能力、操作能力、创新能力等,在培养学生专业能力上具有重要的作用。由于医学图像处理教学具有较高的难度要求,所以在实施行动导向教学模式的过程中,需要注意结合教学实际,根据学生的实际情况制定合理的教学计划,科学的应用行动导向教学。

2在医学图像处理教学方面行动导向教学法的转化

由于医学图像处理的学习具有较高的难度,创新教育方法和观念对促进医学图像处理教学水平的提升具有重要的作用,行动导向教学法的转化主要体现在以下几个方面:2.1创新教学理念。传统的医学图像处理教学理念已经无法适应现代医学教育的需求,传统的“灌输式”教育,忽略了学生在教学中的主体地位,学生的参与感不强,无法调动学生学习的积极性,不能提高学生的学习兴趣,不利于学生成绩的提升。在行动导向教学模式下,应该加强观念的创新和改变,针对医学图像处理的实际情况,在教学中为学生制定课程学习目标,增加学生对专业知识、专业技能的了解,提升学生的操作能力,从而促进学生的专业发展。2.2合理制定课程内容。在医学图像处理中,课程内容复杂多样,例如:图像处理基本概念、图像压缩、图像恢复、图像增强等内容,部分教师在课堂内容的安排上,过分重视了对教材知识点的讲解,而忽略了现实需求,医学图像处理与医学成像技术的发展有着密切的联系,在医学上,传统的图像处理技术已经无法适应现代医学发展的需求,而逐渐发展的模拟手术、虚拟内窥镜等新型医学图像处理技术在现代医学发展中发挥着重要的作用,加强对这些新型技术的教学有利于促进医学事业的可持续发展。在为学生实施行动导向教学的时候,应该加强模拟教学,让学生参与医学图像处理的模拟教学中,提高学生的独立分析处理能力,加强学生对医学图像处理的认识。2.3加强实践。实践是检验真理的唯一标准,教材上的有关知识点均是从实验、实践中得来的,在为学生进行医学图像处理教学的过程中,应该加强实践教学,提高学生的学习兴趣,让学生在实践中找到参与感,调动学生的积极性,有利于提升学生的自主学习能力和操作能力,从而提升医学图像处理的教学效率。

3在医学图像处理教学方面转化行动导向教学法的效果分析

医学图像处理教学是生物医学工程教育体系中的重要内容,在医学图像处理教学中,有效地转化行动导向教学法,一方面,可以提高学生在教学中的地位,提升学生的课堂参与感,有利于学生学习兴趣的提升,从而提高医学图像处理教学质量;另一方面,转化行动导向教学法可以促进医学图像处理教学的可持续发展。

综上所述,医学图像处理教学在医学教育中具有较高的教育价值,在医学上,医学图像处理技术的应用越来越广泛,随着医学成像技术的进步,促进了医学图像处理技术的提高,在医学教学方面需要加强创新和改革,重视转化行动导向教学法,有利于促进医学图像处理教学的可持续发展。

参考文献

[1]湛峤赟.行动导向教学法在高职教学中的应用与研究[J].当代教育实践与教学研究.2016(10):112-113.

图像处理范文篇3

计算机图像处理技术概述

针对于计算机图像处理技术进行分析,其能够通过对图像进行合理科学处理,让图像信息实现高效化利用,在实际应用计算机图像处理技术的过程当中,要求工作人员能够切实做好下列几项内容:第一,要针对于所需要处理图像进行实时转换,并且要方便计算机进行科学有效的识别,这样才能够为后续图像处理工作奠定坚实的基础;第二,针对于所选定图像要实施合理及科学处理,并且还应当切实保障处理图像的高效性和科学性;第三,对于已经处理完毕的图像信息要实行更加准确利用和分析,充分挖掘计算机图像处理应用价值。除此之外,运用该技术过程当中需要注重对图像进行合理及科学分类。数字化图像具有处理效率高、精确高等特点,利用价值相对比较大。但是,对于输出相对简单的模拟图像,虽然生活当中比较常见和普遍,但是这一类图像灵活性较差,精度较低,这种情况之下就导致应用范围不够大,所以需要通过利用图像处理技术进一步扩大其应用范围。

计算机图像处理技术的应用

(一)农业方面应用。目前国内大部分现代化农业生产过程中通常都采用机械化设备来取代人工作业。比如,某些区域农产品成熟的情况之下通常都会采用采摘机器人,而不是采用以往人工采摘方式,通过机械化方式促使人工采摘方式得到转变,能够明显提高工作质量和工作效率。针对采摘机器人进行设计过程当中,需要充分利用好计算机图像处理技术,还需要结合农产品类型在空间位置上进行明确定位工作。通过利用计算机图像处理技术促使产品信息、规格得到明确提取。工作人员为了切实保障工作准确无误完成,同样需要加强计算机图像处理技术的广泛运用,采摘过程当中,若是一旦遭遇到了其中障碍物,机器人需要对其进行科学准确识别和判断,并且需要继续开展相关工作。农业实际发展过程当中,大部分技术人员往往都需要结合农业实际发展状况,具体问题具体分析,与此同时,还需要对不同农产品种类开发出不同类型采摘机器人,需要保障正常采摘工作顺利开展和实施,这都需要相关人士能够加强计算机图像处理技术广泛运用。对于我国农业发展的进程来讲,采摘机器人的广泛应用是不可忽视重要的一大部分,一方面可以促使农业自动化水平和自动化程度得到进一步提高,另一方面也可以大幅度降低当前劳动人民强度,同时可以提高农业生产质量和生产效率。(二)交通方面应用。在当前交通运输方面,国内计算机图像处理技术得到了极为广泛的应用,比如,红绿灯摄像头、交通监控系统以及超速检测摄像头等等,这都是日常生活当中比较常见和熟悉的设备。通过利用计算机图像处理技术能够有效的维护交通秩序,同时也可以针对交通情况进行科学有效的监控,对于违规违章行为保障在第一时间之内进行清晰记录和拍摄,这也是目前针对违章行为进行处罚重要的凭证。所以,由此可知,在当前交通方面应用计算机图像处理技术,不仅可以切实保障交通秩序良好性,同时也可以切实保障广大人民群众交通安全。不难发现,当前交通领域应用计算机图像处理技术是不可忽视的一大举措,通过使用计算机图像处理技术可以转变以往单纯依靠人工来维持交通秩序的局面,同时也可以保障交通秩序良好性,有效的规避交通事故发生。(三)图纸读取方面应用。设计图纸是设计人员的结晶,为了能够保证设计图纸良好性,需要应用计算机图像处理技术。当前相关企业在对产品进行开发和设计过程中,需要充分应用好计算机图像处理技术。例如,道路修筑桥梁设计或者企业在服装设计过程当中都需要进行合理以及科学的图纸设计,要保障图纸设计优质化,这就需要具备图像处理技术的良好应用。通过利用图像处理技术能够对图形实现高效识别,并且可以从中提取到相对关键性的信息,有利于设计工作日益发展和完善。工作人员在对图纸读取过程当中,也常会应用到计算机图像处理技术,通过采用文字扫描仪可以得到工程图当中点阵图形,同时也可以运用图像处理技术、人工智能技术以及识别技术针对图像所涉及到的各大组成要素进行智能识别和分析。编辑其最基本图形数据文件之后,通过对各个文件信息进行修改,切实的保障图纸设计工作能够顺利完成。由此可知,目前国内图纸设计工作更加需要进一步强化计算机图像处理的广泛运用,通过使用计算机图像处理技术可以保障图纸信息实现准确读取,这是目前各项工作实施过程当中不可忽视的重点内容。(四)遥感技术中应用。在当前遥感技术当中计算机图像处理技术是不可忽视的一大关键性的技术,在当前军事、工业、农业发展的过程中都需要进一步加强遥感技术的广泛运用。现实生活当中也常常会涉及到计算机图形处理技术,同时要通过采取计算机图像识别技术来顺利完成各项工作。应用遥感技术的过程当中,要保障所采集图像实现图像快速生成,切实保障数字信息得到良好处理和提取,这些工作的顺利开展和实施都需要具备计算机图像处理技术良好应用。总而言之,在目前应用遥感技术的过程当中需要具备计算机图像处理技术的大力支持,并且要加强信息的处理,在这个过程中就需要具备计算机充分参与。

图像处理范文篇4

关键词:图像处理;分辨率

日常的图像处理过程包括了图像的创建、图像处理与图像输出。图像的输出品质并不仅仅取决于图像输出这一道最后的图像处理环节。图像处理各环节中的分辨率的选取对于图像的输出效果是至关重要的。分辨率是图像文件包含细节和信息的数量,也指输入设备、输出设备和显示设备能够产生的细节水平。因为分辨率这一指标既可适用于图像文件,也可适用于各种输入输出设备,因此不少图像处理人员对分辨率这个概念存在着一些模糊的认识。分辨率究竟是怎样的度量单位?在各环节中如何选取合适的分辨率以得到较满意的图像输出效果?本文就此作一探讨。

一、理解分辨率

1.图像分辨率

图像的分辨率以每英寸的像素数目度量,以ppi为单位(pixelsperinch)。像素是可在屏幕显示的最小元素,像素与屏幕无关。

在同样的显示尺寸的前提下,高分辨率的图像包含的像素比低分辨率的图像要多,因此其中的像素相对来说较小。例如:1英寸见方的图像,在72ppi的分辨率下包含了5184个像素(72×72),而同样的1英寸见方的图像,在300ppi的分辨率下包含了90,000个像素(300×300)。高分辨率的图像通常比低分辨率图像包含更多的细节和敏感的颜色转变。其位图文件的大小与图像的总像素尺寸是成比例的。高分辨率的图像要开销更多的磁盘空间,图像处理与输出也需化费更多的时间。

2.打印机分辨率

打印机分辨率是打印机可表示色调和颜色的能力。与图像分辨率不同,打印机分辨率以每英寸墨点的数目来度量,以dpi为单位(dotsperinch)。高分辨率照排机等输出设备的分辨率也常以每英寸线数来度量,以lpi为单位(linesperinch),简称为线频率(Screenfrequency)。

大多数激光打印机有300-600dpi的输出分辨率,高档次一些的能以1200dpi打印。有一些喷墨打印机的分辨率也可达1440dpi,而照排机的打印分辨率通常有1270dpi或2540dpi。具有较高dpi的打印机能产生较平滑和较清晰的输出。300dpi激光打印机的线频率缺省设置通常是45~60lpi,对于600dpi的打印机,线频率大约为85lpi。具体一台打印机实际每英寸线数的打印能力由其厂商决定。打印机分辨率越高,图像输出越平滑、清晰。

3.显示器分辨率

显示器分辨率通常由每英寸像素或点阵数目来度量,以dpi为单位(dotsperinch)。显示器分辨率依赖于显示器的尺寸以及显示器的像素设置。显示器的典型分辨率约为72dpi。

在Photoshop等图像处理软件中,图像的像素被直接转化成显示器的像素(或点阵)。因此当图像分辨率高于显示器分辨率时,屏显图像大于它指定的输出尺寸。例如:在一个72dpi的显示器上显示一个1英寸见方144ppi的图像,它看起来会有2英寸见方大小。因为显示器仅能以72dpi的分辨率显示,它需要2英寸来显示一个1英寸见方144ppi的图像。

4.扫描仪分辨率

扫描分辨率通常以每英寸点阵的数目(dpi)来度量。扫描仪分辨率的高低决定了扫描仪所能记录的图像的细致程度。

通过扫描软件,扫描的点阵直接转化成图像的像素。因此扫描分辨率越大,获得的图像文件尺寸也越大,需要更长的时间、更多的内存。扫描仪的分辨率指标通常有二个:光学分辨率与插值分辨率。光学分辨率是扫描仪的实际分辨率,它是决定图像清晰和锐利度的关键因素;而插值分辨率则是通过软件运算的方式来提高分辨率的数值,对扫描黑白图像或放大较小的原稿等工作具有一定应用价值。

二、为图像选取合适的分辨率

1.扫描分辨率的选定

对于用低分辨率扫描或建立的图像,仅通过大量扩展图像中的像素是难以提高图像质量的。因此在由扫描导入图像时,选用一个合适的扫描分辨率是至关重要的。较高的分辨率可以提高扫描图像的品质,但这是有限度的。一个方面,扫描分辨率受限于扫描仪的分辨率指标;另一方面,还要从具体的图像处理目的来分析图像是否需要一个高的分辨率。

以笔者的经验,扫描分辨率尽量在光学分辨率允许的范围内选取。假如扫描的原图需要放大,扫描分辨率可以选取得较大一些,但不要超过扫描仪的光学分辨率。进一步的放大工作可以在PhotoShop等图像处理软件中进行,因为好的图像处理软件提供的插值算法得到的图像放大效果可能更好。在此前提下,通过对扫描图像的两个问题的考虑来决断一个合适的扫描分辨率:扫描图像的最终输出媒介是什么,图像在扫描过程中是否需要放大。

如果扫描图像仅用于屏幕显示(如通过网页进行图像),并且显示时图像尺寸不变,那么扫描分辨率设定为72dpi即可;如果扫描所得的图像要放大显示,则可用下式来计算合适的扫描分辨率:

最终图像的长边×72÷原图像的长边

如果扫描图像在处理后需在打印机上输出,输出图像尺寸不变,选取一个合适的扫描分辨率的简易办法是将输出设备每英寸打印线数(lpi)乘以2;如果扫描图像需放大打印,则计算下式的值作为扫描分辨率:

最终图像的长边×输出设备线频率×2÷原图像的长边

例如:一幅2英寸×3英寸的图像经扫描处理后打印放大为4英寸×6英寸,假定输出设备线频率为150lpi,则合适的扫描分辨率应是600dpi。

2.图像分辨率与打印分辨率的匹配

如果你正在为打印机产生输出,则要根据打印机的分辨率来计算图像分辨率。在图像打印输出前给图像设置一个与打印机分辨率匹配的分辨率(匹配而不是相同),才能得到最好的输出效果。为此,对于一个完成的高分辨率图像作品,通常先保存它(可能某天打印时需要这样高的分辨率)。随后做一个拷贝,根据当前目标打印机的分辨率,给图像取定一个合适的分辨率。简便的计算方法是:

图像分辨率(ppi)=打印机线频率(lpi)×2

如果图像分辨率大于目前为打印机定义的线频率的两倍,在打印期间一些图像信息将被舍弃,一些图像细节在打印作品中将得不到体现,并且会延长打印时间。

如果目标打印机的分辨率指标以每英寸点数作单位,而不了解所用输出设备的线频率,可根据下表中笔者的经验值对图像分辨率与打印分辨率进行匹配。其中的数据对于具体的一台打印机可能不是很精确,但应该是大致合适的。

此外,你还必须知道应该使用哪一种打印纸。不同的纸张可提供的分辨率不同,在较低分辨率的纸张上输出高分辨的图像,不会有令人满意的结果。

参考文献:

图像处理范文篇5

关键词:高职院校;计算机图像;教学发展

在科学技术不断发展的今天,越来越多感受到了科技发展带来的优势作用,并且在交通、信息以及办公和通讯等多个方面为人们的生活带来了福利与便利。计算机的飞速发展让现代化的图像处理模式成为社会图像处理的主要发展模式,甚至在某种程度上来说已经取代了传统化的手工制图。本课题以职工院校对计算机的图像处理为基础进行研究,希望在提高教学水平的前提下可以提高学生的实践发展能力。

一、研究的界定

对于高职院校来说,在计算机的图像处理能力上的发展研究界定重要包括对于高职院校、计算机图像处理能力以及教学的能力发展为主要界定。(一)高职院校。高职院校以培养生产与服务的一线工作人员为主要培养和发展目标,同时高职院校也是我国培养技术工人的主要阵地。依据办学的水平以及培养的目标将其分为不同的发展类别,通常情况下来说是高技能的种类,即不以学术的发展为主,以培养其动手的实践能力为主。(二)计算机的图像处理。对于计算机的发展来说,其发展的进步性是涉及到方方面面的。而其中一个主要的分支就是计算机的图像处理。图像的处理也是计算机的必备基本技能之一,它主要依据的是将图像的信号转化为数字的信号为主,进而利用计算机对其进行处理。数字的处理模式最早是出现在二十世纪五十年代。当时的计算机处理已经发展到一定的阶段和水平。而到了六十年代的时候就已经开始走向了成熟。由于计算机具有处理速度快和对于数字信号的精准把握,在使用过程中具有易于传输的特点,抗干扰的能力强等优点,应用到包括航海以及航空、数字的遥控技术以及娱乐的发展领域。(三)教学能力的发展。对于教学能力的培养应该从整个教学活动去进行分析,总的来说包括对于教学的认知发展能力以及对于教学的操作能力以及对于教学的监控能力。在整个教学的形成过程中,教学的动机、水平以及教学的经验占据了影响教学质量的关键性因素。

二、研究的方法

(一)文献研究法。通过对高职院校的学习情况以及学习的进度进行深入的分析之后,查阅以及搜集了有关的研究理论,并且根据最新的发展动态以及借鉴有关的研究成果,从最具有权威的数据库中参考了大量的资料和文献,对于所要研究的课题进行深入的思考与研究,对有关方面的资料以及文件进行整理和分析,进而探讨本文的研究方向和本文的创新之处。(二)概念分析法。通过对课题进行相关概念的分析与阐释之后,明确高职院校现阶段对于图像的处理所处的阶段与现状,为课题的学理提供一定的支撑。对于高职院校来说,要想发展对于计算机图像的处理就要先对计算机图像处理的基本概念有所了解,只有这样才能为课题的研究提供一定的学术理论支撑。(三)经验总结法。在高职院校计算机图像的处理技术学习过程中,要进行及时的理论与实际的动态研究与动态分析,不断对于学习的过程以及学习的理论进行分析与研究。通常情况下,在学习完一段时间之后就要对于所学的知识做出一个总结,根据对于知识的学习与总结调整学习与研究的方法。(四)行动研究法。伟大的领袖曾经说过,实践是检验真理的唯一标准,要对于所学到的内容进行及时的消化与吸收的主要方法就是要不断地进行动态的分析,不断地总结研究与发展的成果,进行不断地摸索与不断的学习,探索出高职院校计算机图像处理能力发展策略。在不断地学习过程中对图像处理的技能进行掌握。

三、研究的过程

在对高职院校的图像处理能力进行分析之后,可以进行以下的研究工作。第一个阶段是准备阶段。主要分为前期的准备阶段与组织实施阶段和总结阶段三个基本的阶段。在前期的准备阶段主要是学习多元智能以及构建主义和教学的有关理论,并且成立相关的课题小组。对于发展进行系统化、理论化的研究。在组织实施的阶段主要是要根据已有的计划,不断地对研究的方法进行探讨。在总结阶段主要是对于前两个阶段的工作进行总结性探讨,并且研究出最适合高职院校的图像处理的方法。

四、结语

对于高职院校的计算机图像处理教学能力发展进行一系列的研究与方法的探讨以及经验的总结之后,我们可以知道在高职院校计算机图像处理教学能力发展研究的重要性。另外,现代教育信息化手段越来越多,充分应用现代信息化技术对于高职院校学生的学习是个重要的捷径,例如蓝墨云班课等信息化手段,在学习督促、学习交流、效果展示等方面都有很大优势,也符合高职院校学生学习心理特质。鉴于此,高职院校要加强对于计算机图像处理教学能力发展研究和学习。

参考文献:

[1]郑会娟.高职院校计算机专业《Photoshop图像处理》教学探讨[J].考试周刊,2012(71):147-148.

图像处理范文篇6

基于图像采集卡的视频图像处理系统

计算机图像处理系统从系统层次上可分为高、中、低档三个层次,目前一般比较普及的是低档次的系统,该系统由CCD(摄像头)、图像采集卡、计算机三个部分组成,其结构简单,应用方便,效果也比较不错,得到的图像较清晰。目前网上基于VC开发经验的文章不少,可是关于如何在VC开发平台上使用图像采集卡的文章确没发现,笔者针对在科研开发中积累的使用图像采集卡经验,介绍如何自己是如何将采集卡集成到图像开发系统中,希望能够给目前正需要利用图像采集卡开发自己的图像处理系统的朋友有所帮助。

使用的摄像机采用台湾BENTECHINDUSTRIAL有限公司生产的CV-155L黑白摄像机。该摄像机分辨率为752x582。图象采集卡我们采用北京中科院科技嘉公司开发的基于PCI总线的CA-MPE1000黑白图象采集卡。使用图像采集卡分三步,首先安装采集卡的驱动程序,并将虚拟驱动文件VxD.vxd拷贝到Windows的SYSTEM目录下;这时候就可以进入开发状态了,进入VC开发平台,生成新的项目,由于生产厂家为图像采集卡提供了以mpew32.dll、mpew32.lib命名的库文件,库中提供了初始硬件、采集图像等函数,为使用这些函数,在新项目上连接该动态库;最后一步就是采集图像并显示处理了,这一步要设置系统调色板,因为采集卡提供的是裸图形式,既纯图像数据,没有图像的规格和调色板信息,这些需要开发者自己规定实现,下面是实现的部分代码:

CTestView::CTestView()

{

W32_Init_MPE1000();//初始化采集卡

W32_Modify_Contrast(50);//下面的函数是为了对采集卡进行预设置

W32_Modify_Brightness(45);//设置亮度

W32_Set_HP_Value(945);//设置水平采集点数

wCurrent_Frame=1;//当前帧为1,获取的图像就是从这帧取得的

//设置采集信号源,仅对MPE1000有效

W32_Set_Input_Source(1);

W32_CACardParam(AD_SETHPFREQ,hpGrabFreq);

W32_Set_PAL_Range(1250,1024);//设置水平采集范围

W32_Set_VGA_Mode(1);

wGrabWinX1=0;//采集窗口的左上角的坐标

wGrabWinY1=0;

firstTime=TRUE;

bGrabMode=FRAME;

bZipMode=ZIPPLE;

/

lpDib=NULL;//存放获取的图像数据

}

CTestView::~CTestView()

{

W32_Close_MPE1000();//关闭采集卡

}

////显示采集的图象,双击鼠标采集停止

voidCTestView::OnGraboneframe()

{

//TODO:Addyourcommandhandlercodehere

wCurrent_Frame=1;

//设置采集目标为内存

W32_CACardParam(AD_SETGRABDEST,CA_GRABMEM);

//启动采集

if(lpDib!=NULL)

{

GlobalUnlock(hglbDIB);

GlobalFree(hglbDIB);

}

//分配内存

hglbDIB=GlobalAlloc(GHND,(DWORD)wImgWidth*(DWORD)wImgHeight);

lpDib=(BYTE*)GlobalLock(hglbDIB);

hdc=GetDC()->GetSafeHdc();

if(lpDib!=NULL)

{

cxDib=wImgWidth;

cyDib=wImgHeight;

SetLogicPal(hdc,cxDib,cyDib,8);

SetStretchBltMode(hdc,COLORONCOLOR);

bGrabMark=TRUE;

while(bGrabMark==TRUE)

{

if(msg.message==WM_LBUTTONDBLCLK)

bGrabMark=FALSE;

W32_ReadXMS2Buf(wCurrent_Frame,lpDib);

SetDIBitsToDevice(hdc,0,0,cxDib,cyDib,0,0,

0,cyDib,(LPSTR)lpDib,

bmi,

DIB_RGB_COLORS);

}

//停止采集

W32_CAStopCapture();

::ReleaseDC(GetSafeHwnd(),hdc);

return;

}

////将下面这个函数添加在视图类的CTestView::OnSize()函数中,就可以对系统的调色板进行设置。

voidWINAPIInitLogicPal(HDChdc,shortwidth,shortheight,WORDbitCount)

{

intj,i;

shortcxDib,cyDib;

LOGPALETTE*pLogPal;

j=256;

if((pLogPal=(LOGPALETTE*)malloc(sizeof(LOGPALETTE)+(j*sizeof(PALETTEENTRY))))==NULL)

return;

pLogPal->palVersion=0x300;

pLogPal->palNumEntries=j;

for(i=0;ipLogPal->palPalEntry[i].peRed=i;

pLogPal->palPalEntry[i].peGreen=i;

pLogPal->palPalEntry[i].peBlue=i;

pLogPal->palPalEntry[i].peFlags=0;

}

hPal=::CreatePalette(pLogPal);

deletepLogPal;

::SelectPalette(hdc,hPal,0);

::RealizePalette(hdc);

cxDib=width;cyDib=height;

if((bmi=(BITMAPINFO*)malloc(sizeof(BITMAPINFOHEADER)+j*sizeof(RGBQUAD)))==NULL)

return;

//bmi为全局变量,用于显示图像时用

bmi->bmiHeader.biSize=40;

bmi->bmiHeader.biWidth=cxDib;

bmi->bmiHeader.biHeight=cyDib;

bmi->bmiHeader.biPlanes=1;

bmi->bmiHeader.biBitCount=bitCount;

bmi->bmiHeader.biCompression=0;

bmi->bmiHeader.biSizeImage=0;

bmi->bmiHeader.biXPelsPerMeter=0;

bmi->bmiHeader.biYPelsPerMeter=0;

bmi->bmiHeader.biClrUsed=0;

bmi->bmiHeader.biClrImportant=0;

for(i=0;ibmi->bmiColors[i].rgbBlue=i;

bmi->bmiColors[i].rgbGreen=i;

bmi->bmiColors[i].rgbRed=i;

bmi->bmiColors[i].rgbReserved=0;

}

}

视频"画中画"技术

"画中画"这个概念类似与彩色电视机"画中画",就是在一幅大的图像内显示另外一幅内容不同的小的图像,小图像的尺寸大小一般地说为大图像尺寸的1/4或1/9,显示位置在大图像的右上角。这种技术不仅在电视技术中,在可视电话系统也可以发现这种技术的身影,它们都是依靠硬件来实现的,但是如何在VC开发平台上用编程语言来将该功能添加到自己开发的视频监控软件,为使用者提供更大的信息量呢?也许读者最容易想到的是首先显示大图像,然后再在一个固定位置画第二幅小图像,这种技术技术如果对于静止图像当然没有问题,但是对于视频流,由于每一秒钟需要画25幀,即25幅图像,这样一来计算机需要不停的画不停的擦除,会给用户以闪烁的感觉,如何解决这个问题呢?有的参考书上将大小图像分快显示,这种方法要将待显示的图像数据与显示位置的关系对应起来,容易出错不说,而且麻烦,且速度慢,为此,我对该方法进行了改进,得到了满意的效果。实现的代码如下:

voidpictureinpicture()

{

………………………..

CBitmapbitmap,*oldmap;

pData1=(BYTE*)newchar[biWidth*biHeight*3];//biWidth和biHeight为视频采集卡获取//的图像尺寸。

Read(pData1,bih.biWidth*bih.biHeight*3);//该函数从采集卡中获取数据

CClientDCdc(this);

m_pBMI1=newBITMAPINFO;//自定义的BMP文件信息结构,用于后面的图像显示

m_pBMI1->bmiHeader.biBitCount=24;

m_pBMI1->bmiHeader.biClrImportant=0;

m_pBMI1->bmiHeader.biClrUsed=0;

m_pBMI1->bmiHeader.biCompression=0;

m_pBMI1->bmiHeader.biHeight=biHeight;

m_pBMI1->bmiHeader.biPlanes=1;

m_pBMI1->bmiHeader.biSize=40;

m_pBMI1->bmiHeader.biSizeImage=WIDTHBYTES(biWidth*8)*biHeight*3;

m_pBMI1->bmiHeader.biWidth=biWidth

;

m_pBMI1->bmiHeader.biXPelsPerMeter=0;

m_pBMI1->bmiHeader.biYPelsPerMeter=0;

////////////////////////////////////////////////////////////////////////

pData2=(BYTE*)newchar[biWidth1*biHeight1*3];//申请存放小图像的缓冲区

Read(pData2,biWidth1*biHeight1*3);////向该缓冲区读数据

m_pBMI2=newBITMAPINFO;

m_pBMI2->bmiHeader.biBitCount=24;

m_pBMI2->bm

iHeader.biClrImportant=0;

m_pBMI2->bmiHeader.biClrUsed=0;

m_pBMI2->bmiHeader.biCompression=0;

m_pBMI2->bmiHeader.biHeight=biHeight1;

m_pBMI2->bmiHeader.biPlanes=1;

m_pBMI2->bmiHeader.biSize=40;

m_pBMI2->bmiHeader.biSizeImage=WIDTHBYTES(biWidth1*8)*biHeight1*3;

m_pBMI2->bmiHeader.biWidth=biWidth1;

m_pBMI2->bmiHeader.biXPelsPerMeter=0;

m_pBMI2->bmiHeader.biYPelsPerMeter=0;

//下面实现画中画的显示

CDCMemDc;

MemDc.CreateCompatibleDC(&dc);

bitmap.CreateCompatibleBitmap(&dc,biWidth,biHeight);

oldmap=MemDc.SelectObject(&bitmap);

::StretchDIBits(MemDc.m_hDC,0,0,biWidth,biHeight,0,0,—biWidth,biHeight,pData1,m_pBMI1,DIB_RGB_COLORS,SRCCOPY);//首先将大图像画在内寸上下文中

::StretchDIBits(MemDc.m_hDC,20,20,biWidth1,biHeight1,_

0,0,biWidth1,biHeight1,pData2,m_pBMI2,DIB_RGB_COLORS,SRCCOPY);//再将小图像画在内寸上下文中

::StretchBlt(dc.m_hDC,0,0,bih.biWidth,bih.biHeight,_

MemDc.m_hDC,0,0,bih.biWidth,bih.biHeight,SRCCOPY);//将结果显示在屏幕上。

MemDc.SelectObject(oldmap);

deletepData1;

deletem_pBMI1;

deletepData2;

图像处理范文篇7

基于图像采集卡的视频图像处理系统

计算机图像处理系统从系统层次上可分为高、中、低档三个层次,目前一般比较普及的是低档次的系统,该系统由CCD(摄像头)、图像采集卡、计算机三个部分组成,其结构简单,应用方便,效果也比较不错,得到的图像较清晰。目前网上基于VC开发经验的文章不少,可是关于如何在VC开发平台上使用图像采集卡的文章确没发现,笔者针对在科研开发中积累的使用图像采集卡经验,介绍如何自己是如何将采集卡集成到图像开发系统中,希望能够给目前正需要利用图像采集卡开发自己的图像处理系统的朋友有所帮助。

使用的摄像机采用台湾BENTECHINDUSTRIAL有限公司生产的CV-155L黑白摄像机。该摄像机分辨率为752x582。图象采集卡我们采用北京中科院科技嘉公司开发的基于PCI总线的CA-MPE1000黑白图象采集卡。使用图像采集卡分三步,首先安装采集卡的驱动程序,并将虚拟驱动文件VxD.vxd拷贝到Windows的SYSTEM目录下;这时候就可以进入开发状态了,进入VC开发平台,生成新的项目,由于生产厂家为图像采集卡提供了以mpew32.dll、mpew32.lib命名的库文件,库中提供了初始硬件、采集图像等函数,为使用这些函数,在新项目上连接该动态库;最后一步就是采集图像并显示处理了,这一步要设置系统调色板,因为采集卡提供的是裸图形式,既纯图像数据,没有图像的规格和调色板信息,这些需要开发者自己规定实现,下面是实现的部分代码:

CTestView::CTestView()

{

W32_Init_MPE1000();//初始化采集卡

W32_Modify_Contrast(50);//下面的函数是为了对采集卡进行预设置

W32_Modify_Brightness(45);//设置亮度

W32_Set_HP_Value(945);//设置水平采集点数

wCurrent_Frame=1;//当前帧为1,获取的图像就是从这帧取得的

//设置采集信号源,仅对MPE1000有效

W32_Set_Input_Source(1);

W32_CACardParam(AD_SETHPFREQ,hpGrabFreq);

W32_Set_PAL_Range(1250,1024);//设置水平采集范围

W32_Set_VGA_Mode(1);

wGrabWinX1=0;//采集窗口的左上角的坐标

wGrabWinY1=0;

firstTime=TRUE;

bGrabMode=FRAME;

bZipMode=ZIPPLE;

/

lpDib=NULL;//存放获取的图像数据

}

CTestView::~CTestView()

{

W32_Close_MPE1000();//关闭采集卡

}

////显示采集的图象,双击鼠标采集停止

voidCTestView::OnGraboneframe()

{

//TODO:Addyourcommandhandlercodehere

wCurrent_Frame=1;

//设置采集目标为内存

W32_CACardParam(AD_SETGRABDEST,CA_GRABMEM);

//启动采集

if(lpDib!=NULL)

{

GlobalUnlock(hglbDIB);

GlobalFree(hglbDIB);

}

//分配内存

hglbDIB=GlobalAlloc(GHND,(DWORD)wImgWidth*(DWORD)wImgHeight);

lpDib=(BYTE*)GlobalLock(hglbDIB);

hdc=GetDC()->GetSafeHdc();

if(lpDib!=NULL)

{

cxDib=wImgWidth;

cyDib=wImgHeight;

SetLogicPal(hdc,cxDib,cyDib,8);

SetStretchBltMode(hdc,COLORONCOLOR);

bGrabMark=TRUE;

while(bGrabMark==TRUE)

{

if(msg.message==WM_LBUTTONDBLCLK)

bGrabMark=FALSE;

W32_ReadXMS2Buf(wCurrent_Frame,lpDib);

SetDIBitsToDevice(hdc,0,0,cxDib,cyDib,0,0,

0,cyDib,(LPSTR)lpDib,

bmi,

DIB_RGB_COLORS);

}

//停止采集

W32_CAStopCapture();

::ReleaseDC(GetSafeHwnd(),hdc);

return;

}

////将下面这个函数添加在视图类的CTestView::OnSize()函数中,就可以对系统的调色板进行设置。

voidWINAPIInitLogicPal(HDChdc,shortwidth,shortheight,WORDbitCount)

{

intj,i;

shortcxDib,cyDib;

LOGPALETTE*pLogPal;

j=256

if((pLogPal=(LOGPALETTE*)malloc(sizeof(LOGPALETTE)+(j*sizeof(PALETTEENTRY))))==NULL)

return;

pLogPal->palVersion=0x300;

pLogPal->palNumEntries=j;

for(i=0;ipLogPal->palPalEntry[i].peRed=i;

pLogPal->palPalEntry[i].peGreen=i;

pLogPal->palPalEntry[i].peBlue=i;

pLogPal->palPalEntry[i].peFlags=0;

}

hPal=::CreatePalette(pLogPal);

deletepLogPal;

::SelectPalette(hdc,hPal,0);

::RealizePalette(hdc);

cxDib=width;cyDib=height;

if((bmi=(BITMAPINFO*)malloc(sizeof(BITMAPINFOHEADER)+j*sizeof(RGBQUAD)))==NULL)

return;

//bmi为全局变量,用于显示图像时用

bmi->bmiHeader.biSize=40;

bmi->bmiHeader.biWidth=cxDib;

bmi->bmiHeader.biHeight=cyDib;

bmi->bmiHeader.biPlanes=1;

bmi->bmiHeader.biBitCount=bitCount;

bmi->bmiHeader.biCompression=0;

bmi->bmiHeader.biSizeImage=0;

bmi->bmiHeader.biXPelsPerMeter=0;

bmi->bmiHeader.biYPelsPerMeter=0;

bmi->bmiHeader.biClrUsed=0;

bmi->bmiHeader.biClrImportant=0;

for(i=0;ibmi->bmiColors[i].rgbBlue=i;

bmi->bmiColors[i].rgbGreen=i;

bmi->bmiColors[i].rgbRed=i;

bmi->bmiColors[i].rgbReserved=0;

}

}

视频"画中画"技术

"画中画"这个概念类似与彩色电视机"画中画",就是在一幅大的图像内显示另外一幅内容不同的小的图像,小图像的尺寸大小一般地说为大图像尺寸的1/4或1/9,显示位置在大图像的右上角。这种技术不仅在电视技术中,在可视电话系统也可以发现这种技术的身影,它们都是依靠硬件来实现的,但是如何在VC开发平台上用编程语言来将该功能添加到自己开发的视频监控软件,为使用者提供更大的信息量呢?也许读者最容易想到的是首先显示大图像,然后再在一个固定位置画第二幅小图像,这种技术技术如果对于静止图像当然没有问题,但是对于视频流,由于每一秒钟需要画25幀,即25幅图像,这样一来计算机需要不停的画不停的擦除,会给用户以闪烁的感觉,如何解决这个问题呢?有的参考书上将大小图像分快显示,这种方法要将待显示的图像数据与显示位置的关系对应起来,容易出错不说,而且麻烦,且速度慢,为此,我对该方法进行了改进,得到了满意的效果。实现的代码如下:

voidpictureinpicture()

{

………………………..

CBitmapbitmap,*oldmap;

pData1=(BYTE*)newchar[biWidth*biHeight*3];//biWidth和biHeight为视频采集卡获取//的图像尺寸。

Read(pData1,bih.biWidth*bih.biHeight*3);//该函数从采集卡中获取数据

CClientDCdc(this);

m_pBMI1=newBITMAPINFO;//自定义的BMP文件信息结构,用于后面的图像显示

m_pBMI1->bmiHeader.biBitCount=24;

m_pBMI1->bmiHeader.biClrImportant=0;

m_pBMI1->bmiHeader.biClrUsed=0;

m_pBMI1->bmiHeader.biCompression=0;

m_pBMI1->bmiHeader.biHeight=biHeight;

m_pBMI1->bmiHeader.biPlanes=1;

m_pBMI1->bmiHeader.biSize=40;

m_pBMI1->bmiHeader.biSizeImage=WIDTHBYTES(biWidth*8)*biHeight*3;

m_pBMI1->bmiHeader.biWidth=biWidth;

m_pBMI1->bmiHeader.biXPelsPerMeter=0;

m_pBMI1->bmiHeader.biYPelsPerMeter=0;

////////////////////////////////////////////////////////////////////////

pData2=(BYTE*)newchar[biWidth1*biHeight1*3];//申请存放小图像的缓冲区

Read(pData2,biWidth1*biHeight1*3);////向该缓冲区读数据

m_pBMI2=newBITMAPINFO;

m_pBMI2->bmiHeader.biBitCount=24;

m_pBMI2->bmiHeader.biClrImportant=0;

m_pBMI2->bmiHeader.biClrUsed=0;

m_pBMI2->bmiHeader.biCompression=0;

m_pBMI2->bmiHeader.biHeight=biHeight1;

m_pBMI2->bmiHeader.biPlanes=1;

m_pBMI2->bmiHeader.biSize=40;

m_pBMI2->bmiHeader.biSizeImage=WIDTHBYTES(biWidth1*8)*biHeight1*3;

m_pBMI2->bmiHeader.biWidth=biWidth1;

m_pBMI2->bmiHeader.biXPelsPerMeter=0;

m_pBMI2->bmiHeader.biYPelsPerMeter=0;

//下面实现画中画的显示

CDCMemDc;

MemDc.CreateCompatibleDC(&dc);

bitmap.CreateCompatibleBitmap(&dc,biWidth,biHeight);

oldmap=MemDc.SelectObject(&bitmap);

::StretchDIBits(MemDc.m_hDC,0,0,biWidth,biHeight,0,0,—biWidth,biHeight,pData1,m_pBMI1,DIB_RGB_COLORS,SRCCOPY);//首先将大图像画在内寸上下文中

::StretchDIBits(MemDc.m_hDC,20,20,biWidth1,biHeight1,_

0,0,biWidth1,biHeight1,pData2,m_pBMI2,DIB_RGB_COLORS,SRCCOPY);//再将小图像画在内寸上下文中

::StretchBlt(dc.m_hDC,0,0,bih.biWidth,bih.biHeight,_

MemDc.m_hDC,0,0,bih.biWidth,bih.biHeight,SRCCOPY);//将结果显示在屏幕上。

MemDc.SelectObject(oldmap);

deletepData1;

deletem_pBMI1;

图像处理范文篇8

关键词:计算机;图形系统;图形图像处理技术

1计算机图形系统的组成和功能

计算机图形系统主要的构成部分包括计算机等硬件设施和相应的图形图像软件。其中的硬件设施包括图形输入、输出设备和图形处理设备,而图形处理设备是整个硬件设备的中心部分,它的主要功能就是存储和处理图形,也可以对复杂的函数计算进行相关的处理。在此基础上,可以降低系统CPU的负担,从而提升图形系统中的显示速度和质量。在图形系统中,主要的输入设备是键盘和鼠标,通过对键盘和鼠标的操作来执行各种图形绘制的命令。特别是在CAD设计软件中,这两种是最为关键的。随着当前科学技术的发展,又发明了空间球、数据手套、光笔和触摸屏等硬件设备。而图形系统中的硬件图形输出设备主要包括显示系统、绘图系统等。显示系统主要用于快速生成和处理图形,而绘图系统主要是用来永久保存图形,如显示器、绘图仪和打印机等。如今,随着计算机技术的发展,计算机图形系统在计算机和工程制造等领域都发挥着至关重要的作用。计算机图形系统的功能包括计算功能、信息储存功能、信息输入和输出功能与对话功能等。首先,计算功能。利用计算功能可以对图形设计和处理中心的相关运算进行分析和汇总,以保证绘图的准确性,如对图形坐标进行转换或者元素合成等。其次,信息存储功能。通过计算机图形系统存储信息,实现众多数据参数和指令的输入,然后通过相关的输出设备输出图形信息。最后,对话功能。利用对话功能,可以将显示设备或者人机交换装置中的信息进行人机交换,从而完成计算机操作。

2图形图像处理技术的基本概念

图形图像处理技术主要是利用计算机技术把数学描述中的几何数据和几何模型等进行合理的修改、转换、存储和完善。它包含的处理技术包括几何变换、图像数字化、建模造型设计、隐线与隐面的消除和多种色彩设计等。这些技术需要配备相对专业的辅助计算机软件来完成,这些软件中包括CAD设计软件、CAM制造软件和CAJ辅助教育软件等。与此同时,在图形图像处理技术使用中,还会利用到计算机艺术设计、模拟、动画等技术加以配合。

3计算机图形与图像技术的区别和联系

计算机图形与图像技术是计算机应用中的重要组成部分,两者既相互独立,又相辅相成。两者存在很大的区别。首先,计算机图形和图像处理技术的数据信息的来源不同。图像技术中的信息大部分都是来自客观环境,而图形信息都是来自于人的主观世界。其次,两者在处理方式上有所不同。在处理图像时,大部分使用主观识别方法,通过信息和识别图像的方式进行修订。而处理图形中,主要的处理方式是利用图形裁剪和曲线拟合等办法来完成。再次,两者的用途不同。图像处理技术大部分都是应用在网页、视频和设计开发领域中,而图形处理技术一般都在CAD、计算机模型和动画模拟等相关领域中发挥作用。两者虽然存在很多方面的差异,但是密不可分,只有将两者进行科学合理的融合,才能更好地发挥作用。

4计算机图形图像处理技术的应用

4.1在制作与设计中的应用。随着科学技术的快速发展,计算机技术的应用领域逐渐拓宽,在工业领域应用得更为广泛。而CAD软件成为工业发展中最具代表性的计算机图形图像处理软件,并发挥了非常重要的作用。此软件不仅被应用到汽车与车床生产中,同时还在土建工程项目中发挥了关键的作用,特别是在工程建筑设计与仿真设计中,由于工作量很大,如果只利用人工来完成整体的设计,会大大延长工作的时间,也会使企业的成本增加。但是,在应用CAD软件以后,这些问题就得以解决。同时,CAD软件可以立体表现所要描述的事物,从点到面进行描述,最后以体的形式加以表现,使图形的整体清晰显现出来。因此,CAD软件的使用,可以有效降低企业的成本,节省工作时间,也降低工作的难度,在行业应用中具有重要意义。4.2在可视化领域中的应用。随着计算机网络技术的快速发展,数据库的数量不断扩大,用户使用和分析处理数据库信息的难度也相应增加,不能快速从庞大的数据库中找出自己所需要的数据信息,也不能了解和掌握数据库中的信息存在规律。但是,在应用计算机图形图像处理技术以后,就可以对每种数据根据其特征进行归纳、分类,并通过各种形式呈现出来,为用户筛选数据信息提供有利条件。如在物流数据分析和处理、社会保障类数据分析中,此技术取得了很好的应用效果。4.3在动画和艺术设计中的应用。传统的计算机处理技术都只能处理静态图像,随着计算机技术的发展,图形图像处理技术得到了快速的进步,使得计算机技术逐渐向动画方向发展,为人们的设计创造提供了更加优越的条件。动画都是由多张图像拼接而成的,利用计算机图形图像技术进行处理,可以将图像表现得更加形象和真实。不仅降低了工作人员的工作负担,也更加刺激人们的感观,使人们更容易接受。当前,计算机图形图像处理技术获得了众多美术工作者的青睐,并且实现了美术设计的商业化发展。使用计算机图形图像处理技术,美术工作者可以更好进行艺术创作和设计,再配以多种绘画软件,如Photoshop和MAYA,满足美术工作者设计和创作的需要,可以更好将美术工作者大脑中的思维体现出来,使其更加真实和形象。如当前的大型游戏、动漫都是通过这些技术的共同配合而实现的。由于以上功能的存在,使得计算机图形图像处理技术获得了广泛的应用,由于其操作方便,制作效果突出,具有较高的准确性,受到很多行业领域的欢迎。4.4在用户接口中的应用。在计算机应用中,都是通过计算机系统中的用户接口来对其中多种计算机软件进行操作,将用户需求与计算机图形图像处理技术进行有机结合,构建一个良好的人机交互用户图形界面,能够使得计算机图形图像处理技术更加方便和简捷。当前所使用的手机Android系统,就是图形图像处理技术和用户接口充分融合的结晶,为人们进行设计和数据处理提供了更加方便快捷的条件。4.5在多媒体领域中的应用。计算机图形图像处理技术在多媒体中的应用较多,主要是通过计算机进行控制,对各种媒体信息进行生成、存储、操作、表现或通信等,形成了一个完成的信息集成系统,而通过计算机图形图像处理技术,对多媒体信息中的图形、图像、语音等进行处理,形成更多的多媒体图形图像信息,并实现信息的交互和集成。此技术在多媒体教学课件中应用得更加广泛,可以将死板的教学内容利用动画、视频等方式表现出来,丰富教学内容,刺激学生的视觉和听觉,激发学生学习的积极性,从而提高整体的教学效果和质量。

5结语

总而言之,随着科学技术的快速发展,计算机图形与图像图像处理技术也在不断完善和成熟,并且被广泛应用到了人们的日常生活和工作中,在各个领域发挥着关键的作用。计算机图形图像处理技术的应用,使得图像的视觉效果更加清晰、立体和完整,有利于发挥人类的创造意识和设计能力,也为社会各个行业的发展提供了便利条件,节约了图形图像处理成本和时间,提高了企业市场竞争力,使得企业获得更多的社会效益和经济效益。

作者:张宏 单位:福建农业职业技术学院

参考文献

[1]柳海兰.浅谈计算机图形学的发展及应用[J].电脑知识与技术,2012(5):66-98.

[2]慕乾华.计算机图形学在实践中的应用[J].价值工程,2014(2):33-45.

[3]和晓娟.计算机图形图像处理技术的探讨[J].信息与电脑:理论版,2013(11):164-165.

图像处理范文篇9

基于图像采集卡的视频图像处理系统

计算机图像处理系统从系统层次上可分为高、中、低档三个层次,目前一般比较普及的是低档次的系统,该系统由CCD(摄像头)、图像采集卡、计算机三个部分组成,其结构简单,应用方便,效果也比较不错,得到的图像较清晰。目前网上基于VC开发经验的文章不少,可是关于如何在VC开发平台上使用图像采集卡的文章确没发现,笔者针对在科研开发中积累的使用图像采集卡经验,介绍如何自己是如何将采集卡集成到图像开发系统中,希望能够给目前正需要利用图像采集卡开发自己的图像处理系统的朋友有所帮助。

使用的摄像机采用台湾BENTECHINDUSTRIAL有限公司生产的CV-155L黑白摄像机。该摄像机分辨率为752x582。图象采集卡我们采用北京中科院科技嘉公司开发的基于PCI总线的CA-MPE1000黑白图象采集卡。使用图像采集卡分三步,首先安装采集卡的驱动程序,并将虚拟驱动文件VxD.vxd拷贝到Windows的SYSTEM目录下;这时候就可以进入开发状态了,进入VC开发平台,生成新的项目,由于生产厂家为图像采集卡提供了以mpew32.dll、mpew32.lib命名的库文件,库中提供了初始硬件、采集图像等函数,为使用这些函数,在新项目上连接该动态库;最后一步就是采集图像并显示处理了,这一步要设置系统调色板,因为采集卡提供的是裸图形式,既纯图像数据,没有图像的规格和调色板信息,这些需要开发者自己规定实现,下面是实现的部分代码:

CTestView::CTestView()

{

W32_Init_MPE1000();//初始化采集卡

W32_Modify_Contrast(50);//下面的函数是为了对采集卡进行预设置

W32_Modify_Brightness(45);//设置亮度

W32_Set_HP_Value(945);//设置水平采集点数

wCurrent_Frame=1;//当前帧为1,获取的图像就是从这帧取得的

//设置采集信号源,仅对MPE1000有效

W32_Set_Input_Source(1);

W32_CACardParam(AD_SETHPFREQ,hpGrabFreq);

W32_Set_PAL_Range(1250,1024);//设置水平采集范围

W32_Set_VGA_Mode(1);

wGrabWinX1=0;//采集窗口的左上角的坐标

wGrabWinY1=0;

firstTime=TRUE;

bGrabMode=FRAME;

bZipMode=ZIPPLE;

/

lpDib=NULL;//存放获取的图像数据

}

CTestView::~CTestView()

{

W32_Close_MPE1000();//关闭采集卡

}

////显示采集的图象,双击鼠标采集停止

voidCTestView::OnGraboneframe()

{

//TODO:Addyourcommandhandlercodehere

wCurrent_Frame=1;

//设置采集目标为内存

W32_CACardParam(AD_SETGRABDEST,CA_GRABMEM);

//启动采集

if(lpDib!=NULL)

{

GlobalUnlock(hglbDIB);

GlobalFree(hglbDIB);

}

//分配内存

hglbDIB=GlobalAlloc(GHND,(DWORD)wImgWidth*(DWORD)wImgHeight);

lpDib=(BYTE*)GlobalLock(hglbDIB);

hdc=GetDC()->GetSafeHdc();

if(lpDib!=NULL)

{

cxDib=wImgWidth;

cyDib=wImgHeight;

SetLogicPal(hdc,cxDib,cyDib,8);

SetStretchBltMode(hdc,COLORONCOLOR);

bGrabMark=TRUE;

while(bGrabMark==TRUE)

{

if(msg.message==WM_LBUTTONDBLCLK)

bGrabMark=FALSE;

W32_ReadXMS2Buf(wCurrent_Frame,lpDib);

SetDIBitsToDevice(hdc,0,0,cxDib,cyDib,0,0,

0,cyDib,(LPSTR)lpDib,

bmi,

DIB_RGB_COLORS);

}

//停止采集

W32_CAStopCapture();

::ReleaseDC(GetSafeHwnd(),hdc);

return;

}

////将下面这个函数添加在视图类的CTestView::OnSize()函数中,就可以对系统的调色板进行设置。

voidWINAPIInitLogicPal(HDChdc,shortwidth,shortheight,WORDbitCount)

{

intj,i;

shortcxDib,cyDib;

LOGPALETTE*pLogPal;

j=256;

if((pLogPal=(LOGPALETTE*)malloc(sizeof(LOGPALETTE)+(j*sizeof(PALETTEENTRY))))==NULL)

return;

pLogPal->palVersion=0x300;

pLogPal->palNumEntries=j;

for(i=0;ipLogPal->palPalEntry[i].peRed=i;

pLogPal->palPalEntry[i].peGreen=i;

pLogPal->palPalEntry[i].peBlue=i;

pLogPal->palPalEntry[i].peFlags=0;

}

hPal=::CreatePalette(pLogPal);

deletepLogPal;

::SelectPalette(hdc,hPal,0);

::RealizePalette(hdc);

cxDib=width;cyDib=height;

if((bmi=(BITMAPINFO*)malloc(sizeof(BITMAPINFOHEADER)+j*sizeof(RGBQUAD)))==NULL)

return;

//bmi为全局变量,用于显示图像时用

bmi->bmiHeader.biSize=40;

bmi->bmiHeader.biWidth=cxDib;

bmi->bmiHeader.biHeight=cyDib;

bmi->bmiHeader.biPlanes=1;

bmi->bmiHeader.biBitCount=bitCount;

bmi->bmiHeader.biCompression=0;

bmi->bmiHeader.biSizeImage=0;

bmi->bmiHeader.biXPelsPerMeter=0;

bmi->bmiHeader.biYPelsPerMeter=0;

bmi->bmiHeader.biClrUsed=0;

bmi->bmiHeader.biClrImportant=0;

for(i=0;ibmi->bmiColors[i].rgbBlue=i;

bmi->bmiColors[i].rgbGreen=i;

bmi->bmiColors[i].rgbRed=i;

bmi->bmiColors[i].rgbReserved=0;

}

}

视频"画中画"技术

"画中画"这个概念类似与彩色电视机"画中画",就是在一幅大的图像内显示另外一幅内容不同的小的图像,小图像的尺寸大小一般地说为大图像尺寸的1/4或1/9,显示位置在大图像的右上角。这种技术不仅在电视技术中,在可视电话系统也可以发现这种技术的身影,它们都是依靠硬件来实现的,但是如何在VC开发平台上用编程语言来将该功能添加到自己开发的视频监控软件,为使用者提供更大的信息量呢?也许读者最容易想到的是首先显示大图像,然后再在一个固定位置画第二幅小图像,这种技术技术如果对于静止图像当然没有问题,但是对于视频流,由于每一秒钟需要画25幀,即25幅图像,这样一来计算机需要不停的画不停的擦除,会给用户以闪烁的感觉,如何解决这个问题呢?有的参考书上将大小图像分快显示,这种方法要将待显示的图像数据与显示位置的关系对应起来,容易出错不说,而且麻烦,且速度慢,为此,我对该方法进行了改进,得到了满意的效果。实现的代码如下:

voidpictureinpicture()

{

………………………..

CBitmapbitmap,*oldmap;

pData1=(BYTE*)newchar[biWidth*biHeight*3];//biWidth和biHeight为视频采集卡获取//的图像尺寸。

Read(pData1,bih.biWidth*bih.biHeight*3);//该函数从采集卡中获取数据

CClientDCdc(this);

m_pBMI1=newBITMAPINFO;//自定义的BMP文件信息结构,用于后面的图像显示

m_pBMI1->bmiHeader.biBitCount=24;

m_pBMI1->bmiHeader.biClrImportant=0;

m_pBMI1->bmiHeader.biClrUsed=0;

m_pBMI1->bmiHeader.biCompression=0;

m_pBMI1->bmiHeader.biHeight=biHeight;

m_pBMI1->bmiHeader.biPlanes=1;

m_pBMI1->bmiHeader.biSize=40;

m_pBMI1->bmiHeader.biSizeImage=WIDTHBYTES(biWidth*8)*biHeight*3;

m_pBMI1->bmiHeader.biWidth=biWidth;

m_pBMI1->bmiHeader.biXPelsPerMeter=0;

m_pBMI1->bmiHeader.biYPelsPerMeter=0;

////////////////////////////////////////////////////////////////////////

pData2=(BYTE*)newchar[biWidth1*biHeight1*3];//申请存放小图像的缓冲区

Read(pData2,biWidth1*biHeight1*3);////向该缓冲区读数据

m_pBMI2=newBITMAPINFO;

m_pBMI2->bmiHeader.biBitCount=24;

m_pBMI2->bmiHeader.biClrImportant=0;

m_pBMI2->bmiHeader.biClrUsed=0;

m_pBMI2->bmiHeader.biCompression=0;

m_pBMI2->bmiHeader.biHeight=biHeight1;

m_pBMI2->bmiHeader.biPlanes=1;

m_pBMI2->bmiHeader.biSize=40;

m_pBMI2->bmiHeader.biSizeImage=WIDTHBYTES(biWidth1*8)*biHeight1*3;

m_pBMI2->bmiHeader.biWidth=biWidth1;

m_pBMI2->bmiHeader.biXPelsPerMeter=0;

m_pBMI2->bmiHeader.biYPelsPerMeter=0;

//下面实现画中画的显示

CDCMemDc;

MemDc.CreateCompatibleDC(&dc);

bitmap.CreateCompatibleBitmap(&dc,biWidth,biHeight);

oldmap=MemDc.SelectObject(&bitmap);

::StretchDIBits(MemDc.m_hDC,0,0,biWidth,biHeight,0,0,—biWidth,biHeight,pData1,m_pBMI1,DIB_RGB_COLORS,SRCCOPY);//首先将大图像画在内寸上下文中

::StretchDIBits(MemDc.m_hDC,20,20,biWidth1,biHeight1,_

0,0,biWidth1,biHeight1,pData2,m_pBMI2,DIB_RGB_COLORS,SRCCOPY);//再将小图像画在内寸上下文中

::StretchBlt(dc.m_hDC,0,0,bih.biWidth,bih.biHeight,_

MemDc.m_hDC,0,0,bih.biWidth,bih.biHeight,SRCCOPY);//将结果显示在屏幕上。

MemDc.SelectObject(oldmap);

deletepData1;

deletem_pBMI1;

deletepData2;

图像处理范文篇10

一、正确定位课程的教学目标

该课程的主要目标是使学生熟练运用Ps软件中的各项工具和命令,进行效果图的处理。学生不仅要学会知识、掌握知识,更要灵活地运用知识。教师不只是单纯地讲解软件的用法,而是要把培养学生的设计能力放到教学的重要位置,引导学生运用相关的理论知识进行分析,提出不同的设计方案与实现方法,使学生在掌握基础知识的同时,不断提高实际操作能力和解决问题的能力。

二、上好第一堂课,激发学生的学习兴趣

兴趣是学习的动力,能让学生感受学习的快乐。如何将学生注意力吸引到学习兴趣上来,上好第一堂课是关键。第一节效果课的好坏决定着学生对这门课兴趣产生的深浅程度。有人认为,第一节课基本都是讲前言与概述,再怎么提高都是理论知识。但笔者认为,第一节课除了要介绍软件的发展历史与必要的知识结构之外,更重要的是要向学生介绍PS软件的强大功能,激发学生的学习兴趣。在上第一堂课时,首先向学生展示用Ps制作的精美图片,巧妙地把学生引入电脑艺术的殿堂,让学生亲自感受、探寻其中的奥妙,激发他们的求知欲。同时,向他们展示以往学生的作品。在欣赏这些图片时,学生不停地发出赞叹声,抓住时机告诉学生:“这是以往学生的优秀成果,大家不必羡慕。在学完这门课程后,你们会制作出更优秀的作品。”这样,使学生树立信心,带着极大的兴趣和期待投入到Ps课程的学习中。

三、贴近实际。运用案例教学法

案例教学法也叫实例教学法。案例教学是为了实现特定的教学目标,以合适的案例为媒介,引导学生参与对案例的分析和讨论,使学生在实际情境中积极思考、主动探索,培养其分析和解决案例所含平面设计原理的一种教学方式。在案例教学中,教师“教”的方式和学生“学”的方式,都会发生很大的变化。与其他教学法不同,案例教学是以案例为研究对象,以问题为导向,以探究为基础的课堂教学方法。案例教学所具有的特征都将有助于职校学生增加对平面设计学习的兴趣,培养学生批判性思维和创造性思维的能力。

1.案例设计与精选

设计要遵循易懂性、概括性、生动性,一切以学生为主,一切为满足教学需求。此外,还要借鉴专业书籍,参考作者的思路,补充自身的不足。在选材方面,一定要选取具有代表性的作品案例,最好案例涉及PS的一般知识,在展示的时候既能激发学生兴趣,又能向学生灌输一定的知识。

2.案例的晨示与分析

老师利用多媒体进行教学时,展示案例应该仔细分析案例的可取之处和不足之处,用中肯的眼光审视作品,用学生能理解的语言评价作品,并引导学生自己分析。学生如果自己分析出并能看出所完成的例子采用了哪些工具,那么,在操作的时候就能提高做图的速度,还能得出做图的思路。长此以往,就能帮助学生养成良好的习惯,对于软件学习也起到很大的促进作用,便于老师了解学生对知识的掌握程度,有利于学生提高自己的表达能力。

3.上升刭理论高度。进行适当讲解

针对案例,将案例制作过程中涉及的工具的属性、运用方式进行针对性的讲解。这样,既利用了现有的教学资源,又能激发学生的学习热情。

4.模仿练习

充分利用现代电教手段,进行案例教学。所谓“天下文章一大抄”,强调的是模仿作用模仿是促使学习者快速熟悉某项技能的有效方法,在PS教学中是必不可少的。笔者认为,可以展示一些精品案例,教育学生使用正确的操作方法,模仿制作个性化的作品,力图从模仿中巩固知识,从模仿中学会创新。

5.举一反三

教学过程中,在实例的讲解上,让学生举一反三地应用。举出一个实例的同时,最好随带另外一个相仿的实例。这样,学生在做完基本的操作后,能够举一反三地应用,从而将知识点达到更好的概括和理解。通过这样的方式,学生的实践和变通能力得到了提高。四、实施案例化教学,项目化实践教学中,选取的实例都是在行业的实际工作案例的基础上改编来的。学生在练习实例的同时,就掌握了相应行业的职业规范,在若干项目的设计制作中培养了实际工作中所必备的创新意识、艺术与技术相结合的各种技能和优良品质。

1.模仿经典

利用图书馆、网络收集一些优秀的平面设计作品、图文资料,通过分析这些作品的特点和创作手法,领会平面设计的风格和特点,提高学生的分析能力和鉴赏能力,并从模仿性的练习开始尝试创作,同时,进一步掌握PS的使用技能。

2.加强创意练习

结合社会热点新闻、校园活动等主题,由任课教师拟定一组选题通过实习指导书下达,形式可包括宣传海报、纪念册、贺卡、广告招贴等,进行创意练习,以训练学生的设计能力、构图能力、色彩应用能力和创新能力,从而培养学生应用PS的综合能力。五、强化学生的学习方法

1.循序渐进学习法

初学者可以采用循序渐进学习法,即按照常规方法,夯实基础。对于各种工具,要能运用自如,这是深入学习高级PS~I3识的基础。

2.练习机仿

在学习期间,多动手练习,通过练习不仅能够熟悉并掌握软件的功能及命令的应用方法,还能够掌握许多操作技巧。

3.采用积累衰现法

所谓积累表现法,就是经过观察欣赏大量优秀作品来提高自己的审美能力,并从中总结出适合自己的经验、方法。

4.实践并创意

实践出真知,只能纸上谈兵必然打不好仗,必须进行大量的实践创作,才能形成自己的创作风格。