CCD图像采集 程序---详细注释,适合新手

CCD图像采集 程序---详细注释,适合新手
CCD图像采集 程序---详细注释,适合新手

近几天看到论坛里有很多网友遇到CCD图像采集的麻烦,我在最开始的时候也为这个烦恼过,由于本人比较菜,在度过大概半个月的绝望日夜后,在刚准备放弃时突然发现我已经采集到正确的图像了。特再次分享,希望能解决大家当前遇到的麻烦。

在采集图像之前,我们首先要知道摄像头输出信号的特性。目前的模拟摄像头一般都是P AL制式的,输出的信号由复合同步信号,复合消隐信号和视频信号。其中的视频信号才是真正的图像信号,对于黑白摄像头,图像越黑,电压越低,图像越白,电压越高。而复合同步信号是控制电视机的电子枪对电子的偏转的,复合消隐信号是在图像换行和换场时电子枪回扫时不发射电子。由于人眼看到的图像大于等于24Hz时人才不会觉得图像闪烁,所以P AL制式输出的图像是25Hz,即每秒钟有25幅画面,说的专业点就是每秒25帧,其中每一帧有625行。但由于在早期电子技术还不发达时,电源不稳定,容易对电视信号进行干扰,而交流电源是50Hz所以,为了和电网兼容,同时由于25Hz时图像不稳定,所以后来工程师们把一副图像分成两场显示,对于一幅画面,一共有625行,但是电子枪先扫描奇数场1,3,5.....,然后再扫描2,4,6.....,所以这样的话,一副图像就变成了隔行扫描,每秒钟就有50场了。其中具体的细节请参考这个网站

电视原理与系统

https://www.360docs.net/doc/9114208621.html,/zsb/zjx/zjx09/zjx090000.htm

只用看前面的黑白全电视信号和P AL制式就可以了(当然如果感兴趣可以全部看完)。

通过上面的内容如果你对P AL制式信号了然于心,那么就可以开始图像的采集了,P AL输出的信号有复合同步信号,复合消隐信号和视频信号。那么我们首先就是要从这三种信号中分理出复合同步信号,复合消隐信号和视频信号,以便我们对AD采样到的值进行存储,从而形成一幅画面。具体如何分离,我们使用的是LM1881视频同步分离器件,具体的硬件连接请参看论坛内相关文章(论坛里有介绍LM1881的文章,自己搜吧,我不重复了)。

分离出行场同步,奇偶场信号后,就把他们接到单片机的外部中断口,产生中断,在中断服务程序中对AD采集到的数据进行图像存储,从而形成一个二维数组的数字图像。

下面就说说图像采集方案,方法有多种,但我使用的方案是在行终端中读取A D采样的灰度值,在场同步中交换图像采集和处理缓存指针,并对图像进行处理,然后控制小车,在主函数中只有初始化和键盘扫描和串口输出函数。这样做效率比较高,而且可以把调试和图像采集处理分开,变成起来比较方便。

大家遇到的还有一个很棘手的问题可能是AD采样频率该设置多大呢?建议大家先通过PLLL超频,然后把AD时钟频率设置的高点才行。

下面就把我的代码贴给大家看看吧。

void vPLLInit(void)//锁相环初始化

{ //BUS-CLOCK=PLL-CLOCK/2=32M

REFDV = 1; // set the REFDV register 16M*2*(3+1)/(1+1)=64M

SYNR =3; // set the SYNR register to give us a 64 MHz PLL-clock.

asm nop // nops required for PLL stability.

asm nop

asm nop

asm nop

while ((CRGFLG&0x08)==0); // wait here till the PLL is locked.

CLKSEL|=0x80; // switch the bus clock to the PLL.

}

设置总线时钟为32M

void vECTInit(void)//定时器初始化

{

TIOS =0x00; //设为输入捕捉

TSCR1=0x80; //定时器使能

TSCR2=0x83; //允许定时器溢出中断,定时器时钟32M/(2^3)=4M

TCTL4=0xAA; //触发电平:下降沿

TIE =0x07; //开中断

TFLG1=0xFF; //清除中断标志

}

输入捕捉的1,2通道接行场中断。

void vADInit(void)//AD转换初始化程序

{

//A TD1设置

//上电,标志位快速清零,忽略外部触发,执行一次停止,中断禁止。

A TD1CTL2 = (A TD1CTL2_AFFC_MASK | A TD1CTL2_ADPU_MASK);

//转换序列长度为1,FIFO模式,Freeze模式下继续转换。|A TD0CTL3_FIFO_M ASK

A TD1CTL3 = (A TD1CTL3_S1C_MASK);

//8位精度,2AD采样周期,采样长度8。

//A TDClock=[BusClock*0.5]/[PRS+1] ; PRS=15, divider=32

A TD1CTL4 =(A TD1CTL4_SRES8_MASK|A TD1CTL4_PRS0_MASK);

//右对齐无符号,扫描模式连续采样,单通道采样//多通道采样|A TD0CTL5_MUL T_MASK。

A TD1CTL5 = (A TD1CTL5_DJM_MASK|A TD1CTL5_SCAN_MASK);

//禁止数字输入缓冲

A TD1DIEN=0x00;

}

A TD1的0通道用于AD转换

下面是真正的图像采集程序

//当前采样图像的行和列。

unsigned int ui_SampleRow=0,ui_SampleColumn=0;

//图像数据缓存

unsigned char uca_Buffer1[IMAGE_ROW][IMAGE_COLUMN];

unsigned char uca_Buffer2[IMAGE_ROW][IMAGE_COLUMN];

//指向当前采集数据采样缓存首地址的指针

unsigned char *puca_BufferSample=&uca_Buffer1[0][0];

//指向当前处理数据采样缓存首地址的指针

unsigned char *puca_BufferProcess=&uca_Buffer2[0][0];

//用于图像采集和处理交换缓存。(注意:在每次交换指针后保证puca_BufferT e mp与puca_BufferSample相同)

unsigned char *puca_BufferT emp=&uca_Buffer1[0][0];

#pragma CODE_SEG NON_BANKED

//输入捕捉2通道中断函数,行同步 ,用于数据采集。

void interrupt 10 vIC2ISR(void)

{

unsigned char ucT emp;

unsigned char *pucT emp;

TFLG1_C2F=1;

if(ui_SampleRow>=SAMP_ROW_ST AR T&&ui_SampleRow

{

if(ui_SampleRow%SAMP_ROW_SEP==0)

{

for(ui_SampleColumn=0;ui_SampleColumn

{

while(!A TD1ST A T1_CCF0);

if(ui_SampleColumn>=SAMP_COL_ST AR T)

{

if(ui_SampleColumn%SAMP_COL_SEP==0)

{

pucT emp=puca_BufferSample

+((ui_SampleRow-SAMP_ROW_ST AR T)/SAMP_ROW_SEP)*IMAGE_ COLUMN

+(ui_SampleColumn-SAMP_COL_ST AR T)/SAMP_COL_SEP;

*pucT emp=A TD1DR0L;

}

}

}

}

}

ucT emp=A TD1DR0L;

ui_SampleRow++; //采样行坐标加一。

}

//输入捕捉1通道中断函数,场同步,交换缓存以及图像处理和模型车控制。void interrupt 9 vIC1ISR(void)

{

TFLG1_C1F=1;

ui_SampleRow=0; //把采样行坐标清零。

ui_SampleColumn=0;

//交换图像采集和处理缓存

puca_BufferSample=puca_BufferProcess;

puca_BufferProcess=puca_BufferT emp;

puca_BufferT emp=puca_BufferSample;

//系统时间加一。

ul_SystemTime+=1;

//开中断,允许行信号中断进行采样。

EnableInterrupts;

if(uc_CarState==ST A TE_ST AR T)

{

// POR TB_BIT1=1;

//分析图像,获取路径参数,根据路径参数控制模型车。。

vImageProcess();

//根据路径参数控制模型车。

vAutoControl();

// POR TB_BIT1=0;

}

}

下面是我的小车程序,其中AD,输入捕捉和PLL初始化函数在Drives.c中,图像采集在Interrupts.c中。

(完整版)基于CCD图像采集系统毕业设计

毕业设计(论文) 基于CCD图像采集系统

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

第1章绪论 1.1课题景背 近年来,随着工业的发展和安全意识的增强,对生产监测和控制的要求不断提高,在设备检测、安全监控、自动测量等工业测控领域,都需要有性能好、成本低、工作稳定、应用灵活方便的图像采集和处理系统。而CCD图像传感器正是目前常用的图像传感器之一。 CCD是Charge Coupled Device的缩写,是一种光电转换式图像传感器。它利用光电转换原理把图像信息直接转换成电信号,这样便实现了非电量的电测量。同时它还具有体积小、重量轻、噪声低、自扫描、工作速度快、测量精度高、寿命长等诸多优点,因此受到人们的高度重视,在精密测量、非接触无损检测、文件扫描与航空遥感等领域中,发挥着重要的作用。 20世纪70年代美国贝尔实验室的W.S.Boyle,G.E.Smith发现了电荷通过半导体势阱发生转移的现象,提出了电荷藕合这一新概念和一维CCD器件模型,同时预言了CCD器件在信号处理、信号储存及图像传感中的应用前景。近年来随着半导体材料与技术的发展,尤其是集成电路技术的不断进步,CCD图像传感器得到很大发展,性能迅速提高。同时CCD图像传感器的家族也在不断壮大。在原有的可见光CCD、红外CCD、微光CCD、紫外CCD和X射线CCD等各种CCD图像传感器的基础之上,90年代以来又出现了几种新的CCD图像传感器,例如:超级空穴堆积CCD、超高感度空穴堆积CCD、超级CCD和四色超级空穴堆积CCD 。世界上CCD图像传感器主要由索尼、富士、夏普、柯达、松下和菲利浦六家公司所生产。国内CCD图像传感器的研制不够迅速,尚

Snap方式的图像采集程序

Snap方式的图像采集程序 第1步:调用IMAQ Init.vi完成图像采集板卡的初始化工作。 第2步:调用IMAQ Create.vi为图像数据创建一个数据缓冲区。 第3步:调用IMAQ Snap.vi从图像采集板卡中读入一帧图像数据,并把它放入先前创建的数据缓冲区中,并放入Image中显示。 第4步:当图像数据缓冲区被释放后,我们在前面板上将看不到采集的图像了,所以特地添加一个人为的延时程序,等待用户停止。 第5步:调用IMAQ Close.vi,释放占有的图像采集板卡。 第6步:调用IMAQ Dispose.vi,释放占有的图像数据缓冲区。 Grab方式的图像采集程序 IMAQ Snap.vi运行速度之所以会慢,是因为IMAQ Snap.vi除了实现图像数据采集的操作外,还实现了许多初始化和资源释放的操作。 既然是连续采集,在每次连续采集开始时,仅做一次初始化就可以。为实现快速的连续图像采集,NI Vision Module提供了两个VI,一个是IMAQ Grab Setup.vi,另一个是IMAQ Grab Acquire.vi。 IMAQ Grab Setup.vi负责每次连续采集前的初始化,IMAQ Grab Acquire.vi专注于图像采集。 第1步:调用IMAQ Init.vi完成图像采集板卡的初始化工作。 第2步:调用IMAQ Grab Setup.vi初始化Grab过程。 第3步:调用IMAQ Create.vi创建图像数据缓冲区。 第4步:调用IMAQ Grab Acquire.vi快速采集图像数据。 第5步:调用IMAQ Close.vi,释放占有的图像采集板卡。 第6步:调用IMAQ Dispose.vi,释放占有的图像数据缓冲区。 使用IMAQ Grab Acquire.vi,采集每帧图像的时间从120ms降到了40ms. 相机配置: 设置选中哪一种配置,包括出厂配置和三个用户配置。 1 User Set Save 保存上面选项选中的配置, 也就是将相机当前的所有参数保存到上面选中的配置中。 2 User Set Load 读取上面选项选中的配置,将选中的配置中的所有参数读取出来并配置到当前的相机中。 3 Default Startup Set 该项选择该相机加电之后的配置应用。

PCB图像采集系统研究背景意义及国内外现状

PCB 图像采集系统研究背景意义及国内外现状 1 研究背景 2 AOI 系统的研究和国内现状 3 研究意义 1 研究背景 印刷电路板(Printed Circuit Board, PCB)又称为印刷线路板或印制电路板。印刷电路板是各种电子产品的主要部件,有“电子产品之母”之称,它是任何电子设备及产品均需配备的,其性能的好坏在很大程度上影响到电子产品的质量。几乎每一种电子设备都离不开PCB小到电子手表、计算器,大到航空航天、军用武器系统等,都包含各式各样,大小各异的PCB板。近年来,随着生产工艺的不断提高,PCB正在向超薄型、小元件、高密度、细间距方向快速发展。这种趋势必然给质量检测工作带来了很多挑战和困难。因此PCB故障的检测已经成为PCB制造过程中的一个核心问题,是电子产品制造厂商非常关注的问题。在生产线上,厂家为保证PCB板的质量,就得要求100%的合格率,对所有的部件、子过程和成品都是如此。在过去靠人工对其进行检测的过程中,存在以下几个不可避免的缺点: (1) 容易漏检。由于是人眼检测,眼睛容易疲劳,会造成故障不能被发现的问题。并且人工检测主观性大,判断标准不统一,使检测质量变得不稳定。 (2) 检测速度慢,检测时间长。比如对于图形复杂的印刷电路板,人工很难实现快速高效的检测,因此人工检测不能满足高速的生产效率。 (3) 随着技术的发展,设备的成本降低,人工费用增加,仍然由人工进行产品质量控制,将难于实现优质高效,而且还会增加生产成本。 (4) 在信息技术如此发达的今天人工检测有不可克服的劣势,例如:对检测结果实时地保存和远距离传输,对原始图像的保存和远距离传输等。 (5) 有些在线检测系统是接触式检测,需要与产品进行接触测量,因此,有可能会损伤产品。 因此,人工检测的精确性和可靠性大打折扣,传统意义上的检测方法不再能适应现代电路板检测的要求。如果漏检的有错误的电路板进入下一道工序,随着每一项工艺步骤的增加,到最终经过贴装阶段后,仍然会被检测出来是有故障的,那时,制造厂商与其花费大量的人力和成本来检测、返修这块电路板,还不如选择丢

用Labview实现图像采集

用Labview实现图像采集 一、程序功能: 1.通过选择相机实现电脑摄像头或CCD连续图像采集。 2.控制图像采集时间。 3.显示图像采集速率和程序运行时间。 4.给采集到的图像命名并保存到特定的文件夹。 二、程序介绍: 1.前面板(控制面板) 要求:实现连续图像采集所需要的软件条件: 1.安装VAS(Vision Acquisition Software) 2.如果要实现CCD图像采集,需安装CCD的驱动程序 操作说明: 1.选择相机名称 2.设置采集时间 3.运行VI 相机名字:通过下拉菜单选择相机,包括电脑摄像头和USB接口的CCD设备采集速率。采集速率:实时显示采集图像的速率。 缓冲数:实时显示从程序运行开始采集图像的数目。 设置采集时间:根据需求设置采集时间。默认值为0,只采一幅图像。 采集进行时间:程序已经运行的时间。 设置保存路径:指定图片的保存位置。如果不设置,只进行实时采集不保存图像。Stop:采集停止。 图像:显示图像信息。左侧为兴趣区域选择工具,作用是使研究区域更加醒目,便于观察。从上到下依次是: 实现图形的放大 显示鼠标位置,不进行其他操作 拖动图片 选择兴趣区为一点 选择兴趣区为矩形包围的区域,两边为水平和竖直

选择兴趣区为矩形包围的区域,矩形方向任意 选择兴趣区为折线 选择兴趣区为折线区域(所画折线自动闭合) 选择兴趣区为曲线 选择兴趣区为曲线保卫的区域 选择兴趣区为椭圆 选择兴趣区为圆环 以折线兴趣区域为例,如图 2.后面板(程序框图) 1. 循环,将采集、保存、计时等功能循环进行。 在循环中,获取最新的图像并输出。 2.循环的初始条件设置,选择相机,并将相机作为循环的输入。 和前面版里的相机名字相对应,作用是选择相机。 打开一个照相机,查询摄像机功能,装载的照相机的配置文件,并创建一个唯一的参考到摄像机。 Camera Control Mode照相机控制模式,在控制器模式打开相机,配置和获取图像数据。Session In指定要打开摄像机的名称,默认值是CAM0。 Session Out是相机的一个参考,输出图像数据。 配置并开始抓取图像,抓取循环连续进行,并将抓取到的图像放到缓冲区,可以实现高速图像采集。 Session In/out作用与打开相机里的类似。 3.循环结束时,关闭相机,若循环出错,则关闭相机并报错。 终止采集程序并关闭相机。 当有错误输入时,破坏图像,并释放它在存储器占据的空间。 4.将从相机采集到的数据,以图像的形式输出,并计算图像采集速率和采集数,在前面板输出。 5.在循环中计算采集速率和程序运行速率,控制采集时间。 本部分与stop按钮以及错误三者共同控制条件的运行,当三个条件中的任意一个为真时,循环都会终止。 显示从指定起始时间起,已经用去的时间,达到目标时间后会重置。“已用时间(s)”可以输出程序运行的时间。将已用时间与设置时间进行比较,当已用时间大于设置时间是条件为真,控制循环停止。 6.在特定的路径保存图像,并通过循环为其命名。

基于Labview的图像采集与处理

目前工作成果: 一、USB图像获取 USB设备在正常工作以前,第一件要做的事就是枚举,所以在USB摄像头进行初始化之前,需要先枚举系统中的USB设备。 (1)基于USB的Snap采集图像 程序运行结果: 此程序只能采集一帧图像,不能连续采集。将采集图像函数放入循环中就可连续采集。

循环中的可以计算循环一次所用的时间,运行发现用Snap采集图像时它的采集速率比较低。运行程序时移动摄像头可以清楚的看到所采集的图像有时比较模糊。 (2)基于USB的Grab采集图像 运行程序之后发现摄像头采集图像的速率明显提高。

二、图像处理 1、图像灰度处理 (1)基本原理 将彩色图像转化成为灰度图像的过程成为图像的灰度化处理。彩色图像中的每个像素的颜色有R、G、B三个分量决定,而每个分量有255中值可取,这样一个像素点可以有1600多万(255*255*255)的颜色的变化范围。而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其一个像素点的变化范围为255种,所以在数字图像处理种一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征。图像的灰度化处理可用两种方法来实现。 第一种方法使求出每个像素点的R、G、B三个分量的平均值,然后将这个平均值赋予给这个像素的三个分量。 第二种方法是根据YUV的颜色空间中,Y的分量的物理意义是点的亮度,由该值反映亮度等级,根据RGB和YUV颜色空间的变化关系可建立亮度Y与R、G、B三个颜色分量的对应:Y=0.3R+0.59G+0.11B,以这个亮度值表达图像的灰度值。 (2)labview中图像灰度处理程序框图 处理结果:

图像采集系统的制作方法

本技术涉及一种图像采集系统,其能够适用于对不同分辨率、不同图像输出接口的相机,并且具备自检功能,实现对自身系统误差进行检测,大大提高了图像采集工作的工作效率和可靠性。该系统包括相机和上位机;还包括分别与相机和上位机相互通讯的相机通用检测设备;相机通用检测设备包括子板以及母板;子板包括第一基板、设置在第一基板上的N个相机接口、N个接口芯片、N个电平转换芯片以及第一电连接器;母板包括第二基板、设置在第二基板上的电源模块、第二电连接器、FPGA芯片、SDRAM芯片、串行UART接口以及数据传输接口;第一电连接器和第二电连接器是板间电连接器,通过这两个电连接器将第一基板和第二基板互联起来。 技术要求 1.一种图像采集系统,包括相机和上位机;其改进之处在于:还包括分别与相机和上位机相互通讯的相机通用检测设备; 相机通用检测设备包括子板以及母板; 子板包括第一基板、设置在第一基板上的N个相机接口、N个接口芯片、N个电平转换芯片以及第一电连接器; 母板包括第二基板、设置在第二基板上的电源模块、第二电连接器、FPGA芯片、SDRAM芯片、串行UART接口以及数据传输接口; 第一电连接器和第二电连接器是板间电连接器,通过这两个电连接器将第一基板和第二基板互联起来; 相机图像输出接口与第一基板上的接口芯片、相机接口、电平转换芯片电连接,用于对图像数据进行传输和处理; 第二基板上的SDRAM芯片、串行UART接口以及数据输出接口均与FPGA芯片电连接; 串行UART接口与上位机电连接用于接收上位机发送的控制指令,数据输出接口与上位机通过千兆以太网实现物理连接,通过标准的UDP协议实现相互通讯; 电源模块用于给相机供电。 2.根据权利要求1所述的图像采集系统,其特征在于: 所述FPGA芯片上运行的模块包括:图像接口控制模块、图像数据缓存模块、虚拟相机控制模块、以太网数据打包模块、以太网发送模块、SDRAM控制模块以及UART模块; 图像接口控制模块针对不同的接口的相机产生不同的时序接口波形,控制接口芯片完成相机图像数据的正确采集; 图像数据缓存模块将采集到的图像数据缓存到FPGA内部的FIFO中,并在缓存到特定FIFO深度的时候,通知以太网数据打包模块读取FIFO内部的数据,并按照协议进行打包; 虚拟相机控制模块根据上位机的指令设置,产生不同分辨率的15个虚拟相机图像,且在同一时刻,只产生一种虚拟相机图像用于对相机自身进行检测; 以太网数据打包模块根据上位机的指令设置,选择“图像数据缓存模块”或者“虚拟相机控制模块”的其中一个,读取其中的数据进行以太网数据打包;

K60图像采集程序

#include "MK60N512VMD100.h " /* include peripheral declarations */ #include "includes.h" #include "hw_uart.h" #define GPIO_PIN_MASK 0x1Fu //0x1f=31,限制位数为0--31有效 #define GPIO_PIN(x) (((1)<<(x & GPIO_PIN_MASK))) //把当前位置1 uint8 Date_Buffer[50][50]={0xff,0xff,0xff,0xff}; uint8 comond[4]={0x00,0xff,0x01,0x00}; volatile uint32 count=0; volatile uint32 flag=0; //give some delay~~ void delay() { int i =0; int j=0; for(i=0;i<1000;i++) for(j=0;j<1000;j++) asm("nop"); } //GPIO中断服务函数,每次中断P1P2 LED 常亮 void b_irq (void) { DisableInterrupts; //禁止总中断 PORTB_ISFR=1<<9; // Clear the PTB9 interrupt flags enable_irq(89); EnableInterrupts; } void c_irq(void) { uint8 *p=&Date_Buffer[count][0]; DisableInterrupts; //禁止总中断 PORTC_ISFR=1<<8; // Clear the PTC8 interrupt flags //GPIOA_PDOR &= ~GPIO_PDOR_PDO(GPIO_PIN(14)); //IO口输出低电平,亮 //delay();//暂停 // GPIOA_PDOR |= GPIO_PDOR_PDO(GPIO_PIN(14)); //IO口输出高电平,灭// delay();//暂停 *p++=GPIOB_PDIR&0xff; *p++=GPIOB_PDIR&0xff; *p++=GPIOB_PDIR&0xff; *p++=GPIOB_PDIR&0xff; *p++=GPIOB_PDIR&0xff; *p++=GPIOB_PDIR&0xff; *p++=GPIOB_PDIR&0xff; *p++=GPIOB_PDIR&0xff;

图像采集系统设计

DSP实习报告 题目:图像采集系统的设计 班级:xxx 姓名:xxx 学号:xxx 指导老师:xxxx

目录 一.实习题目 (3) 二.实习背景知识 (3) 三.实习内容 (5) 四.实习程序功能与结构说明 (8) 六.实习心得 (19)

一、实习题目 图像采集系统的设计 二、实习目的: 1、熟练掌握数字信号处理的典型设计方法与技术手段; 2、熟悉D6437视频输入,输出端的操作及编程。; 3、掌握常用电子仪器设备的使用方法; 4、熟悉锐化变换算法。 三、实习背景知识 1、计算机 2、CCS3.3.软件 3、DSP仿真器 4、EL_DM6437平台 EL-DM6437EVM是低成本,高度集成的高性能视频信号处理开发平台,可以开发仿真达芬奇系列DSP应用程序,同时也可以将该产品集成到用户的具体应用系统中。方便灵活的接口为用户提供良好的开放平台。采用该系列板卡进行产品开发或系统集成可以大大减少用户的产品开发时间。板卡结构框图如图所示:

板卡硬件资源: TMS320DM6437 DSP ,可工作在400/600 MHz; 2 路视频输入,包括一个复合视频输入及一个S端子视频输入; 保留了视频输入接口,可以方便与CMOS影像传感器连接; 3 路视频输出,包括2路复合视频,一路S端子输出; 128MByte 的DDR2 SDRAM存储器,256MBit的Nor Flash存储器;用户可选的NAND Flash接口; 可选的256K字节的I2C E2PROM; 1个10M/100Mbps自适应以太网接口; 1 路立体声音频输入、1路麦克风输入,1路立体声音频输出; USB2.0高速接口,方便与PC连接; 1个CAN总线、1个UART接口、实时时钟(带256Byte的电池保持RAM);4个DIP开关,4个状态指示LED; 可配置的BOOT模式; 10层板制作工艺,稳定可靠; 标准外部信号扩展接口; JTAG仿真器接口; 单电源+5V供电; 板卡软件资源:

摄像头图像采集及处理范文

摄像头采集赛道黑线信息是本系统赛道信息获取的主要途径,本章将从摄像头工作原理、图像采样电路设计、和采样程序流程图三个方面进行介绍。 8.1 摄像头工作原理摄像头常分为彩色和黑白两种摄像头,主要工作原理是:按一定的分辨率,以隔行扫描的方式采样图像上的点,当扫描到某点时,就通过图像传感芯片将该点处图像的灰度转换成与灰度成一一对应关系的电压值,然后将此电压值通过视频信号端输出。 在示波器上观察可知摄像头信号如图8.1所示。摄像头连续地扫描图像上的一行,就输出一段连续的电压视频信号,该电压信号的高低起伏正反映了该行图像的灰度变化情况。当扫描完一行,视频信号端就输出一低于最低视频信号电压的电平(如0.3V),并保持一段时间。这样相当于,紧接着每行图像对应的电压信号之后会有一个电压“凹槽”,此“凹槽”叫做行同步脉冲,它是扫描换行的标志。然后,跳过一行后(因为摄像头是隔行扫描的方式),开始扫描新的一行,如此下去,直到扫描完该场的视频信号,接着就会出现一段场消隐区。此区中有若干个复合消隐脉冲(简称消隐脉冲),在这些消隐脉冲中,有个脉冲,它远宽于(即持续时间长于)其他的消隐脉冲,该消隐脉冲又称为场同步脉冲,它是扫描换场的标志。场同步脉冲标志着新的一场的到来,不过,场消隐区恰好跨在上一场的结尾部分和下一场的开始部分,得等场消隐区过去,下一场的视频信号才真正到来。摄像头每秒扫描25 幅图像,每幅又分奇、偶两场,先奇场后偶场,故每秒扫描50 场图像。奇场时只扫描图像中的奇数行,偶场时则只扫描偶数行。 8.2 图像采样电路设计在本次比赛中赛道仅由黑白两色组成,为了获得赛道特征,只需提取探测画面的灰度信息,而不必提取其色彩信息,所以本设计中采用黑白摄像头。型号为: XB-2001B,分辨率为320*240。为了有效地获取摄像头的视频信号,我们采用LM1881提取行同步脉冲,消隐脉冲和场同步脉冲,电路原理图8.2所示。将视频信号通过一个电容接至LM1881的2脚,即可得到控制单片机进行A/D采样的控制信号行同步HS与奇偶场同步号 ODD/EVEN。

基于FPGA的图像采集系统设计毕业论文

基于FPGA的图像采集系统设计 前言 随着科技社会的发展,图像采集系统在日常生活、工业生产、国家安全等众多领域得到广泛的应用,具有广阔的应用前景和研究价值。采用FPGA进行设计的图像采集系统有良好的扩展性能和相对稳定的硬件结构。主要工作如下: 1)分析图像采集和图像处理的原理和特点,设计硬件电路的原理图,完成系统PCB板图的设计。 2)针对FPGA进行内部功能模块的划分,使用Verilog HDL硬件描述语言进行设计。 3)利用SOPC Builder 完成NIOS处理器软核及其外设的创建和配置。 4)根据FPGA内部硬件电路的特点,选择适合FPGA的算法,并对算法进行优化。 5)在NIOS II IDE环境下用Verilog HDL语言编写图像传感器控制、图像采集、SRAM读写控制、图像显示等程序,实现完整的图像采集系统功能。 1课题分析 1.1 选题背景(含国内外相关研究综述及评价)与意义 EDA技术的发展和应用普及性越来越高,已经涉及到现代电子产品设计的各个系统、各个领域中。之所以有这样的广泛应用,主要得益于可编程逻辑器件的长足发展和日益成熟,可编程逻辑器件(Programmable Logic Device, PLD)是一种半定制集成电路,在其内部集成了大量的门和触发器等基本逻辑单元电路,通过用户编程来改变PLD内部电路的逻辑关系或连线,从而得到所需要的电路设计功能。这种新型逻辑器件,不仅速度快、集成度高,能够完成用户定义的逻辑功能,还可以加密和重新定义编程,其允许编程次数可以达到上万次。可编程逻辑器件的出现,大大改变了传统数字系统设计方法,简化了硬件系统、降低成本、提高系统的可靠性、灵活性。因此,自20世纪70年代问世以后,PLD受到广大工程师的青睐,被广泛应用于工业控制、通信设备、仪器仪表和医疗电子仪器等众多领域,为EDA技术开创了广阔的发展空间。 VGA作为一种标准的显示接口,在视频和计算机领域得到了广泛的应用。VGA图像信号发生器是电视台、电视机生产企业、电视维修人员常用的仪器,其主要功能就是产生标准的图像测试信号。对VGA而言,其主要应用在工业控制领域,通过VGA接口实现将信息、图像、文字等内容显示各种VGA显示器上,为客户提供一种完美的显示界面,也是目前重要的显示终端。本次实验设计主要是基于FPGA芯片为处理器,利用硬件描述语言完成VGA的时序控制,并利用相应的实验平台,进行设计验证,基本实现了VGA 的彩条信号和图像显示效果,达到了整个设计目标和要求。

图像采集处理基础实验

图像采集处理基础实验 班级:14060242 学号:1406024248 姓名:张新雨

一、实验目的 1、了解摄像头OV9655的功能及其接口的设计方法; 2、用硬件描述语言编程实现OV9655接口电路,能够实时采集图像数据; 3、能够识别特定的黑白图像块,并通过LED的亮、灭进行表示。 二、实验器材 1、台式计算机 1台; 2、可编程逻辑器件实验软件1套; 3、可编程逻辑器件开发套件1套; 4、OV9655转接板1套。 三、实验说明 1、台式计算机用于向可编程逻辑逻辑器件实验软件提供编程、仿真及下载 平台; 2、可编程逻辑器件实验软件硬件描述语言的编程、仿真及下载提供平台; 3、可编程逻辑器件开发套件为本实验提供硬件平台; 4、OV9655转接板用于OV9655与开发套件的连接。 四、实验原理 1、OV9655作为一种高分辨率摄像头,具有如下特性: 1)工作电压低,灵敏度高,轻便易携; 2)支持标准的SCCB接口; 3)支持输出RGB、YUV、YCbCr格式数据; 4)支持多种分辨率,包括SXGA(1280×1024)、VGA(640×480)等; 5)支持多种自动图像控制功能,包括自动曝光控制、自动增益控制,自动白平衡等; 6)支持视频缩放等。 2、 OV9655主要引脚说明: 1)PWDN:掉电模式选择引脚; 2)RESETB:复位引脚; 3)PCLK:像素时钟输出引脚; 4)XVCLK1:系统时钟引脚; 5)HREF:行同步信号;

6)VSYNC:场同步信号; 7)SIO_C:SCCB接口时钟信号; 8)SIO_D:SCCB接口数据信号; 9)D[7:0]:像素点数据信号。 3、OV9655操作说明: 在摄像头正常工作之前,必须配置好相应的寄存器才能使摄像头完成指定的功能,如配置摄像头的像素输出时钟、自动控制功能等。通过标准的SCCB时序就能配置,SCCB时序图如图1所示。 图1 此次实验中,将摄像头的输出信号配置成RGB565格式信号,其数据输出时序图如图2所示,图中为一行像素数据的时序,再配合场同步信号就能读取摄像头的输出信号,场同步信号在数据有效时地变低,在一帧数据结束后变高。 图2 由于RGB565格式数据有十六位,而当OV9655的输出信号配置成RGB565格式时的数据位为8为,所以每个像素点的数据需要两个时钟信号才能读取完成,

实时图像采集系统的设计与实现

实时图像采集系统的设计与实现 引言 随着数字多媒体技术的不断发展,数字图像处理技术被广泛应用于身份识别、电视会议、监控系统、工业检测等各种商用、民用及工业生产领域中。这些数字图像处理系统中,一个共同的特点的就是数据量庞大,尤其是在图像帧率及分辨率要求比较高的场合下,以指纹识别系统为例,图像分辨率的高低直接影响系统的鲁棒性,一般来说,为了能够清晰的辨别指纹中的特征结构,指纹图像需要达到至少500DPI的分辨率。通常,为了能够满足各类手指大小以及采集方式的要求,图像采集系统的尺寸都不可能做得太小(一般在2英寸以上),这就要求图像解析度至少达到1024×768,最好是1280×1024(1.3M),如果要做到实时采集和处理(30F/s),数据量将达到1280×1024×30×8=300Mbit/s。 伴随着超大规模集成电路和DSP处理技术的飞速发展,新的高速CPU和高性能DSP处理芯片不断推出市场,在这些技术的有力支持下,复杂的图像处理算法往往容易实现。与此同时,图像数据采集部分由于缺乏专用芯片的支持,而且受限于系统总线带宽,已经成为数字图像系统中的主要瓶颈所在。 主流的图像采集方式 目前数字图像采集主要采用两种方式: 一种是以专用的数据采集卡,配合PC机的各种高速数据总线如PCI,USB2.0,firewire1394等采集数据。 PC机的优势是拥有大量的高速内存可以用作数据采集时的缓存,而且它的各种数据总线具有比较高的数据传输率,PCI总线的速率为32(Bit)×66=2112Mbit/s,USB2.0的数据传输峰值可以达到480 Mbit/s,firewire也可以达到400Mbit/s的传输速率。问题在于,PC机的体系结构决定了任何外设都只可能是从设备,只能请求总线资源,而不能主动占有。在Windows(或是Linux)这些实时多任务操作系统的调度下,即使在系统不运行其它应用程序的情况下,系统时间片和系统资源也会被操作系统内核和各类外设分享。尤其是PCI总线,包括内存、硬盘在内的很多PC内置设备都会用到PCI,实际留给采集程序的总线带宽将大打折扣。正因为如此,现在基于PC的数据采集设备性能都不太理想,采集1.3M象素图像时只能达到每秒7、8帧的帧率,达不到实时性要求。 另外,对PC机的依赖直接限制了这类系统的应用范围,也间接提高了系统成本。 另一种方法是基于嵌入式DSP和FPGA的采集方法。通过FPGA或CPLD 的控制和调度,利用DSP的数据通道来采集数据。嵌入式平台具有便携性好,成本较低的优势,越来越多的应用到数字图像处理的各个领域。 一个成熟的系统体系结构要求系统内各部分分工明确,同时又具有一定的通用性和可移植性。嵌入式平台上的DSP芯片在数字信号处理方面有着独到的优势,但是通用性能无法和PC机上的CPU相比,通常主要用来处理复杂的运算。实时数据采集属于简单而繁琐的任务,用DSP完成可谓大材小用,势必影响整个系统的性能。即使是某些DSP可以用DMA方式采集数据,但是由于图像的

15个图像采集系统的经典设计应用案例

15个图像采集系统的经典设计应用案例 图像采集是视频信号处理系统的前端部分,正在向高速、高分辨率、高集成化、高可靠性方向发展。图像采集系统在当今工业、军事、医学各个领域都有着极其广泛的应用,如使用在远程监控、安防、远程抄表、可视电话、工业控制、图像模式识别、医疗器械等各个领域都有着广泛的应用。本文为大家介绍的是一些基于不同方案的图像采集系统的设计案例。 基于STM32的嵌入式双目图像采集系统设计 本文基于嵌入式的图像采集系统选择了意法半导体(ST)公司生产的 STM32F103ZET6芯片为主控芯片,FIFO结构的AL422B芯片实现图像数据缓存,SD卡实现图像存储以及四线制电阻触摸屏实现外部控制。实现通过OV7670双摄像头采集图像数据,经主芯片控制存储、显示。 基于TMS320F2812的视频图像采集系统的设计 本设计采用DSP的片上ADC实现图像采集,用DSP和CPLD搭建数据采集系统时,不必外接专业的图像采集芯片,避免了复杂的硬件设计,同时提供了足够的处理能力。本设计采用TI公司的TMS320F2812芯片采集图像,并搭建TMS320C6416t 处理图像,实现了基于DSP的视频图像采集。 基于FPGA的嵌入式图像采集系统设计 本文实现了一种基于CycloneII系列FPGA与视频信号处理芯片SAA7113H的嵌入式图像采集系统。系统结构简单、系统稳定、功耗低、成本低、速度快以及接口方便,可以满足视频监控系统等的需要。图像采集系统中采用FPGA作为采集控制部分,可以提高系统处理的速度及系统的灵活性和适应性,对于不同的视频图像信号,只要在FPGA内对控制逻辑稍作修改,便可实现信号采集。 基于CPLD的线阵CCD图像采集系统 介绍了一种基于CPLD的图像采集系统,详细论述了线阵CCD的驱动方法、图像信号的处理与传输,并给出了测试结果。此系统很好地完成了高速运动状态下的图像采集工作。 基于TMS320F206 DSP的图像采集卡设计方案 在利用电话线传输视频图像这一低比特率多媒体通信领域中,如果选用图像处理的专用芯片,都会使产品价格大幅度标升。本文介绍的采用TI公司的低档DSP 芯片TMS320F206和视频A/D芯片TLC5510的图像采集卡,则为低比特率多媒体通信提供了一个廉价的解决方案。 基于CCD星载相机图像采集电路设计与实现 本文中的CCD相机图像采集电路其CCD传感器接收前端光学系统的成像,偏压电路为CCD传感器提供必需的偏置电压,可编程逻辑器件产生的时序脉冲经过驱动电路对CCD进行控制采集,输出保护电路可对CCD进行有效地防护保护,预处理电路对CCD输出的带噪模拟信号进行处理后便于后续电路使用。

基于单片机的图像采集系统设计

目录 0 前言 (1) 1总体方案设计 (1) 2 系统硬件设计 (3) 3 软件设计 (9) 3.1软件设计概述 (9) 3.2程序流程图 (9) 3.3子程序模块设计 (10) 4系统调试及结果分析 (11) 5结论及进一步设想 (14) 参考文献 (14) 课程设计体会 (15) 附录1 元件清单 (16) 附录2 系统电路图 (17) 附录3 源程序 (18)

基于单片机的图像采集系统 刘杰薇沈阳航空航天大学自动化学院 摘要:传统的工业级图像处理采集系统大多是由CCD摄像头、图像采集卡和PC机组成,虽已得到了广泛的应用,但是它具有结构复杂,成本高,体积大,功耗大等缺点。随着单片机的迅速发展,开发一种智能控制及智能处理功能的微型图像处理采集系统成为可能,并且也克服了传统图像处理采集系统的诸多缺点。 本设计的图像采集系统采用AT89C51单片机为中心器件,利用74LS373寄存器、62256存储器。将软、硬件有机地结合起来,使得系统能够实现对摄像头传输的图像信号的采集,并保存在外置存储芯片中。其中软件系统采用C语言编写程序,包括延时程序、地址顺延程序等,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。 关键字:单片机;图像采集;数字摄像头 0前言 近年来随着科技的飞速发展,单片机的应用正在不断的走向深入,同时带动着传统控制检测日新月异更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面的知识是不够的,还要根据具体的硬件结构,以及针对具体的应用对象的软件结合,加以完善。数字图像采集由于其大数据量通常采用DSP等高速处理器来实现。在某些领域方面图像实时性的要求并没有那么高,因此,本文采用STC89C51单片机作为控制器进行图像采集。 1总体方案设计 方案一: 由于C51单片机的RAM存储容量有限,而且受到C51单片机的IO工作频率的限制,直接通过C51单片机采集完整一帧的数字信号很难实现。因此,在C51单片机和数字摄像头之间加入一个先进先出存储器,由PC端通过串口控制C51单片机启动采集信号,采集一帧数据先放入存储器,然后单片机从存储器读出数据并通过串口发送至PC显示。整体设计框图如下:

摄像头图像采集程序与分析

打开摄像头: case IDM_OPENCAMERA: if(capDriverConnect(hwndCap, 0)==TRUE) { capDriverGetCaps(hwndCap , &CapDriver ,sizeof (CAPDRIVERCAPS) ); if (CapDriver.fHasOverlay) capOverlay(hwndCap ,TRUE); else { capPreviewRate(hwndCap ,66) ; capPreview(hwndCap, TRUE) ; } } else { MessageBox(hwndCap,"打开摄像头错误!\n 确定摄像头是否已连接","错误 ",MB_OK); }break; //采集,捕捉摄像头单帧图像 case IDM_CAPTUREIMG: capGrabFrame( hwndCap); break; //保存摄像头采集的图片 case IDM_CAPIMGSA VE: MenuOpenDlg(hwnd,"视频采集保存对话框","save"); capFileSaveDIB(hwndCap,TempName); break;

//VideoCapture.cpp #include #include #include #include #include "VideoCapture.h" #include "resource.h" char TempName[256]; HWND hwndCap; HWND hwndSetCapStutas; CAPDRIVERCAPS CapDriver; CAPSTATUS CapStat; 2 / 17 int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd) { if(DialogBox(hInstance,(LPCSTR)IDD_DIALOG1,NULL,DlgProc)==-1) MessageBox(NULL,"对话框建立错误!","错误",MB_OK); return 0; } BOOL CALLBACK DlgProc(HWND hdlg,UINT message,WPARAM wParam,LPARAM lParam) { RECT rect; switch(message)

智能车模拟摄像头图像采集方法详解

智能车模拟摄像头 图像采集方法详解 --By LastRitter superyongzhe@https://www.360docs.net/doc/9114208621.html, https://www.360docs.net/doc/9114208621.html, 2009年11月16日

目录 目录 (2) 一、智能车程序的组成部分 (3) 二、采集方案选择 (4) 三、PAL信号格式 (5) 四、采集流程详解 (7) 五、部分源代码讲解 (11)

一、智能车程序的组成部分 基于CCD或者CMOS模拟摄像头的智能车程序主要包含以下部分: --图像,速度,加速度等数据采集; --数字图象处理,从图像中获取赛道信息; --以赛道信息,速度,加速度等传感器数据为输入参数进行自动控制,有PID,棒棒,模糊控制等算法。 --调试模块,要能将车的行驶状态等数据显示出来,主要有串口,液晶。最好还要有设置参数的按键,设计良好的调试模块能大大的加速我们的调试过程,不要觉得是浪费时间。

二、采集方案选择 对于摄像头图像采集,也可以用OV6620数字摄像头模块,或者使用高速外部AD进行采集。而在这篇文章中我主要要讲的是使用PAL制式黑白摄像头和单片机片内部AD来进行图像采集。另外根据摄像头的安装方式不同,也有旋转90度进行采集的。对于整个程序的流程也有很多不同,有采完一幅图像后进行处理的,也有采集一行就进行处理的。 这都是大同小异的地方,我在这里只讲旋转了90度,同时是采集完整一副图像后再处理的方案。之所以旋转90度是因为单片机速度的限制,纵向采集的点数比较多,横向的点数少的原因。旋转后可以解决这个问题,但是付出的代价是只能一整幅图像采集完后才能进行图像处理,增加了时间延迟。这是我当初选用的方案,但我现在并不建议使用这种方案,当车的速度很快时,这个时间延迟会很难以忍受的。

CCD图像采集 程序---详细注释,适合新手

近几天看到论坛里有很多网友遇到CCD图像采集的麻烦,我在最开始的时候也为这个烦恼过,由于本人比较菜,在度过大概半个月的绝望日夜后,在刚准备放弃时突然发现我已经采集到正确的图像了。特再次分享,希望能解决大家当前遇到的麻烦。 在采集图像之前,我们首先要知道摄像头输出信号的特性。目前的模拟摄像头一般都是P AL制式的,输出的信号由复合同步信号,复合消隐信号和视频信号。其中的视频信号才是真正的图像信号,对于黑白摄像头,图像越黑,电压越低,图像越白,电压越高。而复合同步信号是控制电视机的电子枪对电子的偏转的,复合消隐信号是在图像换行和换场时电子枪回扫时不发射电子。由于人眼看到的图像大于等于24Hz时人才不会觉得图像闪烁,所以P AL制式输出的图像是25Hz,即每秒钟有25幅画面,说的专业点就是每秒25帧,其中每一帧有625行。但由于在早期电子技术还不发达时,电源不稳定,容易对电视信号进行干扰,而交流电源是50Hz所以,为了和电网兼容,同时由于25Hz时图像不稳定,所以后来工程师们把一副图像分成两场显示,对于一幅画面,一共有625行,但是电子枪先扫描奇数场1,3,5.....,然后再扫描2,4,6.....,所以这样的话,一副图像就变成了隔行扫描,每秒钟就有50场了。其中具体的细节请参考这个网站 电视原理与系统 https://www.360docs.net/doc/9114208621.html,/zsb/zjx/zjx09/zjx090000.htm 只用看前面的黑白全电视信号和P AL制式就可以了(当然如果感兴趣可以全部看完)。 通过上面的内容如果你对P AL制式信号了然于心,那么就可以开始图像的采集了,P AL输出的信号有复合同步信号,复合消隐信号和视频信号。那么我们首先就是要从这三种信号中分理出复合同步信号,复合消隐信号和视频信号,以便我们对AD采样到的值进行存储,从而形成一幅画面。具体如何分离,我们使用的是LM1881视频同步分离器件,具体的硬件连接请参看论坛内相关文章(论坛里有介绍LM1881的文章,自己搜吧,我不重复了)。 分离出行场同步,奇偶场信号后,就把他们接到单片机的外部中断口,产生中断,在中断服务程序中对AD采集到的数据进行图像存储,从而形成一个二维数组的数字图像。 下面就说说图像采集方案,方法有多种,但我使用的方案是在行终端中读取A D采样的灰度值,在场同步中交换图像采集和处理缓存指针,并对图像进行处理,然后控制小车,在主函数中只有初始化和键盘扫描和串口输出函数。这样做效率比较高,而且可以把调试和图像采集处理分开,变成起来比较方便。 大家遇到的还有一个很棘手的问题可能是AD采样频率该设置多大呢?建议大家先通过PLLL超频,然后把AD时钟频率设置的高点才行。 下面就把我的代码贴给大家看看吧。

用Labview实现图像采集

用L a b v i e w实现图像采 集 Last revision on 21 December 2020

用L a b v i e w实现图像采集 一、程序功能: 1.通过选择相机实现电脑摄像头或CCD连续图像采集。 2.控制图像采集时间。 3.显示图像采集速率和程序运行时间。 4.给采集到的图像命名并保存到特定的文件夹。 二、程序介绍: 1.前面板(控制面板) 要求:实现连续图像采集所需要的软件条件: 1.安装VAS(Vision Acquisition Software) 2.如果要实现CCD图像采集,需安装CCD的驱动程序 操作说明: 1.选择相机名称 2.设置采集时间 3.运行VI 相机名字:通过下拉菜单选择相机,包括电脑摄像头和USB接口的CCD设备采集速率。采集速率:实时显示采集图像的速率。 缓冲数:实时显示从程序运行开始采集图像的数目。 设置采集时间:根据需求设置采集时间。默认值为0,只采一幅图像。 采集进行时间:程序已经运行的时间。 设置保存路径:指定图片的保存位置。如果不设置,只进行实时采集不保存图像。Stop:采集停止。 图像:显示图像信息。左侧为兴趣区域选择工具,作用是使研究区域更加醒目,便于观察。从上到下依次是: 实现图形的放大 显示鼠标位置,不进行其他操作 拖动图片 选择兴趣区为一点 选择兴趣区为矩形包围的区域,两边为水平和竖直 选择兴趣区为矩形包围的区域,矩形方向任意

选择兴趣区为折线 选择兴趣区为折线区域(所画折线自动闭合) 选择兴趣区为曲线 选择兴趣区为曲线保卫的区域 选择兴趣区为椭圆 选择兴趣区为圆环 以折线兴趣区域为例,如图 2.后面板(程序框图) 1.循环,将采集、保存、计时等功能循环进行。 在循环中,获取最新的图像并输出。 2.循环的初始条件设置,选择相机,并将相机作为循环的输入。 和前面版里的相机名字相对应,作用是选择相机。 打开一个照相机,查询摄像机功能,装载的照相机的配置文件,并创建一个唯一的参考到摄像机。 Camera Control Mode照相机控制模式,在控制器模式打开相机,配置和获取图像数据。 Session In指定要打开摄像机的名称,默认值是CAM0。 Session Out是相机的一个参考,输出图像数据。 配置并开始抓取图像,抓取循环连续进行,并将抓取到的图像放到缓冲区,可以实现高速图像采集。 Session In/out作用与打开相机里的类似。 3.循环结束时,关闭相机,若循环出错,则关闭相机并报错。 终止采集程序并关闭相机。 当有错误输入时,破坏图像,并释放它在存储器占据的空间。 4.将从相机采集到的数据,以图像的形式输出,并计算图像采集速率和采集数,在前面板输出。 5.在循环中计算采集速率和程序运行速率,控制采集时间。 本部分与stop按钮以及错误三者共同控制条件的运行,当三个条件中的任意一个为真时,循环都会终止。 显示从指定起始时间起,已经用去的时间,达到目标时间后会重置。“已用时间(s)”可以输出程序运行的时间。将已用时间与设置时间进行比较,当已用时间大于设置时间是条件为真,控制循环停止。 6.在特定的路径保存图像,并通过循环为其命名。 以BMP格式将图像下写入文件,通过下拉菜单也可以使文件的格式为JPEG、JPEG2000、PNG、PNG、TIFF等格式。 创建文件的保存路径。

相关文档
最新文档