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

从视频生成同步的声音

文献发布时间:2023-06-19 16:04:54



技术领域

本发明涉及从训练数据中识别在视觉上相关与在视觉上不相关的声音,更具体地说,涉及使用在视觉上不相关的声音来训练声音生成系统。

背景技术

日常生活中的各种视觉事件通常伴随着不同的声音。在许多情况下,视觉事件和声音是如此密切相关,使得可以通过观察视觉事件来本能地推断声音将是什么。虽然视觉事件与声音之间的相关性对人类而言是本能的,但对于机器学习应用来说这是困难的任务。也就是说,使用机器学习应用来从无声视频(即,没有同步音频的视觉数据)导出声音是困难的,但是存在许多现实世界的应用,诸如视频编辑自动化、为无声电影生成声音以及帮助具有视觉障碍的人。

难以导出视觉数据的声音的一个原因是因为用于训练机器学习(ML)系统的训练数据常常具有与视觉数据无关的音频数据(称为视觉不相关声音)。例如,视觉训练数据可以示出狗吠叫,而音频训练数据包括狗吠以及在视觉训练声音(例如,视觉不相关声音)中未示出的来自人群的掌声。即,音频训练数据包括视觉相关数据(例如,狗吠的声音)和视觉不相关声音两者。使用包括视觉不相关声音的音频训练数据来训练ML系统可能使ML系统迷惑从而将视觉不相关声音与视觉训练数据中的对象相关,即使它们是不相关的。然而,找到不具有任何视觉不相关声音的训练数据是困难的。由此,需要使用可能包括视觉相关声音和视觉不相关声音两者的训练数据来训练ML系统。

因此,在本领域中需要解决上述问题。

发明内容

从第一方面来看,本发明提供了一种用于识别视觉相关声音的方法,所述方法包括:在包括第一机器学习(ML)模型的视觉编码器处接收视觉训练数据;使用所述第一ML模型来识别与所述视觉训练数据中的视觉对象相对应的数据;在包括第二ML模型的音频转发正则化器(regularizer)处接收与所述视觉训练数据同步的音频训练数据,其中所述音频训练数据包括视觉相关声音和视觉不相关声音,其均同步到包含所述视觉对象的所述视觉训练数据中的相同帧,其中所述视觉相关声音对应于所述视觉对象,但所述视觉不相关声音是由在所述相同帧中不可见的音频源产生的;使用信息瓶颈从所述第二ML模型的输出过滤对应于所述视觉相关声音的数据;以及使用对应于所述视觉对象的数据和对应于所述视觉不相关声音的数据训练所述第一ML模型和所述第二ML模型下游的第三ML模型。

从另一个方面来看,本发明提供了一种用于识别视觉相关声音的计算机程序产品,所述计算机程序产品包括:计算机可读存储介质,所述计算机可读存储介质具有与其一起实施的计算机可读程序代码,所述计算机可读程序代码可由一个或多个计算机处理器执行以执行操作,所述操作包括:在包括第一ML模型的视觉编码器处接收视觉训练数据;使用所述第一ML模型来识别与所述视觉训练数据中的视觉对象相对应的数据;在包括第二ML模型的音频转发正则化器处接收与所述视觉训练数据同步的音频训练数据,其中所述音频训练数据包括视觉相关声音和视觉不相关声音,其均同步到包含所述视觉对象的所述视觉训练数据中的相同帧,其中所述视觉相关声音对应于所述视觉对象,但所述视觉不相关声音是由在所述相同帧中不可见的音频源产生的;使用信息瓶颈从所述第二ML模型的输出过滤对应于所述视觉相关声音的数据;以及使用对应于所述视觉对象的数据和对应于所述视觉不相关声音的数据训练所述第一ML模型和所述第二ML模型下游的第三ML模型。

从另一方面来看,本发明提供一种系统,包括:处理器;以及存储器,所述存储器包括程序,所述程序在由所述处理器执行时执行操作,所述操作包括:在包括第一ML模型的视觉编码器处接收视觉训练数据;使用所述第一ML模型来识别与所述视觉训练数据中的视觉对象相对应的数据;在包括第二ML模型的音频转发正则化器处接收与所述视觉训练数据同步的音频训练数据,其中所述音频训练数据包括视觉相关声音和视觉不相关声音,其均同步到包含所述视觉对象的所述视觉训练数据中的相同帧,其中所述视觉相关声音对应于所述视觉对象,但所述视觉不相关声音是由在所述相同帧中不可见的音频源产生的;使用信息瓶颈从所述第二ML模型的输出过滤对应于所述视觉相关声音的数据;以及使用对应于所述视觉对象的数据和对应于所述视觉不相关声音的数据训练所述第一ML模型和所述第二ML模型下游的第三ML模型。

从另一方面来看,本发明提供了一种用于识别视觉相关声音的计算机程序产品,该计算机程序产品包括计算机可读存储介质,该计算机可读存储介质可由处理电路读取并且存储用于由该处理电路执行以便执行用于执行本发明的步骤的方法的指令。

从另一方面来看,本发明提供一种存储在计算机可读介质上并且可加载到数字计算机的内部存储器中的计算机程序,该计算机程序包括当所述程序在计算机上运行时用于执行本发明的步骤的软件代码部分。

本发明的实施例是一种方法,该方法包括:在包括第一ML模型的视觉编码器处接收视觉训练数据,使用所述第一ML模型来识别与所述视觉训练数据中的视觉对象相对应的数据,以及在包括第二ML模型的音频转发正则化器处接收与所述视觉训练数据同步的音频训练数据,其中所述音频训练数据包括视觉相关声音和视觉不相关声音,其均同步到包含所述视觉对象的所述视觉训练数据中的相同帧,并且其中所述视觉相关声音对应于所述视觉对象,但所述视觉不相关声音是由在所述相同帧中不可见的音频源产生的。该方法还包括使用信息瓶颈从所述第二ML模型的输出过滤对应于所述视觉相关声音的数据,以及使用对应于所述视觉对象的数据和对应于所述视觉不相关声音的数据训练所述第一ML模型和所述第二ML模型下游的第三ML模型。该实施例相对于先前解决方案的一个优点是,第三ML模型可以在训练时考虑视觉不相关声音。由此,第三ML模型可以用包括视觉相关和不相关声音二者的训练数据来准确地训练。

本发明的另一实施例包括上述实施例并且还可以包括,在训练第三ML模型之后执行一执行阶段,所述执行阶段包括在第一ML模型处接收无声视频,使用所述第一ML模型识别与所述无声视频中的第二视觉对象相对应的数据,使用所述第三ML模型生成视觉相关声音以与包含所述第二视觉对象的所述无声视频的至少一个视频帧同步,其中与所述第二视觉对象相对应的数据被输入到所述第三ML模型,以及基于所同步的视觉相关声音和所述无声视频中的视频帧来生成媒体呈现。该实施例相对于先前解决方案的一个优点是大大降低了第三ML模型选择视觉不相关声音来与无声视频的视频帧进行同步的可能性。

本发明另一个实施例包括上述实施例,并且在执行所述执行状态时,音频转发正则化器中的第二ML模型可以不被使用。有利地,在执行阶段期间不使用第二ML模型可以改善ML系统的性能,因为这些组件可以在训练期间而不是在执行期间使用。

在以上实施例中的任何实施例中,可以通过限制第二ML模型的输出的维度来实现所述信息瓶颈,其中限制所述维度阻止与所述视觉相关声音相对应的数据到达所述第三ML模型。

在以上任何实施例中,可以使用序列到序列ML模型来实施所述第二ML模型。有利地,当处理诸如音频和视觉训练数据的时间依赖信息时,与其他ML模型相比,序列到序列ML模型提供改进的结果。

在上述实施例中,序列到序列ML模型可以基于音频训练数据和信息瓶颈可选地输出瓶颈音频帧。进一步,所述方法可任选地包括:根据所述视觉训练数据中的T个时间段复制所述瓶颈音频帧,并将所复制的瓶颈音频帧发送至所述第三ML模型。有利地,瓶颈音频帧具有与视觉帧一样多的副本,这可以提高第三ML模型区分由第一ML模型识别的视觉对象和由第二ML模型识别的视觉不相关声音的能力。

附图说明

现在将参考如在以下附图中所展示的优选实施例仅通过实例的方式来描述本发明:

图1是根据本文描述的一个实施例的用于训练机器学习模型以使声音与视觉数据同步的系统。

图2是根据本文描述的一个实施例的用于训练机器学习模型以使声音与视觉数据同步的流程图。

图3是根据本文描述的一个实施例的用于使用经训练的机器学习模型将声音与视觉数据同步的系统。

图4是根据本文描述的一个实施例的用于将声音与视觉数据同步的流程图。

图5是根据本文描述的一个实施例的用于训练机器学习模型以使声音与视觉数据同步的系统。

图6是根据本文描述的一个实施例的用于训练机器学习模型以使声音与视觉数据同步的系统。

具体实施方式

本文的实施例描述了用于导出可以与视觉数据同步的声音的机器学习(ML)系统。本实施例的一个优点是ML系统可以在训练ML系统时考虑到视觉不相关声音。这意味着ML系统可以用包括不相关声音的音频数据来训练,这极大地增加了可以用于训练ML系统的媒体呈现的数目和多样性。

在一个实施例中,ML系统包括在训练ML系统时使用的音频转发正则化器和信息瓶颈。音频转发正则化器(或仅“正则化器”)包括ML模型,该ML模型接收音频训练数据并且识别训练数据中的视觉不相关声音和视觉相关声音。通过控制信息瓶颈,ML系统使得音频转发正则化器将数据转发到主要与视觉不相关声音相关的生成器,同时视觉相关声音被滤除。并行地,生成器还从视觉编码器接收关于视觉对象的数据,该数据从视觉训练数据导出。照此,当被训练时,生成器从视觉编码器接收关于训练媒体呈现中的视觉对象的数据,并且从音频转发正则化器接收关于视觉不相关声音的数据(但几乎没有或没有关于视觉相关声音的数据)。因此,生成器学习区分视觉对象(即,视觉训练数据中的对象)和视觉不相关声音(即,与视觉对象无关的声音)。由此,当执行ML系统以推导无声视频的声音时,生成器可以生成与视觉对象相关的声音(例如,视觉相关声音),而不向视频添加或同步视觉不相关声音。

图1是根据本文描述的一个实施例的用于训练ML模型以使声音与视觉数据同步的ML系统100。ML系统100包括视觉编码器110、音频转发正则化器115和生成器125,每个均包括一个或多个ML模型。这些ML模型的细节将在后面的附图中描述。

如图所示,视觉编码器110接收视觉训练数据105作为输入。在一个实施例中,视觉训练数据105包括多个顺序的视频帧。相反,音频转发正则化器115接收音频训练数据107,该音频训练数据107包括与视觉训练数据105同步的声音。例如,视觉训练数据105可以是来自训练媒体呈现的视觉信息,而音频训练数据107包含该训练媒体呈现的声音。然而,如以上所讨论的,音频训练数据107可以包括视觉相关声音(即,与视觉训练数据105中的视觉对象相关的声音)以及视觉不相关声音(即,与视觉训练数据105中的同步的视觉对象不相关或无关的声音)两者。在一个实施例中,视觉相关声音的音频源离开屏幕,即,在相应的视频帧中不可见。使用本文的技术,ML系统100可以被训练成使得生成器125可以在视觉相关声音与视觉不相关声音之间进行区分,从而使得在执行期间当仅接收到无声视频(例如,不与任何声音同步的视觉数据)时,生成器125可以生成或导出视觉相关声音,该视觉相关声音然后可以与无声视频同步以生成包括与视觉数据同步的音频的媒体呈现。

通常,视觉编码器110的目标是识别视觉训练数据105中的视觉对象,诸如狗、人、汽车等。视觉编码器110还可以使用其ML模型(或多个模型)来识别视觉对象正在执行的动作,诸如,吠叫的狗、人拍篮球、或者汽车急刹。然后可以将这些视觉对象及其动作传输至生成器125。

音频转发正则化器115使用其ML模型(或多个模型)来识别音频训练数据107中的视觉相关声音和视觉不相关声音。例如,视觉相关声音可以包括由视觉训练数据105中的视觉对象生成的声音,诸如狗吠、篮球弹跳的声音、或由汽车急刹所引起的来自轮胎的尖啸。音频训练数据107还包括与数据105中的视觉对象或其动作无关或独立的视觉不相关声音。视觉不相关声音的示例可以是观众的掌声(当观众未在视觉训练数据105中示出时)、评论员关于篮球比赛的叙述、或由当前离屏(例如,不在视觉训练数据105中的同步帧内)的动物发出的声音。例如,在一个时间点,当音频训练数据107中的声音的源在视觉训练数据105的同步帧中当前可见时,该声音可以是视觉相关声音,但如果其源在视觉训练数据105的同步帧中不再可见,则该声音之后可以是视觉不相关声音。

生成器125的目标是使用由视觉编码器110和音频转发正则化器115提供的输入来再现音频训练数据107(其包括视觉相关声音和视觉不相关声音两者)。然而,在训练期间简单地将关于视觉相关和不相关声音的数据发送到生成器125可导致生成器125将视觉相关和不相关声音都与由视觉编码器110识别的视觉对象相关,这导致生成器125在执行阶段期间(即,在训练完成之后)将视觉相关和不相关声音都添加到无声视频。为了防止这一点,ML系统100包括信息瓶颈120,其限制关于发送到生成器125的视觉相关声音的数据量并且代替地聚焦于将视觉不相关声音发送到生成器125。

虽然在训练期间向生成器125发送关于视觉不相关声音的数据可能显得违反直觉(因为在执行阶段期间应忽略视觉不相关声音),但这样做有利地导致改善的结果,其中生成器125能够在训练期间区分视觉对象与视觉不相关声音而不是将它们错误地相关。例如,如果信息瓶颈120太宽,那么大量有关视觉相关声音的数据以及视觉不相关声音被提供给生成器125。在该情况下,生成器125能够“欺骗”并使用从音频转发正则化器接收的输入作为预测声音130。结果,生成器125没有学习到视觉不相关声音与由视觉编码器110提供的视觉数据是不相关的。

然而,随着信息瓶颈120收紧,对应于传输到生成器125的视觉相关声音的数据量减少。由此,生成器125不再能简单地将其从正则化器115接收的声音用作预测声音130(其应当包括视觉相关声音和视觉不相关声音两者)。由此,为了为预测声音130生成视觉相关声音(例如,当尝试重构音频训练数据107时),生成器125中的一个或多个ML模型被迫确定由音频转发正则化器115提供的数据不包括视觉相关声音,而是从由视觉编码器110提供的视觉对象导出那些声音。例如,生成器125可以访问数据库以识别与由视觉编码器110识别的视觉对象相关的声音。作为该过程的结果,生成器125学习到关于从音频转发正则化器115接收到的视觉不相关声音的数据事实上与视觉编码器110生成的视觉对象无关,从而实现训练生成器125识别视觉不相关声音的期望效果。例如,生成器125可确定未看见的观众的掌声与可见的吠叫的狗无关,或者来自屏幕外播音员的解说员与屏幕上篮球运动员拍球无关。

在训练阶段期间,生成器125具有输出包含视觉相关和不相关声音两者的预测声音130的目标。即,预测声音130应尽可能接近音频训练数据107(其用作地面真值)中的声音。在该过程期间,并且如上所述,生成器125中的一个或多个ML模型学习识别视觉不相关声音。

在一个实施例中,视觉编码器110、音频转发正则化器115、信息瓶颈120、和生成器125作为程序代码被存储在存储器中,该程序代码在至少一个计算系统中的处理器中执行。例如,视觉编码器110、音频转发正则化器115、信息瓶颈120、和生成器125可以使用存储在存储器中并由计算系统中的处理器执行的ML框架(例如,ML软件应用)来实现。

图2是根据本文描述的一个实施例的用于训练ML模型以使声音与视觉数据同步的方法200的流程图。在该实施例中,ML系统接收包括视觉训练数据105(例如,视频帧)和音频训练数据107(例如,训练媒体的同步声音或声道)的训练媒体数据205。即,训练媒体数据205可以被分离,使得其视频数据(例如,视觉训练数据105)被提供给视觉编码器,而对应的音频数据(例如,音频训练数据107)被提供给音频转发正则化器。

在框210,视觉编码器识别训练第一ML模型的对象。在一个实施例中,视觉编码器识别视觉训练数据105中的视觉对象。除了识别视觉对象225之外,视觉编码器还可以识别视觉对象225当前正在执行的动作或者与对象相关联的一些其他元数据,诸如对象的类型(例如,人的年龄、或者狗的品种)。视觉编码器可以包括适合于识别视觉对象225的任何类型的ML模型。

在框215,音频转发正则化器使用第二ML模型来识别视觉相关声音和视觉不相关声音。即,正则化器中的第二ML模型识别音频训练数据107中的各种声音。作为该过程的一部分,在框220,信息瓶颈从在第二ML模型的输出中表示的视觉相关声音过滤出视觉不相关声音。不是允许第二ML模型输出其所有生成的输出数据,而是信息瓶颈限制第二ML模型的输出,使得关于视觉不相关声音230的数据主要传输到生成器,而关于视觉相关声音的大部分(或全部)数据被滤除(即,不被转发到生成器)。音频转发正则化器可包括适合于识别视觉不相关声音230的任何类型的ML模型。

在框235,生成器恢复训练媒体以训练第三ML模型。作为训练第三ML模型的一部分,生成器尝试生成(或恢复或再现)由正则化器接收的音频训练数据107。如上所述,生成器从音频转发正则化器接收视觉不相关声音,但不接收视觉相关声音。由此,第三ML模型尝试从视觉对象225恢复视觉相关声音,以便再现音频训练数据107和训练媒体数据205。作为该过程的一部分,第三ML模型学习到视觉对象225不同于视觉不相关声音230。由此,在稍后的执行阶段期间,第三ML模型可以避免在为无声视频生成声音时生成视觉不相关声音。

图3是根据本文描述的一个实施例的用于使用经训练的ML模型将声音与视觉数据同步的ML系统300。虽然图1图示了用于训练ML模型的ML系统,但是ML系统300在执行阶段期间用于在ML模型已经被训练之后(例如,在方法200已经被执行之后)生成用于无声视频的声音。

ML系统300包括如上所述的视觉编码器110和生成器125。然而,系统300缺少音频转发正则化器和信息瓶颈。相反,在图1的训练阶段期间使用的生成器125的输入接收正则化器和信息瓶颈的输出改为接收零向量310(例如,具有零的向量)。因此,正则化器和信息瓶颈在ML系统300的执行阶段期间不被使用,这有利地改善了ML系统的性能,因为这些组件仅可以在训练期间被使用而不在执行期间被使用。代替地,生成器125依赖于其经训练的ML模型来识别由视觉编码器110识别的视觉对象的声音。

在执行阶段期间,视觉编码器110接收无声视频305——例如,不存在帧的对应或同步声音的一系列视频帧。在一个实施例中,ML系统300在执行阶段期间的目标是生成对应于无声视频305的声音。例如,如果无声视频305描绘了吠叫的狗或烟花,则ML系统300可以使用视觉编码器110和生成器125中经训练的ML模型来生成视觉上相关的声音——例如,狗吠或烟花的轰鸣和爆裂。

如同在训练阶段,视觉编码器110识别无声视频305中的视觉对象。视觉编码器110还可以识别视觉对象的动作或视觉对象的类型或特性。该信息然后被转发到生成器125。

生成器125使用其经训练的ML模型来识别无声视频305的同步声音。例如,如果视觉对象示出吠叫的狗,则生成器125可确定使吠叫声音与显示吠叫的狗的视频帧同步。因为当训练生成器125中的ML模型时,所述模型被教导区分训练媒体数据中的视觉对象和视觉不相关声音,所以在执行期间,生成器125较不可能将视觉不相关声音添加到在无声视频305中识别的视觉对象并使其同步,从而产生相对于在训练阶段期间不使用音频转发正则化器的先前解决方案的优点。换言之,生成器125更可能仅使视觉相关声音与无声视频305中描绘的视觉对象及其动作同步。生成器125输出包括与无声视频的帧同步的视觉相关声音的预测声音315。ML系统300可以生成新的媒体呈现,该新的媒体呈现包括与无声视频305的视频帧同步的声音。

图4是根据本文描述的一个实施例的用于将声音与视觉数据同步的方法400的流程图。ML系统接收无声视频305,该无声视频305可以包括一系列视频帧,其中视频305的至少一部分(或视频305的全部)缺少相应的音频数据或声音。方法400可用于生成与视频305的先前缺少音频数据的部分同步的声音。

在框405处,视觉编码器使用经训练的第一ML模型来识别视频数据的帧中的对象。视觉编码器可执行与在图2的框210处执行的相同的技术以将对应于视觉对象410的数据发送到生成器。

在框415处,生成器使用经训练的第三ML模型生成与视频数据的帧中的视觉对象相对应的视觉相关声音。即,生成器使用视觉对象410来识别与这些对象有关的声音。这些声音被与无声视频305的帧同步。

在框420处,ML系统输出媒体呈现,该媒体呈现包括无声视频的视频帧,所述视频帧现在已经与由生成器识别的视觉相关声音同步。由此,当播放媒体呈现时,用户看到视觉对象410以及与视觉对象410相关的同步声音。有利地,本文论述的实施例降低了生成器将选择视觉不相关声音以包含在媒体呈现中的机会。

图5是根据本文描述的一个实施例的用于训练ML模型以使声音与视觉数据同步的ML系统500。一般地,ML系统500是图1所示的ML系统100的一个实施例。与ML系统100类似,ML系统500包括视觉编码器110、音频转发正则化器115和生成器125,每个都包括使用视觉训练数据105和音频训练数据107训练的至少一个ML模型。

如图所示,特征提取器从视觉训练数据105提取帧特征。这些帧特征然后被用作对视觉编码器110中的ML模型505A的输入。在一个实施例中,ML模型505A表示生成一个或多个垂直向量的一个或多个卷积神经网络(CNN)。例如,如果视觉训练数据105具有每秒24个帧,则每个CNN可输出每秒24个垂直向量。然而,在一个实施例中,ML模型505A的输出是每时间(例如,每秒)单个向量,其然后被馈送到ML模型505B中。

在一个实施例中,ML模型505B专门处理与时间依赖信息,如视觉训练数据中的视频帧。在一个实施例中,ML模型505A是序列到序列ML模型,其可以是长短期记忆(LSTM)、双向LSTM、递归神经网络(RNN)、1D卷积神经网络(convnet)或其他序列学习方法。在一个实施例中,ML模型505B每秒输出一个垂直帧。由此,假设视觉训练数据105有T秒,ML模型505B输出T个视觉帧515。

在图5中,将音频训练数据107转换成表示地面真值的频谱图。为了这样做,可以使用任何特征提取模型来变换音频训练数据107。频谱图然后被用作音频转发正则化器115中的ML模型505C的输入。在一个实施例中,类似于视觉编码器110中的ML模型505B,ML模型505C是序列到序列ML模型,其可以是LSTM、双向LSTM、RNN)、1D卷积网络或其他序列学习方法。有利地,当处理诸如音频和视觉训练数据的时间依赖信息时,与其他ML模型相比,序列到序列ML模型提供改进的结果。

通过约束ML模型505C的输出来执行信息瓶颈。例如,减小ML模型505C的输出维度可执行信息瓶颈。如图所示,ML模型505C使用频谱图作为输入来生成瓶颈音频帧510。音频转发正则化器115然后将帧510复制T次,因此,有利地,存在与视觉帧515一样多的瓶颈音频帧510的副本,这可以提高生成器125在由视觉编码器110识别的视觉对象与由音频转发正则化器115识别的视觉不相关声音之间进行区分的能力。

减小音频帧510的维度以实施信息瓶颈固有地滤除对应于视觉相关声音的数据中的一些(或全部)。换句话说,可调整音频帧510的维度(即,ML模型505C的输出),使得帧510主要包含对应于视觉不相关声音但不对应于视觉相关声音的数据,从而实现如上文所论述的信息瓶颈。

组合器520将由视觉编码器110生成的视觉帧505与由音频转发正则化器115生成的复制的音频帧510进行组合,并且将得到的信息转发到生成器125。生成器125包含在编码器110和正则化器115中的ML模型的下游的ML模型505D,该ML模型505D尝试通过输出应匹配地面真值频谱图的预测频谱图来复制音频训练数据107中的声音。在一个实施例中,ML模型505D可以包括不同层的混合,所述不同层例如为转置卷积层、卷积层、批归一化(BN)层、校正线性单元(ReLU)层等。这些层可以组合成一个ML模型或者组合成若干菊链式ML模型。进一步,虽然未示出,但是生成器125可以包括耦合到ML模型505D的输出的后网络,其生成预测频谱图。

如以上所讨论的,在训练阶段期间,生成器125接收与视觉编码器110所识别的视觉对象相对应的数据(即,视觉帧515)和与视觉不相关声音相对应的数据(即,瓶颈音频帧510)。根据该信息,训练ML模型505D被训练以区分视觉对象和音频训练数据107中的视觉不相关声音。由此,在执行阶段期间,ML模型505D将视觉不相关声音与无声视频中的视觉对象相关联的可能性被有利地减小。

在一个实施例中,训练ML系统500以区分视觉相关声音和视觉不相关声音可以在数学上公式化。在以下讨论中,大写字母表示随机变量(未加粗)或随机向量(加粗);小写字母表示确定性值。E[]表示期望。H()表示(离散)香农熵。进一步地,(V(t);S(T))表示视觉-声音对,其中,V(t)表示在每个视频帧t处的视觉信号(向量化),并且S(T)表示在每个音频帧T处的声音表示(波形或频谱图)。使用不同的帧索引t和T,因为视觉信号和声音信号具有不同的采样率。

假设可以将音频分解为相关信号和不相关信号:

S(τ)=S

下标r表示相关声音,而i表示不相关声音。还假定仅在视频和相关声音之间存在关系,表示为f()。不相关声音独立于相关声音和视觉特征两者。这些关系可以被表示为:

S

其中,⊥表示独立性。在一个实施例中,目标是将两个分量解耦并且仅从视觉信号V(t)中生成视觉相关分量S

视觉编码器110接收视频信号V(t)作为输入并且输出一组视频特征。音频转发正则化器115接收声音信号S(τ)作为输入,并输出音频转发信息(即,复制的瓶颈音频帧510)。然后,生成器125预测(或恢复)S(τ)。有两种不同类型的预测,有或没有音频转发。从视频特征和音频转发信息两者预测具有音频转发的预测,表示为

在训练期间,生成器125尝试最小化涉及使用音频转发的预测的以下损失:

其中等式3中的第一项为重构误差,且第二项为对抗损失。

图6是根据本文描述的一个实施例的用于训练ML模型以使声音与视觉数据同步的ML系统600。ML系统600与ML系统500相同,除了视觉编码器110与音频转发正则化器115之间的附加通信链路605之外。具体地,链路605示出将ML模型505A的输出发送到正则化器115中的ML模型505C。

在ML系统500省略如图所示的该链路605可以有利地提高操作效率,因为ML系统500相对于使用链路605的ML系统600可以执行得更快或者使用更少的资源。然而,相对于ML系统500,链路605可以改善ML系统600在视觉相关和不相关声音之间进行区分的能力。对于通常存在一种类型的视觉对象的应用,省略链路605可导致满意的结果。例如,如果训练数据仅包括烟花的视频,则当训练ML系统时省略链路605可能是足够的。即,ML系统500能够在没有链路605的情况下在视觉相关声音和不相关声音之间精确地区分。然而,如果训练数据包括多个不同的视觉对象,则链路605可以通过使用ML模型505A的输出作为ML模型505C的输入来允许音频转发正则化器115更好地区分视觉相关声音和不相关声音来提供性能的实质性改进。

已经出于说明的目的呈现了本发明的各种实施方式的描述,但并不旨在是详尽的或者限于所公开的实施方式。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对本领域普通技术人员将是显而易见的。这里使用的术语被选择来最好地解释实施例的原理、实际应用或对在市场中找到的技术的技术改进,或者使得本领域普通技术人员能够理解这里公开的实施例。

在上文中,参考本公开中提出的实施方式。然而,本公开的范围不限于具体描述的实施例。相反,无论是否涉及不同实施例,都考虑以上讨论的特征和元件的任何组合来实现和实践所考虑的实施例。此外,尽管本文所公开的实施例可实现优于其他可能的解决方案或优于现有技术的优点,但特定优点是否由给定实施例实现并不限制本公开的范围。因此,以上讨论的方面、特征、实施例和优点仅仅是说明性的并且不被认为是所附权利要求的元素或限制,除非在权利要求中明确陈述。同样,对“本发明”的引用不应被解释为在此所披露的任何发明主题的概括,并且不应被认为是所附权利要求的元素或限制,除非在权利要求中明确陈述。

本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施例、完全的软件实施例(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施例,这里可以统称为“电路”、“模块”或“系统”。

本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质。

计算机可读存储媒体可为可保留和存储供指令执行装置使用的指令的有形装置。计算机可读存储介质可以是,例如但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或者上述的任意合适的组合。计算机可读存储介质的更具体示例的非穷尽列表包括以下各项:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式紧凑盘只读存储器(CD-ROM)、数字通用盘(DVD)、记忆棒、软盘、诸如穿孔卡之类的机械编码设备或具有记录在其上的指令的槽中的凸出结构、以及上述各项的任何合适的组合。如本文所使用的计算机可读存储媒体不应被解释为暂时性信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输媒体传播的电磁波(例如,穿过光纤电缆的光脉冲)或通过电线发射的电信号。

本文中所描述的计算机可读程序指令可以经由网络(例如,互联网、局域网、广域网和/或无线网络)从计算机可读存储介质下载到相应的计算/处理设备,或者下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输纤维、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口接收来自网络的计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。

用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或以一种或多种程序设计语言的任何组合编写的源代码或目标代码,这些程序设计语言包括面向对象的程序设计语言(诸如Smalltalk、C++等)、以及常规的过程式程序设计语言(诸如“C”程序设计语言或类似程序设计语言)。计算机可读程序指令可以完全地在用户计算机上执行、部分在用户计算机上执行、作为独立软件包执行、部分在用户计算机上部分在远程计算机上执行或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接至用户计算机,或者可连接至外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来使电子电路个性化来执行计算机可读程序指令,以便执行本发明的各方面。

下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的或多个框中指定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置、和/或其他设备以特定方式工作,从而,其中存储有指令的计算机可读存储介质包括包含实现流程图和/或框图中的或多个方框中规定的功能/动作的方面的指令的制造品。

也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的处理,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图中的或多个方框中规定的功能/动作。

附图中的流程图和框图示出了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。对此,流程图或框图中的每个框可表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些备选实现中,框中标注的功能可以不按照图中标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个块实际上可以基本上同时执行,或者这些块有时可以以相反的顺序执行。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作或执行专用硬件与计算机指令的组合的专用的基于硬件的系统来实现。

虽然前述内容针对本发明的实施例,但是可以在不偏离本发明的基本范围的情况下设计本发明的其他和进一步的实施例,并且本发明的范围由所附权利要求确定。

技术分类

06120114692053