1.本技术涉及相机技术领域,具体而言,涉及一种图像处理方法、装置,电子设备及存储介质。
背景技术:2.目前,与视觉呈现有关的应用通常需要对摄像头获取的图像进行畸变矫正,视角、视点变换,拼接等图像处理。如针对鱼眼摄像头,当其用于汽车环视场景中时,需要先将其进行图像畸变矫正。而对于图像畸变矫正,通常的算法是先根据摄像头镜头的畸变函数进行畸变矫正,然后根据已知尺寸的矫正图像解析出的摄像头安装位置和镜头光轴指向。
3.此类算法在处理过程中,需要对每幅图像的所有像素进行运算,运算量很大,需要耗费大量的硬件资源和运算时间。
技术实现要素:4.本技术实施例的目的在于提供一种图像处理方法、装置,电子设备及存储介质,以减小对于图像处理的硬件资源消耗,以及减小运算时间。
5.本技术是这样实现的:
6.第一方面,本技术实施例提供一种图像处理方法,包括:获取图像采集设备采集的待处理图像;基于预设像素映射表,将所述待处理图像中的各像素点的像素值存入对应的目标映射地址,以生成目标图像;其中,所述预设像素映射表包括目标映射地址项,所述目标映射地址项包括所述图像采集设备的图像中各像素点对应的存储地址。
7.在本技术实施例中,在获取到待处理图像后,对待处理图像的存储过程进行优化,基于预设像素映射表中的目标映射地址项,将待处理图像中的各像素点的像素值存储至目标映射地址中,进而基于目标映射地址所对应的像素值,生成处理后的目标图像。即,在本技术实施例中,直接基于待处理图像的处理需求将待处理图像进行存储,在存储完成后,得到的即为处理后的目标图像,通过该方式,可以减小硬件资源消耗,减小待处理图像的运算时间。
8.结合上述第一方面提供的技术方案,在一些可能的实现方式中,通过如下步骤获取所述预设像素映射表,包括:获取所述图像采集设备采集的样本图像、以及预先确定出的与所述样本图像对应的处理后图像;确定所述样本图像中的像素点与所述处理后图像的像素点之间的映射关系;基于所述映射关系,生成所述预设像素映射表。
9.在本技术实施例中,通过获取图像采集设备采集的样本图像,以及预先确定出的与样本图像对应的处理后图像来构建该预设像素映射表,进而使得后续在获取到图像采集设备采集的待处理图像,直接利用该预设像素映射表确定出目标映射地址,进而得到处理后图像。此外,由于预设像素映射表也由图像采集设备采集的图像得到,因此,通过该方式,也可以提高后续生成的目标图像的准确性。
10.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述样本图像中
及所述处理后图像中包括相同的棋盘格,所述确定所述样本图像中的像素点与所述处理后图像的像素点之间的映射关系,包括:获取第一棋盘格上的网格点的坐标;其中,所述第一棋盘格为所述样本图像中的棋盘格;基于所述第一棋盘格上的网格点的坐标确定第二棋盘格上的网格点的坐标;其中,所述第二棋盘格为所述处理后图像中的棋盘格;基于所述第一棋盘格上的网格点的坐标、以及所述第二棋盘格上的网格点的坐标,确定所述样本图像中的像素点与所述处理后图像的像素点之间的映射关系。
11.在本技术实施例中,由于样本图像中及处理后图像中包括相同的棋盘格,因此,可以利用两个图像的棋盘格上的网格点,来确定样本图像中的像素点与处理后图像的像素点之间的映射关系,通过该方式,可以提高确定出的样本图像中的像素点与处理后图像的像素点之间的映射关系的准确性。
12.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述基于所述第一棋盘格上的网格点的坐标、以及所述第二棋盘格上的网格点的坐标,确定所述样本图像中的像素点与所述处理后图像的像素点的映射关系,包括:基于所述第一棋盘格上的网格点的坐标与所述第二棋盘格上的网格点的坐标之间的映射关系,确定所述第一棋盘格上的网格线上的像素点的坐标与所述第二棋盘格上的网格线上的像素点的坐标之间的映射关系;基于所述第一棋盘格上的网格线上的像素点的坐标与所述第二棋盘格上的网格线上的像素点的坐标之间的映射关系,确定出所述样本图像中的所有像素点与所述处理后图像的所有像素点的映射关系。
13.在本技术实施例中,利用第一棋盘格上的网格点的坐标与第二棋盘格上的网格点的坐标之间的映射关系,以便于确定出第一棋盘格上的网格线上的像素点的坐标与第二棋盘格上的网格线上的像素点的坐标之间的映射关系,最后,再利用第一棋盘格上的网格线上的像素点的坐标与第二棋盘格上的网格线上的像素点的坐标之间的映射关系,以便于确定出样本图像中的所有像素点与处理后图像的所有像素点的映射关系,也即,从上述由点到线,再由线到面的方式,可以合理且准确地确定出样本图像中的所有像素点与处理后图像的所有像素点的映射关系。
14.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述获取第一棋盘格上的网格点的坐标,包括:获取所述第一棋盘格上的各网格线上的像素点的坐标;分别对所述第一棋盘格上的各网格线上的像素点的坐标进行线性拟合,得到所述第一棋盘格上的各网格线的拟合曲线;基于所述第一棋盘格上的各网格线的拟合曲线的交点,确定所述第一棋盘格上的网格点的坐标。
15.在本技术实施例中,通过第一棋盘格上的各网格线的拟合曲线的交点,以便于合理地确定出第一棋盘格上的网格点的坐标。
16.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述预设像素映射表包括权重项;所述权重项包括所述图像采集设备采集的图像中各像素点对应的权重值;所述将所述待处理图像中的各像素点的像素值存入对应的目标映射地址,包括:基于所述权重项,对所述待处理图像中的各像素点的像素值进行权重计算;将计算后的各像素点的像素值存入对应的目标映射地址。
17.在本技术实施例中,由于预设像素映射表中包括权重项,因此,可以利用该预设像素映射表实现图像的拼接过程。即,在图像拼接过程中,可以利用权重值来确定拼接重合区
的像素值,进而将权重计算后的像素值存入对应的目标映射地址,以完成在图像存储过程中的图像拼接。
18.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述预设像素映射表包括:像素有效位项;所述像素有效位项用于表征所述图像采集设备的图像中的各像素点是否有效;相应的,所述将所述待处理图像中的各像素点的像素值存入对应的目标映射地址,包括:基于所述像素有效位项,确定所述待处理图像中的有效像素点;将所述有效像素点存入对应的目标映射地址。
19.在本技术实施例中,由于预设像素映射表中包括像素有效位项,因此,可以仅存储所需的像素点所对应的像素值,通过该方式,可以节省存储空间,同时,用户也可以根据需求自行设定视角、图像尺寸等,以提供更多的应用场景。
20.第三方面,本技术实施例提供一种电子设备,包括:处理器和存储器,所述处理器和所述存储器连接;所述存储器用于存储程序;所述处理器用于调用存储在所述存储器中的程序,执行如上述第一方面实施例和/或结合上述第一方面实施例的一些可能的实现方式提供的方法。
21.第四方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器运行时执行如上述第一方面实施例和/或结合上述第一方面实施例的一些可能的实现方式提供的方法。
附图说明
22.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
23.图1为本技术实施例提供的一种电子设备的模块框图。
24.图2为本技术实施例提供的一种图像处理方法的步骤流程图。
25.图3为本技术实施例提供的一种预设像素映射表的获取方法的步骤流程图。
26.图4为本技术实施例提供的一种样本图像的示意图。
27.图5为本技术实施例提供的一种处理后图像的示意图。
28.图6为本技术实施例提供的一种预设像素映射表的获取方法中的步骤s202的流程图。
29.图7为通过本技术实施例提供的图像处理方法得到的拼接图。
30.图8为本技术实施例提供的图像处理装置的模块框图。
31.图标:100-电子设备;110-处理器;120-存储器;200-图像处理装置;210-获取模块;220-处理模块。
具体实施方式
32.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
33.请参阅图1,本技术实施例提供的一种应用图像处理方法及装置的电子设备100的示意性结构框图。
34.电子设备100可以是终端,终端可以是,但不限于个人计算机(personal computer,pc)、智能手机、平板电脑、个人数字助理(personal digital assistant,pda)、移动上网设备(mobile internet device,mid)等。电子设备100还可以是一种图像处理系统,比如车载控制系统。电子设备100还可以是应用于具备图像处理任务的任意设备,比如电子设备100可以是监控室的中监控器(其用于合成多个摄像头采集的图像),对此,本技术不作限定。
35.在结构上,电子设备100可以包括处理器110和存储器120。
36.处理器110与存储器120直接或间接地电性连接,以实现数据的传输或交互,例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。图像处理装置包括至少一个可以软件或固件(firmware)的形式存储在存储器120中或固化在电子设备100的操作系统(operating system,os)中的软件模块。处理器110用于执行存储器120中存储的可执行模块,例如,图像处理装置所包括的软件功能模块及计算机程序等,以实现图像处理方法。处理器110可以在接收到执行指令后,执行计算机程序。
37.其中,处理器110可以是一种集成电路芯片,具有信号处理能力。处理器110也可以是通用处理器,例如,可以是中央处理器(central processing unit,cpu)、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、分立门或晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。此外,通用处理器可以是微处理器或者任何常规处理器等。
38.存储器120可以是,但不限于,随机存取存储器(random access memory,ram)、只读存储器(read only memory,rom)、可编程只读存储器(programmable read-only memory,prom)、可擦可编程序只读存储器(erasable programmable read-only memory,eprom),以及电可擦编程只读存储器(electric erasable programmable read-only memory,eeprom)。存储器120用于存储程序,处理器110在接收到执行指令后,执行该程序。
39.需要说明的是,图1所示的结构仅为示意,本技术实施例提供的电子设备100还可以具有比图1更少或更多的组件,或是具有与图1所示不同的配置。此外,图1所示的各组件可以通过软件、硬件或其组合实现。
40.请参阅图2,图2为本技术实施例提供的图像处理方法的步骤流程图,该方法应用于图1所示的电子设备100。需要说明的是,本技术实施例提供的图像处理方法不以图2及以下所示的顺序为限制,该方法包括:步骤s101-步骤s102。
41.步骤s101:获取图像采集设备采集的待处理图像。
42.其中,图像采集设备为包含摄像头的设备,其可以是,但不限于摄像机、相机、手机、平板电脑等等。上述的摄像头可以是但不限于鱼眼摄像头、全景摄像头。需要说明的是,上述列举的设备、摄像头仅用于便于理解本技术实施例,其不应作为对本实施例的限定。
43.步骤s102:基于预设像素映射表,将待处理图像中的各像素点的像素值存入对应的目标映射地址,以生成目标图像。
44.其中,预设像素映射表包括目标映射地址项,目标映射地址项包括图像采集设备的图像中各像素点对应的存储地址。后续电子设备在输出图像时,直接从目标映射地址输出目标图像进行显示。
45.上述的待处理图像的处理方式可以是,但不限于畸变矫正,视角、视点变换,拼接等图像处理。
46.示例性的,图像采集设备为鱼眼摄像头时,假设鱼眼摄像头在某些应用场景中需要使用正常未畸变的图像,因此,首先对鱼眼摄像头采集的图像进行畸变矫正,而本技术实施例中,畸变矫正的过程发生在图像的存储过程中。具体的,预设像素映射可以包括畸变图像的每个像素点的目标映射地址,此过程相当于是改变畸变图像的每个像素点的存储地址,进而使得采用目标映射地址存储后的图像可以还原为正常未畸变的图像。
47.可见,在本技术实施例中,在获取到待处理图像后,对待处理图像的存储过程进行优化,基于预设像素映射表中的目标映射地址项,将待处理图像中的各像素点的像素值存储至目标映射地址中,进而基于目标映射地址所对应的像素值,生成处理后的目标图像。即,在本技术实施例中,直接基于待处理图像的处理需求将待处理图像进行存储,在存储完成后,得到的即为处理后的目标图像,通过该方式,可以减小硬件资源消耗,减小待处理图像的运算时间。
48.为了便于理解本技术实施例所提供的图像处理方法,首先,对上述预设像素映射表的构建过程进行说明。请参阅图3,于本技术实施例,预设像素映射表的构建过程包括:步骤s201-步骤s203。
49.步骤s201:获取图像采集设备采集的样本图像、以及预先确定出的与样本图像对应的处理后图像。
50.其中,样本图像可以由图像采集设备实时采集,而处理后图像可以为基于已有算法对该样本图像进行处理后所得到。比如,处理过程为畸变矫正,则在通过图像采集设备采集到样本图像后,基于已有算法对样本图像进行处理,得到畸变矫正后的图像(即上述处理后图像)。
51.当然,处理后图像也可以由另一台图像采集设备采集。比如步骤s201中图像采集设备为鱼眼摄像头,而另一台图像采集设备为标准摄像头,然后,将鱼眼摄像头与标准摄像头对准相同的目标进行拍摄,进而得到上述样本图像及处理后图像。其中,样本图像由鱼眼摄像头采集,处理后图像由标准摄像头采集。
52.上述的目标可以是任意物体。而为了构建准确的预设像素映射表,本技术实施例中,目标可以为棋盘格。请参阅图4及图5,图4为一鱼眼摄像头所采集的样本图像,样本图像中包括发生了畸变的棋盘格。图5为与样本图像对应的处理后图像,处理后图像中包括正常的棋盘格。
53.步骤s202:确定样本图像中的像素点与处理后图像的像素点之间的映射关系。
54.在获取到样本图像和处理后图像后,确定出两个图像上的像素点之间的映射关系。需要说明的是,此处的映射关系表征样本图像中的像素点在经过处理后,在处理后图像所处的位置。
55.映射关系可以是坐标关系,即,映射关系表征样本图像中的像素点在经过处理后,在处理后图像所处的坐标位置。示例性的,a(x1,y1)=b(x1,y1),其中,a(x1,y1)表示样本图像中的一像素点坐标,b(x1,y1)表示处理后图像中的一像素点坐标,样本图像中的像素点a(x1,y1)与处理后图像中的像素点b(x1,y1)对应。即,样本图像中的像素点a(x1,y1)对应处理后图像中的像素点b(x1,y1)。
56.请参阅图6,当样本图像中及处理后图像中包括相同的棋盘格时,步骤s202可以具体包括:步骤s301-步骤s303。
57.步骤s301:获取第一棋盘格上的网格点的坐标;其中,第一棋盘格为样本图像中的棋盘格。
58.需要说明的是,棋盘格由多个矩形的格子所组成,网格点即为格子的顶点。
59.可选地,获取第一棋盘格上的网格点的坐标可以具体包括:获取第一棋盘格上的各网格线上的像素点的坐标;分别对第一棋盘格上的各网格线上的像素点的坐标进行线性拟合,得到第一棋盘格上的各网格线的拟合曲线;基于第一棋盘格上的各网格线的拟合曲线的交点,确定第一棋盘格上的网格点的坐标。
60.上述的各网格线的拟合曲线包括横向网格线的拟合曲线以及竖向网格线的拟合曲线。
61.其中,横向网格线的拟合曲线的曲线方程可以为:
62.yj=fhj(x) (1)
63.公式(1)中,j表示竖向的第j个网格点,j取0~m;m表示竖向网格点的网格数,则yj表示竖向的第j个网格点对应的拟合曲线,fhj(x)表示竖向的第j个网格点对应的拟合曲线中关于x的表达式。需要说明的是,由于不同的场景下,横向网格线的拟合曲线各不相同,因此,上述公式(1)仅为一种通用表达方式。
64.其中,竖向网格线的拟合曲线的曲线方程可以为:
65.xj=fvi(y) (2)
66.公式(2)中,i表示横向的第i个网格点,i取0~n;n表示横向网格点的网格数,则xi表示横向的第i个网格点对应的拟合曲线,fvi(y)表示横向的第i个网格点对应的拟合曲线中关于y的表达式。需要说明的是,由于不同的场景下,竖向网格线的拟合曲线各不相同,因此,上述公式(2)仅为一种通用表达方式。
67.在得到第一棋盘格上的各横向网格线的拟合曲线以及各竖向网格线的拟合曲线后,确定出各网格线的拟合曲线的交点(x
ij
,y
ij
)。其中,交点(x
ij
,y
ij
)即为确定出的第一棋盘格上的网格点的坐标。
68.示例性的,(x
12
,y
12
)则表示第一条竖向网格线的拟合曲线与第二条横向网格线的拟合曲线之间的交点。
69.可见,在本技术实施例中,通过第一棋盘格上的各网格线的拟合曲线的交点,以便于合理地确定出第一棋盘格上的网格点的坐标。
70.步骤s302:基于第一棋盘格上的网格点的坐标确定第二棋盘格上的网格点的坐标;其中,第二棋盘格为处理后图像中的棋盘格。
71.假设棋盘格均为正方形的格子,在第二棋盘格中任意相邻的两个网格点之间的像素点数目为p。
72.则基于第一棋盘格上的网格点的坐标确定出的第二棋盘格上的网格点的坐标为(u
ij
,v
ij
)。
73.即两个棋盘格上的网格点满足如下对应关系:
74.(u
ij
,v
ij
)=(x
ij
,y
ij
) (3)
75.公式(3)中,u
ij
=i*p;v
ij
=j*p。
76.需要说明的是,(x
ij
,y
ij
)表示第一棋盘格中的一像素点,(u
ij
,v
ij
)表示第二棋盘格中与(x
ij
,y
ij
)对应的像素点,像素点(x
ij
,y
ij
)与第二棋盘格上的像素点(u
ij
,v
ij
)对应。即,第一棋盘格中的像素点(x
ij
,y
ij
)对应第二棋盘格上的像素点(u
ij
,v
ij
),二者即为一对映射。
77.步骤s303:基于第一棋盘格上的网格点的坐标、以及第二棋盘格上的网格点的坐标,确定样本图像中的像素点与处理后图像的像素点之间的映射关系。
78.在通过前述步骤确定出第二棋盘格上的网格点的坐标后,即确定出了网格点之间的映射关系,然后再基于网格点之间的映射关系确定出图像中所有像素点之间的映射关系。
79.具体的,上述步骤s303可以具体包括:步骤一和步骤二。
80.步骤一:基于第一棋盘格上的网格点的坐标与第二棋盘格上的网格点的坐标之间的映射关系,确定第一棋盘格上的网格线上的像素点的坐标与第二棋盘格上的网格线上的像素点的坐标之间的映射关系。
81.步骤一相当于是从点的映射,确定出该点所在的线的映射。
82.具体的,横向网格线的解析过程为:
83.将横向网格线上的所有网格点进行曲线拟合,即,对网格点的横坐标u
ij
、x
ij
(包括该点在第一棋盘格上的横坐标及该点在第二棋盘格上的横坐标)进行曲线拟合,得到该条横向网格线上的横坐标u
ij
和x
ij
之间的映射关系。该映射关系对应的表达式可以具体为:
84.xj=fj(u) (4)
85.公式(4)中,u=0,1,...n*p,公式(4)为一种通用表达方式。公式(4)表示该条横向网格线上的所有横坐标之间的映射关系,即该条横向网格线上在第二棋盘格上的横坐标u
ij
与该条横向网格线上在第一棋盘格上的横坐标x
ij
之间的映射关系。
86.然后,将公式(4)中的xj依次代入公式(1)中,可以得到该条横向网格线上的纵坐标v
ij
和y
ij
之间的映射关系,即,该条横向网格线上在第二棋盘格上的纵坐标v
ij
与该条横向网格线上在第一棋盘格上的纵坐标y
ij
之间的映射关系。
87.通过上述方式,即可确定出第一棋盘格上的横向网格线上的像素点的坐标与第二棋盘格上的横向网格线上的像素点的坐标之间的映射关系。
88.竖向网格线的解析过程为:
89.将竖向网格线上的所有网格点进行曲线拟合,即,对网格点的纵坐标v
ij
、y
ij
(包括该点在第一棋盘格上的纵坐标及该点在第二棋盘格上的纵坐标)进行曲线拟合,得到该条竖向网格线上的纵坐标v
ij
和y
ij
之间的映射关系。该映射关系对应的表达式可以具体为:
90.yj=fj(v) (5)
91.公式(5)中,v=0,1,...m*p,公式(5)为一种通用表达方式。公式(5)表示该条竖向网格线上的所有纵坐标之间的映射关系,即该条竖向网格线上在第二棋盘格上的纵坐标v
ij
与该条竖向网格线上在第一棋盘格上的纵坐标y
ij
之间的映射关系。
92.然后,将公式(5)中的yj依次代入公式(2)中,可以得到该条竖向网格线上的纵坐标v
ij
和y
ij
之间的映射关系,即,该条竖向网格线上在第二棋盘格上的纵坐标v
ij
与该条竖向网格线上在第一棋盘格上的纵坐标y
ij
之间的映射关系。
93.通过上述方式,即可确定出第一棋盘格上的竖向网格线上的像素点的坐标与第二棋盘格上的竖线网格线上的像素点的坐标之间的映射关系。
94.综上,即可确定出第一棋盘格上的网格线上的像素点的坐标与第二棋盘格上的网格线上的像素点的坐标之间的映射关系。
95.步骤二:基于第一棋盘格上的网格线上的像素点的坐标与第二棋盘格上的网格线上的像素点的坐标之间的映射关系,确定出样本图像中的所有像素点与处理后图像的所有像素点的映射关系。
96.步骤二相当于是从线的映射,确定所线所在面的映射。
97.具体的,根据网格线的映射坐标关系,可以进一步逐列或者逐行解析出所有像素的映射坐标。
98.其中,逐列解析是根据横线网格线的映射坐标进行的解析。比如,第k列的解析过程如下:
99.a.提取第k列在各条横向网格线的像素点(u
kj
,v
kj
),(x
kj
,y
kj
),然后进行线性拟合,得到多项式曲线。多项式曲线的表达式为:
100.yk=fvk(x) (6)
101.b.对第k列的纵坐标v
kj
、y
kj
进行曲线拟合,得到第k列拟合线的横坐标u
kj
和x
kj
之间的映射关系。该映射关系对应的表达式可以具体为:
102.xk=fk(v) (7)
103.c.将公式(7)中xk的依次代入公式(6),可以得到k第列拟合线的纵坐标x
kj
和y
kj
之间的映射关系。
104.d.重复上述abc,即可得到样本图像中的所有像素点与处理后图像的所有像素点的映射关系。
105.需要说明的是,逐行解析是根据竖向网格线的映射坐标进行的解析,由于其原理和过程与逐列解析基本相同,因此,此处不作赘述。
106.可见,在本技术实施例中,由于样本图像中及处理后图像中包括相同的棋盘格,因此,可以利用两个图像的棋盘格上的网格点,来确定样本图像中的像素点与处理后图像的像素点之间的映射关系,通过该方式,可以提高确定出的样本图像中的像素点与处理后图像的像素点之间的映射关系的准确性。并且,在上述实现过程中,利用第一棋盘格上的网格点的坐标与第二棋盘格上的网格点的坐标之间的映射关系,以便于确定出第一棋盘格上的网格线上的像素点的坐标与第二棋盘格上的网格线上的像素点的坐标之间的映射关系,最后,再利用第一棋盘格上的网格线上的像素点的坐标与第二棋盘格上的网格线上的像素点的坐标之间的映射关系,以便于确定出样本图像中的所有像素点与处理后图像的所有像素点的映射关系,也即,从上述由点到线,再由线到面的方式,可以合理且准确地确定出样本图像中的所有像素点与处理后图像的所有像素点的映射关系。
107.步骤s203:基于映射关系,生成预设像素映射表。
108.最后,基于上述像素点之间的映射关系,即可确定出该预设像素映射表。比如,预先确定出处理后图像的每个像素点的存储地址,然后结合之前确定出的映射关系,即可确定出每个样本图像上的像素点的映射地址(该映射地址即为所对应的处理后图像的像素点的存储地址)。
109.综上,在本技术实施例中,通过获取图像采集设备采集的样本图像,以及预先确定出的与样本图像对应的处理后图像来构建该预设像素映射表,进而使得后续能够在获取到
图像采集设备采集的待处理图像,直接利用该预设像素映射表确定出目标映射地址,进而得到处理后图像。此外,由于预设像素映射表也由图像采集设备采集的图像得到,因此,通过该方式,也可以提高后续生成的目标图像的准确性。
110.下面对预设像素映射表的应用进行说明。
111.一实施例中,预设像素映射表可以仅包括目标映射地址项。目标映射地址项与图像的原始存储地址对应。比如,电子设备在获取到图像采集设备采集的待处理图像后,基于预设像素映射表,确定出待处理图像的每个像素点的原始存储地址与目标映射地址的对应关系,进而将待处理图像的每个像素点的像素值存入对应的目标映射地址中。
112.当然,预设像素映射表中也可以包括原始存储地址项。
113.一实施例中,预设像素映射表中还可以包括权重项。权重项包括图像采集设备采集的图像中各像素点对应的权重值。
114.相应的,上述将待处理图像中的各像素点的像素值存入对应的目标映射地址,包括:基于权重项,对待处理图像中的各像素点的像素值进行权重计算;将计算后的各像素点的像素值存入对应的目标映射地址。
115.需要说明的是,权重项主要应用于图像的拼接中。比如在汽车环视场景中,需要将汽车前后左右的四个摄像头采集的图像拼接为一个全景图像,此时,需要将四个摄像头采集的待处理图像进行拼接。
116.在拼接的过程中,四个摄像头采集的待处理图像可以分别基于预设像素映射表的目标映射地址存入各自对应的目标映射地址,而权重项主要用于实现四个待处理图像的重合区域(交接区域)的合理拼接。
117.示例性的,在重合区域,可以设置像素点的权重值小于1,比如可以设置两个图像的重合区域的像素点的权重值均为0.5。而非重合区域,像素点的权重值为1。
118.当通过权重项确定出待处理图像中的各像素点的权重值后,对待处理图像中的各像素点的像素值进行权重计算;然后,再将计算后的各像素点的像素值存入对应的目标映射地址。
119.通过上述方式得到的拼接图像可以参考图7。
120.可见,在本技术实施例中,由于预设像素映射表中包括权重项,因此,可以利用该预设像素映射表实现图像的拼接过程。即,在图像拼接过程中,可以利用权重值来确定拼接重合区的像素值,进而将权重计算后的像素值存入对应的目标映射地址,以完成在图像存储过程中的图像拼接。
121.一实施例中,预设像素映射表还可以包括像素有效位项。像素有效位项用于表征图像采集设备的图像中的各像素点是否有效。
122.相应的,上述将待处理图像中的各像素点的像素值存入对应的目标映射地址,包括:基于像素有效位项,确定待处理图像中的有效像素点;将有效像素点存入对应的目标映射地址。
123.需要说明的是,像素有效位项可以应用于图像的矫治、视角变化、图像拼合的应用场景中。用户可以通过添加像素有效位来确定出所需的像素点。比如,用户仅需要全景摄像头采集的全景图像中的某一区域的图像,则可以事先标记该区域的像素点为有效像素点,而区域的像素点为非有效像素点。
124.可见,在本技术实施例中,由于预设像素映射表中包括像素有效位项,因此,可以仅存储所需的像素点所对应的像素值,通过该方式,可以节省存储空间,同时,用户也可以根据需求自行设定视角、图像尺寸等,以提供更多的应用场景。
125.需要说明的是,在其他实施例中,预设像素表中还可以同时包括目标映射地址项、权重项以及像素有效位项,本技术不作限定。当然,上述的预设像素表还可以应用于更多的场景中,并不限于上述的图像矫正、视角变化、图像拼接中。
126.请参阅图8,基于同一发明构思,本技术实施例还提供一种图像处理装置200,该装置包括:
127.获取模块210,获取图像采集设备采集的待处理图像。
128.处理模块220,用于基于预设像素映射表,将所述待处理图像中的各像素点的像素值存入对应的目标映射地址,以生成目标图像;其中,所述预设像素映射表包括目标映射地址项,所述目标映射地址项包括所述图像采集设备的图像中各像素点对应的存储地址。
129.可选地,该装置还包括构建模块。构建模块用于获取所述图像采集设备采集的样本图像、以及预先确定出的与所述样本图像对应的处理后图像;确定所述样本图像中的像素点与所述处理后图像的像素点之间的映射关系;基于所述映射关系,生成所述预设像素映射表。
130.可选地,所述样本图像中及所述处理后图像中包括相同的棋盘格,构建模块具体用于获取第一棋盘格上的网格点的坐标;其中,所述第一棋盘格为所述样本图像中的棋盘格;基于所述第一棋盘格上的网格点的坐标确定第二棋盘格上的网格点的坐标;其中,所述第二棋盘格为所述处理后图像中的棋盘格;基于所述第一棋盘格上的网格点的坐标、以及所述第二棋盘格上的网格点的坐标,确定所述样本图像中的像素点与所述处理后图像的像素点之间的映射关系。
131.可选地,构建模块还具体用于基于所述第一棋盘格上的网格点的坐标与所述第二棋盘格上的网格点的坐标之间的映射关系,确定所述第一棋盘格上的网格线上的像素点的坐标与所述第二棋盘格上的网格线上的像素点的坐标之间的映射关系;基于所述第一棋盘格上的网格线上的像素点的坐标与所述第二棋盘格上的网格线上的像素点的坐标之间的映射关系,确定出所述样本图像中的所有像素点与所述处理后图像的所有像素点的映射关系。
132.可选地,构建模块还具体用于获取所述第一棋盘格上的各网格线上的像素点的坐标;分别对所述第一棋盘格上的各网格线上的像素点的坐标进行线性拟合,得到所述第一棋盘格上的各网格线的拟合曲线;基于所述第一棋盘格上的各网格线的拟合曲线的交点,确定所述第一棋盘格上的网格点的坐标。
133.可选地,所述预设像素映射表包括权重项;所述权重项包括所述图像采集设备采集的图像中各像素点对应的权重值;相应的,处理模块具体用于基于所述权重项,对所述待处理图像中的各像素点的像素值进行权重计算;将计算后的各像素点的像素值存入对应的目标映射地址。
134.可选地,所述预设像素映射表包括:像素有效位项;所述像素有效位项用于表征所述图像采集设备的图像中的各像素点是否有效;相应的,处理模块具体用于基于所述像素有效位项,确定所述待处理图像中的有效像素点;将所述有效像素点存入对应的目标映射
地址。
135.需要说明的是,由于所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
136.基于同一发明构思,本技术实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序在被运行时执行上述实施例中提供的方法。
137.该存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如软盘、硬盘、磁带)、光介质(例如dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
138.在本技术所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
139.另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
140.再者,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
141.在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
142.以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
技术特征:1.一种图像处理方法,其特征在于,包括:获取图像采集设备采集的待处理图像;基于预设像素映射表,将所述待处理图像中的各像素点的像素值存入对应的目标映射地址,以生成目标图像;其中,所述预设像素映射表包括目标映射地址项,所述目标映射地址项包括所述图像采集设备的图像中各像素点对应的存储地址。2.根据权利要求1所述的方法,其特征在于,通过如下步骤获取所述预设像素映射表,包括:获取所述图像采集设备采集的样本图像、以及预先确定出的与所述样本图像对应的处理后图像;确定所述样本图像中的像素点与所述处理后图像的像素点之间的映射关系;基于所述映射关系,生成所述预设像素映射表。3.根据权利要求2所述的方法,其特征在于,所述样本图像中及所述处理后图像中包括相同的棋盘格,所述确定所述样本图像中的像素点与所述处理后图像的像素点之间的映射关系,包括:获取第一棋盘格上的网格点的坐标;其中,所述第一棋盘格为所述样本图像中的棋盘格;基于所述第一棋盘格上的网格点的坐标确定第二棋盘格上的网格点的坐标;其中,所述第二棋盘格为所述处理后图像中的棋盘格;基于所述第一棋盘格上的网格点的坐标、以及所述第二棋盘格上的网格点的坐标,确定所述样本图像中的像素点与所述处理后图像的像素点之间的映射关系。4.根据权利要求3所述的方法,其特征在于,所述基于所述第一棋盘格上的网格点的坐标、以及所述第二棋盘格上的网格点的坐标,确定所述样本图像中的像素点与所述处理后图像的像素点的映射关系,包括:基于所述第一棋盘格上的网格点的坐标与所述第二棋盘格上的网格点的坐标之间的映射关系,确定所述第一棋盘格上的网格线上的像素点的坐标与所述第二棋盘格上的网格线上的像素点的坐标之间的映射关系;基于所述第一棋盘格上的网格线上的像素点的坐标与所述第二棋盘格上的网格线上的像素点的坐标之间的映射关系,确定出所述样本图像中的所有像素点与所述处理后图像的所有像素点的映射关系。5.根据权利要求3所述的方法,其特征在于,所述获取第一棋盘格上的网格点的坐标,包括:获取所述第一棋盘格上的各网格线上的像素点的坐标;分别对所述第一棋盘格上的各网格线上的像素点的坐标进行线性拟合,得到所述第一棋盘格上的各网格线的拟合曲线;基于所述第一棋盘格上的各网格线的拟合曲线的交点,确定所述第一棋盘格上的网格点的坐标。6.根据权利要求1-5中任一项所述的方法,其特征在于,所述预设像素映射表包括权重项;所述权重项包括所述图像采集设备采集的图像中各像素点对应的权重值;所述将所述待处理图像中的各像素点的像素值存入对应的目标映射地址,包括:
基于所述权重项,对所述待处理图像中的各像素点的像素值进行权重计算;将计算后的各像素点的像素值存入对应的目标映射地址。7.根据权利要求1-5中任一项所述的方法,其特征在于,所述预设像素映射表包括:像素有效位项;所述像素有效位项用于表征所述图像采集设备的图像中的各像素点是否有效;相应的,所述将所述待处理图像中的各像素点的像素值存入对应的目标映射地址,包括:基于所述像素有效位项,确定所述待处理图像中的有效像素点;将所述有效像素点存入对应的目标映射地址。8.一种图像处理装置,其特征在于,包括:获取模块,获取图像采集设备采集的待处理图像;处理模块,用于基于预设像素映射表,将所述待处理图像中的各像素点的像素值存入对应的目标映射地址,以生成目标图像;其中,所述预设像素映射表包括目标映射地址项,所述目标映射地址项包括所述图像采集设备的图像中各像素点对应的存储地址。9.一种电子设备,其特征在于,包括:处理器和存储器,所述处理器和所述存储器连接;所述存储器用于存储程序;所述处理器用于运行存储在所述存储器中的程序,执行如权利要求1-7中任一项所述的方法。10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序在被计算机运行时执行如权利要求1-7中任一项所述的方法。
技术总结本申请提供一种图像处理方法、装置,电子设备及存储介质。图像处理方法包括:获取图像采集设备采集的待处理图像;基于预设像素映射表,将待处理图像中的各像素点的像素值存入对应的目标映射地址,以生成目标图像;其中,预设像素映射表包括目标映射地址项,目标映射地址项包括图像采集设备的图像中各像素点对应的存储地址。在本申请实施例中,直接基于待处理图像的处理需求将待处理图像进行存储,在存储完成后,得到的即为处理后的目标图像,通过该方式,可以减小硬件资源消耗,减小待处理图像的运算时间。的运算时间。的运算时间。
技术研发人员:汪浩 黄一平 杨立友 周缵
受保护的技术使用者:安徽山迪光能技术有限公司
技术研发日:2022.07.18
技术公布日:2022/11/1