一种图像处理系统及其方法

文档序号:7652289阅读:174来源:国知局
专利名称:一种图像处理系统及其方法
技术领域
本发明涉及一种图像处理系统及其方法,尤其涉及一种基于PC Camera(个人电脑摄像头)的图像处理系统及其方法。
背景技术
随着宽带网络的快速发展,PC摄像头正在从家庭应用向工业控制、安防,监控等领域普及。与此同时,基于PC摄像头的图像分析系统也在不断增加新的、越来越复杂的功能以满足市场千变万化的需求,如生物特征识别,三维图像输入和重建等。因此,怎样快速开发出满足市场需求的新的图像处理芯片和图像分析系统是各PC摄像头厂商最为关心的问题。
目前对于图像芯片使用的新的图像算法的开发通常都是先用软件实现,并对软件算法进行测试和验证,测试完成后再将其固化或设计成相应的算法芯片投入市场。由于软件算法和硬件芯片的使用条件和环境差异很大,所以在软件测试通过后将该算法用硬件实现时经常会出现新的问题。而此时对算法的修改和校正将付出大量的时间和昂贵的成本。
此外,目前市场中的图像分析和处理系统功能较为单一,并且无法和摄像头进行有效地交互。图像分析和处理系统一般只能对摄像头进行开/关,转向等简单的操作,无法对摄像头的内部算法进行动态控制。

发明内容
本发明所要解决的技术问题是,克服现有技术中图像分析和处理系统的不足,提供一种能够动态设置PC摄像头所采用的图像算法,并相应地设置PC端所使用的图像处理参数的图像处理系统及其方法。
为了解决上述问题,本发明提供一种图像处理系统,包含通过数据接口相连的摄像头端和PC端;摄像头端包含源图像存储器和对源图像存储器中的图像数据进行处理的第一图像处理模块;PC端包含通过上述数据接口对第一图像处理模块输出的图像数据进行抓图操作的抓图模块;其特征在于,所述摄像头端还包含图像参数寄存器,用于保存第一图像处理模块所需的算法参数;所述PC端还包含第二图像处理模块,用于采用配置参数指定的算法及其子参数对抓图模块输出的图像数据进行处理;图像处理控制模块,用于通过数据接口对所述图像参数寄存器中保存的算法参数和PC端的配置参数进行相应的设置;所述第一图像处理模块使用上述算法参数所指定的算法及其子参数对源图像存储器中的图像数据进行处理并输出。
此外,所述PC端还包含第一存储器、第二存储器和图像验证模块;其中第一存储器,用于保存所述抓图模块输出的图像数据;第二存储器,用于保存所述第二图像处理模块输出的图像数据;图像验证模块,用于对保存在第一存储器和第二存储器中的图像数据进行对比验证操作;所述抓图模块根据配置参数将图像数据输出至第一存储器或第二图像处理模块;所述控制模块还用于启动图像验证模块的所述对比验证操作。
此外,所述PC端还包含图像显示模块,用于显示所述抓图模块和/或第二图像处理模块输出的图像数据。
此外,所述第二图像处理模块还用于采用配置参数指定的算法及其子参数对抓图模块输出的图像数据进行分析,并将分析结果输出至所述图像处理控制模块;所述图像处理控制模块根据上述分析结果修改所述图像参数寄存器中保存的算法参数。
此外,所述算法参数值为空算法,所述第一图像处理模块根据该算法参数值将源图像存储器中的图像数据通过所述数据接口直接输出至PC端。
此外,所述算法参数包含图像处理算法类型、算法子参数;所述配置参数包含图像处理算法类型、算法子参数,抓图模块的输出路径、第二图像处理模块的输出路径。
此外,所述数据接口为双工接口,所述图像参数寄存器为可由PC端进行写操作的寄存器。
此外,本发明还提供一种图像处理方法,应用于包含通过数据接口相连的摄像头端和PC端的图像处理系统,该方法在PC端对摄像头端和PC端所采用的图像算法进行相应的设置,摄像头端根据设置的硬件算法对图像进行处理后,PC端再根据设置的软件算法对摄像头端输出的图像数据进行处理。
此外,该方法包含如下步骤a)PC端对算法参数和配置参数进行设置;b)摄像头端根据上述算法参数采用算法1对采集到的图像数据进行处理并输出至PC端;c)PC端将摄像头端输出的图像数据进行抓图操作,并根据配置参数将抓图操作输出的图像数据采用算法2进行处理;d)PC端对算法参数和配置参数进行修改;e)摄像头端根据修改后算法参数采用算法3对采集到的图像数据进行处理并输出至PC端;f)PC端将摄像头端输出的图像数据进行抓图操作并输出;g)将步骤c)中采用第一软件算法处理后输出的图像数据与步骤f)中抓图操作输出的图像数据进行对比验证或显示;其中,算法2包含待验证算法,算法3由算法1和待验证算法组合而成。
此外,该方法包含如下步骤A)PC端对算法参数和配置参数进行设置;B)摄像头端根据上述算法参数对采集到的图像数据进行处理并输出至PC端;C)PC端将摄像头端输出的图像数据进行抓图操作,并根据配置参数将抓图操作输出的图像数据采用图像分析算法进行处理,并输出分析结果;D)PC端根据上述分析结果修改算法参数。
此外,该方法包含如下步骤A1)PC端对算法参数和配置参数进行设置;B1)摄像头端根据上述算法参数对采集到的图像数据进行处理并输出至PC端;C1)PC端将摄像头端输出的图像数据进行抓图操作,并根据配置参数将抓图操作输出的图像数据进行处理,并显示。
此外,该方法包含如下步骤A2)PC端对算法参数和配置参数进行设置;B2)摄像头端根据上述算法参数将采集到的图像数据输出至PC端;C2)PC端将摄像头端输出的图像数据进行抓图操作,并根据配置参数将抓图操作输出的图像数据进行分析处理,并显示分析结果和/或处理后的图像数据。
本发明通过对摄像头端的图像参数寄存器进行设置,以动态配置摄像头所采用的硬件图像算法,同时对PC端的第二图像处理模块所使用的软件算法进行动态配置,实现了软硬件算法的动态双向验证,图像的动态分析和采集等功能。


图1是本发明实施例图像处理系统的系统结构示意图;图2是本发明实施例图像处理方法的软硬件算法验证流程图;图3是本发明实施例图像处理方法的动态分析流程图。
具体实施例方式
本发明的基本思路是,对PC摄像头中的图像参数寄存器进行动态控制,改变PC摄像头中的图像处理算法,相应地对第二图像处理模块进行配置,以实现软硬件算法验证,图像的动态分析和采集等功能。
下面将结合附图和实施例对本发明进行详细的描述。
图1是本发明实施例图像处理系统的系统结构示意图。
如图1所示,本发明的图像处理系统包含通过数据接口相连的摄像头端和PC端两部分。其中摄像头端包含源图像存储器、第一图像处理模块和图像参数寄存器;PC端包含抓图模块、第一存储器、第二存储器、图像验证模块、图像显示模块、图像处理控制模块和第二图像处理模块。上述数据接口可以是USB(Universal Serial Bus通用串行总线),IEEE(Institute ofElectrical and Electronics Engineers,美国电气及电子工程师学会)1394接口,串口等双工接口。下面将对各模块进行详细说明。
摄像头端源图像存储器,用于保存需由第一图像处理模块进行处理的源图像数据。源图像数据可以是图像传感器(图中未画出)输出的Bayer Pattern(贝尔模式)图像数据,也可以是用于测试的标准图像数据。
第一图像处理模块,用于根据算法参数对源图像存储器中的图像数据进行贝尔模式图像插值运算(即将贝尔模式图像数据转换成RGB等格式的图像数据)、压缩、变换等处理,并将处理过的图像数据通过上述数据接口发送至PC端。
图像参数寄存器,用于保存第一图像处理模块所需的算法参数,如需采用的图像处理算法类型、图像输出格式、算法子参数、图像处理区域信息等。通过对图像参数寄存器的配置和修改,可对第一图像处理模块进行动态配置,改变第一图像处理模块使用的图像处理算法、图像输出格式以及其它相关参数。图像参数寄存器需配置成PC端可写的寄存器。
PC端抓图模块,用于对摄像头端输出的图像进行抓图操作,并根据配置参数将抓图获得的图像数据输出至第一存储器或第二图像处理模块或图像显示模块。
第二图像处理模块,用于根据配置参数,使用其指定的图像处理算法及子参数对抓图模块输出的图像进行处理,并将处理后的图像数据保存至第二存储器或输出至图像显示模块。
第一存储器,用于存储抓图模块输出的图像数据。
第二存储器,用于存储第二图像处理模块输出的图像数据或图像分析结果信息。
图像验证模块,用于对第一存储器和第二存储器中存储的图像数据进行对比验证并输出验证结果。
图像显示模块,用于将抓图模块和/或第二图像处理模块输出的图像数据或图像分析结果显示在显示屏(图中未画出)上。
图像处理控制模块,进一步包括参数配置单元,用于通过上述数据接口配置摄像头中的图像参数寄存器并相应地生成PC端的配置参数。配置参数包含抓图模块的输出路径、第二图像处理模块使用的图像处理、分析算法类型及其子参数、第二图像处理模块的输出路径等。上述配置参数可以以全局变量的形式存在,抓图模块、第二图像处理模块在读取全局变量中包含的相关参数后进行相应的处理;配置参数还可以通过函数参数的形式传递给各模块。
参数设置单元,用于根据第二图像处理模块输出的图像分析结果信息对图像参数寄存器中的算法参数进行设置。
操作控制单元,用于启动图像验证模块的对比验证操作和图像显示模块的显示操作。
上述图像处理算法通常是对RGB、YUV等格式的图像进行的后续处理算法,如噪声消除、亮度调整、饱和度调整等算法,也可以是对贝尔模式图像数据进行处理的算法。
此外,第二图像处理模块也可根据配置参数指定的图像分析算法及其子参数对抓图模块输出的图像数据进行实时分析,并将分析结果输出至第二存储器或图像处理控制模块或图像显示模块。例如,图像处理控制模块将第二图像处理模块中的算法配置成生物特征识别算法,当PC摄像头采集到人脸图像或指纹图像等图像数据时,第二图像处理模块可对该数据进行实时分析,提取特征,或与现有的图像数据进行对比,并将分析结果发送至图像显示模块或图像处理控制模块。第二图像处理模块也可将分析结果发送至第二存储器进行保存。
下面将结合附图对本发明的图像处理方法进行详细描述。通过参数配置本系统可工作于软硬件算法验证模式;动态分析模式;用户定制模式;动态采集模式。其中软硬件算法验证的主要目的是对相同或相似的源图像数据分别采用硬件和软件实现的待验证算法进行处理,并交互验证两者的正确性并对比处理效果。
如图2所示,软硬件算法验证包含如下步骤步骤101图像处理控制模块通过数据接口配置图像参数寄存器,即设置算法参数,将第一图像处理模块采用的算法设置为第一硬件算法;相应地,图像处理控制模块设置PC端的配置参数,将抓图模块的输出路径设置为输出至第二图像处理模块,并将第二图像处理模块采用的算法设置为第一软件算法,将第二图像处理模块的输出路径设置为输出至第二存储器;其中,上述第一软件算法为待验证算法;第一硬件算法为包含一种或多种图像处理算法的辅助算法,可以是对图像传感器输出的图像数据进行的一系列基本变换算法,如将贝尔模式数据转换成RGB数据等,也可以空算法,即不对保存在源图像存储器中的图像数据进行处理而直接输出。由于源图像存储器中通常为图像传感器采集到的贝尔模式的图像数据,而对贝尔模式的图像数据进行后续处理前都需要将其转换为RGB等格式的数据(即进行插值运算),因此,除了需要对插值算法进行对比验证的情况以外,通常辅助算法至少要包含将贝尔模式的图像数据转换成RGB等格式的图像数据的插值算法。
步骤102第一图像处理模块根据图像参数寄存器中的算法参数,将保存在源图像存储器中的源图像数据采用第一硬件算法进行处理,并通过数据接口输出至PC端的抓图模块;步骤103抓图模块对摄像头输出的图像数据进行抓图操作,并将抓图获得的图像数据输出至第二图像处理模块;步骤104第二图像处理模块将抓图模块输出的图像数据采用第一软件算法进行处理,并将处理后的图像数据保存至第二存储器;步骤105图像处理控制模块修改算法参数,将第一图像处理模块采用的算法修改为第二硬件算法;相应地,图像处理控制模块修改配置参数,将抓图模块的输出路径修改为输出至第一存储器;上述第二硬件算法由上述辅助算法和待验证算法组成。
步骤106第一图像处理模块根据图像参数寄存器中设置的算法参数,将保存在源图像存储器中的源图像数据采用第二硬件算法进行处理并输出至PC端的抓图模块;步骤107抓图模块对摄像头端输出的图像数据进行抓图操作,并将抓图获得的图像数据输出至第一存储器;步骤108图像处理控制模块启动图像验证模块对第一存储器和第二存储器中保存的图像数据进行对比验证。
在另一实施方式中,可以在图像显示模块后接双显示屏显示,即不用第一、第二存储器和图像验证模块,而采用人工的视觉效果代替软件进行验证。而采用这种实施方式时,在步骤101和步骤105,图像处理控制模块将第二图像处理模块的输出路径和抓图模块的输出路径都设置为输出至图像显示模块分别进行显示。
由以上可知,进行软硬件算法验证时通常需要对相同或相似的图像数据分别采用硬件和软件实现的待验证算法分别进行两次处理,为了做到这一点,通常需要使摄像头对一个静态对象进行连续拍摄,使图像传感器向源图像存储器输出的贝尔模式的源图像相同或基本相同。当然也可以在源图像存储器中保存特定格式(例如贝尔模式、RGB、YUV等)的用于测试的标准图像数据,以使软硬件算法验证所采用的源图像数据完全相同。
动态分析模式动态分析是指在PC端对摄像头端输出的图像数据采用指定的图像分析算法进行分析,并根据分析结果动态调整摄像头端的算法参数。例如,PC端采用生物特征识别算法对摄像头端输出的图像进行分析时,若分析结果为当前图像中不包含人的头像,则将摄像头端的算法设置为速度较快、资源消耗较小的普通二维算法;若分析结果为当前图像中包含人的头像,则将摄像头端的算法设置为三维算法,以获得更为精确的图像数据。
如图3所示,对图像进行动态分析包含如下步骤步骤201图像处理控制模块通过数据接口配置图像参数寄存器,即设置算法参数,将第一图像处理模块采用的算法设置为算法a;相应地,图像处理控制模块设置PC端的配置参数,将抓图模块的输出路径设置为输出至第二图像处理模块,并将第二图像处理模块采用的算法设置为图像分析算法,将第二图像处理模块的输出路径设置为输出至图像处理控制模块;
当然也可以将第二图像处理模块的输出路径同时设置为输出至图像显示模块,以便同时显示图像分析结果,为了简便此流程中省略此操作分支。
步骤202第一图像处理模块根据图像参数寄存器中设置的算法参数,将保存在源图像存储器中的源图像数据采用算法a进行处理,并通过数据接口输出至PC端的抓图模块;步骤203抓图模块对摄像头端输出的图像数据进行抓图操作,并将抓图获得的图像数据输出至第二图像处理模块;步骤204第二图像处理模块将抓图模块输出的图像数据采用上述图像分析算法进行处理,并将分析结果发送至图像处理控制模块;步骤205图像处理控制模块根据上述分析结果相应地修改图像参数寄存器中的算法参数,以改变第一图像处理模块所使用的算法。
用户定制模式即对第二图像处理模块的软件算法进行动态配置,在某种算法下的显示效果感觉满意后选定该算法。实现用户定制功能。
例如,在某些情况下,若将PC摄像头输出的图像直接显示不能满足用户的要求,如通过球面镜头得到扭曲和变形的图像时,需要将该图像数据进行实时变换后显示,在这种情况下就需要图像处理控制模块对第二图像处理模块的算法进行相应的配置,并将抓图模块的数据输出到第二图像处理模块,由该模块对该图像数据进行相应处理后输出至图像显示模块进行显示。这样客户可以定制自己的图像系统。
动态采集模式除以上软硬件算法验证和动态分析等功能外,本发明还可以实现图像的动态采集。图像动态采集是指PC端从摄像头端直接获取贝尔模式的图像数据,以便对其进行分析和处理。由于贝尔模式的图像数据是图像传感器直接生成的最原始的图像数据,因此在对图像传感器进行检测,或需要直接从贝尔模式的图像数据中获取特定的信息时需要进行动态采集操作。在进行动态采集时,由于不需要摄像头端对图像数据进行过多处理,因此PC端能够以最快的速度获取贝尔模式的图像数据。
开始对图像进行动态采集前,图像处理控制模块需要对图像参数寄存器中的算法参数和PC端的配置参数进行设置,使第一图像处理模块对源图像存储器中保存的图像数据不采用任何特定的算法进行处理(即空算法),而直接输出至PC端,PC端的抓图模块将图像数据输出至第二图像处理模块,第二图像处理模块根据配置参数对贝尔模式的图像数据采用指定的算法进行相应的分析和处理,并将分析结果或处理后的图像数据输出至图像显示模块或第二存储器。
权利要求
1.一种图像处理系统,包含通过数据接口相连的摄像头端和PC端;摄像头端包含源图像存储器和对源图像存储器中的图像数据进行处理的第一图像处理模块;PC端包含通过上述数据接口对第一图像处理模块输出的图像数据进行抓图操作的抓图模块;其特征在于,所述摄像头端还包含图像参数寄存器,用于保存第一图像处理模块所需的算法参数;所述PC端还包含第二图像处理模块,用于采用配置参数指定的算法及其子参数对抓图模块输出的图像数据进行处理;图像处理控制模块,用于通过数据接口对所述图像参数寄存器中保存的算法参数和PC端的配置参数进行相应的设置;所述第一图像处理模块使用上述算法参数所指定的算法及其子参数对源图像存储器中的图像数据进行处理并输出。
2.如权利要求1所述的图像处理系统,其特征在于,所述PC端还包含第一存储器、第二存储器和图像验证模块;其中第一存储器,用于保存所述抓图模块输出的图像数据;第二存储器,用于保存所述第二图像处理模块输出的图像数据;图像验证模块,用于对保存在第一存储器和第二存储器中的图像数据进行对比验证操作;所述抓图模块根据配置参数将图像数据输出至第一存储器或第二图像处理模块;所述控制模块还用于启动图像验证模块的所述对比验证操作。
3.如权利要求2所述的图像处理系统,其特征在于,所述PC端还包含图像显示模块,用于显示所述抓图模块和/或第二图像处理模块输出的图像数据。
4.如权利要求1所述的图像处理系统,其特征在于,所述第二图像处理模块还用于采用配置参数指定的算法及其子参数对抓图模块输出的图像数据进行分析,并将分析结果输出至所述图像处理控制模块;所述图像处理控制模块根据上述分析结果修改所述图像参数寄存器中保存的算法参数。
5.如权利要求1所述的图像处理系统,其特征在于,所述算法参数值为空算法,所述第一图像处理模块根据该算法参数值将源图像存储器中的图像数据通过所述数据接口直接输出至PC端。
6.如权利要求1所述的图像处理系统,其特征在于,所述算法参数包含图像处理算法类型、算法子参数;所述配置参数包含图像处理算法类型、算法子参数,抓图模块的输出路径、第二图像处理模块的输出路径。
7.如权利要求1所述的图像处理系统,其特征在于,所述数据接口为双工接口,所述图像参数寄存器为可由PC端进行写操作的寄存器。
8.一种图像处理方法,应用于包含通过数据接口相连的摄像头端和PC端的图像处理系统,该方法在PC端对摄像头端和PC端所采用的图像算法进行相应的设置,摄像头端根据设置的硬件算法对图像进行处理后,PC端再根据设置的软件算法对摄像头端输出的图像数据进行处理。
9.如权利要求8所述的图像处理方法,其特征在于,该方法包含如下步骤a)PC端对算法参数和配置参数进行设置;b)摄像头端根据上述算法参数采用算法1对采集到的图像数据进行处理并输出至PC端;c)PC端将摄像头端输出的图像数据进行抓图操作,并根据配置参数将抓图操作输出的图像数据采用算法2进行处理;d)PC端对算法参数和配置参数进行修改;e)摄像头端根据修改后算法参数采用算法3对采集到的图像数据进行处理并输出至PC端;f)PC端将摄像头端输出的图像数据进行抓图操作并输出;g)将步骤c)中采用第一软件算法处理后输出的图像数据与步骤f)中抓图操作输出的图像数据进行对比验证或显示;其中,算法2包含待验证算法,算法3由算法1和待验证算法组合而成。
10.如权利要求8所述的图像处理方法,其特征在于,该方法包含如下步骤A)PC端对算法参数和配置参数进行设置;B)摄像头端根据上述算法参数对采集到的图像数据进行处理并输出至PC端;C)PC端将摄像头端输出的图像数据进行抓图操作,并根据配置参数将抓图操作输出的图像数据采用图像分析算法进行处理,并输出分析结果;D)PC端根据上述分析结果修改算法参数。
11.如权利要求8所述的图像处理方法,其特征在于,该方法包含如下步骤A1)PC端对算法参数和配置参数进行设置;B1)摄像头端根据上述算法参数对采集到的图像数据进行处理并输出至PC端;C1)PC端将摄像头端输出的图像数据进行抓图操作,并根据配置参数将抓图操作输出的图像数据进行处理,并显示。
12.如权利要求8所述的图像处理方法,其特征在于,该方法包含如下步骤A2)PC端对算法参数和配置参数进行设置;B2)摄像头端根据上述算法参数将采集到的图像数据输出至PC端;C2)PC端将摄像头端输出的图像数据进行抓图操作,并根据配置参数将抓图操作输出的图像数据进行分析处理,并显示分析结果和/或处理后的图像数据。
全文摘要
一种图像处理系统,包含通过数据接口相连的摄像头端和PC端;摄像头端包含源图像存储器和对源图像存储器中的图像数据进行处理的第一图像处理模块;PC端包含通过上述数据接口对第一图像处理模块输出的图像数据进行抓图操作的抓图模块;摄像头端还包含图像参数寄存器,用于保存第一图像处理模块所需的算法参数;PC端还包含第二图像处理模块,用于采用配置参数指定的算法及其子参数对抓图模块输出的图像数据进行处理;图像处理控制模块,用于通过数据接口对图像参数寄存器中保存的算法参数和PC端的配置参数进行相应的设置;第一图像处理模块使用上述算法参数所指定的算法及其子参数对源图像存储器中的图像数据进行处理并输出。
文档编号H04N5/225GK101067803SQ20071009947
公开日2007年11月7日 申请日期2007年5月22日 优先权日2007年5月22日
发明者艾国 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1