• 首页 |  
  • 查询 |  
  • 供应 |  
  • 求购 |  
  • 资讯 |  
  • 产品中心 |  
  • 技术应用 |  
  • 商务中心 |  
  • IC供货商 |  
  • 下载中心 |  
  • 求职招聘 |  
  • 论坛 |  
  • 博客
  • 您所在的位置: 首页 > 技术应用 > 工业控制 > 变频器 > 正文
    文章搜索:
    利用数码相机的SDK开发图像采集应用程序

    http://www.ic36.com 2006年9月6日9:50
        数码相机作为一种目前常见的消费类商品,其基本工作原理是利用CCD光耦器件将光信号转变为电信号,再经过A/D转换、数据压缩等处理后经串口或USB口PC端应用程序控制下将图片以JPEG格式传送到PC机的硬盘中,目前,PC端的应用程序都由相机制造商所提供。很少有人注意的一些数码相机制造商为开发人员提供相对丰富的SDK(Software Development Kit)资源,以便于有关人员利用数码相机进行图像采集和监测方法的开发工作,SDK开发套件一般由头文

     
    清华微电子推出高频管分立器件裸片,已做到9G截止频率

    件(.H)、库文件(.lib)和动态链接库文件(.dll)组成,美国柯达公司是世界相机制造业和诸多影像标准制定的带头兵。本文将以KODAK DC280 SDK为例,对SDK及其应用作以介绍,以使感兴趣的开发人员可以自编程序来将数码相机应用在工程项目中。

        SDK结构图

        DC280 SDK原理框图如图1所示。SDK控制层位于应用程序与指定SDK控制层(对于DC280相机此层为DC280SDK控制层)之间,它的主要作用是接收应用程序的DC280_OpenCamera()指令,同时将指定相机的SDK控制层调入内存区:接收DC2x0_CloseCamera()指令,同时释放指定相机SDK控制层所占内存区,指定相机SDK层位于SDK控制层下,本层支持所有访问相机的函数,并将函数执行结果状态码(即错误代码)经SDK控制层上传给应用程序,指定相机控制层的下层为驱动程序层,驱动程序用于与外部设备直接打交道。
        SDK函数分类

        SDK内的函数按照作用类型一般可以分为以下几类:

        (1)相机初始化函数:主要包括_CloseCamera()和_OpenCamera()。
        (2)相机控制函数:主要包括_GetStatus()、_GetConfig()、_SetConfig()、_ControlCameraTime  ()、_ControlCa-meraID()、_ControlTakePicture()、_ResetCamera()。

        (3)图片管理函数:_TakePictuer()、_DeletePictuer()。
        (4)图片信息获取函数:_GetCameraPictInfo()、_Get-Allpicture Name()、_GetNative Picture()。
        (5)文件传递函数:_GetfileFrom Camera()、_SetFileToCamera0。
        (6)其他类型的函数:包括电池电量数据获取函数、最后一次操作返回码获取函数等。

        SDK用法的一个典型实例。

        下面举一个拍摄图片的简单实例使用读者大体了解编程的一般模式,其过程如图2所示。首先是相机初始化即打开相机,然后读取目前相机中拍摄方面的参数设置,根据需要修改某些参数设置,接着拍摄图片,最后关闭相机释放内存,例程如下:

    以下为SDK用法的典型例程:
     
    #include"F210.h"
    OSErr ret;
    DC280_Camera Camera;
    DC280_ImgProcData ThumbImgInfo;
    DC280_TakePictInfo TakePictInfo;
    DC280_PictInfo GenericPictInfo;
    DC280_SpecificPictInfo SpecificPictInfo;//打开相机
    DC280_OpenCamera(VersionData,CameraData);//获取相机设置参数
    ret=DC280_ControlTakePicture(&Camera,TRUE。0L,(VOIDPTR)&TakePictInfo); //修改需要变动的参数
    ret=DC280_ControlTakePicture(&Camera,FALSE,(VOIDPTR)&TakePictInfo);//拍照
    ret=DC280_TakePicture(&Camera,TRUE,&ThumbImgInfo,&GenericPictInfo,(VOIDPTR)&SpecificPictInfo);
    //可以根据需要加上文件传递函数等
    DC280_CloseCamera(CameraData);//关闭相机
    其中DC280_ControlTakePicture的第二个参数为GetSetFlag。当其为true时表示从相机中获取设置参数;为false时表示将改动过的参数输送给相机。DC280_Camera的数据结构如下:
    typedef struct {DC210_PortNum PortNum;
    DC210_BitRate BitRate;
    DC210_CameraType CamType;BOOL CameraOpenFlag;
    VOIDPTR InternalUseOnly;
    }DC280_Camera;

        本文通过柯达公司的DC280 SDK开发工具对SDK及利用它开发相机应用程序进行简单介绍,其他公司SDK的使用方法基本类似,只是函数名称略有不同,使用方法是一致的,有关SDK中函数及其参数的详细说明,可以在相机制造商的英文网站上从开发工具一栏中找到。


    (关键词):数码相机 采集应用 SDK

    IC型号速查
    [0]  [1]  [2]  [3]  [4]  [5]  [6]  [7]  [8]  [9]  [A]  [B]  [C]  [D]  [E]  [F]  [G]  [H]
    [I]  [J]  [K]  [L]  [M]  [N]  [O]  [P]  [Q]  [R]  [S]  [T]  [U]  [V]  [W]  [X]  [Y]  [Z]
    相关链接
    昆山成为中国数码相机第一大生产基地2006-8-16 13:09:27
     我来评两句
    查看最新评论〗 

    昵称:  匿名
    请您注意:
    ·遵守中华人民共和国的各项有关法律法规
    ·承担一切因您的行为而导致的法律责任
    ·本网留言板管理人员有权删除其管辖留言内容
    ·您在本网的留言,本网有权在网站内转载或引用
    ·参与本留言即表明您已经阅读并接受上述条款

    芯片之家  电子之家  电子元器件之家  半导体之家  微电子之家 
    ·免费发布紧急IC求购 ·到哪里找工厂求购 ·全球最好十个IC网站 ·我为什么选择IC36
    ·IC是怎样炼成的 ·想知道所有的IC封装吗 ·如何鉴别旧货刷新货 ·芯片的前缀代表什么
    ·IC行业的网站体验 ·元器件常见问题解答 ·这里居然可以实时洽谈 ·有问必有答
    ·IC行业之25颗钻石 ·IC代理商查询 ·十家最牛的公司 ·中国IC公司200强
    元器件之家  晶圆之家  集成电路之家  电子元件之家  模块之家  电子管之家
    ·舍我其谁的高级会员 ·IC36是怎样收费的 ·网站广告是如何占领的 ·IC之家的增值服务
    ·我该到哪里去找工作 ·到哪里去招人呢 ·今日芯片需求排行 ·还有我们没有的型号吗
    ·中国IC行业的害群之马 ·中国最优秀的IC供应商 ·国外的IC骗子公司 ·信誉良好的IC供货商
    ·谁是IC之家的明星 ·做我们的代理吧 ·免费注册 机不可失 ·广告热线 010-51653935
    热 点 专 题
    热 点 论 坛
    关于我们 | 增值服务 | 免责条款 | 收费标准 | 付款方式 | 广告服务 | 网站地图 | 联系我们 | 友情链接 | 网站代理
    MSN:ic36@hotmail.com  QQ:IC之家 在线咨询  联系电话:(010)51653935 传真:(010)51653936 客户服务:service@ic36.com
    Copyright © 2003-2006 IC36.COM IC之家 本网站中文域名:IC之家 芯片之家
    京ICP证060068号