具体实施方式
以下将参照附图更充分地描述本发明实施例,在附图中示出了本发明实施例。然而,可以用很多不同形式来实施本发明,并且本发明不应理解为受限于在此所阐述的实施例。在全文中,使用相似的标号表示相似的元件。
在此所使用的术语仅用于描述特定实施例的目的,而并非意欲限制本发明。如在此所使用的那样,单数形式的 “一个”、“这个”意欲同样包括复数形式,除非上下文清楚地另有所指。还应当理解,当在此使用时,术语“包括”指定出现所声明的特征、整体、步骤、操作、元件和/或组件,但并不排除出现或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其群组。
除非另外定义,否则在此所使用的术语(包括技术术语和科学术语)具有与本发明所属领域的普通技术人员所共同理解的相同意义。在此所使用的术语应解释为具有与其在该说明书的上下文以及有关领域中的意义一致的意义,而不能以理想化的或过于正式的意义来解释,除非在此特意如此定义。
以下参照示出根据本发明实施例的方法、装置(系统)和/或计算机程序产品的框图和/或流程图描述本发明。应理解,可以通过计算机程序指令来实现框图和/或流程图示图的一个方框以及方框的组合。可以将这些计算机程序指令提供给通用计算设备、专用计算设备的处理器和/或其它可编程数据处理装置,使得经由计算设备处理器和/或其它可编程数据处理装置执行的指令创建用于实现框图和/或流程图块中所指定的功能/动作的方法。
相应地,还可以用硬件和/或软件(包括固件、驻留软件、微码等)来实施本发明。更进一步地,本发明可以采取计算机可使用或计算机可读存储介质上的计算机程序产品的形式,其具有在介质中实现的计算机可使用或计算机可读程序代码,以由指令执行系统来使用或结合指令执行系统而使用。在本发明上下文中,计算机可使用或计算机可读介质可以是任意介质,其可以包含、存储、通信、传输、或传送程序,以由指令执行系统、装置或设备使用,或结合指令执行系统、装置或设备使用。
举例说明的操作方法的细节方面的各种变化都是可能的,而不脱离下述权利要求的范围。例如,图解说明的流程图步骤或过程步骤可按照与这里公开的顺序不同的顺序执行识别的步骤。另一方面,一些实施例可以结合这里被描述成独立步骤的活动。类似地,取决于实现所述方法的具体操作环境,一个或多个说明的步骤可被省略。
另外,与流程图或过程步骤相应的动作可用可编程控制装置实现,所述可编程控制装置执行组织成在非暂时性可编程存储装置上的一个或多个程序模块的指令。可编程控制装置可以是单个计算机处理器,专用处理器(例如,数字信号处理器,“DSP”),用通信链路耦接的多个处理器,或者定制设计的状态机。定制设计的状态机可被嵌入诸如集成电路之类的硬件装置中,所述集成电路包括(但不限于)专用集成电路(“ASIC”)或者 现场可编程门阵列(“FPGA”)。适合于有形地包含程序指令的非暂时性可编程存储装置(有时称为计算机可读介质)包括(但不限于):磁盘(硬盘,软盘和可拆卸磁盘)和磁带;光学介质,比如CD-ROM和数字视频光盘(“DVDs”);和半导体存储器装置,比如电可编程只读存储器(“EPROM”),电可擦可编程只读存储器(“EEPROM”),可编程门阵列和闪速装置。
下面将结合附图,参照本发明的实施例描述本发明。
A.视频会议端点
在图1A的平面图中,端点10的一种布置利用视频会议装置80,视频会议装置80包括摄像机底座90和可拆卸地电气且机械连接到摄像机底座90的摄像机50B,摄像机底座90具有与之集成的麦克风阵列60A-B和一部摄像机50A。所有或一些必需的视频会议组件,包括音频和视频模块、网络模块等可被置于与摄像机底座90耦接的独立视频会议单元95中。麦克风箱28可被放置在会议桌上,不过可以使用其它种类的麦克风,比如吸顶式麦克风,个人桌式麦克风等等。麦克风箱28与视频会议装置80通信连接,捕捉视频会议的音频。对装置80来说,装置80可被合并到显示器和/或视频会议单元(未示出)中,或者安装在之上。
应注意,麦克风阵列60A-B在本发明中并不是必要的。在一些实施例中,没有麦克风阵列60A-B系统也可以运转良好。
第一部摄像机50A可以是固定的或者房间画面摄像机,第二部摄像机50B可以是受控的或者人物画面摄像机。基本上,摄像机50A用于分析的目的,但在少数情况下也可以用于输出,例如,在视频会议开始时、结束时,或者某些取景画面不能适当捕捉时。如果摄像机50A的分辨率和成像质量不足以高得来在显示器上清楚地显示画面,则优选地不要输出从该摄像机捕捉的视频。例如,通过利用房间画面摄像机50A,端点10拍摄房间的视频,或者至少拍摄房间的一般应包括所有的视频会议与会者以及一些周围环境的宽画面或拉远的画面。
相反,端点10利用人物画面摄像机50B,以紧凑的或者拉近的画面拍摄一位或多位特定与会者,最好一位或多位当前发言人的视频。于是,人物画面摄像机50B尤其能够实现摇移、俯仰和推拉。摄像机50B捕捉的视频被输出用于本地显示或者输出到远程端点。
在一个实施例中,人物画面摄像机50B是可操纵的云台(PTZ)摄像机,而房间画面摄像机50A是网络摄像机。因而,人物画面摄 像机50B能够被操纵,而房间画面摄像机50A能够用电子方式操作,以改变其缩放,而不是可操纵的。不过,摄像机底座90可以利用摄像机的其它安排和种类。例如,任务画面摄像机50B可以智能地操作自己,则摄像机底座90的多数功能可以不用。这样,摄像机底座不但可以支持传统的PTZ摄像机,也可以支持智能摄像机。
图1B表示端点10的另一种布置的平面图。这里,端点10具有安装在房间四周的几个装置80/81,并且具有在会议桌上的麦克风箱28。和前面一样,一个主装置80包括摄像机底座90和可拆卸地电气且机械连接到摄像机底座90的摄像机50B,摄像机底座90具有与之集成的麦克风阵列60A-B和一部摄像机50A。和前面一样,所有或一些必需的视频会议组件,包括音频和视频模块、网络模块等可被置于与摄像机底座90耦接的独立视频会议单元95中。其它装置81与主装置80耦接,并可被布置在视频会议环境的侧面。
辅助装置81至少具有人物画面摄像机50B,不过它们可以具有包括房间画面摄像机50A的摄像机底座,麦克风阵列60A-B,或者这两者,从而能够与主装置80相同。不管怎样,这里说明的音频和视频处理都能够识别在该环境中,哪部人物画面摄像机50B具有发言人的最佳画面。随后,可从在房间四周的人物画面摄像机50B中,选择对发言人来说最佳的人物画面摄像机50B,以致正面画面(或者最接近正面画面的画面)可被用于会议视频。
在图1C中,端点10的另一种布置包括视频会议装置80和远程发射器64。这种布置可用于跟踪在演讲期间移动的发言人。同样地,装置80包括摄像机底座90和可拆卸地电气且机械连接到摄像机底座90的摄像机50B,摄像机底座90具有与之集成的麦克风阵列60A-B和一部摄像机50A。所有或一些必需的视频会议组件,包括音频和视频模块、网络模块等可被置于与摄像机底座90耦接的独立视频会议单元95中。不过在这种布置中,麦克风阵列60A-B响应从发射器64发出的超声波,以跟踪主持人。按照这种方式,当主持人移动时,并且当发射器64继续发射超声波时,摄像机底座90能够跟踪主持人。除了超声波之外,麦克风阵列60A-B还能够响应语音,以致 除了超声波跟踪之外,摄像机底座90还能够利用语音跟踪。当摄像机底座90自动检测到超声波时,或者当摄像机底座90被人工配置,以便进行超声波跟踪时,摄像机底座90能够按照超声波跟踪模式工作。
如图所示,发射器64可以是由主持人佩戴的组件。发射器64可具有产生超声波音调的一个或多个超声换能器66,并且可具有集成的麦克风68和射频(RF)发射器67。使用时,当集成的麦克风68获得主持人发言时,发射器单元64被启动。另一方面,主持人可人工启动发射器单元64,以致向RF单元97传送RF信号,指示该特定主持人要被跟踪。在美国专利公报No.2008/0095401中公开了与基于超声波的摄像机跟踪有关的细节,该专利在此整体引为参考。
视频会议装置
首先讨论按照本发明的视频会议装置的细节。如图2A中所示,视频会议装置80包括摄像机底座90和可拆卸地电气且机械连接到摄像机底座90的摄像机50B,摄像机底座90具有与之集成的麦克风阵列60A-B和一部摄像机50A。如图所示,摄像机底座90上置有具有几个麦克风62A的水平阵列60A和具有几个麦克风62B的垂直阵列60B。可选地,仅有具有麦克风62A的水平阵列60A也是可行的。在这种情况下,麦克风能够定位与会者的水平位置,而对视频的人脸分析能够帮助定位与会者的垂直位置。当需要节省空间时,这样的实施例具有很大价值。如图所示,阵列60A-B都可具有三个麦克风62A-B,不过任何一个阵列60A-B可具有数目与描述的数目不同的麦克风。
第一部摄像机50A是用来获得视频会议环境的宽画面或拉远的画面的房间画面摄像机。它安装在摄像机底座90的外壳上。第二部摄像机50B是用来获得视频会议与会者的紧凑画面或者拉近的画面的人物画面摄像机。
摄像机50B可以可拆卸地且可替换地通过适配器或连接器附着到摄像机底座90。该适配器可以形成摄像机50B和摄像机底座90之间的机械连接,以使得摄像机50B的位置由摄像机底座90支持。机械连接可以包括锁定机制以防止摄像机50B从摄像机底座90上脱开,诸如在摄像机底座90移动的过程中。该适配器可以使用例如传统的总线连接器、带状连接器、无线连接或任意其它可以契合或配合机械连接的其它配套连接形成摄像机50B和摄像机底座90之间的电连接,以使得机械和电气连接同时形成。机械连接可以被配置,以形成摄像机50B的机械配套,并且摄像机底座90在摄像机50B和摄像机底座90的电气连接组件相互联系之前匹配电气连接组件。该电气连接例如可以承载音频数据或信号,视频数据或信号、控制数据或信号,以及供电。
摄像机50B可以包括一个或多个马达、伺服电机或其它电子机械致动器来控制摄像机50B的操作。这可以包括例如,摄像机缩放、对焦和方向的控制,诸如摄像机50B的摇移和俯仰。摄像机可以响应于接收的控制信号来操作,以使得当附着到摄像机底座90时,摄像机50B可以由在摄像机底座90中执行的控制算法控制。
进行视频会议的所有或部分必需组件,包括音频和视频模块,网络模块,摄像机控制模块等等可以包括在耦接到摄像机底座90的独立视频会议单元95中。另一方面,所有或一些必需的视频会议组件可被置于摄像机底座90中使它称为视频会议端点。。因而,摄像机底座90可以是具有摄像机50A,麦克风阵列60A-B和其它有关组件的独立单元,而视频会议单元95负责所有 的视频会议功能。当然需要时,装置80和单元95可被结合成一个单元。
公开的如图2B中所示的装置80可具有图2A所示的两套装置80级联在一起,而不是具有如图2A的一个摄像机50A和一个摄像机底座90。另一方面,如图2C中所示,装置80可包括两个级联在一起的摄像机底座90和一个连接其上的人物画面摄像机50B。因此,摄像机底座可拥有所有其它需要的电子和信号处理组件,并且能够支持一个或多个人物画面摄像机50B和一个或多个摄像机底座90之间的协作。
尽管装置80被表示成具有被设置成与摄像机底座90附近的一个摄像机50B,不过摄像机50B可以完全与摄像机底座90分离。另外,摄像机底座90可被配置成支持另外的摄像机,而不仅仅是两部摄像机。这样,用户能够安装能够与摄像机底座90无线连接并被布置在房间四周的其它摄像机,以致摄像机底座90总是能够选择发言人的最佳画面。
图3简要表示可为图2A-2C的摄像机底座90的一部分的一些例证组件。如图所示,摄像机底座90包括麦克风阵列60A-B,控制处理器110,现场可编程门阵列(FPGA)120,音频处理器130和视频处理器140。如前所述,摄像机底座90可以是具有与之集成的一部摄像机50A的集成单元(参见图2A),或摄像机50A可以是具有它们自己的组件并且连接到摄像机底座90的独立单元。另外,一个或两个摄像机底座90可以连接到一个或两个人物画面摄像机50B。
工作期间,FPGA120捕捉来自摄像机50A的视频输入,产生给视频会议单元95的输出视频,并把输入视频发给视频处理器140。FPGA120还可比例缩放和合成视频和图形覆盖图。
可以是数字信号处理器(DSP)的视频处理器140捕捉来自FPGA120的视频,并负责运动检测,面部检测和其它视频处理,以帮助跟踪发言人。如下更详细所述,例如,视频处理器140可以使用面部检测算法找出每个脸的位置,并随后基于该位置为每个脸生成帧信息以及一些具体的策略,这将在后面更详细地讨论。此外,视频处理器140可对从人物画面摄像机50B捕捉的视频执行运动检测算法,以检查由人脸检测算法找到的候选发言人位置的当前画面中的运动。
可以是数字信号处理器的音频处理器130捕捉来自麦克风阵列60A-B的音频,并进行音频处理,包括回声消除,音频滤波,和来源跟踪。源跟踪结果可以与视频处理器140的面部检测结果结合使用来对人物画面取景,这将在下面详细讨论。音频处理器130还负责切换摄像机画面,检测会话模式,和这里公开的其它用途的规则。
可以是通用处理器(GPP)的控制处理器110负责与视频会议单元95的通信,并负责摄像机底座90的摄像机控制和全部系统控制。例如,控制处理器110控制人物画面摄像机的组件的摇移-俯仰-推拉通信。
C.控制方案
在了解上面说明的视频会议装置和组件的情况下,下面讨论公开的摄像机底座90的操作。首先,图4A表示公开的摄像机底座90用于进行视频会议的控制方案150。如前所述,在视频会议期间,控制方案150利用视频处理160,或者视频处理160和音频处理170控制摄像机50B的操作。处理160和170可以单独进行,或者结合在一起进行,以增强摄像机底座90的操作。尽管在下面进行了简要说明,不过各种音频和视频处理技术中的几种技术将在后面更详细地讨论。
简要地,视频处理160可利用离摄像机50A的焦距来确定到与会者的距离,并且可以利用以颜色,运动和面部识别为基础的基于视频的技术来跟踪与会者。于是如图所示,视频处理160可以利用运动检测,肤色检测,面部检测和其它算法来处理摄像机50B的视频和控制操作。在视频处理160中,还能够利用在视频会议期间获得的记录信息的历史数据。 用于人物画面摄像机50B的优化的摄像机参数,例如增益、光圈等可以基于视频处理160中生成的取景画面来计算,并以控制信号的形式发送到人物画面摄像机50B来配置它。此外,可以基于生成的取景画面在视频处理160中在图像输出显示之前智能地对其进行后处理。
对音频处理170来说,音频处理170利用借助麦克风阵列60A-B的话音跟踪。为了提高跟踪准确性,音频处理170能够利用本领域中已知的许多滤波操作。例如,当进行话音跟踪时,音频处理170最好进行回声消除,以致不会因端点的扬声器仿佛是主发言人似地拾取来自所述扬声器的耦合声音。音频处理170还利用滤波从语音跟踪中消除非语音音 频,和忽略源于反射的较大声音频。
音频处理170可以利用来自另外的音频线索的处理,比如利用桌面麦克风元件或麦克风箱(28;图1A-B)。例如,音频处理170能够进行语音识别,以识别发言人的语音,并且能够确定视频会议期间话音中的会话模式。在另一个例子中,音频处理170能够从独立的麦克风箱(28)获得音源的方向(即,摇移),并将其与借助麦克风阵列60A-B获得的位置信息结合。由于麦克风箱(28)可具有沿着不同方向布置的几个麦克风,因此能够确定音源相对于这些方向的位置。
当某位与会者最初发言时,麦克风箱(28)能够获得该与会者相对于麦克风箱(28)的方向。在映射表等中,所述方向可被映射到利用阵列(60A-B)获得的与会者的位置。在稍后某一时候,只有麦克风箱(28)可检测到当前发言人,以致只能获得其方向信息。不过,根据映射表,摄像机底座90能够利用映射信息操纵人物画面摄像机50B定位当前发言人的位置(摇移,俯仰,推拉坐标),以便利用摄像机对该发言人取景。
如果所有的与会者(优选地在一个时间限之后)离开,摄像机底座90将生成控制信号关闭或休眠人物画面摄像机50B。视频会议装置80并不太费电,它能够不断地记录视频和/或音频来基于某些规则检测视频会议的意图,并生成控制信号来打开或者唤醒人物画面摄像机50B。这同样也适用于视频会议系统。
D.操作概述
在给出该概括的控制方案的情况下,下面讨论图4B中的,所公开端点在视频会议期间的操作的更详细过程180A。当开始视频会议时,摄像机底座90捕捉视频(方框181),通常,摄像机50B被操纵来输出视频会议中的包含物的当前画面(方框181)。一般来说,在视频会议开始时,房间画面摄像机50A对房间取景,最好调整房间画面摄像机50A的摇移,俯仰和推拉,以包括所有与会者(如果可能的话)。另一方面,如果摄像机50A的清晰度高、画面质量好,它自己可以直接输出当前画面。
摄像机底座90可以采用两种控制逻辑策略。其中一种是仅使用来自房间画面摄像机50A的房间画面上的面部检测结果进行小组的跟踪,而另一种是使用来自房间画面摄像机的房间画面上的面部检测结果结合来自麦克风阵列60A-B的音频源跟踪结果的活跃发言人跟踪。
小组跟踪策略适用于参与视频会议的人员数量相对少的情况,而活跃发言人跟踪策略适用于参与视频会议的人员数量相对多的情况。优选地,摄像机底座90中的控制处理器110可根据来自房间画面摄像机50B的房间画面上的面部检测结果对包括视频会议中所有与会者的区域执行判断(方框184)。当执行判断的时候可以应用区域阈值。例如,阈值可以是房间画面的一半。在包括视频会议所有与会者的区域不满足条件(方框185)或与会者选择重新设置策略并在其之间切换(187)的情况下,这两种跟踪策略可以相互切换。在任一事件中,摄像机底座90确定是否将一种策略切换到另一种(判定240),从而应用当前策略还是改变策略(242)。
I. 活跃发言人跟踪
下面讨论图4C中的,所公开摄像机底座在视频会议期间的操作的更详细过程180B。
随着视频会议的进行,摄像机底座90监控关于几个发生的事情之一的捕捉音频(方框186)。当这样做时,摄像机底座90利用各种判定和规则来管理摄像机底座90的行为,和确定哪部摄像机50A-B为会议视频进行输出。对于给定的实现,可按照任意特定的方式安排和构成所述各种判定和规则。由于一种判定会影响另一种判定,一种规则会影响另一种规则,因此可不同于图4C中所述地安排所述判定和规则。
1. 一位发言人
在视频会议中的某一时刻,房间中的近端与会者之一开始发言,端 点10确定有一位明确的发言人(判定190)。如果有一位发言人,那么摄像机底座90应用各种规则191,确定是否把摄像机底座90输出的当前画面切换成另一个画面(判定188),从而输出当前画面(方框182),或者改变画面(方框189)。
例如,在一位与会者发言的情况下,摄像机底座90指令人物画面摄像机50B对该发言人取景(最好用“头部和肩部”特写镜头)。另外,摄像机底座90最好要求在发言人最初开始发言之后,和在摄像机底座90实际移动人物画面摄像机50B之前,过去等待时期。这能够避免频繁地移动摄像机,尤其是在当前发言人只简要发言时。
考虑了准确性,摄像机底座90可利用多种算法定位和取景发言人,这里更详细地说明其中的一些算法。一般来说,通过分析用麦克风阵列60A-B捕捉的音频,摄像机底座90能够估计当前发言人的方位角(bearing angle)和目标距离。利用面部识别技术,能够调整摄像机50B的缩放系数,以致来自人物画面摄像机50B的头部镜头始终如一。可以使用这些技术和其它技术。
2. 无发言人
在视频会议中的某些时候,房间中的与会者都未发言,摄像机底座90确定没有明确的发言人(判定192)。这种判定可以在视频会议环境中,检测到最后的话音音频之后过去一定量的时间为基础。如果没有当前发言人,那么摄像机底座90应用各种规则193,确定是否把摄像机底座90输出的当前画面切换成另一个画面(判定188),从而输出当前画面(182)或改变画面(189)。
例如,输出的当前画面可以是来自人物画面摄像机50B的、最近发言的与会者的拉近画面。尽管该与会者已停止发言,不过摄像机底座90可决定保持该画面,或者切换到来自房间画面摄像机50A的拉远的画面。决定是否切换画面可取决于在一定时间内,其它与会者是否开始发言,或者在一定时间内,某位近端或远端与会者开始发言。换句话说,一旦在拉近的画面中被取景的近端与会者停止发言,在远端的与会者可能开始持 续较长时间地发言。在这种情况下,摄像机底座90可从拉近的画面切换到包括所有与会者的房间镜头。
3. 新的或者先前的发言人
在视频会议中的某些时候,新的或者先前的发言人开始发言,摄像机底座90判定是否有新的发言人或者先前的发言人(判定194)。新的或者先前的发言人的判定可以来自确定视频会议环境中的不同音源的位置的麦克风阵列60A-B的话音跟踪为基础。当通过跟踪定位某个音源时,摄像机底座90能够把其确定为新的或者先前的发言人。另一方面,新的或者先前的发言人的判定可以检测发言人的语音特性的语音识别为基础。
随着时间的过去,摄像机底座90能够记录在视频会议环境中发言的与会者的位置。可以使这些记录的位置与摄像机坐标(例如,摇移,俯仰和推拉)相关联。摄像机底座90还可记录来自被定位与会者的话音的特性,与会者发言的次数和时间,和其它历史数据。摄像机底座90又可根据规则和判定,利用该历史数据判定是否,何时,何处和如何把摄像机50B对着与会者。
无论如何,摄像机底座90应用各种规则195,判定是否把当前画面切换成另一个画面(判定188),从而输出当前画面(182)或者改变画面(189)。例如,即使有新的或者先前的发言人,在该发言人已讲话一定时间之前,摄像机底座90可不切换到该发言人的拉近画面。这可避免在与会者和宽镜头之间不必要地跳转摄像机画面。
4. 近端对话
在视频会议中的某些时候,两位以上的发言人可能在近端大约同时地相互谈话。此时,摄像机底座90能够判定是否正在发生近端对话或者音频交换(判定196)。例如,近端的多位与会者可能同时相互交谈或者发言。如果所述与会者进行对话,那么摄像机底座90最好同时拍摄对话双方的视频。如果与会者未进行对话,一位与会者只是在另一位与会者之后简短地插嘴,那么摄像机底座90最好保持主要发言人的当前画面。
响应近端对话,人物画面摄像机50B可对两位发言人取景,拍摄视频。另一方面,人物画面摄像机50B可拍摄一位发言人的拉近画面,同时房间画面摄像机50A被指令拍摄另一位发言人的拉近画面。摄像机底座90 的合成软件随后能够把这两个视频馈送放入合成布局中,以便输出给远端,或者摄像机底座90能够根据当前发言人,在要输出哪个摄像机的视频之间切换。在当不止两位与会者在近端谈话的其它情形下,摄像机底座90可改为切换到包括所有与会者的小组画面或房间画面。
不管怎样,摄像机底座90能够利用多种规则来确定何时发生近端对话,和近端对话何时结束。例如,随着视频会议的进行,摄像机底座90可确定在相同的两位与会者(摄像机位置)之间,指定的当前发言人已更替,以致在第一时间范围(例如,最后的10秒左右)内,每位与会者至少两次是当前发言人。当确定了这种情况时,在第三位发言人变成当前发言人,或者所述两位发言人之一持续第二时间范围(例如,15秒左右)以上,一直是唯一的发言人之前,摄像机底座90最好指令人物画面摄像机50B至少对这两位与会者取景。
为了帮助进行判定,摄像机底座90最好保存频繁发言的发言人,他们的位置,和他们是否倾向于相互交谈的指示。如果在刚刚结束一个对话后的一定时间(例如,5分钟)内,频繁发言的发言人开始后一个对话,那么一旦第二位发言人开始在对话中说话,摄像机底座90就可直接返回过去使用的先前的对话取景。
作为另一种考虑,摄像机底座90能够确定对话中的发言人之间的视角。如果他们被大于45°左右的视角隔开,那么完成人物画面摄像机50B的对准和拉远所用的时间会大于期望的时间。在这种情况下,摄像机底座90可改为切换到房间画面摄像机50A,以拍摄房间的宽画面,或者对话中的与会者的小组画面,并且在摄像机50A可以输出用于显示的高质量视频的情况下输出它。
5. 远端对话
在视频会议中的某些时候,近端与会者之一可能正在和一位远端与会者对话,摄像机底座90确定正在进行远端对话或者音频交换(判定198),并应用某些规则(199)。例如,当近端发言人参加与远端发言人的会话时,近端发言人通常停止讲话,以倾听远端发言人。摄像机底座90会把这种情况识别成与远端的对话,并保持近端与会者的当前人物画面,而不是把这种情况识别成等同于没有近端发言人并切换到房间画面或小组画面。
为此,摄像机底座90可利用借助视频会议单元95,从远端获得的音频信息。所述音频信息可指示在会议期间,从远端检测到的话音音频的持续时间和频率。在近端,摄像机底座90可获得话音的类似持续时间和频率,并把其与远端音频信息相关。根据所述相关,摄像机底座90判定近端与会者在与远端对话,从而当近端发言人停止讲话时,摄像机底座90不切换到房间画面或小组画面,而不管在近端房间中有多少其他与会者。
II. 小组跟踪
下面讨论图4D中的,所公开摄像机底座在视频会议期间的操作的更详细过程180C。
如果采用了小组跟踪策略,不管是手动还是自动采用,画面取景将会相对简单。运动检测、肤色检测、面部检测和其它算法将被用于对小组画面取景,包含几乎所有的与会者,并且PTZ控制信号在摄像机底座90中生成,发送到人物画面摄像机50B以操纵它,并且小组画面(即取景画面)上的视频被输出(方框243)。
随着视频会议的进行,摄像机底座90监测来自摄像机50A捕捉的视频(方框244)。当这样做时,摄像机底座90利用各种判定和规则来管理摄像机底座90的行为。对于给定的实现,可按照任意特定的方式安排和构成所述各种判定和规则。由于一种判定会影响另一种判定,一种规则会影响另一种规则,因此可不同于图4D中所述地安排所述判定和规则。
1. 视频会议器件区域改变了,但还不至于到要改变策略的程度
如果现有的与会者移动、离开,或新的与会者加入视频会议等,则生成的取景画面将多少会改变(方框245)。如果这个区域改变还没有到要改变策略的程度,则摄像机底座90应用各种规则246并且判定是否把摄像机50B输出的当前取景画面切换成另一个画面(判定188),从而输出当前画面(182)或者改变画面(189)。
例如,如果面部落在了当前取景画面之外,则摄像机底座90将确定改变画面。或者当各个脸的中心点偏离取景画面的中心点太远,则摄像机底座90将确定改变画面。
E. 切换画面和对发言人取景
I. 活跃发言人跟踪
在视频会议中可预料的是,当与会者相互交互和与远端交互时,在与会者之中,当前发言人会动态更替。于是,管理输出什么视频的各种决策和规则最好按照避免过多切换摄像机画面和避免显示不太重要的或者题外的画面的方式,应付视频会议环境的动态性质。
现在参见图5A,过程200A提供摄像机底座90如何切换画面,和对当前发言人取景的更多细节。操作从摄像机底座90利用摄像机50A和/或50B拍摄视频开始(方框202)。当没有与会者发言时,摄像机底座90可操纵摄像机50B利用宽画面,并可输出该视频,尤其是在视频会议开始时(方框204)。
随着视频会议的进行,摄像机底座90分析用麦克风28和/或阵列60A-B捕捉的音频(方框206),确定与会者之一何时在发言(判定208)。所述判定可利用本领域中已知的处理技术,根据话音的可识别特性检测话音,和通过追踪确定来源的位置。一旦与会者开始发言(判定208),摄像机底座90确定该与会者是否是新的发言人(判定210)。如果视频会议刚刚开始,那么情况会是这样。不过,在稍后的处理中,摄像机底座90可根据下面概述的发言人识别,或者根据分析方框中的最后发言人的定位是否不同于现在发言人的当前估计的比较,确定正在发言的人物是新的发言人。
如果确定了新的发言人(或者由于任何其它原因而需要处理),那么摄像机底座90确定发言人的位置(方框212)。可以利用许多技术来确定发言人相对于人物画面摄像机50B的位置。下面说明这些技术中的一些技术。
在一个例子中,摄像机底座90处理来自各个麦克风阵列60A-B的音频信号, 利用定位音源的技术,确定当前发言人的位置。在美国专利No.5778082;6922206和6980485中公开了这些技术的细节,这些专利均在此引为参考。在另一个例子中,可以利用发言人识别技术和历史信息,根据发言人的话音特性识别发言人。随后,摄像机底座90能够使摄像机50B转向与识别的发言人相关的最后位置,只要所述最后位置至少与该发言人的当前位置相符。 在又一个例子中,摄像机底座90处理来自水平麦克风阵列60A的音频信号,并使用用于定位音频源的技术将活跃发言人定位在水平位置上,然后其使用来自摄像机50A的捕捉的视频来进一步定位垂直位置。
一旦发言人被定位,就可以对发言人取景,即可以确定取景画面(方框214)。
由于使发言人进入画面存在许多挑战,因此摄像机底座90根据在方框212中确定的位置确定是否适当地使当前发言人进入所生成的取景画面中(判定216)。如果否,那么摄像机底座90分析所生成的取景画面的相邻部分,以调整画面,使发言人的实际物理位置进入画面,所述实际物理位置可能不同于通过话音跟踪而确定的位置(方框220)。可按需要多次重复调整画面。如果是,则摄像机底座90将发言人的候选位置转换成摄像机命令(摇移-俯仰-推拉坐标)来操纵摄像机50B捕捉并输出取景画面(方框218)。
II. 小组跟踪
过程200B提供摄像机底座90如何切换画面,和对当前发言人取景的更多细节。操作从摄像机底座90利用摄像机50A拍摄视频开始(方框202)。摄像机底座90可操纵摄像机50B利用宽画面,并可输出该视频,尤其是在视频会议开始时(方框204)。
摄像机底座90分析视频,使用面部监测算法来对所有与会者或指定的一组人员取景(方框205),并生成控制信号来操纵摄像机50B捕捉和输出取景画面中的视频(217)。
如在视频会议中所预料到的,与会者有时可移动、改变其位置,或随着会议的进行加入或离开。因此,管理输出什么视频的各种决策和规则最好按照避免过多切换摄像机画面和避免显示不太重要的或者题外的画面的方式,应付视频会议环境的动态性质。
这里公开用于确定人物画面摄像机50B的当前画面是否恰当地使当前小组进入画面中的几种技术。例如,一旦人物画面摄像机50B完成了转向以捕捉和输出取景画面中的视频,摄像机底座90就能够利用下面讨论的基于运动的视频处理算法,使该小组进入画面。如果所述算法报告取景良好(判定219),那么取景画面保持不变(方框221)。如果没有报告取景良好,则摄像机底座90能够再次分析摄像机50A捕捉的宽画面。
1. 音频跟踪细节
如上所述,定位发言人和指挥人物画面摄像机50B利用的是正交排 列的阵列60A-B的麦克风62A-B。例如,图6A表示视频会议环境中的水平阵列60A的平面图,而图6B表示垂直阵列60B的正视图。摄像机底座90利用水平阵列60A确定发言人的水平方位角,利用垂直阵列60B确定垂直方位角。由于位置差异的缘故,每个麦克风62A-B捕捉相位和幅度稍微与由其它麦克风62A-B捕捉的音频信号不同的音频信号。通过利用如在引入的美国专利No.5778082,6922206和6980485中公开的波束形成技术,这些差异的音频处理随后确定发言人的水平方位角和垂直方位角。
简要地,对多个位置来说,音频处理把与每个点相关的波束形成参数应用于麦克风阵列60A-B发送的音频信号。随后,音频处理确定哪组波束形成参数使麦克风阵列60A-B接收的音频信号的和振幅达到最大。随后,音频处理识别与使麦克风阵列的信号的和振幅达到最大的一组波束形成参数相关的水平方位角和垂直方位角。通过利用这些水平方位角和垂直方位角,音频处理最终确定人物画面摄像机50B的对应摇移-俯仰-推拉坐标。
取决于环境的动态特性,根据利用阵列60A-B的音源跟踪,用人物画面摄像机50B对当前发言人取景存在一些挑战。如前所述,在周围物体上的反射会使摄像机50不正确地对着音源的反射,以致不会使发言人恰当地进入摄像机的画面中。
例如,如图6B中所示,由于音频可能在反射点(例如,桌面)反射,因此反射使摇移坐标的正确确定变复杂。对麦克风阵列60B来说,反射点看来似乎是从音源指向它的。如果与从发言的与会者的方向相比,从该反射点的方向收到更多的声能量,那么摄像机底座90会错误地把该反射点确定为要跟踪的音源。
为了克服这个问题,摄像机底座90可利用识别这种反射的技术。例如,如图7A-7B中所示,相对于方位角,用图表示由阵列60A-B之一检测的能量。从图7A中可看出,音源的声音和音源的反射产生两个能量峰,一个是音频的能量峰,一个是反射的能量峰(通常稍后)。这和图7B中的曲线图形成对照,在图7B的曲线图中没有任何反射。相对于方位角分析所述能量,摄像机底座90能够确定来自音源的反射,并忽略所述反射。最后,这能 够帮助避免把人物画面摄像机50B对着反射点。
就与反射类似的问题来说,在视频会议环境中出现的其它噪声会使定位发言人,和用摄像机50A-B对发言人取景变得复杂。源于键盘打字,轻敲铅笔,转动椅子等的噪声会与来自与会者的话音混合。例如,与会者可能把膝上型计算机带到视频会议中,并回答电子邮件,做记录等等。由于在给定时间捕捉的音频可能包含散布有这种噪声(比如打字)的话音,因此基于音频的定位器42的话音检测器42需要处理这种外来噪声。
如前所述,摄像机底座90利用话音检测器43(图1A)确定麦克风阵列24捕捉的信号是话音还是非话音。一般来说,当信号是话音或者键盘噪声时,话音检测器43能够有效地工作,当话音检测器43把音频检测为非话音时,摄像机底座90只是忽略捕捉的音频。不过,当话音和噪声混合时,话音检测器43会不那么有效。如果出现误差,那么摄像机底座90会错误地把人物画面摄像机50B对着噪声源(例如,键盘)。
公开的摄像机底座90的几个优点有助于处理与外来噪声混合的话音。如前所述,摄像机底座90最好不太频繁地移动摄像机50B,以消除过度的画面切换。为此,在把音源的位置发给摄像机50A-B之前,摄像机底座90最好利用等待期(例如,2秒)。因此,在向人物画面摄像机50B宣告音源的位置之前,摄像机底座90能够积累来自麦克风阵列60A-B的2秒钟的捕捉音频。键盘噪声和话音不会在整个等待期(2秒)内都重叠,对多数人来说,连续两次键盘击键之间的时间间隔一般至少为100毫秒。因此,2秒的等待期足够了,不过可以使用其它时限。
图8A表示在话音检测中,处理话音和非话音音频的过程300。在一种实现中,摄像机底座90通过每20毫秒采样捕捉的音频(方框304),开始积累用麦克风阵列60A-B捕捉的等待期中的音频(方框302)。摄像机底座90利用这些20毫秒的样本,根据话音跟踪技术计算音源的摇移-俯仰坐标(方框306)。但是,这些摇移-俯仰坐标并不作为音频的位置被传给人物画面摄像机50B。摄像机底座90改为分多步处理所述20毫秒的样本,以区分由话音和/或噪声造成的来源位置。
除了计算20毫秒样本中的假设音源的摇移-俯仰坐标之外,摄像机底座90 利用瞬态信号检测器(TSD)计算每个20毫秒样本的瞬态信号值(方框308)。图8B表示瞬态信号检测器340的方框图。如图所示,检测器340具有滤出低于4000Hz的频率的4000Hz高通滤波器。在高通滤波器之后,检测器340具有匹配滤波器(匹配滤波器的形状表示在该方框之下),用于使匹配滤波器的模板信号与20毫秒样本的未知信号相关。对每个20毫秒样本来说,检测器340的输出是标量数(scalar number),即,匹配滤波输出中的最大值。
根据该瞬态信号处理,来自检测器340的结果值可指示20毫秒样本是表示话音还是非话音。例如,如果检测器340产生较大的瞬态信号值,那么20毫秒样本可能对应于键盘噪声。如果检测器340产生较小的瞬态信号值,那么20毫秒样本可能对应于话音。一旦产生了瞬态信号值,就使它们与20毫秒样本的摇移-俯仰坐标相联系。
到2秒等待期结束时(图8A中的判定310),可能存在多达100个具有摇移-俯仰坐标和瞬态信号值的20毫秒样本(只具有背景噪声的那些样本不产生有效坐标)。利用聚类技术,比如高斯混合模型(GMM)算法,摄像机底座90使20毫秒样本的摇移-俯仰坐标聚类(方框312),得出群集的数目,求每个群集的值的平均值(方框314)。也可以使用其它聚类技术,比如Linde-Buzo-Gray(LBG)算法。
例如,图8C表示在使等待期中的20毫秒样本的摇移-俯仰坐标聚类之后的结果。每个摇移-俯仰坐标用“x”表示,每个群集的平均值(即,音源的位置)用“*”表示。在这个例子中,聚类表明集合在两个群集中的两个音源。
这些群集具有不同的摇移和俯仰坐标,大概因为两个音源在视频会议环境的分离部分中。然而,即使发言人一边发言一边还在打字,聚类也能够依据群集的不同俯仰坐标区分群集,纵使所述群集具有相同的摇移坐标。这样,即使与会者同时打字和发言,摄像机底座90能够定位话音来源,以对准人物画面摄像机50B。
一旦如上所述完成了聚类,图8A的过程300中的摄像机底座90计算每个确定的群集的瞬态信号值的平均值(方框316)。如果群集的平均瞬态信号 值小于定义的阈值(判定318),那么摄像机底座90宣告该群集可能对应于话音(方框320)。否则,摄像机底座90宣告该群集为瞬态声音,比如源于键盘击键噪声。阈值和其它变量的值取决于要检查的噪声的种类(例如,键盘击键),以及来自瞬态信号检测器340的匹配滤波的输出。因此,可关于给定的实现,配置这些变量的特定值。
一旦所有群集的平均值已和阈值相比较,摄像机底座90就确定是否所有群集都不指示话音(判定324),如果是,那么结束。如果只有一个群集指示话音,那么摄像机底座90能够容易地确定具有其平均摇移-俯仰坐标的该群集对应于话音源的位置(方框328)。如果不止一个群集指示话音(判定326),那么摄像机底座90把具有最多摇移-俯仰坐标的群集宣告为话音源的位置(方框330)。
从而,图8C中所示的聚类可具有如下的四种可能结果:(1)群集A是话音,而群集B是噪声,(2)群集A是噪声,而群集B是话音,(3)群集A是话音,而群集B也是话音,(4)群集A是噪声,而群集B也是噪声。尽管图8C表示这个例子中的两个群集,不过摄像机底座90可被扩展,以处理任意数目的话音和噪声源。
在图8C的例子中,在第一种和第二种组合中,摄像机底座90能够容易地确定群集A和B中的哪个对应于话音源。在这些情况下,在2秒等待期结束时,摄像机底座90能够把音源位置(话音群集的平均摇移-俯仰坐标)传给人物画面摄像机50B,从而如果需要的话,能够使摄像机50B对着该音源。
如果出现其中两个群集A和B都指示话音的第三种组合,那么摄像机底座90利用群集中的摇移-俯仰坐标“x”的数目来确定哪个群集代表主要的发言人。从而,具有关于等待期内的20毫秒样本计算的最多摇移-俯仰坐标的群集可被宣告为音源的位置。就其中群集都不指示话音的第四种组合来说,摄像机底座90的话音检测器43已指出检测到的声音全部(或者大部分)是噪声。
如上所述,摄像机底座90利用等待期来检测麦克风阵列60A-B是否在捕捉话音和/或噪声。最后,通过对瞬态信号值的滤波,和坐标的聚类,摄像机底座90能够确定哪个摇移-俯仰坐标可能对应于话音源。这样,摄像机底座90更可 能提供在操作期间,指挥人物画面摄像机50B的更可靠的音源位置信息。
2. 取景细节
为了克服方位判定不正确的问题,摄像机底座90还可把这里公开的基于运动的技术和其它技术用于会议期间发言人的自动取景。此外,摄像机底座90可具有摄像机画面中的可配置的不拍摄区域。按照这种方式,用户能够定义摄像机视场中的不使摄像机50B对着以拍摄视频的区域。一般来说,这些不拍摄区域应是视场中,主要会拍摄到会议桌、墙壁等的区域。
参见图9A-9B,表示了由房间画面摄像机(50A)捕捉的用于分析目的的宽画面230A。另外,表示了在以不正确的方位判定为基础的第一次取景之后,以一位视频会议与会者为中心取景的由摄像机底座90确定的紧凑画面230B。在宽画面230A中定义了不拍摄区232,以供参考。可在关于特定房间校准摄像机底座90的过程中实现这些不拍摄区232,并且这些不拍摄区232不会因会议而异。
在图9A中,在视频会议与会者开始发言之后,人物画面摄像机底座已对定位了视频会议与会者并对紧凑画面230B取景。由于一些误差(即,反射,发言人把脸躲开等),紧凑画面230B未恰当地对该与会者取景。为了核实正确的取景,摄像机底座90搜索紧凑画面230B的拍摄视频中的特性,比如运动,肤色或面部特征。
为了检测运动,摄像机底座90顺序比较出自用人物画面摄像机(50B)拍摄的紧凑画面230B的视频的采样帧,并识别由移动引起的差异。例如,如下更详细所述,摄像机底座90能够通过计算帧或帧的一部分中的像素的亮度值的总和,确定移动,并在顺序各帧之间相互比较所述总和。如果两个总和之间的差异大于预定阈值,那么该帧或帧的一部分可被标记为具有运动的区域。最后,可迭代地调整紧凑画面230B,或者使其以该检测到的运动为中心。
例如,摄像机底座90可能使发言人进入过高或过低,或者过右或过左的紧凑画面230B中。首先根据运动像素调整取景画面。如果摄像机50B过高地指向发言人(即,发言人的头部被显示在画面230B的下半部),那么根据运动像素(即,通过处理找到的最上面的运动块), 降低取景画面。
如果根本不存在与摄像机底座90取景的当前紧凑画面230B相关的运动块,那么摄像机底座90能够采取对着用阵列60A-B捕捉的音频中的第二个声音峰。
作为运动检测的备选方案,摄像机底座90利用本领域中已知的各种技术,检测紧凑画面230B的视频中的肤色。简要地说,摄像机底座90能够计算帧或帧的一部分内的色度值的平均值。如果所述平均值在与肤色相关的范围内,那么该帧或其一部分被认为具有肤色特性。另外,摄像机底座90可利用面部识别技术来检测和定位摄像机的画面230B中的面部。例如,摄像机底座90可通过找出可能包含人类皮肤的区域,随后从这些区域中找出指示画面中的面部位置的区域,来找出面部。在美国专利No.6593956,“Locating an AudioSource”中公开了与肤色和面部检测(以及音频定位)有关的细节,该专利在此引为参考。随后可迭代地调整紧凑画面230B,或者使其以检测到的肤色和/或面部识别为中心。
在核实取景时,摄像机底座90能够利用来自摄像机(50A-B)的两个画面230A-B分析诸如运动,肤色或面部之类的特性。可关于运动,肤色或面部分析来自人物画面摄像机(50B)的紧凑画面230B,以确定它目前是否对着与会者。如果紧凑画面对例如墙壁或者天花板取景,那么关于紧凑画面230B中的运动,肤色或面部的视频处理能够确定情况是这样,从而摄像机底座90能够避免操纵摄像机50B输出这种不合需要的画面。随后,摄像机底座调整到周围区域,以确定是否由于来自这些周围区域的后续运动,肤色或面部识别的值更大,能够实现更好的取景。
另一方面,围绕通过话音跟踪而获得的当前取景画面230B,可关于运动,肤色或面部确定,分析来自房间画面摄像机50A的宽画面230A。如果在宽画面230A中找到源于这些周围区域的运动,肤色或面部确定的更大值,那么摄像机底座90能够使人物画面摄像机(50B)转向该周围区域。
视频处理能够确定不同调整的画面之间在运动,肤色或面部确定方面的差异,以找出哪个画面更好地对与会者取景。另外,运动,肤色或面部确定都可被组合在一起。
应注意,摄像机底座90知道摄像机50B的位置,因此摄像机底座90判定的取景画面可以直接映射到摄像机50B的操作(摇移-俯仰-推拉)。
通过利用这些取景技术,视频会议摄像机底座90减小了摄像机底座90产生不是发言人、或者未被很好取景的某物的拉近画面的可能性。换句话说,摄像机底座90减小了在常规系统中会发生的不恰当取景(例如,对会议桌、空白墙壁的拉近,或者由于麦克风阵列产生的不完美的音频结果,对发言人的膝上型计算机的拉近)的可能性。事实上,一些常规系统可能从不定位某些发言人。例如,常规系统可能不定位位于会议桌端部的、其到麦克风阵列60A-B的直接声通路因会议桌反射而变得模糊的发言人。通过利用这里公开的视频和音频处理技术,公开的摄像机底座90能够成功地拉近这样的发言人。
F. 自动取景过程
如上简要所述,当动态地使人物画面摄像机50B对着当前发言人时, 公开的摄像机底座90能够利用运动,肤色和面部识别恰当地对与会者取景。作为取景技术的一部分,公开的摄像机底座90可首先通过在视频会议开始时,或者相隔不同的时间间隔检测房间的拍摄视频中的相关块,估计与会者的位置。通过查看拍摄的视频中的运动,肤色,面部识别,或者它们的组合,能够确定这些相关块。该自动取景过程可由视频会议与会者在会议开始时,或者在任何其它适当的时候启动。另一方面,自动取景过程可在开始视频会议呼叫时,或者在某一其它触发时间自动发生。通过了解拍摄的视频中,和与会者的位置对应的相关块,当用摄像机50A-B自动对在房间内各处的与会者取景时,摄像机底座90就能够利用这些已知的相关块。
图10表示按照本发明的利用自动取景的过程400。下面关于如在图1A和2A中公开的双摄像机系统讨论过程400A,其中摄像机底座中的一个摄像机50A用于分析的目的而有摄像机底座操纵的另一个摄像机50B用于输出最终画面。不过,自动取景技术同样可用于如在图2B和2C中公开的具有其它配置的视频会议系统。
在视频会议开始之前的发起期间(即,当连接呼叫和与会者作好准备时),摄像机底座90启动时限(方框402),并对由摄像机50A拍摄的视频采样(方框404)。为此,摄像机底座90通过一直变焦拉远摄像机,获得整个房间的视频,或者摄像机底座90可关于环境的最宽画面,直接了解摄像机的整个摇移-俯仰-推拉范围。在获得房间的宽画面之后,摄像机底座90随后把宽画面分成多个块,以便单独分析(方框406)。换句话说,关心的房间空间的默认宽画面被分成多个部分或块(N=2,3等)。这些块都代表摄像机的特定紧凑画面。
另一方面,人物画面摄像机50B能够分别在不同的方向获得几个视频图像,并把它们接合在一起,从而创建房间的宽画面。例如,图12A表示利用人物画面摄像机50B获得的视频会议环境的四个象限的拍摄图 像460。为了获得图像460,人物画面摄像机50B可被变焦拉远和摇移到各个象限,从而获得房间的可能的最宽画面。这能够增大搜索区域。尽管图中表示图像460间没有重叠,不过实际上它们会重叠,不过通过处理能够恰当地处理所述重叠。
每个图像460被表示成分成几个块462(本例中,15个,不过可以使用其它值)。块462至少和一个像素一样大,可以是视频压缩算法通常使用的宏块的大小。同样地,这些块462都与可依据给定的几何形状确定的摄像机50B的特定摇移、俯仰和推拉坐标相关。
在图10A中,把房间的宽画面分成多个块的情况下,摄像机底座90选择每个块(方框408),并检查每个块,以确定该块对自动取景来说的关联性。为了检查每个块462,摄像机50B被拉近成包含该块的紧凑画面,以确定在房间的整个画面中,该块具有什么关联性(即,运动,肤色,面部识别等)(方框410)。通过拉近,利用人物画面摄像机50B获得的视频图像能够更好地检测运动,肤色和其它细节。然而,由于非PTZ摄像机的限制,不是所有的块都可以被拉近。这那样的情况下,该步骤可以被省略。
从而,摄像机底座90确定所选块的(拉近)图像是否相关(判定412)。如果块被确定为相关的,那么摄像机底座90把该块标记为相关(方框414),并把它的关联位置信息(摄像机摇移、俯仰和推拉坐标)保存在存储器中,供以后使用。
相关块是重要的是,因为它们定义用于当在视频会议期间动态需要时,利用摄像机50B恰当地构成画面的关心区域。换句话说,相关块包含具有指示它至少是视频会议与会者的关心对象的一部分的特性的画面的一部分。通常在视频会议中,与会者是关心的对象。在这种情况下,表示视频会议与会者的可搜索特性可包括如前所述的运动,肤色和面部特征。
在检查所有块(判定416)和确定所述时限是否结束(判定418)之后,视频处理确定最外面的相关块(方框420)。这些最外面的相关块可包括最左边,最右边和最上面的相关块。如果需要的话,可忽略最下面的相关块。根据这样的最外面的块,摄像机底座90计算用于构成环境中的与会者的最适配画面(方框422)。例如,利用三角形计算和保存在存储器中的块-摄像机位置数据,最左边,最右边和最上面的相关块的位置能够被转换成用于自动取景的摇移-俯仰-推拉坐标。
最后,摄像机底座90根据从分析块获得的合成结果,对房间取景。为了图解说明,图12B表示了广角画面460中的相关块462的取景区域470。在考虑区域470中的最左边,最右边和最上面的相关块462之后,图12C随后表示广角画面460中的最后得到的取景画面472。通过了解最佳画面472,摄像机底座90能够调整房间画面摄像机(50A)的推拉坐标,以构成包括画面472的尽可能小的画面473,从而视频会议室的多余部分不被拍摄。同样地,摄像机底座90关于人物画面摄像机(50B)进行的与会者的话音跟踪和自动取景通常可被限制于该取景画面473。这样,当试图对发言的与会者恰当取景时,摄像机底座90能够避免对着在取景画面473之外的音源反射,并且能够避免搜索在取景画面473之外的,围绕该与会者的相邻区域。
图10B表示按照本发明的利用自动取景的过程400B。下面关于如在图1A和2A中公开的双摄像机系统讨论过程400A,其中摄像机底座中的一个摄像机50A用于分析的目的而有摄像机底座操纵的另一个摄像机50B用于输出最终画面。不过,自动取景技术同样可用于如在图2B和2C中公开的具有其它配置的视频会议系统。
在视频会议开始之前的发起期间(即,当连接呼叫和与会者作好准备时),摄像机底座90启动时限(方框402),并对由摄像机50A拍摄的视频采样。为此,摄像机底座90通过一直变焦拉远摄像机,获得整个房间的视频(方框404)。在获得房间的宽画面之后,摄像机底座90缩放宽画面中捕捉的视频(方框405)。应注意它不对摄像机缩放,而是对宽画面视频缩放。这是为了一般面部模板的比较。面部模板可以是固定大小,而所捕捉的宽画面中的面部由于其到摄像机50A的距离而变化。通过以不同的比例不断地缩放宽画面视频,我们可以分别将各个面部调整到与面部模板一样大小。
每次对宽画面缩放时,使用一般面部模板在视频中进行面部识别(方框407)。
相应地,摄像机底座90确定在缩放的图像中是否有面部识别出(判定409)。如果有面部被识别出,则摄像机底座90取得包含面部的长方形区域的左下角的坐标(x, y)以及该长方形的宽和高(方框411)。步骤405-411不断重复直到达到时限。
在确定时限已经结束后(判定418),视频处理确定包含所有面部的最大相关取景(方框419)。它可由最左边、最右边和最上边的面部确定。对于这样的取景,摄像机底座90计算摇移-俯仰-推拉坐标以构成环境中的与会者的最适配画面(方框422)。例如,取景位置可以由(X, Y, W, H)决定,其中X和Y表明包含面部的长方形区域的左下角的点的坐标,W和H表明取景宽和高。利用三角形计算,这些参数可以转换成用于自动取景的摇移-俯仰-推拉坐标。
1. 利用运动的自动取景
可利用如上所述的几种技术,确定块为相关块。在图11A中所示的一个实施例中,视频处理通过确定哪些块指示与会者移动,识别相关块。如图所示,视频处理选择一个块(方框408),并如前所述,用紧凑画面拉近该块(方框410)。随后,视频处理对所选块的由拉近的摄像机50B捕捉的视频帧速率进行抽选(decimate),以降低计算复杂性。例如,在一种实现中,帧速率可被抽选到约6帧/秒。在此时或者任意其它时刻,可以应用时间和空间滤波以改善检测,和消除噪声或干扰。
通过利用连续各帧,视频处理计算块的各帧之一内的各个像素的亮度值之和,并把该值与在块的另一帧内的亮度值之和相比较(方框434)。如果这两个和数之间的差异大于预定阈值(判定436),那么视频处理把该对象块标记为相关块,并且可能包含运动(方框414)。
最后,逐块地计算连续各帧之间在亮度值方面的差异,直到分析了所有块为止(判定416)。一旦分析了所有块,摄像机底座90根据运动确定了哪些块是相关块。此时,摄像机底座90继续图10A中的过程步骤,以根据相关块,对房间的宽画面自动取景。
为了图解说明,图13表示了块的与会者在第一位置的第一帧464, 并且表示了该块的与会者已移动的后续帧465。上面讨论的基于运动的技术计算这两帧464/465的亮度的平均值,并比较这些平均值。如果亮度方面的差异大于阈值,那么与这些帧464/465相关的块被确定为能够被指定成取景画面的一部分的相关运动块。
相反,帧466/467表示视频会议室的保持静止的一部分。当在这些帧466/467之间比较亮度平均值时,所述差异低于所述阈值,以致与这些帧466/467关联的块不被确定为相关块。
关于亮度差的阈值可取决于使用的摄像机,白平衡,光量和其它因素。于是,所述阈值是可自动或人工配置的。例如,摄像机底座90可采用低阈值,以根据视频会议与会者的有意识和无意识运动,检测相关块。当视频处理利用这样的低阈值时,它对运动的灵敏度较高。相反,随着阈值的增大,摄像机底座对运动的灵敏度降低。从而,定位参加发言的视频会议与会者所必需的最小阈值高于定位仅仅表现出被动运动的视频会议与会者所必需的最小阈值。于是,通过调整阈值,在视频会议与会者发言时,视频处理能够检测到该与会者,当该与会者只是被动地坐着时,视频处理能够避免检测到该与会者。由于这些原因,运动检测中涉及的任何阈值都是可配置的,并且可在操作中自动调整。
2. 利用肤色的自动取景
在图11B中所示的另一个实施例中,视频处理根据块的像素是否包含肤色,确定相关块。本领域中已知在图像内寻找肤色的多种方法。在这个例子中,和前面一样,视频处理选择一个块(方框408),并可用紧凑画面拉近该块(方框410)。随后,视频处理对块或其各个部分的拍摄视频的一帧或多帧采样(方框440),需要的话,对其滤波(方框442),并计算对象块内的色度值的平均值(方框444)。如果所述平均值在与人类肤色相关的范围之内(判定446),那么该块被标记为相关块(方框414)。
在引用的美国专利No.6593956中公开了与肤色检测相关的细节。肤色检测可取决于许多因素,也可以是人工配置和自动配置的。在任何情况下,逐块地计算平均色度值,直到对所有块分析了相关性为止(判定416)。此时,摄像机底座90继续图10A中的过程处理,以根据相关块,自动构成 房间的宽画面。
G.利用面部识别的自动取景
在图11C中表示的另一个实施例中,视频处理可利用面部识别来确定相关块。本领域中已知识别面部特征的许多方法。在引用的美国专利No.6593956中公开了与面部检测相关的细节。在这个例子中,视频处理选择已被分析和标记为具有肤色的各个邻接块(方框450)。面部识别算法随后关于面部特征,对一组邻接的块进行分析(方框452)。如果检测到面部特征(判定454),那么该组邻接的块被标记为可用于稍后的自动取景的相关面部块(方框456)。
最后,逐组地关于面部识别分析所有邻接块,直到分析了所有各个块为止(判定416)。此时,摄像机底座90继续图10A中的过程处理,以根据相关块自动构成房间的宽画面。
H.另外的自动取景细节
操作中,如果画面内的条件发生变化,那么摄像机底座90需要对由摄影机50A和/或50B获得的当前画面重新取景。例如,在视频会议期间,视频会议与会者可能离开画面,或者新的与会者可能进入房间中。摄像机底座90可定期重新扫描宽画面,以发现任何变化(即,任何新的或旧的相关块)。当重新扫描时,视频处理能够定位包含与会者或者没有与会者的那些块,从而在重新计算摄像机画面的摇移-俯仰-推拉坐标时,可以考虑这些块。另一方面,视频会议与会者可利用用户界面或者遥控器,开始重新取景序列。
对重新扫描来说,特别有利的是利用具有至少两部摄像机50A-B的装置80。例如,在双摄像机装置80中,人物画面摄像机50B能够依据图10A的过程,定期重新扫描房间的总的宽画面,而房间画面摄像机50A拍摄和输出会议视频。另一方面,当人物画面摄像机50B跟踪和拉近当前发言人时,房间画面摄像机50A可开始重新扫描程序,以确定宽画面中的相关块。
尽管这些取景技术有益于前面公开的双摄像机装置80,不过,这些技术也可用在单摄像机装置中。此外,这些取 景技术可以和具有如前公开的麦克风阵列,或者具有麦克风的任何其它排列的系统一起使用。
I. 发言人识别
除了话音跟踪,运动,肤色和面部识别之外,或者作为它们的备选方案,摄像机底座90可利用发言人识别来识别哪个特定与会者正在视频会议环境中发言。发言人识别技术可以和前面说明的双摄像机摄像机底座90一起使用,不过它也可和具有更多或更少摄像机的其它视频会议系统一起使用。对双摄像机装置80来说,可为拉远的房间画面,设定房间画面摄像机50A,而人物画面摄像机50B可跟踪和拉近当前的发言人,如前所述。摄像机底座90随后能够部分根据发言人识别,确定输出哪个摄像机画面。
图14表示具有摄像机50A,麦克风阵列60A-B,和前面讨论的其它组件的视频会议摄像机底座90,以供参考。摄像机底座90还具有发言人识别特征,包括发言人识别模块24和数据库25。这些可以与音频模块20相联系,音频模块20用于处理来自外部麦克风28和阵列60A-B的音频。
发言人识别模块24分析主要采样自外部麦克风28的音频。利用该音频,发言人识别模块24能够确定或识别在视频会议期间,哪位与会者正在发言。对数据库25来说,数据库25保存用于进行所述确定或识别的信息。
如图15中所示,图中表示了包含可被图14的发言人识别模块24使用的一些信息的数据库表480。提供数据库表480只是出于举例说明的目的,因为本领域的技术人员会认识到可按照本领域中已知的任何可用方式,保存供发言人识别模块24之用的各种信息。
如图所示,数据库表480能够保存视频会议中的每位近端与会者的多条记录。对每位与会者来说,数据库表480能够包含该与会者的标识信息(姓名,头衔等),确定的该与会者的位置(摇移、俯仰、推拉坐标)和该与会者的话音的特性。
除此之外,数据库表480可包含该与会者在视频会议期间发言的平均持续时间,该与会者在视频会议期间发言的次数,和可用于跟踪和识 别发言与会者的其它细节。该信息也可用于收集和报告会议的统计资料。例如,该信息可指出会议中的发言人的数目,每位发言人发言的时间有多长,该发言人在什么时候参加该会议,等等。最后,当检查会议的记录时,该信息可用于快速定位视频会议的特定部分。
通过利用比如包含在数据库表480中的信息,当检测到话音时,图14中的摄像机底座90的发言人识别模块24能够从视频会议的各位与会者中,识别出特定的发言人。例如,图16表示可在视频会议期间实现的发言人识别过程500。首先,摄像机底座900发起视频会议(方框502)。作为会议的建立的一部分,与会者可在发言人识别界面中进行登记(方框504),不过这不是这里公开的发言人识别严格必需的。
当使用登记程序时,与会者利用用户界面,输入标识信息,比如姓名、头衔等。随后,与会者向发言人识别模块24提供一个或多个话音样本。为了获得所述样本,模块24可以要求,或者可不要求与会者说出某些文稿、短语、单词等等。不管怎样,模块24分析与会者的话音样本,确定该与会者的话音的特性。一旦完成登记,模块24随后把每位与会者的话音特性和标识信息保存在数据库25中,供以后使用(方框506)。
在一种实现中,模块24提供的发言人识别可以梅尔频率倒谱(MFC)为基础,以致保存在数据库25中的话音特性可包括梅尔频率倒谱系数(MFCC)。在本领域中,得到这些系数的技术是已知的,从而这里不再详述。然而,模块24可以利用本领域中已知的任何其它技术来识别话音特性,从而根据话音特性识别发言人。
在与会者已登记的情况下,摄像机底座90开始进行视频会议(方框508)。在人物画面摄像机50B对着发言人之前,摄像机底座90拍摄视频,并且最初输出来自房间画面摄像机50A的宽画面(方框510)。同时,摄像机底座90分析用外部麦克风28和/或麦克风阵列60A-B捕捉的本地音频(方框512)。
在某一时刻,摄像机底座90利用本领域中已知的话音检测技术,确定是否检测到话音(判定514)。为此,摄像机底座90的话音检测器43能够对捕捉的音频采样,用滤波器组把音频滤波成多个频带。可以分析与话音相关的这些频带的脉冲或振幅,以确定目前采样的音频是否表示话音。最好,分 析的捕捉音频是利用外部麦克风28获得的会议音频,而不是利用阵列60A-B获得的会议音频,不过也可使用利用阵列60A-B获得的会议音频。
如果检测到话音,那么发言人识别模块24对检测到的话音采样,以确定其特性,随后,模块24搜索数据库25,寻找具有这些特性的与会者(方框514)。同样地,模块24能够利用本领域中已知的技术,确定梅尔频率倒谱系数(MFCC)。一旦完成,摄像机底座90就通过比较目前得到的特性和保存在数据库25中的各个与会者的特性,识别当前发言人。从而可根据这些特性的最佳匹配,获得当前发言人的身份。
如果与会者已登记,那么模块24在数据库中查找该发言人(判定518),摄像机底座90随后把人物画面摄像机50B对着发言人的坐标或方向(方框520)。这样,摄像机底座90检测话音,利用借助阵列60A-B的波束形成确定发言人的位置,确定当前发言人的身份,并指令人物画面摄像机50B拉近当前发言人的画面。此时,发言人的姓名能够被自动显示在输出给远端的视频上。正如所料,能够在远端显示当前发言人的姓名是有益的,尤其是当近端和远端的与会者互相不认识时更有益。
作为一种附加措施,通过借助麦克风阵列60A-B的波束形成而获得的当前发言人的确定位置(人物画面摄像机50B的摇移、俯仰和推拉)可以和发言人的标识和话音特性一起被保存在数据库25中。这样,一旦该发言人稍后在会议中发言,模块24能够根据话音特性识别该发言人,从而摄像机底座90能够直接把人物画面摄像机50B对着从数据库25获得的保存的位置(摇移、俯仰和推拉)。从而,摄像机底座90可放弃必须利用阵列60A-B进行发言人的音频跟踪,不过发言人识别可被用于提高在困难情况下,定位发言人的可靠性。
在当前发言人的位置已知,并与话音特性相联系时,摄像机底座90能够对照保存在数据库25中的发言人的位置,核实当前音源的位置(方框522)。可能存在发言人识别和与数据库条目的匹配错误地把与会者之一识别为当前发言人的情况。为了避免把人物画面摄像机50B对着所述错误的人物或者反射点,摄像机底座90进行检查,判定确定的位置是否匹配预先保存在数据库25中的位置(判定524)。当存在许多与会者时,和在当前话音与 保存的特性之间的匹配在识别当前发言人方面不那么权威时,这是有益的。另外,如果预期与会者在视频会议期间会移动,以致保存在数据库25中的位置可能不正确或者过时,那么这种检查是有益的。
当试图在已登记的发言人的数据库25中找出当前发言人时(判定518),模块24可能判定发言人未包括在数据库24中。例如,某人可能迟到参加视频会议,从而未在发言人识别过程中进行登记。另一方面,摄像机底座90可不利用登记过程,而只是随着会议的进行,识别新的发言人。
无论如何,模块24判定从当前发言人得到的话音特性并不与保存在数据库25中的任意话音特性和身份最佳匹配。这种情况下,模块24把该话音特性保存在数据库25中(方框526)。这种情况下,该发言人的姓名未被附加到该数据库条目上,除非在会议期间,摄像机底座90提示输入。此时,摄像机底座90可利用麦克风阵列60A-B和前面说明的波束形成技术,确定该发言人的位置,并把所述位置保存在数据库25中(方框528)。如果摄像机底座90未能匹配定位的发言人和保存的候选者,那么也进行这个步骤。即使如此,该发言人的当前位置可能已在先前的处理中知道了,以致摄像机底座90不需要重新确定该发言人的位置。
通常,摄像机底座90可利用它能够利用的每种方式定位当前发言人,并正确地对该发言人取景。这样,当一种方式失败时,来自麦克风阵列(60A-B)的信息,用摄像机(50A-B)拍摄的视频,来自麦克风箱(28)的音频,和发言人识别能够相互补充,它们可被用于确认彼此的结果。例如,利用麦克风箱(28)获得的测向可用于检查发言人识别。
一旦直接地或者根据存储内容确定了位置(方框528),摄像机底座90进行确定取景画面的过程(方框530)。和前面一样,摄像机底座90根据运动,肤色,面部识别等,判定发言人是否在生成的取景画面中被恰当地取景(判定532),如果需要的话,调整到相邻部分进行分析(方框534),并视需要重复这些步骤,直到对发言人取景的选择画面能够被输出给远端为止(方框536)。
如果在数据库中没有找到当前发言人,和不能通过波束形成确定位置,那么摄像机底座90可以简单恢复操纵摄像机50B输出宽画面的视频。最后,即使当其所有定位和识别技术都失败时,摄像机底座90也能够避免输出会议室的不合需要的画面,或者人物画面摄像机50B的运动。
发言人识别不仅有助于显示发言的与会者的姓名,或者帮助核实波束形成已确定正确的位置,而且在不能容易地通过波束形成等定义发言人的情况下,发言人识别也是有用的。例如,在当前发言人转动头部,从而避开麦克风阵列60A-B时,摄像机底座90可能不能利用波束形成等定位当前发言人。不过,发言人识别模块24仍然能够根据话音特性,识别哪位与会者与保存的发言人匹配。根据所述匹配,摄像机底座90得到已保存的位置(摇移、俯仰和推拉),以便使人物画面摄像机50B对着当前的发言人。
另外,发言人识别模块24能够防止摄像机底座90在视频会议期间过早切换画面。例如,在某些时候,当前发言人转动头部,从而避开麦克风阵列60A-B,环境中的一些变化可能产生新的反射点,或者可能发生其它一些变化,以致摄像机底座90不再能够定位当前发言人,或者得到当前发言人的不同位置。尽管利用阵列60A-B的摄像机底座90能够知道某人在发言,但是摄像机底座90可能不能判定是同一人在继续发言,还是新的发言人开始发言。在这种情况下,发言人识别模块24能够向摄像机底座90指出是否是相同的发言人在发言。于是,摄像机底座90能够借助人物画面摄像机50B,继续当前发言人的拉近画面,而不是切换到另一个画面。
需要注意的是,如果所述第二摄像机50B本身就具有本文所述的各种智能功能,则本领域的技术人员容易理解,摄像机底座90可以仅作为没有智能功能的底座而起作用,比如,仅提供数据的传送功能和/或供电功能等,从而可以兼容智能摄像机。
虽然已经结合具体实施例描述了本发明,但是本领域技术人员将理解,可以做出许多改变和修改,并且可以对其元件进行等效替换,而不背离本发明的真正范围。此外,可以做出许多修改来使本发明的教导与特定情况适配,而不背离其中心范围。因此,本发明并不限于这里作为实现本发明而构思的最佳模式而公开的特定实施例,相反本发明包括落入所附权利要求书范围内的所有实施例。