首页> 中国专利> 一种甚高精度图像处理VLSI验证方法

一种甚高精度图像处理VLSI验证方法

摘要

一种通用的甚高精度图像处理VLSI验证方法,首先根据当前相机类型进行参数配置,获取相机源图像并转换得到TEXTIO格式的原图数据和标准解数据,然后在多个重复的行有效周期中像素时钟的有效沿依次将原图数据发送至相机的数据总线或者数据信号线上,对数据总线或者数据信号线上的数据进行甚高精度图像处理及读取,得到TEXTIO格式的甚高精度图像处理结果数据,最后将处理结果数据与标准解数据进行比对,得到误差像素的位置、灰度值差值,进而得到调整阈值分布后的图像及验证结果。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-05-24

    授权

    授权

  • 2017-03-01

    实质审查的生效 IPC(主分类):H04N5/232 申请日:20160909

    实质审查的生效

  • 2017-02-01

    公开

    公开

说明书

技术领域

本发明涉及图像处理技术领域,特别是一种甚高精度图像处理VLSI验证方法。

背景技术

传统的甚高精度成像超大规模集成电路(very large scale integration)VLSI产品涉及的图像数据量大,一般为1024*1024至2048*2048像素大小,图像处理仿真时间长,进行一副图像的功能仿真大约需要7小时的时间,时序仿真大约需要6天左右的时间,且不同相机制式不同,加之VLSI工程实现与理论计算存在数据舍入误差,传统的测试床TESTBENCH仿真断言语句定制编码及人工判读的验证方式将耗费大量人力及时间成本,主要存在问题有如下几个方面:

第一,目前甚高精度成像器类VLSI产品型号种类和数量不断上升,不同任务采用不同类型相机,每次都要针对不同需求和不同图像制式需求单独设计TESTBENCH,仿真代码复用率低,仿真验证效率低下。经分析发现,虽然不同相机制式不同,但基本都由行场同步、像素时钟、数据等基本信号构成,差别仅在数据位宽、行场信号有效电平高低、图像大小存在差异,因此可以针对不同制式相机的应用需求进行参数配置,直接生成不同制式的模拟成像器及图像采集器的代码仿真文件,使其具有设计通用性,提高了仿真文件编码效率及编码正确性。

第二,算法工程师提供的源图像根据成像器类型不同制式有所不同,且依据个人编码习惯不同存在存图格式差异,源图像需要进行格式整理后符合VHDL-TEXTIO格式标准,才能加入TESTBENCH仿真平台使用,因此可以将不同格式的源图像依据配置数据进行图像格式转换,生成符合VHDL-TEXTIO标准的数据文件加入TESTBENCH仿真平台,与仿真验证平台生成的模拟成像器仿真代码结合使用,完成模拟成像器的功能。

第三,图像处理算法在算法原理仿真阶段多使用MATLAB及VC实现,一般采用64bit位宽双精度浮点格式进行运算,而实际VLSI实现受资源所限,仅能使用不高于32bit位宽的定点运算实现。该数据舍入误差的影响将使VLSI工程实现结果与算法仿真标准解不可能完全一致,所以需要对算法仿真标准解和VLSI工程实现结果的误差进行衡量,评估设计是否满足任务需求,依靠TESTBENCH断言语句将结果图像与标准解直接进行布尔判决将频繁报错,无法直观反映图像处理的正确性。

第四,HDL代码仿真不能直观获取图像,并且目前显示器只能显示8bit位宽RGB图像,而甚高精度相机产品一般为12bit或14bit位宽,不能直接通过显示器观察成像效果。

发明内容

本发明解决的技术问题是:克服现有技术的不足,提供了一种甚高精度图像处理VLSI验证方法。

本发明的技术解决方案是:一种甚高精度图像处理VLSI验证方法,包括如下步骤:

(1)获取当前进行甚高精度图像处理的图像对应的相机类型,如果相机类型为CCD模式,则获取CCD模式相机的行信号HEN有效电平、场信号LEN有效电平、像素时钟、单帧图像对应行数H、单帧图像对应列数L、行消隐期对应像素时钟周期个数FOT、每像素占用字节个数c,如果相机类型为APS模式,则获取APS模式相机像素时钟、单帧图像对应行数H、单帧图像对应列数L、每像素占用字节个数c,其中,H、L、FOT、c均为正整数;

(2)获取相机拍摄图像并作为源图像,对源图像数据按字节读出并转换为二进制数据格式,每L*c个字节数据进行一次换行,最后以TXT文本格式存储,直至源图像数据被遍历,得到TEXTIO格式原图数据,转入步骤(3);同时对源图像进行图像仿真后得到标准解图像,对标准解图像按字节读出并转换为二进制数据格式,每L*c个字节数据进行一次换行,最后以TXT文本格式存储,直至标准解图像被遍历,得到TEXTIO格式标准解数据,转入步骤(5);

(3)如果相机类型为CCD模式,当甚高精度图像处理VLSI产生的拍图启动信号上升沿到来时,设置场信号LEN有效并进入行消隐期,等待FOT*PCLK_T像素时钟长度后结束行消隐期,同时将行信号HEN置为有效,控制行信号HEN持续L*PCLK_T像素时钟长度后置为无效,完成一个行有效周期,重复H个行有效周期后,设置场信号LEN为无效,在H个行有效周期中像素时钟的有效沿依次将TEXTIO格式原图数据发送至CCD模式相机的数据总线并转入步骤(4),其中,PCLK_T为像素时钟长度;所述的拍图启动信号为宽度大于2个像素时钟的高脉宽信号,当为上升沿时,代表发送至CCD模式相机的图像数据传输开始;

如果相机类型为APS模式,则控制甚高精度图像处理VLSI产生帧请求信号F_Q信号,当帧请求信号F_Q信号上升沿到来时,设置场标识位V_L有效并进入行消隐期,等待FOT*PCLK_T像素时钟长度后结束消隐期,同时将行标识位V_H置为有效,持续L*PCLK_T时钟长度后置行标识位V_H为无效,完成一个行有效周期,重复H个行有效周期后,设置场标识位V_L为无效,在H个行有效周期中像素时钟有效沿将TEXTIO格式原图数据进行并串转换后发送至APS模式相机数据信号线上,并转入步骤(4);

(4)对CCD模式相机的数据总线或者APS模式相机数据信号线上的数据进行甚高精度图像处理,然后在像素时钟的上升沿读取采集处理后数据信号,每读取L*c个字节进行换行存储,最后存储为txt格式,得到TEXTIO格式的甚高精度图像处理结果数据并转入步骤5;

(5)将TEXTIO格式的甚高精度图像处理结果数据与步骤(2)中生成的TEXTIO格式标准解数据进行比对,输出误差像素的位置、灰度值差值,将误差像素的位置、灰度值差值作为结果对象,并转入步骤(6);所述的误差像素为在甚高精度图像处理结果数据与标准解数据比对过程中,灰度值不相等的像素;

(6)将结果图像中每个像素的数据位宽记为Mbit,设立2M个直方图寄存器,并分别记为标号0,标号1,标号2,…,标号(2M-1),将结果对象中灰度值差值为Z的像素个数存入标号为Z的直方图寄存器,其中,Z∈[0,1,2,…,(2M-1)];

(7)将直方图寄存器按标号从小到大的顺序,然后从标号0直方图寄存器开始依次将直方图寄存器中数据进行累加,当累加值与结果图像中像素总数比为0.1%时,记录最后累加的直方图寄存器标号,并记为Dmin,当累加值与结果图像中像素总数比为99.9%时,记录最后累加的直方图寄存器标号,并记为Dmax

(8)计算得到调整阈值分布后的图像中位置为(x,y)的像素的灰度值g(x,y)为

g(x,y)=00f(x,y)<Dminf(x,y)-DminDmax-Dmin×255Dminf(x,y)Dmax255Dmax<f(x,y)

其中,f(x,y)为TEXTIO格式的甚高精度图像处理结果数据中像素位置为(x,y)的像素的灰度值;

进而得到调整阈值分布后的图像,选取结果数据中灰度值差值的最大值作为误差最大值、灰度值差值的最小值作为误差最小值,然后选取结果数据中灰度值差值的奇异点并进行判断,如果误差最大值、误差最小值、奇异点灰度值差值在[-2,2]内,则当前甚高精度图像处理VLSI验证通过,否则验证不通过。

所述的对源图像进行图像仿真后得到标准解图像的方法为C或MATLAB仿真。

本发明与现有技术相比的优点在于:

(1)本发明验证方法能够根据不同类型制式图像任务需求进行参数配置,进而完成对不同类型制式图像的图像处理VLSI处理结果的验证,与现有技术相比,具有较好的通用性与适用价值;

(2)本发明验证方法与现有技术相比,不仅能够实现源图像及图像处理VLSI处理结果图像的快速比对,还可以对像素数据精度的最大值、最小值、奇异点位置进行统计,实现对图像处理VLSI处理后的图像质量进行评估。

附图说明

图1为本发明甚高精度图像处理VLSI验证方法流程示意图;

图2为本发明甚高精度图像处理VLSI验证方法组织架构示意图;

图3为本发明中控制通道信号帧格式结构示意图。

具体实施方式

本发明提出一种甚高精度图像处理VLSI验证方法,主要采用MATLAB和HDL语言实现,如图1所示为本发明甚高精度图像处理VLSI验证方法流程示意图,如图2所示为本发明甚高精度图像处理VLSI验证方法组织架构示意图,本发明方法具体原理流程及实现架构包括:

(1)参数配置:首先判断相机类型(包括CCD模式相机、APS模式相机)并按照相机类型完成图像制式参数配置,对于CCD模式相机,图像参数包括行信号HEN的有效电平、场信号LEN的有效电平、CCD模式相机像素时钟PCLK的有效沿、单帧CCD模式相机图像对应行数H、单帧CCD模式相机图像对应列数L、CCD模式相机行消隐期对应像素时钟周期个数FOT、数据并串转换终端模式(包括高位在前的大终端、低位在前的小终端)、每像素占用字节个数c。对于APS模式相机,图像参数包括APS模式相机的控制通道信号有效电平、数据通道个数N、训练控制字(APS型相机参数,用于完成图像数据采集窗口的搜索,在控制通道中检测到该训练字序列后,标示当前的图像数据采集窗口可以正确采集图像数据)、单帧图像对应行数H、单帧图像对应列数L、控制通道信号帧格式、行同步字V_H位置、场同步字V_L位置、数据并串转换终端模式(包括高位在前的大终端、低位在前的小终端)、每像素占用字节个数c,每像素占用bit个数k。参数确定并配置完毕后,转入步骤(2)、(3)、(4),其中,控制通道信号为APS模式相机三类接口信号之一,三类接口信号分别为像素时钟信号、数据信号和控制通道信号,控制通道信号为单bit信号线,连续10bit为一个完整传输周期,10bit分别对应行同步字V_H、场同步字V_L和8个保留字,因此控制通道信号帧格式结构如图3所示。

(2)图像数据的TEXTIO格式化:获取相机拍摄图像并作为源图像,同时将源图像进行C或MATLAB算法级仿真得到的理论结果图像作为标准解图像,同时对源图像数据按字节读出,并转换为二进制数据格式,每L*c个字节数据进行一次换行,最后以TXT文本格式存储,直至所有源图像数据被遍历,得到TEXTIO格式原图数据,转入步骤(3);对标准解图像数据按字节读出,并转换为二进制数据格式,每L*c个字节数据进行一次换行,最后以TXT文本格式存储,直至所有标准解图像数据被遍历,得到TEXTIO格式标准解数据,转入步骤(5)。

(3)多模式模拟成像器代码设计方法:设PCLK_T为本发明方法中相机的一个像素时钟周期长度,如果相机类型为CCD模式,当甚高精度图像处理VLSI发送给多模式模拟成像器的拍图启动信号的上升沿到来时,设置场信号LEN有效,同时进入行消隐期,等待FOT个像素时钟后,即FOT*PCLK_T时钟长度后将行信号HEN置为有效,行信号HEN持续L*PCLK_T时钟长度后置为无效,再次进入行消隐期,周而复始,保持两有效行之间的间隔均为FOT*PCLK_T时钟。当经历H(H为正整数)个行有效周期后,设置场信号LEN为无效。如此,可保证当行信号与场信号同时有效时,数据有效时间恰好为H*L*PCLK_T时钟,本发明方法在像素时钟的有效沿,一次将TEXTIO格式原图数据中存储的一字节数据发送至CCD模式相机的数据总线并转入步骤(4),其中,拍图启动信号为一个高脉宽信号,宽度大于2个像素时钟,当检测到其上升沿时,标志着一帧图像传输正式开始,行有效周期指一行图像数据传输(含消隐期)所需的像素周期个数。

如果相机类型为APS模式,则相机接口具备一路像素时钟PCLK,一路控制通道信号(单bit),N路数据信号(每一路均为单bit)。APS模式相机默认状态的配置模式为训练模式,APS模式相机训练模式下,在像素时钟PCLK的每一跳变沿,循环发送并串转化后的单bit训练控制字到APS模式相机的控制通道信号线上。当甚高精度图像处理VLSI发送给多模式模拟成像器的帧请求信号F_Q信号上升沿到来后,APS模式相机从配置模式进入传图模式,控制通道信号按照控制通道帧格式,循环发送并串转化后的单bit行同步字V_H或者场同步字V_L(行同步字V_H为1且场同步字V_L为1标识当前10bit控制通道信号对应的10bit数据为有效数据;行同步字V_H为0且场同步字V_L为1标识当前10bit控制通道信号对应的10bit数据为无效的行消隐期数据;行同步字V_H为0,且场同步字V_L为0标识当前10bit控制通道信号对应的10bit数据为无效数据)到APS模式相机控制通道信号线上。

以k=8bit位宽行场同步字为例,行场同步字中有效信息仅为行标识位V_H(位于第一bit位)及场标识位V_L(位于第二bit位),其余保留位填0,PCLK_T为一个像素对应的像素时钟周期长度,如果相机类型为APS模式且当前配置模式为传图模式,等待FOT个像素时钟后,即FOT*PCLK_T时钟长度后将行场同步字中的行标识位V_H置为有效,且持续L*PCLK_T时钟长度后置为无效,再次进入行消隐期,周而复始,保持行标示位两次置有效之间的间隔均为FOT*PCLK_T时钟,当经历H个行有效周期后,设置行场同步字中场标识位V_L为无效。如此,可保证当行信号与场信号同时有效时,数据有效时间恰好为H*L*PCLK_T时钟,第n个APS模式相机数据通道(设当前通道为n(0<n<N-1))数据分别对应每行中第(n*L/N)至第(n+1)*L/N个数据,当行场标示位有效时,在像素时钟有效沿将对应TEXTIO格式原图数据中存储的数据按小(大)终端并串转换后,放置于第n个APS模式相机数据通道的数据信号线上,并转入步骤(4)。

(4)图像采集代码设计:APS模式下,训练过程完成后,DUT将启动图像处理过程,发送F_Q帧请求信号并进入图像传输模式,CCD模式下直接进入图像传输模式。图像采集代码按配置参数中一帧图像的行数H,列数L以及每像素占用字节个数c进行图像存储,甚高精度图像处理VLSI提供处理后像素时钟信号和处理后数据信号,供图像采集代码存储。在处理后像素时钟信号的上升沿读取处理后数据信号,每读入甚高精度图像处理VLSI输出数据的L*c个字节像素数据进行换行存储,将结果图像以txt文档格式存储到本地硬盘,得到TEXTIO格式的甚高精度图像处理结果数据并转入步骤(5)。

(5)模块集成:将步骤(2)得到的TEXTIO格式标准解数据、步骤(4)生成的甚高精度图像处理VLSI输出数据进行集成,具体方法如下:

a)若当前配置为APS模式,将多模式模拟成像器代码的控制通道信号、像素时钟信号、数据信号与甚高精度图像处理VLSI代码对应信号相连接,作为甚高精度图像处理VLSI的图像数据激励输入。将甚高精度图像处理VLSI的处理后像素时钟信号和处理后数据信号与图像采集代码的采集时钟与采集数据信号线相连,从而对甚高精度图像处理VLSI的处理结果数据进行采集,得到结果图像,并将结果图像与步骤(2)中生成的TEXTIO格式标准解数据进行比对,输出误差像素的位置、灰度值差值,并转入步骤(6);

b)若当前配置为CCD模式,将多模式模拟成像器代码的行信号、场信号、像素时钟信号、数据信号与甚高精度图像处理VLSI代码对应信号相连接,作为甚高精度图像处理VLSI的图像数据激励输入。将甚高精度图像处理VLSI的处理后像素时钟信号和处理后数据信号与图像采集代码的采集时钟与采集数据信号线相连,从而对甚高精度图像处理VLSI的处理结果数据进行采集,得到结果图像,并将结果图像与步骤(2)中生成的TEXTIO格式标准解数据进行比对,输出误差像素的位置、灰度值差值,并转入步骤(6),其中,误差像素为比对中灰度值不相同的像素;

(6)将步骤(5)得到的误差像素的位置、灰度值差值作为结果对象,对结果图像进行直方图统计,方法如下:设结果图像的每个像素数据位宽为M个bit,则需设立标号为0~(2M-1)共2M个直方图寄存器,将TEXTIO格式的结果对象中灰度值差值为Z的像素个数存入标号为Z的寄存器,其中Z∈[0~(2M-1)],0~(2M-1)为结果对象中像素的可能灰度值差值,最后根据以上2M个直方图寄存器的结果,按如下方法进行灰度阈值转化,转化公式如下所示:

g(x,y)=00f(x,y)<Dminf(x,y)-DminDmax-Dmin×255Dminf(x,y)Dmax255Dmax<f(x,y)

其中,Dmin为自适应确定的最小阈值,其获取方法为:按标号从小到大的顺序,从标号为0的直方图寄存器起始,将直方图寄存器中数据进行累加,当累加值与总像素个数占比达到0.1%时,记录当前直方图寄存器标号Dmin,作为自适应确定的最小阈值;Dmax为自适应确定的最大阈值,其获取方法为:按标号从小到大的顺序,从标号为0的直方图寄存器起始,将直方图寄存器中数据进行累加,当累加值与总像素个数占比达到99.9%时,记录当前直方图寄存器标号Dmax,作为自适应确定的最大阈值。f(x,y)为TEXTIO格式的甚高精度图像处理结果数据中像素位置为(x,y)的像素值,g(x,y)为调整阈值分布后的8位宽图像中像素位置为(x,y)的像素值,通过此项处理,可直观的在显示器观察显示源图像及处理结果图像,将原本不可见的图像显示到显示器上来,然后还可以通过报表输出功能通过将标准解数据与处理结果数据做差比对,输出误差最大值,最小值及奇异点位置,当误差最大值、误差最小值、奇异点灰度值差值在[-2,2]以内,当前甚高精度图像处理VLSI验证通过。

本发明说明书中未作详细描述的内容属本领域技术人员的公知技术。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号