CN110691226B - 图像处理方法、装置、终端及计算机可读存储介质 - Google Patents
图像处理方法、装置、终端及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110691226B CN110691226B CN201910965690.7A CN201910965690A CN110691226B CN 110691226 B CN110691226 B CN 110691226B CN 201910965690 A CN201910965690 A CN 201910965690A CN 110691226 B CN110691226 B CN 110691226B
- Authority
- CN
- China
- Prior art keywords
- color temperature
- image
- white balance
- processed
- edge
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 26
- 238000012545 processing Methods 0.000 claims abstract description 54
- 238000004590 computer program Methods 0.000 claims description 21
- 238000000034 method Methods 0.000 claims description 21
- 238000012549 training Methods 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims description 8
- 230000011218 segmentation Effects 0.000 claims description 7
- 238000001792 White test Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011088 calibration curve Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
- H04N23/84—Camera processing pipelines; Components thereof for processing colour signals
- H04N23/88—Camera processing pipelines; Components thereof for processing colour signals for colour balance, e.g. white-balance circuits or colour temperature control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/10—Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Color Television Image Signal Generators (AREA)
- Processing Of Color Television Signals (AREA)
Abstract
本申请属于图像处理技术领域,尤其涉及一种图像处理方法、装置、终端及计算机可读存储介质,其中,所述图像处理方法包括:将待处理图像输入预设滤波器,得到所述预设滤波器输出的待处理图像的第一色温边缘;根据所述第一色温边缘将所述待处理图像分割成一个或多个第一色温区域;获取所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数,并利用所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡,得到所述待处理图像经白平衡处理后的目标图像;使得目标图像的色彩值具有较高的保真度,不会出现偏色的情况,提高了图像白平衡处理的准确度。
Description
技术领域
本申请属于图像处理技术领域,尤其涉及一种图像处理方法、装置、终端及计算机可读存储介质。
背景技术
环境中不同色温的光源,其光谱成分变化较大。摄像头在不同色温的光源下对物体进行拍摄时,照片中呈现的物体颜色不相同。例如,在低色温光源下,白色物体会编红,在高色温光源下,白色物体会偏蓝。因此,需要对摄像头采集的图像进行白平衡处理,使物体在任意色温光源下成像时色彩不会出现失真。
然而,目前的白平衡算法在调整图像白平衡时准确度较低,容易出现偏色。
发明内容
本申请实施例提供一种图像处理方法、装置、终端及计算机可读存储介质,可以解决对图像进行白平衡处理时准确度低的技术问题。
本申请实施例第一方面提供一种图像处理方法,所述图像处理方法包括:
将待处理图像输入预设滤波器,得到所述预设滤波器输出的待处理图像的第一色温边缘;
根据所述第一色温边缘将所述待处理图像分割成一个或多个第一色温区域;
获取所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数,并利用所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡,得到所述待处理图像经白平衡处理后的目标图像。
本申请实施例第二方面提供一种图像处理装置,所述图像处理装置包括:
滤波单元,用于将待处理图像输入预设滤波器,得到所述预设滤波器输出的待处理图像的第一色温边缘;
分割单元,用于根据所述第一色温边缘将所述待处理图像分割成一个或多个第一色温区域;
白平衡单元,用于获取所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数,并利用所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡,得到所述待处理图像经白平衡处理后的目标图像。
本申请实施例第三方面提供一种终端,包括光传感器、距离传感器、存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述方法的步骤。
本申请实施例第四方面提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述方法的步骤。
本申请实施例中,通过将待处理图像输入预设滤波器,得到所述预设滤波器输出的待处理图像的第一色温边缘,并根据该第一色温边缘对待处理图像进行分割得到一个或多个第一色温区域,实现了依据色温差异对待处理图像进行准确分割,并使得利用每个第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡之后得到的目标图像的色彩值具有较高的保真度,不会出现偏色的情况;能够适应对混合光源下拍摄的图像进行白平衡处理,提高了图像白平衡处理的准确度。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本申请实施例提供的一种图像处理方法的第一实现流程示意图;
图2是本申请实施例提供的训练滤波器的实现流程示意图;
图3是本申请实施例提供的样本图片的示意图;
图4是本申请实施例提供的第一色温区域的示意图;
图5是本申请实施例提供的一种图像处理方法步骤101的具体实现流程示意图;
图6是本申请实施例提供的第一色温边缘的示意图;
图7是本申请实施例提供的一种图像处理方法的第二实现流程示意图;
图8是本申请实施例提供的第三色温区域的示意图;
图9是本申请实施例提供的色彩比例数据与色温之间的校准线示意图;
图10是本申请实施例提供的图像处理装置的结构示意图;
图11是本申请实施例提供的终端的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
在对图像进行白平衡处理时,通常先寻找整个图像的白点,然后根据白点的像素值确定光源的色温,再根据色温确定图像的白平衡调整参数,并利用该白平衡调整参数对整个图像进行白平衡处理。
然而,这种方法仅仅适用于单光源下的图像白平衡处理,对于两种或两种以上混合光源的场景,利用这种白平衡处理方法,则会使得图像出现偏色,无法保证图像白平衡调整的准确度。
例如,在3800K与6500K这两种色温的混合光源场景,上述白平衡处理方法即使找到了3800K对应的白点和6500K对应的白点,由于只会按3800K与6500K的中间色温5000k对图像进行白平衡处理,因此,不可避免地将导致图像出现偏色。另外,在混合光源下,当某个色温对应的图像区域只占待处理图像的一小部分时,还有可能会损失对该区域的白平衡处理,降低了图像白平衡处理的质量。
基于此,本申请实施例提供一种图像处理方法、装置、终端及计算机可读存储介质,可以提高图像白平衡处理的准确度,为了说明本申请的技术方案,下面通过具体实施例来进行说明。
如图1示出了本申请实施例提供的一种图像处理方法的实现流程示意图,该方法应用于终端,可以由终端上配置的图像处理装置执行,适用于需提高图像白平衡处理的准确度的情形。其中,上述终端可以为手机、平板电脑、可穿戴设备等智能终端,上述图像处理方法可以包括步骤101至步骤103。
步骤101,将待处理图像输入预设滤波器,得到预设滤波器输出的待处理图像的第一色温边缘。
在本申请实施例中,上述预设滤波器是预先训练好的滤波器,其用于对输入的待处理图像进行色温边缘的提取。而色温边缘由图像中色温发生跳变的边界像素点组成。
在本申请的一些实施方式中,该预设滤波器可以为预设用于提取图像中色温发生跳变的像素点的边缘算子。例如,该边缘算子可以包括Sobel算子、Prewitt算子、Roberts算子、拉普拉斯算子(Laplacian of aGaussian,LoG)和Canny算子等等。
如图2所示,在本申请的一些实施方式中,上述预设滤波器的训练步骤可以包括:步骤201至步骤204。
步骤201,获取样本图片,并且,该样本图片具有预先标记的色温边缘。
在本申请实施例中,上述样本图片可以包括与一种光源(单光源)对应的样本图片,也可以包括两种或两种以上的光源对应的样本图片。由于色温边缘是由图像中色温发生跳变的边界像素点组成的,因此,上述预先标记好色温边缘的样本图片中,若样本图片内存在色温边缘,则该样本图片必然对应的两种或两种以上的光源;若样本图片内不存在色温边缘时,则该样本图片对应的光源为单光源。
例如,如图3所示,样本图片3a为在暗室中只存在一种光源(例如,白炽灯)的场景下拍摄的图像,该样本图片3a中不存在色温边缘;样本图片3b为在暗室中存在两种光源(例如,白炽灯和激光)的场景下拍摄的图像,并且,该样本图片3b中存在色温边缘31和色温边缘32。其中,样本图片3b中色温边缘31与色温边缘32之间的白色区域表示激光照射下的物体的成像。
本申请实施例中,通过利用存在色温边缘和不存在色温边缘等多种类型的样本图片对待训练的滤波器进行训练,可以使得预设滤波器能够对多种不同光源场景下的图片进行色温边缘的提取。
步骤202,将样本图片输入待训练的滤波器,由待训练的滤波器输出样本图片的色温边缘。
步骤203,计算待训练的滤波器输出的样本图片的色温边缘与样本图片预先标记好的色温边缘的相似度。
步骤204,若相似度小于相似度阈值,则调整滤波器的参数,重新利用样本图片对待训练的滤波器进行训练,直至相似度大于或等于相似度阈值时,得到预设滤波器。
本申请实施例中,当待训练的滤波器输出的样本图片的色温边缘与样本图片预先标记好的色温边缘的相似度大于或等于相似度阈值时,表示滤波器已经能够较准确地计算出图像中的色温边缘,因此,可以表示滤波器已经训练完成。
需要说明的是,上述对滤波器的训练还可以参考其他相关技术中对各种人工智能模型的训练方式,此处不再赘述。
另外,在本申请的一些实施方式中,上述预设滤波器也可以为预设神经网络模型。例如,上述预设滤波器可以为预设卷积神经网络模型或者为预设深度信念网络模型等等,本申请对此不做限制,只需要能够提取色温边缘即可。
步骤102,根据第一色温边缘将待处理图像分割成一个或多个第一色温区域。
本申请实施例中,在将待处理图像输入预设滤波器,得到待处理图像的第一色温边缘之后,即可根据该色温边缘将待处理图像分割成一个或多个第一色温区域。
例如,如图4所示,待处理图像为暗室中存在两种光源(例如,白炽灯和激光)的场景下拍摄的图像时,在利用预设滤波器得到待处理图像A的第一色温边缘41、42之后,即可根据第一色温边缘41、42将待处理图像划分为第一色温区域A1、第一色温区域A2和第一色温区域A3。
其中,第一色温区域A1与第一色温区域A2为相邻的两个色温区域,第一色温区域A2与第一色温区域A3为相邻的两个色温区域,并且,相邻的两个色温区域各自对应的色温不相同。
步骤103,获取一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数,并利用一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡,得到待处理图像经白平衡处理后的目标图像。
由于在将待处理图像分割成多个第一色温区域之后,每个色温区域的色温有可能不同,因此,在对待处理图像进行白平衡处理时,需要以一个或多个第一色温区域中的每个第一色温区域为单位,利用与一个或多个第一色温区域中的每个第一色温区域对应的白平衡调整参数调整对应的第一色温区域的白平衡,最终得到经白平衡处理后的目标图像,而不是直接得到一个白平衡调整参数后,利用该白平衡调整参数对整个待处理图像进行白平衡处理,因此,可以实现对混合光源下拍摄的图像进行准确地白平衡处理。即使,某个色温对应的图像区域只占待处理图像的一小部分,也可以对该区域进行准确的白平衡处理。
本申请实施例中,通过将待处理图像输入预设滤波器,得到预设滤波器输出的待处理图像的第一色温边缘,并根据该第一色温边缘对待处理图像进行分割得到一个或多个第一色温区域,实现了依据色温差异对待处理图像进行准确分割,并使得利用一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡之后得到的目标图像的色彩值具有较高的保真度,不会出现偏色的情况,能够适应对混合光源下拍摄的图像进行白平衡处理,提高了图像白平衡处理的准确度。
在本申请的一些实施方式中,在将待处理图像输入预设滤波器之后,还可以根据滤波器的输出情况,确定该待处理图像是否为在包含不同色温的光源下拍摄的得到的。具体的,当待处理图像存在色温边缘时,表示待处理图像是在包含不同色温的光源(多种光源)下拍摄得到的,当待处理图像不存在色温边缘时,表示待处理图像是在单色温的光源下拍摄得到的。
如图5所示,在本申请的一些实施方式中,上述步骤101,将待处理图像输入预设滤波器,得到预设滤波器输出的待处理图像的第一色温边缘的步骤可以具体包括:步骤501至步骤502。
步骤501,将待处理图像输入预设滤波器,利用预设滤波器读取待处理图像中各个待滤波区域像素点的像素值,并计算待滤波区域的特征值。
上述待滤波区域是指上述预设滤波器每次读取的像素值对应的像素点组成的区域。
步骤502,将特征值不相同的相邻两个待滤波区域中的任意一个待滤波区域的像素点确定为边缘像素点,并由边缘像素点组成第一色温边缘。
在将待处理图像输入预设滤波器,利用预设滤波器读取待处理图像中各个待滤波区域像素点的像素值,并计算待滤波区域的特征值之后,即可将特征值不相同的相邻两个待滤波区域中的任意一个待滤波区域的像素点确定为边缘像素点,并由边缘像素点组成第一色温边缘。
例如,如图6所示,上述预设滤波器对待处理图像6A从上至下、从左至右依次读取每个待滤波区域内的像素点的像素值,并计算出各个待滤波区域的特征值,得到由边缘像素点组成第一色温边缘61、62。
为了提高图像白平衡处理的效率,如图7所示,在本申请的一些实施方式中,上述图像处理方法还可以包括步骤701至步骤704。
步骤701,将待处理图像分割成多个子图像,并确定所述多个子图像中每个子图像的色温。
步骤702,对空间上相邻且具有相同色温的多个子图像进行组合为新的子图像,并将未进行组合的子图像以及新的子图像分别确定为第二色温区域。
步骤703,利用预设滤波器提取每个位于第二色温区域边缘的子图像与相邻第二色温区域中对应的相邻子图像之间的第二色温边缘,得到待处理图像对应的经第二色温边缘分割形成的一个或多个第三色温区域。
步骤704,获取一个或多个第三色温区域中的每个第三色温区域的白平衡调整参数,并利用所述一个或多个第三色温区域中的每个第三色温区域对应的白平衡调整参数分别调整对应的第三色温区域的白平衡,得到待处理图像经白平衡处理后的目标图像。
例如,如图8所示,将待处理图像8A分割成B1至B16共16个子图像,并确定B1至B16中每个子图像的色温。例如,B1的色温为a,B2的色温为b,B3的色温为c,B4的色温为d,B5的色温为e,B6的色温为f,B7的色温为g,B8的色温为h,B9-B16的色温均为i。接着,如图像8B所示,将空间上相邻且具有相同色温的子图像B9-B16组合得到新的子图像B’9,并将未进行组合的子图像B1-B8以及新的子图像B’9分别确定为第二色温区域B1-B8以及B’9。然后,利用预设滤波器提取B1与B5、B1与B2、B2与B3、B2与B6、B3与B4、B3与B7、B4与B8、B5与B8、B5与B9、B5与B6、B6与B10、B6与B7、B7与B8、B7与B11、B8与B12之间的第二色温边缘,即,提取每个位于第二色温区域边缘的子图像与相邻第二色温区域中对应的相邻子图像之间的第二色温边缘,得到如图像8C所示的待处理图像对应的经第二色温边缘分割形成的第三色温区域C1、C2、C3。
需要说的是,本实施例中,在利用预设滤波器提取边缘时,通过将空间上相邻且具有相同色温的多个子图像进行组合为新的子图像;并将未进行组合的子图像以及新的子图像分别确定为第二色温区域;然后再利用预设滤波器提取每个位于第二色温区域边缘的子图像与相邻第二色温区域中对应的相邻子图像之间的第二色温边缘(例如,B5这个第二色温区域与位于B’9这个色温区域边缘且与B5相邻的子图像B9之间的第二色温边缘),得到待处理图像对应的经第二色温边缘分割形成的一个或多个第三色温区域,使得预设滤波器可以不需要对整个图像的每个子图像进行扫描得到第一色温边缘,而是可以先将间上相邻且具有相同色温的多个子图像进行组合为新的子图像之后,以该新的子图像(第二色温区域)为单位进行色温边缘提取,减少了色温边缘提取的计算量,提高了图像白平衡处理的效率。
例如,由于子图像B9与B13位于同一个第二色温区域,因此,可以不需要利用预设滤波器在子图像B9与B13之间提取色温边缘。
在上述描述的各个实施方式中,上述步骤103获取一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数之前,可以包括:获取标准图像;该标准图像为在已知色温的标准光源下拍摄白色测试卡得到的图像;根据该标准图像各个像素点的像素值确定标准图像的色彩比例数据,得到色彩比例数据与色温之间的校准线,并根据色彩比例数据确定已知色温的标准光源对应的白平衡调整参数,得到色温与白平衡调整参数的对应关系表。
也就是说,在获取一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数之前,需要对摄像头的传感器在不同已知色温下对颜色的响应进行标定,得到摄像头的传感器在不同的已知色温下的色彩比例数据和对应的白平衡调整参数。
其中,上述色彩比例数据可以包括:红绿比R/G以及蓝绿比B/G;
例如,如图9所示,为本申请实施例提供的色彩比例数据与色温之间的校准线示意图,通过该校准线L可以得到摄像头的传感器在6500K、5000K、3800K下的色彩比例数据,即,6500K、5000K、3800K对应的坐标(R/G,B/G),且该坐标可以为如图9所示的小圆圆心的坐标。
例如,摄像头的传感器在3800K下的色彩比例数据为(100/90,110/90),则为了将其校准为灰区间上的点,其白平衡调整参数可以为A*90/100,B*90/110),使得像素值在亮度不变的情况下,白点的RGB三通道的像素值相等。
在本申请实施例中,在得到上述校准线和对应关系表之后,即可根据一个或多个第一色温区域中的每个第一色温区域各个像素点的像素值,确定一个或多个第一色温区域中的每个第一色温区域的白点;并根据每个第一色温区域的白点的色彩比例数据分别查找所述校准线,得到一个或多个第一色温区域中的每个第一色温区域的色温;接着,根据一个或多个第一色温区域中的每个第一色温区域的色温查找上述对应关系表,得到所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数。
具体的,上述根据一个或多个第一色温区域中的每个第一色温区域各个像素点的像素值,确定一个或多个第一色温区域中的每个第一色温区域的白点可以包括:根据一个或多个第一色温区域中的每个第一色温区域各个像素点的RGB像素值计算一个或多个第一色温区域中的每个第一色温区域的各个像素点的亮度;将一个或多个第一色温区域中的每个第一色温区域中亮度最大的像素点确定为对应的第一色温区域的白点。
其中,白点是指图像中位于灰区间的点,即R值等于G值且等于B值的点。由于白点对光的放射能力最强,因此,可以通过将亮度最大的像素点确定为第一色温区域的白点。
可选的,上述根据一个或多个第一色温区域中的每个第一色温区域各个像素点的像素值,确定一个或多个第一色温区域中的每个第一色温区域的白点还可以包括:根据一个或多个第一色温区域中的每个第一色温区域各个像素点的RGB像素值计算一个或多个第一色温区域中的每个第一色温区域的各个像素点的色彩比例数据;将一个或多个第一色温区域中的每个第一色温区域中色彩比例数据距离校准线最近且数量最多的像素点确定为对应的第一色温区域的白点。
在上述描述的各个实施方式中,上述根据第一色温边缘将待处理图像分割成一个或多个第一色温区域之后,还可以实现对环境中的目标对象的位置进行识别,具体可以通过先获取一个或多个第一色温区域中的每个第一色温区域的色温,得到目标色温对应的第一色温区域;接着,根据目标色温对应的第一色温区域在待处理图像中的位置,确定目标对象的位置。
该目标对象的位置既可以包括目标对象在待处理图像中的位置也可以包括在现实环境中的位置。
例如,待处理图像为摄像头实时拍摄得到的图像,并且该待处理图像中包括经激光照射的对象和经白炽灯照射的对象时,为了确定经激光照射的目标对象在图像中的位置时,可以通过将待处理图像输入预设滤波器,得到预设滤波器输出的待处理图像的第一色温边缘,并根据该第一色温边缘将待处理图像分割成多个第一色温区域之后,获取一个或多个第一色温区域中的每个第一色温区域的色温,然后根据一个或多个第一色温区域中的每个第一色温区域的色温找出与激光的色温对应的第一色温区域,即可得到经激光照射的目标对象在待处理图像中的位置。在获取摄像头的内参数据和外参数据之后,经过矩阵变换即可将目标对象在待处理图像中的位置映射为目标对象在现实环境中的位置,从而实现了根据色温确定目标对象的位置。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为根据本发明,某些步骤可以采用其它顺序进行。
图10示出了本申请实施例提供的一种图像处理装置10的结构示意图,包括滤波单元11、分割单元12以及白平衡单元13。
滤波单元11,用于将待处理图像输入预设滤波器,得到预设滤波器输出的待处理图像的第一色温边缘;
分割单元12,用于根据第一色温边缘将待处理图像分割成一个或多个第一色温区域;
白平衡单元13,用于获取一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数,并利用第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡,得到待处理图像经白平衡处理后的目标图像。
在本申请的一些实施方式中,上述分割单元12还用于:将待处理图像分割成多个子图像,并确定多个子图像中每个子图像的色温;对空间上相邻且具有相同色温的多个子图像进行组合为新的子图像,并将未进行组合的子图像以及新的子图像分别确定为第二色温区域。
在本申请的一些实施方式中,上述滤波单元11还用于利用预设滤波器提取每个位于第二色温区域边缘的子图像与相邻第二色温区域中对应的相邻子图像之间的第二色温边缘,得到待处理图像对应的经第二色温边缘分割形成的一个或多个第三色温区域。
在本申请的一些实施方式中,上述白平衡单元13还用于获取所述一个或多个第三色温区域中的每个第三色温区域的白平衡调整参数,并利用每个第三色温区域对应的白平衡调整参数分别调整对应的第三色温区域的白平衡,得到待处理图像经白平衡处理后的目标图像。
在本申请的一些实施方式中,上述滤波单元11还用于:将待处理图像输入预设滤波器,利用预设滤波器读取待处理图像中各个待滤波区域像素点的像素值,并计算待滤波区域的特征值;将特征值不相同的相邻两个待滤波区域中的任意一个待滤波区域的像素点确定为边缘像素点,并由边缘像素点组成第一色温边缘。
在本申请的一些实施方式中,上述图像处理装置还包括训练单元,该训练单元用于获取样本图片;该样本图片具有预先标记的色温边缘;将样本图片各个像素点的像素值输入待训练的滤波器,由待训练的滤波器输出样本图片的色温边缘;计算待训练的滤波器输出的样本图片的色温边缘与样本图片预先标记的色温边缘的相似度;若相似度小于相似度阈值,则调整待训练的滤波器的参数,重新利用样本图片对待训练的滤波器进行训练,直至相似度大于或等于相似度阈值时,得到预设滤波器。
在本申请的一些实施方式中,上述白平衡单元还用于:在获取一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数之前,获取标准图像;该标准图像为在已知色温的标准光源下拍摄白色测试卡得到的图像,根据标准图像各个像素点的像素值确定标准图像的色彩比例数据,得到色彩比例数据与色温之间的校准线,并根据色彩比例数据确定已知色温的标准光源对应的白平衡调整参数,得到色温与白平衡调整参数的对应关系表。
在本申请的一些实施方式中,上述白平衡单元还用于根据一个或多个第一色温区域中的每个第一色温区域各个像素点的像素值,确定一个或多个第一色温区域中的每个第一色温区域的白点;根据一个或多个第一色温区域中的每个第一色温区域的白点的色彩比例数据查找校准线,得到一个或多个第一色温区域中的每个第一色温区域的色温;根据一个或多个第一色温区域中的每个第一色温区域的色温查找对应关系表,得到一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数。
在本申请的一些实施方式中,上述白平衡单元还用:根据一个或多个第一色温区域中的每个第一色温区域各个像素点的RGB像素值计算一个或多个第一色温区域中的每个第一色温区域的各个像素点的亮度;将一个或多个第一色温区域中的每个第一色温区域中亮度最大的像素点确定为对应的第一色温区域的白点;或者,根据第一色温区域各个像素点的RGB像素值计算第一色温区域的各个像素点的色彩比例数据;将一个或多个第一色温区域中的每个第一色温区域中色彩比例数据距离校准线最近且数量最多的像素点确定为对应的第一色温区域的白点。
在本申请的一些实施方式中,上述图像处理装置还包括位置识别单元,用于获取一个或多个第一色温区域中的每个第一色温区域的色温,得到目标色温对应的第一色温区域;根据目标色温对应的第一色温区域在待处理图像中的位置,确定目标对象的位置。
需要说明的是,为描述的方便和简洁,上述描述的图像处理装置10的具体工作过程,可以参考上述图1至图9中描述的方法的对应过程,在此不再赘述。
如图11所示,本申请提供一种用于实现上述图像处理方法的终端,该终端可以包括:处理器111、存储器112、一个或多个输入设备113(图11中仅示出一个)和一个或多个输出设备114(图11中仅示出一个)。处理器111、存储器112、输入设备113和输出设备114通过总线115连接。
应当理解,在本申请实施例中,所称处理器111可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
输入设备113可以包括虚拟键盘、触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备114可以包括显示器、扬声器等。
存储器112可以包括只读存储器和随机存取存储器,并向处理器111提供指令和数据。存储器112的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器112还可以存储设备类型的信息。
上述存储器112存储有计算机程序,上述计算机程序可在上述处理器111上运行,例如,上述计算机程序为图像处理方法的程序。上述处理器111执行上述计算机程序时实现上述图像处理方法实施例中的步骤,例如图1所示的步骤101至步骤103。或者,上述处理器111执行上述计算机程序时实现上述装置实施例中各单元的功能,例如图10所示单元11至13的功能。
上述计算机程序可以被分割成一个或多个模块/单元,上述一个或者多个模块/单元被存储在上述存储器112中,并由上述处理器111执行,以完成本申请。上述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述上述计算机程序在上述进行图像处理的第一终端中的执行过程。例如,上述计算机程序可以被分割成滤波单元、分割单元和白平衡单元,各单元具体功能如下:
滤波单元,用于将待处理图像输入预设滤波器,得到预设滤波器输出的待处理图像的第一色温边缘;
分割单元,用于根据第一色温边缘将待处理图像分割成一个或多个第一色温区域;
白平衡单元,用于获取一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数,并利用第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡,得到待处理图像经白平衡处理后的目标图像。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上上述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (9)
1.一种图像处理方法,其特征在于,包括:
将待处理图像输入预设滤波器,得到所述预设滤波器输出的待处理图像的第一色温边缘;
根据所述第一色温边缘将所述待处理图像分割成一个或多个第一色温区域;
获取所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数,并利用所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡,得到所述待处理图像经白平衡处理后的目标图像;
其中,在所述将待处理图像输入预设滤波器,得到所述预设滤波器输出的待处理图像的第一色温边缘之前,包括:
将所述待处理图像分割成多个子图像,并确定所述多个子图像中每个子图像的色温;
对空间上相邻且具有相同色温的多个子图像进行组合为新的子图像,并将未进行组合的子图像以及所述新的子图像分别确定为第二色温区域;
所述将待处理图像输入预设滤波器,得到所述预设滤波器输出的待处理图像的第一色温边缘,包括:
利用预设滤波器提取每个位于所述第二色温区域边缘的子图像与相邻第二色温区域中对应的相邻子图像之间的第二色温边缘,得到所述待处理图像对应的经所述第二色温边缘分割形成的一个或多个第三色温区域;
所述获取所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数,并利用所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡,得到所述待处理图像经白平衡处理后的目标图像,包括:
获取所述一个或多个第三色温区域中的每个第三色温区域的白平衡调整参数,并利用所述一个或多个第三色温区域中的每个第三色温区域的白平衡调整参数分别调整对应的第三色温区域的白平衡,得到所述待处理图像经白平衡处理后的目标图像。
2.如权利要求1所述的图像处理方法,其特征在于,所述将待处理图像输入预设滤波器,得到所述预设滤波器输出的待处理图像的第一色温边缘,包括:
将待处理图像输入预设滤波器,利用所述预设滤波器读取所述待处理图像中各个待滤波区域像素点的像素值,并计算各个所述待滤波区域的特征值;
将特征值不相同的相邻两个待滤波区域中的任意一个待滤波区域的像素点确定为边缘像素点,并由多个所述边缘像素点组成所述第一色温边缘。
3.如权利要求1-2任意一项所述的图像处理方法,其特征在于,所述预设滤波器的训练步骤包括:
获取样本图片;所述样本图片具有预先标记的色温边缘;
将所述样本图片输入待训练的滤波器,由所述待训练的滤波器输出所述样本图片的色温边缘;
计算所述待训练的滤波器输出的所述样本图片的色温边缘与所述样本图片预先标记的色温边缘的相似度;
若所述相似度小于相似度阈值,则调整所述待训练的滤波器的参数,重新利用所述样本图片对所述待训练的滤波器进行训练,直至所述相似度大于或等于所述相似度阈值时,得到所述预设滤波器。
4.如权利要求1所述的图像处理方法,其特征在于,包括:在所述获取所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数之前,包括:
获取标准图像;所述标准图像为在已知色温的标准光源下拍摄白色测试卡得到的图像;
根据所述标准图像各个像素点的像素值确定所述标准图像的色彩比例数据,得到色彩比例数据与色温之间的校准线,并根据所述色彩比例数据确定已知色温的标准光源对应的白平衡调整参数,得到色温与白平衡调整参数的对应关系表;
所述获取所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数,包括:
根据所述一个或多个第一色温区域中的每个第一色温区域各个像素点的像素值,确定所述一个或多个第一色温区域中的每个第一色温区域的白点;
根据所述一个或多个第一色温区域中的每个第一色温区域的白点的色彩比例数据分别查找所述校准线,得到所述一个或多个第一色温区域中的每个第一色温区域的色温;
根据所述一个或多个第一色温区域中的每个第一色温区域的色温查找所述对应关系表,得到所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数。
5.如权利要求4所述的图像处理方法,其特征在于,所述根据所述一个或多个第一色温区域中的每个第一色温区域各个像素点的像素值,确定所述一个或多个第一色温区域中的每个第一色温区域的白点,包括:
根据所述一个或多个第一色温区域中的每个第一色温区域各个像素点的RGB像素值计算所述一个或多个第一色温区域中的每个第一色温区域的各个像素点的亮度;
将所述一个或多个第一色温区域中的每个第一色温区域亮度最大的像素点确定为对应的第一色温区域的白点;
或者,
根据所述一个或多个第一色温区域中的每个第一色温区域各个像素点的RGB像素值计算所述一个或多个第一色温区域中的每个第一色温区域的各个像素点的色彩比例数据;
将所述一个或多个第一色温区域中的每个第一色温区域中色彩比例数据距离校准线最近且数量最多的像素点确定为对应的第一色温区域的白点。
6.如权利要求1所述的图像处理方法,其特征在于,在所述根据所述第一色温边缘将所述待处理图像分割成一个或多个第一色温区域之后,包括:
获取所述一个或多个第一色温区域中的每个第一色温区域的色温,得到目标色温对应的第一色温区域;
根据所述目标色温对应的第一色温区域在所述待处理图像中的位置,确定目标对象的位置。
7.一种图像处理装置,其特征在于,包括:
滤波单元,用于将待处理图像输入预设滤波器,得到所述预设滤波器输出的待处理图像的第一色温边缘;
分割单元,用于根据所述第一色温边缘将所述待处理图像分割成一个或多个第一色温区域;
白平衡单元,用于获取所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数,并利用所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡,得到所述待处理图像经白平衡处理后的目标图像;
其中,在所述将待处理图像输入预设滤波器,得到所述预设滤波器输出的待处理图像的第一色温边缘之前,包括:
将所述待处理图像分割成多个子图像,并确定所述多个子图像中每个子图像的色温;
对空间上相邻且具有相同色温的多个子图像进行组合为新的子图像,并将未进行组合的子图像以及所述新的子图像分别确定为第二色温区域;
所述将待处理图像输入预设滤波器,得到所述预设滤波器输出的待处理图像的第一色温边缘,包括:
利用预设滤波器提取每个位于所述第二色温区域边缘的子图像与相邻第二色温区域中对应的相邻子图像之间的第二色温边缘,得到所述待处理图像对应的经所述第二色温边缘分割形成的一个或多个第三色温区域;
所述获取所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数,并利用所述一个或多个第一色温区域中的每个第一色温区域的白平衡调整参数分别调整对应的第一色温区域的白平衡,得到所述待处理图像经白平衡处理后的目标图像,包括:
获取所述一个或多个第三色温区域中的每个第三色温区域的白平衡调整参数,并利用所述一个或多个第三色温区域中的每个第三色温区域的白平衡调整参数分别调整对应的第三色温区域的白平衡,得到所述待处理图像经白平衡处理后的目标图像。
8.一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任意一项所述方法的步骤。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910965690.7A CN110691226B (zh) | 2019-09-19 | 2019-09-19 | 图像处理方法、装置、终端及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910965690.7A CN110691226B (zh) | 2019-09-19 | 2019-09-19 | 图像处理方法、装置、终端及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110691226A CN110691226A (zh) | 2020-01-14 |
CN110691226B true CN110691226B (zh) | 2021-08-27 |
Family
ID=69112303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910965690.7A Active CN110691226B (zh) | 2019-09-19 | 2019-09-19 | 图像处理方法、装置、终端及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110691226B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113452981B (zh) * | 2020-03-24 | 2022-08-09 | RealMe重庆移动通信有限公司 | 图像处理方法、装置、电子设备及存储介质 |
CN111711809B (zh) * | 2020-06-28 | 2023-03-24 | 深圳市慧鲤科技有限公司 | 图像处理方法及装置、电子设备及存储介质 |
CN114286072A (zh) * | 2020-09-27 | 2022-04-05 | 北京小米移动软件有限公司 | 色彩还原装置及方法、图像处理器 |
CN113411555B (zh) * | 2021-06-08 | 2022-07-22 | 珠海市杰理科技股份有限公司 | 白平衡处理方法及装置、存储介质、图像捕获设备 |
CN114143447B (zh) * | 2021-11-08 | 2024-03-05 | 维沃移动通信有限公司 | 图像处理方法、装置及电子设备 |
CN114018417B (zh) * | 2022-01-07 | 2022-05-13 | 杭州纳境科技有限公司 | 多区域色温检测方法及装置 |
CN115767059A (zh) * | 2022-11-04 | 2023-03-07 | 合肥城市学院 | 光照不均情况下的白平衡校正方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107800944A (zh) * | 2016-08-31 | 2018-03-13 | 中兴通讯股份有限公司 | 一种白平衡调整方法、装置和移动终端 |
CN108184106A (zh) * | 2017-12-29 | 2018-06-19 | 努比亚技术有限公司 | 图像处理方法、移动终端及计算机可读存储介质 |
-
2019
- 2019-09-19 CN CN201910965690.7A patent/CN110691226B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110691226A (zh) | 2020-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110691226B (zh) | 图像处理方法、装置、终端及计算机可读存储介质 | |
CN110276767B (zh) | 图像处理方法和装置、电子设备、计算机可读存储介质 | |
CN109978890B (zh) | 基于图像处理的目标提取方法、装置及终端设备 | |
CN108537155B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN108024107B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN108537749B (zh) | 图像处理方法、装置、移动终端及计算机可读存储介质 | |
EP3542347B1 (en) | Fast fourier color constancy | |
EP3849170B1 (en) | Image processing method, electronic device, and computer-readable storage medium | |
CN108419028B (zh) | 图像处理方法、装置、计算机可读存储介质和电子设备 | |
CN107204034B (zh) | 一种图像处理方法及终端 | |
CN110493527B (zh) | 主体对焦方法、装置、电子设备和存储介质 | |
CN109242794B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN102867295B (zh) | 一种彩色图像颜色校正方法 | |
CN107945135A (zh) | 图像处理方法、装置、存储介质和电子设备 | |
CN113609907B (zh) | 一种多光谱数据的获取方法、装置及设备 | |
CN110233971A (zh) | 一种拍摄方法及终端、计算机可读存储介质 | |
CN111161188B (zh) | 降低图像色彩噪声的方法、计算机装置及可读存储介质 | |
CN111163301B (zh) | 色彩调整方法、装置及计算机可读存储介质 | |
CN108322651A (zh) | 拍摄方法和装置、电子设备、计算机可读存储介质 | |
CN107920205B (zh) | 图像处理方法、装置、存储介质和电子设备 | |
CN110881103A (zh) | 对焦控制方法和装置、电子设备、计算机可读存储介质 | |
CN114170565A (zh) | 一种基于无人机航拍的图像对比方法、装置及终端设备 | |
CN110392211B (zh) | 图像处理方法和装置、电子设备、计算机可读存储介质 | |
CN110365897B (zh) | 图像修正方法和装置、电子设备、计算机可读存储介质 | |
CN112489144B (zh) | 图像处理方法、图像处理装置、终端设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |