一种图像采集方法和装置与流程

文档序号:14880626发布日期:2018-07-07 09:43阅读:157来源:国知局

本发明涉及图像处理领域,特别涉及一种图像采集方法和装置。



背景技术:

随着无人机飞行控制,vr(虚拟现实),机器人,人脸识别,无人驾驶等行业的发展,图像采集在这些行业的应用中成为了关键的因素。在很多应用场景中,诸如摄像头或者感光阵列等图像采集设备采集到图像数据后,将图像数据发送给应用端,在应用端中对图像数据进行处理和应用。

但是,图像采集设备容易受到干扰,应用端接收到的图像数据会存在乱码或者扭曲的现象,导致图像数据无法使用。



技术实现要素:

有鉴于此,本发明提供了一种图像采集方法和装置,用以解决现有的图像采集设备采集到的图像产生乱码或扭曲的问题。

根据本发明的一个方面,提供了一种图像采集方法,包括:

图像采集设备对采集到的一行图像数据进行像素数量计数,得到采集像素数量;

判断采集像素数量是否小于预定的图像分辨率的行像素数量,在判断为是的情况下,确定该行图像数据中数据缺失的像素点;

对数据缺失的像素点进行数据填充,得到完整的一行图像数据;

将完整的一行图像数据发送给应用端。

在一些实施例中,确定该行图像数据中数据缺失的像素点,包括:确定方式一、确定该行图像数据的末位n位像素点为缺失的像素点,其中,n为缺失的像素点的数量。

在一些实施例中,所述方法还包括:在判断数据缺失的像素点的数量小于预定的第一缺失阈值的情况下,根据确定方式一来确定该行图像数据中数据缺失的像素点。

在一些实施例中,确定该行图像数据中数据缺失的像素点,包括:确定方式二、将该行图像数据的相邻两个像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的差值阈值的情况下,确定这两个像素点之间存在缺失的像素点;或者,确定方式三、将该行图像数据的各个像素点的像素值,与相邻上一行图像数据中相对应的像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的对比阈值的情况下,确定该行数据的对比像素点之前存在缺失的像素点。

在一些实施例中,所述方法还包括:在判断数据缺失的像素点的数量大于或等于预定的第一缺失阈值、且小于预定的第二缺失阈值的情况下,根据确定方式二或者确定方式三来确定该行图像数据中数据缺失的像素点;在判断数据缺失的像素点的数量大于或等于预定的第二缺失阈值的情况下,确定该行数据缺失全部像素点。

在一些实施例中,对缺失的像素点进行数据填充,包括:将缺失的像素点的前一个像素点的像素值作为缺失的像素点的像素值;或者,将相邻上一行有效图像数据中对应于缺失的像素点的像素点的像素值作为缺失的像素点的像素值。

在一些实施例中,将完整的一行图像数据发送给应用端包括:在该行的行消隐信号结束前,将完整的一行图像数据发送给应用端。

根据本发明的另一个方面,提供了一种图像采集装置,包括:

计数模块,用于对采集到的一行图像数据进行像素数量计数,得到采集像素数量;

确定模块,用于判断采集像素数量是否小于预定的图像分辨率的行像素数量,在判断为是的情况下,确定该行图像数据中数据缺失的像素点;

填充模块,用于对数据缺失的像素点进行数据填充,得到完整的一行图像数据;

发送模块,用于将完整的一行图像数据发送给应用端。

在一些实施例中,确定模块确定该行图像数据中数据缺失的像素点,包括:确定方式一、确定该行图像数据的末位n位像素点为缺失的像素点,其中,n为缺失的像素点的数量。

在一些实施例中,确定模块还用于:在判断数据缺失的像素点的数量小于预定的第一缺失阈值的情况下,根据确定方式一来确定该行图像数据中数据缺失的像素点。

在一些实施例中,确定模块确定该行图像数据中数据缺失的像素点,包括:

确定方式二、将该行图像数据的相邻两个像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的差值阈值的情况下,确定这两个像素点之间存在缺失的像素点;或者,确定方式三、将该行图像数据的各个像素点的像素值,与相邻上一行图像数据中相对应的像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的对比阈值的情况下,确定该行数据的对比像素点之前存在缺失的像素点。

在一些实施例中,确定模块还用于:在判断数据缺失的像素点的数量大于或等于预定的第一缺失阈值、且小于预定的第二缺失阈值的情况下,根据确定方式二或者确定方式三来确定该行图像数据中数据缺失的像素点;在判断数据缺失的像素点的数量大于或等于预定的第二缺失阈值的情况下,确定该行数据缺失全部像素点。

在一些实施例中,填充模块对缺失的像素点进行数据填充,包括:将缺失的像素点的前一个像素点的像素值作为缺失的像素点的像素值;或者,将相邻上一行有效图像数据中对应于缺失的像素点的像素点的像素值作为缺失的像素点的像素值。

在一些实施例中,发送模块将完整的一行图像数据发送给应用端包括:在该行的行消隐信号结束前,将完整的一行图像数据发送给应用端。

根据本发明的另一个方面,提供了一种图像采集装置,包括:一个处理器和至少一个存储器,至少一个存储器中存储有至少一条机器可执行指令,处理器执行至少一条机器可执行指令以实现:

对采集到的一行图像数据进行像素数量计数,得到采集像素数量;

判断采集像素数量是否小于预定的图像分辨率的行像素数量,在判断为是的情况下,确定该行图像数据中数据缺失的像素点;

对数据缺失的像素点进行数据填充,得到完整的一行图像数据;

将完整的一行图像数据发送给应用端。

在一些实施例中,处理器执行至少一条机器可执行指令实现确定该行图像数据中数据缺失的像素点,包括:确定方式一、确定该行图像数据的末位n位像素点为缺失的像素点,其中,n为缺失的像素点的数量。

在一些实施例中,处理器执行至少一条机器可执行指令还实现:在判断数据缺失的像素点的数量小于预定的第一缺失阈值的情况下,根据确定方式一来确定该行图像数据中数据缺失的像素点。

在一些实施例中,处理器执行至少一条机器可执行指令实现确定该行图像数据中数据缺失的像素点,包括:

确定方式二、将该行图像数据的相邻两个像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的差值阈值的情况下,确定这两个像素点之间存在缺失的像素点;或者,确定方式三、将该行图像数据的各个像素点的像素值,与相邻上一行图像数据中相对应的像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的对比阈值的情况下,确定该行数据的对比像素点之前存在缺失的像素点。

在一些实施例中,处理器执行至少一条机器可执行指令还实现:在判断数据缺失的像素点的数量大于或等于预定的第一缺失阈值、且小于预定的第二缺失阈值的情况下,根据确定方式二或者确定方式三来确定该行图像数据中数据缺失的像素点;在判断数据缺失的像素点的数量大于或等于预定的第二缺失阈值的情况下,确定该行数据缺失全部像素点。

在一些实施例中,处理器执行至少一条机器可执行指令实现对缺失的像素点进行数据填充,包括:将缺失的像素点的前一个像素点的像素值作为缺失的像素点的像素值;或者,将相邻上一行有效图像数据中对应于缺失的像素点的像素点的像素值作为缺失的像素点的像素值。

在一些实施例中,处理器执行至少一条机器可执行指令实现将完整的一行图像数据发送给应用端包括:在该行的行消隐信号结束前,将完整的一行图像数据发送给应用端。

根据本发明提供的图像采集方法,图像采集设备对采集到的一行图像数据进行像素数量计数,得到采集像素数量,在判断采集像素数量小于预定的图像分辨率的行像素数量的情况下,确定该行图像数据中缺失的像素点,对缺失的数据点进行数据填充,得到完整的一行图像数据,从而图像采集设备能够在采集到一行图像数据后,及时对图像数据的像素数量进行判断,并在确定存在像素点缺失的情况下,对缺失的像素点进行数据填充,得到完整的一行图像数据,能够解决现有技术中存在的图像乱码或扭曲的问题。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。

图1为本申请实施例提供的图像采集方法的处理流程图;

图2为图1中步骤12包括的确定方式一的示例图;

图3为图1中步骤12包括的确定方式二的示例图;

图4为图1中步骤12包括的确定方式三的示例图;

图5为本申请实施例提供的图像采集装置的结构框图;

图6为本申请实施例提供的图像采集装置的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

在现有技术中,图像采集设备将采集到的图像数据发送给应用端后,应用端对接收到的数据进行解析并重新构建为图像数据,但是重新构建出来的图像数据存在乱码或者扭曲,无法得到正确的图像数据。

本发明针对该问题,在图像采集设备端对采集得到的图像数据进行处理,确保采集到的每一行图像数据都是完整的,从根源上消除图像采集过程出现的图像数据丢失,进而保证应用端能够接收到完整的图像数据,并重新构建得到正确的图像数据。

下面通过实施例和附图对本申请的计算方案进行说明。

图1示出了本申请实施例提供的图像采集方法的处理流程图,包括如下处理过程:

步骤11、图像采集设备对采集到的一行图像数据进行像素数量计数,得到采集像素数量;

步骤12、判断采集像素数量是否小于预定的图像分辨率的行像素数量,在判断为是的情况下,确定该行图像数据中数据缺失的像素点;

以一个vga分辨率相机为例,vga分辨率为640*480,需要判断采集到的一行图像数据的像素数量是否小于640,如果小于就可以确定采集到的该行数据中存在缺失的数据点;

确定该行图像数据中数据缺失的像素点的处理可以采用至少如下三种方式的其中之一:

确定方式一、确定该行图像数据的末位n位像素点为缺失的像素点,其中,n为缺失的像素点的数量。

以图2所示为例,第i行为上一次采集到的一行图像数据,第j行为当前采集到的一行图像数据,对第j行的数据进行像素数量计数,确定采集到639个像素数据,则,为了加快处理效率,可以将确定第640个像素为数据缺失的像素点,如图2中虚线所示的第640个像素点所示,而不去确定前面的639个像素中是否存在数据缺失的像素点。

确定方式二、将该行图像数据的相邻两个像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的差值阈值的情况下,确定这两个像素点之间存在缺失的像素点。其中,差值阈值可以根据具体应用场景的需要而具体设置。

以图3所示为例,第i行为上一次采集到的一行图像数据,第j行为当前采集到的一行图像数据,依次对第j行数据中相邻两个像素点的像素值进行对比,第一次对比第1个像素点和第2个像素点的像素值,第二次对比第2个像素点和第3个像素点的像素值,第三次对比第3个像素点和第4个像素点的像素值,依次类推,以此确定出像素值的差值大于预定阈值的两个像素点,并且确定出这两个像素点之间存在缺失的像素点。例如图3中原第635个像素点和第636个像素点的像素值之间的差值大于预定的差值阈值的情况下,可以认为原第636个像素点之前存在缺失的像素点,在原635和原636像素之间进行数据填充,原第636个像素点在数据填充处理后为第637像素点,如图3中虚线所示。

确定方式三、将该行图像数据的各个像素点的像素值,与相邻上一行图像数据中相对应的像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的对比阈值的情况下,确定该行数据的对比像素点之前存在缺失的像素点。其中,对比阈值可以根据具体应用场景的需要而具体设置。

以图4所示为例,第i行为上一次采集到的一行图像数据,第j行为当前采集到的一行图像数据,将第j行数据中的一个像素点的像素值与第i行数据中的相同像素点的像素值进行对比,第一次对比第j行和第i行的第1个像素的像素值,第二次对比第j行和第i行的第2个像素的像素值,第三次对比第j行和第i行的第3个像素的像素值,依次类推,以此确定出像素值的差值大于预定阈值的两个像素点,并确定在第j行的对比点之前存在一个缺失的像素点。例如在图4中,将第j行数据中原636像素点的像素值与第i行中第636像素点的像素值进行对比,当这二者的像素值之间的差值大于预定的对比阈值的情况下,确定第j行数据中原636像素点之前存在缺失的像素点,原第636个像素点在数据填充处理后为第637像素点,如图4中虚线所示。

进一步地,在上述三种方式的基础上,还可以采用如下的方式的其中之一:

确定方式四、在判断采集像素数量小于预定的图像分辨率的行像素数量的情况下,进一步判断数据缺失的像素点的数量是否小于预定的第一缺失阈值,在判断为是的情况下,确定该行图像数据的末位n位像素点为缺失的像素点。其中,预定的缺失阈值可以根据具体应用场景的需要而具体设置。

例如,在上述确定方式一之前,先判断缺失的像素点的数量,在判断缺失的像素的数量小于预定的缺失阈值的情况下,使用上述确定方式一来确定缺失的像素点。

通过上述确定方式一或者方式四,在采集到图像数据之后,就能够较为快速地确定出缺失的像素点,以利于后续快速地对图像数据进行填充,计算资源需要小,处理速度快、效率高,不会对图像传输造成时延。

确定方式五、在判断采集像素数量小于预定的图像分辨率的行像素数量的情况下,进一步判断数据缺失的像素点的数量是否大于或等于预定的第一缺失阈值、且小于预定的第二缺失阈值,在判断为是的情况下,将该行图像数据的相邻两个像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的差值阈值的情况下,确定这两个像素点之间存在缺失的像素点,或者,将该行图像数据的各个像素点的像素值,与相邻上一行图像数据中相对应的像素点的像素值进行对比,当两个像素点的像素值的差值大于预定阈值的情况下,确定该行数据的对比像素点之前存在缺失的像素点;

在判断数据缺失的像素点的数量大于或等于预定的第二缺失阈值的情况下,确定该行数据缺失全部像素点。

例如,在上述方式二或者方式三之前,先判断缺失的像素点的数量,在判断缺失的像素的数量大于或等于预定的第一缺失阈值、且小于预定的第二缺失阈值的情况下,使用方式二或者方式三来确定缺失的像素点。

通过上述方式二、方式三或者方式五,能够较为准确的确定得到缺失的像素点,以利于后续填充图像数据时,填充较为准确的图像数据,处理精度高,但是计算需求高,对硬件要求高。并且,在判断缺失的像素点的数量较大的时候,认为该行图像数据采集失败,不去一一地确定缺失的像素点,直接确定该行像素点的数据全部缺失,能够提高处理速度。

步骤13、对缺失的像素点进行数据填充,得到完整的一行图像数据;

对缺失的像素点进行数据填充的处理,可以采用如下两种方式的其中之一:

填充方式一、将缺失的像素点的前一个像素点的像素值作为缺失的像素点的像素值;

填充方式二、将相邻上一行有效图像数据中对应于缺失的像素点的像素点的像素值作为缺失的像素点的像素值。

这两种填充方式可以和上述确定方式一至方式五中的任意一个进行组合,对缺失的像素点进行数据填充。

步骤14、将完整的一行图像数据发送给应用端。

进一步地,在一些实施例中,在该行的行消隐信号(horizontalblankingsignal)结束前,将完整的一行图像数据发送给应用端发送给应用端。

通过上述处理过程,图像采集设备对采集到的一行图像数据进行像素数量计数,得到采集像素数量,在判断采集像素数量小于预定的图像分辨率的行像素数量的情况下,确定该行图像数据中缺失的像素点,对缺失的数据点进行数据填充,得到完整的一行图像数据,从而图像采集设备能够在采集到一行图像数据后,及时对图像数据的像素数量进行判断,并在确定存在像素点缺失的情况下,对缺失的像素点进行数据填充,得到完整的一行图像数据,能够解决现有技术中存在的图像乱码或扭曲的问题;并且,在该行的行消隐信号结束前,将完整的一行图像数据发送给应用端,不会对图像传输产生时延。

基于相同的构思,本申请实施例还提供了一种图像采集装置。

如图5所示,本申请实施例提供的图像采集装置包括:

计数模块501,用于对采集到的一行图像数据进行像素数量计数,得到采集像素数量;

确定模块502,用于判断采集像素数量是否小于预定的图像分辨率的行像素数量,在判断为是的情况下,确定该行图像数据中数据缺失的像素点;

填充模块503,用于对数据缺失的像素点进行数据填充,得到完整的一行图像数据;

发送模块504,用于将完整的一行图像数据发送给应用端。

其中,确定模块502确定该行图像数据中数据缺失的像素点,可以采用如下方式的其中之一:

确定方式一、确定该行图像数据的末位n位像素点为缺失的像素点,其中,n为缺失的像素点的数量。

确定方式二、将该行图像数据的相邻两个像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的差值阈值的情况下,确定这两个像素点之间存在缺失的像素点。

确定方式三、将该行图像数据的各个像素点的像素值,与相邻上一行图像数据中相对应的像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的对比阈值的情况下,确定该行数据的对比像素点之前存在缺失的像素点。

在这三种方式的基础上,确定模块502还可以采用以下方式的其中之一:

确定方式四、在判断采集像素数量小于预定的图像分辨率的行像素数量的情况下,进一步判断数据缺失的像素点的数量是否小于预定的第一缺失阈值,在判断为是的情况下,确定该行图像数据的末位n位像素点为缺失的像素点。其中,预定的缺失阈值可以根据具体应用场景的需要而具体设置。

确定方式五、在判断采集像素数量小于预定的图像分辨率的行像素数量的情况下,进一步判断数据缺失的像素点的数量是否大于或等于预定的第一缺失阈值、且小于预定的第二缺失阈值,在判断为是的情况下,将该行图像数据的相邻两个像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的差值阈值的情况下,确定这两个像素点之间存在缺失的像素点,或者,将该行图像数据的各个像素点的像素值,与相邻上一行图像数据中相对应的像素点的像素值进行对比,当两个像素点的像素值的差值大于预定阈值的情况下,确定该行数据的对比像素点之前存在缺失的像素点;

在判断数据缺失的像素点的数量大于或等于预定的第二缺失阈值的情况下,确定该行数据缺失全部像素点。

在一些实施例中,填充模块503对缺失的像素点进行数据填充,包括:将缺失的像素点的前一个像素点的像素值作为缺失的像素点的像素值;或者,将相邻上一行有效图像数据中对应于缺失的像素点的像素点的像素值作为缺失的像素点的像素值。

在一些实施例中,发送模块504将完整的一行图像数据发送给应用端包括:在该行的行消隐信号结束前,将完整的一行图像数据发送给应用端。

通过上述图像采集装置,对采集到的一行图像数据进行像素数量计数,得到采集像素数量,在判断采集像素数量小于预定的图像分辨率的行像素数量的情况下,确定该行图像数据中缺失的像素点,对缺失的数据点进行数据填充,得到完整的一行图像数据,从而图像采集设备能够在采集到一行图像数据后,及时对图像数据的像素数量进行判断,并在确定存在像素点缺失的情况下,对缺失的像素点进行数据填充,得到完整的一行图像数据,能够解决现有技术中存在的图像乱码或扭曲的问题;并且,在该行的行消隐信号结束前,将完整的一行图像数据发送给应用端,不会对图像传输产生时延。

根据相同的发明构思,本申请实施例还提供了一种图像采集装置,如图6所示,包括:一个处理器601和至少一个存储器602,至少一个存储器602中存储有至少一条机器可执行指令,处理器601执行至少一条机器可执行指令以实现:

对采集到的一行图像数据进行像素数量计数,得到采集像素数量;

判断采集像素数量是否小于预定的图像分辨率的行像素数量,在判断为是的情况下,确定该行图像数据中数据缺失的像素点;

对数据缺失的像素点进行数据填充,得到完整的一行图像数据;

将完整的一行图像数据发送给应用端。

在一些实施例中,处理器601执行至少一条机器可执行指令实现确定该行图像数据中数据缺失的像素点,包括:确定方式一、确定该行图像数据的末位n位像素点为缺失的像素点,其中,n为缺失的像素点的数量。

在一些实施例中,处理器601执行至少一条机器可执行指令还实现:在判断数据缺失的像素点的数量小于预定的第一缺失阈值的情况下,根据确定方式一来确定该行图像数据中数据缺失的像素点。

在一些实施例中,处理器601执行至少一条机器可执行指令实现确定该行图像数据中数据缺失的像素点,包括:确定方式二、将该行图像数据的相邻两个像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的差值阈值的情况下,确定这两个像素点之间存在缺失的像素点;或者,确定方式三、将该行图像数据的各个像素点的像素值,与相邻上一行图像数据中相对应的像素点的像素值进行对比,当两个像素点的像素值的差值大于预定的对比阈值的情况下,确定该行数据的对比像素点之前存在缺失的像素点。

在一些实施例中,处理器601执行至少一条机器可执行指令还实现:在判断数据缺失的像素点的数量大于或等于预定的第一缺失阈值、且小于预定的第二缺失阈值的情况下,根据确定方式二或者确定方式三来确定该行图像数据中数据缺失的像素点;在判断数据缺失的像素点的数量大于或等于预定的第二缺失阈值的情况下,确定该行数据缺失全部像素点。

在一些实施例中,处理器601执行至少一条机器可执行指令实现对缺失的像素点进行数据填充,包括:将缺失的像素点的前一个像素点的像素值作为缺失的像素点的像素值;或者,将相邻上一行有效图像数据中对应于缺失的像素点的像素点的像素值作为缺失的像素点的像素值。

在一些实施例中,处理器601执行至少一条机器可执行指令实现将完整的一行图像数据发送给应用端包括:在该行的行消隐信号结束前,将完整的一行图像数据发送给应用端。

通过上述图像采集装置,对采集到的一行图像数据进行像素数量计数,得到采集像素数量,在判断采集像素数量小于预定的图像分辨率的行像素数量的情况下,确定该行图像数据中缺失的像素点,对缺失的数据点进行数据填充,得到完整的一行图像数据,从而图像采集设备能够在采集到一行图像数据后,及时对图像数据的像素数量进行判断,并在确定存在像素点缺失的情况下,对缺失的像素点进行数据填充,得到完整的一行图像数据,能够解决现有技术中存在的图像乱码或扭曲的问题;并且,在该行的行消隐信号结束前,将完整的一行图像数据发送给应用端,不会对图像传输产生时延。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1