[0073] 图5为一个实施例中确定子标记物的排布关系的示意图。如图5所示,标记物中可包括4个子标记物,每个子标记物分别包含一个质心,其中,质心A、质心B、质心C及质心D分别为子标记物A、子标记物B、子标记物C及子标记物D的质心,质心M为整个标记物的质心。可选取子标记物(例如图中的子标记物A),并根据选取的子标记物的第一质心坐标(图中为质心A)与标记物的第二质心坐标(图中为质心M)建立第一参考线L1。同时,可根据其他各个子标记物的第一质心坐标及标记物的第二质心坐标建立与其他各个子标记物分别对应的指示线,比如,可根据质心B建立子记标物B对应的指示线S1,根据质心C建立子标记物C对应的指示线S2,根据质心D建立子标记物D对应的指示线S3。可分别确定各条指示线与第一参考线L1在同一方向上(例如逆时针方向)上的角度,其中,指示线S1与第一参考线L1的所成角为w,指示线S2与第一参考线L1的所成角为x,指示线S2与第一参考线L1的所成角为y,指示线S3与第一参考线L1的所成角为z。对各个所成角的角度大小进行排序,可以得到x
[0074] 在本实施例中,可根据选取的子标记物建立参考线,并根据其他各个子标记物与参考线之间的角度确定各个子标记物之间的排布关系,可以帮助更加快速、准确地识别标记物的身份。
[0075] 如图6所示,在一个实施例中,步骤330确定各个子标记物在标记物中的排布关系,包括以下步骤:
[0076] 步骤602,从各个子标记物中选取两个子标记物。
[0077] 终端设备确定图像中标记物包含的各个子标记物之间的排布关系,可先从标记物包含的各个子标记物中选取两个子标记物,选取的两个子标记物可以是任意的两个子标记物,也可以按照一定规则进行选取,比如,可以选取特征点数量最多的两个子标记物,或是选取特征点数量最多及最少的子标记物,也可以选取特征点数量最少的两个子标记物等,但不限于此。
[0078] 步骤604,根据选取的两个子标记物建立第二参考线。
[0079] 终端设备可根据选取的两个子标记物建立第二参考线,并根据该第二参考线确定各个子标记物之间的排布关系。在一个实施例中,可分别获取选取的两个子标记物的第一质心坐标,并根据选取的两个子标记物的第一质心坐标建立第二参考线。其中,第二参考线可以是过选取的两个子标记物的第一质心坐标的直线,也可以是以选取的两个子标记物中任一一个子标记物的第一质心坐标为起点,且过另一子标记物的第一质心坐标的射线,也可以是以选取的两个子标记物的第一质心坐标为端点的线段,或是以选取的两个子标记物中任一一个子标记物的第一质心坐标为起点,到另一子标记物的第一质心坐标的向量等,但不限于此。
[0080] 步骤606,基于第二参考线,确定其他各个子标记物相对于第二参考线的分布区域,其他各个子标记物为除选取的两个子标记物外的子标记物。
[0081] 终端设备可基于第二参考线,逐一确定除选取的两个子标物外的其他子标记物,相对于第二参考线的分布区域,其中,分布区域主要指的是子标记物位于第二参考线的哪一侧,例如,该分布区域可包括第二参考线的左侧区域和右侧区域等。
[0082] 在一些实施方式中,可分别获取除选取的两个子标物外的其他各个子标记物第一质心坐标,并根据第一质心坐标判断对应子标记物相对于第二参考线的分布区域。判断其他各个子标记物位于第二参考线的哪一侧,可采用多种不同的方式进行判断,在此不作限定。例如,可以获取第二参考线的线性公式,并将其他子标记物的第一质心坐标带入该线性公式,得到代入结果,再根据代入结果判断该其他子标记物相对第二参考线的分布区域。比如,若代入结果小于0,则可确定该其他子标记物位于第二参考线的左侧,若代入结果大于0,则可确定该其他子标记物位于第二参考线的右侧,当然,代入结果及判断方式并不仅限于此。也可以采用矢量运算确定其他各个子标记物相对于第二参考线的分布区域等。
[0083] 步骤608,根据分布区域获取各个子标记物之间的相邻关系,并根据相邻关系确定各个子标记物在标记物中的排布关系。
[0084] 终端设备可根据除选取的两个子标物外的其他子标记物相对于第二参考线的分布区域,获取各个子标记物之间的相邻关系,其中,相邻关系指的是子标记物之间相邻,若两个子标记物之间没有其他子标记物,则可认为该两个子标记物具备相邻关系,若两个子标记物之间存在其他子标记物,则可认为该两个子标记物不具备相邻关系。
[0085] 在一些实施方式中,可根据其他子标记物相对第二参考线的分布区域判断不同子标记物之间是否相邻。若其他各个子标记物均位于第二参考线的同一侧,则可说明第二参考线上选取的两个子标记物之间没有其他子标记物,处于相邻关系;若其他各个子标记物位于第二参考线的不同侧,则可说明第二参考线上选取的两个子标记物之间存在其他子标记物,不属于相邻关系,其中,若其中一侧只有一个其他子标记物,则该其他子标记物分别与第二参考线上选取的两个子标记物具备相邻关系。进一步地,可根据该其他子标记物具体所处的分布区域,比如在第二参考线的左侧还是右侧,以及第二参考线上选取的两个子标记物在第二参考线上的位置,确定子标记物之间的排布关系。
[0086] 以图7(A)为例进行说明,图7(A)为另一个实施例中确定子标记物的排布关系的示意图。如图7(A)所示,标记物中可包括4个子标记物,每个子标记物分别包含一个质心,其中,质心A、质心B、质心C及质心D分别为子标记物A、子标记物B、子标记物C及子标记物D的质心。可选取两个子标记物(例如图中的子标记物A和子标记物C),并根据选取的两个子标记物的第一质心坐标(例如图中的质心A和质心C)建立第二参考线L2。可确定其他各个子标记物相对第二参考线L2的分布区域,可以判断出子标记物B位于第二参考线L2的左侧区域,子标记物D位于第二参考线L2的右侧区域。由于子标记物A和子标记物D之间还存在其他子标记物,因此子标记物A和子标记物D不具备相邻关系。第二参考线L2的左侧区域只有一个子标记物B,则可确定子标记物B分别与子标记物A和子标记物C相邻,同时,第二参考线L2的右侧区域只有一个子标记物D,则可确定子标记物D分别与子标记物A和子标记物C相邻。根据子标记物A和子标记物C在第二参考线L2上的位置,假设以子标记物A为起始子标记物,按照顺时针的方向,可以得到各个子标记物之间的排布关系为子标记物A-子标记物D-子标记物C-子标记物D。图7(A)仅作为确定排布关系的一种实施方式对上述的方法进行说明,并不用于限定具体的确定方式。
[0087] 在一个实施例中,若在第二参考线的同一分布区域存在至少两个其他子标记物,则无法得到该至少两个其他子标记物的相邻关系,从而无法准确得到各个子标记物之间的排布关系。可重新选取两个子标记物,并重复执行上述步骤602至步骤608,继续确定各个子标记物之间的相邻关系,直至获得所有子标记物的相邻关系。重新选取的两个子标记物可与之前选取的两个子标记物不同,其中,不同可包括重新选取的两个子标记物与之前选取的两个子标记物存在一个不同或两个均不同。
[0088] 以图7(B)为例进行说明,图7(B)为又一个实施例中确定子标记物的排布关系的示意图。如图7(B)所示,标记物中可包括5个子标记物,每个子标记物分别包含一个质心,其中,质心A、质心B、质心C、质心D及质心E分别为子标记物A、子标记物B、子标记物C、子标记物D及子标记物E的质心。先从中选取两个子标记物(如(1)中的子标记物A及子标记物C),并根据选取的两个子标记物的第一质心坐标(如(1)中的质心A和质心C)建立第二参考线L2。可确定其他各个子标记物相对第二参考线L2的分布区域,可以判断出子标记物B和子标记物E位于第二参考线L2的左侧区域,子标记物D位于第二参考线L2的右侧区域。第二参考线L2的右侧区域只有一个子标记物D,则可确定子标记物D分别与子标记物A和子标记物C相邻,但无法确定子标记物B、子标记物E和子标记物A、子标记物C的相邻关系。可重新选取两个子标记物(如(2)中的子标记物A和子标记物E),并根据选取的两个子标记物的第一质心坐标(如(2)中的质心A和质心E)建立第二参考线L2’。可确定其他各个子标记物相对第二参考线L2’的分布区域,可以判断出子标记物B位于第二参考线L2’的左侧区域,子标记物D和子标记物C位于第二参考线L2’的右侧区域。第二参考线L2’的左侧区域只有一个子标记物B,则可确定子标记物B分别与子标记物A和子标记物E相邻。根据(1)和(2)得到子标记物的相邻关系,可以得到,假设以子标记物A为起始子标记物,按照逆时针的方向,该标记物中各个子标记物之间的排布关系为子标记物A-子标记物B-子标记物E-子标记物C-子标记物D。图7(B)仅作为确定排布关系的一种实施方式对上述的方法进行说明,并不用于限定具体的确定方式。
[0089] 在本实施例中,从各个子标记物中选取两个子标记物,根据选取的两个子标记物建立第二参考线,并基于第二参考线确定其他各个子标记物相对于第二参考线的分布区域,得到各个子标记物的相邻关系,从而确定子标记物之间的排布关系,可以帮助更加快速、准确地识别标记物的身份。
[0090] 如图8所示,在一个实施例中,步骤330确定各个子标记物在标记物中的排布关系,包括以下步骤:
[0091] 步骤802,从各个子标记物中选取一子标记物。
[0092] 终端设备确定图像中标记物包含的各个子标记物之间的排布关系,可先从标记物包含的各个子标记物中选取一子标记物,选取的子标记物可以是任意一个子标记物,也可以按照一定规则进行选取,比如,可以选取特征点数量最多或特征点数量最少的子标记物,但不限于此。
[0093] 步骤804,分别建立选取的子标记物与其他各个子标记物的第三参考线。
[0094] 终端设备可分别建立选取的子标记物与其他各个子标记物的第三参考线,第三参考线的数量可以是标记物包含的子标记物数据减去1,每个除选取的子标记物外的其他子标记物,可分别对应一条第三参考线。可根据建立的一条或多条第三参考线确定各个子标记物之间的排布关系。
[0095] 在一个实施例中,可获取选取的子标记物和其他子标记物的第一质心坐标,并根据选取的子标记物和其他子标记物的第一质心坐标建立与该其他子标记物对应的第三参考线。其中,第三参考线可以是过选取的子标记物和其他子标记物的第一质心坐标的直线,也可以是以选取的子标记物的第一质心坐标为起点,且过其他子标记物的第一质心坐标的射线,或是以其他子标记物的第一质心坐标为起点,且过选取的子标记物的第一质心坐标的射线,也可以是以选取的子标记物和其他子标记物的第一质心坐标为两个端点的线端,也可以是以选取的子标记物的第一质心坐标为起点,到其他子标记物的第一质心坐标的向量,或是以其他子标记物的第一质心坐标为起点,到选取的子标记物的第一质心坐标的向量等,但不限于此。
[0096] 步骤806,针对每条第三参考线,分别确定除第三参考线上的两个子标记物外的其他各个子标记物在第三参考线的分布区域,并得到除第三参考线上的两个子标记物外的其他各个子标记物在不同分布区域的分布数量。
[0097] 针对建立的每条第三参考线,终端设备可分别确定除第三参考线上的两个子标记物外的其他子标记物在该第三参考线的分布区域,可选地,该分布区域可包括该第三参考线的左侧区域和右侧区域等。确定除第三参考线上的两个子标记物外的其他子标记物在该第三参考线的分布区域的方式可以是多种,在此不作限定,比如可以采用公式代入的方式,并根据代入结果确定,也可以采用矢量运算等方式进行确定等。可获取除第三参考线上的两个子标记物外的其他各个子标记物在该第三参考线的不同分布区域的分布数量,例如,针对某一第三参考线,其左侧区域分布有1个其他子标记物,右侧区域分布有2个其他子标记物。
[0098] 步骤808,对每条第三参考线在同一分布区域的分布数量进行排序,并根据排序结果确定各个子标记物在标记物中的排布关系。
[0099] 终端设备获取每条第三参考线上其他各个子标记物在不同分布区域的分布数量后,可对每条第三参考线在同一分布区域的分布数量的进行排序,可以是从大到小进行排序,也可以是从小到大进行排序,得到排序结果。根据排序结果,可以确定以选取的子标记物为起始子标记物,按照与该同一分布区域对应的方向,各个子标记物之间的排布关系。例如,可将每条第三参考线中其他各个子标记物在左侧区域的分布数量,按照从小到大的顺序进行排列,从小到大进行排序后的子标记物与选取的子标记物在逆时针方向的距离依次变大,从而可确定各个子标记物之间的排布关系。该排布关系可以将选取的子标记物作为起始子标记物,按照与左侧区域对应的逆时针方向,以及从小到大的排序结果逐一对各个子标记物进行排列。
[0100] 以图9为例进行说明,图9为再一个实施例中确定子标记物的排布关系的示意图。如图9所示,标记物中可包括5个子标记物,每个子标记物分别包含一个质心,其中,质心A、质心B、质心C、质心D及质心E分别为子标记物A、子标记物B、子标记物C、子标记物D及子标记物E的质心。可选取一个子标记物(例如图中的子标记物A),并根据选取的子标记物和其他各个子标记物的第一质心坐标分别建立多条第三参考线。如图中所示,根据质心A与质心B建立第三参考线l1,根据质心A与质心C建立第三参考线l2,根据质心A与质心D建立第三参考线l3,根据质心A与质心E建立第三参考线l4。针对每条第三参考线,可以得到除第三参考线上的两个子标记物外的其他各个子标记物在不同分布区域的分布数量。可以得到在第三参考线l1的左侧区域分布为0个其他子标记物,右侧区域分布有3个子标记物(子标记物C、子标记物D和子标记物E);在第三参考线l2的左侧区域分布为1个其他子标记物(子标记物B),右侧区域分布有2个子标记物(子标记物D和子标记物E);在第三参考线l3的左侧区域分布为2个其他子标记物(子标记物B和子标记物C),右侧区域分布有1个子标记物(子标记物E);在第三参考线l4的左侧区域分布为3个其他子标记物(子标记物B、子标记物C和子标记物D),右侧区域分布有0个子标记物。可按照从小到大的顺序,对各条第三参考线在左侧区域上其他子标记物的分布数量进行排序,排序结果为l1
[0101] 在本实施例中,选取一子标记物,并分别建立选取的子标记物与其他各个子标记物的第三参考线,可以得到每条第三参考线中,除第三参考线上的两个子标记物外的其他各个子标记物在不同分布区域的分布数量,并对分布数量进行排序,从而确定各个子标记物在标记物中的排布关系,可以帮助更加快速、准确地识别标记物的身份。
[0102] 在一个实施例中,提供一种信息识别方法,包括以下步骤:
[0103] 步骤(1),获取包含标记物的图像。
[0104] 步骤(2),对标记物进行识别,得到标记物包含的各个子标记物,其中,每个子标记物包含至少一个特征点。
[0105] 步骤(3),确定各个子标记物在标记物中的排布关系。
[0106] 在一个实施例中,步骤(3),包括:从各个子标记物中选取一子标记物;根据选取的子标记物建立第一参考线;确定其他各个子标记物与第一参考线之间在同一方向上的角度,其他各个子标记物为除选取的子标记物外的子标记物;对确定的各个角度进行排序,并根据排序结果确定各个子标记物在标记物中的排布关系。
[0107] 在一个实施例中,步骤根据选取的子标记物建立第一参考线,包括:获取各个子标记物的第一质心坐标;根据各个子标记物的第一质心坐标计算标记物的第二质心坐标;根据选取的子标记物的第一质心坐标与第二质心坐标建立第一参考线。
[0108] 在一个实施例中,步骤确定其他各个子标记物与第一参考线之间在同一方向上的角度,包括:根据其他各个子标记物的第一质心坐标与第二质心坐标,得到与其他各个子标记物分别对应的指示线;分别计算其他各个子标记物对应的指示线与第一参考线在同一方向上的角度。
[0109] 在一个实施例中,步骤从各个子标记物中选取一子标记物,包括:获取各个子标记物包含的特征点数量,并选取特征点数量最多或最少的子标记物。
[0110] 在一个实施例中,步骤(3),包括:从各个子标记物中选取两个子标记物;根据选取的两个子标记物建立第二参考线;基于第二参考线,确定其他各个子标记物相对于第二参考线的分布区域,其他各个子标记物为除选取的两个子标记物外的子标记物;根据分布区域获取各个子标记物之间的相邻关系,并根据相邻关系确定各个子标记物在标记物中的排布关系。
[0111] 在一个实施例中,步骤(3),包括:从各个子标记物中选取一子标记物;分别建立选取的子标记物与其他各个子标记物的第三参考线;针对每条第三参考线,分别确定除第三参考线上的两个子标记物外的其他子各个标记物在第三参考线的分布区域,并得到除第三参考线上的两个子标记物外的其他各个子标记物在不同分布区域的分布数量;对每条第三参考线在同一分布区域的分布数量进行排序,并根据排序结果确定各个子标记物在标记物中的排布关系。
[0112] 步骤(4),根据排布关系获取标记物对应的身份信息。
[0113] 在一个实施例中,步骤(4),包括:获取各个子标记物包含的特征点信息;根据每个子标记物的特征点信息对对应的子标记物进行编码;按照各个子标记物的排布关系,以各个子标记物的编码确定标记物的身份信息。
[0114] 在本实施例中,通过获取包含标记物的图像,对标记物进行识别,得到标记物包含的各个子标记物,并确定各个子标记物在标记物中的排布关系,从而可根据各个子标记物之间的排布关系获取标记物对应的身份信息,可以准确地识别标记物,且识别速度快。
[0115] 如图10所示,在一个实施例中,提供一种信息识别装置1000,包括获取模块1010、识别模块1020、排布确定模块1030及标识获取模块1040。
[0116] 获取模块1010,用于获取包含标记物的图像。
[0117] 识别模块1020,用于对标记物进行识别,得到标记物包含的各个子标记物,其中,每个子标记物包含至少一个特征点。
[0118] 排布确定模块1030,用于确定各个子标记物在标记物中的排布关系。
[0119] 标识获取模块1040,用于根据排布关系获取标记物对应的身份信息。
[0120] 在一个实施例中,标识获取模块1040,包括信息获取单元、编码单元及生成单元。
[0121] 信息获取单元,用于获取各个子标记物包含的特征点信息。
[0122] 编码单元,用于根据每个子标记物的特征点信息对对应的子标记物进行编码。
[0123] 生成单元,用于按照各个子标记物的排布关系,以各个子标记物的编码生成标记物的身份信息。
[0124] 在本实施例中,通过获取包含标记物的图像,对标记物进行识别,得到标记物包含的各个子标记物,并确定各个子标记物在标记物中的排布关系,从而可根据各个子标记物之间的排布关系获取标记物对应的身份信息,可以准确地识别标记物,且识别速度快。
[0125] 在一个实施例中,排布确定模块1030,包括选取单元、参考线建立单元、角度确定单元及关系确定单元。
[0126] 选取单元,用于从各个子标记物中选取一子标记物。
[0127] 参考线建立单元,用于根据选取的子标记物建立第一参考线。
[0128] 在一个实施例中,参考线建立单元,包括坐标获取子单元、坐标计算子单元及建立子单元。
[0129] 坐标获取子单元,用于获取各个子标记物的第一质心坐标。
[0130] 在一个实施例中,坐标获取子单元,还用于获取各个子标记物包含的特征点数量,并选取特征点数量最多或最少的子标记物。
[0131] 坐标计算子单元,用于根据各个子标记物的第一质心坐标计算标记物的第二质心坐标。
[0132] 建立子单元,用于根据选取的子标记物的第一质心坐标与第二质心坐标建立第一参考线。
[0133] 角度确定单元,用于确定其他各个子标记物与第一参考线之间在同一方向上的角度,其他各个子标记物为除选取的子标记物外的子标记物。
[0134] 在一个实施例中,角度确定单元,包括指示子单元及角度计算子单元。
[0135] 指示子单元,用于根据其他各个子标记物的第一质心坐标与第二质心坐标,得到与其他各个子标记物分别对应的指示线。
[0136] 角度计算子单元,用于分别计算其他各个子标记物对应的指示线与第一参考线在同一方向上的角度。
[0137] 关系确定单元,用于对确定的各个角度进行排序,并根据排序结果确定各个子标记物在标记物中的排布关系。
[0138] 在本实施例中,可根据选取的子标记物建立参考线,并根据其他各个子标记物与参考线之间的角度确定各个子标记物之间的排布关系,可以帮助更加快速、准确地识别标记物的身份。
[0139] 在一个实施例中,排布确定模块1030,除了包括选取单元、参考线建立单元、角度确定单元及关系确定单元,还包括分布区域确定单元。
[0140] 选取单元,还用于从各个子标记物中选取两个子标记物。
[0141] 参考线建立单元,还用于根据选取的两个子标记物建立第二参考线。
[0142] 分布区域确定单元,用于基于第二参考线,确定其他各个子标记物相对于第二参考线的分布区域,其他各个子标记物为除选取的两个子标记物外的子标记物。
[0143] 关系确定单元,还用于根据分布区域获取各个子标记物之间的相邻关系,并根据相邻关系确定各个子标记物在标记物中的排布关系。
[0144] 在本实施例中,从各个子标记物中选取两个子标记物,根据选取的两个子标记物建立第二参考线,并基于第二参考线确定其他各个子标记物相对于第二参考线的分布区域,得到各个子标记物的相邻关系,从而确定子标记物之间的排布关系,可以帮助更加快速、准确地识别标记物的身份。
[0145] 在一个实施例中,排布确定模块1030,除了包括选取单元、参考线建立单元、角度确定单元、关系确定单元及分布区域确定单元,还包括数量获取单元。
[0146] 选取单元,还用于从各个子标记物中选取一子标记物。
[0147] 参考线建立单元,还用于分别建立选取的子标记物与其他各个子标记物的第三参考线。
[0148] 数量获取单元,用于针对每条第三参考线,分别确定除第三参考线上的两个子标记物外的其他子各个标记物在第三参考线的分布区域,并得到除第三参考线上的两个子标记物外的其他各个子标记物在不同分布区域的分布数量。
[0149] 关系确定单元,还用于对每条第三参考线在同一分布区域的分布数量进行排序,并根据排序结果确定各个子标记物在标记物中的排布关系。
[0150] 在本实施例中,选取一子标记物,并分别建立选取的子标记物与其他各个子标记物的第三参考线,可以得到每条第三参考线中,除第三参考线上的两个子标记物外的其他各个子标记物在不同分布区域的分布数量,并对分布数量进行排序,从而确定各个子标记物在标记物中的排布关系,可以帮助更加快速、准确地识别标记物的身份。
[0151] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0152] 在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
[0153] 另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用
硬件的形式实现,也可以采用软件功能模块的形式实现。
[0154] 在一个实施例中,本申请还提供一种电子设备,包括存储器及处理器,该存储器中存储有计算机程序,计算机程序被该处理器执行时,使得该处理器可实现上述实施例中描述的信息识别方法。
[0155] 在一个实施例中,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时可实现上述实施例中描述的信息识别方法。
[0156] 计算机可读存储介质800可以是诸如闪存、EEPROM(电可擦除可编程
只读存储器)、EPROM、
硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质800包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质800具有执行上述方法中的任何方法步骤的程序代码810的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码810可以例如以适当形式进行压缩。
[0157] 最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。