著录项信息
专利名称 | 视频流传输 |
申请号 | CN200380108056.9 | 申请日期 | 2003-12-30 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2006-02-08 | 公开/公告号 | CN1732690 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04N7/24 | IPC分类号 | H;0;4;N;7;/;2;4;;;H;0;4;N;7;/;1;8查看分类表>
|
申请人 | 英国电讯有限公司 | 申请人地址 | 英国伦敦
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 英国电讯有限公司 | 当前权利人 | 英国电讯有限公司 |
发明人 | 奥顿·卡玛里奥蒂斯 |
代理机构 | 北京三友知识产权代理有限公司 | 代理人 | 李辉 |
摘要
与远程客户(例如PPC 7、移动电话客户5)进行通信的文件服务器(1)从照相机(2)或者视频存储器(4)接收图像,作为全帧图像。选择和压缩程序使得可以发送用来限定压缩视频图像的位流,从而显示在移动客户的相对较小的屏幕上,并允许简单的虚拟缩放和用户要收看的帧区域选择。压缩和选择算法使得用户能够选择具有与本地屏幕相对应的像素数的,但是从整个原始帧导出的并完全压缩、具有压缩的可变选择的角视场,可变选择的角视场由具有相同像素数的原始帧的一部分的文件服务器(1)来选择。该系统尤其适于客户和文件服务器之间的带宽受限,从而必须将视频帧的整体发送给客户的情况,因此仅需要从客户到服务器的有限的返回信号。
1.一种将视频信号从服务器(1)流传输至客户装置(10)的方法,该方法包括由所述服务器(1)执行以下步骤:
采集和/或存储视频帧或者视频帧序列,其中每一帧都包括“m”像素דn”像素的矩阵;
将每一个所述m×n的帧压缩为“p”像素דq”像素的各个导出帧,以将其显示在能够显示至少p像素×q像素的帧的屏幕上,其中p和q分别远小于m和n;
将至少一个所述导出帧发送至所述客户装置(10);
从所述客户装置(10)接收用于限定小于m×n像素的优选观看区域的信号;
将所选择的观看区域压缩为p像素×q像素的进一步导出帧或者进一步导出帧序列;
以及将用于显示的所述进一步导出帧发送至所述客户装置(10),其特征在于:
从所述客户装置(10)接收的信号包括用来限定所发送的进一步导出帧内的优选位置的数据,该数据确定了从中选出下一个进一步导出帧的m像素×n像素内的位置。
2.根据权利要求1所述的方法,其中所接收的信号还限定缩放级别,该缩放级别包括从所提供的多个有效缩放级别中选择一个,所述多个有效缩放级别中的每一个都限定包括至少p像素×q像素但不多于m像素×n像素的帧。
3.根据权利要求1或权利要求2所述的方法,其中所接收的信号用于使所发送的帧以逐个像素为基础从当前位置移动到新位置。
4.根据权利要求1或权利要求2所述的方法,其中所接收的信号用于使所发送的帧以帧区域选择为基础来移动。
5.根据权利要求1所述的方法,其中通过在m×n的主帧中检测明显活跃的区域并发送该区域周围的较小帧,来自动选择要发送的帧,其中从所述m×n的主帧发送下一p×q的导出帧。
6.根据权利要求1所述的方法,其中使用所接收的控制信号来选择多个预定帧大小和/或视角中的一个。
7.根据权利要求6所述的方法,其中使用所述控制信号在m×n的主帧内从当前位置移动到新位置,并改变视区的大小,由此可以实现对所述m×n的主帧的特定区域的详细检查,其中从所述m×n的主帧发送下一p×q的导出帧。
8.根据权利要求7所述的方法,其中所述选择是通过跳跃功能来进行的,该跳跃功能对控制功能进行响应,以根据指针的位置在所述m×n的主帧中选择不同的帧区域。
9.根据权利要求7所述的方法,其中所述选择是通过卷动功能来进行的,控制信号在逐个像素的基础上使帧移动。
10.一种用于视频流传输系统的终端装置(1),该装置(1)包括:
第一显示屏幕(20),用于显示所传输的帧序列;
第二显示屏幕(21),具有可选择点,用于表示正在显示的区域或者想要显示的区域;
以及传输装置,用于发送在当前显示的帧中限定优选位置的信号,其中从该当前显示的帧中导出所述帧序列中的下一个传输的帧。
11.根据权利要求10所述的终端装置,包括进一步显示装置(39),该装置具有显示当前观看帧的坐标的能力,并且/或者用于显示与该观看帧相关的文本或其他信息。
12.根据权利要求11所述的终端装置,其中所述进一步显示装置(39)以其中存储有限定观看帧的信息的URL的格式来显示文本。
13.根据权利要求10、11或12所述的终端装置,包括用于发送控制信号的低带宽接收路径,以及用于接收所选择的观看帧的高带宽路径。
14.一种服务器(1),其能够访问多个视频存储器(4),每一个视频存储器(4)都存储有多个视频帧,每一个视频帧都包括“m”像素דn”像素的矩阵,所述服务器包括;
设备(9),用于将每一个所述m×n的帧压缩为“p”像素דq”像素的导出帧,以将其显示在能够显示至少p像素×q像素的帧的屏幕(6)上,其中p和q分别远小于m和n;
编码解码器(17),用于发送每个所述导出帧;
开关装置(15),用于从终端装置(6,7)接收限定小于m×n像素的优选观看区域的信号;
其中,所述设备(9)被进一步设置为将所选择的观看区域压缩为p像素×q像素的导出帧或者进一步导出帧序列;
所述编码解码器(17)被进一步设置为将用于显示的该进一步导出帧传送至所述终端装置;
其特征在于:
服务器(1)响应于限定先前发送的帧内的优选位置的数据信号,以在m×n的主帧中选择该位置,其中从所述m×n的主帧发送下一p×q的导出帧。
15.根据权利要求14所述的服务器,还包括用于采集要被发送的图像的摄像机(2)和在其中将所述该图像作为视频帧序列进行保持的数字图像存储器(3),其中各个所述视频帧包括“m”像素דn”像素的矩阵,其中由所述摄像机(2)采集的图像存储在所述数字图像存储器(3)中,所述服务器(1)对从终端装置(6、7)接收的控制信号进行响应,以在所存储的m×n的主帧内从当前位置移动到新位置,以及对所述新位置处的所选择的区域进行压缩,以使得如果实况动作观看表示感兴趣的观看可能超过当前观看帧,则用户能够移动所观看的区域。
16.根据权利要求14所述的服务器,还包括用于采集要被发送的图像的摄像机(2)和在其中将所述该图像作为视频帧序列进行保持的数字图像存储器(3),其中各个所述视频帧包括“m”像素דn”像素的矩阵,其中由所述摄像机(2)采集的图像存储在所述数字图像存储器(3)中,所述服务器(1)对从终端装置(6、7)接收的控制信号进行响应,以在所存储的m×n的主帧内从当前位置移动到新位置,以及对所述新位置处的所选择的区域进行压缩,以使得如果实况动作观看表示感兴趣的观看可能部分超过当前观看帧,则用户能够移动所观看的区域。
17.根据权利要求14所述的服务器,其中选择和压缩程序(9)的多个实例被运行以使得能够对不同用户的分别进行发送。
18.根据权利要求15或16所述的服务器,其中选择和压缩程序(9)的多个实例被运行以使得能够对不同用户的分别进行发送。
19.根据权利要求18所述的服务器,其中所述选择和压缩程序的每一个实例都向用户提供从摄像机源(2)所获得的选择或者从所述视频存储器(4)之一中向用户提供所存储的图像。
20.根据权利要求14所述的服务器,其中对来自摄像机(2)或者视频存储器(4)的数字化图像进行预选择并将其分为多个帧,每一个帧对于开关装置(15)都同时可用,该开关装置(15)对用户数据输入(16)进行响应,以选择要发送所述帧中的哪一个。
21.根据权利要求20所述的服务器,其中所选择的数字化图像经过编码解码器(17),以提供将经封装的位流,来发送给发出请求的用户。
22.根据权利要求20所述的服务器,其中所述多个帧中的每一个都被转换为准备发送给发出请求的用户的相应位流,开关(15)响应于用户数据输入(16)选择要发送的位流之一。
23.根据权利要求14所述的服务器,其中所述服务器对限定从所述主帧选择要观看的部分帧的用户输入信号进行响应,所述服务器(1)通过发送所述主帧(12)的压缩版本或者所述主帧的预选择区域(13、14)来对请求传输的用户数据包进行响应,并对限定观看帧的优选位置的后续用户数据信号进行响应,以传输限定该优选位置处的观看帧的位流。
视频流传输\n技术领域\n[0001] 本发明涉及视频流传输,更具体地,涉及一种用于控制视频流传输以允许远程选择所看到的图像的方法和装置。\n背景技术\n[0002] 已知使用数码相机来采集视频图像的技术,为安全起见,可以使用相机来观察某个区域,然后将信号传输到远程位置或存储在计算机存储介质中。通常使用几个相机来保证所看到的图像的合理分辨率,并且缩放便利性使得可以采集实时缩略图。可以同时设置不同的视角来允许从不同角度收看同一场景。\n[0003] 另外已知以下技术,将电影序列存储在计算机存储器中,用于通过高带宽链路下载至电视屏幕或其他显示器件上,以提供例如MPEG编码的视频比较,从而允许实时或近实时地通过低带宽互联来传送图像。\n[0004] 诸如口袋个人电脑的小型显示器件,例如Hewlett Packard PPC或者康柏IPAQ计算机,也具有分辨率相对较高的显示屏幕,这些显示屏幕在实际中对于覆盖例如监视区的大多数电影或相机图像显得较小。\n[0005] 甚至有可能在例如索尼爱立信T68i移动电话的紧凑型移动电话中设置更小的视屏,索尼爱立信T68i移动电话包括尖端的接收和处理能力,使得可以通过移动电话网络来接收和显示彩色图像。\n[0006] 近来,诸如存储和读取保存在数字多功能盘(DVD)中的数字数据的家庭电视收看领域的研究已经转向收看者通过选择变化的相机视角来收看情景以及选择所显示的情景的特定区域的缩略图的能力。DVD的播放器包括以下能力:执行所存储数据改写的处理能力,以及转换为待显示的图像所用的信号的能力。\n[0007] 如果收看者的经验不被贬低的话,这种数据到信号的转换就需要强大的实时处理能力。另外,由于需要发送至本地设备的数据量,大量的不同视角等是不切实际的。\n[0008] EP1162810中描述了一种数据分配设备,用于转换保存在文件服务器中的数据,该数据可以是保存相机导出图像。该设备用于将所接收的或所存储的数据转换为能够在请求数据终端上显示的格式,该请求终端可以是便携式电话显示屏。此处的转换设备能够把所存储的或所接收的图像分割为多个固定部分,由此可以使用从该显示设备接收到的信号来选择一个特定的可变图像部分。\n发明内容\n[0009] 本发明提供了一种对视频信号进行流传输的方法,该方法包括以下步骤:采集和/或存储一视频帧或者其中每一帧都包括“m”像素דn”像素的矩阵的视频帧序列;将每一个所述m×n的帧压缩为“p”像素דq”像素的各个导出帧,将其显示在能够显示至少p像素×q像素的帧的屏幕上,其中p和q分别远小于m和n;发送这至少一个导出帧,并接收用于限定至少m×n像素的优选收看区域的信号;将所选择的收看区域压缩为另一导出帧或者p像素×q像素的另一导出帧序列;以及发送进一步导出帧,以进行具有如下特征的显示,所接收信号包括用来限定所发送的进一步导出帧内的优选位置的数据,该数据确定了从中选出进一步导出帧的m像素×n像素内的位置。\n[0010] 优选地,所接收的信号还可以限定缩放级别,该缩放级别包括从所提供的多个有效缩放级别中选择一个,所述多个有效缩放级别中的每一个都限定了包括至少p像素×q像素但至多m像素×n像素的帧。\n[0011] 所接收的信号可以用于产生所发送的帧以像素为基础,或者以帧区域选择为基础,从当前位置向新位置的移动。另选地,可以通过在主帧中检测外观活跃的区域,并发送该区域附近更小的帧,来执行自动帧选择。\n[0012] 可以使用控制信号来从多个预定帧大小和/或视角中选择一个。在优选实施例中,可以使用控制信号在主帧内从当前位置移动到新位置,以及改变视区的大小,因此,可以实现对该主帧的特定区域的详细检查。这种选择可以利用响应于控制函数的跳函数,以在该主帧中根据指针的位置或者通过逐像素滑动来选择不同的帧区域。\n[0013] 这种系统中使用的终端装置可以包括:第一显示屏,用于显示所发送的帧;第二显示屏,具有可选择点,用于表示正显示的区域,或者想要显示的区域;以及发送装置,用于发送在当前显示的帧中限定优选位置的信号,进一步发送的帧是从该当前显示帧中导出的。\n[0014] 这种终端还可以包括进一步显示装置,该装置具有显示当前收看帧的坐标的能力,以及/或者用于显示与该收看帧相关的文本或其他信息。所显示的文本可以是其中存储有限定收看帧的信息的URL或类似定位标识的格式。\n[0015] 可以利用带有用于发送所选择收看帧的较高带宽返回路径的低带宽路径来执行控制传输。可以使用任何适当的传输协议。\n[0016] 本发明所用服务器可以包括可以访问多个视频存储器和/或连接用于采集要发送的图像的照相机的计算机或文件服务器。还可以提供数字图像存储器,其中可以存储该照相机采集的图像,从而如果实况动作收看表示基本上超过或者部分超过当前收看帧的兴趣收看,用户就可以及时地执行通过所示区域的运动。\n[0017] 该服务器可以运行选择场景以及压缩程序,以使得能够进行向不同用户的多个发送。每个这种场景都可以提供来自照相机源的选择,或者从所述视频存储器的一个提供所存储的图像。\n[0018] 在一种可操作模式下,该程序情景使得来自照相机的数字化图像或者视频存储被预选择并被分割为多个帧,每个帧都同时可用于开关装置,响应于用户数据输入来选择要发送所述帧的哪一个。然后,使所选择的数字化图像经过多媒体数字信号编解码器,以提供分组位流,发送至发出请求的用户。\n[0019] 在另选操作模式下,所述多个帧中的每一个都被转换为个各个位流,准备发送给发出请求的用户开关选择,响应于用户数据输入,将发送其中一个位流。\n[0020] 如果用户从主帧中选择待收看的部分帧,服务器就响应于通过从主帧发送该主帧的压缩版本或者预选择的区域而请求发送的用户数据分组,并且响应于限定收看帧的优选位置,以在优选位置发送用于限定收看帧的位流的用户数据信号,其中该服务器响应于在早先发送的帧中限定优选位置,以在m×n主帧内选择该位置的数据信号,从该m×n主帧中发送下一个m×n导出帧。\n附图说明\n[0021] 下面将参照附图,通过示例的方式来说明用于执行本发明的装置和方法,附图中:\n[0022] 图1是根据本发明的视频流传输系统的示意性框图;\n[0023] 图2是用于图1的系统的适合的PDA的示意图;\n[0024] 图3是来自视频流播放源或视频采集设备的收看帧(主帧)的视场的示意图;\n[0025] 图4、5和6是从以不同的压缩比压缩的显示在收看屏上的主帧导出的收看帧的视场的示意图;\n[0026] 图7是收看终端与图1的服务器间的发送的示意图;\n[0027] 图8的示意图表示收看帧的导出以及为发送而进行的收看帧的选择;\n[0028] 图9的示意图表示图7的另选传输配置;\n[0029] 图10、11和12的示意图表示为传输而进行的对主帧的区域的选择;\n[0030] 图13的示意图表示图8的另选导出;而\n[0031] 图14表示为传输而进行的对图13的位流输出进行的选择。\n具体实施方式\n[0032] 参照图1,该系统包括:服务器1,例如合适的计算机;具有宽视场的至少一个照相机2;以及数字图像存储器3。除照相机之外,还可以提供多个视频存储设备4,用于存储为分配给用户而预先采集的图像、电影等,用户由具有收看屏6的便携式移动电话5、个人口袋计算机(PPC)7以及台式监视器8来表示。通信设备5、7、8中的每一个都能够显示照相机2所采集的或者来自视频存储设备4的图像,但是仅当该图像被首次压缩至与各个观看屏的水平和垂直方向上的像素数目相对应的级别时才显示。\n[0033] 我们希望照相机2(例如,具有高像素密度,并以…像素×…像素采集大面积图像的…)能够将图像分解为较之收看屏上可以详细看到的高的多的级别。因此服务器1运行由程序图标9所表示的压缩程序的多个情景,每个程序都用作至少一个收看用户,并如下进行操作。\n[0034] 为了说明该构架,假定视频采集源为最大分辨率640×480像素的照相机2。然而,该视频源可以是任意类型(能够提供数字化数据用于传输或存储的视频采集卡、未压缩文件流等)并且最大分辨率也可以是任意大小(仅受到视频采集源的分辨率局限性的限制)。\n[0035] 另外,我们假定视频服务器利用176×144像素的“固定”帧大小对视频进行压缩和流传输,176×144像素通常小于或等于原始采集的帧大小。该“固定”视频帧大小仍可以是任意类型的(根据通信接收者的视频显示)并且可以可变地提供,各个程序9适于为其发送相关的设备5、7、8提供图像。\n[0036] 使用下述的算法来确定可能的可用视角。也可以使用其他算法来确定潜在的“视角”。\n[0037] 图7示意性示出了第一客户服务器互动构架,包括服务器1和与图1的收看屏6、\n7之一相对应的客户收看者终端10。在前进方向(从服务器1至客户10),使用反映通信链路11的带宽的合适协议的数据传输用于提供分组的数据流,包括显示信息和适当的控制信息。该链路例如可以是到便携式电话或者个人数字助理(PDA)或者口袋个人计算机(PPC)的蜂窝通信链路,或者可以是例如利用因特网或光纤或者铜电缆高带宽链路。使用的协议可以是TCP、UDP、RTP或者能够在链路11上令人满意地运送信息的任意其他合适的协议。\n[0038] 在后退方向(从客户10到服务器1)可以使用带宽较窄的链路12,因为通常该方向仅传送有限的数据,这些有限的数据反映请求特定视角的客户终端10的输入,或者限定该客户10想要观看的坐标。\n[0039] 返回图3,采集(或存储)的图像包括由矩形12表示的640×840像素图像。矩形14表示176×144像素区,我们希望该像素区能够显示客户观看屏10,而矩形13包括\n352×288像素视场。\n[0040] 另外参照图4,在如矩形121所示压缩为176×144之后,可以复制矩形12的视场。\n从说明中可以看出,所看到的图像会包含所采集图像中的所有信息。然而,由于执行了压缩,该图像有可能会“失真”或者模糊并缺少细节。然而,该视场可以被发送至第一场景中的客户终端10,以使得该客户能够在客户终端显示器上确定优选视场。可以通过将矩形121定义为“角视场1”,将更小的区域13(矩形131)定义为角视场2,并将大小与选择14(矩形\n141)相对应的屏幕定义为角视场3,来执行以上操作,其中角视场1、2、3使得能够通过从键盘简单输入数字1、2或者3来选择要发送的视场。这使得观看者能够选择服务器1中实现的虚拟缩放的缩放级别,而不是照相机1或者其他图像采集设备的物理缩放。\n[0041] 因此,如果客户选择了角视场2,则图像会表现得类似图5,具有稍多的可用细节(尽管由于所采集图像的x和y轴之间的不相容会导致所观看图像区域的某些变形)。客户可以再次选择进一步缩放,以观看矩形141所包围的区域,来获得图6的视场,该视场是在像素对应基础上从所采集图像中直接选择的。\n[0042] 尽管以上说明表示了三个角视场的情况,但是应该理解,可以从所采集图像12中导出的视场的数量不是限定的,并且可以在服务器1中容易地生成潜在视场的更宽选择,以为客户10提供视角以及从中选择的缩放级别的更宽的选择。\n[0043] 还应该注意的是,从客户终端10返回的数字信息无需作为显示图像的结果,而可以是可用视场的用户基于在先知识的通过客户终端10的预空闲输入。在另选实施例中,服务器可以在用户的历史简档的基础上选择最初发送的视场,从而传输了用户正常的优选视场,并且响应于该传输确定缩放级别或后续发送的角视场的任意改变。\n[0044] 用于提供潜在角视场的算法很简单,并且使用以下步骤:\n[0045] 在640×480像素的该示例中需要采集源(例如照相机1)的最大分辨率。还需要压缩视频流的分辨率,此处假定为176×144像素。\n[0046] 对于第一个计算出的角视场,采用直接从所采集的视频流开始的一对一关系。因此还参照图3,直接使用窗口14中的像素来提供176×144像素视场(图6,角视场3)。\n[0047] 为计算下一个角视场的尺寸,如果352×488是下一个推荐的角视场,就对x和y维度都乘以2。对该服务器进行编程,以通过该步骤中为真的采集源(640×480)来检查乘法器的应用不会超过选择,以超过视频流的大小。\n[0048] 在下一步骤中,如果先前的相乘没有导致x或y维度超过所采集视场的大小,就将最小窗口14的大小乘以3。在所示示例中,该乘法导致528×432像素的窗口(未示出),该窗口是可进一步选择的虚拟缩放。\n[0049] 继续增大该最小窗口14的x和y轴的乘法,直到其中一个维度超过了视频采集窗口的维度,于是进程终止并确定该被乘数为角视场1,由增加的角视场定义来限定其他缩放因数。因此产生已经确定的角视场的数量以及可能的角视场,服务器1将可用角视场的数量发送给客户10。其中一个视场会成为该客户的默认视场,可以是完全压缩的视场(图4,角视场1),或者如上所述,是来自已知用户的优选或者通过服务器中的预选择。\n[0050] 客户终端将在客户观看终端10上显示可用角视场,使得用户能够确定选择哪个视场。一旦用户做出确定,就将所需视场数据发送给服务器1,服务器1随后发送带有远程选择角视场的各个视频流。\n[0051] 因此,参照图8,服务器1从视频采集源,例如照相机2、数字图像存储器3或者视频存储器4获取信息,并应用上述的多视场确定算法(14)。这产生了选定数量的角视场(示出了3个)121、131、141,它们被馈送至开关15。开关15响应于从客户(例如图1的PPC6)接收到的包含角视场确定的数据包16,将合适的角视场数据流传输至多媒体数字信号编解码器17,并且此后对数据包18中的压缩视频进行流传输。\n[0052] 为避免疑惑,此处应该注意的是,至多媒体数字信号编解码器17可以使用诸如MPEG4等任意合适的编码,所产生的角视场完全独立于所采用的视频压缩标准。\n[0053] 图9中示出了另选客户服务器互动,其中仅出现1路互动。仅从客户向服务器发送网络消息,以考虑带宽限制,使用任意适合的协议(TCP、UDP、RDP等)来传输,在客户和服务器中预先确定了角视场,从而没有数据返回给客户。使用了具有默认值(例如,5个视场)的预定多视场确定算法,并且这种算法具有以下格式(尽管可以开发和使用其他算法):\n[0054] 步骤1\n[0055] 从最小分辨率中减去最大分辨率。在我们的示例中,最大分辨率为640×480,最小分辨率为176×144。因此,减法((640-176)&(480-144))的结果为(464,336)。\n[0056] 按照以下方式来生成这5个视场。\n[0057] 每个视场都是通过向最小分辨率(176×144)中添加步骤1中生成的差的百分数(464,336)。\n[0058] 该百分数通常为视场1=100%、视场2>75%、视场3>50%、视场4>25%、视场5>0%。当然,也可以应用更小的百分数。\n[0059] 因此,对于每个视场,生成以下坐标。\n[0060] 视场1(640,480)\n[0061] X=176+464=640\n[0062] Y=144+336=480\n[0063] 视场2(524,396)\n[0064] X=176+(0.75*464)=524\n[0065] Y=144+(0.75*336)=396\n[0066] 视场3(408,312)\n[0067] X=176+(0.50*464)=408\n[0068] Y=144+(0.50*336)=312\n[0069] 视场4(292,228)\n[0070] X=176+(0.25*464)=292\n[0071] Y=144+(0.25*336)=228\n[0072] 视场5(176,144)\n[0073] X=176+0=176\n[0074] Y=144+0=144\n[0075] 该进程完成后,就生成了具有如上坐标的5个视场。\n[0076] 类似图3的图标可以说明可能的视场,但是这5个视场应该绘出。\n[0077] 另一方面,“客户”应用也知道该“算法”,因此每个视场都应该表示最大和最小分辨率之间的差的百分数(100%、75%、50%、25%、0%)。这样,客户无需知道流视频的最大和最小坐标,因此1路客户-服务器互动是可行的,这加速了改变“角视场”的进程。\n[0078] 此外,服务器1为了执行以上步骤而获取最大和最小分辨率。通常,最大分辨率是视频采集卡(照相机)2所提供的分辨率,而最小分辨率是流传输应用所提供的分辨率(通常对于移动视频为176×144)。首先启动服务器应用后,应当开始并完成“多视场确定算法”处理。\n[0079] 5个“角视场”显示在客户设备上。\n[0080] 选择了一个“视场”后,生成包含所识别的“角视场”的消息,并发送至服务器。\n[0081] 服务器会根据与图8所示相同,但具有5个可用于流传输的角视场的方式来选择该视场并对内容进行流传输。\n[0082] 表示使得观看者能够改变要显示的角视场的控制的图2示出了适应客户设备。提供了其上显示有选定视频流的初级观看屏20。在该示例中,屏幕包括176×144的像素画面。另外提供了次级屏21,其对于使显示屏22表示住屏幕20所显示的实际视频的比例和位置的限定宽松。因此屏幕22中的box22的位置表示了与初始最大基准帧相关的图像的位置。较小的屏幕21可以是触敏的,以使得观看者能够即时地选择要将流传输的视频移动到的位置。\n[0083] 另选地,可以使用选择键23-27或者根据以上概况的角视场探讨,或者基于逐像素来移动该图像,其中客户和服务器之间存在足够的带宽,使得可以发送大量数据包。键27意在允许选择待显示在显示屏20的中心视场。如果使用了固定数量的角视场,那么屏幕显示会根据可用帧的数量而左右上下跃变。\n[0084] 如果提供了文件内容的视频流传输,就提供一组视频控制键28-32,这些分别具备停止功能28、倒退功能29、播放功能30、快进31和暂停32的键提供了合适的控制信息,用来控制下载视频并存储在设备7,或者作为控制包发送给服务器1的本地显示。\n[0085] 通过选择键33-37提供了选择固定角视场的另选控制方法,并且为了完整,示出了本地音量控制装置38。会呈现信息显示画面39,其可以表达与所显示的视频相关的字母文本说明,并且还可以呈现状态画面40,其显示例如信号强度,用于电话接收。\n[0086] 下面,首先参照图10来说明视场选择的进一步说明。因此使用箭头键33-37并开始于上述5个角视场,它们是:视场1(640×480)像素、视场2(524,396)、视场3(408,312)视场4(292,228)和视场5(176×144像素)。我们在图10中与640×480像素的全帧21相比较地来查看视场5(176×144像素)(矩形22)。也可以将其表示为图2的显示屏21中的矩形,从而用户获悉显示在逐显示屏20上的可用视频采集的比例。\n[0087] 用户现在可以选择要发送的任意一个角视场,例如对键33进行操作会从服务器1生成信号包请求角视场1。将发送该完全压缩的显示(图3),以显示在显示区域20中,而屏幕21将表示当前在显示该完全视场。\n[0088] 通过对键34、35、36和37进行操作来分别选择角视场2、3、4,以及最先讨论的视场(视场5)。应该理解,可以设置多于或者少于5个键,或者如果显示屏20为触敏型,则可以与视频相覆盖地显示虚拟键组,从而在正确位置接触该屏幕会导致发送角视场请求以及在从服务器1进行传输的过程中所需的变化。还可以实现的是,矩形22占去较小屏幕21的比例也会改变,以反映出当前显示的角视场。这种调整可以由设备7的内部程序来执行,或者可以连同数据包18从服务器1传来。\n[0089] 以上考虑了中心角视场,下面我们来考虑用户如何才能观看到以偏离图像中心的不同点为中心的角视场。5个可用的视场仍具有相同的压缩比,从而使用图10中心所示的与全视频帧(640×480)相关的角视场5(176×144像素)来说明观看者沿图像表面移动或上下移动的方式。\n[0090] 再次考虑图2和图10至12,并假定用户操作了左箭头键26。这将导致客户向服务器1发送网络数据包。该数据包可以包括“左移”指令以及以下两者之一:例如从用户操作键26的时间长度导出的要移动的屏幕的百分数;以及要移动的可能的“像素数”。服务器\n1计算要移动的像素数,并以所需的像素数向左偏移角视场,直到该角视场的左边缘抵达全视频帧的最左边为止。返回的数据包现在包括新位置处对于角视场5的压缩视频,而较小观看屏中的矩形22还可以表示出修订的近似位置。一旦定位在新位置的中心,就可以使用键33至37来改变客户所接收的全帧的数量。\n[0091] 可以使用键23来表示向上移动,键24表示向右移动,而键25表示向下移动。这些键中的每一个都使得客户程序发送合适的数据包,并且服务器通过在任意方向上相应地移动到全视频帧的界限处来导出要发送的视场。如果用户操作了键27,则可以使用该动作将该视场返回至中心位置,如同最初使用选中压缩(角视场1-5)进行发送的那样,所述选中压缩是利用键33-37最后选择的。\n[0092] 下面考虑图2的虚拟窗口显示21,可以使用该虚拟窗口来允许用户快速移动至另一位置,并且还赋予该用户确定在主显示屏20上何处显示全视频帧以及显示多少的能力。\n如果假定较小的显示屏具有12像素×10像素的最大维度(最为另选,可以是主显示屏的角落上的覆盖),每个视场都将具有以下虚拟屏幕的百分比表示:视场1=100%、视场2=\n80%、视场3=60%、视场4=40%、视场5=20%.\n[0093] 因此,通过用虚拟窗口的维度乘以这些百分比,我们得到所显示的矩形22的以下维度:\n[0094] 视场1(12,10)\n[0095] X=12*1=12\n[0096] Y=10*1=10\n[0097] 视场2(10,8)\n[0098] X=12*0.8=10\n[0099] Y=10*0.8=8\n[0100] 视场3(7,6)\n[0101] X=12*0.6=7\n[0102] Y=10*0.6=6\n[0103] 视场4(5,4)\n[0104] X=12*0.4=5\n[0105] Y=10*0.4=4\n[0106] 视场5(2,2)\n[0107] X=12*0.2=2\n[0108] Y=10*0.2=2\n[0109] 因此,使用以上维度绘出了内部矩形22(可能是黑色显示屏中的白色显示)。虚拟窗口因此以如下方式进行工作。如果选择了视角5,则矩形22(2像素×2像素)和屏幕\n21(12像素×10像素)会具有那些维度,并且除了较小矩形22为白色外,该虚拟窗口会为黑色。图2中示出了这种情况,并且图10至12中也示出了这种情况。如果该虚拟窗口为触敏型并且用户按下了左上角,如图11中点41所示,那么该显示屏需要如图12所示从中心位置移动到全帧(0,0定义了帧的左顶角)的左上角。\n[0110] 因此在客户端,每个像素都被认为是一个单元,并且客户计算需要多少单元在左和上方向移动。从图11可以看出,当前位置可以限定为白框矩形22的左顶角位置(5,4)。\n因此为了移动至(0,0)必须向左移动5个像素并向上移动4个像素计算黑框和白框之间的单元的差,这种情况下是水平方向5个单元,垂直方向4个单元。\n[0111] 另外,如果需要从当前位置移动该屏幕的百分比,则我们可以通过使要移动的像素数除以当前位置与新位置之间的像素差数,来计算从当前位置开始向左和向上的100%移动。结果是,白框中朝向黑框间隙的移动为100%,从而要发送的网络消息包含左100、上\n100指令,该数字通常表示比率。\n[0112] 服务器将该消息翻译为左移100%上移100%并启动以下程序。\n[0113] 通过图12考虑,角视场为视场(176×144像素)而全视频帧为640×480像素,必须计算角视场5窗口的左上角的相对位置。图12中的白点所表示的全尺寸窗口的中心位于“x”方向的640/2=320,以及“y”方向的480/2=240(320,240)。角视场5中的中心点相对于左上角的位置是“x”方向176/2=88,“y”方向144/2=77。因此对于左上角,为了移动至(0,0),中心点必须在向左方向(x方向)移动320-88=232,并在向上方向(y方向)移动240-72=168。因此相对于当前位置的移动是向左232个像素,向上168个像素,因此将该视场从中心位置移动到了图12中阴影所示的左顶角位置。因此将新的角视场\n5从服务器发送至客户设备。\n[0114] 应该理解,例如如果用户选择了虚拟屏幕的第二(垂直)像素行左侧位置,则所发送的数据包会包含左80,即在被虚拟窗口差的5个像素所除的虚拟窗口的左向中移动4个像素。对于其他移动,由客户应用类似的计算。\n[0115] 应该理解,为了从新位置(0,0)移回到初始位置(232,168),例如如果用户启动虚拟窗口的中心,则所发送的移动会是右42(5像素移动12像素差=5/12=大约42%)和下\n40(4像素移动10像素留下=4/10=40%)。\n[0116] 返回图8,其中文件内容用于提供向较小观看客户的发送,需要下采样算法。假定发送帧大小为176×144像素,必须通过任何大小的滤波器将要发送的视频下采样为\n176×144像素。\n[0117] 该处理开始于分为两个下采样的循环,直到该视频无法被进一步分为两个为止。\n计算因子,然后进行最终下采样。因此假定输入视频具有“M”דN”像素,并且输出帧大小为176×144像素,第一步骤是用176来除M,给定X=M/176的各个水平(X)帧维度除以\n2,并且如果除法过后X小于1,就计算宽度和高度因子并使用这些因子来对该视频采样,给出176×144格式的视频。\n[0118] 在应用该算法之前和之后,以YUV文件格式应用下采样。因此Y分量(640×480)被下采样为176×144Y分量,而U和V分量(320×240)相应地被下采样为88×72。下采样算法的整个过程如下。\n[0119] 步骤1:\n[0120] 计算H因子、W因子:\n[0121] H因子=宽度/176,其中宽度指水平方向(我们的示例中为640)\n[0122] W因子=高度/144,其中高度指垂直方向(我们的示例中为480)\n[0123] 步骤2:\n[0124] 计算X因子:\n[0125] X=H因子/2\n[0126] 步骤3:\n[0127] 检查是否X≥1\n[0128] 如果是,前进至步骤4,否则前进至步骤6\n[0129] 步骤4:\n[0130] 通过除以4来进行下采样:\n[0131] 对于Y分量,使用以下公式:\n[0132] Y’[i*Width/4+j/2]=((Y[i*Width+j]+Y[i*Width+j+1]+Y[(i+1)*Width+j]+Y[(i+1)*Width+j+1])/4)\n[0133] 其中,Y’=转换之后的Y分量,\n[0134] Y=转换之前的Y分量\n[0135] 0≤i<高度,i=0,2,4,6…等\n[0136] 0≤j<宽度,j=0,2,4,6…等\n[0137] 对于U、V分量,使用以下公式:\n[0138] U’[i*Width/2/4+j/2]=((U[i*Width/2+j]+U[i*Width/2+j+1]+U[(i+1)*Width/2+j]+U[(i+1)*Width/2+j+1])/4)\n[0139] 其中,U’=转换之后的U或V分量\n[0140] U=转换之前的U或V分量\n[0141] 0≤i<高度/2,i=0,2,4,6…等\n[0142] 0≤j<宽度/2,j=0,2,4,6…等\n[0143] 步骤5:\n[0144] 高度=高度/2\n[0145] 宽度=宽度/2\n[0146] X=X/2\n[0147] 至步骤3:\n[0148] 步骤6:\n[0149] 计算高度因子(Hcoe)和宽度因子(Vcoe):\n[0150] Hcoe=宽度/176\n[0151] Vcoe=高度/144\n[0152] 步骤7:\n[0153] 仅在宽度≠176、高度≠144时才执行该步骤。\n[0154] 因此,该步骤对尺寸不是均匀的176×144的输入图像进行校正。\n[0155] 利用宽度/Vcoe以及高度/Hcoe来进行“下采样”:\n[0156] 对于Y分量使用以下公式:\n[0157] Y’[i*176+j]=((Hcoe*Y[(i*Vcoe)*Width+(j*Hcoe)]+Y[(i*Vcoe*Width)+(j*Hcoe+1)])/2/(1+Hcoe)+(Vcoe*Y[(i*Vcoe+1)*Width+(j*Hcoe)+Y[(i*Vcoe+1)*Width+(j*Hcoe+1)]]/2/(1+Vcoe))\n[0158] 其中Y’=转换之后的Y分量,\n[0159] Y=转换之前的Y分量\n[0160] 0≤i<144,i=0,1,2,3…等\n[0161] 0≤j<176,j=0,1,2,3…等\n[0162] 对于U、V分量,采用以下公式:\n[0163] U’[i*88+j]=((Hcoe*U[(i*Vcoe)*Width/2+(j*Hcoe)]+U[(i*Vcoe*Width/2)+(j*Hcoe+1)])/2/(1+Hcoe)+(Vcoe*U[(i*Vcoe+1)*Width/2+(j*Hcoe)+U[(i*Vcoe+1)*Width/2+(j*Hcoe+1)]]/2/(1+Vcoe))\n[0164] 其中,U’=转换之后的U或V分量\n[0165] U=转换之前的U或V分量\n[0166] 0≤i<72,i=0,1,2,3…等\n[0167] 0≤j<88,j=0,1,2,3…等\n[0168] 过程结束。\n[0169] 应该理解,也可以开发出其他算法,以上算法仅给出一个示例。\n[0170] 下面参照图13,对于预记录内容,可以首先应用以上提到的多视场确定算法,以生成与角视场数量相同的压缩位流,多视场确定切换机制确定要发送哪个位流。因此视频采集源(2,4)向多视场确定算法14提供全帧图像,以生成如上参照图8所述的角视场121、\n131、141。然而,此处每个角视场都被馈送至各个数字信号编解码器171、172、173,以生成各个位流181、182、183。该方法对于预记录视频内容尤其适用。\n[0171] 参照图14,将三个位流提供至角视场开关151,通过利用网络从客户输入数据包来预先控制该角视场开关151。于是合适的位流被送至多媒体数字信号编解码器17,这些位流被转换为合适的传输协议,用于对数据包18进行流传输,以显示在客户设备上。\n[0172] 本发明尤其适于远程控制角视场,以从诸如照相机或文件存储器的远程视频源提供可选图像或图像比例,用于显示在小屏幕上,以及例如利用IP和移动通信网络进行传输。例如,本发明在视频监视、视频会议以及视频流传输方面的应用使得用户可以确定以何种详细程度来收看,并允许对远程客户所控制发送的帧进行有效的虚拟缩放,而无需物理调整照相机设置。\n[0173] 在视频监视中,可以观看完整的情景,并且如果存在可能的兴趣动作,就缩放为该情景的一部分。更具体地,由于可以将完整照相机帧存储在数字数据存储器中,所以可以通过进入所存储的图像并移动与所存储的帧相关的角视场,在远程屏幕上检查详细的区域。
法律信息
- 2015-02-25
未缴年费专利权终止
IPC(主分类): H04N 7/24
专利号: ZL 200380108056.9
申请日: 2003.12.30
授权公告日: 2012.04.18
- 2012-04-18
- 2006-04-05
- 2006-02-08
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| | 暂无 |
1998-08-18
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |