图像采集系统的Camera Link标准接口设计
高速数据采集系统可对相机采集得到的实时图像进行传输、实时处理,同时实现视频采集卡和计算机之间的通信。系统连接相机的接口用的是Camera Link接口,通过Camera Link接口把实时图像高速传输到FPGA图像采集卡中进行数据实时处理,并通过PCI接口实现采集卡和计算机之间的通信。本文主要研究数据采集系统 Cam-era Link接口技术。
Camera Link是专门为数字摄像机的数据传输提出的接口标准,是2000年10月由一些摄像头供应商和图像采集公司联合推出的。Camera Link标准简化了计算机和摄像头之间的连接。本设计选用Dalsa公司的DS-21-02M30相机,该相机支持Camera Link接口。相机数据通过Camera Link接口传输到一块Altera公司的FPGAStratixII中进行处理。在FPGA中进行数据的高速缓存,可以在FPGA中设计各种图像处理程序对图像进行实时处理。
1 DS-21-02M30相机简介
DS-21-02M30相机可提供高灵敏度的8/10位图像。为了同时获得卓越的分辨率和灰度级,DS-21-02M30相机图像分辨率为1 600×1 200,像素尺寸为7.4 μm×7.4 μm,像素数据输出时钟为40 MHz,最高帧频可达60帧/s。通过设定像素数据格式命令,可以设定像素数据为8位、10位。功耗低于15 W,供电电源电压为12~25 V。
通过异步串口向DS-21-02M30相机发送ASCII码控制命令和诊断命令,可以控制相机输出图像的增益、补偿、帧频、曝光时间、曝光模式和测试图像的输出,还可以对相机进行诊断。串口协议:1位开始位,8位数据位,无奇偶校验位,1位停止位;通信波特率为9 600 bps(相机默认),通过设定波特率命令可将其设定为19 200 bps、57 600 bps和115 200 bps。
DS-21-02M30相机共有4种曝光模式,可以通过设定曝光模式命令来为相机选择合适的曝光模式。
模式2:内部触发方式(相机的默认曝光模式)。帧频和曝光时间可用相应的命令控制。
模式3:最大曝光时间的外部触发方式。
模式4:外部触发方式。帧频和曝光时间都由外部触发信号控制,即外部触发信号的高电平阶段为曝光时间,外部触发信号的频率为帧频。
模式6:外部触发方式控制帧频,曝光时间可用相应内部命令控制。
DS-21-02M30相机的命令以ASCII码的形式发
送。向相机发送命令时,以回车符作为结束。相机上电后,相机背后的指示灯闪烁,同时通过串口发送“CameraInitialization in process,Please Wait…OK>”字符串。当收到“OK>”字符串时,表明相机要开始传送图像数据,相机背后的指示灯不再闪烁。当相机收到有效的命令时,会返回“OK>”字符串作为应答;否则,返回“Error x:Error Massage>”字符串作为应答。其中,x为错误标号,Error Massage表示对错误的具体说明。相机的应答字符串以符号“>”作为结束符。
2 Camera Link结构与原理
Camera Link是专门为数字摄像机的数据传输提出的接口标准,专为数字相机制定的一种图像数据、视频数据控制信号及相机控制信号传输的总线接口,数据传输速率最高可达2.38 Gbps。该标准规定了接口模式、相机信号、端口配置、图像数据位配置、连接器引脚定义及连接线、标准接收器芯片组。采用这种标准后,使得数字摄像机的数据接口输出采用更少的线数,连接电缆更容易制造,更具有通用性,而且数据的传输距离比普通传输方式更远。其最主要的特点是采用了LVDS(Low VoltageDifferential Signaling,低压差分信号)技术,使摄像机的数据传输速率大大提高。
在Careera Link标准出现之前,业界有一些标准(如较流行的IEEE-1394:接口)作为一种数据传输的技术标准。IEEE-1394被应用到众多的领域,数字相机、摄像机等数字成像领域也有很广泛的应用。IEEE-1394接口具有廉价,速度快,支持热拔插,数据传输速率可扩展,标准开放等特点。但随着数字图像采集速度的提高、数据量的增大,原有的标准已无法满足需求。为了简化数据的连接,实现高速、高精度、灵活、简单的连接,在 NationalSemiconductor公司开发的Channel Link总线技术基础上,由多家相机制造商共同制定推出了Camera Link标准。基于Camera Link的数字相机的采集速度和数据量均好于基于IEEE-1394标准。
Camera Link是一种基于物理层的LVDS的平面显示解决方案。图1为Camera Link总线发送端与接收端的连接框图,也是该总线的基本模式。总线发送端,将28位并行数据转换为4对LVDS串行差分数据传送出去,还有一对LVDS 串行差分数据线用来传输图像数据输出同步时钟;而总线接收端,将串行差分数据转换成28位并行数据,同时转换出同步时钟。这样不但减少了传输线的使用量,而且由于采用串行差分传输方式,还减少了传输过程中的电磁干扰。
3 高速数据采集卡Camera Link接口设计
高速数据采集系统的基本框图如图2所示。FPGA给相机发出控制信号,相机中的数据通过Careera Link接口传送到图像采集卡;数据由FPGA读入,缓存在SDRAM中。可以在FPGA中根据用户的需求实现高速的图像处理,根据图像处理的结果可以由 FPGA完成用户所需的控制。图像采集卡通过PCI接口和计算机相连接,通过计算机可以配置图像采集卡和相机,计算机也可以从采集卡中获得图像处理数据。接下来详细研究FPGA和相机间的Camera Link接口技术。
3.1 DS-21-02M30相机的Camera Link接口
Camela Link总线标准规定:在完整模式下,最多可以使用8个端口(Port A~Port H)传输数据,每个端口为8位数据。DS-21-02M30相机使用Port A~Port C端口,用的是基本模式(Base)。相机后端有一个MDR26连接口,分别对应A、B、C三个端口各8位数据,加上FVAL、LVAL、DVAL和SP 四位数据控制信号,共28位并行数据位。
3.2 Camera Link接口的硬件设计
Camera Link的硬件连接框图如图3所示。硬件电路包括3部分:相机通过MDR26连接图像采集卡;CameraLink接口的LVDS信号和CMOS信号转换电路;FPGA接收相机数据和发送控制部分。
为了对相机进行外部触发方式控制以及向相机发送命令,用四通道CMOS信号转换为LVDS差分信号的芯,片。DS90LV047作为图像采集卡,向相机发送外同步触发信号和转换命令。由于DS-21-02M30相机只用到CC1,FPGA构成的图像采集卡,对相机的控制通过CC1和SerTC信号实现。为了接收相机向图像处理系统发送的应答字符串,选用DS90LV048芯片作为图像处理系统接收器。 DS90LV048芯片是四通道LVDS差分信号转换为CMOS信号的驱动器。
图像采集系统的Camera Link标准接口设计的更多相关文章
- 134-基于TMS320C6678、FPGA XC5VSX95T的一路Full模式Camera Link图像理平台
基于TMS320C6678.FPGA XC5VSX95T的一路Full模式Camera Link图像理平台 一.板卡概述 该板卡采用TI公司新一代DSP TMS320C6678,结合FPGA,型号为X ...
- 115-基于TI TMS320DM6467无操作系统Camera Link智能图像分析平台
基于TI TMS320DM6467无操作系统Camera Link智能图像分析平台 1.板卡概述 该板卡是我公司推出的一款具有高可靠性.效率大化.无操作系统的智能视频处理卡,是机器视觉开发上的选. ...
- 115-基于TI TMS320DM6467T Camera Link 机器视觉 智能图像分析平台
基于TI TMS320DM6467无操作系统Camera Link智能图像分析平台 1.板卡概述 该板卡是我公司推出的一款具有超高可靠性.效率最大化.无操作系统的智能视频处理卡,是机器视觉开发上的首选 ...
- 135-基于TMS320C6678、FPGA XC5VSX95T的2路Full模式Camera Link输入双目视觉处理平台
基于TMS320C6678.FPGA XC5VSX95T的2路Full模式Camera Link输入双目视觉处理平台 一.板卡概述 本板卡由我公司自主研发,基于CPCI架构,符合CPCI2.0标准,采 ...
- TI Zigbee Light Link 参考设计
TI Zigbee Light Link 参考设计 原文出处: http://processors.wiki.ti.com/index.php/Category:ZigBee_Light_Link ...
- 基于Xilinx FPGA的视频图像采集系统
本篇要分享的是基于Xilinx FPGA的视频图像采集系统,使用摄像头采集图像数据,并没有用到SDRAM/DDR.这个工程使用的是OV7670 30w像素摄像头,用双口RAM做存储,显示窗口为320x ...
- 基于SDRAM的视频图像采集系统
本文是在前面设计好的简易SDRAM控制器的基础上完善,逐步实现使用SDRAM存储视频流数据,实现视频图像采集系统,CMOS使用的是OV7725. SDRAM控制器的完善 1. 修改SDRAM的时钟到1 ...
- 基于FPGA的线阵CCD实时图像采集系统
基于FPGA的线阵CCD实时图像采集系统 2015年微型机与应用第13期 作者:章金敏,张 菁,陈梦苇2016/2/8 20:52:00 关键词: 实时采集 电荷耦合器件 现场可编程逻辑器件 信号处理 ...
- 基于AXI VDMA的图像采集系统
基于AXI VDMA的图像采集系统 转载 2017年04月18日 17:26:43 标签: framebuffer / AXIS / AXI VDMA 2494 本课程将对Xilinx提供的一款IP核 ...
随机推荐
- a标签的伪元素的应用——link,hover,visited,active
a标签应用中,一般有四个状态: 鼠标未移入前(link),鼠标移入时(hover), 鼠标点击时(active),鼠标点击后(visited). <!DOCTYPE html> <h ...
- easyui_datagrid 行内使用comobox的编码实现
easyui datagrid组件的列属性中有一个editor属性,官方介绍如下: 所以,我们可以通过编码实现datagrid行内插入comobox的方式来实现某些场合的需要,具体编码实现如下: // ...
- selenium的使用技巧及集成到scrapy
为了爬取拉钩,今天学习了selenum的使用技巧. from scrapy.http import HtmlResponse class JSPageMiddleware(object): ...
- python3操作pymsql模块
pymysql是python中操作mysql的模块. 1.pymysql模块的安装 pip3 install pymysql 也可以使用pycharm这个IDE工具来安装pymysql这个模块. 2. ...
- CentOS7 Nvidia Docker环境
最近在搞tensorflow的一些东西,话说这东西是真的皮,搞不懂.但是环境还是磕磕碰碰的搭起来了 其实本来是没想到用docker的,但是就一台配置较好电的服务器,还要运行公司的其他环境,vmware ...
- JMX与Spring
1.什么是JMX JMX可以监控类的运行情况,可以在程序运行期查看并修改类属性的信息. 举一个应用实例:在一个系统中常常会有一些配置信息,比如服务的IP地址,端口号什么的,那么如何来写这些代码呢? 下 ...
- 二维码开源库ZBar-windows下编译和使用
源码 下载最新Zbar源码(http://zbar.sourceforge.net/),网站的WIKI是空白的,所以只能在源码包里找使用说明了,很遗憾Windows下怎么编译没说明,只是说明了Wind ...
- ES6,Array.includes()函数的用法
在ES5,Array已经提供了indexOf用来查找某个元素的位置,如果不存在就返回-1,但是这个函数在判断数组是否包含某个元素时有两个小不足,第一个是它会返回-1和元素的位置来表示是否包含,在定位方 ...
- [Python Study Notes] python面试题总结
python语法以及其他基础部分 可变与不可变类型: 浅拷贝与深拷贝的实现方式.区别:deepcopy如果你来设计,如何实现: __new__() 与 __init__()的区别: 你知道几种设计模式 ...
- CentOS安装JDK 8
准备工作 首先,更新包: yum update 检查服务器上是否已安装旧版本的Java: java -version 如果有旧版本的Java则移除: yum remove java-1.6.0-ope ...