发明内容
本申请提供一种基于矢量字的评测方法、装置、设备和存储介质,能够实现对字符的自动评测,减少了人力成本。
第一方面,本申请提供一种基于矢量字的评测方法,所述方法,包括:
获取待评测书写字符所对应的待评测矢量字,并获取与所述待评测矢量字对应的样本矢量字;
确定所述待评测矢量字与所述样本矢量字之间的第一距离,其中,所述第一距离用于指示所述待评测矢量字与所述样本矢量字之间的相似度;
根据预设的第一距离与评分值之间的对应关系,确定所述待评测矢量字与所述样本矢量字之间的第一距离所对应的评分值,并确定所确定出的评分值,为所述待评测书写字符的评分值。
进一步地,所述待评测矢量字包括L个第一点集,每个第一点集包括多个第一矢量点;所述样本矢量字包括L个第二点集,每个第二点集包括多个第二矢量点;第一点集与第二点集一一对应;L为大于等于1的正整数;
确定所述待评测矢量字与所述样本矢量字之间的第一距离,包括:
针对L个第一点集中的每个第一点集中的每个第一矢量点,确定当前第一点集中的当前第一矢量点,分别与当前第一点集对应的第二点集中的每个第二矢量点之间的欧式距离;确定当前第一矢量点所对应的各欧式距离中最小的欧式距离为第二距离,其中,第二距离表征当前第一矢量点到与当前第一点集对应的第二点集的距离;根据当前第一点集中的各第一矢量点分别所对应的第二距离,确定第三距离,其中,第三距离表征当前第一点集到与所述当前第一点集对应的第二点集的距离;
根据L个第一点集分别所对应的第三距离,确定第四距离,其中,所述第四距离表征所述待评测矢量字到所述样本矢量字的距离;
根据所述第四距离,确定所述待评测矢量字与所述样本矢量字之间的第一距离。
进一步地,在根据所述第四距离,确定所述待评测矢量字与所述样本矢量字之间的第一距离之前,还包括:
针对L个第二点集中的每个第二点集中的每个第二矢量点,确定当前第二点集中的当前第二矢量点,分别与当前第二点集对应的第一点集中的每个第一矢量点之间的欧式距离;确定当前第二矢量点所对应的各欧式距离中最小的欧式距离,为第五距离,其中,第五距离表征当前第二矢量点到与所述当前第二点集对应的第一点集的距离;根据当前第二点集中的各第二矢量点分别所对应的第五距离,确定第六距离,其中,第六距离表征当前第二点集到与所述当前第二点集对应的第一点集的距离;
根据L个第二点集分别所对应的第六距离,确定第七距离,其中,所述第七距离表征所述样本矢量字到所述待评测矢量字的距离;
根据所述第四距离,确定所述待评测矢量字与所述样本矢量字之间的第一距离,包括:
根据所述第四距离和所述第七距离,确定所述待评测矢量字与所述样本矢量字之间的第一距离。
进一步地,所述待评测矢量字与所述样本矢量字之间的第一距离DistS-T=α*DistST+β*DistTS,其中,DistsT为待评测矢量字S到样本矢量字T的第四距离;DistTS为样本矢量字T到待评测矢量字S的第七距离;α为预设第一参数值,β为预设第二参数值。
进一步地,所述待评测矢量字具有L个笔画,每个笔画对应至少两个原有的第一矢量点;在所述获取待评测书写字符所对应的待评测矢量字之后,且在确定所述待评测矢量字与所述样本矢量字之间的第一距离之前,还包括:
针对所述待评测矢量字的L个笔画中的每个笔画,采用预设的差值算法,在所述待评测矢量字的当前笔画所对应的每相邻两个原始的第一矢量点之间,插入新的第一矢量点;确定所述当前笔画所对应的新的第一矢量点、以及至少两个原有的第一矢量点,构成所述当前笔画所对应的第一点集。
进一步地,所述方法还包括:
获取多个参考矢量字,并获取每个所述参考矢量字对应的评分值,以及获取与所述多个参考矢量字对应的标准矢量字,
确定每个所述参考矢量字与所述标准矢量字之间的第一距离;
根据每个所述参考矢量字与所述标准矢量字之间的第一距离、以及每个所述参考矢量字对应的评分值,确定所述对应关系。
进一步地,在确定所确定出的评分值,为所述待评测书写字符的评分值之后,还包括:
显示所述待评测书写字符的评分值;
和/或,将所述待评测书写字符的评分值发送给终端设备进行显示。
第二方面,本申请提供一种基于矢量字的评测装置,所述装置,包括:
第一获取单元,用于获取待评测书写字符所对应的待评测矢量字;
第二获取单元,用于获取与所述待评测矢量字对应的样本矢量字;
第一确定单元,用于确定所述待评测矢量字与所述样本矢量字之间的第一距离,其中,所述第一距离用于指示所述待评测矢量字与所述样本矢量字之间的相似度;
第二确定单元,用于根据预设的第一距离与评分值之间的对应关系,确定所述待评测矢量字与所述样本矢量字之间的第一距离所对应的评分值,并确定所确定出的评分值,为所述待评测书写字符的评分值。
进一步地,所述待评测矢量字包括L个第一点集,每个第一点集包括多个第一矢量点;所述样本矢量字包括L个第二点集,每个第二点集包括多个第二矢量点;第一点集与第二点集一一对应;L为大于等于1的正整数;
所述第一确定单元,包括:
第一确定模块,用于针对L个第一点集中的每个第一点集中的每个第一矢量点,确定当前第一点集中的当前第一矢量点,分别与当前第一点集对应的第二点集中的每个第二矢量点之间的欧式距离;确定当前第一矢量点所对应的各欧式距离中最小的欧式距离为第二距离,其中,第二距离表征当前第一矢量点到与当前第一点集对应的第二点集的距离;根据当前第一点集中的各第一矢量点分别所对应的第二距离,确定第三距离,其中,第三距离表征当前第一点集到与所述当前第一点集对应的第二点集的距离;
第二确定模块,用于根据L个第一点集分别所对应的第三距离,确定第四距离,其中,所述第四距离表征所述待评测矢量字到所述样本矢量字的距离;
第三确定模块,用于根据所述第四距离,确定所述待评测矢量字与所述样本矢量字之间的第一距离。
进一步地,所述第一确定单元,还包括:
第四确定模块,用于在第三确定模块根据所述第四距离,确定所述待评测矢量字与所述样本矢量字之间的第一距离之前,针对L个第二点集中的每个第二点集中的每个第二矢量点,确定当前第二点集中的当前第二矢量点,分别与当前第二点集对应的第一点集中的每个第一矢量点之间的欧式距离;确定当前第二矢量点所对应的各欧式距离中最小的欧式距离,为第五距离,其中,第五距离表征当前第二矢量点到与所述当前第二点集对应的第一点集的距离;根据当前第二点集中的各第二矢量点分别所对应的第五距离,确定第六距离,其中,第六距离表征当前第二点集到与所述当前第二点集对应的第一点集的距离;
第五确定模块,用于根据L个第二点集分别所对应的第六距离,确定第七距离,其中,所述第七距离表征所述样本矢量字到所述待评测矢量字的距离;
第三确定模块,具体用于根据所述第四距离和所述第七距离,确定所述待评测矢量字与所述样本矢量字之间的第一距离。
进一步地,所述待评测矢量字与所述样本矢量字之间的第一距离DistS-T=α*DistST+β*DistTs,其中,DistST为待评测矢量字S到样本矢量字T的第四距离;DistTS为样本矢量字T到待评测矢量字S的第七距离;α为预设第一参数值,β为预设第二参数值。
进一步地,所述待评测矢量字具有L个笔画,每个笔画对应至少两个原有的第一矢量点;所述装置还包括:
插值处理单元,用于在所述第一获取单元获取待评测矢量字之后,且在第一确定单元确定所述待评测矢量字与所述样本矢量字之间的第一距离之前,针对所述待评测矢量字的L个笔画中的每个笔画,采用预设的差值算法,在所述待评测矢量字的当前笔画所对应的每相邻两个原始的第一矢量点之间,插入新的第一矢量点;确定所述当前笔画所对应的新的第一矢量点、以及至少两个原有的第一矢量点,构成所述当前笔画所对应的第一点集。
进一步地,所述装置还包括:
第三获取单元,用于获取多个参考矢量字,并获取每个所述参考矢量字对应的评分值;
第四获取单元,用于获取与所述多个参考矢量字对应的标准矢量字;
第三确定单元,用于确定每个所述参考矢量字与所述标准矢量字之间的第一距离;
第四确定单元,用于根据每个所述参考矢量字与所述标准矢量字之间的第一距离、以及每个所述参考矢量字对应的评分值,确定所述对应关系。
进一步地,所述装置还包括:
显示单元,用于在所述第二确定单元确定所确定出的评分值,为所述待评测书写字符的评分值之后,显示所述待评测书写字符的评分值;
进一步地,所述装置还包括:
发送单元,用于在所述第二确定单元确定所确定出的评分值,为所述待评测书写字符的评分值之后,将所述待评测书写字符的评分值发送给终端设备进行显示。
第三方面,本申请提供一种基于矢量字的评测设备,包括:存储器和处理器;
所述存储器,用于存储计算机程序;
其中,所述处理器执行所述存储器中的计算机程序,以实现第一方面的任一方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现第一方面的任一方法。
本申请提供的基于矢量字的评测方法、装置、设备和存储介质,通过获取待评测书写字符所对应的待评测矢量字、以及与待评测矢量字对应的样本矢量字,然后根据待评测矢量字和样本矢量字,确定待评测矢量字与样本矢量字之间的第一距离,该第一距离用于指示待评测矢量字与样本矢量字之间的相似度,之后根据预设的第一距离和评分值之间的对应关系,可确定待评测矢量字与样本矢量字之间的第一距离所对应的评分值,并将所确定出的评分值确定为待评测书写字符的评分值。本案通过获取与待评测书写字符所对应的待评测矢量字,以及与待评测矢量字对应的样本矢量字,从而通过确定待评测矢量字与样本矢量字之间的第一距离,并根据第一距离与评分值之间的对应关系,实现对待评测书写字符的自动评测,无需人工参与,极大减少了人力成本。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
下面将对本案所涉及到名词进行解释:
矢量字:是指通过数学曲线来描述的字,它包含了字形上的关键点,连线的导数信息等。矢量字具有描述精确、任意缩放不变形、存储数据量小的优点。目前,当用户在绘图板、移动端等终端设备上书写字符时,终端设备通常以矢量形式存储用户书写的字符,其中,以矢量形式存储的用户书写的字符,即为矢量字。
点集:指的是坐标点集合。
图1为本申请实施例提供的一种基于矢量字的评测方法的流程示意图,如图1所示,该方法包括:
步骤101:获取待评测书写字符所对应的待评测矢量字。
在本实施例中,本实施例的执行主体可以是终端设备、或者服务器、或者基于矢量字的评测装置或设备、或者其他可以执行本实施例方法的装置或设备。
在本实施例中,当用户在绘图板、移动端等终端设备上书写字符时,例如用户书写的字符是楷体的“示”,终端设备将以矢量形式存储用户书写的字符“示”。那么以用户所书写的字符“示”作为待评测书写字符时,终端设备以矢量形式存储的用户书写的字符“示”,即为该待评测书写字符所对应的待评测矢量字。
具体的,在获取待评测书写字符所对应的待评测矢量字时,在一个示例中,本实施例的执行主体可为用户书写字符的终端设备(如绘图板、移动端等)或者是集成在该终端设备内的基于矢量字的评测装置,那么当需要对待评测书写字符进行评测时,可从该终端设备的内存等存储有与该待评测书写字符所对应的待评测矢量字的存储区域中获取该待评测矢量字。在另一个示例中,本实施例的执行主体可为不同于用户书写字符的终端设备的其他终端设备、服务器、基于矢量字的评测装置或设备等等,那么当需要对待评测书写字符进行评测时,执行主体可向用户书写字符的终端设备发送指令,以向用户书写字符的终端设备请求与该待评测书写字符所对应的待评测矢量字,或者是,用户书写字符的终端设备向执行主体发送携带有与该待评测书写字符所对应的待评测矢量字的评测请求,以使得执行主体根据该评测请求获取到待评测矢量字,并通过待评测矢量字进行评测。举例来说,图2为本申请实施例提供的一种基于矢量字的评测场景的架构图,如图2所示,包括:终端设备201和服务器202,其中,终端设备201为用户书写字符的终端设备,服务器202为本实施例的执行主体,具体的,终端设备201可将与该待评测书写字符所对应的待评测矢量字发送给服务器202,以使得服务器202基于待评测矢量字进行评测。上述获取待评测矢量字的示例仅是举例说明,并不限制于此。
步骤102:获取与待评测矢量字对应的样本矢量字。
在本实施例中,为实现自动评测,可预先设置有不同待评测矢量字分别对应的样本矢量字,其中,样本矢量字可指的是以矢量形式存储的书写极为标准的文字。例如,可由笔法专家在终端设备上书写字符,终端设备以矢量形式存储笔法专家所书写的字符,本实施例可将以矢量形式存储的笔法专家所书写的字符称为样本矢量字。那么,在获取到待评测书写字符对应的待评测矢量字之后,便可获取与待评测矢量字对应的样本矢量字。
举例来说,预先设置笔法专家所书写的楷体下的“示”所对应的样本矢量字X,那么在待评测书写字符为用户1在终端设备上所书写的楷体下的“示”时,假设终端设备针对用户1所书写的待评测书写字符“示”是以待评测矢量字Y进行存储,那么所获取的与待评测矢量字Y所对应的样本矢量字即为样本矢量字X;那么在待评测书写字符为用户2在终端设备上所书写的楷体下的“示”时,假设终端设备针对用户2所书写的待评测书写字符“示”是以待评测矢量字Z进行存储,那么所获取的与待评测矢量字Z所对应的样本矢量字即为样本矢量字X。
步骤103:确定待评测矢量字与样本矢量字之间的第一距离,其中,第一距离用于指示待评测矢量字与样本矢量字之间的相似度。
在本实施例中,待评测矢量字和样本矢量字均是矢量形式,那么基于待评测矢量字所对应的矢量信息,以及样本矢量字所对应的矢量信息,可确定待评测矢量字与样本矢量字之间的第一距离,通过利用第一距离来表示待评测矢量字与样本矢量字之间的相似程度,从而后续可根据第一距离,对待评测矢量字的评测。
步骤104:根据预设的第一距离与评分值之间的对应关系,确定待评测矢量字与样本矢量字之间的第一距离所对应的评分值;并确定所确定出的评分值,为待评测书写字符的评分值。
在本实施例中,可预先设置有第一距离与评分值之间的对应关系,其中,该对应关系可以是列表关系、函数关系等多种表现形式,对此本案不作限制。那么当确定待评测矢量字与样本矢量字之间的第一距离之后,可根据该对应关系,确定待评测矢量字与样本矢量字之间的第一距离所对应的评分值。举例来说,根据对应关系,确定待评测矢量字与样本矢量字之间的第一距离对应的评分值为“80分”,那么可确定待评测书写字符的评分值为“80分”,也即,为用户所书写的字符自动打分为“80分”,实现了对字符的自动评测。而且,相比较现有技术中采用人工评测的方式,基于待评测矢量字与样本矢量字之间的第一距离,能够得到更为准确的评测结果。
本申请提供一种基于矢量字的评测方法,通过获取待评测矢量字、以及与待评测矢量字对应的样本矢量字,然后根据待评测矢量字和样本矢量字,确定待评测矢量字与样本矢量字之间的第一距离,该第一距离用于指示待评测矢量字与样本矢量字之间的相似度,之后根据预设的第一距离和评分值之间的对应关系,可确定待评测矢量字与样本矢量字之间的第一距离所对应的评分值,并将所确定出的评分值确定为待评测矢量字的评分值。本案通过获取与待评测书写字符所对应的待评测矢量字,以及与待评测矢量字对应的样本矢量字,从而通过确定待评测矢量字与样本矢量字之间的第一距离,并根据第一距离与评分值之间的对应关系,实现了对待评测矢量字的自动评测,无需人工参与,极大减少了人力成本。
图3为本申请实施例提供的另一种基于矢量字的评测方法的流程图,如图3所示,该方法包括:
步骤301:获取待评测书写字符所对应的待评测矢量字,其中,待评测矢量字具有L个笔画,每个笔画对应至少两个原有的第一矢量点,其中,L为大于等于1的正整数。
在本实施例中,本实施例的执行主体可以是终端设备、或者服务器、或者基于矢量字的评测装置或设备、或者其他可以执行本实施例方法的装置或设备。
其中,获取待评测矢量字的方式,可参见图1所示的实施例,不再赘述。
在本实施例中,待评测书写字符具有L个笔画,即待评测矢量字具有L个笔画,其中,L为大于等于1的正整数。举例来说,待评测矢量字为待评测书写字符“一”对应的矢量字,则待评测书写字符具有1个笔画,即L=1,也即待评测矢量字具有1个笔画。再举例来说,待评测矢量字为待评测书写字符“王”对应的矢量字,则该待评测书写字符具有4个笔画,即L=4,也即与该待评测书写字符对应的待评测矢量字具有4个笔画。具体的,待评测矢量字所对应的每个笔画由至少两个原有的第一矢量点构成,也即,待评测矢量字的每个笔画是由原有的第一矢量点来进行表示的。
步骤302:针对待评测矢量字的L个笔画中的每个笔画,采用预设的差值算法,在待评测矢量字的当前笔画所对应的每相邻两个原始的第一矢量点之间,插入新的第一矢量点;确定当前笔画所对应的新的第一矢量点、以及至少两个原有的第一矢量点,构成当前笔画所对应的第一点集。
在本实施例中,在获取到待评测矢量字之后,可采用预设的插值算法,针对待评测矢量字所对应的每个笔画分别进行插值处理,以将每个通过至少两个原有的第一矢量点非均匀表示的笔画,转换为通过原有的第一矢量点和新插入的第一矢量点共同表示的均匀的笔画,即通过对待评测矢量字进行插值处理,将更为准确的还原出用户所书写的字符,从而基于对插值处理后的待评测矢量字进行评测,能够得到更加准确的评测结果。其中,预设的插值算法可为样条曲线插值算法。
以待评测矢量字所对应的L个笔画中的其中一个笔画举例来说,假设该笔画对应四个依次排列的原有的第一矢量点a、b、c、d,那么针对该笔画,可采用插值算法,在相邻的a和b之间插入一定数量的新的第一矢量点,如插入了一个新的第一矢量点e;采用插值算法,在相邻的b和c之间插入一定数量的新的第一矢量点,如插入了一个新的第一矢量点f;采用插值算法,在相邻的c和d之间插入一定数量的新的第一矢量点,如插入了两个新的第一矢量点g、h,那么在针对该笔画进行插值处理之后,可由上述a、e、b、f、c、g、h、d共八个第一矢量点构成该笔画所对应的第一点集。可参考上述过程,对待评测矢量字所对应的其它笔画进行插值处理,此处不再赘述从而得到待评测矢量字的每个笔画分别所对应的第一点集。
步骤303:获取与待评测矢量字对应的样本矢量字,样本矢量字包括L个第二点集,每个第二点集包括多个第二矢量点。
在本实施例中,所获取的与待评测矢量字对应的样本矢量字可以是经过插值处理后得到的。其中,样本矢量字包括L个笔画,样本矢量字的每个笔画分别对应一个第二点集,即样本矢量字包括L个第二点集,每个第二点集中包括多个第二矢量点。具体的,样本矢量字的每个笔画所对应的第二点集,可以是通过对样本矢量字的每个笔画进行插值处理后得到的。而针对样本矢量字的每个笔画进行插值处理,具体可参照上述步骤302中对待评测矢量字的每个笔画进行插值处理的过程,此处不再赘述。
步骤304:针对L个第一点集中的每个第一点集中的每个第一矢量点,确定当前第一点集中的当前第一矢量点,分别与当前第一点集对应的第二点集中的每个第二矢量点之间的欧式距离;确定当前第一矢量点所对应的各欧式距离中最小的欧式距离为第二距离,其中,第二距离表征当前第一矢量点到与当前第一点集对应的第二点集的距离;根据当前第一点集中的各第一矢量点分别所对应的第二距离,确定第三距离,其中,第三距离表征当前第一点集到与当前第一点集对应的第二点集的距离。
在本实施例中,为确定待评测矢量字与样本矢量字之间的第一距离,首先针对待评测矢量字所对应的每个第一点集,可先确定每个第一点集中的每个第一矢量点,到所对应的第二点集的第二距离,从而可根据每个第一点集中的每个第一矢量点,到所对应的第二点集的第二距,确定每个第一点集到分别所对应的第二点集的第三距离。其中,可通过公式(1),确定每个第一点集中的每个第一矢量点,到所对应的第二点集的第二距离;可通过公式(2),确定每个第一点集,到分别所对应的第二点集的第三距离。其中,公式(1)如下:
其中,表示笔画标记为k的第一点集Sk中的第i个第一矢量点,表示笔画标记为k的第二点集Tk中的第j个第二矢量点,n为第二点集Tk中的第二矢量点的个数,EuclidDist表示第一点集Sk中的第i个第一矢量点与第二点集Tk中的第j个第二矢量点之间的欧式距离,min()表示取最小值,表示第一点集Sk中的第i个第一矢量点,到第二点集Tk的第二距离。
其中,公式(2)如下:
其中,为笔画标记为k的第一点集Sk,到笔画标记为k的第二点集Tk的第三距离,表示第一点集Sk中的第i个第一矢量点,到第二点集Tk的第二距离,m为第一点集Sk中的第一矢量点的个数。
举例来说,以L个第一点集中的笔画标记k为2的第一点集为例,假设该第一点集S2与样本矢量字的第二点集T2对应,其中,第一点集S2中共包括l、u、v三个第一矢量点,第二点集T2中共包括o、p、q、r、s五个第二矢量点,那么针对第一点集S2,需确定第一矢量点l、u、v分别与第二点集T2中的每个第二矢量点的欧式距离,并针对每一第一矢量点,取所确定出的5个欧式距离中最小的欧式距离,为该第一矢量点,到第二点集T2的第二距离。具体的,可根据公式(1)确定第1个第一矢量点l到第二点集T2的第二距离 其中,Euclid Dist为第一点集S2中的第1个第一矢量点l,与第二点集T2中的第1个第二矢量点o之间的欧式距离,Euclid Dist为第一点集S2中的第1个第一矢量点l,与第二点集T2中的第2个第二矢量点p之间的欧式距离…Euclid Dist)为第一点集S2中的第1个第一矢量点l,与第二点集T2中的第5个第二矢量点s之间的欧式距离,假设Euclid Dist最小,则同理,可得到第2个第一矢量点u到第二点集T2的第二距离得到第3个第一矢量点v到第二点集T2的第二距离那么,第一点集S2到第二点集T2的第三距离为
其中,第一矢量点与第二矢量点之间的欧式距离,可通过现有欧式距离的计算公式得到。
步骤305:根据L个第一点集分别所对应的第三距离,确定第四距离,其中,第四距离表征待评测矢量字到样本矢量字的距离。
在本实施例中,在确定L个第一点集分别对应的第三距离之后,在一个示例中,可根据如下公式(3),确定待评测矢量字到样本矢量字的第四距离,其中,公式(3)如下;
其中,DistST为待评测矢量字到样本矢量字的第四距离,为笔画标记为k的第一点集Sk,到笔画标记为k的第二点集Tk的第三距离,L为笔画的个数。
举例来说,L=4,则待评测矢量字S到样本矢量字T的第四距离
在本实施例中,在确定第四距离之后,在一个示例中,可直接将第四距离确定为待评测矢量字与样本矢量字之间的第一距离,然后直接执行步骤309。在另一个示例中,则是执行步骤306,以在确定从样本矢量字到待评测矢量字这一映射方向的距离。
步骤306:针对L个第二点集中的每个第二点集中的每个第二矢量点,确定当前第二点集中的当前第二矢量点,分别与当前第二点集对应的第一点集中的每个第一矢量点之间的欧式距离;确定当前第二矢量点所对应的各欧式距离中最小的欧式距离,为第五距离,其中,第五距离表征当前第二矢量点到与当前第二点集对应的第一点集的距离;根据当前第二点集中的各第二矢量点分别所对应的第五距离,确定第六距离,其中,第六距离表征当前第二点集到与所述当前第二点集对应的第一点集的距离。
在本实施例中,为更为准确的确定待评测矢量字与样本矢量字之间的第一距离,还可针对样本矢量字所对应的每个第二点集,确定每个第二点集中的每个第二矢量点,到所对应的第一点集的第五距离,从而可根据每个第二点集中的每个第二矢量点,到所对应的第一点集的第五距离,确定每个第二点集到分别所对应的第一点集的第六距离。其中,可通过公式(4),确定每个第二点集中的每个第二矢量点,到所对应的第一点集的第五距离;可通过公式(5),确定每个第二点集,到分别所对应的第一点集的第六距离。其中,公式(4)如下:
其中,表示笔画标记为k的第一点集Sk中的第i个第一矢量点,表示笔画标记为k的第二点集Tk中的第j个第二矢量点,m为第一点集Sk中的第一矢量点的个数,EuclidDist表示第二点集Tk中的第j个第二矢量点,与第一点集Sk中的第i个第一矢量点之间的欧式距离,min()表示取最小值,表示第二点集Tk中的第j个第二矢量点,到第一点集Sk的第五距离。
其中,公式(5)如下:
其中,为笔画标记为k的第二点集Tk,到笔画标记为k的第一点集Sk的第六距离,为第二点集Tk中的第j个第二矢量点,到第一点集Sk的第五距离,n为第二点集Tk中的第二矢量点的个数。
举例来说,以L个第二点集中的笔画标记k为2的第二点集为例,假设该第二点集T2与待评测矢量字的第一点集S2对应,其中,第二点集T2中共包括o、p、q、r、s五个第二矢量点,第一点集S2中共包括l、u、v三个第一矢量点,那么针对第二点集T2,需确定第二矢量点o、p、q、r、s分别与第一点集S2中的每个第一矢量点的欧式距离,并针对每一第二矢量点,取所确定出的3个欧式距离中最小的欧式距离,为该第二矢量点,到第一点集S2的第五距离。具体的,可根据公式(4)确定第1个第二矢量点o到第一点集S2的第五距离 其中,Euclid Dist为第二点集T2中的第1个第二矢量点o,与第一点集中S2中的第1个第一矢量点l之间的欧式距离,Euclid Dist为第二点集T2中的第1个第二矢量点o,与第一点集中S2中的第2个第一矢量点u之间的欧式距离,Euclid Dist为第二点集T2中的第1个第二矢量点o,与第一点集中S2中的第3个第一矢量点v之间的欧式距离,然后从3个欧式距离中取最小的欧式距离作为,第二矢量点o到第一点集S2的第五距离。同理,可得到其它4个第二矢量点p、q、r、s分别到第一点集S2的第五距离,第五距离分别为 则第二点集T2到第一点集S2的第六距离
步骤307:根据L个第二点集分别所对应的第六距离,确定第七距离,其中,第七距离表征样本矢量字到待评测矢量字的距离。
在本实施例中,在确定L个第二点集分别对应的第六距离之后,在一个示例中,可根据如下公式(6),确定样本矢量字到待评测矢量字的第七距离,其中,公式(6)如下;
其中,DistTS为样本矢量字到待评测矢量字的第七距离,为笔画标记为k的第二点集Tk,到笔画标记为k的第一点集Sk的第六距离,L为笔画的个数。
举例来说,L=4,则样本矢量字T到待评测矢量字S的第七距离
步骤308:根据第四距离和第七距离,确定待评测矢量字与样本矢量字之间的第一距离。
在本实施例中,在一个实现方式中,待评测矢量字与样本矢量字之间的第一距离DistS-T=α*DistST+β*DistTS,其中,DistST为待评测矢量字S到样本矢量字T的第四距离;DistTS为样本矢量字T到待评测矢量字S的第七距离;α为预设第一参数值,β为预设第二参数值。其中,α+β=1,α、β为非负数。具体的,α和β可根据实际需求进行设置。举例来说,α=0.4,β=0.6。
步骤309:根据预设的第一距离与评分值之间的对应关系,确定待评测矢量字与样本矢量字之间的第一距离所对应的评分值,并确定所确定出的评分值,为待评测书写字符的评分值。
在本实施例中,还可包括如下步骤:
第一步骤、获取多个参考矢量字,并获取每个参考矢量字对应的评分值,以及获取与多个参考矢量字对应的标准矢量字;
第二步骤、确定每个参考矢量字与标准矢量字之间的第一距离;
第三步骤、根据每个参考矢量字与标准矢量字之间的第一距离、以及每个参考矢量字对应的评分值,确定对应关系。
举例来说,可由一定数量的不同用户书写同一个字符,然后获取终端设备以矢量形式存储的各用户所书写的该字符,即不同用户所书写的该字符所对应的矢量字,将这些矢量字称为参考矢量字,然后获取专业的笔法专家为每个参考矢量字所标注的评分值,以及获取相应的标准矢量字,其中,标准矢量字可以指的是以矢量形式存储的笔法专家所书写的字符。也即,本案基于多个参考矢量字来确定第一距离与评分值之间的对应关系,以便后续针对待评测书写字符,可基于该对应关系,自动完成评测。
在本实施例中,在确定所确定出的评分值,为待评测书写字符的评分值之后,还包括:
显示待评测书写字符的评分值
和/或,将待评测书写字符的评分值发送给终端设备进行显示。
本实施例通过确定待评测矢量字到样本矢量字这一方向所对应的第四距离,并确定样本矢量字到待评测矢量字这一方向所对应的第七距离,从而根据第四距离和第七距离,即通过双向的映射,准确确定待评测矢量字与样本矢量字之间的第一距离,避免由于待评测矢量字与样本矢量字双向距离的计算的不对称性,从而根据准确的第一距离,确定该待评测矢量字的评分。本案基于矢量字的评测方式,显著减少人工评测工作量,使得评价更为客观,评价分数基本呈分段线性,而且计算量也大大减小。
图4为本申请实施例提供的一种基于矢量字的评测装置的结构示意图,如图4所示,该装置包括:
第一获取单元401,用于获取待评测书写字符所对应的待评测矢量字;
第二获取单元402,用于获取与待评测矢量字对应的样本矢量字;
第一确定单元403,用于确定待评测矢量字与样本矢量字之间的第一距离,其中,第一距离用于指示待评测矢量字与样本矢量字之间的相似度;
第二确定单元404,用于根据预设的第一距离与评分值之间的对应关系,确定待评测矢量字与样本矢量字之间的第一距离所对应的评分值,并确定所确定出的评分值,为待评测书写字符的评分值。
本实施例提供的基于矢量字的评测装置,同于实现前述任一实施例提供的基于矢量字的评测方法中的技术方案,其实现原理和技术效果类似,不再赘述。
图5为本申请实施例提供的另一种基于矢量字的评测装置的结构示意图,在图4的基础上,如图5所示,
进一步地,待评测矢量字包括L个第一点集,每个第一点集包括多个第一矢量点;样本矢量字包括L个第二点集,每个第二点集包括多个第二矢量点;第一点集与第二点集一一对应;L为大于等于1的正整数;
第一确定单元403,包括:
第一确定模块4031,用于针对L个第一点集中的每个第一点集中的每个第一矢量点,确定当前第一点集中的当前第一矢量点,分别与当前第一点集对应的第二点集中的每个第二矢量点之间的欧式距离;确定当前第一矢量点所对应的各欧式距离中最小的欧式距离为第二距离,其中,第二距离表征当前第一矢量点到与当前第一点集对应的第二点集的距离;根据当前第一点集中的各第一矢量点分别所对应的第二距离,确定第三距离,其中,第三距离表征当前第一点集到与当前第一点集对应的第二点集的距离;
第二确定模块4032,用于根据L个第一点集分别所对应的第三距离,确定第四距离,其中,第四距离表征待评测矢量字到样本矢量字的距离;
第三确定模块4033,用于根据第四距离,确定待评测矢量字与样本矢量字之间的第一距离。
进一步地,第一确定单元503,还包括:
第四确定模块4034,用于在第三确定模块根据第四距离,确定待评测矢量字与样本矢量字之间的第一距离之前,针对L个第二点集中的每个第二点集中的每个第二矢量点,确定当前第二点集中的当前第二矢量点,分别与当前第二点集对应的第一点集中的每个第一矢量点之间的欧式距离;确定当前第二矢量点所对应的各欧式距离中最小的欧式距离,为第五距离,其中,第五距离表征当前第二矢量点到与当前第二点集对应的第一点集的距离;根据当前第二点集中的各第二矢量点分别所对应的第五距离,确定第六距离,其中,第六距离表征当前第二点集到与当前第二点集对应的第一点集的距离;
第五确定模块4035,用于根据L个第二点集分别所对应的第六距离,确定第七距离,其中,第七距离表征样本矢量字到待评测矢量字的距离;
第三确定模块4033,具体用于根据第四距离和第七距离,确定待评测矢量字与样本矢量字之间的第一距离。
进一步地,待评测矢量字与样本矢量字之间的第一距离DistS-T=α*DistsT+β*DistTS,其中,DistST为待评测矢量字S到样本矢量字T的第四距离;DistTS为样本矢量字T到待评测矢量字S的第七距离;α为预设第一参数值,β为预设第二参数值。
进一步地,待评测矢量字具有L个笔画,每个笔画对应至少两个原有的第一矢量点;装置还包括:
插值处理单元501,用于在第一获取单元401获取待评测矢量字之后,且在第一确定单元403确定待评测矢量字与样本矢量字之间的第一距离之前,针对待评测矢量字的L个笔画中的每个笔画,采用预设的差值算法,在待评测矢量字的当前笔画所对应的每相邻两个原始的第一矢量点之间,插入新的第一矢量点;确定当前笔画所对应的新的第一矢量点、以及至少两个原有的第一矢量点,构成当前笔画所对应的第一点集。
进一步地,装置还包括:
第三获取单元502,用于获取多个参考矢量字,并获取每个参考矢量字对应的评分值;
第四获取单元503,用于获取与多个参考矢量字对应的标准矢量字;
第三确定单元504,用于确定每个参考矢量字与标准矢量字之间的第一距离;
第四确定单元505,用于根据每个参考矢量字与标准矢量字之间的第一距离、以及每个参考矢量字对应的评分值,确定对应关系。
进一步地,装置还包括:
显示单元506,用于在第二确定单元确定所确定出的评分值,为待评测矢量字的评分值之后,显示待评测书写字符的评分值;
进一步地,装置还包括:
发送单元507,用于在第二确定单元确定所确定出的评分值,为待评测书写字符的评分值之后,将待评测书写字符的评分值发送给终端设备进行显示。
本实施例提供的基于矢量字的评测装置,同于实现前述任一实施例提供的基于矢量字的评测方法中的技术方案,其实现原理和技术效果类似,不再赘述。
图6为本申请实施例提供的一种基于矢量字的评测设备,包括:存储器601和处理器602;
存储器601,用于存储计算机程序;
其中,处理器602执行存储器601中的计算机程序,以实现上述任一实施例中的方法。
本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现上述任一实施例中的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求书指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求书来限制。