CN112511860B - 一种文字区域清晰的画面传输方法 - Google Patents
一种文字区域清晰的画面传输方法 Download PDFInfo
- Publication number
- CN112511860B CN112511860B CN202011338605.3A CN202011338605A CN112511860B CN 112511860 B CN112511860 B CN 112511860B CN 202011338605 A CN202011338605 A CN 202011338605A CN 112511860 B CN112511860 B CN 112511860B
- Authority
- CN
- China
- Prior art keywords
- picture
- character
- data
- current
- area
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000005540 biological transmission Effects 0.000 title claims abstract description 14
- 230000006835 compression Effects 0.000 claims abstract description 56
- 238000007906 compression Methods 0.000 claims abstract description 56
- 238000004364 calculation method Methods 0.000 claims abstract description 8
- 230000009191 jumping Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing 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/234309—Processing 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 transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing 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/234345—Processing 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 the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440218—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440245—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
本发明公开了一种文字区域清晰的画面传输方法,包括服务端压缩编码屏幕图像数据和客户端解压解码屏幕图像数据的步骤,服务端压缩编码屏幕图像数据的步骤包括:抓取当前画面Pi,根据满足条件的单元块得到文字识别区域;将画面Pi转码为YUV格式的画面Pi1;根据文字识别算法对画面Pi1文字识别区域的Y分量进行文字识别得到文字区域;对画面Pi1进行h264编码后得到h264数据和重建的画面Pi2;将画面Pi1与画面Pi2中文字区域的YUV数据差分计算得到文字差分数据;根据压缩算法对文字差分数据压缩得到文字差分压缩数据包,将h264数据和文字差分压缩数据包合并压缩为画面压缩数据包后发送给客户端。本发明减小带宽消耗同时保证文字区域清晰,提高了用户体验。
Description
技术领域
本发明涉及云桌面画面传输领域,尤其涉及一种文字区域清晰的画面传输方法。
背景技术
计算机屏幕传输技术在云桌面、网络教学***和视频会议***中有着重要的作用,一般的做法是先对计算机屏幕图像进行抓取、视频压缩编码,然后通过网络传输到客户端显示,为了能在传输过程中降低网络带宽(特别是跨公网的传输),视频编码一般采用压缩率比较大的有损压缩算法,到客户端显示的时候,由于有损压缩的原因,使得整体的图像会变得模糊,尤其压缩率大的时候,画面会更加模糊,从而导致一些画面的敏感区域无法识别,特别是文字区域。
发明内容
本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种文字区域清晰的画面传输方法,既能够保证消耗带宽小,又能保证文字等敏感区域比较清晰,以提高用户体验。
为解决上述技术问题,本发明提出的技术方案为:
一种文字区域清晰的画面传输方法,包括服务端压缩编码屏幕图像数据的步骤,具体包括:
A1)根据预设时间抓取屏幕画面作为当前画面Pi,将位于上一画面Pi-1变化区域且位于当前画面Pi无变化区域的单元块的位置信息加入当前文字识别区域集合A,所述单元块为屏幕按照行列划分的区域;
A2)将当前画面Pi转码为YUV格式的画面Pi1;
A3)根据当前文字识别区域集合A中的元素获取画面Pi1中的待识别单元块,根据文字识别算法针对每个待识别单元块的Y分量进行文字识别,将识别成功的待识别单元块的位置信息加入当前文字区域集合B;
A4)对画面Pi1进行h264编码得到编码后的h264数据以及重建的画面Pi2;
A5)根据当前文字区域集合B中的元素分别获取画面Pi1以及画面Pi2中一一对应的文字单元块,将画面Pi1中文字单元块与对应的画面Pi2中文字单元块的YUV数据进行差分计算得到对应的文字差分数据,将文字单元块的位置信息和对应的文字差分数据加入当前文字区域细节集合C;
A6)根据压缩算法将当前文字区域细节集合C进行压缩得到文字差分压缩数据包,将编码后的h264数据和文字差分压缩数据包合并压缩为画面压缩数据包后发送给客户端。
进一步的,还包括客户端解压解码屏幕图像数据的步骤,具体包括:
B1)获取服务端发送的画面压缩数据包,解压画面压缩数据包;
B2)若解压后的内容包含文字差分压缩数据包,解压文字差分压缩数据包得到文字区域细节集合C,对解压得到的h264数据进行解码得到重建的画面Pi2,将文字区域细节集合C中的文字差分数据与画面Pi2合成得到文字清晰的画面Pi3,将画面Pi3作为最终画面;否则对解压得到的h264数据进行解码得到重建的画面Pi2,将画面Pi2作为最终画面;将文字区域细节集合C中的文字差分数据与画面Pi2合成得到文字清晰的画面Pi3具体包括:根据文字区域细节集合C中的位置信息获取画面Pi2中的文字单元块,将文字单元块匹配文字区域细节集合C得到对应的文字差分数据,将文字单元块的YUV数据和对应的文字差分数据相加得到文字单元块新的YUV数据。
进一步的,步骤A1)之前还包括划分单元块的步骤,具体包括:按照预设的单元长度w和单元宽度h将屏幕划分为nw行且nh列大小相同的单元块,定义所有单元块的标记集合flag[nw][nh],将标记集合flag[nw][nh]中的所有标记置0。
进一步的,步骤A1)具体包括:获取当前画面Pi相对上一画面Pi-1的变化区域对应的所有单元块作为第一单元块,获取当前画面Pi相对上一画面Pi-1的无变化区域对应的所有单元块作为第二单元块,将标记集合flag[nw][nh]中第一单元块对应的标记置1,将第二单元块分别匹配标记集合flag[nw][nh],若第二单元块对应的标记为1,将第二单元块的位置信息加入当前文字识别区域集合A,同时将标记集合flag[nw][nh]中第二单元块对应的标记置0。
进一步的,步骤A1)中根据预设时间抓取屏幕画面作为当前画面Pi具体包括:判断预设时间内屏幕画面是否发生变化,是则抓取当前屏幕画面作为当前画面Pi,否则将上一画面Pi-1作为当前画面Pi。
进一步的,步骤A1)还包括当前文字识别区域集合A为空时的处理步骤:若当前文字识别区域集合A为空,将当前画面Pi转码为YUV格式的画面Pi1后进行h264编码得到编码后的h264数据,将编码后的h264数据压缩为画面压缩数据包后发送给客户端。
进一步的,步骤A5)之前还包括网络判断的步骤,具体包括:
C1)判断网络状况是否满足预设条件,是则跳转步骤A5),否则进入步骤C2);
C2)根据文字区域集合B中的元素分别得到画面Pi1以及画面Pi2中一一对应的文字单元块,将画面Pi1中文字单元块与对应的画面Pi2中文字单元块的Y分量数据进行差分计算得到对应的文字差分数据,将文字单元块的位置信息和对应的文字差分数据加入文字区域细节集合C,跳转步骤A6)。
进一步的,步骤A6)之前还包括网络判断的步骤,具体包括:
D1)判断网络状况是否满足预设条件,是则跳转步骤A6),否则进入步骤D2);
D2)将编码后的h264数据压缩为画面压缩数据包后发送给客户端,返回步骤A1)。
进一步的,步骤A3)中的文字识别算法为最大稳定极值区域算法。
进一步的,步骤A6)中的压缩算法为行程长度压缩算法或zlib压缩算法。
与现有技术相比,本发明的优点在于:
1、本发明将屏幕划分为单元块,文字识别时只需要识别一些单元块所在的区域,不需要识别整个画面,可以降低CPU的消耗;
2、本发明的方法在识别过程中对画面变化的区域不进行文字识别,对于不变化的区域仅进行一次识别,减小了文字识别的频率,从而降低了因文字识别带来的CPU消耗;
3、本发明的方法在保留了h264的高压缩比的特性的前提下提取文字区域因h264有损压缩而丢失的细节并对这些细节数据进行压缩后传输,从而减小了带宽消耗;
4、本发明的方法根据Y分量进行文字识别,不用对图像进行灰度处理,提高了处理效率,减小了CPU消耗。
附图说明
图1为本发明各实施例中对屏幕图像数据编码压缩的步骤示意图。
图2为本发明各实施例中对屏幕图像数据编码压缩的流程图。
图3为本发明各实施例中解码解压屏幕图像数据的步骤示意图。
图4为本发明各实施例中解码解压屏幕图像数据的流程图。
具体实施方式
以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
本发明在进行后续的方法之前先将屏幕划按照行列划分单元块,假定屏幕长为width,宽为height,按照预设的单元长度w和单元宽度h将屏幕划分单元块,单元块的尺寸为w*h的小块,即每个单元块大小相同且为屏幕上尺寸为w*h的区域,单元长度w和单元宽度h值越小,后续步骤中的文字识别越精细,但是CPU消耗也会相应的增加,单元长度w和单元宽度h的具体值可以根据实际进行调整,由此得到:
单元块行数:nw=(width+w-1)/w
单元块列数:nh=(height+h-1)/h
所以屏幕总共可以分成nw行且nh列大小相同的单元块。
然后定义所有单元块的标记集合flag[nw][nh],标记集合flag[nw][nh]中的标记与单元块一一对应,将标记集合flag[nw][nh]中的所有标记置0,即flag[nw][nh]={0}。
实施例一
如图1和图2所示,本实施例的文字区域清晰的画面传输方法包括服务端压缩编码屏幕图像数据的步骤,具体包括:
A1)根据预设时间抓取屏幕画面作为当前画面Pi,将位于上一画面Pi-1变化区域且位于当前画面Pi无变化区域的单元块的位置信息加入当前文字识别区域集合A,A={c0...cn},所述单元块为屏幕按照行列划分的区域,抓取屏幕画面程序可以调用NVIDIANVFBC、AMD RapidFire、Windows DXGI、QXL,Mirror Driver等接口,这些API接口可以实现获取整个屏幕画面和屏幕变化区域;
A2)将当前画面Pi转码为YUV格式的画面Pi1;
A3)根据当前文字识别区域集合A中的元素获取画面Pi1中的待识别单元块,根据文字识别算法针对每个待识别单元块的Y分量进行文字识别,将识别成功的待识别单元块的位置信息加入当前文字区域集合B,B={k0...km};
A4)对画面Pi1进行h264的有损编码,通过现有的x264编码接口,在编码时,可以得到2份数据,一份是编码的h264数据,一份是重建的画面Pi2,以x264的开源编码接口为例:
X264_API int x264_encoder_encode(x264_t*,x264_nal_t**pp_nal,int*pi_nal,x264_picture_t*pic_in,x264_picture_t*pic_out);
x264_picture_t*pic_in:这里传入原始的YUV画面Pi1;
x264_nal_t**pp_nal:这里得到编码后的h264画面;
x264_picture_t*pic_out:这里得到重建图像的画面Pi2;
画面Pi2的YUV数据就是画面Pi1的YUV数据经过h264有损编码后再解码得到的YUV数据,因此画面Pi2的YUV数据相比画面Pi1原始的YUV数据会丢失很多细节从而导致画面模糊;
A5)根据当前文字区域集合B中的元素分别获取画面Pi1以及画面Pi2中一一对应的文字单元块,将画面Pi1中文字单元块与对应的画面Pi2中文字单元块的YUV数据进行差分计算得到对应的文字差分数据,将文字单元块的位置信息和对应的文字差分数据加入当前文字区域细节集合C,C={g0...gm};
A6)根据压缩算法将当前文字区域细节集合C进行压缩得到文字差分压缩数据包,将编码后的h264数据和文字差分压缩数据包合并压缩为画面压缩数据包后发送给客户端。
本实施例中,只有单元块所在的位置满足位于上一画面变化区域且位于当前画面无变化区域才进行文字识别,变化区域为后一画面相对于前一画面发生变化的区域,无变化区域为后一画面相对于前一画面未发生变化的区域。若没有单元块满足前述的条件,说明画面一直变化,则当前文字识别区域集合A为空,本实施例的步骤A1)还包括当前文字识别区域集合A为空时的处理步骤:若当前文字识别区域集合A为空,将当前画面Pi转码为YUV格式的画面Pi1后进行h264的有损编码得到编码后的h264数据,将编码后的h264数据压缩为画面压缩数据包后发送给客户端。即在没有满足前述条件的单元块的情况下,直接将当前画面Pi转码并进行h264的有损编码后将h264数据压缩发送给客户端,跳过了对于一直变化的画面的文字识别,降低了因文字识别带来的CPU消耗。
本实施例的步骤A1)中,预设时间为文字从模糊变清晰的时间,预设时间的值越小文字从模糊变清晰的速度越快,CPU消耗会更高,可以按照实际需要进行调整。若超过预设时间屏幕的画面未发生变化,说明所有单元块所在位置的区域均未发生变化,步骤A1)中根据预设时间抓取屏幕画面作为当前画面Pi具体包括:判断预设时间内屏幕画面是否发生变化,是则抓取当前屏幕画面作为当前画面Pi,否则将上一画面Pi-1作为当前画面Pi。对于屏幕未发生变化的情况,本实施例中用上一次抓取的屏幕画面进行后续的步骤处理,减少资源消耗。
本实施例的步骤A1)的具体步骤包括:获取当前画面Pi相对上一画面Pi-1的变化区域对应的所有单元块作为第一单元块,获取当前画面Pi相对上一画面Pi-1的无变化区域对应的所有单元块作为第二单元块,将标记集合flag[nw][nh]中第一单元块对应的标记置1,将第二单元块分别匹配标记集合flag[nw][nh],若第二单元块对应的标记为1,将第二单元块的位置信息加入当前文字识别区域集合A,同时将标记集合flag[nw][nh]中第二单元块对应的标记置0。单元块所在位置位于被抓取屏幕画面的变化区域则将对应的标记置1,单元块所在位置位于被抓取屏幕画面的无变化区域且对应的标记为1则将单元块的位置信息加入当前文字识别区域集合A,单元块的位置信息加入当前文字识别区域集合A后就将对应的标记置0,通过上述步骤,对于单元块所在位置的区域,只有从变化区域变成不变区域才进行一次文字识别,进一步降低了因文字识别带来的CPU消耗。
本实施例的步骤A3)中的文字识别算法为最大稳定极值区域算法MESR,YUV格式里面包含Y、U、V 3个分量,其中Y分量表示明亮度,如果画面中只有Y分量就会变成黑白灰的画面而没有色彩,其中UV分量表示色彩,通过最大稳定极值区域算法只需针对Y分量就能够实现文字识别,若识别到有文字则识别成功,否则识别失败。
本实施例的步骤A6)中的压缩算法为常规的压缩算法,例如行程长度压缩算法RLE或zlib压缩算法。
如图3和图4所示,本实施例的文字区域清晰的画面传输方法还包括客户端解压解码屏幕图像数据的步骤,具体包括:
B1)获取服务端发送的画面压缩数据包,解压画面压缩数据包;
B2)若解压后的内容包含文字差分压缩数据包,解压文字差分压缩数据包得到文字区域细节集合C,对解压得到的h264数据进行解码得到重建的画面Pi2,将文字区域细节集合C中的文字差分数据与画面Pi2合成得到文字清晰的画面Pi3,将画面Pi3作为最终画面;否则对解压得到的h264数据进行解码得到重建的画面Pi2,将画面Pi2作为最终画面。
将文字区域细节集合C中的文字差分数据与画面Pi2合成得到文字清晰的画面Pi3具体包括:根据文字区域细节集合C中的位置信息获取画面Pi2中的文字单元块,将文字单元块匹配文字区域细节集合C得到对应的文字差分数据,将文字单元块的YUV数据和对应的文字差分数据相加得到文字单元块新的YUV数据。
由此可见,通过本实施例的方法,将屏幕划分为单元块,服务端针对单元块进行文字识别,降低了CPU消耗,同时仅针对从变化区域变为无变化区域的单元块进行一次文字识别,还跳过变化区域不进行文字识别,使得CPU消耗进一步降低,最后对被抓取的屏幕图像的原始YUV数据和h264编码后重建的图像YUV数据进行差分计算提取文字区域的文字差分数据,并将文字差分数据和编码后的h264数据打包压缩发送到客户端,客户端仅需将文字差分数据和重建的图像进行合成就能够得到文字清晰的图像,在节省网络带宽的前提下保证了文字的显示效果。
实施例二
本实施例与实施例一基本相同,区别在于,步骤A5)之前还包括网络判断的步骤,具体包括:
C1)判断网络状况是否满足预设条件,是则跳转步骤A5),否则进入步骤C2);
C2)根据文字区域集合B中的元素分别得到画面Pi1以及画面Pi2中一一对应的文字单元块,将画面Pi1中文字单元块与对应的画面Pi2中文字单元块的Y分量数据进行差分计算得到对应的文字差分数据,将文字单元块的位置信息和对应的文字差分数据加入文字区域细节集合C,跳转步骤A6)。
对应的,客户端解压解码屏幕图像数据的步骤中,步骤B3)具体包括:根据文字区域细节集合C中的位置信息获取画面Pi2中的文字单元块,将文字单元块匹配文字区域细节集合C得到对应的文字差分数据,将文字单元块的YUV数据或Y分量数据和对应的文字差分数据相加得到文字单元块新的YUV数据。
通过上述步骤,在网络状况比较差的情况下,服务端和客户端之间的数据传输节省网络带宽,客户端的画面依然可以显示清晰的文字。
实施例三
本实施例与实施例二基本相同,区别在于步骤A6)之前还包括网络判断的步骤,具体包括:
D1)判断网络状况是否满足预设条件,是则跳转步骤A6),否则进入步骤D2);
D2)将编码后的h264数据压缩为画面压缩数据包后发送给客户端,返回步骤A1)。
通过上述步骤,本实施例在实施例二的基础上,针对更差的网络状况仅发送编码后的h264数据,保证客户端画面流畅,当网络状况缓解时恢复文字差分压缩数据包的传输。
上述只是本发明的较佳实施例,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。因此,凡是未脱离本发明技术方案的内容,依据本发明技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均应落在本发明技术方案保护的范围内。
Claims (10)
1.一种文字区域清晰的画面传输方法,其特征在于,包括服务端压缩编码屏幕图像数据的步骤,具体包括:
A1)根据预设时间抓取屏幕画面作为当前画面Pi,将位于上一画面Pi-1变化区域且位于当前画面Pi无变化区域的单元块的位置信息加入当前文字识别区域集合A,所述单元块为屏幕按照行列划分的区域;
A2)将当前画面Pi转码为YUV格式的画面Pi1;
A3)根据当前文字识别区域集合A中的元素获取画面Pi1中的待识别单元块,根据文字识别算法针对每个待识别单元块的Y分量进行文字识别,将识别成功的待识别单元块的位置信息加入当前文字区域集合B;
A4)对画面Pi1进行h264编码得到编码后的h264数据以及重建的画面Pi2;
A5)根据当前文字区域集合B中的元素分别获取画面Pi1以及画面Pi2中一一对应的文字单元块,将画面Pi1中文字单元块与对应的画面Pi2中文字单元块的YUV数据进行差分计算得到对应的文字差分数据,将文字单元块的位置信息和对应的文字差分数据加入当前文字区域细节集合C;
A6)根据压缩算法将当前文字区域细节集合C进行压缩得到文字差分压缩数据包,将编码后的h264数据和文字差分压缩数据包合并压缩为画面压缩数据包后发送给客户端。
2.根据权利要求1所述的文字区域清晰的画面传输方法,其特征在于,还包括客户端解压解码屏幕图像数据的步骤,具体包括:
B1)获取服务端发送的画面压缩数据包,解压画面压缩数据包;
B2)若解压后的内容包含文字差分压缩数据包,解压文字差分压缩数据包得到文字区域细节集合C,对解压得到的h264数据进行解码得到重建的画面Pi2,将文字区域细节集合C中的文字差分数据与画面Pi2合成得到文字清晰的画面Pi3,将画面Pi3作为最终画面;否则对解压得到的h264数据进行解码得到重建的画面Pi2,将画面Pi2作为最终画面;将文字区域细节集合C中的文字差分数据与画面Pi2合成得到文字清晰的画面Pi3具体包括:根据文字区域细节集合C中的位置信息获取画面Pi2中的文字单元块,将文字单元块匹配文字区域细节集合C得到对应的文字差分数据,将文字单元块的YUV数据和对应的文字差分数据相加得到文字单元块新的YUV数据。
3.根据权利要求1所述的文字区域清晰的画面传输方法,其特征在于,步骤A1)之前还包括划分单元块的步骤,具体包括:按照预设的单元长度w和单元宽度h将屏幕划分为nw行且nh列大小相同的单元块,定义所有单元块的标记集合flag[nw][nh],将标记集合flag[nw][nh]中的所有标记置0。
4.根据权利要求3所述的文字区域清晰的画面传输方法,其特征在于,步骤A1)具体包括:获取当前画面Pi相对上一画面Pi-1的变化区域对应的所有单元块作为第一单元块,获取当前画面Pi相对上一画面Pi-1的无变化区域对应的所有单元块作为第二单元块,将标记集合flag[nw][nh]中第一单元块对应的标记置1,将第二单元块分别匹配标记集合flag[nw][nh],若第二单元块对应的标记为1,将第二单元块的位置信息加入当前文字识别区域集合A,同时将标记集合flag[nw][nh]中第二单元块对应的标记置0。
5.根据权利要求1所述的文字区域清晰的画面传输方法,其特征在于,步骤A1)中根据预设时间抓取屏幕画面作为当前画面Pi具体包括:判断预设时间内屏幕画面是否发生变化,是则抓取当前屏幕画面作为当前画面Pi,否则将上一画面Pi-1作为当前画面Pi。
6.根据权利要求1所述的文字区域清晰的画面传输方法,其特征在于,步骤A1)还包括当前文字识别区域集合A为空时的处理步骤:若当前文字识别区域集合A为空,将当前画面Pi转码为YUV格式的画面Pi1后进行h264编码得到编码后的h264数据,将编码后的h264数据压缩为画面压缩数据包后发送给客户端。
7.根据权利要求1所述的文字区域清晰的画面传输方法,其特征在于,步骤A5)之前还包括网络判断的步骤,具体包括:
C1)判断网络状况是否满足预设条件,是则跳转步骤A5),否则进入步骤C2);
C2)根据文字区域集合B中的元素分别得到画面Pi1以及画面Pi2中一一对应的文字单元块,将画面Pi1中文字单元块与对应的画面Pi2中文字单元块的Y分量数据进行差分计算得到对应的文字差分数据,将文字单元块的位置信息和对应的文字差分数据加入文字区域细节集合C,跳转步骤A6)。
8.根据权利要求1所述的文字区域清晰的画面传输方法,其特征在于,步骤A6)之前还包括网络判断的步骤,具体包括:
D1)判断网络状况是否满足预设条件,是则跳转步骤A6),否则进入步骤D2);
D2)将编码后的h264数据压缩为画面压缩数据包后发送给客户端,返回步骤A1)。
9.根据权利要求1所述的文字区域清晰的画面传输方法,其特征在于,步骤A3)中的文字识别算法为最大稳定极值区域算法。
10.根据权利要求1所述的文字区域清晰的画面传输方法,其特征在于,步骤A6)中的压缩算法为行程长度压缩算法或zlib压缩算法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011338605.3A CN112511860B (zh) | 2020-11-25 | 2020-11-25 | 一种文字区域清晰的画面传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011338605.3A CN112511860B (zh) | 2020-11-25 | 2020-11-25 | 一种文字区域清晰的画面传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112511860A CN112511860A (zh) | 2021-03-16 |
CN112511860B true CN112511860B (zh) | 2022-05-24 |
Family
ID=74958584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011338605.3A Active CN112511860B (zh) | 2020-11-25 | 2020-11-25 | 一种文字区域清晰的画面传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112511860B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254160A (zh) * | 2011-07-12 | 2011-11-23 | 央视国际网络有限公司 | 视频比分的检测识别方法及装置 |
CN102630043A (zh) * | 2012-04-01 | 2012-08-08 | 北京捷成世纪科技股份有限公司 | 一种基于对象的视频转码方法和装置 |
CN110351564A (zh) * | 2019-08-08 | 2019-10-18 | 上海纽菲斯信息科技有限公司 | 一种文字清晰的视频压缩传输方法及*** |
CN111918065A (zh) * | 2019-05-08 | 2020-11-10 | 中兴通讯股份有限公司 | 一种信息压缩/解压缩方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6892625B2 (ja) * | 2016-07-29 | 2021-06-23 | ブラザー工業株式会社 | データ処理装置、および、コンピュータプログラム |
-
2020
- 2020-11-25 CN CN202011338605.3A patent/CN112511860B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254160A (zh) * | 2011-07-12 | 2011-11-23 | 央视国际网络有限公司 | 视频比分的检测识别方法及装置 |
CN102630043A (zh) * | 2012-04-01 | 2012-08-08 | 北京捷成世纪科技股份有限公司 | 一种基于对象的视频转码方法和装置 |
CN111918065A (zh) * | 2019-05-08 | 2020-11-10 | 中兴通讯股份有限公司 | 一种信息压缩/解压缩方法及装置 |
CN110351564A (zh) * | 2019-08-08 | 2019-10-18 | 上海纽菲斯信息科技有限公司 | 一种文字清晰的视频压缩传输方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN112511860A (zh) | 2021-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10904408B2 (en) | Picture file processing method, device, and computer storage medium | |
CN102204257B (zh) | 低延迟视频编码器 | |
US5689800A (en) | Video feedback for reducing data rate or increasing quality in a video processing system | |
US7072404B2 (en) | Decoding apparatus, control method therefor, and storage medium | |
CN109640167B (zh) | 视频处理方法、装置、电子设备及存储介质 | |
WO2020135357A1 (zh) | 数据压缩方法及装置、数据编码/解码方法及装置 | |
US11102493B2 (en) | Method and apparatus for image compression that employs multiple indexed color history buffers | |
GB2371434A (en) | Encoding and transmitting video data | |
US10771797B2 (en) | Enhancing a chroma-subsampled video stream | |
CN111654660B (zh) | 一种基于图像分割的视频会议***编码传输方法 | |
US11600026B2 (en) | Data processing systems | |
CN112511860B (zh) | 一种文字区域清晰的画面传输方法 | |
CN109413445B (zh) | 一种视频传输方法及装置 | |
CN114827617B (zh) | 一种基于感知模型的视频编解码方法及*** | |
CN114938408B (zh) | 一种云手机的数据传输方法、***、设备及介质 | |
US11538169B2 (en) | Method, computer program and system for detecting changes and moving objects in a video view | |
CN114827620A (zh) | 图像处理方法、装置、设备与介质 | |
CN115665427A (zh) | 直播数据的处理方法、装置及电子设备 | |
KR100798386B1 (ko) | 영상 압축방법과 신장방법 및 그 장치 | |
JP2001144968A (ja) | マルチメディア情報変換装置 | |
CN117221547B (zh) | 一种基于ctu级下采样的8k视频编码方法及装置 | |
CN116248895B (zh) | 虚拟现实全景漫游的视频云转码方法及*** | |
CN116489132A (zh) | 虚拟桌面数据传输方法、服务器、客户端和存储介质 | |
KR19980025576A (ko) | 동영상의 내용기반 부호화시 영상객체의 움직임 특성을 이용한 데이타 압축장치 및 데이타 감축방법 | |
KR100504808B1 (ko) | 동영상 코덱의 rgb칼라 변환방법 |
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 |