本发明属于图像处理,特别涉及一种图像raw数据分析调试系统及其方法。
背景技术:
1、现有技术在图像分析与显示领域中,常见的是通过响应于从用户接收到的浏览命令而显示图像数据的不同区域来使得用户能够研究图像数据。在对图像数据的研究中支持用户优化图像数据的显示。
2、在现有技术中图像数据分析常常采用qt进行编码,所述qt是一个跨平台的c++图形界面用户库,在1991年由qt company开发的跨平台c++图形用户界面应用程序开发框架。它既可以开发gui程序,也可用于开发非gui程序。qt的应用于生产生活的各个方面,诸如嵌入式开发qt库,gui界面与人机交互等。qt是面向对象的框架,使用特殊的代码生成扩展以及一些宏,qt很容易扩展,并且允许真正地组件编程,qt支持跨平台的开发,支持诸如linux。windows等操作系统。相比于其他的产品,其兼容性更好,使用更灵活,在应用中有广泛的范围。利用基本的类,即可构造一个比较复杂的强大的系统。
3、然而,在图像调试的过程中,需要借助第三方的平台,无法自动地去做一些raw数据的分析,使得用户分析问题遇到困难。传统的方法主要是将图像的数据不得不首先保存到电脑本地,然后选择一些图像处理软件或者看图的软件,去处理图像。
4、此外,常用的技术术语包括:
5、isp(image signal processing)图像信号处理。主要用来对前端图像传感器输出信号处理的单元,以匹配不同厂商的图像传感器。相机用图像处理器isp(image signalprocessor)。
6、mdns(multicast dns):主要实现了在没有传统dns server的情况下使用lan内的主机实现相互发现和通信。使用udp端口5353(src&dst),遵从dns协议。mdns工作原理:首先,该feature用于lan内部,并且主机的域名为".local"结尾,每个接入lan的主机,如果开启了mdns服务,都会向lan中的所有主机以组播的方式发送一个消息,包含着本主机的“域名”和“ip”。而其他有mdns服务的主机也会响应,反馈自己的“域名”和“ip”,如此,如果设备需要服务时,就通过mdns查询域名对应的ip地址,对应的设备收到该报文后同样通过组播方式应答,此时其他主机设备也是可以收到该应答报文的,其他主机也会记录域名和ip以及ttl等信息,更新自己的缓存。mdns是时域降噪技术,该算法需要在内存中保存一帧完整的图像,用来对图像降噪进行参考。
技术实现思路
1、为了解决上述问题,本技术的目的在于:通过本系统及其方法,在图像调试的过程中,可以不借助第三方的平台,自动的去做一些raw数据的分析,方便用户分析问题。
2、具体地,本发明提供一种图像raw数据分析调试系统,所述系统包括:
3、打开文件模块:用来打开文件,并将文件读取到系统内存中去;模块采用voidpagerawanalyze::func_slot_open_img()函数来实现;
4、板端文件参数设置模块:用来设置板端保存方式的参数接口,保存raw的方式;模块采用void pagerawanalyze::func_slot_local_sel(bool checked)函数来实现;
5、图像缩放模块:图像的放大缩小是将显示的图像进行放大和缩小;图像缩放接口根据鼠标滚轮除法的事件,获取缩放的系数并进行显示;模块采用void pagerawsetting::func_slot_raw_size_sel(int rbid)函数来实现;
6、图像直方图显示模块:用来显示鼠标绘制区域内直方图信息;模块采用qgroupbox*pagerawanalyze::create_qgrpbox_hist_info()函数来实现;pixel界面显示模块:用来显示鼠标指向的pixel的值;模块采用qgroupbox*pagerawanalyze::create_save_raw_info_cfg(void)函数来实现;
7、rgb单通道显示模块:rgb单通道显示,用来单独显示rgb各个通道的像素值;模块采用
8、qgroupbox*pagerawanalyze::create_qgrpbox_image_postion_and_strech()函数来实现;
9、所述系统是通过打开文件模块先选择打开raw数据格式图片的方式,打开图片的方式有2种,第一种是从板端获取,第二种是从本地获取;如果通过板端文件参数设置模块保存raw,需要选择板端保存raw数据的方式,分为3种,第一种是用内存的内存显示程序mem,第二种是用isp分配的mem,第三种是用mdns的mem;获取到相关的raw数据之后,将获取的数据显示到界面当中去;图像显示到界面当中后,后台开始监测鼠标的事件;通过rgb单通道显示模块用户点击rgb单通道显示的界面,通过图像缩放模块监控放大缩小图像事件;通过pixel界面显示模块监控显示图像pixel的事件以及通过图像直方图显示模块显示直方图信息的事件。
10、所述打开文件模块中,打开文件是打开已经存在的raw数据或者是开发板中的数据,所述开发板中的数据是指利用具有能够实时在线拍摄raw数据功能芯片的平台实时拍摄的raw数据;
11、raw数据格式的图像分为8bit、10bit、12bit和16bit的图像,同时,raw数据还分为不同的bayer类型的图像,常见的bayer类型的图像分为:rggb、bggr、grbg、gbrg,对于常见的bayer模式来说,用户直接自主的分辨具体的bayer的类型,对于非常见的bayer类型,用户通过设置不同的bayer类型,用来显示图像。
12、所述板端文件参数设置模块中保存raw的方式,是针对在线保存的方式,选择硬件保存raw数据的位置;
13、所述保存raw数据的格式支持3种:
14、第一种是系统内存,直接使用系统内存来分配,
15、第二种是在uboot启动阶段,分配ispmem,在保存图像的时候,使用ispmem来保存图片,
16、第三种是和mdns共用内存,即:在保存图片的时候,把mdns关掉,在保存完成之后的时候,把mdns打开。
17、所述图像缩放模块中,采用所述函数,首先是,获取图像中的滚轮事件,当图像显示在当前界面的时候,软件会监控鼠标事件,当触发鼠标事件的时候,得到鼠标移动的距离,将鼠标移动的距离转化成缩放的比例,用来实现鼠标的缩放;
18、对于放大来说,只要是用双线性插值,插出原来没有的点,补充图像不足的像素点,
19、对于缩小来说,主要是采用压缩均值的方式来实现,将多个像素保留转成1个像素的技术。
20、所述图像直方图显示模块中,直方图显示是用户用鼠标选择一块区域,选择完成之后,显示直方图的界面能够实时的显示规划的图像界面的直方图信息,即采用所述函数获取直方图的信息,首先是根据鼠标划过的区域,获取鼠标在图像上对应的坐标,将鼠标的坐标位置转化为在图像上对应的位置,将图像对应的区域进行裁剪,得到新的一副图像,然后统计各个像素点的值,把对应的值相加求和之后,显示在界面当中。
21、所述pixel界面显示模块中,采用所述函数是根据鼠标获取的值,将鼠标获取的坐标转移到对应的图像中,得到该坐标在图像中的对应的位置,选择周围的3*3的区域,以当前的点为中心,根据计算出来的bayer格式,得到这9个点对于的bayer格式的各个对应的r|、g和b的值,显示在对应的界面中。
22、所述rgb单通道显示模块中,rgb单通道显示是将raw数据进行rgb分离,从而实现单通道显示的功能,即是根据用户的bayer格式,提取出不同通道的像素值,组成的图像,用来显示到对应的界面中。
23、还涉及一种图像raw数据分析调试方法,所述方法适用于上述任一所述的系统,所述方法包括以下步骤:
24、s1,文件打开选择,先选择打开图片的方式,打开raw数据格式图片的方式有2种,如果是从板端获取,则进行步骤s2;如果是从本地获取,则进行步骤s3;
25、s2,从板端获取,选择保存位置和方式;
26、选择板端保存raw数据的方式,分为3种,第一种是用内存的mem,直接使用系统内存来分配;第二种是用isp分配的mem,在uboot启动阶段,分配ispmem,在保存图像的时候,使用ispmem来保存图片;第三种是用mdns的mem,和mdns共用内存,即:在保存图片的时候,把mdns关掉,在保存完成之后的时候,把mdns打开;
27、s3,获取到相关的raw数据之后,将获取的数据显示到界面当中去;
28、s4,图像显示到界面当中后,后台开始监测鼠标的事件,获取鼠标事件;所述鼠标的事件分为:
29、a事件,显示rgb单通道信息:
30、用户点击rgb单通道显示的界面,是将显示的raw数据分通道单独显示;
31、b事件,放大图像、缩小图像;最终显示在图像中;
32、c事件,显示像素的pixel的数值;最终显示在显示界面中;
33、d事件,直方图信息;最终显示在直方图窗口。
34、所述步骤s1中,所述raw数据格式的图像分为8bit、10bit、12bit和16bit的图像,同时,raw数据还分为不同的bayer类型的图像,bayer类型的图像包括:rggb、bggr、grbg、gbrg,对于常见的bayer模式,用户直接分辨具体的bayer的类型,对于非常见的bayer类型,用户通过设置不同的bayer类型,用来显示图像,非常见的格式包括rgbi、bgri,凡是带有ir类型的,用户有接口自己设置对应的bayer类型。
35、所述步骤s4的a事件中,共提取4幅图像,根据原始的图像以及bayer格式,提取到r、gr、gb、b四幅图像,将这4副图像显示到系统的page1中;
36、所述步骤s4的b事件中,放大图像、缩小图像,是用来显示图像放大和缩小的,便于用户查看图像的细节部分;
37、所述步骤s4的c事件中,显示图像的pixel的数值,是为了显示鼠标箭头指向的某一个的那个pixel的像素值;
38、所述步骤s4的d事件中,直方图信息,是为了显示鼠标划定区域内的直方图的信息。
39、由此,本技术的优势在于:本技术系统及方法简单,方便用户使用,作为现有图像调试工具中的一个延伸。在本方法中,首先用户无需保存图像到电脑本地,可以直接在系统所在软件中显示当面画面的raw数据,其次,对于图像的处理,可以在系统中,对出图进行初步的处理,对于一些基础的raw分析,可以在本系统中,直接处理,无需在使用不同的、多平台的软件,分开处理。
1.一种图像raw数据分析调试系统,其特征在于,所述系统包括:
2.根据权利要求1所述的一种图像raw数据分析调试系统,其特征在于,所述打开文件模块中,打开文件是打开已经存在的raw数据或者是开发板中的数据,所述开发板中的数据是指利用具有能够实时在线拍摄raw数据功能芯片的平台实时拍摄的raw数据;
3.根据权利要求1所述的一种图像raw数据分析调试系统,其特征在于,所述板端文件参数设置模块中保存raw的方式,是针对在线保存的方式,选择硬件保存raw数据的位置;
4.根据权利要求1所述的一种图像raw数据分析调试系统,其特征在于,所述图像缩放模块中,采用所述函数,首先是,获取图像中的滚轮事件,当图像显示在当前界面的时候,软件会监控鼠标事件,当触发鼠标事件的时候,得到鼠标移动的距离,将鼠标移动的距离转化成缩放的比例,用来实现鼠标的缩放;
5.根据权利要求1所述的一种图像raw数据分析调试系统,其特征在于,所述图像直方图显示模块中,直方图显示是用户用鼠标选择一块区域,选择完成之后,显示直方图的界面能够实时的显示规划的图像界面的直方图信息,即采用所述函数获取直方图的信息,首先是根据鼠标划过的区域,获取鼠标在图像上对应的坐标,将鼠标的坐标位置转化为在图像上对应的位置,将图像对应的区域进行裁剪,得到新的一副图像,然后统计各个像素点的值,把对应的值相加求和之后,显示在界面当中。
6.根据权利要求1所述的一种图像raw数据分析调试系统,其特征在于,所述pixel界面显示模块中,采用所述函数是根据鼠标获取的值,将鼠标获取的坐标转移到对应的图像中,得到该坐标在图像中的对应的位置,选择周围的3*3的区域,以当前的点为中心,根据计算出来的bayer格式,得到这9个点对应的bayer格式的各个对应的r、g和b的值,显示在对应的界面中。
7.根据权利要求1所述的一种图像raw数据分析调试系统,其特征在于,所述rgb单通道显示模块中,rgb单通道显示是将raw数据进行rgb分离,从而实现单通道显示的功能,即是根据用户的bayer格式,提取出不同通道的像素值,组成的图像,用来显示到对应的界面中。
8.一种图像raw数据分析调试方法,其特征在于,所述方法适用于权利要求1-7中任一所述的系统,所述方法包括以下步骤:
9.根据权利要求8所述的一种图像raw数据分析调试方法,其特征在于,所述步骤s1中,所述raw数据格式的图像分为8bit、10bit、12bit和16bit的图像,同时,raw数据还分为不同的bayer类型的图像,bayer类型的图像包括:rggb、bggr、grbg、gbrg,对于常见的bayer模式,用户直接分辨具体的bayer的类型,对于非常见的bayer类型,用户通过设置不同的bayer类型,用来显示图像,其中,非常见的格式包括rgbi、bgri,凡是带有ir类型的,用户有接口自己设置对应的bayer类型。
10.根据权利要求7所述的一种图像raw数据分析调试方法,其特征在于,所述步骤s4的a事件中,共提取4幅图像,根据原始的图像以及bayer格式,提取到r、gr、gb、b四幅图像,将这4副图像显示到系统的page1中;