CN116993873A - 一种数字人动作编排方法及装置 - Google Patents
一种数字人动作编排方法及装置 Download PDFInfo
- Publication number
- CN116993873A CN116993873A CN202310957070.5A CN202310957070A CN116993873A CN 116993873 A CN116993873 A CN 116993873A CN 202310957070 A CN202310957070 A CN 202310957070A CN 116993873 A CN116993873 A CN 116993873A
- Authority
- CN
- China
- Prior art keywords
- action
- word
- sequence
- actions
- sequences
- 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.)
- Granted
Links
- 230000009471 action Effects 0.000 title claims abstract description 554
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000000875 corresponding effect Effects 0.000 claims abstract description 85
- 238000012549 training Methods 0.000 claims description 18
- 238000012512 characterization method Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 9
- 230000033001 locomotion Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 3
- 230000008707 rearrangement Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Machine Translation (AREA)
Abstract
本说明书实施例涉及一种数字人动作编排方法及装置,所述方法的输入包括目标文本对应的第一词语序列和第一动作集合,第一动作集合中包含若干动作,任一动作具有预设的触发词以及对应的动作持续时长;然后,根据动作对应的触发词,将所述第一词语序列中的各个词语与所述第一动作集合的动作进行匹配,得到第一匹配结果,第一匹配结果中包含各个词语对应的备选动作集合;然后,根据各个词语在所述目标文本中的位置,以及动作的动作持续时长,从所述第一匹配结果中确定一组在时间维度上没有重叠的动作序列,得到第一动作序列,所述第一动作序列用于指示所述数字人在播报所述目标文本时做出相应的动作。
Description
技术领域
本说明书一个或多个实施例涉及虚拟数字人领域,尤其涉及一种数字人动作编排方法及装置。
背景技术
现实世界中,人在说话的过程中通常会伴随着一些肢体动作,而人的很多下意识动作通常和语义以及环境存在很大的关联。肢体语言作为日常沟通交流中的一种非语言信号(nonverbal signals),是人与人交流的重要组成部分,当演讲者配合了适当的手势时,可以提高听众理解的准确度。
在实际业务中,数字人在进行播报、讲解、直播、交互的时候,都需要通过肢体动作来辅助语言完成信息的传达。与此同时,在目前常见的数字人应用场景中,肢体动作通常都是和语音/文本同时发生的,因此,如何在数字人播报的同时呈现符合语义的动作,对于自然的数字人交互以及良好的用户体验至关重要。
发明内容
本说明书一个或多个实施例描述了一种数字人动作编排方法及装置,旨在给数字人播报的文本匹配合适的动作。
第一方面,提供了一种数字人动作编排方法,包括:
获取目标文本对应的第一词语序列,以及获取第一动作集合,所述第一动作集合中包含若干动作,任一动作具有预设的触发词以及对应的动作持续时长;
至少根据所述触发词,将所述第一词语序列中的各个词语与所述第一动作集合进行匹配,得到第一匹配结果,其中包含各个词语对应的备选动作集合;
根据各个词语在所述目标文本中的位置,以及所述动作持续时长,从所述第一匹配结果中确定一组在时间维度上没有重叠的动作序列,得到第一动作序列,所述第一动作序列用于指示所述数字人在播报所述目标文本时做出相应的动作。
在一种可能的实施方式中,将所述第一词语序列中的各个词语与所述第一动作集合进行匹配,得到第一匹配结果,包括:
针对任意目标词语,将该目标词语与所述触发词进行匹配,得到第一候选动作集合;
根据该目标词语的语义表征与所述第一动作集合中动作的动作表征的相似度,得到第二候选动作集合;
根据所述第一候选动作集合与所述第二候选动作集合,确定目标词语对应的备选动作集合。
在一种可能的实施方式中,根据该目标词语的语义表征与所述第一动作集合中动作的动作表征的相似度,得到第二候选动作集合,包括:
使用第一文本编码器对所述目标词语进行编码,得到目标语义表征;
获取使用动作编码器对所述第一动作集合中的任一动作进行编码得到的动作表征;
将动作表征与所述目标语义表征的相似度大于第一阈值的动作,归入第二候选动作集合。
在一种可能的实施方式中,所述第一文本编码器用于对第一语言的文本进行编码;所述动作编码器预先与适用于第二语言的第二文本编码器联合训练;所述第一文本编码器通过以下方式训练得到:
使用所述第一文本编码器对第一语言的第一训练语料进行编码,得到第一语义表征;
使用所述第二文本编码器对第二语言的第二训练语料进行编码,得到第二语义表征,所述第二训练语料与所述第一训练语料具有相同的语义;
通过最大化所述第一语义表征和第二语义表征之间的相似度,调整所述第一文本编码器中的参数的值。
在一种可能的实施方式中,根据所述第一候选动作集合与所述第二候选动作集合,确定目标词语对应的备选动作集合,包括:
根据所述第一候选动作集合与第二候选动作集合的并集,确定备选动作集合;或
根据所述第一候选动作集合与第二候选动作集合的交集,确定备选动作集合。
在一种可能的实施方式中,所述第一词语序列中包括第一词语和第二词语;从所述第一匹配结果中确定一组在时间维度上没有重叠的动作序列,得到第一动作序列,包括:
分别从所述第一词语和第二词语对应的备选动作集合中确定第一动作和第二动作;
根据时间戳预测模型确定所述第一词语和第二词语在时间轴上的开始位置;
根据所述开始位置和动作持续时长,判断所述第一动作和第二动作在时间轴上是否有重叠;若有,则将第一动作和第二动作之一从所述第一动作序列中排除。
在一种可能的实施方式中,将第一动作和第二动作之一从所述第一动作序列中排除,包括:
将开始位置在后的词语所对应的动作,从所述所述第一动作序列中排除。
在一种可能的实施方式中,所述第一动作和第二动作还具有对应的优先级;将第一动作和第二动作之一从所述第一动作序列中排除,包括:
将优先级较低的动作从所述所述第一动作序列中排除。
在一种可能的实施方式中,还包括:
获取第二动作集合,所述第二动作集合中包含若干通用动作,任一通用动作具有对应的动作持续时长;
提取所述目标文本中词性为目标词性的词语,得到第二词语序列;
对所述第二词语序列中的任一词语,从所述第二动作集合中随机选择对应的通用动作,得到第二匹配结果;
根据第二词语序列中各个词语在所述目标文本中的位置,以及各个词语对应的通用动作的动作持续时长,从所述第二匹配结果中确定一组动作序列并插入到所述第一动作序列中,得到第二动作序列,使得所述第二动作序列中的各个动作在时间维度上没有重叠。
在一种可能的实施方式中,所述目标词性包括以下中的一种或多种:数量词、名动词、动副词、普通动词、时间、方位词。
在一种可能的实施方式中,对所述第二词语序列中的任一词语,从所述第二动作集合中随机选择对应的通用动作,得到第二匹配结果,包括:
从所述第二动作集合中随机选择通用动作,使得所述第二词语序列中相邻的词语之间对应不同的通用动作,得到第二匹配结果。
在一种可能的实施方式中,所述第二词语序列中包括第三词语;从所述第二匹配结果中确定一组动作序列并插入到所述第一动作序列中,得到第二动作序列,包括:
根据时间戳预测模型确定所述第三词语在时间轴上的开始位置;
根据所述第二匹配结果确定所述第三词语对应的第三动作;
根据所述开始位置和第三动作的动作持续时长,判断所述第三动作和所述第一动作序列中的任一动作在时间轴上是否有重叠,若没有,则将第三动作添加到所述第一动作序列中。
第二方面,提供了一种数字人动作编排装置,包括:
第一获取单元,配置为,获取目标文本对应的第一词语序列,以及获取第一动作集合,所述第一动作集合中包含若干动作,任一动作具有预设的触发词以及对应的动作持续时长;
第一匹配单元,配置为,至少根据所述触发词,将所述第一词语序列中的各个词语与所述第一动作集合进行匹配,得到第一匹配结果,其中包含各个词语对应的备选动作集合;
第一确定单元,配置为,根据各个词语在所述目标文本中的位置,以及所述动作持续时长,从所述第一匹配结果中确定一组在时间维度上没有重叠的动作序列,得到第一动作序列,所述第一动作序列用于指示所述数字人在播报所述目标文本时做出相应的动作。
在一种可能的实施方式中,还包括:
第二获取单元,配置为,获取第二动作集合,所述第二动作集合中包含若干通用动作,任一通用动作具有对应的动作持续时长;
词语提取单元,配置为,提取所述目标文本中词性为目标词性的词语,得到第二词语序列;
第二匹配单元,配置为,对所述第二词语序列中的任一词语,从所述第二动作集合中随机选择对应的通用动作,得到第二匹配结果;
第二确定单元,配置为,根据第二词语序列中各个词语在所述目标文本中的位置,以及各个词语对应的通用动作的动作持续时长,从所述第二匹配结果中确定一组动作序列并插入到所述第一动作序列中,得到第二动作序列,使得所述第二动作序列中的各个动作在时间维度上没有重叠。
第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。
第四方面,提供了一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。
本说明书实施例提出的一种数字人动作编排方法及装置,基于文本与动作预设的触发词的匹配,以及文本语义编码与动作编码的匹配,为文本匹配合适的动作。同时,为了保证不同动作之间的连贯性,避免数字人长时间静默,本说明书实施例还在相邻动作之间插入合适的通用动作,保证动作序列的多样性和连贯性。
附图说明
为了更清楚地说明本说明书披露的多个实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书披露的多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1示出根据一个实施例的数字人动作编排方法的实施场景示意图;
图2示出根据一个实施例的数字人动作编排方法的流程图;
图3示出根据一个实施例的文本与动作匹配方法的流程图;
图4示出根据一个实施例的数字人动作粗排阶段的示意图;
图5示出根据一个实施例的精排阶段的时间轴示意图;
图6示出根据一个实施例的数字人动作编排装置的示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
数字人又称虚拟形象,是运用数字技术创造出来的,与人类形象接近的数字化人物形象。在实际业务中,数字人在进行播报、讲解、直播、交互的时候,都需要通过肢体动作来辅助语言完成信息的传达。在目前常见的数字人应用场景中,肢体动作通常都是和语音/文本同时发生的,因此,基于数字人说话时语义与动作一致性的需求,需要一种动作编排方案,使得数字人在播报的同时呈现符合语义的动作。
图1示出根据一个实施例的数字人动作编排方法的实施场景示意图。在图1的示例中,输入数据包括数字人要播报的文本数据,以及给数字人编排动作所使用的候选动作集。方案整体分为粗排、精排、重排三个阶段。
在粗排阶段,通过计算基于规则匹配的动作集合以及基于语义相似度匹配的动作集合的交集/并集,得到备选动作集合。其中,基于规则的匹配主要考虑输入文本分词之后的短语是否与候选动作集中动作配置的触发词一致,将匹配的动作添加到基于规则匹配的动作集合中,同时在用户指定的文本位置插入特定的动作;基于语义相似度的匹配则考虑文本分词之后的文本语义表征与候选动作集中动作表征的相似度,将相似度大于指定阈值的动作添加到基于语义相似度匹配的动作集合中。
在粗排阶段只考虑了文本与动作的匹配度,但是由于候选动作集中的动作都是有一定持续时长的,而输入文本每个字在数字人播报的输出音频中也有起始和结束时间。因此在精排阶段,为了避免不同动作出现在时间轴相同的位置(即产生动作重叠),会对动作和文本进行时间轴对齐,即先按照动作起始的位置以及配置的优先级对备选动作集合中的动作进行排序,然后保留优先级高且互相不重叠的动作,删除其他冲突动作。
为了保证不同动作之间的连贯性,避免数字人长时间静默,在重排阶段,对输入文本进行句法结构解析,获取指定语法结构的短语,从输入的通用动作集合中选择合适的通用动作插入到指定短语的位置,并基于动作配置的优先级进行排序,保证动作序列的多样性和连贯性。
以下结合具体的实施例,描述上述数字人动作编排方法的具体实施步骤。图2示出根据一个实施例的数字人动作编排方法的流程图,所述方法的执行主体可以为任何具有计算、处理能力的平台或服务器或设备集群等。
在步骤202,获取目标文本对应的第一词语序列,以及获取第一动作集合,所述第一动作集合中包含若干动作,任一动作具有预设的触发词以及对应的动作持续时长。
第一词语序列可以通过目标文本进行分词得到,序列中的词语根据实际需求可以是单字、单词、短语或它们的组合。第一词语序列中的各个词语还包含一个自身在目标文本中的位置信息,例如索引信息。第一动作集合中包含若干与文本和环境存在关联的动作。动作的触发词用于指示数字人在播报相应的词语时做出相应的动作。
在一个实施例中,为了降低整体的计算开销,考虑到人在说话时通常会在特定词性的词语做动作的习惯,根据词性将第一词语序列中的低频动作词性的词语移除,只保留词性为普通名词、形容词、普通动词、副形词、动副词、名形词、名动词、副词中的一种或多种的词语。
在步骤204,至少根据所述触发词,将所述第一词语序列中的各个词语与所述第一动作集合进行匹配,得到第一匹配结果,其中包含各个词语对应的备选动作集合。
在一个实施例中,实现步骤204的流程如图3所示,图3示出根据一个实施例的文本与动作匹配方法的流程图。
在步骤302,针对任意目标词语,将该目标词语与所述第一动作集合中动作对应的触发词进行匹配,得到第一候选动作集合。
在一个实施例中,还会获取用户在指定的文本位置插入特定的动作的用户自定义动作集合,并将用户自定义动作集合添加到第一候选动作集合中。
在步骤304,根据该目标词语的语义表征与所述第一动作集合中动作的动作表征的相似度,得到第二候选动作集合。
在一个实施例中,使用第一文本编码器对目标词语进行编码,得到目标语义表征;获取使用动作编码器对第一动作集合中的任一动作进行编码得到的动作表征;将动作表征与目标语义表征的相似度大于第一阈值的动作,归入第二候选动作集合。
通过对第一文本编码器进行训练,使得第一文本编码器生成的语义表征和动作编码器生成的动作表征位于同一个表征空间中,进而可以计算两个编码器生成的表征之间的相似度。
在一个实施例中,会存在已经预先经过联合训练的第二文本编码器和动作编码器,使得二者生成的表征位于同一个表征空间中。第二文本编码器与第一文本编码器所编码的语言种类不同,例如第一文本编码器用于对第一语言的文本进行编码,第二文本编码器用于对第二语言的文本进行编码。此时,通过获取第一语言与第二语言的平行训练语料,即具有相同语义的两种语言的训练语料,使用第一文本编码器对第一语言的第一训练语料进行编码,得到第一语义表征,使用第二文本编码器对第二语言的第二训练语料进行编码,得到第二语义表征,第一训练语料与第二训练语料具有相同的语义,然后通过最大化第一语义表征和第二语义表征之间的相似度,调整第一文本编码器中的参数的值,使得第一文本编码器生成的语义表征和动作编码器生成的动作表征也位于同一个表征空间中。
在一个更加具体的实施例中,使用的第一语言为中文,第二语言为英文,第一文本编码器为中文的BERT(Bidirectional Encoder Representation from Transformers)编码器,第二文本编码器和动作编码器分别为motionCLIP的文本编码器和动作编码器。motionCLIP在CLIP(Contrastive Language-Image Pre-training,对比文本-图像预训练模型)的文本编码器和图像编码器的基础上训练了动作编码器,使得动作编码器可以与CLIP的文本编码器的表征空间对齐。由于motionCLIP的文本编码器只支持对英文进行编码,当数字人播报的文本为中文时,则需要再训练一个支持中文的编码器,使其与motionCLIP的动作编码器的表征空间进行对齐。通过使用中英文平行训练语料,最大化英文motionCLIP文本编码器得到的英文表征与中文BERT编码器得到的中文表征之间的余弦相似度,对中文BERT编码器进行微调(fine-tuning),使得中文BERT编码器的表征空间与motionCLIP的动作编码器的表征空间对齐。在其他实施例中,还可以使用其它相似度计算方法计算英文motionCLIP文本编码器得到的英文表征与中文BERT编码器得到的中文表征之间的相似度,这里不做限定。
在步骤306,根据所述第一候选动作集合与所述第二候选动作集合,确定目标词语对应的备选动作集合。
通过对第一候选动作集合与第二候选动作集合求交集或者并集,确定备选动作集合。也可以根据实际需要,对上述两个集合进行其他集合运算,或者从任一集合中选取一部分动作组成备选动作集合,这里不做限定。
应当说明的是,在一些实施例中,由于第一动作集合中的动作种类可能较少,所以无法做到对第一词语序列中任意一个词语都匹配到对应的动作的情况,此时,存在一些词语,它们对应的备选动作集合为空集。
在其他实施例中,还可以使用其它匹配方法将第一词语序列中的各个词语与第一动作集合进行匹配,例如,可以基于统计学统计人在说某些特定词语时最常出现的动作,根据统计频率对词语和动作进行匹配,这里不做限定。
步骤202和步骤204可以对应图1中的粗排阶段,粗排阶段的示意图可以如图4所示。
然后,回到图2,在步骤206,根据各个词语在所述目标文本中的位置,以及所述动作持续时长,从所述第一匹配结果中确定一组在时间维度上没有重叠的动作序列,得到第一动作序列,所述第一动作序列用于指示所述数字人在播报所述目标文本时做出相应的动作。
可以使用多种方式确定一组在时间维度上没有重叠的动作序列。在一个实施例中,针对各个词语,从其对应的备选动作集合选择一个动作作为该词语的对应动作。第一词语序列中各个词语的对应动作可以依次排列成初始动作序列。然后,根据各个动作在时间轴上的重叠情况,从初始动作序列中剔除一些动作,将其排除在第一动作序列之外,最后形成没有重叠的第一动作序列。
下面以两个词语为例进行举例说明。具体的,所述第一词语序列中包括第一词语和第二词语,分别从第一词语和第二词语对应的备选动作集合中确定第一动作和第二动作,然后根据时间戳预测模型确定第一词语和第二词语在时间轴上的开始位置。时间戳预测模型可以是文本转语音模型TTS(Text To Speech)中的一个子模块,也可以是独立的模型,这里不做限定。在得到两个词语的开始位置后,分别将两个动作的开始位置设置为对应词语的开始位置,根据开始位置和动作持续时长,判断第一动作和第二动作在时间轴上是否有重叠,若有重叠,则将第一动作和第二动作之一从初始动作序列中剔除,即从第一动作序列排除。例如,可以保留开始位置在前的词语所对应的动作,排除开始位置在后的动作;又或者,当第一动作和第二动作还具有对应的优先级时,则保留优先级较高的动作,将优先级较低的动作从第一动作序列排除。使用本实施例中的方法可以处理任意两个在时间轴上有重叠的词语。
在另一个实施例中,首先如前所述将各个词语对应的动作按照时间开始顺序进行排序,得到动作序列M。当动作具有预设的优先级时,则同时按照时间开始顺序和优先级进行排序,得到动作序列M。然后对第一动作序列进行多轮迭代更新,每轮从动作序列M中选择一个动作添加到第一动作序列中,然后从动作序列M中移除多个动作,重复多轮迭代,直到动作序列M为空,其中,任一轮迭代包括:
选择动作序列M中排在最前面的动作,将其添加到第一动作序列中;
根据该动作的开始位置,将其放置在时间轴上;
根据该动作的开始位置和动作持续时长,选择动作序列M中所有与该动作在时间轴上有重叠的动作,并将它们移除出动作序列M,然后执行下一轮迭代。
通过本实施例中的方法可以确定一组在时间维度上没有重叠的动作序列。
在一个具体的例子中,如图5所示的精排阶段的时间轴示意图,包括文本序列和动作序列,词语和动作的持续时长由对应矩形的长度表示。输入的文本为:“你好,我是一个数字人。”,对其进行分词后,得到词语序列“你好”、“,”、“我”、“是”、“一个”、“数字人”、“。”,使用如前所述的方法为词语序列中的词语匹配相应的动作,并确定动作对应的开始位置,组成动作序列M。
然后,首先,从动作序列M中选择最前面的动作:动作1,将动作1添加到第一动作序列中,并放置在时间轴上,可以看到,动作1的持续时长覆盖了词语“你好”、“,”和“我”,这些词语对应的动作会与动作1重叠,于是把它们对应的动作从动作序列M中移除。接下来,从动作序列M中剩余的动作中选择最前面的动作:动作2,将动作2添加到第一动作序列中,并放置在时间轴上,动作2的持续时长覆盖了词语“是”和“一个”,于是把它们对应的动作从动作序列M中移除。然后从动作序列M中剩余的动作中选择最前面的动作:动作3,将动作3添加到第一动作序列中,并放置在时间轴上,并将词语“数字人”、“。”对应的动作从动作序列M中移除。此时动作序列M为空,结束动作编排迭代,得到第一动作序列:动作1、动作2、动作3。
在其他实施例中,还可以使用其它方法从所述第一匹配结果中确定一组在时间维度上没有重叠的动作序列,只要没有重叠即可。例如,将动作持续时长的中点放置于对应词语的开始位置,也就是说,当数字人还没有播报该词语时,便已经开始做出该词语对应的动作。然后依照这种放置方式确定一组在时间维度上没有重叠的动作序列。
步骤206可以对应图1中的精排阶段。通过图2示出的数字人动作编排方法,已经可以得到一组在时间上没有冲突的数字人动作序列,满足动作编排的需求。但是,在一些实施例中,并不是文本中的所有的词语都能够在第一动作集合中找到匹配的动作,这就可能导致在粗排和精排产生的第一动作序列中,相邻动作之间存在长时间空白(即静默动作)的情况,导致在文本播报过程中数字人动作不够丰富、用户体验较差的问题。
为了提升动作序列的丰富度,在一些可能的实施方式中,还包括:
在步骤208,获取第二动作集合,所述第二动作集合中包含若干通用动作,任一通用动作具有对应的动作持续时长。
通用动作是指没有配置触发词的弱语义动作,这些动作配合任何播报文案都不会显得突兀,因此适合作为第一动作集合中强语义动作之间的承接动作,从而提升整个动作编排序列中动作的丰富程度。
在步骤210,提取所述目标文本中词性为目标词性的词语,得到第二词语序列。
在一个实施例中,对目标文本进行句法解析,提取所述目标文本中词性为目标词性的词语,目标词性包括以下中的一种或多种:数量词、名动词、动副词、普通动词、时间、方位词。
在步骤212,对所述第二词语序列中的任一词语,从所述第二动作集合中随机选择对应的通用动作,得到第二匹配结果。
在一个实施例中,为了使数字人不连续做出相同的通用动作,从所述第二动作集合中随机选择通用动作,使得所述第二词语序列中相邻的词语之间对应不同的通用动作,得到第二匹配结果。
在步骤214,根据第二词语序列中各个词语在所述目标文本中的位置,以及各个词语对应的通用动作的动作持续时长,从所述第二匹配结果中确定一组动作序列并插入到所述第一动作序列中,得到第二动作序列,使得所述第二动作序列中的各个动作在时间维度上没有重叠。
在一个实施例中,第二词语序列中包括第三词语。首先根据时间戳预测模型确定所述第三词语在时间轴上的开始位置,根据第二匹配结果确定第三词语对应的第三动作,然后根据所述开始位置和第三动作的动作持续时长,判断所述第三动作和所述第一动作序列中的任一动作在时间轴上是否有重叠,若没有,则将第三动作添加到所述第一动作序列中。
在其他实施例中,还可以使用其它方法从所述第二匹配结果中确定一组动作序列并插入到所述第一动作序列中,只要没有重叠即可。例如,将动作持续时长的中点放置于对应词语的开始位置,然后依照这种放置方式确定一组在时间维度上与第一动作序列没有重叠的动作序列并插入到第一动作序列中。
步骤208至步骤214可以对应图1中的重排阶段。通过步骤208至步骤214,可以避免相邻动作之间存在长时间空白的情况。
本说明书一个或多个实施例提出基于预设动作库进行粗排-精排-重排的方式来确定数字人在播报文本时的动作序列。这种基于预设动作库的方式,能够保证候选动作的质量,从而避免输出动作序列中存在低质量动作和动作不连贯的问题。通过人工预设动作触发词的方式来提升动作编排结果的语义一致性和可控性,同时度量文本表征和动作表征的推理方法,进一步提升编排的动作序列与输入文本的语义一致性。针对预设动作库中动作存在一定的持续时长,导致编排的动作序列可能在音频时间轴上重叠的问题,提出了从词语开始位置向后扩展的时间轴对齐方法,从而在保证动作序列与文本语义一致性的基础上,避免动作在播放时重叠导致不可用的问题。考虑到基于语义匹配的方法得到的动作序列存在的稀疏问题,提出了基于句法解析的方法在特定的句法结构中插入通用承接动作,从而提升编排的动作序列的丰富性。
根据另一方面的实施例,还提供一种数字人动作编排装置。图6示出根据一个实施例的数字人动作编排装置的示意性框图,该装置可以部署在任何具有计算、处理能力的设备、平台或设备集群中。如图6所示,该装置600包括:
第一获取单元601,配置为,获取目标文本对应的第一词语序列,以及获取第一动作集合,所述第一动作集合中包含若干动作,任一动作具有预设的触发词以及对应的动作持续时长;
第一匹配单元602,配置为,至少根据所述触发词,将所述第一词语序列中的各个词语与所述第一动作集合进行匹配,得到第一匹配结果,其中包含各个词语对应的备选动作集合;
第一确定单元603,配置为,根据各个词语在所述目标文本中的位置,以及所述动作持续时长,从所述第一匹配结果中确定一组在时间维度上没有重叠的动作序列,得到第一动作序列,所述第一动作序列用于指示所述数字人在播报所述目标文本时做出相应的动作。
在一些可能的实施方式中,装置600还包括:
第二获取单元604,配置为,获取第二动作集合,所述第二动作集合中包含若干通用动作,任一通用动作具有对应的动作持续时长;
词语提取单元605,配置为,提取所述目标文本中词性为目标词性的词语,得到第二词语序列;
第二匹配单元606,配置为,对所述第二词语序列中的任一词语,从所述第二动作集合中随机选择对应的通用动作,得到第二匹配结果;
第二确定单元607,配置为,根据第二词语序列中各个词语在所述目标文本中的位置,以及各个词语对应的通用动作的动作持续时长,从所述第二匹配结果中确定一组动作序列并插入到所述第一动作序列中,得到第二动作序列,使得所述第二动作序列中的各个动作在时间维度上没有重叠。
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述任一实施例所描述的方法。
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述任一实施例所描述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者装置中还存在另外的相同要素。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种数字人动作编排方法,包括:
获取目标文本对应的第一词语序列,以及获取第一动作集合,所述第一动作集合中包含若干动作,任一动作具有预设的触发词以及对应的动作持续时长;
至少根据所述触发词,将所述第一词语序列中的各个词语与所述第一动作集合进行匹配,得到第一匹配结果,其中包含各个词语对应的备选动作集合;
根据各个词语在所述目标文本中的位置,以及所述动作持续时长,从所述第一匹配结果中确定一组在时间维度上没有重叠的动作序列,得到第一动作序列,所述第一动作序列用于指示所述数字人在播报所述目标文本时做出相应的动作。
2.根据权利要求1所述的方法,其中,将所述第一词语序列中的各个词语与所述第一动作集合进行匹配,得到第一匹配结果,包括:
针对任意目标词语,将该目标词语与所述触发词进行匹配,得到第一候选动作集合;
根据该目标词语的语义表征与所述第一动作集合中动作的动作表征的相似度,得到第二候选动作集合;
根据所述第一候选动作集合与所述第二候选动作集合,确定目标词语对应的备选动作集合。
3.根据权利要求2所述的方法,其中,根据该目标词语的语义表征与所述第一动作集合中动作的动作表征的相似度,得到第二候选动作集合,包括:
使用第一文本编码器对所述目标词语进行编码,得到目标语义表征;
获取使用动作编码器对所述第一动作集合中的任一动作进行编码得到的动作表征;
将动作表征与所述目标语义表征的相似度大于第一阈值的动作,归入第二候选动作集合。
4.根据权利要求3所述的方法,其中,所述第一文本编码器用于对第一语言的文本进行编码;所述动作编码器预先与适用于第二语言的第二文本编码器联合训练;所述第一文本编码器通过以下方式训练得到:
使用所述第一文本编码器对第一语言的第一训练语料进行编码,得到第一语义表征;
使用所述第二文本编码器对第二语言的第二训练语料进行编码,得到第二语义表征,所述第二训练语料与所述第一训练语料具有相同的语义;
通过最大化所述第一语义表征和第二语义表征之间的相似度,调整所述第一文本编码器中的参数的值。
5.根据权利要求2所述的方法,其中,根据所述第一候选动作集合与所述第二候选动作集合,确定目标词语对应的备选动作集合,包括:
根据所述第一候选动作集合与第二候选动作集合的并集,确定备选动作集合;或
根据所述第一候选动作集合与第二候选动作集合的交集,确定备选动作集合。
6.根据权利要求1所述的方法,其中,所述第一词语序列中包括第一词语和第二词语;从所述第一匹配结果中确定一组在时间维度上没有重叠的动作序列,得到第一动作序列,包括:
分别从所述第一词语和第二词语对应的备选动作集合中确定第一动作和第二动作;
根据时间戳预测模型确定所述第一词语和第二词语在时间轴上的开始位置;
根据所述开始位置和动作持续时长,判断所述第一动作和第二动作在时间轴上是否有重叠;若有,则将第一动作和第二动作之一从所述第一动作序列中排除。
7.根据权利要求6所述的方法,其中,将第一动作和第二动作之一从所述第一动作序列中排除,包括:
将开始位置在后的词语所对应的动作,从所述所述第一动作序列中排除。
8.根据权利要求6所述的方法,其中,所述第一动作和第二动作还具有对应的优先级;将第一动作和第二动作之一从所述第一动作序列中排除,包括:
将优先级较低的动作从所述所述第一动作序列中排除。
9.根据权利要求1所述的方法,还包括:
获取第二动作集合,所述第二动作集合中包含若干通用动作,任一通用动作具有对应的动作持续时长;
提取所述目标文本中词性为目标词性的词语,得到第二词语序列;
对所述第二词语序列中的任一词语,从所述第二动作集合中随机选择对应的通用动作,得到第二匹配结果;
根据第二词语序列中各个词语在所述目标文本中的位置,以及各个词语对应的通用动作的动作持续时长,从所述第二匹配结果中确定一组动作序列并插入到所述第一动作序列中,得到第二动作序列,使得所述第二动作序列中的各个动作在时间维度上没有重叠。
10.根据权利要求9所述的方法,其中,所述目标词性包括以下中的一种或多种:数量词、名动词、动副词、普通动词、时间、方位词。
11.根据权利要求9所述的方法,其中,对所述第二词语序列中的任一词语,从所述第二动作集合中随机选择对应的通用动作,得到第二匹配结果,包括:
从所述第二动作集合中随机选择通用动作,使得所述第二词语序列中相邻的词语之间对应不同的通用动作,得到第二匹配结果。
12.根据权利要求9所述的方法,其中,所述第二词语序列中包括第三词语;从所述第二匹配结果中确定一组动作序列并插入到所述第一动作序列中,得到第二动作序列,包括:
根据时间戳预测模型确定所述第三词语在时间轴上的开始位置;
根据所述第二匹配结果确定所述第三词语对应的第三动作;
根据所述开始位置和第三动作的动作持续时长,判断所述第三动作和所述第一动作序列中的任一动作在时间轴上是否有重叠,若没有,则将第三动作添加到所述第一动作序列中。
13.一种数字人动作编排装置,包括:
第一获取单元,配置为,获取目标文本对应的第一词语序列,以及获取第一动作集合,所述第一动作集合中包含若干动作,任一动作具有预设的触发词以及对应的动作持续时长;
第一匹配单元,配置为,至少根据所述触发词,将所述第一词语序列中的各个词语与所述第一动作集合进行匹配,得到第一匹配结果,其中包含各个词语对应的备选动作集合;
第一确定单元,配置为,根据各个词语在所述目标文本中的位置,以及所述动作持续时长,从所述第一匹配结果中确定一组在时间维度上没有重叠的动作序列,得到第一动作序列,所述第一动作序列用于指示所述数字人在播报所述目标文本时做出相应的动作。
14.根据权利要求13所述的装置,还包括:
第二获取单元,配置为,获取第二动作集合,所述第二动作集合中包含若干通用动作,任一通用动作具有对应的动作持续时长;
词语提取单元,配置为,提取所述目标文本中词性为目标词性的词语,得到第二词语序列;
第二匹配单元,配置为,对所述第二词语序列中的任一词语,从所述第二动作集合中随机选择对应的通用动作,得到第二匹配结果;
第二确定单元,配置为,根据第二词语序列中各个词语在所述目标文本中的位置,以及各个词语对应的通用动作的动作持续时长,从所述第二匹配结果中确定一组动作序列并插入到所述第一动作序列中,得到第二动作序列,使得所述第二动作序列中的各个动作在时间维度上没有重叠。
15.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-12中任一项所述的方法。
16.一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310957070.5A CN116993873B (zh) | 2023-07-31 | 2023-07-31 | 一种数字人动作编排方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310957070.5A CN116993873B (zh) | 2023-07-31 | 2023-07-31 | 一种数字人动作编排方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116993873A true CN116993873A (zh) | 2023-11-03 |
CN116993873B CN116993873B (zh) | 2024-05-17 |
Family
ID=88533329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310957070.5A Active CN116993873B (zh) | 2023-07-31 | 2023-07-31 | 一种数字人动作编排方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116993873B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117808944A (zh) * | 2024-02-29 | 2024-04-02 | 苏州元脑智能科技有限公司 | 数字人的文本动作数据处理方法、装置、存储介质及电子装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110880198A (zh) * | 2018-09-06 | 2020-03-13 | 百度在线网络技术(北京)有限公司 | 动画生成方法和装置 |
CN113569755A (zh) * | 2021-07-29 | 2021-10-29 | 西安交通大学 | 基于对偶关系网络的时序动作定位方法、系统、设备及介质 |
CN113792537A (zh) * | 2021-08-12 | 2021-12-14 | 华为技术有限公司 | 一种动作生成方法以及装置 |
CN113963304A (zh) * | 2021-12-20 | 2022-01-21 | 山东建筑大学 | 基于时序-空间图的跨模态视频时序动作定位方法及系统 |
CN114173188A (zh) * | 2021-10-18 | 2022-03-11 | 深圳追一科技有限公司 | 视频生成方法、电子设备、存储介质和数字人服务器 |
US20220343100A1 (en) * | 2021-04-23 | 2022-10-27 | Ping An Technology (Shenzhen) Co., Ltd. | Method for cutting video based on text of the video and computing device applying method |
CN115757873A (zh) * | 2022-11-23 | 2023-03-07 | 桂林电子科技大学 | 一种视频文本检索方法、装置、系统以及存储介质 |
CN116051688A (zh) * | 2022-12-30 | 2023-05-02 | 魔珐(上海)信息科技有限公司 | 过渡动画生成方法及装置、计算机可读存储介质、终端 |
CN116309965A (zh) * | 2022-12-30 | 2023-06-23 | 魔珐(上海)信息科技有限公司 | 动画生成方法及装置,计算机可读存储介质、终端 |
CN116363275A (zh) * | 2023-03-23 | 2023-06-30 | 浙江大学 | 一种面向手语数字人的动作编排方法 |
-
2023
- 2023-07-31 CN CN202310957070.5A patent/CN116993873B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110880198A (zh) * | 2018-09-06 | 2020-03-13 | 百度在线网络技术(北京)有限公司 | 动画生成方法和装置 |
US20220343100A1 (en) * | 2021-04-23 | 2022-10-27 | Ping An Technology (Shenzhen) Co., Ltd. | Method for cutting video based on text of the video and computing device applying method |
CN113569755A (zh) * | 2021-07-29 | 2021-10-29 | 西安交通大学 | 基于对偶关系网络的时序动作定位方法、系统、设备及介质 |
CN113792537A (zh) * | 2021-08-12 | 2021-12-14 | 华为技术有限公司 | 一种动作生成方法以及装置 |
CN114173188A (zh) * | 2021-10-18 | 2022-03-11 | 深圳追一科技有限公司 | 视频生成方法、电子设备、存储介质和数字人服务器 |
CN113963304A (zh) * | 2021-12-20 | 2022-01-21 | 山东建筑大学 | 基于时序-空间图的跨模态视频时序动作定位方法及系统 |
CN115757873A (zh) * | 2022-11-23 | 2023-03-07 | 桂林电子科技大学 | 一种视频文本检索方法、装置、系统以及存储介质 |
CN116051688A (zh) * | 2022-12-30 | 2023-05-02 | 魔珐(上海)信息科技有限公司 | 过渡动画生成方法及装置、计算机可读存储介质、终端 |
CN116309965A (zh) * | 2022-12-30 | 2023-06-23 | 魔珐(上海)信息科技有限公司 | 动画生成方法及装置,计算机可读存储介质、终端 |
CN116363275A (zh) * | 2023-03-23 | 2023-06-30 | 浙江大学 | 一种面向手语数字人的动作编排方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117808944A (zh) * | 2024-02-29 | 2024-04-02 | 苏州元脑智能科技有限公司 | 数字人的文本动作数据处理方法、装置、存储介质及电子装置 |
CN117808944B (zh) * | 2024-02-29 | 2024-05-24 | 苏州元脑智能科技有限公司 | 数字人的文本动作数据处理方法、装置、存储介质及电子装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116993873B (zh) | 2024-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6675463B2 (ja) | 自然言語の双方向確率的な書換えおよび選択 | |
CN106796787B (zh) | 在自然语言处理中使用先前对话行为进行的语境解释 | |
CN108962233B (zh) | 用于语音对话平台的语音对话处理方法及系统 | |
CN106570180B (zh) | 基于人工智能的语音搜索方法及装置 | |
CN111177359A (zh) | 多轮对话方法和装置 | |
CN116993873B (zh) | 一种数字人动作编排方法及装置 | |
CN109979450B (zh) | 信息处理方法、装置及电子设备 | |
CN112733654B (zh) | 一种视频拆条的方法和装置 | |
CN112399269B (zh) | 视频分割方法、装置、设备及存储介质 | |
CN113035199B (zh) | 音频处理方法、装置、设备及可读存储介质 | |
CN112397053B (zh) | 语音识别方法、装置、电子设备及可读存储介质 | |
CN113225612B (zh) | 字幕生成方法、装置、计算机可读存储介质及电子设备 | |
CN112700769A (zh) | 一种语义理解方法、装置、设备以及计算机可读存储介质 | |
CN114143479B (zh) | 视频摘要的生成方法、装置、设备以及存储介质 | |
CN113450772A (zh) | 语音对话重构方法及装置 | |
Dufour et al. | Characterizing and detecting spontaneous speech: Application to speaker role recognition | |
JP2005167452A (ja) | 映像シーン区間情報抽出方法,映像シーン区間情報抽出装置,映像シーン区間情報抽出プログラムおよびそのプログラムを記録した記録媒体 | |
Levin et al. | Automated closed captioning for Russian live broadcasting | |
CN114708869A (zh) | 语音交互方法、装置及电器 | |
CN117558259B (zh) | 一种数字人播报风格控制方法及装置 | |
CN107886940B (zh) | 语音翻译处理方法及装置 | |
CN110164020A (zh) | 投票创建方法、装置、计算机设备及计算机可读存储介质 | |
US20230326369A1 (en) | Method and apparatus for generating sign language video, computer device, and storage medium | |
JP2013050605A (ja) | 言語モデル切替装置およびそのプログラム | |
CN113792166B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40100958 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |