用于检测和显示白板文本和/或活跃说话者的系统和方法与流程

文档序号:33462264发布日期:2023-03-15 04:24阅读:38来源:国知局
用于检测和显示白板文本和/或活跃说话者的系统和方法与流程

1.本发明涉及用于基于视频检测白板上的文本并基于检测到的白板文本控制所显示的视频流(例如,在视频会议或其他视频演示中)以例如显示包括检测到的白板文本和/或附近的活跃说话者的视图区域的系统和方法。


背景技术:

2.白板是说话者用来向受众演示文本或其他信息的常用工具,例如以实时方式(例如,在视频会议环境或其他视频直播流中)或以回放录制的视频流的方式观看演示的视频源的现场受众或远程受众。如本文所用,“文本”可以包括文字、数字、字母数字字符、符号、形状、图画或任何其他手写或在物理介质上以其他方式书写、打印或显示的信息。
3.用于显示演示视频源(实时或录制的)的现有系统通常无法有效地显示白板上可能与演示相关的文本,例如说话者在演示之前或期间所写的文本。一些现有系统被配置为实时跟踪说话者的位置(或更具体而言为说话者的面部),并平移和变焦摄像机或显示的摄像机视图,以聚焦于被跟踪的说话者。然而,这样的系统可能会省略说话者使用的白板上演示的信息。
4.其他现有系统保持说话者所在房间或环境的完整视图。然而,观看者通常难以或不可能根据整个房间视图识别或辨认白板上的信息,因为白板上的文本在观看者的显示设备上可能显得太小和/或分辨率低。
5.由于白板的各种形状和大小,很难在视频图像中检测白板,并且可能会因摄像机视图中存在包括文本的其他物体(例如电视或其他屏幕、海报、标志等)而变得更加复杂。
6.图1示出了用于白板的自动基于视频的检测和白板上的文本的检测的传统方法100。在102,对视频图像执行传统白板检测分析,以识别白板在摄像机的视图内的位置。在确定白板位置之后,在104执行传统文本检测分析,以识别和/或解密白板上的文本。然而,在传统方法中,白板检测步骤102通常不准确或不成功,如步骤102之后的“x”所示。例如,传统方法可能无法定位白板或者可能错误地将非白板物体(例如,电视或其他显示屏、海报、标志等)识别为白板。
7.因此,基于传统自动白板检测技术的缺陷,一些视频系统使用手动定义的白板位置来定义视频源的所显示的区域。当然,这需要人的手动干预,这可能是不方便的、不切实际的或不可能的,取决于具体情况。此外,干净的白板或其空白区域通常与演示无关。因此,无论包含文本的部分如何,都显示整个白板,可能会导致不必要的大视图区域,这会不必要地减小视频显示大小上的白板文本的大小,可能使观看者难以辨认文本。
8.因此,存在针对改进的系统和方法的目标,所述改进的系统和方法用于:视频演示期间的基于视频的自动化白板检测,以及在向演示的观看者显示的视频源中(例如在视频会议中)提供有用的白板显示,例如,显示白板的包括文本或其他信息的所选择的部分。


技术实现要素:

9.该目标是通过独立权利要求的主题解决的。从属权利要求和以下描述描述了本发明的各种实施例。
10.在一个方面,提供了一种用于识别和显示白板文本和/或活跃说话者的系统。该系统可以包括:包含至少一个摄像机的视频摄像机系统;以及通信地耦合视频到摄像机系统的控制器。视频摄像机系统的摄像机被配置为捕捉显示包括至少一个白板的环境的视频图像。控制器可以包括至少一个处理器。控制器被配置为:接收由视频摄像机系统的至少一个摄像机捕获的一系列视频图像;分析一个或多个这样的视频图像,以检测环境中的至少一个包含文本的区域;分析每个包含文本的区域,以确定相应的包含文本的区域是否为包含文本的白板区域;以及选择包括识别的包含文本的白板区域的用于显示的视图区域。控制器然后被配置为从由视频摄像机系统捕捉的视频图像生成视频源,以在远程客户端设备上显示,并且控制视频源,以显示包括包含文本的白板区域的所选择的视图区域。
11.本发明的基本思想涉及检测白板上的文本,包括将白板文本与摄像机视图中的其他物体上显示的其他文本(例如,电视或显示器上的文本、标志或海报上的文本、或墙壁上的文本)区分开来,以及基于检测到的白板文本自动控制所显示的视频流,例如仅显示包括文本和/或说话人的白板部分。
12.发明人已经发现,检测摄像机视图内的所有包含文本的区域,然后确定每个包含文本的区域是否是白板的区域,提供了优于试图首先检测摄像机视图中的白板并且然后识别白板上的文本的传统系统的改进结果。例如,尽管近年来深度学习技术提高了物体检测的准确性,但没有足够的白板检测物体数据集来训练模型,以有效检测白板,例如与房间里所有其他可能的白色或浅色物体区分开来。相比之下,发明人发现在现实世界环境中检测文本比检测白板准确得多。然而,仅文本检测是不够的,因为房间可能包括各种其他包含文本的物体(例如,电视或其他显示器、标志、海报等)。因此,发明人发明了首先检测摄像机视图(例如,会议室)内的所有包含文本的区域,然后确定每个包含文本的区域是否是白板区域的技术。
13.本发明可以为视频会议系统提供新的且强大的特征。例如,使用改进的白板文本检测,可以自动平移和/或变焦摄像机或来自摄像机的馈送,以聚焦于包括文本的白板区域,并且忽略白板的空白区域。在一些系统中,本发明的白板文本检测可以与说话者跟踪系统结合,用于检测或跟踪活跃说话者(即,生成白板文本或与白板文本交互的演示者)的位置,使得系统可以控制显示的视频源,以显示房间的选择区域,包括白板文本和活跃说话者。
14.在另一方面,提供了一种用于识别和显示白板文本的方法。收集由包括至少一个摄像机的视频摄像机系统捕捉的一系列视频图像,其中,每个视频图像显示包括至少一个白板的环境。通信地耦合到视频摄像机系统的控制器分析该系列视频图像中的至少一个视频图像,以检测环境中的至少一个包含文本的区域。在检测到环境中的至少一个包含文本的区域后,控制器分析每个包含文本的区域,以确定相应的包含文本的区域是否为包含文本的白板区域。响应于确定第一包含文本的区域是包含文本的白板区域,控制器自动选择包括包含文本的白板区域的用于显示的视图区域。控制器从由视频摄像机系统捕捉的视频图像生成视频源,以在远程客户端设备上显示,并控制视频源,以显示包括包含文本的白板
区域的所选择的视图区域。
15.在附图和以下描述中阐述一个或多个实施例的细节。从描述、附图和权利要求中,其他特征将是显而易见的。
附图说明
16.通过以下结合附图的详细描述将容易理解本发明,其中,相同的附图标记表示相同的结构元件。
17.图1示出了用于白板的自动基于视频的检测和白板上的文本的检测的传统方法;
18.图2示出了根据本发明的实施例的用于在客户端设备上识别和显示白板文本的示例性系统;
19.图3a示出了根据本发明的实施例的用于在客户端设备上识别和显示白板文本的示例性方法;
20.图3b、3c和3d是示出图3a所示的示例性方法中的每个步骤的结果的示例性图像;
21.图4a、4b和4c示出了根据本发明的示例实施例的用于三种不同场景的显示区域的示例性选择;以及
22.图5示出了用于在客户端设备上识别和显示白板文本的示例性方法,在示例性环境中包括使用白板上的文本演示信息的活跃说话者。
具体实施方式
23.下面,在此处详细描述本发明的具体实施例。在本发明的实施例的以下描述中,描述了具体细节,以便提供对本发明的透彻理解。然而,对于本领域的普通技术人员来说显而易见的是,可以在没有这些具体细节的情况下实践本发明。在其他情况下,没有详细描述众所周知的特征,以避免不必要地使当前描述复杂化。
24.在根据所描述的实施例的本发明的以下解释中,术语“连接到”或“与其连接”用于指示至少两个组件、设备、单元、处理器或模块之间的数据和/或音频(信号)连接。这种连接可以直接在相应组件、设备、单元、处理器或模块之间进行;或是间接的,即通过中间组件、设备、单元、处理器或模块。连接可能是永久的或临时的;无线的或基于导体的。
25.例如,数据和/或音频连接可以通过直接连接、总线或使用相应的合适的通信协议的网络连接(诸如wan(广域网)、lan(局域网)、pan(个人局域网)、ban(体域网),其包括例如互联网、以太网、蜂窝网络(例如lte)、蓝牙(经典、智能或低能耗)网络、dect网络、zigbee网络和/或wi-fi网络)提供。在一些实施例中,使用usb连接、蓝牙网络连接和/或dect连接来传输音频和/或数据。
26.在以下描述中,序数(例如第一、第二、第三等)可用作元素(即应用程序中的任何名词)的形容词。序数的使用不是暗示或创建元素的任何特定顺序,也不是将任何元素限制为仅是单个元素,除非明确公开,例如通过使用术语“之前”、“之后”、“单个”以及其他类似的术语。相反,序数的使用是为了区分名称相似的元素。例如,第一元素不同于第二元素,并且第一元素可以包含多于一个元素并且在元素的排序中在第二元素之后(或之前)。
27.在基于视频的演示或沟通系统(例如视频会议系统)中,例如,存在对用于在白板上自动检测和显示文本的改进技术的需要。例如,需要改进对白板文本的检测,以区别于白
板的空白区域,并且区别于摄像机视图中包括文本的其他物体,诸如电视或其他监视器、标志、海报等。白板文本的精确检测允许视频源(例如视频流)被控制,以仅显示白板的包括文本的所选择的部分(例如不包括白板的空白区域),从而增加在客户端设备上显示的文本的显示大小和/或清晰度。
28.在一个方面,提供了一种用于识别和显示白板文本的系统。该系统可以包括:视频摄像机系统和控制器,该视频摄像机系统布置在演示环境中,该控制器被通信地耦合到视频摄像机系统并且被配置为控制来自视频摄像机系统的视频源。该系统还可以包括一个或多个客户端设备,该客户端设备远离演示环境并且被配置为显示由控制器所控制的视频流。
29.视频摄像机系统可以包括单个摄像机或多个摄像机,每个摄像机被配置为捕捉视频图像,这些视频图像显示包括至少一个白板的环境,例如视频会议室或包括使用白板的至少一个活跃说话者(例如,演示者)的其他房间,用于将信息传达给至少一个远程客户端,例如视频会议中的其他参与者。
30.在一些实施例中,视频摄像机系统可以包括在一个或多个方向上彼此间隔开的多个摄像机,以提供不同的视角。例如,视频摄像机系统可以包括容纳在共用外壳中的多个摄像机。可以设置或控制每个摄像机,以捕捉演示环境的整个区域,或者可以设置或控制每个摄像机,以捕捉演示环境的不同区域。此外,可以独立于每个其他摄像机控制(例如平移、倾斜和/或变焦)每个摄像机。
31.在一个实施例中,视频摄像机系统可以包括(a)第一摄像机,该第一摄像机被设置用于捕捉演示环境的整个区域,用于检测环境中的白板文本区域和/或活跃说话者,以及(b)第二摄像机,控制(例如,平移、倾斜和/或变焦)该第二摄像机,以捕捉环境的所选择的部分区域(包括白板文本区域和/或活跃说话者),用于与远程客户端通信的视频源.
32.控制器可以包括至少一个处理器、至少一个存储器或其他数据存储设备、以及可由至少一个处理器执行以执行本文公开的各种功能中的任一种功能的软件、固件或其他逻辑指令。控制器可以体现在单个计算机中,或者可以包括位于一起或彼此远离的多台计算机。
33.在一些实施例中,控制器位于演示环境中。例如,控制器和视频摄像机系统可以设置在位于(例如被配置为安装在)墙上或放置在演示环境中的桌子或书桌上的公共外壳中。在其他实施例中,控制器位于演示环境中,但位于与视频摄像机系统分开的外壳中。例如,控制器可以体现为附加设备,该附加设备被配置为经由有线或无线连接而连接到现有的视频摄像机系统。在其他实施例中,控制器位于远离演示环境的位置。例如,控制器可以设置在客户端设备中,该客户端设备远离演示环境并且经由互联网或其他合适的通信网络连接到视频摄像机系统。作为另一个示例,控制器可以远离视频摄像机系统和客户端设备这两者,其中,远程系统组件可以经由互联网或其他合适的通信网络互连。
34.客户端设备可以包括具有屏幕的任何计算机设备或被配置为显示从控制器接收的视频源的其他显示设备。例如,客户端设备可以包括一个或多个电视、监视器、台式计算机、膝上型计算机、平板电脑、智能手机、智能手表或被配置为显示视频源的任何其他设备。如上所述,在一些实施例中,控制器可以设置在客户端设备中。在这样的实施例中,控制器可以从视频摄像机系统接收包括演示环境的整个区域的视频图像流,并且生成仅包括完整
演示环境区域的相关部分的视频源,用于在客户端设备上显示,例如,演示环境区域的包括由控制器和/或在包含文本的白板区域附近的活跃说话者识别的包含文本的白板区域的所选择的部分。
35.控制器可以被配置为接收由视频摄像机系统的摄像机捕捉的一系列视频图像,分析一个或多个视频图像,以检测环境中的至少一个包含文本的区域,然后分析每个包含文本的区域,以确定相应的包含文本的区域是否为包含文本的白板区域。在识别出包含文本的白板区域之后,控制器可以选择包括所识别的包含文本的白板区域的视图区域,以供显示(在客户端设备处)。控制器被进一步配置为从由视频摄像机系统捕捉的视频图像生成视频源,用于在连接到控制器(经由互联网或其他合适的网络)的客户端设备处显示,并控制视频源,以显示包括含文本白板区域的所选择视图区域。
36.控制器可以使用任何合适的工具或算法来检测环境中的一个或多个包含文本的区域。例如,控制器可以利用文本检测工具,例如advancedeast(https://github.com/huoyijie/advancedeast)。在一个实施例中,控制器使用高速特征提取器,例如mobilenetv2。mobilenetv2(https://arxiv.org/abs/1801.04381)是一种轻量级网络架构,其使用深度卷积代替原始卷积层来过滤特征,这允许在移动设备或其他合适的平台上开发高效模型。另一个实施例使用vgg16工具进行特征提取。
37.控制器还可以使用任何合适的工具或算法来确定每个识别的包含文本的区域是否是白板的区域,例如,区别于电视/监视器、海报、标志等上的文本。例如,控制器可以利用mobilenetv2工具的深度学习模型,该模型已使用白板和非白板物体(例如,包括通常包含文本或以其他方式看起来类似于白板的物体)的图像集合进行训练。
38.在一些实施例中,控制器可以首先应用滤色镜,以消除具有非白色背景的任何包含文本的区域,使得每个剩余的包含文本的区域具有白色背景,然后,例如使用上面讨论的mobilenetv2工具的深度学习模型来确定每个白色背景的包含文本的区域是否是白板区域。滤色镜可以基于每个文本区域的亮度和饱和度的统计,来识别和去除非白色区域。使用滤色镜减少了要由深度学习模型分析的候选文本区域的数量,并且可以使用比使用深度学习模型的白板识别少得多的资源和/或成本。
39.为了控制在客户端设备上显示的视频源,控制器可以(a)控制一个或多个摄像机的光学参数,或(b)数字选择和控制视频图像的在客户端设备上显示的部分。关于第一选项,控制器可以例如控制每个摄像机执行物理平移、物理倾斜或光学变焦中的至少一者,以捕捉演示环境的包括包含文本的白板区域的所选择的区域和/或活跃说话者。在这样的实施例中,视频摄像机系统可以包括(a)第一摄像机,该第一摄像机继续捕捉演示环境区域,控制器可以使用该演示环境区域来检测白板文本区域和/或活跃说话者,以及(b)第二摄像机,由控制器控制(例如,平移、倾斜和/或变焦)该第二摄像机,以聚焦于包括白板文本区域的所选择的区域和/或活跃说话者,其中,将第二摄像机的视频源传送到远程客户端以供显示。
40.在一些实施例中,除了检测包含文本的白板区域之外,控制器还被配置为识别环境中的说话人(在本文中也称为活跃说话者),并自动选择用于显示的视图区域,包括(a)被识别的说话人的至少所选择的部分以及(b)包含文本的白板区域这两者。在一些实施例中,如果控制器识别出包含文本的白板区域和活跃说话者这两者,则控制器可以例如基于说话
者和白板文本之间的距离来确定是在所选择的区域中包括白板文本区域和活跃说话者这两者以供显示还是仅包括活跃说话者(而不包括白板文本区域)。例如,控制器可以被配置为确定检测到的说话者与白板文本区域之间的距离;将所确定的距离与所定义的阈值距离进行比较,并且仅当所确定的距离小于所定义的阈值距离时,才确定将白板文本区域包括在所选择的区域中以供显示。在图4a至4c中显示这些特征的示例,如下所述。
41.在一个实施例中,如果控制器识别出包含文本的白板区域和活跃说话者这两者,则控制器可以确定包括白板文本区域和检测到的说话者这两者的临时视图区域,并分析该临时视图区域,以确定是否显示白板文本区域和说话者这两者,或仅显示说话者。例如,控制器可以分析临时视图区域,以确定临时视图区域中的白板文本区域的文本大小或白板区域大小,然后可以基于白板文本区域的所确定的文本大小或白板区域大小,在临时视图区域(包括白板文本区域和说话者这两者)或仅包括说话者的视图区域之间进行选择。
42.控制器可以被配置为使用任何合适的输入数据和分析技术来识别演示环境中的活跃说话者。在一些实施例中,控制器可以通过分析来自视频摄像机系统的视频图像来检测活跃说话者。在其他实施例中,控制器可以单独或结合视频分析基于从一个或多个麦克风接收的声音数据来检测活跃说话者。在一个实施例中,该系统包括麦克风阵列,该麦克风阵列包括彼此间隔开和/或以不同方向布置的多个麦克风,并且控制器被配置为至少基于从麦克风阵列接收的声音数据自动检测活跃说话者。在一个实施例中,控制器可以包括任何系统和方法,并提供用于基于视频分析来检测和跟踪活跃说话者的任何功能,如在2010年5月18日提交的题为“automatic camera framing for videoconferencing”的美国专利号8,248,448中公开的,该美国专利的全部内容出于所有目的通过引用并入本文。
43.在另一个实施例中,控制器可以包括任何系统和方法,并且提供用于基于对由一个或多个麦克风检测到的超声信号和/或可听频谱中的声音的分析来检测和跟踪活跃说话者的任何功能,包括2007年10月15日提交的题为“ultrasonic camera tracking system and associated methods”的美国专利号8,249,298中公开的任何算法或技术,其全部内容实际上通过引用结合于此。
44.在另一个实施例中,控制器可以包括任何系统和方法,并且提供用于使用视频分析和麦克风信号分析(例如,检测到的超声信号和/或检测到的可听频谱中的声音)来检测和跟踪活跃说话者的任何功能。
45.在另一方面,提供了一种用于识别和显示白板文本的方法。收集由视频摄像机系统捕捉的一系列视频图像,其中,每个视频图像显示包括至少一个白板的环境。控制器分析该系列视频图像中的至少一个视频图像,以检测环境中的至少一个包含文本的区域。在检测到环境中的至少一个包含文本的区域后,控制器分析每个包含文本的区域,以确定相应的包含文本的区域是否为包含文本的白板区域。响应于确定第一包含文本的区域是包含文本的白板区域,控制器自动选择包括该包含文本的白板区域的用于显示的视图区域,从由视频摄像机系统捕捉的视频图像生成视频源,用于在远程客户端设备上显示,以及基于包括该包含文本的白板区域的所选择的用于显示的视图区域,控制视频源。
46.图2示出了根据本发明实施例的用于在客户端设备250上识别和显示白板文本的示例性系统200。系统200包括控制器202、包括一个或多个视频摄像机的视频摄像机系统204以及包括一个或多个麦克风的麦克风阵列206。视频摄像机系统204和麦克风阵列206位
于演示环境210中,该演示环境包括包含文本214的白板212、多个包含文本的非白板物体216a、216b和活跃说话者218。视频摄像机系统204被布置为捕捉演示环境210的视频图像。在220处指示由视频摄像机系统204捕捉的全帧。麦克风阵列206被布置成捕捉来自环境210的无线信号,包括超声信号(例如,来自活跃说话者218佩戴或携带的超声发射器)和/或可听频谱中的声音(例如,来自活跃说话者218的语音或其他音频),以及生成表示或者源自此类检测到的无线信号的信号并且向控制器202传送这些信号。由麦克风阵列206检测到的无线信号(包括超声信号、可听频谱中的声音和/或其他无线信号)在本文中被称为“声音信号”,并且表示或源自麦克风阵列206检测到的声音信号的从麦克风阵列206传送到控制器202的数据在本文中称为“声音数据”。
47.控制器202通过任何合适的有线或无线链路连接到视频摄像机系统204和麦克风阵列206,用于接收来自视频摄像机系统204和麦克风阵列206的视频和声音数据。控制器202也可以通过任何合适的有线或无线链路连接到客户端设备250,例如,经由网络240(例如,互联网或其他通信网络)。
48.控制器202可以与视频摄像机系统204和/或麦克风阵列206集成在单个设备外壳中,或者可以与视频摄像机系统204和麦克风阵列206分开,并且可以位于演示环境210中,或者设置在客户端设备250,或者可以远离演示环境210和客户端设备250。
49.控制器202可以被配置为提供本文讨论的任何控制器功能。控制器202可以包括白板识别单元230、说话者跟踪单元232和视频控制单元234。白板识别单元230包括用于检测包含文本的白板区域的硬件、软件和/或固件,例如以执行下面讨论的图3a所示的算法。在所示的示例中,白板识别单元230被配置为识别白板212上的文本214以及非白板物体216a和216b上的文本,然后分析这三个包含文本的区域中的每一个,以确定只有文本214在白板上。
50.说话者跟踪单元232包括硬件、软件和/或固件,用于基于从视频摄像机系统204接收到的视频图像和/或从麦克风阵列206接收到的声音数据来识别演示环境210中的活跃说话者218(或多个说话者)。例如,说话者跟踪单元232可以包括美国专利号8,248,448中公开的任何系统和方法,其全部内容实际上通过引用结合于此。
51.视频控制单元234包括硬件、软件和/或固件,用于选择环境210的区域以进行显示,并且基于所选择的用于显示的区域控制传送到客户端设备250的视频源。在所示的示例中,视频控制单元234选择包括所识别的白板文本区域214和所识别的活跃说话者218的区域260。为了控制视频源以在客户端设备250处显示所选择的区域260,视频控制单元234可以(a)控制视频摄像机系统204的光学参数(例如,光学平移、倾斜和/或变焦控制),或者(b)在数字上选择和控制在客户端设备250处显示的完整摄像机帧220的部分(例如,数字平移、倾斜和/或变焦)。可以在客户端设备250的屏幕或其他显示设备252上显示包括所选择的区域260的视频源。
52.图3a示出了根据本发明实施例的用于在客户端设备上识别和显示白板文本的示例性方法300。图3b、3c和3d是显示方法300中每个步骤的结果的示例性图像。例如方法300可以由图2所示的系统200的控制器202执行。
53.在步骤310,识别帧中的所有文本区域,例如,使用文本检测工具advancedeast(https://github.com/huoyijie/advancedeast)。图3b示出了在步骤310检测到的三个文
本区域中的每一个周围的框,包括白板上的第一文本区域、海报上的第二文本区域和电视上的第三文本区域。在一些实施例中,可以使用高速特征提取器,例如mobilenetv2(https://arxiv.org/abs/1801.04381),该提取器是使用深度卷积替换原始卷积层来过滤特征的轻量级网络架构。
54.在步骤320,将滤色镜应用于三个检测到的文本区域,以消除非白色背景上的文本区域。例如,滤色镜可以基于亮度和饱和度统计。在所示的示例中,滤色镜不包括电视文本区域,如图3c所示。
55.在步骤330,对每个剩余的白色背景文本区域执行白板识别分析,以确定每个区域在白板上。该步骤可以利用mobilenetv2(或其他合适的工具)的深度学习模型,该模型使用白板和非白板物体的图像集合进行训练,用于白板识别。在所示的示例中,白板识别分析不包括海报文本,仅留下白板文本区域,如图3d所示。
56.图4a、4b和4c示出了根据本发明示例实施例的用于三个不同场景的显示区域的示例性选择。图4a的示例性场景包括白板文本,但摄像机帧中没有活跃说话者。因此,所公开的系统和方法可以生成白板文本的放大视图(使用光学或数字变焦)的视频源。
57.图4b的示例性场景包括白板文本和非常靠近白板的活跃说话者。所公开的系统和方法可以确定活跃说话者和白板文本之间的距离小于阈值距离,并因此生成包括白板文本和至少活跃说话者的头部这两者的放大视图的视频源。
58.图4c的示例性场景包括白板文本和远离白板的活跃说话者。所公开的系统和方法可以确定活跃说话者和白板文本之间的距离超过阈值距离,从而生成仅说话者的放大视图的视频源,不包括白板。
59.图5示出了根据本发明的实施例的用于在包括使用白板上的文本来演示信息的活跃说话者(人)的示例性环境中在客户端设备上识别和显示白板文本的示例性方法500。方法500的全部或部分可以例如由图2所示的系统200或类似的系统执行。在该示例中,系统200包括:连接到视频摄像机204的控制器202;和包括多个麦克风的麦克风阵列206。因此,下面提供的方法500的描述可以参考图2得到最好的理解。
60.在502,视频摄像机204和麦克风阵列206可以生成视频和声音信号并将其传送到控制器202。视频摄像机204可以生成演示环境210的一系列视频图像并将其传送给控制器202,演示环境包括包含文本214的白板212、多个包含文本的非白板物体216a、216b和活跃说话者218。例如,每个视频图像可以具有在220处指示的帧。同时,麦克风阵列206可以生成并且向控制器202传送表示环境210中的声音的声音信号,包括超声波信号和/或来自活跃说话者218的可听声音和/或其他音频(例如,来自电视216b的音频、环境噪声等)。麦克风阵列206的多个麦克风可以彼此间隔开(在共同的外壳内或在不同的间隔开的外壳中)和/或以不同的角度定向,使得由多个麦克风生成的声音信号可以用于确定噪声源的位置,例如,以确定活跃说话者218的位置(例如,使用声源定位技术)。
61.在504,控制器202可以分析从摄像机204接收的视频图像,以检测视频图像的视频帧220中的每个包含文本的区域,包括海报文本216a、在电视216b上显示的文本和白板212上的文本区域214。在一些实施例中,控制器202可以使用文本检测工具,例如,advancedeast(https://github.com/huoyijie/advancedeast),和/或高速特征提取器,例如,mobilenetv2(https://arxiv.org/abs/1801.04381),如上所述。
62.在检测到视频帧220中的多个包含文本的区域之后,控制器202可以分析每个包含文本的区域,以确定相应的包含文本的区域是在白板上还是在非白板物体上。例如,在506,控制器202可以利用滤色镜来消除具有非白色背景的每个包含文本的区域,使得每个剩余的包含文本的区域具有白色背景,并且在508,控制器202可以确定具有白色背景的每个剩余的包含文本的区域是否是白板区域。
63.例如,在506处应用的滤色镜可以基于亮度和饱和度统计分析每个文本区域。在图2所示的示例中,滤色镜可以消除电视文本区域,但留下白色背景海报文本区域216a和白板文本区域214。在508处对每个剩余的白色背景文本区域(在该示例中,海报文本区域216a和白板文本区域214)的分析可以利用深度学习模型,例如mobilenetv2模型,该模型使用白板和非白板物体(存储在控制器202可访问的存储器中)的图像集合进行训练,用于白板识别,或利用任何或其他合适的分析工具。在所示的示例中,白板识别分析不包括海报文本区域216a,仅留下白板文本区域214。
64.除了识别白板文本区域214之外,控制器202还可以自动检测在视频帧220中的活跃说话者218的存在和/或位置(例如,与白板文本识别同时、在白板文本识别之前、在白板文本识别之后或以与白板文本识别交替的方式)。在一个实施例中,在510,控制器210可以分析(a)来自摄像机204的视频图像以及(b)来自麦克风阵列206的声音信号这两者,以检测活跃说话者218在帧220中的存在和/或位置。例如,控制器202可以通过:(a)对来自摄像机204的视频图像应用合适的物体识别和/或运动检测算法,例如,包括美国专利号8,248,448中公开的任何算法或技术,其全部内容实际上通过引用结合于此,以及(b)对来自麦克风阵列206的多个麦克风的声音信号应用基于音频的位置检测算法,例如,包括2007年10月15日提交的题为“ultrasonic camera tracking system and associated methods”的美国专利号8,249,298中公开的任何算法或技术,其全部内容实际上通过引用结合于此,来检测、定位和/或跟踪活跃说话者218。
65.控制器202然后可以至少基于(a)在帧220中是否存在活跃说话者218,(b)活跃说话者218的位置(如果存在的话)和/或(c)所识别的白板文本区域214的位置和/或大小,选择要由客户端设备250显示的视图区域,例如,完整视频图像帧220的子集。在一个实施例中,控制器202可以基于一个或多个定义的视图选择因素,确定是否(a)选择仅包括白板文本区域214但不包括活跃说话者的视图区域(例如,如果没有检测到活跃说话者),(b)选择包括白板文本区域214和检测到的活跃说话者218(或至少说话者的头部)这两者的视图区域,或(c)选择包括检测到的活跃说话者218(或至少说话者的头部)但不包括白板文本区域214的视图区域。
66.视图选择因素可以包括以下各项中的一项或多项,例如,(a)帧220中是否存在活跃说话者218,(b)白板文本区域214和活跃说话者218之间的所确定的距离(例如,每个物体的所定义的中点之间的距离,或白板文本区域214的最近边缘或点与活跃说话者218之间的距离,或白板文本区域214的最远边缘或点与活跃说话者218之间的距离,(c)包括白板文本区域214和活跃说话者218这两者的最小视图区域的大小或缩放因子,(d)白板文本区域214和活跃说话者218填充的视图区域在包括白板文本区域214和活跃说话者218这两者的最小视图区域中的百分比,(e)在包括白板文本区域214和活跃说话者218这两者的最小视图区域中的白板文本的所确定的大小、清晰度、焦点或其他质量,或任何其他合适的因素。
67.在一个实施例中,在512,控制器202可以首先确定是否在环境210中检测到活跃说话者218。如果不是,则在514,控制器202可以选择包括检测到的白板文本区域214的最小视图区域以及白板文本区域214周围的所定义的缓冲区,例如,如图4a的示例性视图中所示。
68.或者,如果控制器202在环境210中检测到活跃说话者218,则该方法可以进行到步骤516-522,以选择包括活跃说话者218(或其至少一部分)的视图区域,并且如果合适,选择白板文本区域214。
69.在所示的实施例中,在516,控制器202可以确定活跃说话者218的最近点与白板文本区域214之间的距离,例如,由像素的数量或视频帧220的全横向宽度的百分比所定义的。在518,控制器202可以将确定的距离与定义的阈值距离进行比较。如果在活跃说话者218和白板文本区域214之间确定的距离小于定义的阈值距离,则在520,控制器202使用用于定义所选择的区域的任何规则,来选择包括白板文本区域214和活跃说话者218(或至少说话者的头)这两者的视图区域。例如,控制器202可以选择包括完整白板文本区域214、活跃说话者头部218的最小视图区域以及围绕白板文本区域214和说话者218头部的所定义的缓冲区。
70.如果在活跃说话者218和白板文本区域214之间确定的距离大于或等于定义的阈值距离,则在522,控制器202使用用于定义所选择的区域的任何规则,来选择包括活跃说话者218(或至少说话者的头部)的视图区域,不包括白板文本区域214。例如,控制器202可以选择包括说话者的头部和肩部的最小视图区域以及围绕头部和肩部的所定义的缓冲区。
71.在选择要在远程客户端设备250处显示的视图区域之后,控制器202可以在524处基于所选择的视图区域生成视频源,并且在526处将视频源传送到客户端设备250。然后,每个客户端设备250可以在相应的客户端设备250的显示屏252上显示视频源,该视频源显示了所选择的视图区域。
72.根据特定实施例,控制器202可以以各种方式基于在524处所选择的视图区域生成视频源。在一个实施例中,控制器202可以从视频摄像机204接收全帧图像并执行数字平移、倾斜和/或变焦功能,以选择(即,在数字上聚焦于)所选择的视图区域,例如,包括活跃说话者218或包括活跃说话者218和白板文本区域214这两者,如上所述。在另一个实施例中,控制器202可以控制视频摄像机204执行光学平移、倾斜和/或变焦功能,以聚焦于所选择的视图区域,使得摄像机204捕捉的视频帧与所选择的视图区域相匹配。
73.该方法可以返回到502,以动态调整所选择的视图区域,例如,根据活跃说话者218的移动和/或白板文本区域214中的变化(例如,当说话者在白板上添加更多文本或擦除文本时)。
74.尽管本文描述和说明了本发明的示例性实施例,但是应当理解,这些实施例仅仅是说明性的,并且在不背离本发明的精神和范围的情况下,可以对这些实施例进行修改。本文描述的动作可以是计算机可读和可执行指令,这些指令可以由一个或多个处理器实现并存储在计算机可读存储器或物品上。计算机可读和可执行指令可以包括例如应用程序、程序模块、例程和子例程、执行线程等。在某些情况下,并非所有动作都可能需要以本文描述的方法来实施。
75.诸如“组件”、“模块”、“单元”和“系统”之类的术语旨在涵盖硬件、软件、固件或其任意组合。例如,系统或组件可以是进程、在处理器上执行的进程或处理器。此外,功能、组
件或系统可以位于单个设备上或分布在多个设备上。所描述的主题可以被实现为使用标准编程或工程技术以产生软件、固件、硬件或其任意组合的装置、方法或制品,以控制一个或多个计算设备。
76.因此,本发明的范围旨在仅根据可以修改的以下权利要求来定义,每个权利要求都作为本发明的实施例明确并入本具体实施方式中。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1