CN101223791B - 转变压缩级别的方法及其交互式流式图像*** - Google Patents

转变压缩级别的方法及其交互式流式图像*** Download PDF

Info

Publication number
CN101223791B
CN101223791B CN2006800262101A CN200680026210A CN101223791B CN 101223791 B CN101223791 B CN 101223791B CN 2006800262101 A CN2006800262101 A CN 2006800262101A CN 200680026210 A CN200680026210 A CN 200680026210A CN 101223791 B CN101223791 B CN 101223791B
Authority
CN
China
Prior art keywords
level
picture frame
compression
new
smooth
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.)
Expired - Fee Related
Application number
CN2006800262101A
Other languages
English (en)
Other versions
CN101223791A (zh
Inventor
K·J·小艾尔斯
S·斯威森
V·D·托
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101223791A publication Critical patent/CN101223791A/zh
Application granted granted Critical
Publication of CN101223791B publication Critical patent/CN101223791B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/142Detection of scene cut or scene change
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/162User input
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234354Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering signal-to-noise ratio parameters, e.g. requantization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25841Management of client data involving the geographical location of the client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2668Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42202Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS] environmental sensors, e.g. for detecting temperature, luminosity, pressure, earthquakes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Graphics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Ecology (AREA)
  • Emergency Management (AREA)
  • Environmental & Geological Engineering (AREA)
  • Environmental Sciences (AREA)
  • Remote Sensing (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Business, Economics & Management (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

公开了用于转变流式图像***的压缩级别的***、方法和介质。一个实施例提供了一种用于在流式图像***中的图像帧之间转变压缩级别的方法。实施例可以包括由平滑模块接收对于与图像帧相关联的新的压缩级别的请求。实施例通常还可以包括通过基于初始压缩级别、目标压缩级别,以及达到所述目标压缩级别的帧数来生成多帧平滑例程,从而由所述平滑模块进行平滑探试。实施例还可以包括基于所生成的多帧平滑例程,由所述平滑模块为所述图像帧设置新的压缩级别。进一步的实施例可以包括由所述平滑模块向内容编码器传输对所述新的压缩级别的指示。

Description

转变压缩级别的方法及其交互式流式图像*** 
技术领域
本发明属于流式图像***(streaming image system)领域。更特别地,本发明涉及用于在流式图像***中转变压缩级别(transitioningcompression levels)的***、方法和介质。 
背景技术
对于将图像或其它内容从服务器流式传输至多个客户机的能力的需求在快速增长。利用流式图像的多媒体应用日益普及,并且其包括视频游戏、导航软件、流式电影或视频等。然而,这些应用常常是网络资源密集的,并且当内容提供商使用它们来分发内容,尤其是对于大量用户的时候,会导致带宽瓶颈和网络减速。随着流式图像应用的日益普及,与其关联的网络性能问题将会恶化。 
为了减少流式图像内容对网络的影响,内容提供商常常在传输之前压缩其图像。于是客户机***在向用户显示图像之前就必须对收到的图像进行解压缩。取决于压缩的级别,可以通过利用压缩来显著降低网络通信量。用于视频图像的一种压缩方案是Motion-JPEG(动态-JPEG),其通过以JPEG格式对每一帧进行加密,将联合图像专家组(JPEG)数字图像压缩标准扩展到视频。JPEG组创建了ISO/IEC国际标准10918-1ITU-T建议T-81(下文称为“JPEG”)来创建一种解码/编码标准。JPEG和Motion-JPEG是有损压缩标准,并且因而信息在压缩过程中有损失。Motion-JPEG提供了良好的每帧压缩级别,但是其压缩步骤中的一些,例如Huffman编码,并不总是必需的,并且可能降低性能。 
运动图像专家组(MPEG)创建了另一系列的压缩标准,包括MPEG-1、MPEG-2和MPEG-4(分别为ISO/IEC国际标准11172、13818和14496)。 MPEG工作组设计了MPEG标准来实现多媒体流式传输,并且利用基于块的运动补偿预测(motion compensated prediction,MCP)来帮助压缩。对于很多应用来说,MPEG改进了Motion-JPEG的性能。然而,对于交互式流式图像应用来说,MPEG并不是最优的。MPEG要求服务器生成多帧电影来获得良好的压缩级别,这使得它不太适用于具有逐帧交互的交互式应用。相反,MPEG被设计和优化用于将诸如电影或其它视频这样的可预测内容流式传输给客户机或其它用户设备。 
交互式流式图像***向希望将内容从服务器分发至多个客户机的内容提供商提出了重大挑战。交互式流式图像***通常对于每帧接收用户输入,以便基于最新的用户信息来定制每个图像帧。举例来说,基于地图的应用(map-based application)可以基于用户位置和方位(heading)提供图像帧,以便该应用可以创建这样的图像,即该图像向用户显示他们在该位置和方位会看到什么。在另一例子中,显示了关于在汽车后面的事物的虚拟视图的应用可以使其图像基于该汽车的当前位置、方向和速度。因为每一帧都必须基于新的信息而被重新计算,所以MPEG并不提供有效的方法,因为当处理单帧的时候,它并不获得其最佳的压缩率。类似地,当随交互式流式图像***使用的时候,Motion-JPEG并不提供任何优势,因为它应用了对于每个图像帧来说可能资源过于密集的压缩方法。 
因此,需要一种用于管理交互式流式图像***的有效机制。当内容提供商希望向多个客户机***提供交互式图像内容的时候,甚至更需要这样的机制。 
发明内容
通过用于在流式图像***中转变压缩级别的***、方法和介质解决了以上指出的大部分问题。一个实施例提供了一种用于在流式图像***中转变压缩级别的方法。实施例通常可以包括:由平滑模块(smoothing module)接收对于与图像帧相关联的新的压缩级别的请求。实施例通常还可以包括:通过基于初始压缩级别、目标压缩级别,以及达到所述目标压缩级别的帧 数来生成多帧平滑例程,从而由所述平滑模块进行平滑探试(smoothingheuristic)。实施例还可以包括:基于所生成的多帧平滑例程,由所述平滑模块为所述图像帧设置新的压缩级别。 
另一实施例提供了一种机器可访问介质,其含有当在数据处理***中执行的时候,有效地使所述***实现用于在流式图像***中转变压缩级别的一系列操作的指令。所述一系列操作通常包括:由平滑模块接收对于与图像帧相关联的新的压缩级别的请求。所述一系列操作通常还可以包括:通过基于初始压缩级别、目标压缩级别,以及达到所述目标压缩级别的帧数来生成多帧平滑例程,从而由所述平滑模块进行平滑探试。实施例还可以包括这样的一系列操作,其用于基于所生成的多帧平滑例程,由所述平滑模块为所述图像帧设置新的压缩级别。 
一个实施例提供了一种流式图像***。所述***通常可以包括内容发生器,其用于生成图像流的新的图像帧。所述***通常还可以包括平滑模块,其用于通过基于初始压缩级别、目标压缩级别,以及达到所述目标压缩级别的帧数来进行平滑探试,从而为所述新的图像帧选择新的压缩级别。所述***通常还可以包括内容编码器,其用于基于所选择的压缩级别对所述新的图像帧进行编码。 
附图说明
下面参照附图,借助于例子较为详细地描述了本发明的实施例,在附图中,同样的参考标记可以表示类似的元件,并且在附图中: 
图1根据一个实施例描绘了用于将图像从服务器流式传输至多个客户机的***的环境; 
图2根据一个实施例描绘了图1的流式图像***的客户机的结构; 
图3根据一个实施例描绘了用于生成、编码和传输新的图像帧的流程图的例子; 
图4根据一个实施例描绘了用于接收用户输入以及接收并向用户显示图像帧的流程图的例子;以及 
图5根据一个实施例描绘了用于编码和解码图像帧的流程图的例子。 
具体实施方式
下面详细描述附图中所描绘的本发明的示例实施例。如此详细的示例实施例是为了清楚地表达本发明。然而,所提供的大量细节并不旨在限制实施例的预期变化;相反,本发明涵盖了落入所附权利要求所限定的本发明的精神和范围内的所有修改、等效和替换。下面的详细描述目的是使这样的实施例对本领域的普通技术人员是显而易见的。 
公开了用于转变流式图像***的压缩级别的***、方法和介质。一个实施例提供了一种用于在流式图像***中的图像帧之间转变压缩级别的方法。实施例可以包括:由平滑模块接收对于与图像帧相关联的新的压缩级别的请求。实施例通常还可以包括:通过基于初始压缩级别、目标压缩级别,以及达到该目标压缩级别的帧数来生成多帧平滑例程,从而由该平滑模块进行平滑探试。实施例还可以包括:基于所生成的多帧平滑例程,由该平滑模块为该图像帧设置新的压缩级别。进一步的实施例还可以包括:由该平滑模块向内容编码器传输对新的压缩级别的指示。 
所公开的实施例提供了一种用于在流式图像***中转变压缩级别的方法和***。在所公开的实施例中,生成图像流的服务器可以请求平滑模块确定图像流的每个图像帧的压缩级别。平滑模块可以通过为图像流的一个或多个图像帧生成多帧平滑例程来进行平滑探试。平滑模块可以使用诸如由此开始的初始压缩级别、目标压缩级别,以及其中达到目标压缩级别的帧数这样的信息。基于所生成的多帧平滑例程,平滑模块然后可以为每个图像帧设置压缩级别。服务器然后可以在将图像帧传输给客户机之前使用该压缩级别对该图像帧进行编码。客户机然后可以对使用该压缩级别的图像帧进行解码并且将图像显示给用户。 
使用所公开的压缩级别转变***,服务器可以有利地为用户在高压缩级别与低压缩级别之间进行转变,而很少或不影响用户的观看体验。这可以允许服务器在仅需要较低质量的图像的时候通过平滑地提高压缩级别, 以及同样地在需要较高质量的图像的时候平滑地降低压缩级别来保存带宽。交互式图像流式***可以有利地使用所公开的***来根据用户的活动以及与其环境的交互来平滑地提供变化的压缩级别。所公开的压缩级别转变***对于这样的流式图像***也可以是有用的,即该流式图像***是非交互式的,但变化的压缩级别对其来说在降低带宽或其它资源需求方面可以提供好处。 
虽然以下参照硬件和/或软件的特定配置描述了具体的实施例,但是本领域的技术人员将意识到,利用其它大体等效的硬件和/或软件***可以有利地实现本发明的实施例。 
现转至附图,图1根据一个实施例描绘了用于将图像从服务器流式传输至多个客户机的***的环境。在所描绘的环境中,交互式图像流式***100包括通过网络104连接的服务器102和一个或多个客户机106。客户机106可以通过网络104将客户机信息传输给服务器102,并且服务器102然后可以基于客户机信息生成新的图像帧。在服务器102生成新的图像帧之后,其然后可以以规定的压缩级别对图像帧进行编码,并且将编码的图像帧以及对用于编码图像帧的压缩级别的指示传输给客户机106。客户机106然后可以基于压缩级别对图像帧进行解码,并且将图像显示给用户。使用交互式图像流式***100,客户机106和服务器102因而可以一起工作以便基于每个周期的客户机信息生成流式图像流的每个图像帧。交互式图像流式***100可以基于客户机信息、连续图像之间的差异,以及其它信息,有利地选择适当的压缩级别(如随后将较为详细描述的),这会导致交互式图像流式***100中带宽和处理的更有效使用。 
服务器102、一个或多个客户机106及其任意或全部组件均可以在通用或专用计算机***(例如,个人计算机、工作站、服务器、大型计算机、笔记本式或膝上型计算机、平板PC、台式计算机、便携式计算机***、PDA、机顶盒、移动电话、无线设备等中的一个或多个)上执行。在一个实施例中,计算机***可以包括中央处理器(CPU)以及关联的易失性和非易失性存储器,其包括随机访问存储器(RAM)和基本输入/输出*** 只读存储器(BIOS ROM)、***监视器、键盘、一个或多个软盘驱动器、CD-ROM驱动器、硬盘存储驱动器(也称为“硬驱动器”或“硬盘驱动器”)、诸如鼠标之类的指点设备,以及任选的网络接口适配器,所有这些均使用用于将这些组件电连接在一起的主板或***平面(system planar)来进行电连接。在一个实施例中,服务器102可以是国际商业机器公司(IBM
Figure RE-2006800262101_0
)eSever或者类似的服务器,其具有执行软件的一个或多个处理器或处理器线程,以及/或者与数据存储设备(例如,RAM、只读存储器(ROM)、闪速存储器、光盘驱动器、硬盘驱动器等)耦合的一个或多个状态机。在一个实施例中,客户机106可以是无线设备,其具有与数据存储设备耦合的处理器以及诸如键板和显示屏之类的用户输入和输出设备。 
网络104可以是任何类型的数据通信通道或是数据通信通道的任意组合,例如因特网、内联网、LAN、WAN、以太网、无线网络等。当位于中心的服务器102向多个分布式客户机106传输流式图像内容时,因特网或其它公共网络尤其可用作网络104,因为这将促进服务器102与多个客户机106之间的通信。一些或全部客户机106可以通过无线网络104与因特网网络104(以及服务器102)通信。然而,本领域的技术人员将认识到,利用任何类型的数据通信通道均可以实现文中所描述的发明。 
服务器102可以包括诸如通信模块110、内容变化检测器112、内容发生器114、内容编码器116和平滑模块118这样的组件。通信模块110可以促进服务器102通过网络104将信息传输给客户机106,以及通过网络104从客户机106接收信息。在其与客户机106的通信中,通信模块110可以使用任何类型的协议,例如客户机-服务器协议。在一个实施例中,服务器102可以使用通信模块110从客户机106接收客户机信息,并且可以使用通信模块110将编码的图像帧和/或压缩信息传输给客户机106。客户机信息可以包括标识客户机106或其用户(或者用户的偏好)的信息,以及与应当被流式传输给客户机106的图像有关的信息,例如用户的当前位置或取向(orientation)。在一个例子中,对于基于用户的当前位置向用户显示三维(3-D)图像的图像流式应用来说,客户机信息可以包括用户位置的 指示,例如坐标。对于向用户显示关于他们将会看到什么的虚拟表现的另一应用来说,客户机信息还可以包括诸如罗盘方向的方向信息,其提供对用户正在注视的方向的指示。本领域的技术人员将认识到,可以将任何类型的信息包括作为客户机信息。 
内容发生器114可以基于通信模块110所接收到的客户机信息来生成新的图像帧。内容发生器114(其可以是多媒体或流式图像应用)可以使用任何类型的方法来确定新的图像帧的内容。举例来说,内容发生器114可以基于客户机106或其用户的当前位置或方向、基于接收或计算的用户的速度、基于事件的发生、基于当前时间、基于当前天气或照明条件、基于其它客户机106或用户的位置,或者任何其它的因素来生成新的图像帧。在一个示例性实施例中,内容发生器114生成新的图像帧,从而创建客户机106的当前位置的3-D表示。在另一示例性实施例中,基于用户及其客户机106的当前位置和方向,内容发生器114可以生成新的图像帧,其描绘了关于具有客户机106的用户会看到什么的虚拟视图。在另一实施例中,内容发生器114基于对客户机信息的重复接收,可以确定客户机106的速度和方向,并且然后可以使用所确定的速度和方向来生成适当的新的图像帧。 
内容变化检测器112可以分析内容发生器114所生成的新的图像帧,并且将其与先前的图像帧进行比较以确定它们是否不同。内容变化检测器112可以使用任何类型的方法或者方法的组合来确定新的图像帧与先前的帧之间的内容是否有变化。内容变化检测器112所使用的方法可以由管理员或者用户选择,其可以基于当前网络104条件,或者其它因素。在一个实施例中,内容变化检测器112可以使用每个图像帧的压缩大小的比较来确定是否已发生了变化。交互式***中未变化的压缩图像帧大小有可能指示客户机106正在重复请求相同的图像以及连续的图像帧是相同的。在另一实施例中,内容变化检测器112可以利用两个图像帧的位图的向量或统计处理,通过使用Boolean分析来确定向量间是否存在差异。在进一步的实施例中,当图像具有较高的规律性并且速度较为关键时,内容变化检测 器112可以利用统计处理算法的索引形式(indexed version)的向量。在可选的实施例中,内容变化检测器112可以使用场景跟踪(scene tracking)或者其它算法来尝试预测客户机106的用户与其环境进行交互的水平,使用该预测来帮助确定新的图像帧是否与先前的图像帧相同。在另一可选的实施例中,内容变化检测器112可以使用客户机信息来确定图像中是否已发生了变化,因为举例来说,如果客户机的位置没有任何变化,则图像也不太可能会变化。在另一可选的实施例中,内容变化检测器112可以使用内容变化检测方法之一来确定图像帧之间的变化的大小或程度,而不是确定是否已发生了变化。当变化的大小或程度将影响选取的压缩级别时,这可能是有用的。 
内容编码器116和平滑模块118可以组合地或者单独地用于确定待传输的图像帧的适当的压缩级别,并且以所选择的压缩级别对图像帧进行编码。在一个实施例中,如果在连续的图像帧之间不存在内容变化(如内容变化检测器112所确定的),则内容编码器116可以希望改善待传输的图像帧的质量(并且因而降低压缩级别)。在交互式图像流式***中,静态图像(连续帧之间没有变化)指示从客户机的观点来看该图像是静止的,并且因而在重要性上提升图像质量。相比较而言,如果连续图像彼此不同,则从客户机106的观点来看图像是运动的,并且可以利用较低质量的图像(具有较高的压缩级别)。当用户在观看表现运动的图像时,图像中的细节可能不太重要,因为细节变得模糊,并且眼睛是造成细节丢失的原因。当用户在观看静止的图像时,图像细节可能较为重要,因为用户很可能会注意到细节的任何瑕疵或缺失、压缩人为结果等等。 
基于所感知的用户和/或客户机106的运动,基于图像流中所描绘的运动(如连续图像之间的差异或其缺失所表示的),所公开的***有利地改变压缩级别。当连续图像在各帧之间发生变化(意味着运动)的时候,内容编码器116可以增加压缩级别,并且降低带宽要求,而不会减损用户的观看体验。当连续图像相同(意味着静止的客户机106)的时候,内容编码器116可以降低压缩级别,并且提高图像的质量。虽然这样的动作可能增 加带宽要求,但是可以为用户保持流式图像质量。在一个实施例中,内容编码器116可能不需要传输连续的同样图像,而是可以只传输对使用先前的图像的指示,从而在静止用户的情况下节约带宽。在可选的实施例中,内容编码器116和平滑模块118还可以使所选择的压缩级别基于帧之间变化的大小或程度,从而使得帧的轻微变化不导致压缩级别上的大跳跃。 
如关于图3较为详细描述的,内容编码器116可以使用平滑模块118的平滑算法来平滑不同压缩级别之间的转变,从而改善用户体验。平滑模块118可以使用初始压缩级别、目标压缩级别,以及***愿意等待直到满足目标压缩级别的帧数来作为输入。在可选的实施例中,平滑模块118可以基于任何因素(例如初始压缩级别和目标压缩级别)来确定***愿意等待直到满足目标压缩级别的帧数。举例来说,如果初始与目标压缩级别之间的差距大,则平滑模块118可以选取较大的帧数。 
使用这些输入,平滑模块118可以通过运行生成多帧平滑例程的平滑探试来确定图像帧的新的压缩级别。在一个实施例中,平滑模块118可以通过诸如Motion-JPEG或MPEG这样的压缩标准的有损量化步骤来改变压缩级别,如关于图5较为详细描述的。关于图5所描述的压缩算法可以根据需要对不同的压缩级别利用乘数查找表(multiplier lookup table)。本领域的技术人员将认识到,平滑模块118可以使用任何类型的平滑机制。 
所公开的平滑模块118可以有利地提供一种有效和高效的机制,其用于在诸如所公开的交互式图像流式***100这样的图像流式***中转变压缩级别。所公开的平滑模块118还可以在任何其它类型的图像流式***(例如具有像电影或其它视频这样的固定内容的***)中转变压缩级别。在任何图像流式***中,服务器102均可以使用平滑模块118来促进向上或向下转变压缩级别,而不使服务器影响用户的观看体验。所公开的平滑探试还可以允许服务器102平滑在多个帧上的压缩级别之间的转变,以便使该转变不会过多地侵扰用户的观看质量。响应于用户活动(即,用户在其客户机106应用中的动作),交互式图像流式***100可以利用平滑模块118来促进用于降低带宽要求的压缩级别变化。因此,通过有利地为流中的图 像帧转变压缩级别,所公开的***可以促进***具有变化的压缩级别并且获得效率。通过使用平滑探试来平滑不同压缩级别之间的转变,从而当在网络约束下操作时可以保持流式图像的视觉质量。 
图2根据一个实施例描绘了图1的流式图像***的客户机的结构。在所描绘的实施例中,客户机106包括通信模块202、解码器204、用户显示设备206、用户输入设备208、位置确定设备210,以及方向确定设备212。类似于服务器102的通信模块110,通信模块202可以促进客户机106通过网络104向服务器102传输信息,以及通过网络104从服务器102接收信息。在其与服务器102的通信中,通信模块202可以使用任何类型的协议。在一个实施例中,客户机106可以使用通信模块202将客户机信息传输给服务器102,并且可以使用通信模块202从服务器102接收编码的图像帧和/或对压缩级别的指示。 
解码器204可以对通信模块202所接收的编码图像进行解码,例如通过对编码图像进行解压缩。解码器204可以使用通信模块202所接收的对压缩级别的指示来帮助它对图像进行解码。另外,解码器204可以访问与压缩级别相关联的一个或多个乘数查找表,以便解码器204可以正确地对图像进行解码。在解码器204处理图像之后,用户显示设备206可以向用户显示解码的图像,例如通过显示屏、打印的图像、全息图或者任何其它输出设备。 
如前所述,客户机信息可以包括对用户和/或客户机106的身份、偏好、位置、取向或其它信息的指示。任选的用户输入设备208、位置确定设备210和方向确定设备212可以帮助请求或提供客户机信息。举例来说,用户输入设备208可以接收来自任何类型的设备的用户输入,例如通过键板、键盘、按钮、记录笔、鼠标、操作杆、虚拟现实设备、话音命令,或者眼睛移动等。用户输入可以包括用户偏好,例如对较高或较低压缩级别的请求、对较快屏幕速率的请求等等。用户输入还可以包括用户位置或取向。位置确定设备210可以确定客户机106和/或用户的当前位置。位置确定设备210可以是任何类型的位置确定设备,例如全球定位***(GPS)接收 器或者惯性测量单元(inertial measurement unit,IMU)。方向确定设备212可以确定客户机106和/或用户的当前取向。方向确定设备212可以是任何类型的方向确定设备,例如电子罗盘、使用三角测量法的GPS接收器、常规罗盘,或者IMU。由用户输入设备208、位置确定设备210和/或方向确定设备212所生成的客户机信息可以允许服务器102基于客户机106和/或用户的当前状态来定制每个生成的图像帧。 
图3根据一个实施例描绘了用于生成、编码和传输新的图像帧的流程图的例子。服务器102或其任何(独立或组合)组件可以实现流程图300的方法。流程图300从元素302开始,接收客户机信息。在一个实施例中,通信模块110可以通过网络104从客户机106接收客户机信息。在收到客户机信息之后,在元素304处,内容发生器112可以基于所接收的客户机信息生成新的图像帧。内容发生器112可以根据应用,使用任何类型的算法来生成新的图像帧。举例来说,内容发生器112可以生成表示从用户的观点来看的视图的图像帧(如果应用这样要求的话)。 
在元素306处,平滑模块118接下来可以为所生成的图像帧确定初始压缩级别。在一个实施例中,平滑模块118可以简单地选择最近最常使用的压缩级别作为初始压缩级别。在另一实施例中,平滑模块118可以使初始压缩级别基于***是否在多帧平滑例程内。当在多帧平滑例程内时,初始压缩级别可以基于适于多帧平滑例程的当前帧的压缩级别。在一个例子中,平滑模块118启动压缩例程,该压缩例程在六(6)帧内从压缩级别五(5)开始并且结束于压缩级别十(10),每帧递增一个压缩级别,第三帧的初始压缩级别可以是压缩级别七(7)(5+2=7)。在一个实施例中,平滑模块118可以利用延续一到两秒的多帧平滑例程,以便降低对用户的影响。在一个例子中,如果正以每秒15帧传输图像流,则从一个压缩级别转变到另一个压缩级别的具有15到30帧的多帧平滑例程可以证明是有益的。本领域的技术人员将认识到,平滑模块118可以利用其它的多帧平滑例程。 
在平滑模块118确定了初始压缩级别之后,在元素308处,内容变化检测器112可以将所生成的新图像与先前的图像进行比较。如前所述,内 容变化检测器112可以使用任何方法来比较这两个图像。如果内容变化检测器112在判决块310处确定在所生成的新图像与先前的图像帧之间内容已发生了变化,则流程图300的方法继续到元素314。在元素314处,平滑模块118可以对新图像进行平滑探试,以便降低其质量和增加压缩级别。当图像之间的内容变化指示用户的视点可能是移动的并且用户因而有可能容忍较低的图像质量时,平滑模块118增加压缩级别。如果内容变化检测器112在判决块310处确定在所生成的新图像与先前的图像帧之间内容没有发生变化,则流程图300的方法继续到元素312。在元素312处,平滑模块118可以对新图像进行平滑探试,以便提高其质量并且降低压缩级别。当图像之间缺乏内容变化指示用户的视点可能是静止的并且用户因而有可能要求较高的图像质量时,平滑模块118可以降低压缩级别。 
平滑模块118可以使用任何方法在元素312或314处进行其平滑探试。在一个实施例中,通过在多个图像帧上导致多阶段压缩例程的一系列压缩质量步骤,平滑模块118可以在初始压缩级别与目标压缩级别之间(根据压缩级别是增加还是降低而沿着适当的方向)进行递增。举例来说,在最小压缩级别与最大压缩级别之间,平滑模块118可以使用五个压缩级别。然而,对于每个压缩级别,服务器102和客户机106可能各自需要含有用于该压缩级别的乘数查找表,如将关于图5较为详细描述的。压缩级别的数目要求在服务器102和客户机106这二者处的存储器使用与探试法和所得到的流式图像的平滑性之间的折衷。数目较多的压缩级别可能导致压缩级别之间较平滑的转变,但却可能需要额外的存储量,这可能是成问题的,尤其是对于处理和存储资源可能有限的客户机106来说。对于平滑转变来说,通常希望三个或更多的压缩级别,但是本领域的技术人员将认识到,在可能的降低性能的情况下,较少的级别也是可能的。在生成多帧平滑例程中,平滑模块118可以使用从一个压缩级别到另一压缩级别的粗线性转变,或者可选地可以使用任何其它类型的算法,例如一种偏向较高或较低压缩级别的算法。 
在平滑模块118已经进行了其平滑探试之后,在元素316处,内容编 码器116可以基于来自平滑模块118的结果,为图像帧设置新的压缩级别。利用新的压缩级别,在元素318处,内容编码器116然后可以基于新的压缩级别对新的图像帧进行编码。如前所述,内容编码器116可以使用任何类型的编码算法对新的图像帧进行编码。在元素320处,通信模块110然后可以将经编码的新的图像帧以及对新的压缩级别的指示传输给客户机106,之后流程图300的方法终止。流程图300的方法还可以返回元素302来对每一帧重复该过程。 
图4根据一个实施例描绘了用于接收用户输入以及接收并向用户显示图像帧的流程图的例子。客户机106或其任何(独立或组合)组件可以实现流程图400的方法。流程图400从元素402开始,接收用户输入。在一个实施例中,通信模块202可以通过用户输入设备208接收来自用户的输入,如前所述。可选地,通信模块202可以接收来自位置确定设备210或方向确定设备212的输入。在元素404处,用户输入设备可以视情况处理用户输入,例如通过将输入转变成用于传输的另一种形式。在元素406处,通信模块202接下来可以通过网络104向服务器102传输对用户输入的指示。 
在传输了对用户输入的指示之后,流程图400的方法可以继续到元素408,在其中,通信模块202可以通过网络104从服务器102接收编码的图像帧。在元素410处,通信模块202还可以通过网络104从服务器102接收对编码的图像帧的压缩级别的指示。在一个实施例中,通信模块202可以在相同的传输中接收编码的图像帧以及对压缩级别的指示。 
使用对压缩级别的指示,在元素412处,解码器204可以对编码的图像帧进行解码。解码器204可以使用与所指示的压缩级别相关的乘数查找表来实现解码过程的解除量化步骤,如关于图5较为详细描述的。在图像帧被解码之后,在元素414处,用户显示设备206可以向用户显示经解码的图像帧,之后流程图400的方法终止。流程图400的方法还可以返回元素402来对每一帧重复整个流程图。 
流程图400的公开方法允许在客户机106设备上显示交互式图像流。 通信模块202可以向服务器102传输对用户的交互的指示,并且接收回基于用户的交互经编码的图像帧。解码器204然后可以对图像帧进行解码,并且用户显示设备206向用户显示经解码的图像帧。可以对每一帧重复图3和图4的方法,以便给予用户交互式图像流式体验。文中所描述的平滑探试基于用户的动作有利地促进了对压缩级别的改变,与此同时减少了对用户的观看体验的降低,从而允许有效和高效地使用可用带宽。 
图5根据一个实施例描绘了用于对图像帧进行编码和解码的流程图的例子。服务器102的内容编码器116以及客户机106的解码器206可以单独或组合地实现流程图500的方法。流程图500的方法可以表示对诸如MPEG或Motion-JPEG这样的典型视频编码和解码方案或算法的描述。流程图500的方法并不意味着是穷举的,并且特定的编码方案可以具有更多的步骤,例如MPEG算法的运动补偿步骤,或者完全不同的方法。本领域的技术人员将认识到,图5的方法仅仅是一个例子,并且还可以随所公开的实施例使用其它的编码/解码方法。 
流程图500开始于元素502,在其中,内容编码器116可以接收待编码的输入图像帧。内容编码器116接下来可以对输入图像帧进行离散余弦变换(DCT)运算。DCT运算可以是一种大体上无损的数学变换,其获得信号(输入图像帧的空间信息),并且将该信号变换成一个或多个8×8像素块形式的适于压缩的数字数据作为输出。在内容编码器116内,在元素506处,基于所选择的压缩级别来量化DCT运算的输出。内容编码器116通过将来自适当的查找表的常数用作除数,可以对从DCT运算输出的每个8×8像素块进行量化步骤。适当的查找表可以是与所选择的压缩级别相关联的查找表。在一个实施例中,可以对每个可能的压缩级别都有查找表。流程图500的方法然后可以继续到元素508,在其中,内容编码器116可以压缩从元素506输出的经量化的DCT值。在元素508处,内容编码器116可以按照锯齿形序列将经量化的DCT值重新排列成一维阵列,并且然后可以使用熵编码机制(entropy encoding mechanism),其中该熵编码机制使用游程长度编码(RLE)和/或Huffman编码。 
通过数学反转和解压缩经编码的图像帧,客户机106的解码器206可以对编码的图像帧进行解码。通过对接收的图像帧进行解压缩,解码器206可以从元素510开始,并且在元素512处,解码器206可以基于所选择的压缩级别对所接收的图像进行解除量化(也称为逆量化)。在解压缩步骤之后,通过将来自适当的查找表的常数用作乘数因数(multiplication factor),解码器206可以对每个8×8像素块进行解除量化步骤。适当的查找表可以是与选择的压缩级别相关联的查找表。相同的查找表可以有利地分别存储在服务器102和客户机106这二者中。解码器206然后可以对所接收的图像帧进行逆DCT变换,其导致然后可以被显示或者以别的方式被处理的输出图像帧。流程图500的方法然后可以终止。 
一般而言,被执行以便实现本发明的实施例的例程可以是操作***的一部分或者是具体的应用、组件、程序、模块、对象或指令序列。本发明的计算机程序通常包括大量指令,其可以由本地计算机转换成机器可读格式,并且因此得到可执行指令。此外,程序包括对于该程序是本地驻留的、或者在存储器中或存储设备上找得到的变量和数据结构。另外,可以基于在本发明的具体实施例中为其实现了下文所描述的各种程序的应用来标识下文所描述的各种程序。然而,应当理解,仅是为了方便起见而使用所遵循的任何特定的程序命名法,并且因而本发明不应当限于只在由这样的命名法所标识和/或暗示的任何具体应用中使用。 
对于获益于本公开的本领域的技术人员来说,本发明显然设想了用于在流式图像***中转变压缩级别的方法、***和介质。应当理解,在详细说明和附图中所示出和描述的本发明的形式是作为例子的。下面的权利要求应当广义地被理解为包括所公开的示例实施例的所有变化。 

Claims (16)

1.一种用于在交互式流式图像***中的图像帧之间转变压缩级别的方法,所述方法包括:
由交互式流式图像***中的服务器从所述交互式流式图像***中的客户机接收客户机信息;
由所述服务器的内容发生器基于接收到的所述客户机信息生成新的图像帧;
由所述服务器确定初始压缩级别;
由所述服务器的内容发生器比较新的图像帧和先前的图像帧,以确定在新的图像帧与先前的图像帧之间内容是否发生变化;
通过基于初始压缩级别、目标压缩级别,以及达到所述目标压缩级别的帧数来生成多帧平滑例程,从而由所述服务器的平滑模块进行平滑探试,其中所述进行平滑试探包括:
响应于在新的图像帧与先前的图像帧之间内容没有发生变化,增加图像质量;
响应于在新的图像帧与先前的图像帧之间内容发生变化,降低图像质量;
基于所生成的多帧平滑例程,由所述平滑模块为所述新的图像帧设置新的压缩级别;
基于所述新的压缩级别,由所述服务器的内容编码器对新的图像帧编码;
由所述服务器向所述交互式流式图像***中的客户机传输编码后的新的图像帧和所述新的压缩级别。
2.根据权利要求1的方法,其进一步包括:由所述平滑模块向内容编码器传输对所述新的压缩级别的指示。
3.根据权利要求1或2的方法,其进一步包括:由所述平滑模块接收所述初始压缩级别、所述目标压缩级别,以及达到所述目标压缩级别的帧数。
4.根据权利要求1至2中任何一项的方法,其中所述目标压缩级别是高于所述初始压缩级别的压缩级别。
5.根据权利要求1至2中任何一项的方法,其中所述目标压缩级别是低于所述初始压缩级别的压缩级别。
6.根据前述权利要求1至2中任何一项的方法,其中达到所述目标压缩级别的帧数大于或等于十五。
7.根据前述权利要求1至2中任何一项的方法,其中所述新的压缩级别与乘数查找表相关联。
8.根据前述权利要求1至2中任何一项的方法,其中通过生成多帧平滑例程而由所述平滑模块进行平滑探试包括:为交互式流式图像流的多个帧生成所述多帧平滑例程。
9.一种交互式流式图像***,包括:
服务器,其中,
所述服务器从所述交互式流式图像***中的客户机接收客户机信息,
由所述服务器的内容发生器基于接收到的所述客户机信息生成新的图像帧;
由所述服务器确定初始压缩级别;
由所述服务器的内容发生器比较新的图像帧和先前的图像帧,以确定在新的图像帧与先前的图像帧之间内容是否发生变化;
通过基于初始压缩级别、目标压缩级别,以及达到所述目标压缩级别的帧数来生成多帧平滑例程,从而由所述服务器的平滑模块进行平滑探试,其中所述进行平滑试探包括:
响应于在新的图像帧与先前的图像帧之间内容没有发生变化,增加图像质量;
响应于在新的图像帧与先前的图像帧之间内容发生变化,降低图像质量;
基于所生成的多帧平滑例程,由所述平滑模块为所述新的图像帧设置新的压缩级别;
基于所述新的压缩级别,由所述服务器的内容编码器对新的图像帧编码;
由所述服务器向所述交互式流式图像***中的客户机传输编码后的新的图像帧和所述新的压缩级别。
10.根据权利要求9的交互式流式图像***,其中由所述平滑模块向内容编码器传输对所述新的压缩级别的指示。
11.根据权利要求9或10的交互式流式图像***,其中由所述平滑模块接收所述初始压缩级别、所述目标压缩级别,以及达到所述目标压缩级别的帧数。
12.根据权利要求9或10的交互式流式图像***,其中所述目标压缩级别是高于所述初始压缩级别的压缩级别。
13.根据权利要求9或10的交互式流式图像***,其中所述目标压缩级别是低于所述初始压缩级别的压缩级别。
14.根据前述权利要求9或10的交互式流式图像***,其中达到所述目标压缩级别的帧数大于或等于十五。
15.根据前述权利要求9或10的交互式流式图像***,其中所述新的压缩级别与乘数查找表相关联。
16.根据前述权利要求9或10的交互式流式图像***,其中通过生成多帧平滑例程而由所述平滑模块进行平滑探试包括:为交互式流式图像流的多个帧生成所述多帧平滑例程。
CN2006800262101A 2005-07-19 2006-07-13 转变压缩级别的方法及其交互式流式图像*** Expired - Fee Related CN101223791B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/184,345 2005-07-19
US11/184,345 US7616821B2 (en) 2005-07-19 2005-07-19 Methods for transitioning compression levels in a streaming image system
PCT/EP2006/064229 WO2007009941A2 (en) 2005-07-19 2006-07-13 Transitioning compression levels in a streaming image system

Publications (2)

Publication Number Publication Date
CN101223791A CN101223791A (zh) 2008-07-16
CN101223791B true CN101223791B (zh) 2010-12-29

Family

ID=37025977

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800262101A Expired - Fee Related CN101223791B (zh) 2005-07-19 2006-07-13 转变压缩级别的方法及其交互式流式图像***

Country Status (7)

Country Link
US (2) US7616821B2 (zh)
EP (1) EP1908299A2 (zh)
JP (1) JP4900976B2 (zh)
CN (1) CN101223791B (zh)
CA (1) CA2615244A1 (zh)
IL (1) IL188757A (zh)
WO (1) WO2007009941A2 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7616821B2 (en) * 2005-07-19 2009-11-10 International Business Machines Corporation Methods for transitioning compression levels in a streaming image system
US7506071B2 (en) * 2005-07-19 2009-03-17 International Business Machines Corporation Methods for managing an interactive streaming image system
US20070028286A1 (en) * 2005-07-28 2007-02-01 Greene David P Systems, methods, and media for detecting content change in a streaming image system
US8147339B1 (en) * 2007-12-15 2012-04-03 Gaikai Inc. Systems and methods of serving game video
US8447065B2 (en) 2008-09-16 2013-05-21 Cyberlink Corp. Method of facial image reproduction and related device
TWI566586B (zh) 2009-10-20 2017-01-11 湯姆生特許公司 一序列形象的現時區塊之寫碼方法和重建方法
US9965771B2 (en) * 2010-07-02 2018-05-08 Dialogic Corporation System and method of tracking video advertisements
US8743953B2 (en) * 2010-10-22 2014-06-03 Motorola Solutions, Inc. Method and apparatus for adjusting video compression parameters for encoding source video based on a viewer's environment
EP2579593A1 (en) * 2011-10-04 2013-04-10 Thomson Licensing Adaptive quantisation for intra-encoded image blocks
US11314405B2 (en) * 2011-10-14 2022-04-26 Autodesk, Inc. Real-time scrubbing of online videos
US9197904B2 (en) * 2011-12-15 2015-11-24 Flextronics Ap, Llc Networked image/video processing system for enhancing photos and videos
US9137548B2 (en) * 2011-12-15 2015-09-15 Flextronics Ap, Llc Networked image/video processing system and network site therefor
US20130195198A1 (en) * 2012-01-23 2013-08-01 Splashtop Inc. Remote protocol
GB2509169B (en) * 2012-12-21 2018-04-18 Displaylink Uk Ltd Management of memory for storing display data
JP6467503B2 (ja) * 2014-07-14 2019-02-13 エスケー テックス カンパニー、リミテッド クラウドストリーミングサービスシステム、メモリボトルネックを防止するためのデータ圧縮方法及びそのための装置
US10142651B1 (en) * 2014-12-11 2018-11-27 Pixelworks, Inc. Frame rate conversion with partial motion vector
US10462477B2 (en) 2015-02-25 2019-10-29 Cinova Media Partial evaluator system and method
US9589543B2 (en) * 2015-03-18 2017-03-07 Intel Corporation Static frame image quality improvement for sink displays
US20170103577A1 (en) * 2015-10-12 2017-04-13 Cinova Media Method and apparatus for optimizing video streaming for virtual reality
US10460700B1 (en) 2015-10-12 2019-10-29 Cinova Media Method and apparatus for improving quality of experience and bandwidth in virtual reality streaming systems
US10944971B1 (en) 2017-05-22 2021-03-09 Cinova Media Method and apparatus for frame accurate field of view switching for virtual reality
GB2573271B (en) 2018-03-27 2022-04-06 Displaylink Uk Ltd Data transmission to mobile devices
US10990812B2 (en) * 2018-06-20 2021-04-27 Agora Lab, Inc. Video tagging for video communications
CN114710640B (zh) * 2020-12-29 2023-06-27 华为技术有限公司 基于虚拟形象的视频通话方法、装置和终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1128464A (zh) * 1994-12-28 1996-08-07 现代电子产业株式会社 活动图像专家组4图像设备的物体信息编码设备和方法
CN1189955A (zh) * 1995-06-29 1998-08-05 汤姆森多媒体公司 分层压缩视频数据的编解码***
CN1230851A (zh) * 1998-02-23 1999-10-06 索尼公司 图像传输装置和使用该装置的图像传输***
CN1381142A (zh) * 2000-05-18 2002-11-20 皇家菲利浦电子有限公司 用于视频序列压缩的编码方法

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW256010B (zh) * 1991-04-18 1995-09-01 Ampex
US5157488A (en) 1991-05-17 1992-10-20 International Business Machines Corporation Adaptive quantization within the jpeg sequential mode
GB9206651D0 (en) 1992-03-26 1992-05-06 Solid State Logic Ltd Video processing
US5546557A (en) 1993-06-14 1996-08-13 International Business Machines Corporation System for storing and managing plural logical volumes in each of several physical volumes including automatically creating logical volumes in peripheral data storage subsystem
US5396284A (en) * 1993-08-20 1995-03-07 Burle Technologies, Inc. Motion detection system
JPH07236139A (ja) * 1994-02-21 1995-09-05 Nippon Columbia Co Ltd データ圧縮装置
JP3954656B2 (ja) 1994-09-29 2007-08-08 ソニー株式会社 画像符号化装置及び方法
US5708767A (en) * 1995-02-03 1998-01-13 The Trustees Of Princeton University Method and apparatus for video browsing based on content and structure
US5623424A (en) * 1995-05-08 1997-04-22 Kabushiki Kaisha Toshiba Rate-controlled digital video editing method and system which controls bit allocation of a video encoder by varying quantization levels
GB2342525B (en) 1995-10-30 2000-06-28 Sony Uk Ltd Image quantisation based on image activity
JP3173369B2 (ja) * 1996-04-25 2001-06-04 松下電器産業株式会社 画像圧縮符号化装置
JP3680527B2 (ja) * 1997-01-31 2005-08-10 富士通ディスプレイテクノロジーズ株式会社 薄膜トランジスタマトリクス基板及びその製造方法
EP0960532B1 (en) * 1997-02-12 2007-01-31 MediaTek Inc. Apparatus and method for optimizing the rate control in a coding system
US6243467B1 (en) * 1998-07-23 2001-06-05 The United States Of America As Represented By The National Security Agency Method of elliptic curve cryptographic digital signature generation and verification using reduced base tau expansion in non-adjacent form
JP4018266B2 (ja) * 1998-11-13 2007-12-05 キヤノン株式会社 機器制御装置、端末装置、ネットワークシステム、制御方法、及び記憶媒体
US6449392B1 (en) * 1999-01-14 2002-09-10 Mitsubishi Electric Research Laboratories, Inc. Methods of scene change detection and fade detection for indexing of video sequences
KR20020022706A (ko) 1999-06-18 2002-03-27 피터 엔. 데트킨 대화형 비디오 스트림을 이용한 강화된 시각 표현을 위한시스템 및 방법
US6995805B1 (en) * 2000-09-29 2006-02-07 Sonic Solutions Method and system for scene change detection
US7599434B2 (en) 2001-09-26 2009-10-06 Reynolds Jodie L System and method for compressing portions of a media signal using different codecs
US6895054B2 (en) 2001-09-28 2005-05-17 Divxnetworks, Inc. Dynamic bit rate control process
US7130472B2 (en) * 2002-01-21 2006-10-31 Canon Kabushiki Kaisha Image distribution apparatus, communication terminal apparatus, and control method thereof
US20030161398A1 (en) * 2002-02-21 2003-08-28 Meir Feder Improving static picture quality in compressed video
GB2395081A (en) * 2002-10-31 2004-05-12 Hewlett Packard Co Image capture system
US7336890B2 (en) * 2003-02-19 2008-02-26 Microsoft Corporation Automatic detection and segmentation of music videos in an audio/video stream
GB0428160D0 (en) 2004-12-22 2005-01-26 British Telecomm Variable bit rate processing
US7616821B2 (en) * 2005-07-19 2009-11-10 International Business Machines Corporation Methods for transitioning compression levels in a streaming image system
US7506071B2 (en) * 2005-07-19 2009-03-17 International Business Machines Corporation Methods for managing an interactive streaming image system
US20070028286A1 (en) * 2005-07-28 2007-02-01 Greene David P Systems, methods, and media for detecting content change in a streaming image system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1128464A (zh) * 1994-12-28 1996-08-07 现代电子产业株式会社 活动图像专家组4图像设备的物体信息编码设备和方法
CN1189955A (zh) * 1995-06-29 1998-08-05 汤姆森多媒体公司 分层压缩视频数据的编解码***
CN1230851A (zh) * 1998-02-23 1999-10-06 索尼公司 图像传输装置和使用该装置的图像传输***
CN1381142A (zh) * 2000-05-18 2002-11-20 皇家菲利浦电子有限公司 用于视频序列压缩的编码方法

Also Published As

Publication number Publication date
CA2615244A1 (en) 2007-01-25
EP1908299A2 (en) 2008-04-09
US20100020868A1 (en) 2010-01-28
JP2009502069A (ja) 2009-01-22
US8218886B2 (en) 2012-07-10
US7616821B2 (en) 2009-11-10
IL188757A0 (en) 2008-08-07
US20070019866A1 (en) 2007-01-25
WO2007009941A3 (en) 2007-07-26
CN101223791A (zh) 2008-07-16
IL188757A (en) 2011-12-29
WO2007009941A2 (en) 2007-01-25
JP4900976B2 (ja) 2012-03-21

Similar Documents

Publication Publication Date Title
CN101223791B (zh) 转变压缩级别的方法及其交互式流式图像***
CN1901676B (zh) 流式图像***和方法
US20180270496A1 (en) Composite video streaming using stateless compression
US8254685B2 (en) Detecting content change in a streaming image system
JP5544426B2 (ja) 映像ビットストリームの伝送システム
US10283091B2 (en) Buffer optimization
US10200707B2 (en) Video bit stream decoding
JP2010517476A (ja) メディアデータの最適化されたコンテンツベース及びロイヤルティベースの符号化及び配信
US8620096B2 (en) Virtualization server for presentation virtualization and image data encoding method
JP2018029338A (ja) ビデオカンファレンスのためのビデオストリーム提供方法およびコンピュータプログラム
US20160373772A1 (en) Efficient encoding of display data
US8582876B2 (en) Hybrid codec for compound image compression
US20120263224A1 (en) Encoding digital assets as an image
CN112584151A (zh) 图像处理方法及终端设备、服务器
US8244071B2 (en) Non-dyadic spatial scalable wavelet transform
JPH09116759A (ja) 画像復号化装置および画像符号化・復号化システム
US6678329B2 (en) Client-assisted motion estimation for client-server video communication
Pańka et al. Visualization of multidimensional data on distributed mobile devices using interactive video streaming techniques
US20240163477A1 (en) 3d prediction method for video coding
US20240163476A1 (en) 3d prediction method for video coding
CN114640844A (zh) 直播视频编码中的参考块搜索方法、装置及计算机设备
CN116760991A (zh) 码流信息生成方法和装置
Deng et al. Advanced Transmission Methods Applied in Remote Consultation and Diagnosis Platform

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20101229

Termination date: 20160713

CF01 Termination of patent right due to non-payment of annual fee