eBoat300数码相机TWAIN驱动的设计
0 引 言
我国在数码相机领域的研究与开发起步较晚,核心芯片技术掌握在国外几家大公司手中,在产品开发自主性方面受到很大限制。目前,国内只有为数不多的传统相机和电子产品生产厂家在进行数码相机的开发,他们遵循/硬件集成,软件开发0的产业化发展模式。eBoat300数码相机的硬件使用了STV0680芯片,由美国STMicroelectronics公司提供设计方案[1],但原始的图像采集系统和设备驱动有相当的局限性,不适合用户需求的情况,因此开发数码相机TWAIN驱动软件很有必要。
1 数码相机TWAIN驱动的概述
数码相机在Windows系统中属于标准STI De-vice,Microsoft使用STI(Still Image Architecture)体系架构来接入系统,在上层需要标准的TWAIN的DS来和图形图像应用程序对接,如图1所示。图中表示了数码相机驱动程序与应用程序及操作系统之间的关系,及驱动程序的组成,虚线框中的部分属于数码相机TWAIN驱动程序。
由图1可以看出,数码相机驱动TWAIN程序可以分成四个部分:TWAIN接口(DS)部分、驱动程序界面、数据采集及处理和底层设备驱动部分。完整图像的采集过程:带有TWAIN接口的图像应用程序通过DSM选择TWAIN源,并通过TWAIN协议调用DS的TWAIN接口部分,启动TWAIN驱动程序的用户界面,设置好相关参数后,再通过DS的TWAIN接口,调用数据采集及处理部份,然后发送给底层设备驱动部分,再由它发送给数码相机,数码相机根据不同的命令完成不同的工作,并将采集的数据通过底层设备驱动回传给数据采集及处理部分,经过处理后,经DS传送给图像应用程序[2,3]。
2 数据源(DS)的设计
2.1 TWAIN标准接口的概述
TWAIN是一个软件接口规范,它定义了一个标准的软件协议和相关的API,以支持图像源与应用软件之间的数据传输。支持TWAIN规范的设备主要有扫描仪和数码相机等,TWAIN的最新版本已经能够支持图像数据库和语音流等逻辑设备了。TWAIN的实现分为3大部分,即应用软件、数据源管理器(DSM)和数据源(DS)[4],如图2所示,其中应用软件可以是任何支持TWAIN规范的图像处理软件,例如Photo-shop,Acdsee等;数据源管理器是一个动态链接库(twain.dll或者twain-32.dll),由TWAIN工作组(Twain Working Group)提供;数据源随着其支持的硬件设备一起发行,由硬件设备供应商提供。根据TWAIN规范,数据源软件应该做成一个动态链接库,不过它的文件扩展名不能为.dll,而应该改为.ds;并且该文件它一般被放置于系统目录下的TWAIN或TWAIN-32子目录中。
2.2 TWAIN的编程接口
TWAIN的编程接口看起来很简单,因为在实际上只需要两个函数。不同的操作是通过向这两个函数传递不同的参数实现的。这两个函数就是DSM-En-try()和DS-Entry()。DSM-Entry()操作源管理软件,DS-Entry( )操作数据源软件,如图3所示。
相关文章
- 2024-09-17一种索支撑柔性结构轨迹跟踪控制方法
- 2023-10-27光电跟踪测量系统中调光机构的设计
- 2023-12-26基于EdgeCAM的数控加工技术在模具加工中的应用
- 2024-01-26常压储罐声发射及漏磁检测技术
- 2023-12-21基于SolidWorks的深孔件冷挤压工艺设计
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。