一种视频图像快速传输的方法及系统的制作方法

文档序号:7888627阅读:217来源:国知局
专利名称:一种视频图像快速传输的方法及系统的制作方法
技术领域
本发明涉及视频图像处理领域,尤其涉及一种视频图像快速传输的方法及系统。
背景技术
目前,随着网络技术的不断发展,无线网络在智能家电中已经普及。智能家电中的各种终端设备基本上都能通过无线技术上网并进行信息的浏览,但是随着智能家电的不断完善,人们也提出了更高的要求,即要实现及时的屏幕共享。用户在一个终端设备上浏览信息页面能够及时的传递到另一个最接近自己的终端设备上,这样可以极大的满足用户的需求,方便用户使用。目前,在多屏共享技术中的主要共享方式、技术存在有以下几种:分屏器屏幕共享、服务器视频流屏幕共享和屏幕快捕技术屏幕共享。但上述共享方式分别存有以下不足:分屏器屏幕共享需要VGA连接线进行线连接,因为连接线长度有限,因而限制了相连接的两个设备之间的距离;服务器视频流屏幕共享虽解决了接线长度问题,但一个服务器设备只针对一个客户端设备,无法实现一个服务器设备的播放内容在多个客户端设备上同时进行显示的问题;

屏幕快捕技术屏幕共享每次都处理全屏数据,数据量巨大,需要较高的机器配置才能快速的处理完数据的压缩与传输,耗时长。

发明内容
有鉴于此,本发明的目的在于提供一种视频图像快速传输的方法及系统,节省带宽占用量,实现智能家庭中终端的多屏共享时的图像快速传输。本发明提供的图像快速传输的方法包括步骤:A、视频发送端对其屏幕进行图像截屏并缓存;B、确定出所截屏图像与缓存的上一帧截屏图像像素不同的区域,并发送所述区域的图像;C、视频接收端接收所述区域图像并与其缓存的图像组合作为所接收的图像,并缓存组合后的图像。由上,仅对图像像素不同的区域进行发送,节省带宽占用量,实现智能家庭中终端的多屏共享时的图像快速传输。可选的,步骤B所述像素不同的确定步骤包括:判断像素与上一帧图像该位置像素属性值偏差超过一定值时确定为像素不同。由上,通过判断像素属性偏差,实现对像素不同的判定。可选的,步骤B所述区域的确定步骤包括:分别以行和列为单位,确定出与上一帧图像像素不同的行和列,所述行和列交集所构成的区域为所述不同的区域。
由上,通过判断行和列像素的不同实现确定出需要截屏的区域,由此可避免全屏截屏,实现节省带宽占用量。可选的,所述确定出与上一帧图像像素不同的行和列的步骤包括:将所截屏图像与上一帧图像的各个像素进行差分运算得到灰度差值,并将运算结果作为数组存储;对所述数组分别进行X轴和Y轴的投影并分别计算各列和各行的灰度差值的和;分别判断各列和各行灰度差值的和大于一阈值的各行和各列为所确定出的行和列。由上,通过比较相邻两帧图像的灰度,实现判定图像像素不同的起始行和起始列的位置。可选的,分别判断各列和各行灰度差值的和大于一阈值后还包括:判断连续的设定数量的列和行灰度差值的和均大于一阈值的步骤。由上,实现判定图像像素不同的结束行和结束列的位置,由此确定相邻两帧图像像素不同的区域。可选的,还包括:根据一定时间内、一定 数量帧的截屏图像统计出像素不同的区域;步骤A所述截屏为:对所述统计出的区域进行截屏。由上,通过设定截屏图像的时间间隔和在该时间间隔中的截屏数量,由此减少截屏速率,实现进一步降低带宽占用量。较佳的,还包括:判断视频发送端在所述区域截屏之外的屏幕图像的应用被激活时,以全屏图像作为步骤A所述截屏。所述应用被激活包括:判断接收到鼠标、键盘,或其他应用窗口被激活。由上,通过设定激活状态,当未被激活时,不对屏幕进行截屏,实现增加截屏的时间间隔,进一步节省宽带占用量。可选的,所述属性值包括像素点的色彩属性和颜色深度属性。本发明还提供了一种视频图像快速传输的系统,包括视频发送端和视频接收端,其中,所述视频发送端包括:截屏模块,用于对视频发送端的屏幕进行图像截屏;视频发送端存储模块,用于缓存所述截屏模块依次所截各帧图像;对比模块,用于将当前所截屏图像与存储模块缓存的上一帧图像进行对比,确定图像像素不同的区域;发送模块,用于将图像像素不同的区域以无线形式输出。视频接收端包括:接收模块,用于接收视频发送端的发送模块所发送的图像像素不同的区域;整合模块,用于将接收的图像像素不同的区域与所述缓存的图像组合作为所接收的图像;视频接收端存储模块,用于将整合模块所整合后的图像进行缓存。由上,仅对图像像素不同的区域进行发送,节省带宽占用量,实现智能家庭中终端的多屏共享时的图像快速传输。


图1为本发明提供的视频图像快速传输方法的流程图;图2为本发明步骤SlO中视频发送端与视频接收端之间建立无线共享连接的方法流程图;图3为本发明步骤S20中视频发送端对被共享的视频文件进行截屏的方法流程图;图4为本发明步骤S40中当前帧图像与前一帧图像进行对比得出灰度偏差区域的方法流程图;图5为本发明视频图像快速传输的系统结构示意图。
具体实施例方式本发明的主要原理是:视频发送端与视频接收端之间建立无线共享连接,视频发送端通过截屏将视频图像进行编码向视频接收端发送时,视频发送端同时将该图像进行缓存,并对所缓存的图像进行滤波处理。对当前帧图像与缓存的前一帧的图像进行对比,获取两帧图像中灰度偏差区域(即图像像素所不同的区域),并仅将该灰度偏差区域所对应的图像部分进行编码后发送。视频接收端将灰度偏差区域整合至前一帧图像中并缓存。由此以节省带宽占用量和编码速度,实现智能家庭中终端的多屏共享时的图像快速传输。下面结合附图1-5对本发明所述图像快速传输方法及系统的具体实施方式
进行详细的说明。如图1所示,图像快速传输的方法·包括以下步骤:步骤SlO:视频发送端与视频接收端之间建立无线共享连接。其中,如图2所示,所述步骤SlO包括:步骤SlOl:视频发送端通过无线通信网络,如WIFI网络,向视频接收端发送视频
共享请求信息。步骤S102:视频接收端接收视频共享请求信息,根据视频接收端所存储的共享标识位的值判断是否可接受视频共享,并据此反馈相应的信息。当检测到其共享标识位设置为I时,表示视频接收端正在与其他视频发送端进行视频共享,此时无法再与上述视频接收端进行共享,进入步骤S103 ;当共享标识位设置为O时,表示视频接收端并未与其他视频发送端进行视频共享,处于空闲状态,此时可与上述视频接收端进行视频共享,进入步骤S104。步骤S103:视频接收端向视频发送端发送反馈拒绝共享请求的信息,结束本流程。步骤S104:视频接收端反馈允许共享请求的信息,建立视频共享连接。当视频发送端与视频接收端之间建立无线共享连接后,视频接收端将视频发送端的地址信息进行存储,以及更改共享标识位为I。由上,视频发送端与视频接收端完成视频共享连接的建立。步骤S20:视频发送端对其整个屏幕,即桌面进行逐帧截屏。
常用截屏方式包括⑶I函数、DirectX函数或Windows Media API函数。本实施例中,采用GDI函数进行对桌面进行截屏,GDI是以“桌面也是一个窗口,桌面也有一个窗口句柄(HWND) ”为基础的,一次截屏的时间仅为4毫秒。⑶I是一个可执行程序,它接受Windows应用程序的访问请求,但应用程序无法直接访问输出设备(屏幕),因此对输出设备的操作是通过设备上下文(DC, Device Contex)进行的。DC是Windows中的一种数据结构,它包含GDI函数需要的所有关于输出设备的类型以及显示界面情况的描述字段。GDI函数所截屏的图像并不是直接由输出设备输出,而是将图像复制到DC中。屏幕上的每一个窗口都对应一个DC,对DC的操作反应在其所对应的屏幕窗口上。如图3所示,所述步骤S20中的截屏步骤包括:步骤S201:获取当前屏幕桌面的窗口。当进行桌面截图时,首先使指针指向当前屏幕桌面窗口。由此,需调用函数来获取桌面窗口的句柄,在本实施例中,通过调用GetDesktopWindow函数获取桌面的窗口句柄。步骤S202:获取当前屏幕桌面窗口的DC。本步骤调用GetDC函数获取桌面窗口的DC,用于获取桌面窗口的内容。包括桌面窗口内容对应整个桌面的位像以及当前整个桌面窗口的宽和高。步骤S203:创建与窗口 DC兼容的DC和位图,将位图选进兼容的DC。本步骤中,首先调用CreateCompatible 函数创建兼容 DC(CreateCompatibleDC)和位图(CreateCompatibleBitmap),兼容DC用于获取整个桌面窗口的像素值。位图依据目前屏幕的大小创建,与整个桌面窗口大小相同。另外,位图可进行读写操作,用于存放全屏幕像素的内存。而后,调用SelectObject函数将所创建的位图选进兼容的DC。步骤S204:复制 桌面窗口 DC的内容到兼容DC。本步骤调用BitBlt函数将步骤S202中的桌面窗口 DC复制至步骤S203中创建的位图上,兼容DC上的位图便为截屏时的图像,由此完成当前屏幕桌面的截屏。步骤S205:释放所创建的DC。本步骤调用Release函数将所创建的DC释放,由此释放内存保证其他程序顺畅运行。步骤S30:对所截屏的图像进行滤波并进行缓存。在进行截屏的过程中,由于光照不均或环境变化,由此造成所截屏的图像的亮度变化不均匀,所以图像会产生很多噪声。通过对所截屏图像进行滤波处理,消除图像噪声以克服图像干扰。步骤S40:将当前帧图像与前一帧图像的像素属性进行对比,得出灰度偏差区域。如图4所示,本实施例中以相邻两帧图像具有一个灰度偏差区域为例进行描述,步骤S40中包括:步骤S401:将所获取图像RGB数值排列矩阵的彩色图换算为灰度图并将当前帧图像与前一帧图像进行差分运算得到灰度差值,运算结果存放至同一个数组I (xi,yj)当中。本实施例中,为了图像加快图像对比的处理速度,首先改变像素的色彩属性,将截屏的图像由彩色图像转换为灰度图像。转换后的灰度图像的每一个像素点用一个字节表示该像素点的灰度值。灰度值在O 255之间,其数值越大,表示该像素点越白(即亮度高),数值越小就越黑。本实施例中通过对像素颜色深度属性的对比进行判断。
将当前帧图像与前一帧图像的各个像素点的灰度值进行差分运算,并将运算结果存放至一个数组I (xi,yj)当中。其中,数组中的X表示横坐标,y表示纵坐标;1、j分别表示横坐标或纵坐标像素点的序数。步骤S402:将步骤401中所获得的数组分别进行X轴Y轴的投影并求其积分。假定所截屏的图像为M*N的排列矩阵,上述数组在X轴投影的积分为:
权利要求
1.一种视频图像快速传输的方法,其特征在于,包括步骤: A、发送端对其屏幕进行图像截屏并缓存; B、确定出所截屏图像与缓存的上一帧截屏图像像素不同的区域,并发送所述区域的图像; C、视频接收端接收所述区域图像并与其缓存的图像组合作为所接收的图像进行缓存。
2.根据权利要求1所述的方法,其特征在于,步骤B所述像素不同的确定步骤包括:判断像素与上一帧图像该位置像素属性值偏差超过一定值时确定为像素不同。
3.根据权利要求2所述的方法,其特征在于,步骤B所述区域的确定步骤包括: 分别以行和列为单位,确定出于上一帧图像像素不同的行和列,所述行和列交集所构成的区域为所述不同的区域。
4.根据权利要求3所述的方法,其特征在于:所述确定出与上一帧图像像素不同的行和列的步骤包括: 将所截屏图像与上一帧图像的各个像素进行差分运算得到灰度差值,并将运算结果作为数组存储; 对所述数组分别进行X轴和Y轴的投影并分别计算各列和各行的灰度差值的和; 分别判断各列和各行灰度差值的和大于一阈值的各行和各列为所确定出的行和列。
5.根据权利要求4所述的方法,其特征在于,分别判断各列和各行灰度差值的和大于一阈值后还包括: 判断连续的设定数量的列和行灰度差值的和均大于一阈值的步骤。
6.根据权利要求1所述的方法,其特征在于,还包括: 根据一定时间内、一定数量帧的截屏图像统计出像素不同的区域; 步骤A所述截屏为:对所述统计出的区域进行截屏。
7.根据权利要求6所述的方法,其特征在于,还包括: 判断视频发送端在所述区域截屏之外的屏幕图像的应用被激活时,以全屏图像作为步骤A所述截屏。
8.根据权利要求7所述的方法,其特征在于,所述应用被激活包括:判断接收到鼠标、键盘,或其他应用窗口被激活。
9.根据权利要求2所述的方法,其特征在于,所述属性值包括像素点的色彩属性和颜色深度属性。
10.一种视频图像快速传输的系统,包括视频发送端和视频接收端,其特征在于, 视频发送端包括: 截屏模块,用于对视频发送端的屏幕进行图像截屏; 视频发送端存储模块,用于缓存所述截屏模块依次所截各帧图像; 对比模块,用于将当前所截屏图像与存储模块缓存的上一帧图像进行对比,确定图像像素不同的区域; 发送模块,用于将图像像素不同的区域以无线形式输出。
视频接收端包括: 接收模块,用于接收视频发送端的发送模块所发送的图像像素不同的区域; 整合模块,用于将接收的图像像素不同的区域与所述缓存的图像组合作为所接收的图像;视频接收端存 储模块,用于将整合模块所整合后的图像进行缓存。
全文摘要
本发明提供一种图像快速传输的方法,包括A、视频发送端对其屏幕进行图像截屏并缓存;B、确定出所截屏图像与缓存的上一帧截屏图像像素不同的区域,并发送所述区域的图像;C、视频接收端接收所述区域图像并与其缓存的图像组合作为所接收的图像,并缓存组合后的图像。本发明还相应提供了图像快速传输的系统。本发明节省带宽占用量和编码速度,实现智能家庭中终端的多屏共享时的图像快速传输。
文档编号H04N21/4363GK103248946SQ20121002433
公开日2013年8月14日 申请日期2012年2月3日 优先权日2012年2月3日
发明者喻子达, 王袭, 赵向阳, 韩文, 朴成杰, 黄橙, 周林, 安娜 申请人:海尔集团公司, 海尔集团技术研发中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1