掌桥专利:专业的专利平台
掌桥专利
首页

一种图像关键点位置计算方法、装置、设备及存储介质

文献发布时间:2023-06-19 10:02:03


一种图像关键点位置计算方法、装置、设备及存储介质

技术领域

本发明涉及智能分析技术领域,特别是涉及一种图像关键点位置计算方法、装置、设备及存储介质。

背景技术

在智能分析领域,经常需要对人的行为进行分析,其中,对人体的动作识别是进行行为分析的基础,在进行人体动作识别的过程中,首先,需要对人体的关键点进行识别,进而,根据人体关键点,识别人体的各种动作。

举例而言,对人体关键点进行识别的方法通常为:首先,提取人体图像的特征,得到人体图像的特征图,其中,特征图可以看作一个矩阵,矩阵中每个元素的取值即为特征图中对应位置的像素点的取值,每个像素点的取值表示该像素点为人体关键点的概率,进而,可以对特征图进行分析,也就是确定矩阵中最大点的坐标,即为人体关键点的坐标。

目前,通常使用for循环结构对矩阵进行遍历,记录最大点的索引,再转换为最大点的坐标,但是,这种方法是不可微分的,只能针对矩阵中的各个元素逐一进行比较,效率较低。

发明内容

本申请的目的在于提供一种图像关键点位置计算方法、装置、设备及存储介质。具体技术方案如下:

在本发明实施的第一方面,首先提供了一种图像关键点位置计算方法,所述方法包括:

获取待处理图像的特征矩阵;

根据所述特征矩阵的列数和页数,生成第三行索引矩阵,并根据所述特征矩阵的行数和页数,生成第三列索引矩阵;

根据预设底数矩阵、预设系数、所述特征矩阵以及所述第三行索引矩阵,生成第四行索引矩阵,并根据所述预设底数矩阵、所述预设系数、所述特征矩阵以及所述第三列索引矩阵,生成第四列索引矩阵;

计算所述第四行索引矩阵在竖直方向轴和水平方向轴的和,作为第一序列,并计算所述第四列索引矩阵在竖直方向轴和水平方向轴的和,作为第二序列,其中,所述第一序列为所述待处理图像中一个或多个关键点的横坐标,所述第二序列为与所述第一序列对应的关键点的纵坐标。

可选地,所述根据预设底数矩阵、预设系数、所述特征矩阵以及所述第三行索引矩阵,生成第四行索引矩阵,并根据所述预设底数矩阵、所述预设系数、所述特征矩阵以及所述第三列索引矩阵,生成第四列索引矩阵,包括:

将所述特征矩阵与预设系数相乘,得到第一过程矩阵;

将所述第一过程矩阵中每个元素的值,作为预设底数矩阵中对应位置的元素的指数,得到指数矩阵;

计算所述指数矩阵与所述指数矩阵中各元素之和的商,得到第二过程矩阵;

计算所述第二过程矩阵与所述第三行索引矩阵的乘积,得到第四行索引矩阵,并计算所述第二过程矩阵与所述第三列索引矩阵的乘积,得到第四列索引矩阵。

可选地,在所述特征矩阵的页数不为1的情况下,所述根据所述特征矩阵的列数和页数,生成第三行索引矩阵,并根据所述特征矩阵的行数和页数,生成第三列索引矩阵,包括:

根据所述特征矩阵的列数,生成行索引向量,所述行索引向量中的元素为从0到小于所述列数的自然数;

将所述行索引向量在竖直方向轴重复所述行数次,得到第一行索引矩阵;

建立所述第一行索引矩阵的第三方向轴,将所述第一行索引矩阵在所述第三方向轴重复所述页数次,得到第二行索引矩阵;

交换所述第二行索引矩阵的第三方向轴和水平方向轴,得到第三行索引矩阵;

根据所述特征矩阵的行数,生成列索引向量,所述列索引向量中的元素为从0到小于所述行数的自然数;

将所述列索引向量在水平方向轴重复所述列数次,得到第一列索引矩阵;

建立所述第一列索引矩阵的第三方向轴,将所述第一列索引矩阵在所述第三方向轴重复所述页数次,得到第二列索引矩阵;

交换所述第二列索引矩阵的第三方向轴和水平方向轴,得到第三列索引矩阵。

可选地,在所述特征矩阵的页数为1的情况下,所述根据所述特征矩阵的列数和页数,生成第三行索引矩阵,并根据所述特征矩阵的行数和页数,生成第三列索引矩阵,包括:

根据所述特征矩阵的列数,生成行索引向量,所述行索引向量中的元素为从0到小于所述列数的自然数;

将所述行索引向量在竖直方向轴重复所述行数次,得到第三行索引矩阵;

根据所述特征矩阵的行数,生成列索引向量,所述列索引向量中的元素为从0到小于所述行数的自然数;

将所述列索引向量在水平方向轴重复所述列数次,得到第三列索引矩阵。

在本发明实施的第二方面,还提供了一种图像关键点位置计算装置,所述装置包括:

获取模块,用于获取待处理图像的特征矩阵;

索引生成模块,用于根据所述特征矩阵的列数和页数,生成第三行索引矩阵,并根据所述特征矩阵的行数和页数,生成第三列索引矩阵;

索引计算模块,用于根据预设底数矩阵、预设系数、所述特征矩阵以及所述第三行索引矩阵,生成第四行索引矩阵,并根据所述预设底数矩阵、所述预设系数、所述特征矩阵以及所述第三列索引矩阵,生成第四列索引矩阵;

坐标计算模块,用于计算所述第四行索引矩阵在竖直方向轴和水平方向轴的和,作为第一序列,并计算所述第四列索引矩阵在竖直方向轴和水平方向轴的和,作为第二序列,其中,所述第一序列为所述待处理图像中一个或多个关键点的横坐标,所述第二序列为与所述第一序列对应的关键点的纵坐标。

可选地,所述索引计算模块,具体用于:

将所述特征矩阵与预设系数相乘,得到第一过程矩阵;

将所述第一过程矩阵中每个元素的值,作为预设底数矩阵中对应位置的元素的指数,得到指数矩阵;

计算所述指数矩阵与所述指数矩阵中各元素之和的商,得到第二过程矩阵;

计算所述第二过程矩阵与所述第三行索引矩阵的乘积,得到第四行索引矩阵,并计算所述第二过程矩阵与所述第三列索引矩阵的乘积,得到第四列索引矩阵。

可选地,在所述特征矩阵的页数不为1的情况下,所述索引生成模块,具体用于:

根据所述特征矩阵的列数,生成行索引向量,所述行索引向量中的元素为从0到小于所述列数的自然数;

将所述行索引向量在竖直方向轴重复所述行数次,得到第一行索引矩阵;

建立所述第一行索引矩阵的第三方向轴,将所述第一行索引矩阵在所述第三方向轴重复所述页数次,得到第二行索引矩阵;

交换所述第二行索引矩阵的第三方向轴和水平方向轴,得到第三行索引矩阵;

根据所述特征矩阵的行数,生成列索引向量,所述列索引向量中的元素为从0到小于所述行数的自然数;

将所述列索引向量在水平方向轴重复所述列数次,得到第一列索引矩阵;

建立所述第一列索引矩阵的第三方向轴,将所述第一列索引矩阵在所述第三方向轴重复所述页数次,得到第二列索引矩阵;

交换所述第二列索引矩阵的第三方向轴和水平方向轴,得到第三列索引矩阵。

可选地,在所述特征矩阵的页数为1的情况下,所述索引生成模块,具体用于:

根据所述特征矩阵的列数,生成行索引向量,所述行索引向量中的元素为从0到小于所述列数的自然数;

将所述行索引向量在竖直方向轴重复所述行数次,得到第三行索引矩阵;

根据所述特征矩阵的行数,生成列索引向量,所述列索引向量中的元素为从0到小于所述行数的自然数;

将所述列索引向量在水平方向轴重复所述列数次,得到第三列索引矩阵。

在本发明实施的又一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现上述任一所述的图像关键点位置计算方法。

在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的图像关键点位置计算方法。

在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的图像关键点位置计算方法。

本申请提供的图像关键点位置计算方法、装置、设备及存储介质,在获取待处理图像的特征矩阵之后,根据特征矩阵的列数和页数,生成第三行索引矩阵,并根据特征矩阵的行数和页数,生成第三列索引矩阵,根据预设底数矩阵、预设系数、特征矩阵以及第三行索引矩阵,生成第四行索引矩阵,并根据预设底数矩阵、预设系数、特征矩阵以及第三列索引矩阵,生成第四列索引矩阵,计算第四行索引矩阵在竖直方向轴和水平方向轴的和,作为第一序列,并计算第四列索引矩阵在竖直方向轴和水平方向轴的和,作为第二序列,其中,第一序列为待处理图像中一个或多个关键点的横坐标,第二序列为与第一序列对应的关键点的纵坐标。也就是说,不再利用for循环结构对特征矩阵进行遍历,而是通过矩阵运算直接对特征矩阵进行分析,整个计算过程可微分,梯度可传递,处理效率较高。

附图说明

为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为本申请的一种图像关键点位置计算方法的步骤流程图;

图2为本申请的一种图像关键点位置计算方法的方案示意图;

图3为本申请的一种图像关键点位置计算装置的结构框图;

图4为本申请的一种电子设备的示意图。

具体实施方式

下面将结合本申请中的附图,对本申请中的技术方案进行描述。

相关技术中,对人体关键点进行识别的方法通常为:首先,提取人体图像的特征,得到人体图像的特征图,其中,特征图可以看作一个矩阵,矩阵中每个元素的取值即为特征图中对应位置的像素点的取值,每个像素点的取值表示该像素点为人体关键点的概率,进而,可以对特征图进行分析,也就是确定矩阵中最大点的坐标,即为人体关键点的坐标。

其中,通常使用for循环结构对矩阵进行遍历,记录最大点的索引,再转换为最大点的坐标,但是,这种方法是不可微分的,只能针对矩阵中的各个元素逐一进行比较,效率较低。

为了解决上述问题,本申请提出了一种图像关键点位置计算方法,下面从总体上对本申请提供的图像关键点位置计算方法进行说明,该方法包括如下步骤:

获取待处理图像的特征矩阵;

根据特征矩阵的列数和页数,生成第三行索引矩阵,并根据特征矩阵的行数和页数,生成第三列索引矩阵;

根据预设底数矩阵、预设系数、特征矩阵以及第三行索引矩阵,生成第四行索引矩阵,并根据预设底数矩阵、预设系数、特征矩阵以及第三列索引矩阵,生成第四列索引矩阵;

计算第四行索引矩阵在竖直方向轴和水平方向轴的和,作为第一序列,并计算第四列索引矩阵在竖直方向轴和水平方向轴的和,作为第二序列,其中,第一序列为待处理图像中一个或多个关键点的横坐标,第二序列为与第一序列对应的关键点的纵坐标。

由以上可见,本申请提供的图像关键点位置计算方法,不再利用for循环结构对特征矩阵进行遍历,而是通过矩阵运算直接对特征矩阵进行分析,整个计算过程可微分,梯度可传递,处理效率较高。

下面将通过具体的实施例,对本申请提供的图像关键点位置计算方法进行详细描述。

参照图1,示出了本申请的一种图像关键点位置计算方法的步骤流程图,具体可以包括如下步骤:

S110:获取待处理图像的特征矩阵。

在本申请中,待处理图像可以是人体图像,也可以是人脸图像等,在待处理图像中,包括一个或多个关键点,对待处理图像进行特征提取,可以得到待处理图像的特征矩阵,特征矩阵中的每一个元素对应于待处理图像中的一个像素。

S120:根据特征矩阵的列数和页数,生成第三行索引矩阵,并根据特征矩阵的行数和页数,生成第三列索引矩阵。

本申请中,特征矩阵可以表示为h

也就是说,可以先根据特征矩阵的页数,判断该特征矩阵是三维矩阵还是二维矩阵,进而可以采用不同的步骤,生成第三行索引矩阵和第三列索引矩阵。

举例而言,若特征矩阵的页数不为1,即特征矩阵为三维矩阵的情况下,生成第三行索引矩阵的具体步骤可以包括:

首先,根据特征矩阵的列数,生成行索引向量,行索引向量中的元素为从0到小于列数的自然数;然后,将行索引向量在竖直方向轴重复行数次,得到第一行索引矩阵;接着,建立第一行索引矩阵的第三方向轴,将第一行索引矩阵在第三方向轴重复页数次,得到第二行索引矩阵;进而,交换第二行索引矩阵的第三方向轴和水平方向轴,得到第三行索引矩阵。

也就是说,行索引向量V

对应的,在特征矩阵为三维矩阵的情况下,生成第三列索引矩阵的具体步骤可以包括:

首先,根据特征矩阵的行数,生成列索引向量,列索引向量中的元素为从0到小于行数的自然数;然后,将列索引向量在水平方向轴重复列数次,得到第一列索引矩阵;接着,建立第一列索引矩阵的第三方向轴,将第一列索引矩阵在第三方向轴重复页数次,得到第二列索引矩阵;进而,交换第二列索引矩阵的第三方向轴和水平方向轴,得到第三列索引矩阵。

也就是说,列索引向量V

若特征矩阵的页数为1,即特征矩阵为二维矩阵的情况下,生成第三行索引矩阵的具体步骤可以包括:

首先,根据特征矩阵的列数,生成行索引向量,行索引向量中的元素为从0到小于列数的自然数;然后,将行索引向量在竖直方向轴重复行数次,得到第三行索引矩阵。

也就是说,若特征矩阵的页数K为1,则该特征矩阵可以直接表示为h

对应的,在特征矩阵为二维矩阵的情况下,生成第三列索引矩阵的具体步骤可以包括:

首先,根据特征矩阵的行数,生成列索引向量,列索引向量中的元素为从0到小于行数的自然数;然后,将列索引向量在水平方向轴重复列数次,得到第三列索引矩阵。

也就是说,列索引向量V

S130:根据预设底数矩阵、预设系数、特征矩阵以及第三行索引矩阵,生成第四行索引矩阵,并根据预设底数矩阵、预设系数、特征矩阵以及第三列索引矩阵,生成第四列索引矩阵。

其中,预设底数矩阵M

在本步骤中,生成第四行索引矩阵和第四列索引矩阵的具体步骤可以包括:

首先,将特征矩阵与预设系数相乘,得到第一过程矩阵;然后,将第一过程矩阵中每个元素的值,作为预设底数矩阵中对应位置的元素的指数,得到指数矩阵;接着,计算指数矩阵与指数矩阵中各元素之和的商,得到第二过程矩阵;进而,计算第二过程矩阵与第三行索引矩阵的乘积,得到第四行索引矩阵,并计算第二过程矩阵与第三列索引矩阵的乘积,得到第四列索引矩阵。

延续S120中的例子,第一过程矩阵M

S140,计算第四行索引矩阵在竖直方向轴和水平方向轴的和,作为第一序列,并计算第四列索引矩阵在竖直方向轴和水平方向轴的和,作为第二序列,其中,第一序列为待处理图像中一个或多个关键点的横坐标,第二序列为与第一序列对应的关键点的纵坐标。

在本步骤中,延续上述例子,若特征矩阵为三维矩阵,那么,第四行索引矩阵也为三维矩阵,第一序列X=SUM(M

可以理解,若特征矩阵为二维矩阵,那么,第四行索引矩阵为二维矩阵,计算第四行索引矩阵在竖直方向轴和水平方向轴的和,也就是对第四行索引矩阵中的所有元素进行求和,计算第四列索引矩阵在竖直方向轴和水平方向轴的和,也就是对第四列索引矩阵中的所有元素进行求和,得到唯一的X和Y的值。

如图2所示,为本申请提供的图像关键点位置计算方法的方案示意图。其中,根据特征矩阵的行数h

由以上可见,本申请提供的图像关键点位置计算方法,不再利用for循环结构对特征矩阵进行遍历,而是通过矩阵运算直接对特征矩阵进行分析,整个计算过程可微分,梯度可传递,处理效率较高,可以计算矩阵中任一指定平面中的最大值的坐标。而且,本申请提供的计算方法均为张量计算,全部计算由矩阵运算组成,更适合在GPU(GraphicsProcessing Unit,图形处理器)设备中运行,方便进行并行运算。

为了便于理解,下面通过具体实施例,对上述矩阵运算方法进行描述:

举例而言,在特征矩阵的页数不为1,即特征矩阵为三维矩阵的情况下,如果w

特征矩阵M

[[[0.17735992,0.17735992,0.17735992,0.17735992,0.17735992],[0.7207364,0.7207364,0.7207364,0.7207364,0.7207364],[0.33386825,0.33386825,0.33386825,0.33386825,0.33386825]],[[0.84014634,0.84014634,0.84014634,0.84014634,0.84014634],[0.51696645,0.51696645,0.51696645,0.51696645,0.51696645],[0.65116289,0.65116289,0.65116289,0.65116289,0.65116289]],[[0.00093748,0.00093748,0.00093748,0.00093748,0.00093748],[0.35016161,0.35016161,0.35016161,0.35016161,0.35016161],[0.04574418,0.04574418,0.04574418,0.04574418,0.04574418]],[[0.49256489,0.49256489,0.49256489,0.49256489,0.49256489],[0.27715809,0.27715809,0.27715809,0.27715809,0.27715809],[0.61000036,0.61000036,0.61000036,0.61000036,0.61000036]]]

那么,根据特征矩阵的列数w

然后,将V

M

将V

M

在第一行索引矩阵上建立第三方向轴,并将M

M

在第一列索引矩阵上建立第三方向轴,并将M

M

进而,将M

M

将M

M

如果预设系数为50,那么,第一过程矩阵M

M

将预设底数矩阵M

M

第二过程矩阵M

M

第四行索引矩阵M

M

[[[0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00],[5.08535461e-05,5.08535461e-05,5.08535461e-05,5.08535461e-05,5.08535461e-05],[2.29857927e-16,2.29857927e-16,2.29857927e-16,2.29857927e-16,2.29857927e-16]],[[0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00],[3.73451773e-11,3.73451773e-11,3.73451773e-11,3.73451773e-11,3.73451773e-11],[8.18426903e-07,8.18426903e-07,8.18426903e-07,8.18426903e-07,8.18426903e-07]],[[0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00],[3.55556399e-16,3.55556399e-16,3.55556399e-16,3.55556399e-16,3.55556399e-16],[4.87596671e-25,4.87596671e-25,4.87596671e-25,4.87596671e-25,4.87596671e-25]],[[0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00],[2.25571158e-18,2.25571158e-18,2.25571158e-18,2.25571158e-18,2.25571158e-18],[4.71915535e-08,4.71915535e-08,4.71915535e-08,4.71915535e-08,4.71915535e-08]]]

第四列索引矩阵M

M

[[[0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00],[0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00],[0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00,0.00000000e+00]],[[1.99948714e-01,1.99948714e-01,1.99948714e-01,1.99948714e-01,1.99948714e-01],[3.73451773e-11,3.73451773e-11,3.73451773e-11,3.73451773e-11,3.73451773e-11],[4.09213451e-07,4.09213451e-07,4.09213451e-07,4.09213451e-07,4.09213451e-07]],[[2.18395991e-26,2.18395991e-26,2.18395991e-26,2.18395991e-26,2.18395991e-26],[7.11112799e-16,7.11112799e-16,7.11112799e-16,7.11112799e-16,7.11112799e-16],[4.87596671e-25,4.87596671e-25,4.87596671e-25,4.87596671e-25,4.87596671e-25]],[[2.06440846e-11,2.06440846e-11,2.06440846e-11,2.06440846e-11,2.06440846e-11],[6.76713474e-18,6.76713474e-18,6.76713474e-18,6.76713474e-18,6.76713474e-18],[7.07873302e-08,7.07873302e-08,7.07873302e-08,7.07873302e-08,7.07873302e-08]]]

第一序列X=SUM(M

X=[5.17192019e-05,5.17192019e-05,5.17192019e-05,5.17192019e-05,5.17192019e-05]

第二序列Y=SUM(M

Y=[0.19994919,0.19994919,0.19994919,0.19994919,0.19994919]

在特征矩阵的页数为1,即特征矩阵为二维矩阵的情况下,如果w

特征矩阵M

那么,V

延续上述例子,D=4,那么,

M

M

M

M

M

X=0.00025859614556755035

Y=0.9997459681617585

参照图3,示出了本申请的一种图像关键点位置计算装置的结构框图,该装置具体可以包括如下模块:

获取模块301,用于获取待处理图像的特征矩阵;

索引生成模块302,用于根据所述特征矩阵的列数和页数,生成第三行索引矩阵,并根据所述特征矩阵的行数和页数,生成第三列索引矩阵;

索引计算模块303,用于根据预设底数矩阵、预设系数、所述特征矩阵以及所述第三行索引矩阵,生成第四行索引矩阵,并根据所述预设底数矩阵、所述预设系数、所述特征矩阵以及所述第三列索引矩阵,生成第四列索引矩阵;

坐标计算模块304,用于计算所述第四行索引矩阵在竖直方向轴和水平方向轴的和,作为第一序列,并计算所述第四列索引矩阵在竖直方向轴和水平方向轴的和,作为第二序列,其中,所述第一序列为所述待处理图像中一个或多个关键点的横坐标,所述第二序列为与所述第一序列对应的关键点的纵坐标。

一种实现方式中,索引计算模块303,具体用于:

将所述特征矩阵与预设系数相乘,得到第一过程矩阵;

将所述第一过程矩阵中每个元素的值,作为预设底数矩阵中对应位置的元素的指数,得到指数矩阵;

计算所述指数矩阵与所述指数矩阵中各元素之和的商,得到第二过程矩阵;

计算所述第二过程矩阵与所述第三行索引矩阵的乘积,得到第四行索引矩阵,并计算所述第二过程矩阵与所述第三列索引矩阵的乘积,得到第四列索引矩阵。

一种实现方式中,在所述特征矩阵的页数不为1的情况下,索引生成模块302,具体用于:

根据所述特征矩阵的列数,生成行索引向量,所述行索引向量中的元素为从0到小于所述列数的自然数;

将所述行索引向量在竖直方向轴重复所述行数次,得到第一行索引矩阵;

建立所述第一行索引矩阵的第三方向轴,将所述第一行索引矩阵在所述第三方向轴重复所述页数次,得到第二行索引矩阵;

交换所述第二行索引矩阵的第三方向轴和水平方向轴,得到第三行索引矩阵;

根据所述特征矩阵的行数,生成列索引向量,所述列索引向量中的元素为从0到小于所述行数的自然数;

将所述列索引向量在水平方向轴重复所述列数次,得到第一列索引矩阵;

建立所述第一列索引矩阵的第三方向轴,将所述第一列索引矩阵在所述第三方向轴重复所述页数次,得到第二列索引矩阵;

交换所述第二列索引矩阵的第三方向轴和水平方向轴,得到第三列索引矩阵。

一种实现方式中,在所述特征矩阵的页数为1的情况下,索引生成模块302,具体用于:

根据所述特征矩阵的列数,生成行索引向量,所述行索引向量中的元素为从0到小于所述列数的自然数;

将所述行索引向量在竖直方向轴重复所述行数次,得到第三行索引矩阵;

根据所述特征矩阵的行数,生成列索引向量,所述列索引向量中的元素为从0到小于所述行数的自然数;

将所述列索引向量在水平方向轴重复所述列数次,得到第三列索引矩阵。

由以上可见,本申请提供的图像关键点位置计算装置,不再利用for循环结构对特征矩阵进行遍历,而是通过矩阵运算直接对特征矩阵进行分析,整个计算过程可微分,梯度可传递,处理效率较高。

本申请还提供了一种电子设备,如图4所示,包括处理器401、通信接口402、存储器403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信,

存储器403,用于存放计算机程序;

处理器401,用于执行存储器403上所存放的程序时,实现如下步骤:

获取待处理图像的特征矩阵;

根据特征矩阵的列数和页数,生成第三行索引矩阵,并根据特征矩阵的行数和页数,生成第三列索引矩阵;

根据预设底数矩阵、预设系数、特征矩阵以及第三行索引矩阵,生成第四行索引矩阵,并根据预设底数矩阵、预设系数、特征矩阵以及第三列索引矩阵,生成第四列索引矩阵;

计算第四行索引矩阵在竖直方向轴和水平方向轴的和,作为第一序列,并计算第四列索引矩阵在竖直方向轴和水平方向轴的和,作为第二序列,其中,第一序列为待处理图像中一个或多个关键点的横坐标,第二序列为与第一序列对应的关键点的纵坐标。

上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述终端与其他设备之间的通信。

存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的图像关键点位置计算方法。

在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的图像关键点位置计算方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘SolidState Disk(SSD))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

相关技术
  • 一种图像关键点位置计算方法、装置、设备及存储介质
  • 一种人脸图像关键点方法、装置、计算机设备及存储介质
技术分类

06120112389255