CN112632426A - 网页处理方法及装置 - Google Patents

网页处理方法及装置 Download PDF

Info

Publication number
CN112632426A
CN112632426A CN202011527579.9A CN202011527579A CN112632426A CN 112632426 A CN112632426 A CN 112632426A CN 202011527579 A CN202011527579 A CN 202011527579A CN 112632426 A CN112632426 A CN 112632426A
Authority
CN
China
Prior art keywords
frame picture
current frame
picture
previous frame
determining
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
CN202011527579.9A
Other languages
English (en)
Other versions
CN112632426B (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.)
New H3C Big Data Technologies Co Ltd
Original Assignee
New H3C Big Data Technologies Co Ltd
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 New H3C Big Data Technologies Co Ltd filed Critical New H3C Big Data Technologies Co Ltd
Priority to CN202011527579.9A priority Critical patent/CN112632426B/zh
Publication of CN112632426A publication Critical patent/CN112632426A/zh
Application granted granted Critical
Publication of CN112632426B publication Critical patent/CN112632426B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • 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/176Methods 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 block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本申请提供了一种网页处理方法及装置,该方法包括:获取网页的当前帧画面和所述网页的上一帧画面;分别从当前帧画面和上一帧画面获取若干条垂直方向的垂直直线,分别构成第一线条集和第二线条集;基于第一线条集和第二线条集,确定当前帧画面与上一帧画面之间的运动矢量;基于运动矢量移动上一帧画面中的每个宏块,对移动后的宏块和当前帧画面中对应位置的目标块进行运算处理,得到当前帧画面与上一帧画面之间的残差;对残差进行编码并将编码后的结果发送给云桌面客户端,以使云桌面客户端对编码后的结果进行解码得到残差,基于上一帧画面和残差获得当前帧画面并输出展示。解决了用户基于云桌面客户端浏览网页时画面不流畅且带宽占用大的问题。

Description

网页处理方法及装置
技术领域
本申请涉及云计算技术领域,尤其涉及一种网页处理方法及装置。
背景技术
当前云计算的时代背景下,虚拟桌面基础架构(Virtual DesktopInfrastructure,VDI)的应用场景日益广泛,VDI主要依靠物理服务器上的虚拟机监视器(Hypervisor)划分出的虚拟机,通过云桌面传输协议将虚拟机画面传递到云桌面客户端。最影响云桌面传输协议性能的是图像的压缩与传输,图像压缩的主要性能指标为压缩速度、压缩效率和图片质量。而压缩速度反应响应速度,影响操作的流畅性;压缩效率影响压缩后图片大小,影响网络带宽;而图片质量决定云桌面客户端接收到图像的清晰度。用户在使用虚拟机上进行网页浏览时,会有大量的图片需要传输,同时用户在浏览网页时更希望能够获得与本地浏览网页一样的体验,这就要求图片压缩速度快、图片质量也要高,同时还需要尽量提高压缩效率来降低网络带宽。
目前普通采用的图像压缩算法是基于JPEG的图像压缩算法,以及基于H264标准的视频压缩算法。其中,基于JPEG的图像压缩方案,通过将用户浏览网页时所看到的画面作为原始图片,经过JPEG图像压缩算法压缩,将压缩后的图片通过云桌面传输协议传输,云桌面客户端接收到压缩后的图片进行解压缩并绘制到云桌面客户端。而基于H264标准的适配压缩方案,通过将用户浏览网页时的所产生的大量图片当成一个视频序列,然后采用视频压缩的方式,变成一个实时的视频流并传递到云桌面客户端,云桌面客户端对视频流解码并绘制到云桌面客户端。然而上述两种压缩方法都属于有损压缩,会导致图片清晰度不足,尤其在图像内有文字信息时图片清晰度的影响最为明显,而且基于JPEG压缩算法没有考虑帧间压缩,该算法会导致压缩效率不高占用带宽较大;基于H264标准的压缩算法时间消耗较大无法满足实时传输的需求。
因此,如何解决VDI应用场景中,用户基于云桌面客户端浏览网页时画面不流畅且带宽占用比较大的问题是值得考虑的技术问题之一。
发明内容
有鉴于此,本申请提供一种网页处理方法及装置,用以解决VDI应用场景中,用户基于云桌面客户端浏览网页时画面不流畅且带宽占用比较大的问题。
具体地,本申请是通过如下技术方案实现的:
根据本申请的第一方面,提供一种网页处理方法,包括:
获取网页的当前帧画面和所述网页的上一帧画面;
分别从所述当前帧画面和所述上一帧画面获取若干条垂直方向的垂直直线,并分别构成第一线条集和第二线条集,所述线条集中的每条垂直直线由该垂直直线的每个点在帧画面中对应位置的像素值构成;
基于所述第一线条集和所述第二线条集,确定所述当前帧画面与所述上一帧画面之间的运动矢量;
基于所述运动矢量移动所述上一帧画面中的每个宏块,并对移动后的宏块和所述当前帧画面中对应位置的目标块进行运算处理,得到所述当前帧画面与所述上一帧画面之间的残差;
对所述残差进行编码并将编码后的结果发送给云桌面客户端,以使所述云桌面客户端对所述编码后的结果进行解码得到所述残差,并基于所述上一帧画面和所述残差获得所述当前帧画面并输出展示。
根据本申请的第二方面,提供一种网页处理装置,包括:
获取模块,用于获取网页的当前帧画面和所述网页的上一帧画面;
线条集生成模块,用于分别从所述当前帧画面和所述上一帧画面获取若干条垂直方向的垂直直线,并分别构成第一线条集和第二线条集,所述线条集中的每条垂直直线由该垂直直线的每个点在帧画面中对应位置的像素值构成;
运动矢量确定模块,用于基于所述第一线条集和所述第二线条集,确定所述当前帧画面与所述上一帧画面之间的运动矢量;
残差计算模块,用于基于所述运动矢量移动所述上一帧画面中的每个宏块,并对移动后的宏块和所述当前帧画面中对应位置的目标块进行运算处理,得到所述当前帧画面与所述上一帧画面之间的残差;
编码模块,用于对所述残差进行编码;
发送模块,用于将编码后的结果发送给云桌面客户端,以使所述云桌面客户端对所述编码后的结果进行解码得到所述残差,并基于所述上一帧画面和所述残差获得所述当前帧画面并输出展示。
根据本申请的第三方面,提供一种电子设备,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的计算机程序,处理器被计算机程序促使执行本申请实施例第一方面所提供的方法。
根据本申请的第四方面,提供一种机器可读存储介质,机器可读存储介质存储有计算机程序,在被处理器调用和执行时,计算机程序促使处理器执行本申请实施例第一方面所提供的方法。
本申请实施例的有益效果:
通过采用本申请提供的方法分别确定当前帧画面的第一线条集与上一帧画面的第二线条集,然后基于两个线条集确定两帧画面之间的运动矢量,再基于运动矢量和上一帧画面确定当前帧画面与上一帧画面之间的残差,然后对确定出的残差进行编码并发送给云桌面客户端,使得云桌面客户端对编码后的结果进行解码得到所述残差,并基于上一帧画面和残差获得当前帧画面并输出展示。由于每次发送给云桌面客户端的是两帧画面之间的残差,与发送完整的一帧画面相比,大大减少了发送数据量,从而减少了带宽的占用及发送时延,而且云桌面客户端只需要基于上一帧画面和解码出的残差合成当前帧画面,从而减少了解码时间,缩短了当前帧画面的展示时延,使得用户流量网页时流畅度更高。
附图说明
图1是本申请实施例提供的一种网页处理方法的流程示意图;
图2是本申请实施例提供的一种网页处理装置的结构示意图;
图3是本申请实施例提供的一种实施网页处理方法的电子设备的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
下面对本申请提供的首片报文处理方法进行详细地说明。
参见图1,图1是本申请提供的一种网页处理方法的流程图,该方法可以应用于服务器中,服务器实施上述方法可包括如下所示步骤:
S101、获取网页的当前帧画面和所述网页的上一帧画面。
本步骤中,利用了网页浏览场景下,用户进行的多是滚动操作,因此浏览时产生的前后画面会有大量的相同处,因此为了提高用户浏览网页时画面的流畅度,本实施例提出获取网页的当前帧画面和上一帧画面,通过比较两帧画面计算获得两帧之间的残差,然后对残差进行编码发送给云桌面客户端,这样发送编码后的残差与发送整个当前帧画面,大大减少了带宽及发送时延;此外,由于残差远小于当前帧画面,编码解码速率都会明显提升,而且云桌面客户端已有上一帧画面,因此在基于上一帧画面和解码的残差合成当前帧画面时,合成速率会明显提升从而展示给用户时不会出现画面不流畅的情况。
计算当前帧画面与上一帧画面之间的残差的实施过程请参考步骤S102~S105,以下详细介绍之:
S102、分别从所述当前帧画面和所述上一帧画面获取若干条垂直方向的垂直直线,并分别构成第一线条集和第二线条集,所述线条集中的每条垂直直线由该垂直直线的每个点在帧画面中对应位置的像素值构成。
本步骤中,利用运动矢量搜索技术,寻找到垂直方向上的运动矢量。具体地,将当前帧画面记为cur_frame,上一帧画面记为pre_frame,则可以从cur_frame上取N条垂直直线构成第一线条集,记为cur_set。相应地,从pre_frame上取N条垂直直线构成第二线条集,记为pre_set。需要说明的是,在从上述两个帧画面提取垂直直线时,可以依次等距离地提取,即,在提取第一条垂直直线时,第一线条集中第一条垂直直线在当前帧画面中的提取位置与第二线条集中第一条垂直直线在上一帧画面中的提取位置相同,两个线条集中其他垂直直线的提取方式与第一条垂直直线的提取方式类似,此处不再重复描述。
这样,得到的cur_set中的每条垂直直线是由该条垂直直线的每个点在当前帧画面中的像素值构成,也即该条垂直直线的水平方向的像素值相同,垂直方向的像素值发生变化;相应地,pre_set中的每条垂直直线是由该垂直直线上的每个点在上一帧画面中的像素值构成,也即,该垂直直线的水平方向的像素值相同,垂直方向的像素值发生变化。
需要说明的是,上述N的取值可以根据实际情况而定。
S103、基于所述第一线条集和所述第二线条集,确定所述当前帧画面与所述上一帧画面之间的运动矢量。
本步骤中,可以利用运动矢量搜索算法对cur_set和pre_set中的垂直线条进行计算,获得当前帧画面cur_frame与上一帧画面pre_frame之间的运动矢量,记为MV。
需要说明的是,运动矢量MV指的是当前编码块与其参考图像中的最佳匹配块之间的相对位移。
具体地,可以通过比较第一线条集cur_set和第二线条集pre_set中相同位置的垂直线条上的像素值之间的差异来确定当前帧画面和上一帧画面之间的运动矢量。
S104、基于所述运动矢量移动所述上一帧画面中的每个宏块,并对移动后的宏块和所述当前帧画面中对应位置的目标块进行运算处理,得到所述当前帧画面与所述上一帧画面之间的残差。
具体地,在基于步骤S103确定出运动矢量MV后,可以利用确定出的运动矢量MV对上一帧画面进行运动补偿,运动补偿后计算当前帧画面与上一帧画面之间的残差。具体地,可以按设定的宏块对上一帧画面进行划分,划分出多个宏块,每个宏块的大小可以根据实际情况进行设定,例如每个宏块可以设置为16*16等等。然后对上一帧画面中的每个宏块按照运动矢量MV分别进行移动,可以得到各个移动后的宏块,针对每个移动后的宏块和该宏块在当前帧画面中对应位置的目标块进行运算处理,从而可以得到运算处理结果,基于各个宏块的运算处理结果得到当前帧画面与上一帧画面之间的残差。
需要说明的是,上述目标块的确定方法后,可以先确定移动后的宏块在上一帧画面中的目标位置,然后在当前帧画面中确定该目标位置处对应的与宏块大小一致的目标块。
S105、对所述残差进行编码并将编码后的结果发送给云桌面客户端,以使所述云桌面客户端对所述编码后的结果进行解码得到所述残差,并基于所述上一帧画面和所述残差获得所述当前帧画面并输出展示。
本步骤中,在确定出当前帧画面与上一帧画面之间的残差后,就可以对残差进行编码,然后将编码后的结果发送给云桌面客户端。云桌面客户端接收到编码后的结果可以解码恢复出残差,然后基于云桌面客户端上已展示的上一帧画面和恢复出的残差合成当前帧画面,并输出展示给用户,这样一来,由于每次发送给云桌面客户端的是两帧画面之间的残差,与发送完整的一帧画面相比,大大减少了发送数据量,从而减少了带宽的占用及发送时延,而且云桌面客户端只需要基于上一帧画面和解码出的残差合成当前帧画面,从而减少了解码时间,缩短了当前帧画面的展示时延,使得用户流量网页时流畅度更高。
需要说明的是,云桌面客户端,为运行在瘦客户机操作系统上的应用程序,用远程控制协议连接到虚拟机,控制虚拟机及相关操作。上述虚拟机为基于物理服务器,通过虚拟化软件把服务器隔离为一个或多个逻辑虚拟机,每个虚拟机具有常规计算机的配置及性能,并独立运行一个操作系统,供用户使用。
而且云桌面客户端采用了云桌面传输协议,该协议用于将远程服务器上虚拟机的输出画面投影(传输)到终端上的网络传输协议。
可选地,在进行残差编码时,可以采用LZ压缩算法对残差进行编码从而得到编码后的结果,由此降低了编码和解码的复杂度,从而加快了运算效率。
可选地,可以按照下述过程实施步骤S103,即确定当前帧画面与上一帧画面之间的运动矢量MV:基于上述第一线条集中每条垂直直线和上述第二线条集中与该垂直直线具有相同位置的垂直直线,确定两条垂直直线中的最大相同子串,上述最大相同子串由两条垂直直线中相同位置的相同像素值构成;分别确定上述最大相同子串在上述当前帧画面和上述上一帧画面中的第一起始位置和第二起始位置;若上述最大相同子串的长度超过第一设定阈值,则确定上述第一起始位置与上述第二起始位置之间的差值;对确定出的各个差值进行出现次数统计;将出现次数最多的差值确定为上述当前帧画面与所述上一帧画面之间的运动矢量。
具体地,可以将第一线条集cur_set和第二线条集pre_set中位于相同位置的两个垂直线条构成一组垂直线条,例如第一线条集cur_set={k1,k2,k3,……,kN},而第二线条集pre_set={m1,m2,m3,……,mN},则k1与m1具有相同位置,将k1与m1组成一组垂直线条,同理,k2与m2构成一组垂直线条,依次类推,kN与mN组成一组垂直线条。然后针对第i组的垂直线条{ki,mi},将该组的两条垂直线条上的各个点的像素值分别构成第一字符串cur_stri和第二字符串pre_stri,然后利用后缀树算法计算第一字符串cur_stri和第二字符串pre_stri之间的最大相同子串com_stri,然后确定最大相同子串com_stri分别在当前帧画面cur_frame和上一帧画面pre_frame中的第一起始位置position_curi和第二起始位置position_prei。然后判断最大相同子串com_stri是否超过第一设定阈值T,如果超过第一设定阈值T,则表明垂直直线ki与垂直直线mi相同的像素值比较多,此时可以计算第一起始位置position_curi和第二起始位置position_prei之间的差值diffi并记录;如果未超过第一设定阈值T,则继续从第一线条集cur_set和第二线条集pre_set中提取第i+1组垂直线条{ki+1,mi+1},然后重复执行上述过程,直至遍历完所有组的垂直线条。这样会计算出多个差值,然后对所有差值diff进行筛选,由于有些差值的数值可以相同,因此可以统计不同的差值分别出现的出现次数,然后将统计出的出现次数进行排序处理,将出现次数最多(记为NS)的差值确定为当前帧画面与上一帧画面之间的运动矢量MV。
可选地,在上述过程中对确定出的各个差值进行出现次数统计之后,还包括:确定最多的出现次数与所述第一线条集包括的垂直直线的总数之间的第一比值;在此基础上,上述将出现次数最多的差值确定为上述当前帧画面与所述上一帧画面之间的运动矢量,包括:若第一比值超过第二设定阈值,则将将出现次数最多的差值确定为所述当前帧画面与所述上一帧画面之间的运动矢量。
具体地,在筛选出最多的出现次数NS后,可以对进行浮点数运算计算最多的出现次数NS与N(线条集中垂直线条的总数)之间的第一比值,若第一比值超过第二设定阈值SA,则表明当前帧画面与上一帧画面相同的内容比较多,即差别不大,则可以将出现次数最多的差值diff确定为当前帧画面与上一帧画面之间的运动矢量MV。若第一比值未超过第二设定阈值SA,则表明当前帧画面与上一帧画面差别比较大,则即使做残差可能也不会使得本次网页浏览的流畅度高太多,则此时可以按照现有的流程对当前帧画面进行处理,此处不再详细描述,但是从总体上网页浏览的流畅性是有所提高的。
可选地,基于上述任一实施例,可以按照下述过程实施步骤S104,即计算当前帧画面与上一帧画面之间的残差:对移动后的宏块和所述当前帧画面中对应位置的目标块进行异或运算处理,得到上述当前帧画面与上述上一帧画面之间的残差。
具体地,通过对移动后的宏块和目标块进行异或运算,得到的运算结果即为当前帧画面与上一帧画面之间的残差。然后将各个宏块计算得到的残差进行编码处理发送给云桌面客户端。
可选地,在进行异或运算处理后,运算结果可以衡量出移动后的宏块与目标块之间相同的像素点的数量,相同的像素点越多表明当前帧画面与上一帧画面相同的内容比较多,而相同的像素点越小则表明当前帧画面与上一帧画面相同的内容比较少,若相同的内容比较少则继续进行残差运算也可能不会使得本次网页流量的流畅度高太多,则为了避免这一情况的发生,本实施例提出可以按照下述过程计算得到当前帧画面与上一帧画面之间的残差:统计异或运算得到的运算结果中零的个数;确定上述零的个数与上述宏块中像素的个数之间的第二比值;若上述第二比值超过第三设定阈值,则记录上述宏块的宏块索引;统计记录的宏块索引的数量;若上述宏块索引的数量与宏块的总数之间的第三比值超过第四设定阈值,则将异或运算得到的运算结果确定为上述当前帧画面与上述上一帧画面之间的残差。
具体地,可以针对每个移动后的宏块,对该宏块与目标块进行异或运算后可以统计运算结果中零的个数,记为NZ,同时确定该宏块中像素点的个数MN,然后确定NZ与MN之间的第二比值,若第二比值超过第三设定阈值ZA,则表明宏块与目标块中相同的像素点比较多,则记录该宏块的宏块索引;然后对下一个宏块执行上述流程,直至完成所有宏块的计算,然后实时统计记录的宏块索引的数量,若宏块索引的数量与所有宏块的总数之间的第三比值超过第四设定阈值TA,则进一步表明当前帧画面与上一帧画面相同的内容比较多,则此时将基于各个宏块进行异或运算的运算结果确定为当前帧画面与上一帧画面之间的残差。
而当上述第三比值未超过第四设定阈值TA时,则表明当前帧画面与上一帧画面相同的内容很少,则可以按照现有的流程对当前帧画面进行处理,此处不再详细描述,但是从总体上网页浏览的流畅性是有所提高的。
通过实施本申请提供的网页浏览方法,通过计算当前帧画面与上一帧画面之间的残差,然后将编码后的残差发送给云桌面客户端,明显提升了VDI中网页浏览的流畅度和用户的体验,同时降低了服务器的资源消耗以及降低了残差传输对网络带宽的消耗。
基于同一发明构思,本申请还提供了与上述网页处理方法对应的网页处理装置。该网页处理装置的实施具体可以参考上述对网页处理方法的描述,此处不再一一论述。
参见图2,图2是本申请一示例性实施例提供的一种网页处理装置,包括:
获取模块201,用于获取网页的当前帧画面和所述网页的上一帧画面;
线条集生成模块202,用于分别从所述当前帧画面和所述上一帧画面获取若干条垂直方向的垂直直线,并分别构成第一线条集和第二线条集,所述线条集中的每条垂直直线由该垂直直线的每个点在帧画面中对应位置的像素值构成;
运动矢量确定模块203,用于基于所述第一线条集和所述第二线条集,确定所述当前帧画面与所述上一帧画面之间的运动矢量;
残差计算模块204,用于基于所述运动矢量移动所述上一帧画面中的每个宏块,并对移动后的宏块和所述当前帧画面中对应位置的目标块进行运算处理,得到所述当前帧画面与所述上一帧画面之间的残差;
编码模块205,用于对所述残差进行编码;
发送模块206,用于将编码后的结果发送给云桌面客户端,以使所述云桌面客户端对所述编码后的结果进行解码得到所述残差,并基于所述上一帧画面和所述残差获得所述当前帧画面并输出展示。
可选地,上述运动矢量确定模块203,具体用于基于所述第一线条集中每条垂直直线和所述第二线条集中与该垂直直线具有相同位置的垂直直线,确定两条垂直直线中的最大相同子串,所述最大相同子串由两条垂直直线中相同位置的相同像素值构成;分别确定所述最大相同子串在所述当前帧画面和所述上一帧画面中的第一起始位置和第二起始位置;若所述最大相同子串的长度超过第一设定阈值,则确定所述第一起始位置与所述第二起始位置之间的差值;对确定出的各个差值进行出现次数统计;将出现次数最多的差值确定为所述当前帧画面与所述上一帧画面之间的运动矢量。
可选地,本实施例提供的网页处理装置,还包括:
比值确定模块(图中未示出),用于在上述运动矢量确定模块203对确定出的各个差值进行出现次数统计之后,确定最多的出现次数与所述第一线条集包括的垂直直线的总数之间的第一比值;
上述运动矢量确定模块203,具体用于若所述第一比值超过第二设定阈值,则将将出现次数最多的差值确定为所述当前帧画面与所述上一帧画面之间的运动矢量。
可选地,上述残差计算模块204,具体用于对移动后的宏块和所述当前帧画面中对应位置的目标块进行异或运算处理,得到所述当前帧画面与所述上一帧画面之间的残差。
可选地,上述残差计算模块204,具体用于统计异或运算得到的运算结果中零的个数;确定所述零的个数与所述宏块中像素的个数之间的第二比值;若所述第二比值超过第三设定阈值,则记录所述宏块的宏块索引;统计记录的宏块索引的数量;若所述宏块索引的数量与宏块的总数之间的第三比值超过第四设定阈值,则将异或运算得到的运算结果确定为所述当前帧画面与所述上一帧画面之间的残差。
基于同一发明构思,本申请实施例提供了一种电子设备,该电子设备可以为上述服务器,如图3所示,该电子设备包括处理器301和机器可读存储介质302,机器可读存储介质302存储有能够被处理器301执行的计算机程序,处理器301被计算机程序促使执行本申请实施例所提供的网页处理方法。
上述计算机可读存储介质可以包括RAM(Random Access Memory,随机存取存储器)、DDR SRAM(Double Data Rate Synchronous Dynamic Random Access Memory,双倍速率同步动态随机存储器),也可以包括NVM(Non-volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,计算机可读存储介质还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processor,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
另外,本申请实施例提供了一种机器可读存储介质,机器可读存储介质存储有计算机程序,在被处理器调用和执行时,计算机程序促使处理器执行本申请实施例所提供的网页处理方法。
对于电子设备以及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
上述装置中各个单元/模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元/模块可以是或者也可以不是物理上分开的,作为单元/模块显示的部件可以是或者也可以不是物理单元/模块,即可以位于一个地方,或者也可以分布到多个网络单元/模块上。可以根据实际的需要选择其中的部分或者全部单元/模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (10)

1.一种网页处理方法,其特征在于,包括:
获取网页的当前帧画面和所述网页的上一帧画面;
分别从所述当前帧画面和所述上一帧画面获取若干条垂直方向的垂直直线,并分别构成第一线条集和第二线条集,所述线条集中的每条垂直直线由该垂直直线的每个点在帧画面中对应位置的像素值构成;
基于所述第一线条集和所述第二线条集,确定所述当前帧画面与所述上一帧画面之间的运动矢量;
基于所述运动矢量移动所述上一帧画面中的每个宏块,并对移动后的宏块和所述当前帧画面中对应位置的目标块进行运算处理,得到所述当前帧画面与所述上一帧画面之间的残差;
对所述残差进行编码并将编码后的结果发送给云桌面客户端,以使所述云桌面客户端对所述编码后的结果进行解码得到所述残差,并基于所述上一帧画面和所述残差获得所述当前帧画面并输出展示。
2.根据权利要求1所述的方法,其特征在于,基于所述第一线条集和所述第二线条集,确定所述当前帧画面与所述上一帧画面之间的运动矢量,包括:
基于所述第一线条集中每条垂直直线和所述第二线条集中与该垂直直线具有相同位置的垂直直线,确定两条垂直直线中的最大相同子串,所述最大相同子串由两条垂直直线中相同位置的相同像素值构成;
分别确定所述最大相同子串在所述当前帧画面和所述上一帧画面中的第一起始位置和第二起始位置;
若所述最大相同子串的长度超过第一设定阈值,则确定所述第一起始位置与所述第二起始位置之间的差值;
对确定出的各个差值进行出现次数统计;
将出现次数最多的差值确定为所述当前帧画面与所述上一帧画面之间的运动矢量。
3.根据权利要求2所述的方法,其特征在于,在对确定出的各个差值进行出现次数统计之后,还包括:
确定最多的出现次数与所述第一线条集包括的垂直直线的总数之间的第一比值;
将出现次数最多的差值确定为所述当前帧画面与所述上一帧画面之间的运动矢量,包括:
若所述第一比值超过第二设定阈值,则将将出现次数最多的差值确定为所述当前帧画面与所述上一帧画面之间的运动矢量。
4.根据权利要求1所述的方法,其特征在于,对移动后的宏块和所述当前帧画面中对应位置的目标块进行运算处理,得到所述当前帧画面与所述上一帧画面之间的残差,包括:
对移动后的宏块和所述当前帧画面中对应位置的目标块进行异或运算处理,得到所述当前帧画面与所述上一帧画面之间的残差。
5.根据权利要求4所述的方法,其特征在于,对移动后的宏块和所述当前帧画面中对应位置的目标块进行异或运算处理,得到所述当前帧画面与所述上一帧画面之间的残差,包括:
统计异或运算得到的运算结果中零的个数;
确定所述零的个数与所述宏块中像素的个数之间的第二比值;
若所述第二比值超过第三设定阈值,则记录所述宏块的宏块索引;
统计记录的宏块索引的数量;
若所述宏块索引的数量与宏块的总数之间的第三比值超过第四设定阈值,则将异或运算得到的运算结果确定为所述当前帧画面与所述上一帧画面之间的残差。
6.一种网页处理装置,其特征在于,包括:
获取模块,用于获取网页的当前帧画面和所述网页的上一帧画面;
线条集生成模块,用于分别从所述当前帧画面和所述上一帧画面获取若干条垂直方向的垂直直线,并分别构成第一线条集和第二线条集,所述线条集中的每条垂直直线由该垂直直线的每个点在帧画面中对应位置的像素值构成;
运动矢量确定模块,用于基于所述第一线条集和所述第二线条集,确定所述当前帧画面与所述上一帧画面之间的运动矢量;
残差计算模块,用于基于所述运动矢量移动所述上一帧画面中的每个宏块,并对移动后的宏块和所述当前帧画面中对应位置的目标块进行运算处理,得到所述当前帧画面与所述上一帧画面之间的残差;
编码模块,用于对所述残差进行编码;
发送模块,用于将编码后的结果发送给云桌面客户端,以使所述云桌面客户端对所述编码后的结果进行解码得到所述残差,并基于所述上一帧画面和所述残差获得所述当前帧画面并输出展示。
7.根据权利要求6所述的装置,其特征在于,
所述运动矢量确定模块,具体用于基于所述第一线条集中每条垂直直线和所述第二线条集中与该垂直直线具有相同位置的垂直直线,确定两条垂直直线中的最大相同子串,所述最大相同子串由两条垂直直线中相同位置的相同像素值构成;分别确定所述最大相同子串在所述当前帧画面和所述上一帧画面中的第一起始位置和第二起始位置;若所述最大相同子串的长度超过第一设定阈值,则确定所述第一起始位置与所述第二起始位置之间的差值;对确定出的各个差值进行出现次数统计;将出现次数最多的差值确定为所述当前帧画面与所述上一帧画面之间的运动矢量。
8.根据权利要求7所述的装置,其特征在于,还包括:
比值确定模块,用于在所述运动矢量确定模块对确定出的各个差值进行出现次数统计之后,确定最多的出现次数与所述第一线条集包括的垂直直线的总数之间的第一比值;
所述运动矢量确定模块,具体用于若所述第一比值超过第二设定阈值,则将将出现次数最多的差值确定为所述当前帧画面与所述上一帧画面之间的运动矢量。
9.根据权利要求6所述的装置,其特征在于,
所述残差计算模块,具体用于对移动后的宏块和所述当前帧画面中对应位置的目标块进行异或运算处理,得到所述当前帧画面与所述上一帧画面之间的残差。
10.根据权利要求9所述的装置,其特征在于,
所述残差计算模块,具体用于统计异或运算得到的运算结果中零的个数;确定所述零的个数与所述宏块中像素的个数之间的第二比值;若所述第二比值超过第三设定阈值,则记录所述宏块的宏块索引;统计记录的宏块索引的数量;若所述宏块索引的数量与宏块的总数之间的第三比值超过第四设定阈值,则将异或运算得到的运算结果确定为所述当前帧画面与所述上一帧画面之间的残差。
CN202011527579.9A 2020-12-22 2020-12-22 网页处理方法及装置 Active CN112632426B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011527579.9A CN112632426B (zh) 2020-12-22 2020-12-22 网页处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011527579.9A CN112632426B (zh) 2020-12-22 2020-12-22 网页处理方法及装置

Publications (2)

Publication Number Publication Date
CN112632426A true CN112632426A (zh) 2021-04-09
CN112632426B CN112632426B (zh) 2022-08-30

Family

ID=75321419

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011527579.9A Active CN112632426B (zh) 2020-12-22 2020-12-22 网页处理方法及装置

Country Status (1)

Country Link
CN (1) CN112632426B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114827113A (zh) * 2022-04-18 2022-07-29 阿里巴巴(中国)有限公司 一种网页访问方法及装置
CN117061789A (zh) * 2023-10-09 2023-11-14 苏州元脑智能科技有限公司 一种视频传输框架、方法、设备和存储介质

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5825421A (en) * 1995-12-27 1998-10-20 Matsushita Electronic Industrial Co., Ltd. Video coding method and decoding method and devices thereof
US20030053543A1 (en) * 2001-07-24 2003-03-20 Sasken Communication Technologies Limited Motion estimation technique for digital video encoding applications
KR20050062835A (ko) * 2003-12-18 2005-06-28 학교법인 대양학원 움직임 벡터 추정방법 및 부호화 모드 결정방법
EP1622387A2 (en) * 2004-07-27 2006-02-01 Fujitsu Limited Motion estimation and compensation device with motion vector correction based on vertical component values
CN101573982A (zh) * 2006-11-03 2009-11-04 三星电子株式会社 利用运动矢量跟踪编码/解码图像的方法和装置
CN102163334A (zh) * 2011-03-04 2011-08-24 北京航空航天大学 一种基于Fisher线性判别的动背景下视频对象的提取方法
CN102496281A (zh) * 2011-12-16 2012-06-13 湖南工业大学 一种基于跟踪与虚拟线圈结合的车辆闯红灯检测方法
CN105809687A (zh) * 2016-03-08 2016-07-27 清华大学 一种基于图像中边沿点信息的单目视觉测程方法
CN107124610A (zh) * 2017-04-06 2017-09-01 浙江大华技术股份有限公司 一种视频编码方法及装置
KR20180026360A (ko) * 2016-09-02 2018-03-12 광운대학교 산학협력단 비트율 제어 방법 및 이의 장치
CN111951275A (zh) * 2020-07-27 2020-11-17 新华三大数据技术有限公司 一种图像传输方法及装置

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5825421A (en) * 1995-12-27 1998-10-20 Matsushita Electronic Industrial Co., Ltd. Video coding method and decoding method and devices thereof
US20030053543A1 (en) * 2001-07-24 2003-03-20 Sasken Communication Technologies Limited Motion estimation technique for digital video encoding applications
KR20050062835A (ko) * 2003-12-18 2005-06-28 학교법인 대양학원 움직임 벡터 추정방법 및 부호화 모드 결정방법
EP1622387A2 (en) * 2004-07-27 2006-02-01 Fujitsu Limited Motion estimation and compensation device with motion vector correction based on vertical component values
CN101573982A (zh) * 2006-11-03 2009-11-04 三星电子株式会社 利用运动矢量跟踪编码/解码图像的方法和装置
CN102163334A (zh) * 2011-03-04 2011-08-24 北京航空航天大学 一种基于Fisher线性判别的动背景下视频对象的提取方法
CN102496281A (zh) * 2011-12-16 2012-06-13 湖南工业大学 一种基于跟踪与虚拟线圈结合的车辆闯红灯检测方法
CN105809687A (zh) * 2016-03-08 2016-07-27 清华大学 一种基于图像中边沿点信息的单目视觉测程方法
KR20180026360A (ko) * 2016-09-02 2018-03-12 광운대학교 산학협력단 비트율 제어 방법 및 이의 장치
CN107124610A (zh) * 2017-04-06 2017-09-01 浙江大华技术股份有限公司 一种视频编码方法及装置
CN111951275A (zh) * 2020-07-27 2020-11-17 新华三大数据技术有限公司 一种图像传输方法及装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
FERNANDA BRANDI 等: "Super resolution of video using key frames", 《2008 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS》 *
侯文慧 等: "面向云桌面协议的视频区域侦测算法", 《计算机应用》 *
张洪彬 等: "3D-HEVC深度图像快速帧内编码方法", 《中国图象图形学报》 *
杨跃东 等: "运动串:一种用于行为分割的运动捕获数据表示方法", 《计算机研究与发展》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114827113A (zh) * 2022-04-18 2022-07-29 阿里巴巴(中国)有限公司 一种网页访问方法及装置
CN114827113B (zh) * 2022-04-18 2024-04-16 阿里巴巴(中国)有限公司 一种网页访问方法及装置
CN117061789A (zh) * 2023-10-09 2023-11-14 苏州元脑智能科技有限公司 一种视频传输框架、方法、设备和存储介质
CN117061789B (zh) * 2023-10-09 2024-02-09 苏州元脑智能科技有限公司 一种视频传输框架、方法、设备和存储介质

Also Published As

Publication number Publication date
CN112632426B (zh) 2022-08-30

Similar Documents

Publication Publication Date Title
US11665350B2 (en) Method and apparatus for video encoding and decoding
US11412229B2 (en) Method and apparatus for video encoding and decoding
US11206405B2 (en) Video encoding method and apparatus, video decoding method and apparatus, computer device, and storage medium
US9262986B2 (en) Reference frame management for screen content video coding using hash or checksum functions
WO2021114846A1 (zh) 一种视频降噪处理方法、装置及存储介质
US11172220B2 (en) Video encoding method, and storage medium thereof
EP3586518A1 (en) Methods and apparatuses for image processing to optimize image resolution and for optimizing video streaming bandwidth for vr videos
CN112632426B (zh) 网页处理方法及装置
US11330254B2 (en) Video encoding method and apparatus, video decoding method and apparatus, computer device, and storage medium
EP3410302B1 (en) Graphic instruction data processing method, apparatus
CN107396112B (zh) 一种编码方法及装置、计算机装置、可读存储介质
CN109089121B (zh) 一种基于视频编码的运动估计方法、装置及电子设备
CN113965751B (zh) 屏幕内容编码方法、装置、设备及存储介质
JP2020520197A (ja) ビデオ符号化方法、コンピュータ機器、及び記憶媒体
CN111131828B (zh) 一种图像压缩方法、装置、电子设备和存储介质
WO2023174144A1 (zh) 云桌面图像的超分辨率重建方法、装置、设备及存储介质
US20240098310A1 (en) Encoding method, real-time communication method, apparatus, device, and storage medium
CN111524110A (zh) 视频质量的评价模型构建方法、评价方法及装置
WO2024104014A1 (zh) 视频的压缩方法、解压缩方法、装置、计算机设备和存储介质
CN113973224A (zh) 媒体信息的传输方法、计算设备及存储介质
US20240040147A1 (en) Data processing method and apparatus, computer device, and storage medium
CN104469400A (zh) 一种基于rfb协议的图像数据压缩方法
US20220148133A1 (en) Image display control device, transmitting device, image display control method, and program
JP6453652B2 (ja) 映像伝送システム
JP5110304B2 (ja) 画面データ送信装置、画面データ送信方法及び画面データ送信プログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant