CN102123277A - 一种基于流格式的指定区域图像传输及显示方法 - Google Patents

一种基于流格式的指定区域图像传输及显示方法 Download PDF

Info

Publication number
CN102123277A
CN102123277A CN 201010529588 CN201010529588A CN102123277A CN 102123277 A CN102123277 A CN 102123277A CN 201010529588 CN201010529588 CN 201010529588 CN 201010529588 A CN201010529588 A CN 201010529588A CN 102123277 A CN102123277 A CN 102123277A
Authority
CN
China
Prior art keywords
prediction
image
pixel
band
transmission
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.)
Granted
Application number
CN 201010529588
Other languages
English (en)
Other versions
CN102123277B (zh
Inventor
孟智平
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN 201010529588 priority Critical patent/CN102123277B/zh
Publication of CN102123277A publication Critical patent/CN102123277A/zh
Application granted granted Critical
Publication of CN102123277B publication Critical patent/CN102123277B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了一种基于流格式的指定区域图像传输及显示方法:服务端通过流格式把图像中指定区域的图像信息传送到显示端;所述显示端根据接收到的指定区域的图像信息进行解码,并基于流格式播放显示所述指定区域的图像信息。本发明实施例中,不需要传输整张图像,而是以某一条线或某一块为基础来显示的,即边传输边显示;使用I条带或1型块来作为可以单独解码的最小单位,然后根据相邻块或相邻条带之间的相关性来实现预测编码,然后向显示端传输预测模式信息,显示端根据所述预测模式信息对编码信息进行解码。

Description

一种基于流格式的指定区域图像传输及显示方法
技术领域
本发明涉及视频传输技术领域,尤其涉及一种基于流格式的指定区域图像传输及显示方法。
背景技术
现有技术中,音/视频等多媒体信息的传输方式主要包括下载和流式传输两种。下载方式通常采用数据全部传输,数据全部保存,数据全部显示,然而,音/视频文件一般都较大,需要的存储容量也较大,同时由于网络带宽的限制,采用下载方式常常要花数分钟甚至数小时,所以这种处理方法延迟很大。采用流式传输方式时,声音、影像或动画等时基媒体由音视频服务器向用户计算机实时传送,用户不必等到整个文件全部下载完毕,只将开始部分内容存入内存,而只需经过几秒或十数秒的启动延时即可进行观看,数据流随时传送随时播放,只是在开始时有一些延迟,当时基媒体在客户机上播放时,文件的剩余部分将在后台从服务器内继续下载。因此,流式传输不仅使启动延时成十倍、百倍地缩短,而且不需要太大的缓存容量,避免了用户必须等待整个文件全部从网上下载才能观看的缺点。
其中,流式传输主要指通过网络传送媒体(如视频、音频)的技术总称。其特定含义为通过互联网络将影视节目传送到个人计算机。实现流式传输有两种方法:实时流式传输(Realtime streaming)和顺序流式传输(progressive streaming)。一般说来,如视频为实时广播,或使用流式传输媒体服务器,或应用如RTSP(RealTimeStreamingProtocol,实时流协议)的实时协议,即为实时流式传输。如使用HTTP(Hypertext Transfer Protocol,超文本传输协议)服务器,文件即通过顺序流发送。采用那种传输方法依赖客户的需求,当然,流式文件也支持在播放前完全下载到硬盘。
顺序流式传输是顺序下载,在下载文件的同时用户可观看再线媒体,在给定时刻,用户只能观看已下载的那部分,而不能跳到还未下载的前头部分,顺序流式传输不象实时流式传输在传输期间根据用户连接的速度做调整。由于标准的HTTP服务器可发送这种形式的文件,也不需要其它特殊协议,经常被称作HTTP流式传输。顺序流式传输比较适合高质量的短片段,如片头、片尾和广告,由于该文件在播放前观看的部分是无损下载的,这种方法保证电影播放的最终质量,对通过调制解调器发布短片段,顺序流式传输显得很实用,顺序流式传输允许用比调制解调器更高的数据速率创建视频片段。另外, 顺序流式文件是放在标准HTTP或FTP(File Transfer Protocol,文件传输协议)服务器上,易于管理,基本上与防火墙无关。但是顺序流式传输不适合长片段和有随机访问要求的视频,如:讲座、演说与演示等,用户在观看前,必须经历延迟,对较慢的连接尤其如此,因此,顺序流式传输不支持现场广播,严格说来,顺序流式传输职能是一种点播技术。
实时流与HTTP流式传输不同,需要专用的流媒体服务器与传输协议,实时流式传输总是实时传送,特别适合现场事件,也支持随机访问,用户可快进或后退以观看前面或后面的内容。
实时流式传输必须配匹连接带宽,这意味着在以调制解调器速度连接时图像质量较差,而且,由于出错丢失的信息被忽略掉,网络拥挤或出现问题时,视频质量很差。如欲保证视频质量,顺序流式传输也许更好。实时流式传输需要特定服务器,如QuickTime Streaming Server、RealServer与Windows Media Server。这些服务器允许对媒体发送进行更多级别的控制,因而系统设置、管理比标准HTTP服务器更复杂。实时流式传输还需要特殊网络协议,如:MMS(Microsoft Media Server,微软媒体服务器)。这些协议在有防火墙时有时会出现问题,导致用户不能看到一些地点的实时内容。以上传输控制协议,如RTP(Real-timeTransportProtocol,实时传输协议)/UDP(User Datagram Protocol,用户数据报协议)和MMS/HTTP/TCP(Transmission Control Protocol,传输控制协议)等。实时流式传输关注的是流式文件本身,对传输层做到透明支持。
现有的图像传输技术,即通过网络来下载并显示图像技术,基本上都全部下载,全部显示或从图像的头端开始一点点显示。这种技术的缺点是把图像中所有的信息都平行看待,又由于现有图像的编码的限制,不能做到对信息的重点提取、重点传输,当然就不能从图像中的某一区域可控的开始显示。另外现有的图像编码技术中,没有使用预测算法,在传输时,不能很好的节省带宽,而H.264现有的帧内预测算法,必须知道上面和左边的数据作为参考来进行解码,所H.264的帧内算法,也只能按扫描顺序,从左到右,从上到下解码和显示整个图像。
H.261标准中提出帧内预测编码是利用一帧(一幅图像)内已经传送的相邻象素来求当前的像素的预测值。
本发明中提出的预测编码虽然也是利用一帧(一幅图像)内已经传送的相邻像素来求当前像素的预测值,但是在处理方法上与H.261中提出的帧内 预测有本质的区别。
本发明中的预测是针对图像中某一预先确定的具体区域内的像素进行预测,而不是如H.261中帧内预测所述对整幅图像根据已传送的像素预测当前像素。
因此,为了区分本发明提出的预测方法和H.261中提出的帧内预测方法之间的不同,将本发明提出的预测方法称为图像内预测方法,后续将不再赘述。
现有技术中的流式传输,不论是顺序流式传输,还是实时流式传输,通常采用分帧视频传输,单独解码,整帧显示,帧内预测(需要知道上面和左面编码数据作为预测参考)、帧间预测(运动补偿)。无法实现对视频数据一起保存(或分散保存),分散传输,分散显示,灵活的在比帧更小的范围内进行视频数据传输。
现有的巨型的图形系统,如,GIS或城市地区地图等,往往都是采用现有的图像编码方式,如JPEG、GIF等格式,由于数据量很大,网络传输成为其一个应用瓶颈。再如,现有的电子书系统,传输方面也是一个巨大的瓶颈。尤其是对于没有帧结构的巨型图像,如何编码,如何传输,如何解码都是一个尚待解决的问题。
发明内容
本发明实施例要解决的问题是提供一种基于流格式的指定区域图像传输及显示方法,以解决现有技术中无法实现对图像数据一起保存(或分散保存),分散传输,指定区域显示的缺陷。
为了实现上述目的,本发明的实施例提供了一种基于流格式的指定区域图像传输方法,包括以下步骤:
服务端通过流格式对图像中指定区域的图像信息进行编码,并传送到显示端;
所述显示端根据接收到的指定区域的图像信息进行解码,并基于流格式播放显示所述指定区域的图像信息。
所述服务端通过流格式把指定区域的图像信息传送到显示端之前还包括:所述服务端获取图像中需要传输的指定区域,所述指定区域是指在整个图像内部具体某个位置范围,该区域由一个或多个条带或宏块构成。所述条带或宏块为构成图像的基本单位,也是最小的可解码显示单位。
在编码时,需要先把图像转换成点阵模式,然后通过图像内预测方法对宏块或条带进行编码,所述预测算法在对像素进行预测时,使用带顶角像素 加权和不带顶角像素加权两者中任意一个进行图像内预测。
采用P2P协议配合宏块或条带的传输。
在需要网络传输的时候实时编码;或先编码之后存储然后再在网络上传输;其中,先编码之后采用文件分级存储形式。
在编码之前,需要以点阵结构存储的图片原始信息,如YUV(一个亮度信号:Y;两个色差信号:U分量、V分量)模式就是一个典型的点阵模式,即每点象素对应一个亮度值两个色度值,同样RGB(红绿蓝)模式也是点阵模式。然后再通过本发明的预测算法求出残差,再利用现有的DCT(Discrete Cosine Transform,离散余弦变换)变换、量化、熵编码等方法进行处理。
在解码的时候,首先经过反熵编码、反量化、IDCT(反离散余弦变换)变换等步骤,然后根据所选择预测算法解码出图像信息。
在编码时候,判断那种预测模式最好通常采用SAD(绝对差值和)或方差的方法。
本发明还提供了一种基于流格式的图像内预测方法,包括以下步骤:
获取宏块或条带周边的相邻像素值;
使用带顶角像素加权和不带顶角像素加权两者中任意一个进行图像内预测;
其中,像素加权公式为: 其中,X像素和Yi相关,Mi代表相关系数,相关系数表示为:M=p×q;其中p为距离系数,即在一个能量通道里面,相关系数点距离被预测位置占整个通道长度的比例;q为比例系数,即这条能量通道里面的分割占整个预测像素的比例值。
所述条带预测包括已知一边或已知两对称边的情况下,对条带的水平模式预测、水平向下模式预测、水平向上模式预测、对角线模式预测;所述宏块预测包括已知一边、已知两对称边、已知三边及已知四边的情况下,对宏块的水平模式预测、水平向下模式预测、水平向上模式预测、垂直模式预测、垂直向左模式预测、垂直向右模式预测,对角线模式预测。
采用简化的系数代替由预测算法产生的复杂的算术运算。
本发明还提供了一种基于流格式的指定区域图像显示方法,使用宏块或条带作为图像显示的基本单位,具体为使用宏块或条带显示指定区域的图像信息。显示指定区域的图像信息中,所述指定区域是指在整个图像内部具体某个位置范围,该区域由一个或多个条带或宏块构成,并可以用预先设置的程序来控制条带或宏块的显示速度和显示位置;所述控制显示速度对于条带模式,表现为通过快进快退的方式观看图像内容。
与现有技术相比,本发明实施例具有以下优点:
本发明实施例中,不需要传输整张图像,也不分帧结构,条带或宏块为构成图像的基本单位,同时也是解码显示的最小单位;然后根据本发明的图像预测算法来实现预测编码,然后本发明的图像传输算法向显示端传输预测模式和残差代码,显示端根据所述预测模式和残差代码对编码信息进行解码,获得指定区域的图像信息。本发明中,图像内预测方法和图像传输算法可以根据具体需要选择使用。
在H.264的抗误码方法中,有FMO特性,允许独立和分散的宏块映射到Slice里,然后用Slice Group来封装。这种方法的目的主要是为了抗误码需要,用在视频传输里面。预测方法支持帧内和帧间预测,其中帧内预测和本专利完全不同,角度也不一样。虽然提出了分散传输的概念,但是并不能很好的对指定位置进行有针对性的传输,更不可能对指定区域进行有针对性的显示,属于完全不同的技术范畴。
本发明还规定了一种新型可预测编码和显示的单位-条带,这种显示单位和H.264里的Slice完全不是一个概念,而是针对显示和编码的需要设计出来的。而不是以传输和抗误码为目的的,因此实现方法也完全不同。
本发明还专门设计了用于支持流式图像传输的预测方法,该预测方法既保证了可以及时解码的特性又提高传输的效率。在解码的时候还提供算法可以实现对播放速度和位置的控制。
附图说明
图1是本发明一种基于流媒体的图像传输方法流程图;
图2是本发明宏块构成示意图;
图3是本发明宏块构成条带的示意图;
图4是本发明纵向条带组成整帧示意图;
图5是本发明纵向条带中的I条带示意图;
图6是本发明横向条带组成整帧示意图;
图7是本发明横向条带中的I条带;
图8是本发明流式图像的服务端编码方法;
图9是本发明流式图像使用方法;
图10是本发明一解码实例示意图;
图11是本发明宏块分级示意图;
图12a是本发明平均模式预测示意图;
图12b是本发明水平模式预测示意图;
图12c是本发明水平向下模式预测示意图;
图12d是本发明对角线1模式预测示意图;
图12e是本发明垂直向右模式预测示意图;
图12f是本发明垂直向左模式预测示意图;
图12g是本发明对角线2模式预测示意图;
图12h是本发明水平向上模式预测示意图;
图12i是本发明为DCT变换预测模式示意图;
图12j是本发明B块示意图;
图13a是本发明已知三块的预测方法;
图13b是本发明已知四块的预测方法;
图14a是本发明已知四边水平模式预测示意图;
图14b是本发明已知四边对角线1模式预测示意图;
图14c本发明已知四边水平向下模式预测示意图;
图14d本发明已知四边垂直向右模式预测示意图;
图14e本发明已知四边垂直模式预测示意图;
图14f本发明已知四边对角线2模式预测示意图;
图14g本发明已知四边水平向上模式预测示意图;
图14h本发明已知四边垂直向左模式预测示意图;
图15a是本发明已知三边水平模式预测示意图;
图15b是本发明已知三边对角线1模式预测示意图;
图15c本发明已知三边水平向下模式预测示意图;
图15d本发明已知三边垂直向右模式预测示意图;
图15e本发明已知三边垂直模式预测示意图;
图15f本发明已知三边对角线2模式预测示意图;
图15g本发明已知三边水平向上模式预测示意图;
图15h本发明已知三边垂直向左模式预测示意图;
图16a是本发明已知一边水平模式预测示意图;
图16b是本发明已知一边对角线1模式预测示意图;
图16c是本发明已知一边水平向下模式预测示意图;
图16d是本发明已知一边垂直向右模式预测示意图;
图16e是本发明已知一边垂直模式预测示意图;
图16f是本发明已知一边对角线2模式预测示意图;
图16g是本发明已知一边水平向上模式预测示意图;
图16h是本发明已知一边垂直向左模式预测示意图;
图17是本发明确定总公式系数示意图;
图18a是本发明已知两边条带水平模式预测示意图;
图18b是本发明已知两边条带水平向上模式预测示意图;
图19是本发明8×8带顶角信息的对角线1模式预测示意图;
图20是本发明增加边缘宏块预测示意图;
图21是本发明解码的次序为1、2、3、4、5、6、7示意图;
图22是本发明图21实现流程图;
图23是本发明解码的次序为以中心往边缘扩散示意图;
图24是本发明图23实现流程图;
图25至图27是本发明圆形扩散算法示意图;
图28是本发明分散存储和分散传输的示意图;
图29是本发明以I条带为例来实现对显示速度的条带序列图;
图30是本发明以宏块为例来实现对显示速度的控制示意图;
图31是本发明服务端和显示端的系统结构图;
图32是本发明用协议的方式改变或确定显示位置的消息过程和改变显示速度的消息过程;
图33是本发明一种图像实时传输示意图;
图34是本发明以宏块编码方式为例二级索引文件分级存储示意图;
图35是本发明以条带为例三级索引文件分级存储示意图。
具体实施方式
本发明实施例中,一种基于流媒体的图像传输方法,如图1所示,具体包括以下步骤:
S101,服务端在编码前或编码时需要把先把图像转换成YUV模式或其它点阵模式,然后获取图像中需要传输的指定区域,所述指定区域包括条带或宏块,在图像信息传输之前,将图像设置成以条带或宏块为基本单元的模式,而不是以整帧或整幅图像作为基础单元编码,也不需要从左到右,从上到下的固定顺序。其中,构成图像的基本单位宏块或用于变换的基本单位块如图2所示,包括1×1、1×2、2×1、2×2、4×2、2×4、4×4、4×8、8×4、8×8、8×16、16×8、16×16等;DCT变换通常采用2×2,4×4,8×8,16×16。
宏块可以由多个像素构成,条带可以由多个宏块构成,条带也可以直接作为最小的解码显示单位也可以作为最小的预测单位,条带可以分为纵向和横向两种,条带通常具有相同的结构,比如构成条带的横向像素和纵向像素数目通常是恒定的;如果条带由宏块构成,则构成条带的宏块数目也是恒定的,如图3所示;纵向条带组成整幅图像的示意图如图4所示;纵向条带中的I条带和B条带示意图如图5所示,其中I条带表示可以单独解码显示的条 带,在编码的时候也不需要用预测算法以及和周围条带求残差的过程,而B条带是一种不能够独立解码显示的条带,它需要在周围I条带已经解码的基础上才能够解码显示,而且B条带在编码的时候也需要预测编码;横向条带组成整幅图像的示意图如图6所示;横向条带中的I条带和B条带示意图如图7所示,横向条带和纵向条带只有方向上的区别,编解码的方式和传输过程都是大同小异的,只是在预测的时候把纵向条带横过来作横向预测就可以了,当然解码的时候也采用横向的方式进行解码。如果编码中条带是由宏块构成,即预测算法的基本单位是宏块而不是条带,这是I条带也必须能够独立解码。由于条带内部在编码的时候也需要DCT变换,而DCT变换最好为方形矩阵,因此条带必须能被划分为多个方形的集合。在编码时,可以通过特定的位来区别I条带或B条带。
S102,根据图像内预测方法对指定区域或整幅图像进行预测编码,并将编码信息进行预测编码、变换、量化、熵编码,然后发送到显示端。实现条带或宏块间的预测编码,服务端编码方式有两种,一种是预编码方式,即在传输前就把编码工作全部完成,通常是统一编码,统一编码通常是按一定方向一定顺序进行,如从左到右,从上到下等,这个时候往往每一条带或宏块都有唯一的序列号和其对应,或者通过某一算法公式可以找到需要的条带或宏块,在实际存储过程中往往采用分级存储的方法,这样可以很容易检索和定位;另一种方式是实时编码方式,即在需要传输时才编码,一边编码一边传输。例如采用实时编码方式的时候,以宏块为例,选定一种扩散算法,然后一层一层往外编。对于采用预测方式编码的块,需要传输预测模式、和残差代码,然后再变换、量化、熵编码。
在网络传输方面:通过I条带可以实现快进快退功能,具体参考后面关于速度控制模块和位置控制模块的说明。条带或宏块还可以以P2P(点到点)的方式来传输文件,达到网络的高效使用的目的。而现有的图像由于要整体显示,所以P2P使用的性能不高,但是由于本发明是基于流模式的,所以在使用P2P时,把图像信息分布存储在一些服务端上,通过P2P后台控制来传输图像内容,这样可以边传输边显示,这样就可以快速得到图像信息,而且不会因为某台服务器的处理能力影响服务质量。
S103,显示端根据接收到的指定区域的图像信息及从服务端获取或预先约定的预测算法进行解码获取原始图像,并基于流格式播放显示所述指定区域的图像信息。显示端进行反熵编码、反量化、反变换,并根据预测模式和残差代码对接收的编码信息进行解码,得到条带或宏块,从而获得一幅图像 的一部分。结合上述原理,一种流式图像的编码方法如图8所示,包括:图像转换为YUV格式;按条带读取;判断是否为I条带,如果是,则进行条带内预测,如果不是,则进行条带间预测;进行变换、量化、熵编码。流式图像使用方法如图9所示,包括:在服务端获取图像信息;将其存储为流格式图像;进行流传输;在显示端读取成流格式图像。
一个具体解码实例如图10所示,A、B和D块为1型宏块(已对其进行编码,1型宏块可以独立解码不需要参考其它信息),如用户关心区域由A区域开始向周围扩散,扩散的模式以正方形模式为例。
能解码的先决条件至少满足以下两个条件中的一个:要么是1型宏块;要么上下或左右两宏块已经解码、或相邻三块已经解码、或相邻四块已经解码;
其中,解码的顺序可以为固定顺序,例如:设置A位置为(0、0),右边第一块(0,1),左边的一块(0,-1),上边的一块(-1,0),下边的一块(1,0),以这样的坐标方法标记,每一块都会对应一组整数,按照这一组整数的奇偶特性可以分为偶偶块、奇偶块、偶奇块和奇奇块四种结构,先解码中心的偶偶块,再解下层偶偶块,再解奇偶块,再解偶奇块,再解奇奇块。
解码顺序也可以为:距离中心远近的方法:A、BBBB、CCCC、DDDD、FFFF、EEEEEEEE;即先传输最靠近的一个可解码块,然后判断四个周围块是否可以解码,(按中心最近原则,也就是说,离A块中心最近的四个块是否可以解码,然后判断离A块中心次近的四个块,然后以此类推)这样到了B块,发现可以直接解码,然后再从A块开始判断还没有解码的,判断和A块中心最近的未解码块能否解码,发现C块可以解码,则解码之。同理下去发现F不能解码,E也不能,解码D,然后再从A距离条件开始判断,发现如果可以解码,则解码,如果不可以,然后F解码,最后E解码。
解码的顺序还可以为:按里圈到外圈的顺序:A(里圈)、DBDBDBDB(外圈);再扫描里圈CCCC、EEEEEEEE(外圈);再扫描里圈FFFF。
为了可以从一幅图像中任何一个地方切入来接收图像部分的数据或直至接收图像的整个数据,必须要在图像内部设置可以单独完成解码的显示单元。在视频流媒体中是通过设置I帧的方法来完成的,即用户可以在视频播放过程中随机接入视频流,只要获得一个完整的I帧就可解码出完整一帧图像,然后通过帧之间的预测编码的逆过程还原出P帧和B帧的图像,同时可以利用I 帧的引入而实现快进快退的功能。本发明借用了在视频中设置I帧的思想,让用户可以定位一个关心的位置来接收这部分图像数据的内容,而不需要等图像传输完毕之后再显示图像。这种编码和数据传输方法可以用于电子地图,地理信息系统(GIS),巨型图像传输和军事图像数据传输等。
在图11中,A到I是图像中的一部分数据,定义A、C、G、I为1型宏块,不适用预测模式,为传输的可以独立解码的最基本单元,使用DCT变换、量化、熵编码等方式完成数据编码。解码的时候采用反熵编码、反量化、IDCT的方法进行解码即可。B、D、F、H为2型宏块,2型宏块根据左右或上下的1型宏块进行预测,然后使用DCT、量化、熵编码,完成编码;解码时,通过反熵编码、反量化、IDCT、使用预测逆算法解码,通常只有左右或上下一侧为已解码1型宏块。E为3型宏块,当1、2型宏块已经解码,则3型宏块周围数据都已经完成解码,这个时候可以采用预测的逆算法进行解码。在编码的时候可以用不同的位来区别1、2、3型三种不同的宏块。
图11中由1型宏块获得3型宏块E的公式为:
A C ⇔ B A G ⇔ D G I ⇔ H I C ⇔ F ⇔ E
编码时可以在DCT之前,也可以在DCT之后,也就是说可以通过DC/AC系数做宏块间预测;量化过程只是为了优化编码的性能,并不一定是必须的。
图像一般都是先存储的方式,既将整幅图像都存储后,再进行编码。但是对于单向扫描的视频则需要实时编码的方式,既文件分级存储,以宏块编码方式为例,如图34所示,是一个两级索引,A点是一级存储索引,A对应下面一个4×4的块的范围,这样存储的方法可以通过一级一级的细分,最终找到最关心的区域。如果点击A对应宏块,可以深入到下一级索引,看到更精细的部分。上面只是两级存储,根据实际需要,可以分多级的方法存储。
如图35所示,是分级存储中一种三级索引的条带结构,每上一层条带对应下一层四个条带,在查找某一具体位置时,可以根据索引快速定位。
预测算法采用加权预测的基本模式,根据像素之间的相关性进行预测, 如:X像素和Yi相关,用Mi代表相关系数,则有如下公式: 
Figure BSA00000330072200111
在预测宏块中某一像素的时候通常用一个正方形区域代表一个像素,所谓相关是指在这个正方形区域内延预测方向的平行线所能穿过的相邻宏块中最靠近被预测宏块的像素。这些像素中包括带顶角和不带顶角两种情况。
当对某一位置像素进行预测时,首先把这一个像素进行分割。分割的方法是按相邻快相关像素所在位置利用和预测方向相平行的线段把需要预测的像素分成若干块,如图13a所示。总有一个或两个相关像素点可以控制一定的预测像素的一个分割,并把所述一个或两个相关像素围成的平行四边形区域成为能量通道。
得到像素加权公式为: 
Figure BSA00000330072200112
其中,X像素和Yi相关,Mi代表相关系数,相关系数表示为:M=p×q;其中p为距离系数,即在一个能量通道里面,相关系数点距离被预测位置占整个通道长度的比例;q为比例系数,即这条能量通道里面的分割占整个预测像素的比例值。
在计算q时,有两种思路,一种是将一个像素能量平均分布在像素所代表的小方块内,q值不为1;另一种是将一个像素的能量集中在像素所代表的小方块的中心点位置,这是q值通常为1,但是当分割线穿过中心点时,均按1/2计算。
在计算P时,在本发明中,均从相邻块相关像素点代表的小方块的边开始计算,即能量通道的两边为代表相关像素点的小方块的最靠近两边。当然可以以相邻像素点代表的小方块的中心作为能量通道的两边来计算P值。
其中p为距离系数,即在一个能量通道里面,相关系数点距离被预测位置占整个通道长度的比例。如果能量通道只有一边像素可知,则定义p值为1。
q为比例系数,即这条能量通道里面的分割占整个预测像素的比例值,为了方便计算,通常有1/4、1/2、3/4、1/8、3/8、5/8、7/8等。
为了计算方便通常把相关系数的分母调成2的指数,如2、4、8、16、32等,这样在计算机处理时可以方便地使用移位操作完成计算。而且在实际计算中,为了进一步简化计算,往往根据以上计算结果,人为规定一些相关系数使计算更加简便,但是考虑的依据仍然是上面计算的结果,并取一些近似的结果加以简化,近似的方法为常用的数学方法,如取整、四舍五入等。在人为规定一些参数的时候往往考虑和相关像素距离远近,有时候不在一个能量通道里面也把相关像素引入到计算公式里面,来计算某能量通道里面的像素的预测值。
预测算法如图12a至12i,为相邻宏块中有两个对称宏块已解码时的情况,设A、C已解码,需要预测B,其中,B块为B[1]到B[16],如图12j所示。 在计算B块内每个点的像素的预测值时,采用加权的方法,即根据预测的方向,通过对能够影响到B块内该像素值的相邻块的相关像素加权得到。
图12a为平均模式预测,预测公式为:
B [ 1 ] = B [ 2 ] = B [ 3 ] = B [ 4 ] = B [ 5 ] = B [ 6 ] = B [ 7 ] = B [ 8 ] = B [ 9 ] = a + b + c + d + e + f + g + h 8 ;
B [ 10 ] = B [ 11 ] = B [ 12 ] = B [ 13 ] = B [ 14 ] = B [ 15 ] = B [ 16 ] = B [ 17 ] = B [ 18 ] = a + b + c + d + e + f + g + h 8 ; 或者
B [ 1 ] = B [ 2 ] = B [ 3 ] = B [ 4 ] = a + e 2 ; B [ 5 ] = B [ 6 ] = B [ 7 ] = B [ 8 ] = b + f 2 ;
B [ 9 ] = B [ 10 ] = B [ 11 ] = B [ 12 ] = c + g 2 ; B [ 13 ] = B [ 14 ] = B [ 15 ] = B [ 16 ] = d + h 2 ;
图12b为水平模式预测,影响B[1]、B[2]、B[3]、B[4]像素值的相邻像素点分别为A块中的a像素点和C块中的e像素点。因此B[1]、B[2]、B[3]、B[4]只和a、e两点像素有关,公式为:
B [ 1 ] = a + ( e - a ) 8 = 7 a + e 8 ; B [ 2 ] = a + 3 ( e - a ) 8 = 5 a + 3 e 8 ;
B [ 3 ] = a + 5 ( e - a ) 8 = 3 a + 5 e 8 ; B [ 4 ] = a + 7 ( e - a ) 8 = a + 7 e 8 ;
B [ 5 ] = 7 b + f 8 ; B [ 6 ] 5 b + 3 f 8 ; B [ 7 ] = 3 b + 5 f 8 ; B [ 8 ] = b + 7 f 8 ;
B [ 9 ] = 7 c + g 8 ; B [ 10 ] 5 c + 3 g 8 ; B [ 11 ] = 3 c + 5 g 8 ; B [ 12 ] = c + 7 g 8 ;
B [ 13 ] = 7 d + h 8 ; B [ 14 ] 5 d + 3 h 8 ; B [ 15 ] = 3 d + 5 h 8 ; B [ 16 ] = d + 7 h 8 ;
图12c为水平向下模式预测,预测公式为:
B [ 1 ] = 2 a + g + f 4 ; B [ 7 ] = a + 2 g + f 4 ; B [ 5 ] = 3 b + 2 a + g + 2 h 8 ; B [ 11 ] = 2 b + a + 2 g + 3 h 8 ;
B [ 9 ] = B [ 15 ] = 2 c + b + h 4 ; B [ 2 ] = B [ 8 ] = a + 2 f + g 4 ; B [ 6 ] = 3 a + 2 b + 2 g + h 8 ;
B [ 12 ] = 2 a + b + 3 g + 2 h 8 ; B [ 10 ] = B [ 16 ] = 2 b + c + h 4 ; B [ 3 ] = 3 f + e 4 ; B [ 4 ] = f + 3 e f ;
B [ 13 ] = c + 3 d 4 ; B [ 14 ] = 3 c + d 4 ;
图12d为对角线1模式预测,预测公式为:
B [ 1 ] = 7 a + h 8 ; B [ 6 ] 5 a + 3 h 8 ; B [ 11 ] = 3 a + 5 h 8 ; B [ 16 ] = a + 7 h 8 ; B [ 5 ] = B [ 10 ] = B [ 15 ] = a + b 2 ;
B [ 2 ] = B [ 7 ] = B [ 12 ] = g + h 2 ; B [ 3 ] = B [ 8 ] = f + g 2 ; B [ 9 ] = B [ 14 ] = b + c 2 ; B [ 13 ] = c + d 2 ;
B [ 4 ] = e + f 2 ;
图12e为垂直向右模式预测,预测公式为:
B[1]=B[10]=a; B [ 2 ] = B [ 6 ] = B [ 11 ] = B [ 15 ] = a + h 2 ; B [ 3 ] = B [ 12 ] = 3 h + g 4 ; B [ 4 ] = 2 f + e + g 4 ; B [ 5 ] = B [ 14 ] = 3 a + b 4 ; B [ 7 ] = B [ 16 ] = h ; B [ 8 ] = 2 g + f + h 4 ; B [ 9 ] = a + 2 b + c 4 ; B [ 13 ] = b + 2 c + d 4 ;
图12f为垂直向左模式预测,预测公式为:
B[4]=B[11]=e; B [ 3 ] = B [ 7 ] = B [ 10 ] = B [ 14 ] = e + d 2 ; B [ 2 ] = B [ 9 ] = 3 d + c 4 ; B [ 1 ] = 2 b + a + c 4 ; 3 e + f 4 ; B [ 6 ] = B [ 13 ] = d ; B [ 5 ] = 2 c + b + d 4 ; B [ 12 ] = e + 2 f + g 4 ; B [ 16 ] = f + 2 g + h 4 ;
图12g为对角线2模式预测,预测公式为:
B [ 4 ] = 7 e + d 8 ; B [ 7 ] = 5 e + 3 d 8 ; B [ 10 ] = 3 e + 5 d 8 ; B [ 13 ] = e + 7 d 8 ; B [ 8 ] = B [ 11 ] = B [ 14 ] = e + f 2 ; B [ 3 ] = B [ 6 ] = B [ 9 ] = c + d 2 ; B [ 2 ] = B [ 5 ] = b + c 2 ; B [ 12 ] = B [ 15 ] = f + g 2 ; B [ 16 ] = g + h 2 ; B [ 1 ] = a + b 2 ;
图12h为水平向上模式预测,预测公式为:
B [ 4 ] = 2 e + c + b 4 ; B [ 6 ] = e + 2 c + b 4 ; B [ 1 ] = 3 f + 2 e + c + 2 d 8 ; B [ 10 ] = 2 f + e + 2 c + 3 d 8 ; B [ 12 ] = B [ 14 ] = 2 g + f + d 4 ; B [ 3 ] = B [ 5 ] = e + 2 b + c 4 ; B [ 7 ] = 3 e + 2 f + 2 c + d 8 ; B [ 19 ] = 2 e + f + 3 c + 2 d 8 ; B [ 11 ] = B [ 13 ] = 2 f + g + d 4 ; B [ 2 ] = 3 b + a 4 ; B [ 1 ] = b + 3 a 4 ; B [ 16 ] = g + 3 h 4 ; B [ 15 ] = 3 g + h 4 ;
图12i为DCT变换预测模式,先使用DCT变化,然后再预测,即预测是在DCT域内进行的。在预测时,把当前块作DCT变换,然后再和周围已经DCT变换的块进行逐像素比较,找出相似程度最大的块。然后作残差,再DCT编码。判断是否为最相似的块采用SAD(绝对差和)或方差的方法。
对于如图12的情况,即当前需要预测块周围有三个已知块同样采用类似的方法,如图13a所示;还有当前需要预测块周围四块已知,则采用同样类似的方法,如图13b所示。
如图13a所示,由于三边相邻块的相关像素点已知,比两边多一边,但是并不是预测块中每一个像素点都需要上述三边信息,在13a中,用水平向下的预测模式,只有a到e第一排四个像素点和b到f第二排后两个像素点才 用得上相邻B块的相关像素点信息,其它像素点的预测和对称两相邻块已知第三边未知的情况是一样的,这里不再累述。以13a中X像素点的预测为例,延水平向下预测方向通过X块的平行线会穿过a、i、j、f、g五个相关像素点。a到X的距离系数为7/8,a到X的比例系数为1/4;i到X的距离系数为6/7,i到X的比例系数为1/2;j到X的距离系数为4/5,j到X的比例系数为1/4;f被分为了两部分,上半部分和j对应,下半部分和i对应,上半部分到X的距离系数为1/5,到X的比例系数为1/4,下半部分到X的距离系数为1/7,到X的比例系数为1/2;g到X的距离系数为1/8,到X的比例系数为1/4。
得到X块的预测公式:
X = 7 8 × 1 4 a + 6 7 × 1 2 i + 4 5 × 1 4 j + 1 5 × 1 4 f + 1 7 × 1 2 f + 1 8 × 1 4 g
对相邻四块的预测方法和三块是一样的,只是对于一些块的预测会使用更多相关像素点的信息。
当采用通过相邻的四块已知宏块进行预测时,水平模式预测如图14a所示,预测公式与已知两边情况相同;对角线1模式预测如图14b所示,预测公式为;水平向下模式预测如图14c所示;垂直向右模式预测如图14d所示;垂直模式预测如图14e所示;对角线2模式预测如图14f所示;水平向上模式预测如图14g所示;垂直向左模式预测如图14h所示。
当通过相邻三块已知宏块进行预测,水平模式预测如图15a所示;对角线1模式预测如图15b所示;水平向下模式预测如图15c所示;垂直向右模式预测如图15d所示;垂直模式预测如图15e所示;对角线2模式预测如图15f所示;水平向上模式预测如图15g所示;垂直向左模式预测如图15h所示。
当通过相邻一已知宏块进行预测时,水平模式预测如图16a所示;对角线1模式预测如图16b所示;水平向下模式预测如图16c所示;垂直向右模式预测如图16d所示;垂直模式预测如图16e所示;对角线2模式预测如图16f所示;水平向上模式预测如图16g所示;垂直向左模式预测如图16h所示。
下面介绍结合图17说明如何确定已知相邻块中各个像素点对当前需要预测像素点的影响,也就是在公式中如何确定系数。如果要预测X块,采用的预测方式是水平向下,则和X像素点所在块相邻块的相关像素点主要有,A、B、C、D四像素点;判断的方法为,延X像素点边缘作预测方向的平行线,刚好经过的相邻块的点为相关像素点。显然,如果把和预测方向平行的ab直线再往上移,将不通过X像素点,同样,把和预测方向平行的gh直线再往下 移,将不通过X像素点。这样就可以确定ag范围为一边的相关范围,bh为另一边的相关范围。
得出ag正好落在A和B两个相邻块的相邻像素点内,bh正好落在C和D两个相邻块的相关相邻像素点内,因此得出在水平向下的模式下,和X点相关的相邻块的相关像素点有A、B、C、D四像素点。ab和ef所构成的区域通过X像素点,并占了X像素点四分之三的面积;即A像素点和C像素点对X影响要占影响作用的四分之三;ef和gh所构成的区域通过X像素点,并占了X像素点四分之一的面积;即B像素点和D像素点对X影响要占影响作用的四分之一。再从空间上来考虑,A与X块的中点距离:m;C与X块中点距离:n,即:m∶n=3∶5,A距离上影响作用占八分之五,C距离上影响作用占八分之三,影响作用正好成反比,同理B和D也符合上面比例。
因此: X = 3 4 A × 5 8 + 1 4 B × 5 8 + 3 4 C × 3 8 + 1 4 D × 3 8 = 15 A + 5 B + 9 C + 3 D 32
在实际的应用中,通常会采用比较简单的计算公式来简化算法复杂度。
在预测时,可以使用顶角像素,如图19所示,A、a、J、j就是顶角像素,即正方行四个顶角对应的像素,8×8带顶角信息的对角线1模式在计算公式中,需要进行一些处理;被预测的模块,可以是2×2、4×4、8×8、16×16等结构块,也可以是条带,如图18a或18b所示,或其他形状。
在预测的时候,以块的边缘作为能量集中的区域,即把一个像素看作一个小正方形,在预测的时候把正方形的和预测区域相邻的边作为能量集中的区域。然后用现有的预测方法来对未知区域进行预测的方法,是前面提到过的预测方法,公式就是前面给出的那个总公式,这种方法不需要顶角像素。下面提到预测方法不是把能量集中到和预测区域的相邻边,而是放在现有像素的中心点,即把能量集中到中心点,如图23所示,然后去预测未知区域的方法。这种方法需要顶角像素,如图19所示。详细的算法推理见图24所示,以对角线1模式为例进行4×4的预测,中心区域为需要预测的块。按预测方向用平行线连接个像素中心点,然后再用平行线平分这些能量区域,形成如图26中的a、b、c、d、e、f、g、h、i等能量通道。同一能量通道里面的能量变化是线性的。在对角线模式下,很容易计算,如果能量通道只用一端已知,另一端未知,则假定这段能量通道内能量恒定,这样就可以预测能量通道中的预测模块内的相关像素点。如果能量通道两端已知,即两边像素值已知,则采用线性的方法计算出中间预测模块内需要预测的像素点对应的位置 的值即可。如在e通道内,如果两端像素值已知(线段两端点已知),则需要求这条线段上其余四个点e1、e2、e3、e4的值。
e 1 = m + ( n - m ) 5 ; e 2 = m + 2 ( n - m ) 5 ; e 3 = m + 3 ( n - m ) 5 ; e 4 = m + 4 ( n - m ) 5 ;
如图20a和图20b所示,1、2、3型宏块的基础上,增加一种边缘宏块,即已经到了整个画面的边界部分,在图20中用B表示,这个时候,可以采用图15或图16的预测方法来对边界宏块进行预测编码。在图20中,当选择以中心区域为中心开始显示的时候,显示的顺序是由中心往周围扩散的,这样的方法,最容易找到用户关心的区域。
如图21,解码的次序为1、2、3、4、5、6、7...。当然根据不同的算法有不同的次序,这个解码次序和前面不一样,但是基本规律是一样的,先传1型宏块,把1型宏块区域看作已知区域A,再传已知区域A(1型宏块周围)的1型宏块,再解码可以解码的所有2、3型宏块,然后再把所解码的区域看作已知区域A,然后再传已知区域周围的1型宏块,然后再解码可解码的2、3型宏块;以此往复,如图22所示。
如图23所示,以中心往边缘扩散的方法有多种,图21展示了一种常见的,正方形扩展算法,算法描述:传1型宏块,看作小正方形区域;各边步长加一,如果没有搜索到可以传输解码的块;各边步长再加一;如果有则解码;然后把得到的已经解码的正方形区域作为基本的正方形;再重复上面步骤,各边步长加一,如图24所示。
如图25-图27所示,为能量集中到像素所代表的正方形中心的情况。在划分能量通道的时候,把相邻的像素代表的能量点用直线连接起来,取连接两相邻像素能量点线段的中点作平行于预测方向的直线,这样就可以划分出不同的能量通道。在预测时,如果一个当前预测的像素在某一个能量通道里面时,则通过如图26公式计算出当前所预测的像素值。如果一个像素同时在两个能量通道里面,即所预测的像素代表的正方形中心被分割能量通道的直线穿过时,则将两个不同的预测值通过加权得到当前预测值,如各取二分之一之后相加得到。如果采用能量集中到一点这种计算方法时,像素加权公式中比例系数q值为1。
本发明的存储和传输可以是两个独立完成的过程,例如月球表面图像数据,先把它分块后统一编号,如果按图22的顺序编号(按行从左到右编号),并假设整体数据是保存在8×8的区域内。很容易发现存储是按一种的顺序, 从左到右或从右到左,从上到下或从下到上,或一些特有的数学排列的顺序,这和提取数据的顺序是完全不一样的,在提取数据时,可能从中间的某一位置开始按一定的顺序或设定的算法提取。
在图像存储的时候可能是采用非预测编码的原数据,也可以是采用预测编码时候的数据。需要注意的是,预测编码的目的主要是为了节省在网络上传输时候带宽的问题。所以,可以在需要网络传输的时候再编码,当然可以先编码之后存储然后再在网络上传输。
当需要传输以区域(28)为中心的图像数据时,如果是传输的时候才预测编码的话,可规定中心为1型宏块进行编码,如果是已经预测编码好之后在传输则,找离中心28最近的1型宏块进行传输;还是以正方形扩散为例来说明,首先,找28周围的1型宏块,需要先传输10、12、14、26、30、42、44、46这些1型宏块;然后需要做的是,如何计算出上面对应的这些块的序号,公式如下:设整个图像存储在m×n(m为行,n为列)的区域的宏块内,而且X为28,为中心也为1型宏块,Y为需要再传输的1型宏块,舍最大块为MAX,最小块编号为1:
Y1=X-2n-2;Y2=X-2n;Y3=X-2n+2;Y4=X-2;Y5=X+2;Y6=X+2n-2;Y7=X+2n;Y8=X+2n+2;
最后,再继续往周围扩散的时候,把Y1到Y8来替换现有的X即可,如,以Y1为例再往下计算:
Z1=Y1-2n-2;Z2=Y1-2n;Z3=Y1-2n+2;Z4=Y1-2;Z5=Y1+2;Z6=Y1+2n-2;Z7=Y1+2n;Z8=Y1+2n+2。
这样就可以计算出下一层需要传输的1型宏块。通过这样递归的方法,就可以把需要显示的区域不断无间隔地扩大。
计算中已经计算过的,提取了就不用再提取了,如果发现小于1的就舍去,如果发现大于最块值块MAX的也舍去。对于条带式比较简单,虽然也是整体存储,但是提取的时候传输I条带,然后再传输B条带就好了,因为I条带之间的间隔是固定的或者I条带位置可以计算得到,所有很容易计算其位置,也方便提取和传输。
主要用于巨大的图像传输,由于使用流式结构,可以提供网络上一些实时的业务,如电子商务等。对于一些只需要单向增加数据的地方,比如扫描系统,监控监测系统等,以扫描系统为例:由于已经拍摄过的影像不需要修 改,而且需要对正在进入镜头的一部分数据进行存储或编码传输,如果是这样情况,实际上也只需要对正在进入镜头的数据部分进行编码。这样做可以在节省编码资源也便于实时传送。
如图28所示,在存储的时候既可以统一存储在一个地方也可以分散在多个地方存储,把图像信息分散存储到源1到源n中,当X端发起对指定图像区域的请求时,可以同源1到源n中包含指定区域信息的源向X端响应,并向X端传输指定区域图像信息。可以采用P2P作为分散传输的底层协议。
本发明还提供了一种基于流格式的图像内显示方法,其中以I条带来实现对显示速度的条带序列如图29所示,当显示端向图像服务端发起显示请求时,可以包含显示速度信息,如每个时间单位内发送的内容包含5个I条带,这样,当服务端接收到这条消息后,就会调整自身的发送速度,保证按显示端的需求的速度发送。要达到这个目的,还必须先将I条带或带有显示速度信息的条带均匀或非均匀的分布在这个图像中,并且有相应的序列编号。
当需要在图像内做跳转时,即从当前显示条带位置跳到某一个设定条带位置时,只需要知道需要跳转的条带序列编号即可。如图29所示,需要跳转到n位置,则向服务端发送跳转信息和跳转的位置信息,则马上就可以看到n位置的图像信息。如果显示端接收的图像信息的速度比显示图像的速度快,则可以将接收的图像信息存储在显示端,在按照显示速度进行显示。
如图30所示,对于宏块的显示,同样也可以使用类似条带的方法控制显示的速度和显示的位置。图30中,宏块显示了一个“E”的图案,可以用设定条带显示位置的方案来生成所需要显示的图案。前面说的宏块的扩散算法也是显示位置的一种特定算法,是位置显示控制的一个实例。在图30中,在显示端的位置控制模块中向服务端发送位置信息:【1,2】、【1,3】、【1,4】、【1,5】、【2,2】、【3,2】、【3,3】、【3,4】、【4,2】、【5,2】、【5,3】、【5,4】、【5,5】。显示端就可以显示出预先设计出的“E”图案。
如图31所示,服务端和显示端的系统结构图,包括服务端和显示端。其中,服务端包括服务控制模块、编码模块、消息模块、存储模块和网络模块,消息模块中进一步包括速度控制子模块和位置控制子模块;其中,服务控制模块用于根据用户需求对服务端进行相关控制操作;编码模块用于对需要传输的信息进行编码;消息模块中的速度控制子模块用于控制图像传输的速度、位置控制子模块用于控制图像现实的位置;存储模块,用于存储相关信息, 网络模块,用于与显示端通信。显示端包括显示模块、解码模块、消息模块、存储模块和网络模块,消息模块中进一步包括速度控制子模块和位置控制子模块;消息模块中的速度控制子模块用于控制图像显示的速度、位置控制子模块用于控制图像显示的位置;存储模块用于存储显示图像的相关信息;解码模块用于对接收信息进行解码;显示模块用于显示图像。
如图32所示,表现出用协议的方式改变或确定显示位置的消息过程和改变显示速度的消息过程。具体包括:显示端通过向服务端发送显示图像的位置信息;服务端向显示端反馈接受OK;服务端向显示端发送确定图像内需要传送的位置,并传送;显示端向服务端发送显示的速度信息;服务端向显示端反馈接受OK;服务端向显示端发送改变现有发送速度信息,并发送。本图中只画出了最重要的消息。如图32,当使用TCP作为网络的底层协议可以很好的通过消息来控制,但是使用UDP时和TCP不同,是一种尽力传输模式,可能会出现显示的速率和传输的速率不匹配的情况,比如,显示的速率过快,因此在非实时要求的情况下,可以考虑先把传输到显示端的数据缓存一部分到本地,显示时直接从本地取出数据即可,以减小由于网络性能不稳定给显示端带来的影响。或直接采用传输和控制分离的方法,即传输使用UDP控制层TCP,分别采用不同的端口传输。利用现有的协议族就是RTP/RTCP协议。
如图33所示,在实时传输过程中,以条带传输为例,服务端利用图像成像设备,如扫描仪,扫描需要传输的信息。由于扫描的光电器件长度固定,扫描宽度随时间不断增加,所获图像信息也越多。这种情况下,可以选用条带的方式来进行编码和预测,条带的长度为扫描光电器件的长度,在图中为a边长度,宽度随时间变化,以单位时间内扫描仪扫描的宽度为条带的宽度,途中为b边长度。这样当扫描仪扫描某一个位置时,可以对这个位置所在的区域进行编码,图中为当前编码条带所代表位置。然后将当前编码条带实时传输到显示端进行显示。如果要对当前编码条带进行预测编码,则等到下一编码条带信息已知以后再对当前编码条带进行编码。解码时,只有I型条带可以直接解码,其它条带必须根据前后的I型条带的或已经解码的条带进行解码。这样就可以完成条带编码的实时传输和实时显示。在显示端,为了观看到最新传输过来的图像信息,通常是把图像做滚动处理,在33图中,将图像往左边不断滚动,滚动的速度和传输的速度一致,图像的一端会在左边最边缘处消失,消失的速度也和传输的速度保持一致,这样可以保证我们观看的图像尺寸不会发生变化。
为了平衡编码效率,解码时间和实时这三方关键因素,适当的在条带中 设置I型条带的位置就非常关键,通常采用均匀的部署模式,如每隔一个条带设置一个I型条带,或每个两个条带设置一个I型条带等。
本发明实施例所描述的技术可以用硬件、软件、或组合执行。如果用软件执行,则该技术可以直接指包含程序代码的计算机可读介质,该程序代码在对视频序列进行编码的设备中执行,进行该实施例中的一个或多个残差编码技术。在该种情况下,计算机可读介质可以包括RAM(随机存储器)、SDRAM(同步动态随机存储器)、ROM(只读存储器)、NVRAM(非易失性随机存储器)、EEPROM(电可擦除只读存储器)、FLASH(闪存)等。
程序编码可以以计算机可读指令的形式存储在存储器中。在该情况下,一个或多个处理器可以执行存储在存储器中的指令,从而执行一个或多个残差编码技术。在一些情况下,处理器可以用DSP(数字信号处理)设备执行,DSP使用各种硬件元件来加速编码处理;在其它情况下,编码设备可以作为一个或多个微处理器,一个或多个或者多个ASIC(专用集成电路)、FPGA(现场可编程门阵列)、或一些其它等效集成或分立逻辑电路或硬件软件组合来执行。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

Claims (2)

1.一种基于流格式的图像内预测方法,其特征在于包括以下步骤:
获取宏块或条带周边的相邻像素值;
使用带顶角像素加权和不带顶角像素加权两者中任意一个进行图像内预测;
其中,像素加权公式为:
X = Σ i = 1 n M i Y i
其中,X像素和Yi相关,Mi代表相关系数,
相关系数表示为:
M=p×q
其中p为距离系数,即在一个能量通道里面,相关系数点距离被预测位置占整个通道长度的比例;
q为比例系数,即这条能量通道里面的分割占整个预测像素的比例值。
2.如权利要求1所述基于流格式的图像内预测方法,其特征在于:所述条带预测包括已知一边或已知两对称边的情况下,对条带的水平模式预测、水平向下模式预测、水平向上模式预测、对角线模式预测;所述宏块预测包括已知一边、已知两对称边、已知三边及已知四边的情况下,对宏块的水平模式预测、水平向下模式预测、水平向上模式预测、垂直模式预测、垂直向左模式预测、垂直向右模式预测,对角线模式预测。
CN 201010529588 2007-05-08 2007-05-08 一种基于流格式的指定区域图像传输及显示方法 Active CN102123277B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010529588 CN102123277B (zh) 2007-05-08 2007-05-08 一种基于流格式的指定区域图像传输及显示方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010529588 CN102123277B (zh) 2007-05-08 2007-05-08 一种基于流格式的指定区域图像传输及显示方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN 200710086668 Division CN101039420B (zh) 2007-03-30 2007-03-30 一种基于流格式的指定区域图像传输及显示方法

Publications (2)

Publication Number Publication Date
CN102123277A true CN102123277A (zh) 2011-07-13
CN102123277B CN102123277B (zh) 2012-11-14

Family

ID=44251703

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010529588 Active CN102123277B (zh) 2007-05-08 2007-05-08 一种基于流格式的指定区域图像传输及显示方法

Country Status (1)

Country Link
CN (1) CN102123277B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105451021A (zh) * 2015-10-05 2016-03-30 上海大学 一种低功耗无线微显示系统
CN107113425A (zh) * 2014-11-06 2017-08-29 三星电子株式会社 视频编码方法和设备以及视频解码方法和设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100371130B1 (ko) * 1996-05-28 2003-02-07 마쯔시다덴기산교 가부시키가이샤 화상예측 복호화 장치 및 그 방법과 화상예측 부호화 장치및 그 방법
CN1240025C (zh) * 2003-04-25 2006-02-01 北京工业大学 基于视频内容的视频编码方法
CN100418330C (zh) * 2006-06-06 2008-09-10 北京北大方正电子有限公司 一种基于预测搜索的网络文件传输方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107113425A (zh) * 2014-11-06 2017-08-29 三星电子株式会社 视频编码方法和设备以及视频解码方法和设备
US10666940B2 (en) 2014-11-06 2020-05-26 Samsung Electronics Co., Ltd. Video encoding method and apparatus, and video decoding method and apparatus
CN105451021A (zh) * 2015-10-05 2016-03-30 上海大学 一种低功耗无线微显示系统
CN105451021B (zh) * 2015-10-05 2019-06-25 上海大学 一种低功耗无线微显示系统

Also Published As

Publication number Publication date
CN102123277B (zh) 2012-11-14

Similar Documents

Publication Publication Date Title
CN101039420B (zh) 一种基于流格式的指定区域图像传输及显示方法
US11800136B2 (en) Constrained motion field estimation for hardware efficiency
CN106537923B (zh) 自适应视频流的技术
CN101637023B (zh) 使用预编码宏块的视频游戏系统
CN101112103B (zh) 有效地预测基于多层的视频帧的方法、及使用该方法的视频编码方法和设备
CN1981537B (zh) 能够在流应用中进行媒体采集的方法和设备
US9859920B2 (en) Encoder and decoder
EP1292150A2 (en) Image data providing system
CN105247867A (zh) 用于不同层间预测类型的参考图片的独立重新采样及选择
US20150189269A1 (en) Recursive block partitioning
CN105340276A (zh) 对多层视频译码的层间预测信令的优化
CN102084655A (zh) 通过过滤器选择进行的视频编码
CN106576182A (zh) 视频质量提升
US20210112270A1 (en) Dynamic motion vector referencing for video coding
CN103975601A (zh) 视频编码的速率-失真-复杂性优化
CN104539948B (zh) 视频处理系统和视频处理方法
CN103959779A (zh) 在视频译码中用于自适应环路滤波和样本自适应偏移的基于最大译码单元(lcu)或分区的语法
KR20140098046A (ko) 참조 블록 파형 정보에 기반하여 인트라 영상을 부호화 하는 장치 및 복호화 하는 장치
US20200351502A1 (en) Adaptation of scan order for entropy coding
CN100471220C (zh) 在小尺寸显示器上显现大静止画面的方法
CN102123277B (zh) 一种基于流格式的指定区域图像传输及显示方法
CN117714700A (zh) 一种视频编码方法、装置、设备、可读存储介质及产品
CN103260090B (zh) 一种用于p2p三维流媒体系统中的视频段调度及传输方法
Kumar et al. An optimal weighted HEVC coding for video compression
CN112114760A (zh) 图像处理方法及装置

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