




已阅读5页,还剩55页未读, 继续免费阅读
(光学专业论文)基于ccd的光学图像采集处理研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 本文主要对基于c c d 的光学图像采集处理进行研究。首先应用l u m e n e r a 公 司提供的a p i 编程接口实现对c c d 硬件的通用控制,包括硬件参数修改、图像数 据获取等;其次针对光学图像处理领域的研究工作,利用v c 和m a t l a b 的混合 编程方式,实现了声光器件衍射效率测试软件系统和波前检测软件系统;最后设 计开发了功能较完备的a o t f 红外成像光谱系统的整个软件系统。 首先,在c c d 基本控制模块方面,解读了l u m e m e r au s bc a m e r aa p i 的功能 函数,基于硬件控制层、用户交互层和程序控制层进行设计,将l u m e m e r au s b c a m e r aa p i 封装为c c c d c t r l 类及m y c c d c t r l 控件;该类和控件在v c 、v b 和 l a b v i e w 中均得到良好调用。 其次,以基本控制模块为基础,在声光器件衍射效率测试软件系统和波前检 测软件系统中进行了初步的应用;所建立的两套系统基于v c 和m a t l a b 混合编 程,在调用基本控制模块完成图像采集之后,调用m a t l a b 编写的算法对相应图 像完成分析和计算。两套软件均满足系统要求,得到了有效的测试结果。 最后,对a o t f 红外成像光谱测试工作进行了较系统的研究,设计并实现了 一套功能完整的控制和数据采集处理系统。系统中对8 位和1 6 位图像的存储和显 示进行了设计和实现,建立了一套与光谱测试相适应的多帧图像的d f f 图像存储 格式,并用强度分层方法实现了灰度和三种伪彩色化显示方案;系统分析完成了 a o t f 驱动器和同步信号解析转发器的通信控制,实现了a o t f 的频率一一波长 控制和图像的逐波长自动采集,并对环境光完成了消除;最后完成了成像图像中 指定像素及其附近像素的光强提取,对多个样品获得了光强和吸收光谱数据曲线。 最后,对本文的工作进行了总结,提出了存在的问题和进一步改进的方向。 关键词:c c d ,通用图像采集模块,图像处理,混合编程,成像光谱测试 a b s t r a c t a b s t r a c t i nt h i sp a p e r , o p t i c a li m a g ea c q u i s i t i o na n d p r o c e s s i n gb a s e do nc c d w a ss t u d i e d a tf i r s tt h ea p p l i c a t i o np r o g r a m m i n gi n t e r f a c e ( h p i ) p r o v i d e db yl u m e n e r ai n c w a s a p p l i e d t oc o n t r o lt h ec c dh a r d w a r e ,i n c l u d i n gt h e c h a n g i n go ft h eh a r d w a r e p a r a m e t e r sa n dt h ea c q u i s i t i o no ft h ei m a g ee t c t h e nt h ef i e l do fo p t i c a li m a g e p r o c e s s i n gr e s e a r c hw a sf o c u s e do n , t h ed i f f r a c t i o ne f f i c i e n c yi nt h el i g h to fd e v i c e t e s t i n gs y s t e ma n dw a v ef r o n tt e s t i n gs y s t e mw e r er e a l i z e du s i n gt h em i x e dv ca n d m a t l a bp r o g r a m m i n gt e c h n o l o g y ,f i n a l l yai n f r a r e di m a g i n g s p e c t r o m e t e rt e s t s y s t e mw h i c hf u n c t i o n sw a sr e l a t i v e l yc o m p l e t ew a sd e s i g n e da n dd e v e l o p e d f i r s t l y ,i nt h eb a s i cc o n t r o lm o d e ld i r e c t i o n ,t h ep r o g r a m m i n gf u n c t i o n so f l u m e m e r au s bc a m e r aa p iw a se x p l a i n e d ,b a s e do nt h el e v e lo fh a r d w a r ec o n t r o l , t h eu s e ri n t e r a c tl e v e la n dt h ep r o c e s sc o n t r o ll e v e l ,t h ea p i sw e r ep a c k a g e dac c c d c r l c l a s sa n daa c t i v e xc o n t r 0 1 t h e yw e r ea p p l i e ds u c c e s s f u l l yi nv c ,v ba n d l a b v i e w s e c o n d l y ,t h eb a s i cc o n t r o lm o d d ew a sp r e l i m i n a r i l ya p p l i e di nt h ed i f f r a c t i o n e f f i c i e n c yi nt h el i g h to fd e v i c et e s t i n gs y s t e ma n dw a v e f r o n tt e s t i n gs y s t e m ,t h i st w o s y s t e m sw a ss e tu pb a s e do nt h em i x e dv ca n dm a t l a bp r o g r a m m i n gt e c h n o l o g y a f t e ra c q u i r i n gt h ei m a g e su s i n gt h eb a s i cc o n t r o lm o d e l ,t h em e t h o d sp r o g r a m m e db y m a t l a bc a l lb ec a l l e dt oa n a l y s i sa n dc o m p u t et h e m f i n a l l y ,m o r es y s t e m a t i cs t u d yo ni n f r a r e di m a g i n gs p e c t r o m e t e rt e s tw a sd o n ea n d a l s oar e l a t i v e l yc o m p l e t es o f t w a r es y s t e mw a se s t a b l i s h e d s t o r a g ea n dd i s p l a yo ft h e 8 - b i ta n d16 b i ti m a g ew a sd e s i g n e da n di m p l e m e n t e di nt h i ss y s t e ma n das e to fd f f i m a g es t o r a g ef o r m a tw a se s t a b l i s h e d , w h i c hf i tf o rs p e c t r o m e t e rt e s t ,a n dt h r e ek i n d so f p s e u d o - c o l o rd i s p l a yp l a nw e r ed e s i g n e d 、 五t l lt h es t r e n g t ho fs t r a t i f i c a t i o n t h i ss y s t e m c a nc o n t r o lt h ea o t fa n dt h es y n c h r o n o u ss i g n a la n a l y s i st oc o m m u n i c a t i o nw i t ht h e c o m p u t e ra n da o t ff r e q u e n c y - w a v e l e n g t hc o n t r o la n da u t o m a t i ci m a g ec a p t u r ew a s i m p l e m e n t e d ,a n da m b i e n tl i g h tw a se l i m i n a t e d a tt h ee n d ,l i g h ti n t e n s i t yo fs p e c i f i e d p i x e la n dn e a r b yp i x e l sc a nb ee x t r a c t e d ;l i g h ti n t e n s i t ya n da b s o r p t i o ns p e c t r u mo f m u l t i p l es a m p l e sc u r v ea r ea c q u i r e d i nt h ee n do ft h i sd i s s e r t a t i o n ,c o n c l u d i n gt h et o t a lc o n t e n t s ,p o i n t i n go u tt h e c u r r e n tp r o b l e m st ob er e s o l v e d k e yw o r d s :c c d ,g e n e r a li m a g ea c q u i s i t i o nm o d u l e ,i m a g ep r o c e s s i n g ,m i x e d p r o g r a m m i n g ,i m a g i n gs p e c t r o m e t e rt e s t i l 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研 究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得电子科技大学或其它教育机构 的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示谢意。 签名:坠查鱼日期:2 。厶年 月3 日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘, 允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全 部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描 等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 签名:锝,誊移导师签名: 日期:7 , o 0 年r 月;日 第一章绪论 1 1 论文研究的背景 第一章绪论 c c d ( c h a r g ec o u p l e dd e v i c e s ,即电荷耦合器件) 是一种半导体装置,它能 够把光学影像转化为数字信号【l 2 1 ,是1 9 6 9 年由美国的贝尔研究室所开发出来的。 它一问世,就显示出灵敏度高、光谱响应宽、动态范围大、容易操作、维护方便、 成本低廉、易于推广等一系列优点,受到人们的普遍重视,发展异常迅速,至今 已在国防、公安、工业、医学、生物、天文、地质、宇航等技术和科学领域得到 广泛应用。进入8 0 年代,经过不断的研究终于克服了c c d 影像传感器的原有缺 陷,于8 0 年代后半期制造出高分辨率、高品质的c c d ,到了9 0 年代制造出百万 像素的高分辨率c c d t 3 1 。 进入9 0 年代中期后,c c d 技术得到了迅猛发展,同时c c d 的单位面积也越 来越小。为了在c c d 面积减小的同时提高图像的成像质量,s o n y 与1 9 8 9 年开 发出了s u p e rh a dc c d ,这种新的感光元件是在c c d 面积减小的情况下,依靠 c c d 组件内部放大器的放大倍率提升成像质量;以后相继出现了n e w s 删c t u r ec c d 、e x v i e wh a dc c d 、四色滤光技术( 专为s o n yf 8 2 8 所应 用) 等。而富士数码相机则研发了超级c c d ( s u p e rc c d ) 、s u p e rc c ds r 。美国 普林斯顿仪器( p r i n c e t o ni n s t r u m e n t s ) 公司生产的科学级c c d 相机更是特点显著, 具有超高分辨率( 2 0 4 8 2 0 4 8 ) 、高动态范围( 1 6b i t ) 、永久真空保障、超低温热电 制冷( 9 0 ) 、液氮制冷( 1 2 0 ) ,极低的暗电流、低读出噪声,高量子效率, 可通过软件选择读出速度及增益等特点m j 。 作为一种微型图像传感器【6 】,随着c c d 性能( 像素点数、像素大小、光敏度 等) 的不断提高,c c d 被逐渐应用到图像采集的各个领域。在信息光学中开始大 量采用c c d 替代光学胶片和全息干板作为光学记录介质,构建实时的信息光学处 理系统,如数字全息、干涉条纹处理等1 7 1o j ;而在多种光学测量系统中使用c c d 则更为普遍,如光束质量分析、图像采集分析、面形测量、成像光谱测试等等。 1 2 国内外的研究现状 c c d 从结构上讲,可分为线阵和面阵c c d 两种。在光信息科学的研究中,多 电子科技大学硕士学位论文 使用面阵c c d ,以获取实时的二维图像【7 塔j 。c c d 从颜色上讲,可分为灰度和彩 色c c d 两种,但科学级的c c d 都是灰度的。 c c d 作为一种常用的图像采集器件,大多配备了相应的控制软件,但是其配 套的软件并不能适应各个研究领域的应用,特别在数据采集自动化和用途专一化 等许多方面不能满足要求。如l u m e n e r a 公司提供的u s b c c d 科学级相机的控制 软件,提供了直接采集图像的丰富功能,可以对c c d 的各种参数的控制;但是对 于数据的存储只提供了目前常用的数据格式,对科学研究用的特殊数据格式是不 能支持的,也没有完整的控制采集模块以利于多种编程软件的直接调用。因此实 际的应用系统均要求为专门的应用开发专门的控制和处理软件。 本文在利用厂商提供应用编程接口a p i 函数的基础上,设计开发了一个适用 于相关专门研究课题的c c d 通用控件m y c c d c t l 。该控件集c c d 各种系统参数的 调节设置、图像采集控制、数据存储和所得图像的预处理功能于一体,可以方便 地在多种设计软件中直接调用。 在此基础上,我们结合m a t l a b 算法,将通用控件分别应用于声光器件衍射 效率测试系统和波前测试系统,测试结果表明设计的软件处理效果良好。 最后,本文针对可见光近红外成像光谱测试系统进行了研究和实现,该系统 完善地体现了c c d 实时性好和灵敏度度高的特点,可以在3 5 分钟内完成5 0 0 1 0 0 0 n m 范围内间隔2 n m 的图像光谱采集。该系统的硬件核心为声光可调谐滤波 器( a c o u s t o o p t i ct u n a b l ef i l t e r ,简称a o t f ) ,这是当前最前沿第五代光谱分析 的滤光器件。在过去的5 0 多年里,近红外光谱仪经历了如下几个发展阶段: 1 ) 第一台近红外光谱仪的分光系统( 5 0 年代后期) 是滤光片分光系统,测量 样品必须预先干燥,使其水分含量小于1 5 ,然后样品经磨碎,使其粒径小于1 毫米,并装样品池。此类仪器只能在单一或少数几个波长下测定( 非连续波长) , 灵活性差,而且波长稳定性、重现性差,如样品的基体发生变化,往往会引起较 大的测量误差。“滤光片”被称为第一代分光技术。 2 ) 7 0 年代中期至8 0 年代,光栅扫描分光系统开始应用,但存在以下不足: 扫描速度慢、波长重现性差,内部移动部件多。此类仪器最大的弱点是光栅或反 光镜的机械轴长时间连续使用容易磨损,影响波长的精度和重现性,不适合作为 过程分析仪器使用。“光栅”被称为第二代分光技术。 3 ) 8 0 年代中后期至9 0 年代中前期,应用“傅立叶变换”分光系统,但是由 于干涉计中动镜的存在,仪器的在线可靠性受到限制,特别是对仪器的使用和放 置环境有严格要求,比如室温、湿度、杂散光、震动等。“傅立叶变换被称为 2 第一章绪论 第三代分光技术。 4 ) 9 0 年代中期,开始有了应用二极管阵列技术的近红外光谱仪,这种近红外 光谱仪采用固定光栅扫描方式,仪器的波长范围和分辨率有限,波长通常不超过 1 7 5 0 n m 。由于该波段检测到的主要是样品的三级和四级倍频,样品的摩尔吸收系 数较低,因而需要的光程往往较长。“二极管阵列”被称为第四代分光技术。 5 ) 9 0 年代末,来自航天技术的“声光可调滤光器”( a o t f ) 技术的问世,被认 为是“9 0 年代近红外光谱仪最突出的进展”。a o t f 是利用超声波与特定的晶体作 用而产生分光的光电器件,与通常的单色器相比,采用声光调制,即通过超声射 频频率的变化实现光谱扫描,光学系统无移动性部件,波长切换快、重现性好, 程序化的波长控制使得这种仪器的应用具有更大的灵活性,加之全固态集成设计 产生优异的避震性能,使其近年来在工业在线和现场( 室外) 分析中得到越来越 广泛的应用i l 。 1 3 本论文的基本结构和主要内容 本论文在第二章,介绍了本系统所采用的c d d 的性能特征,并解读了 l u m e m e r au s bc a m e r aa p i 的编程原理,并使用基于面向对象的方法对l u m e r n e r a u s bc a m e r aa p 进行了封装设计。最后还在封装的基础上开发可以供其他编程环 境调用的控件模块。 第三章,在基本控制模块的基础上,建立了两个实验系统,在声光器件衍射 效率测试和波前相位检测的研究中进行了初步运用;同时研究了c + + 和m a t l a b 的混合编程,在图像采集完成之后直接调用相应的m a t l a b 处理算法对c c d 采 集的图像进行分析和计算,获得最后的实验结果。 第四章,针对使用a o t f ( a c o u s t o o p t i ct u n a b l ef i l t e r ,即声光可调谐滤光器) 的红外成像光谱测试系统进行了较系统的研究,建立了一套功能较完整的图像采 集分析处理软件系统。系统中对系列图像集成存储的方法和显示进行了改进,建 立了一套与具体需求相适应的多帧图像存储方案,并在强度分层方法的基础上实 现了多种伪彩色化显示方案;系统实现了对a o t f 和同步信号解析转发器的通信 控制,以及相应的数据分析和处理。 3 电子科技大学硕士学位论文 第二章c c d 控制与采集模块的设计与实现 2 1c c d 的基本原理 c c d 是在大规模硅集成电路工艺基础上研制而成的模拟集成电路芯片,它借 助于必要的光学系统和合适的外围驱动与处理电路,可以将景物图像通过输入面 空域上逐点的光电信号转换、存储和传输,在其输出端产生一时序视频信号,并 经末端显示器同步显示出一幅人眼可见的图像。 c c d 在摄像机、数码相机和扫描仪中应用广泛,只不过摄像机中使用的一般 是面阵c c d ,即包括x 、y 两个方向用于摄取平面图像,而扫描仪中使用的一般是 线阵c c d ,它只有x 一个方向,y 方向扫描由扫描仪的机械装置来完成f 1 2 1 。 c c d 上植入的微小光敏物质称作像素( p i x e l ) 。一块c c d 上包含的像素数越 多,其提供的画面分辨率也就越高。c c d 采集图像时和普通胶片一样,曝光时间 对图像质量影响很大。如果时间过短则不能完全曝光,如果时间过长则会过度曝 光而且影响系统的工作效率。与胶片不同的地方在于,c c d 可以实时把图像信息 数字化并存储在计算机的存储设备上。与其相关的参数就是存储每个像素的所占 存储空间的位数,位数越多质量就越好;对于做全息与光信息处理方向研究的光 学图像而言,要对此提出较高的要求。例如,高精度、大动态范围( 位数多) 、灰 度图、希望尽快的曝光时间等。此外在全息与光信息处理方向的研究中还要用到 红外c c d ,由于红外线的波长要比可见光波长更长,所以红外c c d 上每个像素( 微 小光敏物质) 的面积要大一些。 2 2 i n f i n i t y 3 性能介绍 本文研究选用的是加拿大l u m e n e r a 公司生产的i n f i n i t y 相机,其 i n f i n i t y - 3 相机如图2 1 所示,是l u m e n e r a 公司的新产品。它可以广泛的应用于 多种科学研究领域,支持硬件和软件的同步触发,其风冷功能可以满足弱光条件 下和高动态范围的需要,1 3 9 2 x1 0 4 0 分辨率具有出色的图像质量,由u s b 2 0 接 口提供未压缩的实时视频流和静止图像的捕获,无需使用采集卡,便于实验室内 多个光学系统间的硬件共享。相机同时还提供了板载内存可以作为缓存使用,有 4 第二二章c c d 控制与采集模块的设计与实现 封闭和板载两种形式:拥有配套使用的控制软件,方便进行c c d 参数的设置和图 像的直接采集。其主要性能参数如表2 - i 所示。 图2 - 1i n f i n i t y - 3c c d 相机图示 裹2 - 1 性能参数 图像传感器 s o n yl c x 2 8 52 3 接口高速u s b2 0 ( 4 8 0 m s 1 有效像素1 3 9 2 0 4 0 , 1 4 0 万像素 帧率1 3 9 2 1 0 4 0 分辨率下每秒1 5 帧图像 动态范围8 位和1 2 位模式可选择 读出噪声 8e 1 7 1 1 1 5 读出频率28 6 m i z 电源需求5 v 可工作温度0 。c 到5 0 2 3 控制与采集模块的分析、设计与实现 为了便于在相应的图像采集处理系统中对i n f i n i t y - 3c c d 进行良好的集成, 本章着重地设计并实现了它的控制与采集模块。 i n f i n t y - 3c c d 是用l u m e n e r a 提供的a p l 作为编程基础实现对相机进行驱 动和控制的,所以在系统开发之前,有必要对这些a p i 进行认真的分析和梳理, 电子科技大学硕士学位论文 同时参考与a p i 一起提供的范例代码对每个a p i 的调用特性进行了考察,并对其 可用性进行了测试。 2 3 1l u m e n e r au s bc a m e r a 删编程 l u m e n e r au s bc a m e r aa p i 是l u m e n e r a 公司提供的一系列的复杂的接口a p i 函数旧,可以用来控制任何l u m e n e r a 公司生产的c c d 相机和相机模块。可以直 接用于v i s u a lc + + ,v i s u a lb a s i c ,v i s u a lc 撑,b o d a n dc + + b u i l d e r 和所有支持c o m 接 口的编程环境。通过这些函数可以开发自定义的应用软件,以控制c c d 相机的各 种参数,显示和捕获图像数据。还有一些高级的函数,能够实现更多强大的特性, 比如把视频流保存到一个视频文件,连续的从多个c c d 相机中提取数据,以及完 全控制图像数据处理的全过程。 2 3 1 1基本功能的实现 1 ) 与c c d 相机连接和切断连接 为了实现p c 机与相机之间的通信,必须首先打开一个和它的连接而且获取一 个句柄。这个句柄在大多数其他a p i 函数中都需要做为一个输入参数。用来完成 此任务的的函数是l u c a m c a m e r a o p e n 0 。当完全完成对相机的使用后,必须使用 一个l u c a m c a m e r a c l o s e 0 数来关闭这个连接。如果有多个相机同时连接到一台 电脑上时,可以使用l u c a m e n u m c a m e r a s 0 函数去获得连接到电脑上的相机的数 目,同时可以获得这些相机的唯一序列号和相机类型,这样就可以准确的打开某 个特定的相机了。 查询相机的基本信息 此部分主要用于查询相机的版本信息、驱动信息、接口类型以及相机支持的 最大帧率。 例如要获取相机的版本信息和驱动信息,可以使用函数l u c a m q u e r y v e r s i o n 0 , 如果想知道这个相机的接口是u s b l 1 还是u s b 2 0 可以调用函数 l u c a m q u e r y e x t e m i n t e r f a c e 0 。如果想获取相机支持的最大帧率可以调用函数 l u c a m e n u m a v a i l a b l e f r a m e r a t e s 0 。 3 ) 预览视频 当相机打开以后,就可以通过调用l u c a m s t r e a m v i d e o c o n t r o l o i 蚕i 数显示出视 频的预览画面。在一些高级的应用中如果你想获取自己的显示窗口,可以传递一 6 第二章c c d 控制与采集模块的设计与实现 个自己的窗口句柄到函数中,这样预览画面就显示在自己的窗口里了。如果想暂 停或停止窗口预览画面可以通过改变控制标记参数实现。另外只有在窗口预览进 行中时才可以调用l u c a m e n u m a v a i l a b l e f r a m e r a t e s o 获取相机支持的虽大帧率。 4 1 调整视频显示的简单方法 如果想调整视频的显示参数,比如亮度、对比度等,可以通过调用函数 l u c a m d i s p l a y p r o p e r t y p a g e 0 ,这时会弹出一个对话框如图2 2 所示,在这个对话框 里,你可以调整相关显示参数。另外l u c a m d i s p l a y v i d e o f o r m a t p a g e 0 函数,弹出 的对话框可以用来调整视频的显示格式,比如分辨率和像素深度,如图2 3 所示。 图2 - 2 启动属性页功能后的软件界面 图2 - 3 肩动格式属性页的软件界面 5 1 配置视频的格式 视频的显示格式也可以通过l u c a m s e t f o r m a t ( ) i 委数柬调用,它容许调整窗口的 大小、窗口显示的位置、像素的格式,还有视频的帧率。 特别注意,在视频预览的过程中这些调整的操作是无效的,必须先停止视频 电子科技大学硕士学位论文 输出后调整。 国抓取视频数据 一旦打开了视频流的预览,我们就可以从相机中抓取数据了。这时需要提供 帧数和一个已经分配好的用来接收数据的内存区域的地址。从相机中返回的是原 始的数据。原始的数据是8 位或1 6 位的数据对应图像上的一个像素点。另外没有 必要在视频预览的过程中抓取数据,在预览关闭的时候同样可以抓出数据。用这 种方法效率会更好,同时节省c p u 的资源。 7 ) 保存图像数据到磁盘 可以使用l u c a m s a v e i m a g e o 和l u c a m s a v e l m a g e w 0 来完成图像数据保存的任 务。从相机中抓取的一帧数据可以被保存成多种图片格式,如r a wd a t a ( r a w ) 格式, 它是一种没有文件头和无压缩的文件,还有w i n d o w s 位图文件格式( b m p ) 、以及 进过压缩处理的t i f f 和j p e g 格式。需要注意的是w i n d o w s 位图文件格式和j p e g 格式只能用来保存8 位的图像,不能保存1 6 位的。如果需要使用1 6 b i t 格式,必 需使用r a wd a t a 和t i f 文件格式。 8 ) 设置和获取相机的参数 c c d 相机的参数是指诸如曝光、增益、对比度等。我们可以使用以下的三个 函数完成。首先通过l u c a m p r o p e r t y r a n g e 0 获取该相机某个参数的取值范围,然后 就可以用l u c a m s e t p r o p e r t y ( ) 去设置他们,最后可以通过l u c a m g e t p r o p e r t y ( ) 函数 去获取某个参数的当前值。注意由于相关a p i 可以支持多种相机的驱动,在使用 前需确定所用相机是否支持所操作参数的设置。 2 3 1 2 高级功能的实现 1 ) 视频回调函数 视频回调特性使我们可以在相机的每帧数据在预览窗口显示之前,执行我们 自己定义的处理函数,这样就提供了进入视频流中逐帧处理数据的机会,比如将 灰度图像伪彩色化处理后在视频预览窗口中显示彩色的画面,这对于本文设计的 成像系统是相当重要的。实现这个功能要用到两个函数,首先使用函数 l u c a m a d d s t r e a m i n g c a l l b a c k 0 注册回调函数,函数的第二参数是一个函数指针,这 时需要实现一个处理函数s t r e a m i n g c a l l b a c k 0 ,把这个函数的名称作为注册回调函 数的第二个参数。这样每次在数据到达之前就会调用处理函数来处理图像数据了; 最后可以使用l u c a m r e m o v e s t r e a m i n g c a l l b a c k 0 来取消回调。 8 第二章c c d 控制与采集模块的设计与实现 2 ) 进入相机的内存缓冲区 相机中的内存缓冲区中有1 0 2 4 字节的空间是容许用户访问的。 l u c a m p e r m a n e n t b u f f e r w r i t e 0 函数可以把我们的数据写入到相机内部的缓冲区内 存中,而且这些数据在相机断电后任然会保留。l u c a m p e r m a n e n t b u f f e r r e a d 0 函数 用来读取用户写入的数据,这个区域可以重写1 0 0 ,0 0 0 次。 2 3 2 模块设计 由于l u m e n e r au s bc a m e r a a p i 是用函数库的形式提供给我们使用的,为了建 立良好的软件结构,我们需要对这些a p i 进行封装,形成符合面向对象设计规范 的软件架构。 2 3 2 1 系统构架设计 为便于应用,我们设计系统的构架由三层构成,分别为硬件控制层、用户交 互层和应用程序层,如图2 4 所示: 图2 4 模块三层构架示意图 9 电子科技大学硕士学位论文 1 ) 硬件控制层主要是实现对系统硬件的控制功能,包括c c d 相机、计算机 显卡和硬盘文件系统; c c c d c d 模块,封装了c c d 硬件控制相关的功能; c p i c t u r e 模块,主要的作用是图片的显示和绘图,封装了对计算机显卡操作的 功能; m y f i l e o p e r a t e 模块,包含了对文件的相关操作实现对文件的存储和读取; a n a l y s e 模块,为将来封装图像处理算法提供的接口。 2 ) 用户交互层包含了从对话框( c d i a l o g ) 继承而来的三个用户界面,负责 实现和用户之间的交互。 c c o n t r o l 模块,与系统硬件控制层的三个模块( c c c d c t r l ,c p i c m r e , m y f i l e o p e r a t e ) 构成组合关系,实现用户对c c d 控制和图像显示、存储的交互功 能界面; c b i g w i n d o w 模块,用于显示一个全屏的c c d 图像预览视频窗口,它和 c c o n t r o l 共同拥有一个c c c d c t r l 的对象; c p i c p 模块,是图像采集结束后,进行图像处理的软件界面,主要包括对采 集图像的管理和显示,图像区域选取及调用处理算法进行计算的功能。 3 ) 应用程序层:主要是c m y c c d c a p p 模块,它继承自系统的c w i n a p p ,负责 对程序进程的启动和关闭以及各软件界面的启动和切换。 上述模块中,核心是封装c c d 硬件控制相关的功能的c c c d c t r l 模块。 2 3 2 2c c d 控制模块的设计 要实现对c c d 的控制就必须清楚c c d 的工作流程,我们设计的c c d 工作流 程如图2 5 所示。 1 0 第二章c c d 控制与采集模块的设计与实现 图2 - 5 控制模块中c c d 的工作流程 c c c d c t r l , + c c c d o :r l ( ) + c s l :r i n gc h e c k o - li n tp r e v i e w ( h w n dh w n d ) + 雌p a u 刚e w ( h w | i l l l dh w n 6 l + i r t5 c o p v i e w ( h w n dh w n d ) + v o i ds e l d a t a ( f l o a td a t a jc s t r i n c jn a m e ) + f l o a tg e t d a t a ( c s t r i n gn a m e ) + v “6a p 出p f o p e c “i n cw 1 6 m ,i n th e i g h t ji n tp i x jh w n dh w n d ) + i l l s a v e l m a g e ( 1 0 n gm a x f r a m e s , c s i r i n gf i l e n a m e ji n tw , i n th j 吐n u m ji n tm b 8 :) + b o o c o m p u t e l m a g e a v e r a 相( b y t e * p d a t a i n jb y t e * p d a f a o u t , l o n gi m a g e s i z e jl o n gn u m b e r o f l m a g e s ) 图2 - 6c c c d c t r l 类图 电子科技大学硕士学位论文 2 3 2 3 封装接口设计 为了保证软件开发和使用的效率,屏蔽复杂的a p i 函数调用,在c c d 硬件控 制相关的功能模块中我们封装了相关a p i 函数,并提供了简单的调用接口,形成 了最终的c c c d c t r l 类。c c c d c t r l 类的外部接口设计如图2 - 6 所示。 下面对c c e d c f l 类的一些相关接口函数进行说明,并讨论其在设计中的特色。 1 ) c h e c k o 方法,返回值是字符串信息,用来检测相机是否正常连接到了计算 机。 2 ) p r e v i e w ( h w n dh w n d ) ,p a u s e v i e w ( h w n dh w n d ) ,s t o p v i e w ( h w n dh w n d ) 三个方法用来控制预览视频的开始,暂停和结束。 3 ) s e t d a t a ( f l o a td a t a , c s t r i n gn a m e ) ,g e t d a t a ( c s t r i n gn a m e ) 这两个方法用来设置 相机的参数,特别需要值得一提的是,这两个参数使用了字符串类型做为参数, 可以直接传出诸如:曝光时间、增益、对比度、亮度等中文值表示参数的类型。 4 ) a p p l y p r o p e t y ( i n tw i d t h ,i n th e i g h t ,i mp i x ,h w n dh w n d ) 方法用来指定相机的 分辨率和每像素的位数,在该方法中做了对相机预览状态的判断,这样使用者就 不需判断相机的状态了,在图像正在预览的时候也可以对分辨率和像素位数的改 变。因为该方法中会先自动关闭相机的预览状态再调整参数,调整完成后又会恢 复相机的预览状态。 5 ) c o m p u t e l m a g e a v e r a g i n g 该方法用于设置多帧平均选项,其返回值是b o o l 类型,t r u e 表示计算成功,f a l s e 表示计算失败 输入参数有四个:* p d a t a l n ,* p d a t a o u t 两个b y t e 指针分布指向输入和输出 的已经分配好适合大小的内存区域,i m a g e s i z e 表示图像的大小即( 长宽之积) , n u m b e r o f l m a g e s 表示参与平均的图像帧数。 在处理1 6 位数据时,由于输入和输出图像内存区域都是以一个字节( 8 位) 为单位分配的,对于1 6 位的数据处理起来很不方便。在模块实现时我们使用了一 个巧妙的办法,即将b y t e 指针转换为u s h o r t 类型,这样就方便以1 6 位读取 了。程序代码如下: u s h o r t * p d a t a l n l6 ,* p d a t a o u t l6 ;定义1 6 位指针 p d a t a l n l 6 = ( u s h o r t * ) p d a t a i n ;强制转换 p d a t a o u t 16 = ( u s h o r t 拳1p d a t a o u t ; 由于数据采集的方法不同,在1 6 位的输入图像内存中的每个像素点的值,存 储方式有所不同,有大字节序( b i g e n d i a n ) 和小字节序( s m a l l e n d i a n ) 之分。 1 2 第二章c c d 控制与采集模块的设计与实现 大字节序指高位存储在第一个字节,低位存储在第二个字节,而小字节序则 正好相反。如果是大字节序,可以直接计算均值,如果是小字节序就必须先转换 成太字节序,程序中通过位运算的方式做一次交换字节操作实现。代码如下: p i x v a l u e l e5 如d a t a l n l 6 p o s i t i o n 8 ) ; 23 2 4 控制采集模块的实现效果 剀2 7 控制采集模块的实现界面 在v c 中编写和应用c c e d c t r l 类后,获得了针对i n f i n i t y 系列c c d 的控制 采集模块,如图2 7 所示。图中的控制采集模块的界面分为画面预览区、参数设 置区和图像采集控制区三个部分。 本模块具有以下特点: 1 ) 模块把具有相同或相近功能的选项放在同一个操作面板中,这样操作起来 感觉直观明显,对于新接触这个软件的人,不用学习和培训直接上手。 2 ) 在参数控制区域,实现了滑动杆描动操作和编辑框的同步更新,在拖动滑 动杆时,编辑框的参数值随之变化,在修改编辑框中的参数值时,滑动杆的标尺 也随之改变位置。在这种情况下,可以用滑动杆拖动来在大范围上寻找适合的取 值当取值范围锁定后可以通过修改数值的方法微调参数值,从而可咀更方便 的找到最优值。 电子科技大学硕士学位论文 3 ) 在图像保存方面,增加了自动保存功能,当系统设置为自动保存模式时, 点击保存后不会再弹出文件选择框,让用户选路径、填写名称,而是自动的按照 用户事先设好的路径,通过自动编号的办法保存相应的文件。同时用户可以设置 保存张数和时间间隔,基本满足了图像采集各方面的需求。 2 3 3 m y c c d c t r l 控件的封装 上述的c c d 控制与采集模块是使用v c + + 编写的,可以直接在v c + + 中使用。 为便于使用其它编程软件时也能方便地应用本模块,我们将其封装名为 m y c c d c t r l 的a c t i v e x 控件,以获得良好的应用。 2 3 3 1 使用a c t i v e x 控件的优点 a c t i v e x 是m i c r o s o f t 对于一系列策略性面向对象程序技术和工具的称呼,其 中主要的技术是组件对象模型( c o m ) 1 3 】。在有目录和其它支持的网络中,c o m 变成了分布式c o m ( d c o m ) 。在创建包括a c t i v e x 程序时,主要的工作就是组件, 一个可以自主的在a c t i v e x 网络( 现在的网络主要包括w i n d o w s 和m a c ) 中任意 运行的程序。这个组件就是a c t i v e x 控件。a c t i v e x 是m i c r o s o f t 为抗衡s u n m i c r o s y s t e m s 的j a 、,a 技术而提出的,此控件的功能和j a 、,a a p p l e t 功能类似。 如果使用的是w i n d o w s 操作
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第1课 《计算机网络》教学设计 浙教版(2023)初中信息技术七年级上册
- 装家的协议书
- 合伙企业增资协议书
- 单位监管协议书
- 互换协议书含义
- 夫妻协议书范本
- 任务二 学习缝布贴说课稿小学劳动鲁科版三年级下册-鲁科版
- 注销股权协议书
- 兴安盟中石油2025秋招笔试行测专练题库及答案
- 安全知识培训内容课件
- (必会)中级《审计理论与实务》近年考试真题题库(300题)
- 烘焙与甜点制作
- T-CRHA 028-2023 成人住院患者静脉血栓栓塞症风险评估技术
- 地基事故案例分析
- 国家开放大学《财政与金融(农)》形考任务1-4参考答案
- 英语考级-a级词汇完整版
- 隧道钻爆法掘进施工安全操作规程
- 计算机网络技术专业介绍解析
- 圆锥式破碎机说明书样本
- 九年级英语 第二单元 教案 ·(全)·
- GB/T 37864-2019生物样本库质量和能力通用要求
评论
0/150
提交评论