视频数据传输方法及装置与流程

文档序号:12492205阅读:183来源:国知局
视频数据传输方法及装置与流程

本发明涉及数据传输技术领域,尤其涉及一种视频数据传输方法及装置。



背景技术:

目前,随着移动终端的普及和无线网络技术的日益发展,现有的语音通话和短信交流方式已经不能满足人们的需求,视频语音聊天业务越来越被人们所青睐。在视频聊天时,作为发送终端的智能终端通过前置摄像头获取图像数据,同时通过麦克风等音频输入设备获取与图像数据同步的音频数据;然后将图像数据以及音频数据压缩同步处理后,通过发送端连接的移动蜂窝网络或者无线网络发送至接收端,实现实时的视频聊天功能。

然而,在用户走路时,手持手机经常晃动,这样视频录制需要重新获取当前图像,并发送给接收终端显示。即使在手机固定的情况下,人物图像的微小晃动也需要重新获取当前图像。这样,由于视频画面需要重新生成,可能会导致接收端接收到的视频画面不连贯。



技术实现要素:

本发明的主要目的在于提出一种视频数据传输方法及装置,旨在提高视频聊天的画面流畅性。

为实现上述目的,本发明提供的一种视频数据传输装置,所述装置包括:

图像采集模块,用于采集第一客户端的视频聊天数据;

数据处理模块,用于将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度;

判断模块,用于将得到的所述当前视频聊天数据与上一次视频聊天数据的相似度与设定的阈值进行比较;

发送模块,用于若所述相似度大于设定的阈值,则不将当前视频聊天数据发送至第二客户端;否则,将当前视频聊天数据发送至第二客户端,由所述第二客户端进行播放显示。

可选地,所述数据处理模块,还用于从所述第一客户端的当前视频聊天数据中获取图像数据;将所述图像数据转换为图像矢量数据;将所述图像矢量数据与上一次视频聊天数据的图像矢量数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度。

可选地,所述数据处理模块,还用于将视频帧画面划分若干区域,对两视频帧画面中对应的区域一一进行对比,采用预设的相似度算法计算得到当前视频聊天数据与上一次视频聊天数据的相似度。

可选地,所述数据处理模块,还用于对两视频帧画面中的每一像素值一一进行对比,采用预设的相似度算法计算得到当前视频聊天数据与上一次视频聊天数据的相似度。

可选地,所述视频聊天数据包括至少一个视频帧画面。

可选地,所述视频聊天数据通过终端摄像头采集得到。

可选地,所述装置还包括:

设定模块,用于设定视频聊天数据的相似度的阈值。

本发明实施例还提出一种视频数据传输方法,所述方法包括:

采集第一客户端的视频聊天数据;

将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度;

将得到的所述当前视频聊天数据与上一次视频聊天数据的相似度和设定的阈值进行比较;

若所述相似度大于设定的阈值,则不将当前视频聊天数据发送至第二客户端;否则,将当前视频聊天数据发送至第二客户端,由所述第二客户端进行播放显示。

可选地,所述将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度的步骤包括:

从所述第一客户端的当前视频聊天数据中获取图像数据;

将所述图像数据转换为图像矢量数据;

将所述图像矢量数据与上一次视频聊天数据的图像矢量数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度。

可选地,所述将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度的步骤包括:

将视频帧画面划分若干区域,对两视频帧画面中对应的区域一一进行对比,采用预设的相似度算法计算得到当前视频聊天数据与上一次视频聊天数据的相似度。

可选地,所述将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度的步骤包括:

对两视频帧画面中的每一像素值一一进行对比,采用预设的相似度算法计算得到当前视频聊天数据与上一次视频聊天数据的相似度。

可选地,所述视频聊天数据包括至少一个视频帧画面。

可选地,所述视频聊天数据通过终端摄像头采集得到。

可选地,所述采集第一客户端的视频聊天数据的步骤之前还包括:

设定视频聊天数据的相似度的阈值。

本发明提出的一种视频数据传输方法及装置,在采集第一客户端的视频聊天数据后,将第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度;将得到的所述当前视频聊天数据与上一次视频聊天数据的相似度与设定的阈值进行比较;若所述相似度大于设定的阈值,则不将当前视频聊天数据发送至第二客户端;否则,将当前视频聊天数据发送至第二客户端,由所述第二客户端进行播放显示,由此在终端获取到的图像与前一帧图像相差在设定阀值范围内时,该视频图像不会再发送给接收端,从而提高视频传输质量,提高视频聊天的流畅性,给用户带来极好的体验。

附图说明

图1是实现本发明各个实施例的一个可选的移动终端的硬件结构示意图;

图2是如图1所示的移动终端的无线通信系统示意图;

图3是本发明视频数据传输装置第一实施例的模块示意图;

图4是本发明视频数据传输方法第一实施例的流程示意图;

图5是本发明视频数据传输方法第二实施例的流程示意图;

图6是本发明视频数据传输方法第三实施例的流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例方案涉及终端系统资源的共享,其中涉及的终端可以是PC等固定终端,也可以指移动终端,本发明实施例以移动终端进行举例,但并不构成对终端的限制。

现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。

移动终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。下面,假设终端是移动终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。

图1为实现本发明各个实施例的一个可选的移动终端的硬件结构示意图。

移动终端100可以包括无线通信单元110、用户输入单元130、输出单元150、存储器160、接口单元170、控制器180和电源单元190等等。图1示出了具有各种组件的移动终端,但是应理解的是,并不要求实施所有示出的组件。可以替代地实施更多或更少的组件。将在下面详细描述移动终端的元件。

无线通信单元110通常包括一个或多个组件,其允许移动终端100与无线通信系统或网络之间的无线电通信。例如,无线通信单元可以包括广播接收模块111、无线互联网模块113中的至少一个。

广播接收模块111经由广播信道从外部广播管理服务器接收广播信号和/或广播相关信息。广播信道可以包括卫星信道和/或地面信道。广播管理服务器可以是生成并发送广播信号和/或广播相关信息的服务器或者接收之前生成的广播信号和/或广播相关信息并且将其发送给终端的服务器。广播信号可以包括TV广播信号、无线电广播信号、数据广播信号等等。而且,广播信号可以进一步包括与TV或无线电广播信号组合的广播信号。广播相关信息也可以经由移动通信网络提供,并且在该情况下,广播相关信息可以由移动通信模块112来接收。广播信号可以以各种形式存在,例如,其可以以数字多媒体广播(DMB)的电子节目指南(EPG)、数字视频广播手持(DVB-H)的电子服务指南(ESG)等等的形式而存在。广播接收模块111可以通过使用各种类型的广播系统接收信号广播。特别地,广播接收模块111可以通过使用诸如多媒体广播-地面(DMB-T)、数字多媒体广播-卫星(DMB-S)、数字视频广播-手持(DVB-H),前向链路媒体(MediaFLO@)的数据广播系统、地面数字广播综合服务(ISDB-T)等等的数字广播系统接收数字广播。广播接收模块111可以被构造为适合提供广播信号的各种广播系统以及上述数字广播系统。经由广播接收模块111接收的广播信号和/或广播相关信息可以存储在存储器160(或者其它类型的存储介质)中。

无线互联网模块113支持移动终端的无线互联网接入。该模块可以内部或外部地耦接到终端。该模块所涉及的无线互联网接入技术可以包括WLAN(无线LAN)(Wi-Fi)、Wibro(无线宽带)、Wimax(全球微波互联接入)、HSDPA(高速下行链路分组接入)等等。

用户输入单元130可以根据用户输入的命令生成键输入数据以控制移动终端的各种操作。用户输入单元130允许用户输入各种类型的信息,并且可以包括键盘、锅仔片、触摸板(例如,检测由于被接触而导致的电阻、压力、电容等等的变化的触敏组件)、滚轮、摇杆等等。特别地,当触摸板以层的形式叠加在显示单元151上时,可以形成触摸屏。

接口单元170用作至少一个外部装置与移动终端100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。识别模块可以是存储用于验证用户使用移动终端100的各种信息并且可以包括用户识别模块(UIM)、客户识别模块(SIM)、通用客户识别模块(USIM)等等。另外,具有识别模块的装置(下面称为"识别装置")可以采取智能卡的形式,因此,识别装置可以经由端口或其它连接装置与移动终端100连接。接口单元170可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端和外部装置之间传输数据。

另外,当移动终端100与外部底座连接时,接口单元170可以用作允许通过其将电力从底座提供到移动终端100的路径或者可以用作允许从底座输入的各种命令信号通过其传输到移动终端的路径。从底座输入的各种命令信号或电力可以用作用于识别移动终端是否准确地安装在底座上的信号。

输出单元150被构造为以视觉、音频和/或触觉方式提供输出信号(例如,音频信号、视频信号、警报信号、振动信号等等)。输出单元150可以包括显示单元151、音频输出模块152等。

显示单元151可以显示在移动终端100中处理的信息。例如,当移动终端100处于电话通话模式时,显示单元151可以显示与通话或其它通信(例如,文本消息收发、多媒体文件下载等等)相关的用户界面(UI)或图形用户界面(GUI)。当移动终端100处于视频通话模式或者图像捕获模式时,显示单元151可以显示捕获的图像和/或接收的图像、示出视频或图像以及相关功能的UI或GUI等等。

同时,当显示单元151和触摸板以层的形式彼此叠加以形成触摸屏时,显示单元151可以用作输入装置和输出装置。显示单元151可以包括液晶显示器(LCD)、薄膜晶体管LCD(TFT-LCD)、有机发光二极管(OLED)显示器、柔性显示器、三维(3D)显示器等等中的至少一种。这些显示器中的一些可以被构造为透明状以允许用户从外部观看,这可以称为透明显示器,典型的透明显示器可以例如为TOLED(透明有机发光二极管)显示器等等。根据特定想要的实施方式,移动终端100可以包括两个或更多显示单元(或其它显示装置),例如,移动终端可以包括外部显示单元(未示出)和内部显示单元(未示出)。触摸屏可用于检测触摸输入压力以及触摸输入位置和触摸输入面积。

音频输出模块152可以在移动终端处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将无线通信单元110接收的或者在存储器160中存储的音频数据转换音频信号并且输出为声音。而且,音频输出模块152可以提供与移动终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出模块152可以包括扬声器、蜂鸣器等等。

存储器160可以存储由控制器180执行的处理和控制操作的软件程序等

等,或者可以暂时地存储己经输出或将要输出的数据(例如,电话簿、消息、静态图像、视频等等)。而且,存储器160可以存储关于当触摸施加到触摸屏时输出的各种方式的振动和音频信号的数据。

存储器160可以包括至少一种类型的存储介质,所述存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等等。而且,移动终端100可以与通过网络连接执行存储器160的存储功能的网络存储装置协作。

控制器180通常控制移动终端的总体操作。例如,控制器180执行与语音通话、数据通信、视频通话等等相关的控制和处理。另外,控制器180可以包括用于再现(或回放)多媒体数据的多媒体模块1810,多媒体模块1810可以构造在控制器180内,或者可以构造为与控制器180分离。控制器180可以执行模式识别处理,以将在触摸屏上执行的手写输入或者图片绘制输入识别为字符或图像。

具体地,控制器180还可以包括:

图像采集模块201,用于采集第一客户端的视频聊天数据;

数据处理模块202,用于将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度;

判断模块203,用于将得到的所述当前视频聊天数据与上一次视频聊天数据的相似度与设定的阈值进行比较;

发送模块204,用于若所述相似度大于设定的阈值,则不将当前视频聊天数据发送至第二客户端;否则,将当前视频聊天数据发送至第二客户端,由所述第二客户端进行播放显示。

进一步地,所述数据处理模块202,还用于从所述第一客户端的当前视频聊天数据中获取图像数据;将所述图像数据转换为图像矢量数据;将所述图像矢量数据与上一次视频聊天数据的图像矢量数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度。

电源单元190在控制器180的控制下接收外部电力或内部电力并且提供操作各元件和组件所需的适当的电力。

这里描述的各种实施方式可以以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,这里描述的实施方式可以通过使用特定用途集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施,在一些情况下,这样的实施方式可以在控制器180中实施。对于软件实施,诸如过程或功能的实施方式可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储器160中并且由控制器180执行。

如图1中所示的移动终端100可以被构造为利用经由帧或分组发送数据的诸如有线和无线通信系统以及基于卫星的通信系统来操作。

现在将参考图2描述其中根据本发明的移动终端能够操作的通信系统。

这样的通信系统可以使用不同的空中接口和/或物理层。例如,由通信系统使用的空中接口包括例如频分多址(FDMA)、时分多址(TDMA)、码分多址(CDMA)和通用移动通信系统(UMTS)(特别地,长期演进(LTE))、全球移动通信系统(GSM)等等。作为非限制性示例,下面的描述涉及CDMA通信系统,但是这样的教导同样适用于其它类型的系统。

参考图2,CDMA无线通信系统可以包括多个移动终端100、多个基站(BS)270、基站控制器(BSC)275和移动交换中心(MSC)280。MSC280被构造为与公共电话交换网络(PSTN)290形成接口。MSC280还被构造为与可以经由回程线路耦接到基站270的BSC275形成接口。回程线路可以根据若干己知的接口中的任一种来构造,所述接口包括例如E1/T1、ATM,IP、PPP、帧中继、HDSL、ADSL或xDSL。将理解的是,如图2中所示的系统可以包括多个BSC2750。

每个BS270可以服务一个或多个分区(或区域),由多向天线或指向特定方向的天线覆盖的每个分区放射状地远离BS270。或者,每个分区可以由用于分集接收的两个或更多天线覆盖。每个BS270可以被构造为支持多个频率分配,并且每个频率分配具有特定频谱(例如,1.25MHz,5MHz等等)。

分区与频率分配的交叉可以被称为CDMA信道。BS270也可以被称为基站收发器子系统(BTS)或者其它等效术语。在这样的情况下,术语"基站"可以用于笼统地表示单个BSC275和至少一个BS270。基站也可以被称为"蜂窝站"。或者,特定BS270的各分区可以被称为多个蜂窝站。

如图2中所示,广播发射器(BT)295将广播信号发送给在系统内操作的移动终端100。如图1中所示的广播接收模块111被设置在移动终端100处以接收由BT295发送的广播信号。在图2中,示出了几个全球定位系统(GPS)卫星300。卫星300帮助定位多个移动终端100中的至少一个。

在图2中,描绘了多个卫星300,但是理解的是,可以利用任何数目的卫星获得有用的定位信息。作为无线通信系统的一个典型操作,BS270接收来自各种移动终端100的反向链路信号。移动终端100通常参与通话、消息收发和其它类型的通信。特定基站270接收的每个反向链路信号被在特定BS270内进行处理。获得的数据被转发给相关的BSC275。BSC提供通话资源分配和包括BS270之间的软切换过程的协调的移动管理功能。BSC275还将接收到的数据路由到MSC280,其提供用于与PSTN290形成接口的额外的路由服务。类似地,PSTN290与MSC280形成接口,MSC与BSC275形成接口,并且BSC275相应地控制BS270以将正向链路信号发送到移动终端100。

基于上述移动终端硬件结构以及通信系统,提出本发明各个实施例。

由于现有技术中,移动终端在进行视频聊天时,终端晃动或拍摄图像的微小晃动都会影响终端视频的质量,使得接收端接收到的视频画面不连贯。

为此,本发明提出一种解决方案,在终端获取到的图像与前一帧图像相差在设定阀值范围内时,该视频图像不会再发送给接收端,从而提高视频传输质量,提高视频聊天的流畅性,给用户带来极好的体验。

具体地,如图3所示,提出本发明视频数据传输装置第一实施例,该装置包括:图像采集模块201、数据处理模块202、判断模块203及发送模块204,其中:

图像采集模块201,用于采集第一客户端的视频聊天数据;

数据处理模块202,用于将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度;

判断模块203,用于将得到的所述当前视频聊天数据与上一次视频聊天数据的相似度与设定的阈值进行比较;

发送模块204,用于若所述相似度大于设定的阈值,则不将当前视频聊天数据发送至第二客户端;否则,将当前视频聊天数据发送至第二客户端,由所述第二客户端进行播放显示。

进一步地,所述数据处理模块202,还用于从所述第一客户端的当前视频聊天数据中获取图像数据;将所述图像数据转换为图像矢量数据;将所述图像矢量数据与上一次视频聊天数据的图像矢量数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度。

具体地,本实施例方案涉及视频数据传输的发送端和接收端,其中,发送端和接收端上均安装有视频聊天软件,提供有相应的用户界面,发送端上的视频聊天软件称为第一客户端,接收端上的视频聊天软件称为第二客户端,作为视频通讯的两客户端,其功能可以互换,本实施例以第一客户端发送视频聊天数据,第二客户端接收视频聊天数据进行举例。

本实施例视频数据传输装置可以承载于发送端上。

其中,所述视频聊天数据可以通过终端摄像头采集得到。

在本实施例中,通过终端摄像头实时采集第一客户端的视频聊天数据,其中,视频聊天数据可以包括图像数据和音频数据,图像数据包括至少一个视频帧画面。

在采集到第一客户端的视频聊天数据后,将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度。

即将第一客户端采集的当前视频帧画面与上一视频帧画面进行相似度对比,在对比时,作为一种实施方式,可以将视频帧画面划分若干区域,对两个视频帧画面中对应的区域一一进行对比,采用预设的相似度算法计算得到当前视频聊天数据与上一次视频聊天数据的相似度;作为另一种实施方式,也可以对视频帧画面中的每一像素值进行对比,判断两视频帧画面的相似度。

作为再一种实施方式,还可以采用图像矢量数据的方式计算两者的相似度。

具体地,首先,从所述第一客户端的当前视频聊天数据中获取图像数据;然后,将所述图像数据转换为图像矢量数据;将所述图像矢量数据与上一次视频聊天数据的图像矢量数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度。

其中,从第一客户端的当前视频聊天数据中获取的图像数据通常为位图图像,即点阵图像,是由像素点组成,相比位图图像,矢量图像则是由一系列线连接的点组成。根据位图图像和矢量图像的特性,位图图像放大,会使得图像不清晰,变得模糊,而矢量图像无论放大缩小都不会变形。矢量图像更利于不同图像之间特征的对比,从而得到两个图像的相似度。

具体地,对于位图图像(Bitmap),亦称为点阵图像或绘制图像,是由称作像素(图片元素)的单个点组成的。这些点可以进行不同的排列和染色以构成图样。当放大位图时,可以看见赖以构成整个图像的无数单个方块。扩大位图尺寸的效果是增多单个像素,从而使线条和形状显得参差不齐。

位图图像的文件类型很多,如*.bmp、*.pcx、*.gif、*.jpg、*.gif、photoshop的*.pcd、kodak photo CD的*.psd、corel photo paint的*.cpt等。

对于矢量图(vector),矢量图像,也称为面向对象的图像或绘图图像,在数学上定义为一系列由线连接的点。像Adobe Illustrator、CorelDraw、CAD等软件是以矢量图形为基础进行创作的。矢量文件中的图形元素称为对象。每个对象都是一个自成一体的实体,它具有颜色、形状、轮廓、大小和屏幕位置等属性。由于每个对象都是一个自成一体的实体,就可以在维持它原有清晰度和弯曲度的同时,多次移动和改变它的属性,而不会影响图例中的其它对象。基于矢量的绘图同分辨率无关,这意味着它们可以按最高分辨率显示到输出设备上,都不会影响清晰度。因此,矢量图形是文字(尤其是小字)和线条图形(比如徽标)的最佳选择。

有一些图形(如工程图、白描图、卡通漫画等),它们主要由线条和色块组成,这些图形可以分解为单个的线条、文字、圆、矩形、多边形等单个的图形元素。再用一个代数式来表达每个被分解出来的元素。例如:一个圆可以表示成圆心在(x1,y1),半径为r的图形;一个矩形可以通过指定左上角的坐标(x1,y1)和右下角的坐标(x2,y2)的四边形来表示;线条可以用一个端点的坐标(x1,y1)和另一个端点的坐标(x2,y2)的连线来表示。当然还可以为每种元素再加上一些属性,如边框线的宽度、边框线是实线还是虚线、中间填充什么颜色等等。然后把这些元素的代数式和它们的属性作为文件存盘,就生成了所谓的矢量图(也叫向量图)。

矢量图形格式有很多,如Adobe Illustrator的*.AI、*.EPS和SVG、AutoCAD的*.dwg和dxf、Corel DRAW的*.cdr、windows标准图元文件*.wmf和增强型图元文件*.emf等等。当需要打开这种图形文件时,程序根据每个元素的代数式计算出这个元素的图形,并显示出来。

由于矢量图可以无限放大图形中的细节,而不用担心会造成失真和色块。因此,更好的比较不同图像之间的区别。

在将位图图像转换为矢量图像时,可以采用多种方法,比如采用CorelDRAW软件。

在本实施例中,采用图像矢量数据来获取当前视频聊天数据与上一次视频聊天数据的相似度,提高了图像特征对比的准确性,同时还可以减少计算的复杂度。

相比现有技术,本发明实施例方案,在视频聊天时,对于第一客户端实时获取到的聊天图像与前一次图像做判断,对于聊天图像发生微小变化时,并不将此次采集到的视频聊天数据发送给第二客户端,这样可以提高视频聊天的流畅性,提高用户体验。

其中,在计算相似度时,可以采用相应的相似度算法,比如基于直方图距离的图像相似度计算算法、SIFT算法、SIM(Structural SIMilarity,结构相似性)算法等,本实施例对此不作具体限定。

在得到当前视频聊天数据与上一次视频聊天数据的相似度后,将得到的所述当前视频聊天数据与上一次视频聊天数据的相似度和设定的阈值进行比较。

本实施例中,预先设定有相似度阈值,其中,设定的阈值可以根据实际情况进行设定。因此,进一步地,本实施例装置还可以包括:设定模块,用于设定视频聊天数据的相似度的阈值。

若所述相似度大于设定的阈值,则表明当前视频聊天数据可能是由于终端晃动或画面晃动造成的对视频数据的重新录制,此种情况下,为避免接收端视频画面的不连贯,则不将当前视频聊天数据发送至第二客户端显示。

若当前视频聊天数据与上一次视频聊天数据的相似度小于或等于设定的阈值,则表明当前视频画面内容与上一帧视频画面内容相差较远,则可以将当前视频聊天数据发送至第二客户端,由第二客户端进行播放显示,以保证视频画面的连贯性。

本实施例通过上述方案,在采集第一客户端的视频聊天数据后,将第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度;将得到的所述当前视频聊天数据与上一次视频聊天数据的相似度与设定的阈值进行比较;若所述相似度大于设定的阈值,则不将当前视频聊天数据发送至第二客户端;否则,将当前视频聊天数据发送至第二客户端,由所述第二客户端进行播放显示,由此在终端获取到的图像与前一帧图像相差在设定阀值范围内时,该视频图像不会再发送给接收端,从而提高视频传输质量,提高视频聊天的流畅性,给用户带来极好的体验。

对应地,提出本发明视频数据传输方法实施例。

如图4所示,提出本发明视频数据传输方法的第一实施例,该方法包括:

步骤S101,采集第一客户端的视频聊天数据;

本实施例视频数据传输方法涉及视频数据传输的发送端和接收端,其中,发送端和接收端上均安装有视频聊天软件,提供有相应的用户界面,发送端上的视频聊天软件称为第一客户端,接收端上的视频聊天软件称为第二客户端,作为视频通讯的两客户端,其功能可以互换,本实施例以第一客户端发送视频聊天数据,第二客户端接收视频聊天数据进行举例。

其中,所述视频聊天数据可以通过终端摄像头采集得到。

在本实施例中,通过终端摄像头实时采集第一客户端的视频聊天数据,其中,视频聊天数据可以包括图像数据和音频数据,图像数据包括至少一个视频帧画面。

步骤S102,将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度;

在采集到第一客户端的视频聊天数据后,将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度。

即将第一客户端采集的当前视频帧画面与上一视频帧画面进行相似度对比,在对比时,作为一种实施方式,可以将视频帧画面划分若干区域,对视频画面中对应的区域一一进行对比;作为另一种实施方式,也可以对视频帧画面中的每一像素值进行对比,判断两视频帧画面的相似度。

作为再一种实施方式,还可以采用图像矢量数据的方式计算两者的相似度。

具体地,首先,从所述第一客户端的当前视频聊天数据中获取图像数据;然后,将所述图像数据转换为图像矢量数据;将所述图像矢量数据与上一次视频聊天数据的图像矢量数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度。

其中,在计算相似度时,可以采用相应的相似度算法,本实施例对此不作具体限定。

步骤S103,将得到的所述当前视频聊天数据与上一次视频聊天数据的相似度和设定的阈值进行比较;若所述相似度大于设定的阈值,则进入步骤S104;否则,进入步骤S105,

步骤S104,不将当前视频聊天数据发送至第二客户端;

步骤S105,将当前视频聊天数据发送至第二客户端,由所述第二客户端进行播放显示。

在得到当前视频聊天数据与上一次视频聊天数据的相似度后,将得到的所述当前视频聊天数据与上一次视频聊天数据的相似度和设定的阈值进行比较。

本实施例中,预先设定有相似度阈值,其中,设定的阈值可以根据实际情况进行设定。

若所述相似度大于设定的阈值,则表明当前视频聊天数据可能是由于终端晃动或画面晃动造成的对视频数据的重新录制,此种情况下,为避免接收端视频画面的不连贯,则不将当前视频聊天数据发送至第二客户端显示。

若当前视频聊天数据与上一次视频聊天数据的相似度小于或等于设定的阈值,则表明当前视频画面内容与上一帧视频画面内容相差较远,则可以将当前视频聊天数据发送至第二客户端,由第二客户端进行播放显示,以保证视频画面的连贯性。

本实施例通过上述方案,在采集第一客户端的视频聊天数据后,将第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度;将得到的所述当前视频聊天数据与上一次视频聊天数据的相似度与设定的阈值进行比较;若所述相似度大于设定的阈值,则不将当前视频聊天数据发送至第二客户端;否则,将当前视频聊天数据发送至第二客户端,由所述第二客户端进行播放显示,由此在终端获取到的图像与前一帧图像相差在设定阀值范围内时,该视频图像不会再发送给接收端,从而提高视频传输质量,提高视频聊天的流畅性,给用户带来极好的体验。

相比现有技术,本发明实施例方案,在视频聊天时,对于第一客户端实时获取到的聊天图像与前一次图像做判断,对于聊天图像发生微小变化时,并不将此次采集到的视频聊天数据发送给第二客户端,这样可以提高视频聊天的流畅性,提高用户体验。

如图5所示,提出本发明视频数据传输方法的第二实施例,本实施例方法基于上述图4所示的第一实施例,在本实施例中,上述步骤S102,将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度可以包括:

步骤S1021,从所述第一客户端的当前视频聊天数据中获取图像数据;

步骤S1022,将所述图像数据转换为图像矢量数据;

其中,从第一客户端的当前视频聊天数据中获取的图像数据通常为位图图像,即点阵图像,是由像素点组成,相比位图图像,矢量图像则是由一系列线连接的点组成。根据位图图像和矢量图像的特性,位图图像放大,会使得图像不清晰,变得模糊,而矢量图像无论放大缩小都不会变形。矢量图像更利于不同图像之间特征的对比,从而得到两个图像的相似度。

具体地,对于位图图像(Bitmap),亦称为点阵图像或绘制图像,是由称作像素(图片元素)的单个点组成的。这些点可以进行不同的排列和染色以构成图样。当放大位图时,可以看见赖以构成整个图像的无数单个方块。扩大位图尺寸的效果是增多单个像素,从而使线条和形状显得参差不齐。

位图图像的文件类型很多,如*.bmp、*.pcx、*.gif、*.jpg、*.gif、photoshop的*.pcd、kodak photo CD的*.psd、corel photo paint的*.cpt等。

对于矢量图(vector),矢量图像,也称为面向对象的图像或绘图图像,在数学上定义为一系列由线连接的点。像Adobe Illustrator、CorelDraw、CAD等软件是以矢量图形为基础进行创作的。矢量文件中的图形元素称为对象。每个对象都是一个自成一体的实体,它具有颜色、形状、轮廓、大小和屏幕位置等属性。由于每个对象都是一个自成一体的实体,就可以在维持它原有清晰度和弯曲度的同时,多次移动和改变它的属性,而不会影响图例中的其它对象。基于矢量的绘图同分辨率无关,这意味着它们可以按最高分辨率显示到输出设备上,都不会影响清晰度。因此,矢量图形是文字(尤其是小字)和线条图形(比如徽标)的最佳选择。

有一些图形(如工程图、白描图、卡通漫画等),它们主要由线条和色块组成,这些图形可以分解为单个的线条、文字、圆、矩形、多边形等单个的图形元素。再用一个代数式来表达每个被分解出来的元素。例如:一个圆可以表示成圆心在(x1,y1),半径为r的图形;一个矩形可以通过指定左上角的坐标(x1,y1)和右下角的坐标(x2,y2)的四边形来表示;线条可以用一个端点的坐标(x1,y1)和另一个端点的坐标(x2,y2)的连线来表示。当然还可以为每种元素再加上一些属性,如边框线的宽度、边框线是实线还是虚线、中间填充什么颜色等等。然后把这些元素的代数式和它们的属性作为文件存盘,就生成了所谓的矢量图(也叫向量图)。

矢量图形格式有很多,如Adobe Illustrator的*.AI、*.EPS和SVG、AutoCAD的*.dwg和dxf、Corel DRAW的*.cdr、windows标准图元文件*.wmf和增强型图元文件*.emf等等。当需要打开这种图形文件时,程序根据每个元素的代数式计算出这个元素的图形,并显示出来。

由于矢量图可以无限放大图形中的细节,而不用担心会造成失真和色块。因此,更好的比较不同图像之间的区别。

在将位图图像转换为矢量图像时,可以采用多种方法,比如采用CorelDRAW软件。

步骤S1023,将所述图像矢量数据与上一次视频聊天数据的图像矢量数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度。

在本实施例中,采用图像矢量数据来获取当前视频聊天数据与上一次视频聊天数据的相似度,提高了图像特征对比的准确性,同时还可以减少计算的复杂度。

相比现有技术,本发明实施例方案,在视频聊天时,对于第一客户端实时获取到的聊天图像与前一次图像做判断,对于聊天图像发生微小变化时,并不将此次采集到的视频聊天数据发送给第二客户端,这样可以提高视频聊天的流畅性,提高用户体验。

如图6示,提出本发明视频数据传输方法的第三实施例,本实施例方法基于上述图4所示的第一实施例,在本实施例中,上述步骤S102,将所述第一客户端的当前视频聊天数据与上一次视频聊天数据进行相似度对比,得到所述当前视频聊天数据与上一次视频聊天数据的相似度可以包括:

步骤S1024,将当前视频聊天的视频帧画面和上一次视频聊天的视频帧画面均划分若干区域;

步骤S1025,对两视频帧画面中对应的区域一一进行对比,采用预设的相似度算法计算得到当前视频聊天数据与上一次视频聊天数据的相似度。

具体地,将当前视频聊天的视频帧画面和上一次视频聊天的视频帧画面均划分若干区域,对两视频帧画面中对应的区域一一进行对比,采用预设的相似度算法,比如基于直方图距离的图像相似度计算算法、SIFT算法、SIM(Structural SIMilarity,结构相似性)算法等,计算得到当前视频聊天数据与上一次视频聊天数据的相似度。

此外,还可以对两视频帧画面中的每一像素值一一进行对比,采用预设的相似度算法计算得到当前视频聊天数据与上一次视频聊天数据的相似度。

相比现有技术,本发明实施例方案,在视频聊天时,对于第一客户端实时获取到的聊天图像与前一次图像做判断,对于聊天图像发生微小变化时,并不将此次采集到的视频聊天数据发送给第二客户端,这样可以提高视频聊天的流畅性,提高用户体验。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1