著录项信息
专利名称 | 一种进行图像内容识别的方法和装置 |
申请号 | CN201510232787.9 | 申请日期 | 2015-05-08 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2015-09-23 | 公开/公告号 | CN104933700A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06T7/00 | IPC分类号 | G;0;6;T;7;/;0;0;;;G;0;6;K;9;/;0;0查看分类表>
|
申请人 | 小米科技有限责任公司 | 申请人地址 | 北京市海淀区清河中街68号华润五彩城购物中心二期13层
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 小米科技有限责任公司 | 当前权利人 | 小米科技有限责任公司 |
发明人 | 龙飞;侯文迪;汪平仄 |
代理机构 | 北京三高永信知识产权代理有限责任公司 | 代理人 | 滕一斌 |
摘要
本公开是关于一种进行图像内容识别的方法和装置,属于计算机技术领域。所述方法包括:对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的梯度值;根据所述梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系;根据所述映射关系分别确定所述每个像素点的梯度值对应的灰度值;根据确定出的所述每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到所述待识别图像对应的梯度图像,并基于所述梯度图像,进行图像内容识别。采用本公开,可以提高边界检测的准确度。
1.一种进行图像内容识别的方法,其特征在于,所述方法包括:
根据预先存储的垂直梯度算子和水平梯度算子,对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的垂直梯度值和水平梯度值;
根据所述梯度检测处理得到的各垂直梯度值的绝对值的第一数值范围,确定所述第一数值范围中垂直梯度值的最大绝对值和最小绝对值;根据所述梯度检测处理得到的各水平梯度值的绝对值的第三数值范围,确定所述第三数值范围中水平梯度值的最大绝对值和最小绝对值;
根据预设的灰度值的第二数值范围中的最大值在所述第一数值范围中垂直梯度值的最大绝对值与最小绝对值的差值中所占的比例,确定所述第一数值范围内的垂直梯度值与所述第二数值范围内的灰度值的映射关系,根据预设的灰度值的第二数值范围中的最大值在所述第三数值范围中水平梯度值的最大绝对值与最小绝对值的差值中所占的比例,确定所述第三数值范围内的水平梯度值与所述第二数值范围内的灰度值的映射关系,在所述映射关系中,不同的梯度值对应的灰度值不同;
根据所述映射关系分别确定所述每个像素点的垂直梯度值对应的灰度值,以及所述每个像素点的水平梯度值对应的灰度值;
根据确定出的所述每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到所述待识别图像对应的梯度图像,并基于所述梯度图像,进行图像内容识别。
2.根据权利要求1所述的方法,其特征在于,所述梯度值为水平梯度值或垂直梯度值。
3.根据权利要求1所述的方法,其特征在于,所述基于所述梯度图像,进行图像内容识别,包括:
基于所述梯度图像,进行图像边缘检测,得到所述待识别图像中的目标物体的边界,在所述目标物体的边界内,进行图像内容识别。
4.一种进行图像内容识别的装置,其特征在于,所述装置包括:
检测模块,用于根据预先存储的垂直梯度算子和水平梯度算子,对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的垂直梯度值和水平梯度值;
第一确定模块,用于根据所述梯度检测处理得到的各垂直梯度值的绝对值的第一数值范围,确定所述第一数值范围中垂直梯度值的最大绝对值和最小绝对值;根据所述梯度检测处理得到的各水平梯度值的绝对值的第三数值范围,确定所述第三数值范围中水平梯度值的最大绝对值和最小绝对值;根据预设的灰度值的第二数值范围中的最大值在所述第一数值范围中垂直梯度值的最大绝对值与最小绝对值的差值中所占的比例,确定所述第一数值范围内的垂直梯度值与所述第二数值范围内的灰度值的映射关系,根据预设的灰度值的第二数值范围中的最大值在所述第三数值范围中水平梯度值的最大绝对值与最小绝对值的差值中所占的比例,确定所述第三数值范围内的水平梯度值与所述第二数值范围内的灰度值的映射关系,在所述映射关系中,不同的梯度值对应的灰度值不同;
第二确定模块,用于根据所述映射关系分别确定所述每个像素点的垂直梯度值对应的灰度值,以及所述每个像素点的水平梯度值对应的灰度值;
识别模块,用于根据确定出的所述每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到所述待识别图像对应的梯度图像,并基于所述梯度图像,进行图像内容识别。
5.根据权利要求4所述的装置,其特征在于,所述梯度值为水平梯度值或垂直梯度值。
6.根据权利要求4所述的装置,其特征在于,所识别模块,用于:
基于所述梯度图像,进行图像边缘检测,得到所述待识别图像中的目标物体的边界,在所述目标物体的边界内,进行图像内容识别。
一种进行图像内容识别的方法和装置\n技术领域\n[0001] 本公开是关于计算机技术领域,尤其是关于一种进行图像内容识别的方法和装置。\n背景技术\n[0002] 随着计算机技术的发展,计算机的用途越来越广泛,功能也越来越强大,人们可以通过计算机进行图像内容识别,如边界检测、字符识别等。其中,梯度图像是进行图像内容识别中常用的图像。\n[0003] 计算机中可以预先存储垂直梯度算子和水平梯度算子,当计算机获取到待识别图像后,将待识别图像中各像素的灰度与垂直梯度算子和水平梯度算子分别进行卷积运算,得到待识别图像中各像素的垂直梯度值和水平梯度值,梯度值可以反映像素点与相邻像素点的差异度。计算机可以将垂直梯度值或水平梯度值作为像素点的像素值,得到待识别图像的梯度图像,进而根据梯度图像对待识别图像进行图像内容识别。\n[0004] 在实现本公开的过程中,发明人发现至少存在以下问题:\n[0005] 然而,计算机在进行图像处理的时候默认的像素点的像素值范围为0~255,如果发现像素点的像素值小于0,则将其作为0处理,如果发现像素点的像素值大于255,则将其作为255处理,这样,在进行图像处理时,可能会将不同的梯度值视为相同,从而,导致进行图像内容识别的准确度较低。\n发明内容\n[0006] 为了克服相关技术中存在的问题,本公开提供了一种进行图像内容识别的方法和装置。所述技术方案如下:\n[0007] 根据本公开实施例的第一方面,提供一种进行图像内容识别的方法,所述方法包括:\n[0008] 对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的梯度值;\n[0009] 根据所述梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系,在所述映射关系中,不同的梯度值对应的灰度值不同;\n[0010] 根据所述映射关系分别确定所述每个像素点的梯度值对应的灰度值;\n[0011] 根据确定出的所述每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到所述待识别图像对应的梯度图像,并基于所述梯度图像,进行图像内容识别。\n[0012] 可选的,所述根据所述梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系,包括:\n[0013] 根据所述梯度检测处理得到的各梯度值的绝对值的第一数值范围,确定所述第一数值范围中的最大绝对值和最小绝对值;\n[0014] 根据预设的灰度值的第二数值范围中的最大值在所述第一数值范围中的最大绝对值与最小绝对值的差值中所占的比例,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系;\n[0015] 所述根据所述映射关系分别确定所述每个像素点的梯度值对应的灰度值,包括:\n[0016] 根据所述映射关系分别确定所述每个像素点的梯度值的绝对值对应的灰度值。\n[0017] 可选的,所述对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的梯度值,包括:根据预先存储的垂直梯度算子和水平梯度算子,对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的垂直梯度值和水平梯度值;\n[0018] 所述根据所述梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系,包括:根据所述梯度检测处理得到的各垂直梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的垂直梯度值与所述第二数值范围内的灰度值的映射关系;根据所述梯度检测处理得到的各水平梯度值的第三数值范围,以及预设的灰度值的第二数值范围,确定所述第三数值范围内的水平梯度值与所述第二数值范围内的灰度值的映射关系;\n[0019] 所述根据所述映射关系分别确定所述每个像素点的梯度值对应的灰度值,包括:\n根据所述映射关系分别确定所述每个像素点的垂直梯度值对应的灰度值,以及所述每个像素点的水平梯度值对应的灰度值。\n[0020] 可选的,所述梯度值为水平梯度值或垂直梯度值。\n[0021] 可选的,所述基于所述梯度图像,进行图像内容识别,包括:\n[0022] 基于所述梯度图像,进行图像边缘检测,得到所述待识别图像中的目标物体的边界,在所述目标物体的边界内,进行图像内容识别。\n[0023] 根据本公开实施例的第二方面,提供一种进行图像内容识别的装置,所述装置包括:\n[0024] 检测模块,用于对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的梯度值;\n[0025] 第一确定模块,用于根据所述梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系,在所述映射关系中,不同的梯度值对应的灰度值不同;\n[0026] 第二确定模块,用于根据所述映射关系分别确定所述每个像素点的梯度值对应的灰度值;\n[0027] 识别模块,用于根据确定出的所述每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到所述待识别图像对应的梯度图像,并基于所述梯度图像,进行图像内容识别。\n[0028] 可选的,所述第一确定模块,用于:\n[0029] 根据所述梯度检测处理得到的各梯度值的绝对值的第一数值范围,确定所述第一数值范围中的最大绝对值和最小绝对值;\n[0030] 根据预设的灰度值的第二数值范围中的最大值在所述第一数值范围中的最大绝对值与最小绝对值的差值中所占的比例,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系;\n[0031] 所述第二确定模块,用于:\n[0032] 根据所述映射关系分别确定所述每个像素点的梯度值的绝对值对应的灰度值。\n[0033] 可选的,所述检测模块,用于:根据预先存储的垂直梯度算子和水平梯度算子,对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的垂直梯度值和水平梯度值;\n[0034] 所述第一确定模块,用于:根据所述梯度检测处理得到的各垂直梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的垂直梯度值与所述第二数值范围内的灰度值的映射关系;根据所述梯度检测处理得到的各水平梯度值的第三数值范围,以及预设的灰度值的第二数值范围,确定所述第三数值范围内的水平梯度值与所述第二数值范围内的灰度值的映射关系;\n[0035] 所述第二确定模块,用于:根据所述映射关系分别确定所述每个像素点的垂直梯度值对应的灰度值,以及所述每个像素点的水平梯度值对应的灰度值。\n[0036] 可选的,所述梯度值为水平梯度值或垂直梯度值。\n[0037] 可选的,所识别模块,用于:\n[0038] 基于所述梯度图像,进行图像边缘检测,得到所述待识别图像中的目标物体的边界,在所述目标物体的边界内,进行图像内容识别。\n[0039] 根据本公开实施例的第三方面,提供一种进行图像内容识别的装置,包括:\n[0040] 处理器;\n[0041] 用于存储处理器可执行指令的存储器;\n[0042] 其中,所述处理器被配置为:\n[0043] 对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的梯度值;\n[0044] 根据所述梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系,在所述映射关系中,不同的梯度值对应的灰度值不同;\n[0045] 根据所述映射关系分别确定所述每个像素点的梯度值对应的灰度值;\n[0046] 根据确定出的所述每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到所述待识别图像对应的梯度图像,并基于所述梯度图像,进行图像内容识别。\n[0047] 本公开的实施例提供的技术方案可以包括以下有益效果:\n[0048] 本公开实施例中,对待识别图像进行梯度检测处理,得到待识别图像的每个像素点的梯度值,根据梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定第一数值范围内的梯度值与第二数值范围内的灰度值的映射关系,在该映射关系中,不同的梯度值对应的灰度值不同,根据映射关系分别确定每个像素点的梯度值对应的灰度值,根据确定出的每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到待识别图像对应的梯度图像,并基于梯度图像,进行图像内容识别,这样,由于不同的梯度值对应的灰度值不同,因而在图像处理时,不会出现将不同的梯度值视为相同的情况,从而可以提高进行图像内容识别的准确度。\n[0049] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。\n附图说明\n[0050] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。在附图中:\n[0051] 图1是根据一示例性实施例示出的一种进行图像内容识别的方法的流程图;\n[0052] 图2是根据一示例性实施例示出的一种进行图像内容识别的映射示意图;\n[0053] 图3是根据一示例性实施例示出的一种进行图像内容识别的装置的示意图;\n[0054] 图4是根据一示例性实施例示出的一种终端的结构示意图。\n[0055] 通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。\n具体实施方式\n[0056] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。\n[0057] 本公开一示例性实施例提供了一种进行图像内容识别的方法,如图1所示,该方法的处理流程可以包括如下的步骤:\n[0058] 在步骤101中,对待识别图像进行梯度检测处理,得到待识别图像的每个像素点的梯度值。\n[0059] 在步骤102中,根据梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定第一数值范围内的梯度值与第二数值范围内的灰度值的映射关系,在该映射关系中,不同的梯度值对应的灰度值不同。\n[0060] 在步骤103中,根据映射关系分别确定每个像素点的梯度值对应的灰度值。\n[0061] 在步骤104中,根据确定出的每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到待识别图像对应的梯度图像,并基于梯度图像,进行图像内容识别。\n[0062] 本公开实施例中,对待识别图像进行梯度检测处理,得到待识别图像的每个像素点的梯度值,根据梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定第一数值范围内的梯度值与第二数值范围内的灰度值的映射关系,在该映射关系中,不同的梯度值对应的灰度值不同,根据映射关系分别确定每个像素点的梯度值对应的灰度值,根据确定出的每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到待识别图像对应的梯度图像,并基于梯度图像,进行图像内容识别,这样,由于不同的梯度值对应的灰度值不同,因而在图像处理时,不会出现将不同的梯度值视为相同的情况,从而可以提高进行图像内容识别的准确度。\n[0063] 本公开另一示例性实施例提供了一种进行图像内容识别的方法,该方法可以用于终端中,其中,终端可以是具有图像识别功能的终端,如手机或平板电脑等移动终端。所述终端上可以安装有具有图像内容识别功能的应用程序,所述终端可以包括输入单元,所述输入单元可以是摄像头,也可以是扫描仪等,终端可以通过输入单元获取待识别图像;所述终端可以包括处理器,所述处理器可以根据获取到的待识别图像,进行识别处理,如边缘检测,或字符识别等;所述终端还可以包括显示单元,所述显示单元可以液晶显示器,显示单元可以显示处理器通过识别处理得到的信息。另外,所述终端还可以包括存储器、传感器、音频电路、以及电源等部件。\n[0064] 下面将结合实施方式,对图1所示的处理流程进行详细的说明,内容可以如下:\n[0065] 在步骤101中,对待识别图像进行梯度检测处理,得到待识别图像的每个像素点的梯度值。\n[0066] 在实施中,用户可以在终端安装具有图像内容识别功能的应用程序,用户可以通过该应用程序识别图像中所包含的物体(即目标物体)的信息,如识别银行卡上的银行卡号。当用户希望识别目标物体时,用户可以在终端开启该应用程序,终端可以开启输入设备(如摄像头),并在屏幕中显示检测区域,用户可以移动终端的位置,以使终端可以获取包含有目标物体的图像(即待识别图像)。终端获取待识别图像后,可以通过sobel边界检测算法,对待识别图像进行梯度检测处理。终端可以确定待识别图像中每个像素点的灰度值,然后可以将每个像素点的灰度值与sobel算法中的算子进行卷积运算,得到得到待识别图像的每个像素点的梯度值。sobel算法中包括垂直梯度算子和水平梯度算子,终端可以确定待识别图像中每个像素点的垂直梯度值或水平梯度值,也可以确定待识别图像中每个像素点的垂直梯度值和水平梯度值,相应的处理方式可以有以下两种:\n[0067] 方式一、根据预先存储的垂直梯度算子和水平梯度算子,对待识别图像进行梯度检测处理,得到待识别图像的每个像素点的垂直梯度值和水平梯度值。\n[0068] 在实施中,终端中可以预先存储sobel算法中的垂直梯度算子和水平梯度算子,对于对待识别图像中的任一像素点(x,y),终端可以分别用垂直梯度算子和水平梯度算子对像素点(x,y)进行卷积运算,得到像素点(x,y)的垂直梯度值和水平梯度值。\n[0069] sobel算法中的垂直梯度算子和水平梯度算子如下表所示:\n[0070]\n[0071] 对于待识别图像中的任一像素点(x,y),可以将(x,y)与其相邻像素点表示为:\n[0072]\n(x-1,y+1) (x,y+1) (x+1,y+1)\n(x-1,y) (x,y) (x+1,y)\n(x-1,y-1) (x,y-1) (x+1,y-1)\n[0073] 像素点(x,y)在待识别图像中对应的灰度值可以表示为f(x,y),终端可以通过卷积计算,来得到像素点(x,y)的垂直梯度值和水平梯度值,具体的计算过程可以如下:\n[0074] 垂直梯度值:\n[0075] Gy=1*f(x-1,y+1)+2*f(x,y+1)+1*f(x+1,y+1)+0*f(x-1,y)+0*f(x,y)+0*f(x+1,y)+(-1)*f(x-1,y-1)+(-2)*f(x,y-1)+(-1)*f(x+1,y-1)=[f(x-1,y+1)+2f(x,y+1)+f(x+\n1,y+1)]-[f(x-1,y-1)+2*f(x,y-1)+f(x+1,y-1)]\n[0076] 水平直梯度值:\n[0077] Gx=(-1)*f(x-1,y+1)+0*f(x,y+1)+1*f(x+1,y+1)+(-2)*f(x-1,y)+0*f(x,y)+2*f(x+1,y)+(-1)*f(x-1,y-1)+0*f(x,y-1)+1*f(x+1,y-1)=[f(x+1,y+1)+2*f(x+1,y)+f(x+\n1,y-1)]-[f(x-1,y+1)+2*f(x-1,y)+f(x-1,y-1)]\n[0078] 方式二、根据预先存储的垂直梯度算子或水平梯度算子,对待识别图像进行梯度检测处理,得到待识别图像的每个像素点的垂直梯度值或水平梯度值。\n[0079] 在实施中,基于与上述计算垂直梯度值和或水平梯度值相同的计算方法,终端可以只计算待识别图像的每个像素点的垂直梯度值,或者只计算待识别图像的每个像素点的水平梯度值,不再赘述。\n[0080] 在步骤102中,根据梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定第一数值范围内的梯度值与第二数值范围内的灰度值的映射关系,在所述映射关系中,不同的梯度值对应的灰度值不同。\n[0081] 在实施中,终端得到待识别图像中每个像素点的梯度值后,可以确定得到的各梯度值的数值范围(即第一数值范围),并且可以存储预设的灰度值的范围(即第二数值范围),第二数值范围可以为0~255,进而终端可以确定第一数值范围内的梯度值与第二数值范围内的灰度值的映射关系。\n[0082] 例如,终端确定第一数值范围是-100~1000,第一数值范围内的任一梯度值a与第二数值范围内的灰度值的映射关系可以为:\n[0083] 映射后的灰度值a'=[a-(-100)]*255/[1000-(-100)]=(a+100)*255/1100[0084] 可选的,可以先确定每个梯度值的绝对值,再确定映射关系,相应的,步骤102的处理过程可以如下:根据梯度检测处理得到的各梯度值的绝对值的第一数值范围,确定第一数值范围中的最大绝对值和最小绝对值;根据预设的灰度值的第二数值范围中的最大值在第一数值范围中的最大绝对值与最小绝对值的差值中所占的比例,确定第一数值范围内的梯度值与第二数值范围内的灰度值的映射关系。\n[0085] 在实施中,终端得到待识别图像中每个像素点的梯度值后,可以确定每个像素点的梯度值的绝对值,进而确定这些绝对值中的最大绝对值和最小绝对值,从而得到第一数值范围,终端中可以存储预设的灰度值的范围(即第二数值范围),第二数值范围可以为0~\n255,以0~255为例,终端可以确定255在第一数值范围中的最大绝对值与最小绝对值的差值中所占的比例,进而终端可以确定第一数值范围内的梯度值与0~255范围内的灰度值的映射关系。\n[0086] 例如,终端可以确定每个像素点的梯度值的绝对值中,最大绝对值为1000,最小绝对值为100,即第一数值范围为100~1000,第一数值范围内的任一梯度值a与0~255范围内的灰度值的映射关系可以为:\n[0087] 映射后的灰度值a'=(a-100)*255/(1000-100)\n[0088] 可选的,对于上述得到待识别图像的每个像素点的垂直梯度值和水平梯度值的情况,相应的,步骤102的处理过程可以如下:根据梯度检测处理得到的各垂直梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定第一数值范围内的垂直梯度值与第二数值范围内的灰度值的映射关系;根据梯度检测处理得到的各水平梯度值的第三数值范围,以及预设的灰度值的第二数值范围,确定第三数值范围内的水平梯度值与第二数值范围内的灰度值的映射关系。\n[0089] 在实施中,终端得到待识别图像的每个像素点的垂直梯度值和水平梯度值后,可以在得到的垂直梯度值中,确定垂直梯度值中的最大值和最小值,从而得到垂直梯度值的数值范围(即第一数值范围)。终端可以存储预设的灰度值的范围(即第二数值范围),第二数值范围可以为0~255,进而终端可以确定第一数值范围内的垂直梯度值与第二数值范围内的灰度值的映射关系。另外,终端也可以先确定垂直梯度值的绝对值,然后确定垂直梯度值的绝对值的第一数值范围,以及第一数值范围中的最大绝对值和最小绝对值,根据预设的灰度值的第二数值范围中的最大值在第一数值范围中的最大绝对值与最小绝对值的差值中所占的比例,确定第一数值范围内的垂直梯度值与第二数值范围内的灰度值的映射关系,具体的处理过程与上述处理过程类似,不再赘述。\n[0090] 终端还可以在得到的水平梯度值中,确定水平梯度值中的最大值和最小值,从而得到水平梯度值的数值范围(即第三数值范围)。终端可以存储预设的灰度值的范围(即第二数值范围),第二数值范围可以为0~255,进而终端可以确定第三数值范围内的水平梯度值与第二数值范围内的灰度值的映射关系。另外,终端也可以先确定水平梯度值的绝对值,然后确定水平梯度值的绝对值的第三数值范围,确定第三数值范围中的最大绝对值和最小绝对值,根据预设的灰度值的第二数值范围中的最大值在第三数值范围中的最大绝对值与最小绝对值的差值中所占的比例,确定第三数值范围内的水平梯度值与第二数值范围内的灰度值的映射关系,具体的处理过程与上述处理过程类似,不再赘述。\n[0091] 在步骤103中,根据映射关系分别确定每个像素点的梯度值对应的灰度值。\n[0092] 在实施中,终端确定第一数值范围内的梯度值与第二数值范围内的灰度值的映射关系后,可以将每个像素点的梯度值带入确定出的映射关系中,得到每个像素点的梯度值对应的灰度值。例如,终端确定第一数值范围是-100~1000,第一数值范围内的任一梯度值a与第二数值范围内的灰度值的映射关系可以为:映射后的灰度值a'=[a-(-100)]*255/[1000-(-100)]=(a+100)*255/1100,像素点(x1,y1)的梯度值为500,则像素点(x1,y1)的梯度值对应的灰度值为(500+100)*255/1100=139。每个像素点的梯度值对应的灰度值一般为整数,对于计算得到非整数的情况,可以采用四舍五入或者取整等方式,得到每个像素点的梯度值对应的灰度值。\n[0093] 可选的,对于上述确定每个像素点的梯度值的绝对值的情况,相应的,步骤103的处理过程可以如下:根据映射关系分别确定每个像素点的梯度值的绝对值对应的灰度值。\n[0094] 在实施中,终端确定第一数值范围内的梯度值与第二数值范围内的灰度值的映射关系后,可以将每个像素点的梯度值的绝对值带入确定出的映射关系的算式中,得到每个像素点的梯度值对应的灰度值。例如,终端确定第一数值范围为100~1000,第一数值范围内的任一梯度值a与第二数值范围内的灰度值的映射关系可以为:映射后的灰度值a'=(a-\n100)*255/(1000-100),像素点(x1,y1)的梯度值为-150,则像素点(x1,y1)的梯度值的绝对值对应的灰度值为(150-100)*255/(1000-100)=14,如图2所示。每个像素点的梯度值对应的灰度值一般为整数,对于计算得到非整数的情况,可以采用四舍五入或者取整等方式,得到每个像素点的梯度值对应的灰度值。\n[0095] 可选的,对于上述确定第一数值范围内的垂直梯度值与第二数值范围内的灰度值的映射关系,以及确定第三数值范围内的水平梯度值与第二数值范围内的灰度值的映射关系的情况,相应的,步骤103的处理过程可以如下:根据映射关系分别确定每个像素点的垂直梯度值对应的灰度值,以及每个像素点的水平梯度值对应的灰度值。\n[0096] 在实施中,终端确定第一数值范围内的垂直梯度值与第二数值范围内的灰度值的映射关系后,可以将每个像素点的垂直梯度值带入确定出的映射关系的算式中,得到每个像素点的垂直梯度值对应的灰度值。终端还可以在确定第三数值范围内的水平梯度值与第二数值范围内的灰度值的映射关系之后,可以将每个像素点的水平梯度值带入确定出的映射关系的算式中,得到每个像素点的水平梯度值对应的灰度值。\n[0097] 在步骤104中,根据确定出的每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到待识别图像对应的梯度图像,并基于梯度图像,进行图像内容识别。\n[0098] 在实施中,终端确定每个像素点的梯度值对应的灰度值后,可以确定梯度图像中每个像素点的像素值,从而得到待识别图像对应的梯度图像,进而终端可以基于梯度图像,进行图像内容识别,例如,终端可以基于梯度图像,识别图像中所包含的物体,确定物体的轮廓线。\n[0099] 对于确定每个像素点的垂直梯度值或水平梯度值的情况,终端可以将每个像素点的垂直梯度值对应的灰度值,作为梯度图像中每个像素点的像素值,或者,终端可以将每个像素点的水平梯度值对应的灰度值,作为梯度图像中每个像素点的像素值。终端可以根据梯度图像中每个像素点的像素值,得到待识别图像对应的梯度图像。\n[0100] 对于确定每个像素点的垂直梯度值和水平梯度值的情况,对于待识别图像中的任一像素点,终端可以得到该像素点的垂直梯度值对应的灰度值和水平梯度值对应的灰度值,然后可以计算垂直梯度值对应的灰度值的平方与水平梯度值对应的灰度值的平方的和值,再对该和值进行开方运算,得到该像素点对应的像素值,进而得到待识别图像对应的梯度图像。\n[0101] 可选的,还可以基于梯度图像进行图像边缘检测,相应的处理过程可以如下:基于梯度图像,进行图像边缘检测,得到待识别图像中的目标物体的边界,在目标物体的边界内,进行图像内容识别。\n[0102] 在实施中,终端得到待识别图像对应的梯度图像后,可以在梯度图像中进行图像边缘检测,得到待识别图像中的目标物体的边界,终端可以在目标物体的边界内,进行图像内容识别。例如,目标物体可以是银行卡,则终端可以通过图像边缘检测,得到银行卡的边界,然后在银行卡的边界内,进行图像内容识别,从而识别出银行卡上的卡号。\n[0103] 本公开实施例中,对待识别图像进行梯度检测处理,得到待识别图像的每个像素点的梯度值,根据梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定第一数值范围内的梯度值与第二数值范围内的灰度值的映射关系,在该映射关系中,不同的梯度值对应的灰度值不同,根据映射关系分别确定每个像素点的梯度值对应的灰度值,根据确定出的每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到待识别图像对应的梯度图像,并基于梯度图像,进行图像内容识别,这样,由于不同的梯度值对应的灰度值不同,因而在图像处理时,不会出现将不同的梯度值视为相同的情况,从而可以提高进行图像内容识别的准确度。\n[0104] 本公开又一示例性实施例提供了一种进行图像内容识别的装置,如图3所示,该装置包括:检测模块310,第一确定模块320、第二确定模块330和识别模块340。\n[0105] 检测模块310,用于对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的梯度值;\n[0106] 第一确定模块320,用于根据所述梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系,在所述映射关系中,不同的梯度值对应的灰度值不同;\n[0107] 第二确定模块330,用于根据所述映射关系分别确定所述每个像素点的梯度值对应的灰度值;\n[0108] 识别模块340,用于根据确定出的所述每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到所述待识别图像对应的梯度图像,并基于所述梯度图像,进行图像内容识别。\n[0109] 可选的,所述第一确定模块320,用于:\n[0110] 根据所述梯度检测处理得到的各梯度值的绝对值的第一数值范围,确定所述第一数值范围中的最大绝对值和最小绝对值;\n[0111] 根据预设的灰度值的第二数值范围中的最大值在所述第一数值范围中的最大绝对值与最小绝对值的差值中所占的比例,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系;\n[0112] 所述第二确定模块330,用于:\n[0113] 根据所述映射关系分别确定所述每个像素点的梯度值的绝对值对应的灰度值。\n[0114] 可选的,所述检测模块310,用于:根据预先存储的垂直梯度算子和水平梯度算子,对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的垂直梯度值和水平梯度值;\n[0115] 所述第一确定模块320,用于:根据所述梯度检测处理得到的各垂直梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的垂直梯度值与所述第二数值范围内的灰度值的映射关系;根据所述梯度检测处理得到的各水平梯度值的第三数值范围,以及预设的灰度值的第二数值范围,确定所述第三数值范围内的水平梯度值与所述第二数值范围内的灰度值的映射关系;\n[0116] 所述第二确定模块330,用于:根据所述映射关系分别确定所述每个像素点的垂直梯度值对应的灰度值,以及所述每个像素点的水平梯度值对应的灰度值。\n[0117] 可选的,所述梯度值为水平梯度值或垂直梯度值。\n[0118] 可选的,所识别模块340,用于:\n[0119] 基于所述梯度图像,进行图像边缘检测,得到所述待识别图像中的目标物体的边界,在所述目标物体的边界内,进行图像内容识别。\n[0120] 关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。\n[0121] 本公开实施例中,对待识别图像进行梯度检测处理,得到待识别图像的每个像素点的梯度值,根据梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定第一数值范围内的梯度值与第二数值范围内的灰度值的映射关系,在该映射关系中,不同的梯度值对应的灰度值不同,根据映射关系分别确定每个像素点的梯度值对应的灰度值,根据确定出的每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到待识别图像对应的梯度图像,并基于梯度图像,进行图像内容识别,这样,由于不同的梯度值对应的灰度值不同,因而在图像处理时,不会出现将不同的梯度值视为相同的情况,从而可以提高进行图像内容识别的准确度。\n[0122] 需要说明的是:上述实施例提供的进行图像内容识别的装置在进行图像内容识别时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的进行图像内容识别的装置与进行图像内容识别的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。\n[0123] 本公开再一示例性实施例提供了一种终端的结构示意图。该终端可以是手机等。\n[0124] 参照图4,终端800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。\n[0125] 处理组件802通常控制终端800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理部件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。\n[0126] 存储器804被配置为存储各种类型的数据以支持在终端800的操作。这些数据的示例包括用于在终端800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。\n[0127] 电力组件806为终端800的各种组件提供电力。电力组件806可以包括电源管理系统,一个或多个电源,及其他与为音频输出设备800生成、管理和分配电力相关联的组件。\n[0128] 多媒体组件808包括在所述终端800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当终端800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。\n[0129] 音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当音频输出设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。\n[0130] I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。\n[0131] 传感器组件814包括一个或多个传感器,用于为终端800提供各个方面的状态评估。例如,传感器组件814可以检测到终端800的打开/关闭状态,组件的相对定位,例如所述组件为终端800的显示器和小键盘,传感器组件814还可以检测终端800或终端800一个组件的位置改变,用户与终端800接触的存在或不存在,终端800方位或加速/减速和终端800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。\n[0132] 通信组件816被配置为便于终端800和其他设备之间有线或无线方式的通信。终端\n800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信部件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。\n在一个示例性实施例中,所述通信部件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。\n[0133] 在示例性实施例中,终端800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。\n[0134] 在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由终端800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。\n[0135] 一种非临时性计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行一种进行图像内容识别的方法,该方法包括:\n[0136] 对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的梯度值;\n[0137] 根据所述梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系,在所述映射关系中,不同的梯度值对应的灰度值不同;\n[0138] 根据所述映射关系分别确定所述每个像素点的梯度值对应的灰度值;\n[0139] 根据确定出的所述每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到所述待识别图像对应的梯度图像,并基于所述梯度图像,进行图像内容识别。\n[0140] 可选的,所述根据所述梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系,包括:\n[0141] 根据所述梯度检测处理得到的各梯度值的绝对值的第一数值范围,确定所述第一数值范围中的最大绝对值和最小绝对值;\n[0142] 根据预设的灰度值的第二数值范围中的最大值在所述第一数值范围中的最大绝对值与最小绝对值的差值中所占的比例,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系;\n[0143] 所述根据所述映射关系分别确定所述每个像素点的梯度值对应的灰度值,包括:\n[0144] 根据所述映射关系分别确定所述每个像素点的梯度值的绝对值对应的灰度值。\n[0145] 可选的,所述对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的梯度值,包括:根据预先存储的垂直梯度算子和水平梯度算子,对待识别图像进行梯度检测处理,得到所述待识别图像的每个像素点的垂直梯度值和水平梯度值;\n[0146] 所述根据所述梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的梯度值与所述第二数值范围内的灰度值的映射关系,包括:根据所述梯度检测处理得到的各垂直梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定所述第一数值范围内的垂直梯度值与所述第二数值范围内的灰度值的映射关系;根据所述梯度检测处理得到的各水平梯度值的第三数值范围,以及预设的灰度值的第二数值范围,确定所述第三数值范围内的水平梯度值与所述第二数值范围内的灰度值的映射关系;\n[0147] 所述根据所述映射关系分别确定所述每个像素点的梯度值对应的灰度值,包括:\n根据所述映射关系分别确定所述每个像素点的垂直梯度值对应的灰度值,以及所述每个像素点的水平梯度值对应的灰度值。\n[0148] 可选的,所述梯度值为水平梯度值或垂直梯度值。\n[0149] 可选的,所述基于所述梯度图像,进行图像内容识别,包括:\n[0150] 基于所述梯度图像,进行图像边缘检测,得到所述待识别图像中的目标物体的边界,在所述目标物体的边界内,进行图像内容识别。\n[0151] 本公开实施例中,对待识别图像进行梯度检测处理,得到待识别图像的每个像素点的梯度值,根据梯度检测处理得到的各梯度值的第一数值范围,以及预设的灰度值的第二数值范围,确定第一数值范围内的梯度值与第二数值范围内的灰度值的映射关系,在该映射关系中,不同的梯度值对应的灰度值不同,根据映射关系分别确定每个像素点的梯度值对应的灰度值,根据确定出的每个像素点对应的灰度值,确定梯度图像中每个像素点的像素值,得到待识别图像对应的梯度图像,并基于梯度图像,进行图像内容识别,这样,由于不同的梯度值对应的灰度值不同,因而在图像处理时,不会出现将不同的梯度值视为相同的情况,从而可以提高进行图像内容识别的准确度。\n[0152] 本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。\n[0153] 应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
法律信息
- 2019-02-22
- 2015-10-21
实质审查的生效
IPC(主分类): G06T 7/00
专利申请号: 201510232787.9
申请日: 2015.05.08
- 2015-09-23
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2007-10-31
|
2006-04-26
| | |
2
| |
2010-12-08
|
2010-07-26
| | |
3
| |
2014-02-19
|
2013-11-25
| | |
4
| |
2010-05-19
|
2009-12-25
| | |
5
| | 暂无 |
2003-03-28
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |