一种会议终端的图像处理方法及装置与流程

文档序号:11215491阅读:574来源:国知局
一种会议终端的图像处理方法及装置与流程

本发明涉及视频会议技术领域,具体涉及一种会议终端的图像处理方法及装置。



背景技术:

视频会议系统(videoconferencesystem,简称为vcs),包括软件视频会议系统和硬件视频会议系统,是指两个或两个以上不同地方的个人或群体,通过现有的各种电信通讯传输媒体,将人物的静、动态图像、语音、文字、图片等多种资料分送到各个用户的计算机上,使得在地理上分散的用户可以共聚一处,通过图形、声音等多种方式交流信息,增加双方对内容的理解能力。目前视频会议逐步向着多网协作、高清化、开发化的方向发展着。

现有技术中的视频会议系统包括多点控制器(multipointcontrolunit,简称为mcu)、会议室终端、pc桌面型终端、电话接入网关等几个部分。由于pc已经是办公的标准配置,桌面会议终端不需要增加很多的硬件投入,因此,pc桌面型终端已经成为各企业视频会议的一种优先考虑的选择。

现有技术中,基于局域网上的桌面视频会议的h.323协议的实时桌面双流采集技术,主要是运用在windows操作系统上进行桌面图像实时采集,编码发送给远端会议电视终端。

但是,由于现有技术中图像采集与播放方法在linux操作系统下不兼容,从而导致现有的实时桌面双流采集播放技术,无法在国产麒麟操作系统桌面平台上使用。



技术实现要素:

本发明要解决的技术问题在于克服现有技术中的实时桌面双流采集技术,无法在麒麟操作系统桌面平台下兼容的缺陷。

鉴于此,本发明提供本发明实施例提供了一种会议终端的图像处理方法及装置。

根据第一方面,本发明实施例提供一种会议终端的图像处理方法,所述会议终端采用麒麟操作系统,所述图像处理方法包括如下步骤:

调用麒麟操作系统中的xopendisplay函数,通过所述xopendisplay函数打开所述麒麟操作系统的图像窗口;

获取所述麒麟操作系统的图像窗口的配置参数;

调用所述麒麟操作系统中的xgetimage函数,通过所述xgetimage函数利用所述配置参数采集所述麒麟操作系统的图像窗口显示的屏幕图像;

对采集的所述麒麟操作系统的图像窗口显示的屏幕图像进行编码,并发送至其他会议终端。

可选地,还包括:

接收其他会议终端发送的视频图像,并对所述视频图像进行解码;

调用所述麒麟操作系统的sdl_init函数,通过sdl_init函数对解码后的视频码流进行初始化;

调用所述麒麟操作系统的sdl_setvideomode函数,通过所述sdl_setvideomode函数创建图像窗口;

对所述视频码流进行处理,以显示在创建的图像窗口上。

可选地,所述对采集的所述麒麟操作系统的图像窗口显示的屏幕图像进行编码,并发送至其他会议终端的步骤包括:

将所述麒麟操作系统的图像窗口显示的屏幕图像由第一格式转换成第二格式;

调用图像编码函数,对转换后的屏幕图像进行编码,将编码后的图像信息发送至其他会议终端。

可选地,所述第一格式为rgb格式,所述第二格式为yuv格式。

根据第二方面,本发明实施例还提供一种会议终端的图像处理装置,包括:

第一调用单元,用于调用麒麟操作系统中的xopendisplay函数,通过所述xopendisplay函数打开所述麒麟操作系统的图像窗口;

第一获取单元,用于获取所述麒麟操作系统的图像窗口的配置参数;

第二调用单元,用于调用所述麒麟操作系统中的xgetimage函数,通过所述xgetimage函数利用所述配置参数采集所述麒麟操作系统的图像窗口显示的屏幕图像;

编码单元,用于对采集的所述麒麟操作系统的窗口显示的屏幕图像进行编码,并发送至其他会议终端。

可选地,所述图像处理装置还包括:

解码单元,用于接收其他会议终端发送的视频图像,并对所述视频图像进行解码;

第三调用单元,用于调用所述麒麟操作系统的sdl_init函数,通过sdl_init函数对解码后的视频码流进行初始化;

第四调用单元,用于调用所述麒麟操作系统的sdl_setvideomode函数,通过所述sdl_setvideomode函数创建图像窗口;

处理单元,用于对所述视频码流进行处理,以显示在创建的图像窗口上。

可选地,所述编码单元包括:

转换单元,用于将所述麒麟操作系统的图像窗口显示的屏幕图像由第一格式转换成第二格式;

第五调用单元,用于调用图像编码函数,对转换后的屏幕图像进行编码,将编码后的图像信息发送至其他会议终端。

可选地,所述第一格式为rgb格式,所述第二格式为yuv格式。

根据第三方面,本发明实施例还提供一种会议终端,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行第一方面或者第一方面的任意一种可选方式中所述的图像处理方法。

根据第四方面,本发明实施例还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行第一方面或者第一方面的任意一种可选方式中所述的图像处理方法。

本发明技术方案,具有如下优点:

1.本发明提供的会议终端的图像处理方法,该会议终端采用麒麟操作系统,该图像处理方法首先调用麒麟操作系统中的xopendisplay函数,通过xopendisplay函数打开麒麟操作系统的图像窗口;其次,获取麒麟操作系统的图像窗口的配置参数;然后,调用麒麟操作系统中的xgetimage函数,通过xgetimage函数利用配置参数采集所述麒麟操作系统的图像窗口显示的屏幕图像;最后,对采集的麒麟操作系统的图像窗口显示的屏幕图像进行编码,并发送至其他会议终端。该图像处理方法,用于会议终端中,该方法通过调用麒麟操作系统中的xopendisplay函数打开麒麟操作系统图像窗口,然后通过调用麒麟操作系统中的xgetimage函数,采集麒麟操作系统的图像窗口显示的屏幕图像,最后将采集的屏幕图像编码并发送;该方法能够实现在原有的会议电视系统下,实现麒麟操作系统中屏幕图像的实时采集功能,而不影响原来会议的使用场景和操作方式,从而即能够实现原有会议电视系统与麒麟操作系统的兼容。

2.本发明提供的会议终端的图像处理方法,该方法还包括接收其他会议终端发送的视频图像,并对视频图像进行解码;调用麒麟操作系统的sdl_init函数,通过sdl_init函数对解码后的视频码流进行初始化;调用麒麟操作系统的sdl_setvideomode函数,通过sdl_setvideomode函数创建图像窗口;对视频码流进行处理,以显示在创建的图像窗口上。该方法通过调用麒麟操作系统的sdl_init函数对解码后的视频码流进行初始化,并且通过调用麒麟操作系统的sdl_setvideomode函数创建图像窗口,以显示处理后的视频码流;该方法能够在麒麟操作系统中实现图像的实时采集与播放,从而在不影响原来会议的使用场景和操作方式的情况下,实现麒麟操作系统与原有电视会议系统的兼容。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例1的会议终端的图像处理方法的流程图;

图2为本发明实施例2的会议终端的图像处理方法的流程图;

图3为本发明实施例3的会议终端的图像处理装置的结构示意图;

图4为本发明实施例4的会议终端的图像处理装置的播放功能的结构示意图;

图5为本发明实施例5的会议终端的结构示意图。

具体实施方式

下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本发明的描述中,需要说明的是,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。

实施例1

本实施例提供一种会议终端的图像处理方法,用于会议终端中。该会议终端采用麒麟操作系统,且需要具有图像采集和显示的功能。该会议终端可以是具备上述功能的智能手机、电脑、平板、智能电视等。该图像处理方法可应用于麒麟操作系统中,该方法的流程图如图1所示,该方法包括以下过程:

s11:调用麒麟操作系统中的xopendisplay函数,通过该函数打开麒麟操作系统的图像窗口。

会议终端通过调用麒麟操作系统中用于打开图像窗口的xopendisplay函数,实现在屏幕上显示麒麟操作系统的待采集图像窗口。其中,该xopendisplay函数预先设置在麒麟操作系统的源程序中,其作用为打开麒麟操作系统的图像窗口,其预留有程序接口,以便外界通过此接口调用该xopendisplay函数。

通过在麒麟操作系统的源程序中设置用于打开图像窗口的xopendisplay函数,从而使得会议终端能够基于该xopendisplay函数在麒麟操作系统中的打开待采集的图像窗口。

s12:获取麒麟操作系统的图像窗口的配置参数。

在会议终端,可以根据实际操作情况获取麒麟操作系统的图像窗口相应的显示器的配置参数信息,例如,显示器的配置参数信息可以是显示器的宽和高,颜色质量以及刷新速度。本实施例中,由于需要采集屏幕上显示的图像,因此需要获取该显示的分辨率,即显示器的宽度和高度上的像素点。

s13:调用麒麟操作系统中的xgetimage函数,通过该函数利用配置参数采集麒麟操作系统的图像窗口显示的屏幕图像。

会议终端的显示器上打开待采集图像窗口之后,该会议终端调用麒麟操作系统中用于采集屏幕图像的xgetimage函数,根据显示器的配置参数获取显示器中显示的屏幕图像。本实施例中,在采集屏幕图像时,根据屏幕的分辨率来得到屏幕图像。

其中,该xgetimage函数预先设置在麒麟操作系统的源程序中,其作用为采集麒麟操作系统的屏幕图像,其预留有程序接口,以便外界通过此接口调用该xgetimage函数。

通过在麒麟操作系统的源程序中设置用于采集屏幕图像的xgetimage函数,从而使得会议终端能够基于该xgetimage函数在麒麟操作系统中采集打开的待采集图像窗口的屏幕图像。

s14:对采集的麒麟操作系统的图像窗口显示的屏幕图像进行编码,并发送至其他会议终端。这里所述的其他会议终端可以是任意地可进行会议的终端,可以是采用windows系统的会议终端,也可以是采用麒麟系统的会议终端。

为了准确地描述颜色,引入了色彩空间的概念。正如几何上用坐标空间来描述坐标集合,色彩空间用数学方式来描述颜色集合。常见的3个基本色彩模型是rgb,cmyk和yuv。其中,rgb(red,green,blue)是计算机中最常见的色彩空间,它通过红、绿、蓝3基色的相加来产生其他的颜色,由于其设备的独立性,它被广泛应用于计算机图形、成像系统和彩色电视之中;cmyk(cyan,magenta,yellow,black)色彩空间,则是通过颜色相减来产生其他的颜色,实现方便,它被广泛应用于印刷工业;yuv或yiq或ycb-cr色彩空间则描述灰度和色差的概念,由于易于实现压缩,方便传输和处理,它被广泛应用于广播和电视系统。正是由于这一点,它也被广泛应用于计算机视频和图像处理之中,如jpeg图像和mpeg均使用yuv作为存储像素的格式。在获得显示硬件支持的情况下,使用yuv还可以减少和消除色彩变换处理,极大地加快图像的显示速度。

由于本实施例中,会议终端所采集的屏幕图像格式为rgb的格式的,因此,为了易于实现压缩,方便传输和处理,在将该屏幕图像编码发送之前,需要将该rgb格式的图像转换为yuv格式。

转换之后,图像采集终端首先调用图像编码函数,对转换后的屏幕图像进行编码,并将编码后的图像信息发送至其他会议终端,该其他会议终端可以为麒麟操作系统的,也可以为其他操作系统的,例如windows操作系统。本实施例中,图像编码选自但不限于哈夫曼编码,所有能够实现图像编码的方法均属于本发明的保护范围,例如,香农-范诺编码,行程编码,算术编码。

该图像处理方法,能够实现在原有的会议电视系统下,实现屏幕图像的实时采集功能,而不影响原来会议的使用场景和操作方式,即能够实现原有会议电视系统与麒麟操作系统的兼容。

实施例2

本实施例提供一种会议终端的图像处理方法,用于会议终端中。该会议终端采用麒麟操作系统,且需要具有图像采集和显示的功能。本实施例中的图像处理方法中的图像采集、编码与发送方法,请参照实施例1中的图像处理方法。

本实施例中的图像处理方法,如图2所示,还包括:

s21:接收其他会议终端发送的视频图像并进行解码。

本实施例中的采用麒麟操作系统的会议终端,首先,接收其他会议终端发送的视频会议,所述其他会议终端可以为麒麟操作系统的,也可以为其他操作系统的,例如,可以为windows操作系统的;然后,对接收的视频图像进行解码。本实施例中,图像解码选自但不限于哈夫曼解码,所有能够实现图像解码的方法均属于本发明的保护范围,例如,香农-范诺解码,行程解码,算术解码。

s22:调用麒麟操作系统的sdl_init函数,利用该函数对解码后的视频码流初始化。

会议终端通过调用麒麟操作系统中用于对视频码流初始化的sdl_init函数,通过对视频编码帧、视频码流初始化值、视频质量等参数的初始化为该视频码流的显示做好准备。其中,该sdl_init函数预先设置在麒麟操作系统的源程序中,其作用为对麒麟操作系统系统中的视频码流进行初始化,其预留有程序接口,以便外界通过此接口调用该sdl_init函数。

通过在麒麟操作系统的源程序中设置用于初始化视频码流的sdl_init函数,从而使得会议终端能够基于该sdl_init函数在麒麟操作系统中对解码后的视频码流的相关参数进行初始化,为该视频码流显示做好准备。

s23:调用麒麟操作系统的sdl_setvideomode函数,创建图像窗口。

在会议终端,可以根据实际操作情况获取麒麟操作系统的图像窗口相应的显示器的配置参数信息,例如,显示器的配置参数信息可以是显示器的宽和高,颜色质量以及刷新速度。本实施例中,由于需要采集屏幕上显示的图像,因此需要获取该显示的分辨率,即显示器的宽度和高度上的像素点。

会议终端通过调用麒麟操作系统中用于创建图像窗口的sdl_setvideomode函数,并根据获取的麒麟操作系统的图像窗口对应的显示器的分辨率,设置所创建图像窗口的宽和高,该函数创建的图像窗口默认为左右对分的两个小窗口。其中,该sdl_setvideomode函数预先设置在麒麟操作系统的源程序中,用于在麒麟操作系统中创建图像窗口,其预留有程序接口,以便外界通过此接口调用该sdl_setvideomode函数。

通过在麒麟操作系统的源程序中设置用于用于创建图像窗口的sdl_setvideomode函数,从而使得会议终端能够基于该sdl_setvideomode函数在麒麟操作系统中对图像窗口对应的显示器设置显示窗体的宽和高。

s24:对视频码流进行处理,以显示在创建的图像窗口上。

图像处理装置对解码后的视频码流进行处理,以显示在创建的图像窗口上。对视频码流进行处理的方法包括通过调用麒麟操作系统的sdl_createthread函数,该sdl_createthread函数用于在麒麟操作系统中创建第一线程和第二线程。

通过第一线程对视频码流进行格式转换,并控制创建的图像窗口进行显示,即对解码后的yuv格式的图像进行转换,本实施例中,转换后的图像选自但不限于rgb格式的,所有能够实现本发明目的的图像格式均属于本发明的保护范围;通过第二线程接收用户输入的控制命令。本实施例中,在sdl_setvideomode函数创建的图像窗体的基础上,通过第一线程对图像窗体进行控制,使得该窗体左边小窗口显示本端会议电视终端视频图像,窗体右边小窗口显示接收解码的远端会议电视终端的视频图像。

通过第二线程接收用户输入的控制指令,本实施例中的第二线程用于循环控制接收消息进行窗体的放大或缩小,以及响应鼠标指令。

通过调用麒麟操作系统的sdl_createthread函数,实现视频码流的处理,以显示在创建的图像窗口上。在麒麟操作系统的图像窗口既能够实现本端会议电视终端的视频图像,又能够实现远端会议电视终端的视频图像。

本实施例中的会议终端的图像处理方法,能够在麒麟操作系统中实现图像的实时采集与播放,从而在不影响原来会议的使用场景和操作方式的情况下,实现麒麟操作系统与原有电视会议系统的兼容。

需要说明的是,由于上述步骤s21-s24属于图像播放,而步骤s11-s14属于图像采集,二者并不冲突,因此上述步骤s21-s24可以是在图1所示的步骤s11-s14任意步骤之前或者之后执行,也可以同时执行。

实施例3

本实施例提供一种会议终端的图像处理装置,用于执行实施例1中的会议终端的图像处理方法,该会议终端的图像处理装置采用麒麟操作系统,结构框图如图3所示,包括:

第一调用单元31,用于调用麒麟操作系统中的xopendisplay函数,通过xopendisplay函数打开麒麟操作系统的图像窗口;

第一获取单元32,用于获取麒麟操作系统的图像窗口的配置参数;

第二调用单元33,用于调用麒麟操作系统中的xgetimage函数,通过所述xgetimage函数利用所述配置参数采集所述麒麟操作系统的图像窗口显示的屏幕图像;

编码单元34,用于对采集的麒麟操作系统的窗口显示的屏幕图像进行编码,并发送至其他会议终端。

其中,编码单元34包括:

转换单元341,用于将麒麟操作系统的图像窗口显示的屏幕图像由第一格式转换成第二格式;

第五调用单元342,用于图像编码函数,以对转换后的屏幕图像进行编码,将编码后的图像信息发送至其他会议终端。

优选地,第一格式为rgb格式,第二格式为yuv格式。

进一步地,配置参数为显示器的分辨率,即显示器的宽度和高度上的像素点。

未在本实施例中详尽描述的技术细节,具体可参见如图1所示的实施例中的相关描述。

实施例4

本实施例的会议终端的图像处理装置,用于执行实施例2中所述的会议终端的图像处理方法,该会议终端的图像处理装置采用麒麟操作系统。该会议终端的图像处理装置中执行实施例1中所述的会议终端的图像处理方法的装置,请参照图3所述的实施例。该会议终端的图像处理装置的播放功能的结构示意图如图4所示,该装置包括:

解码单元41,用于接收接收其他会议终端发送的视频图像,本实施例中的其他会议终端可以为麒麟操作系统的,也可以为其他操作系统的,例如,可以为windows操作系统;并视频图像进行解码,本实施例中,图像解码选自但不限于哈夫曼解码,所有能够实现图像解码的方法均属于本发明的保护范围,例如,香农-范诺解码,行程解码,算术解码。

第三调用单元42,用于调用麒麟操作系统的sdl_init函数来实现对解码后的视频码流进行初始化。

第四调用单元43,用于调用麒麟操作系统的sdl_setvideomode函数,来创建图像窗口。

处理单元44,用于对视频码流进行处理,以显示在创建的图像窗口上

未在本实施例中详尽描述的技术细节,具体可参见如图3所示的实施例中的相关描述。

实施例5

图5是本发明实施例提供的会议终端的硬件结构示意图,该会议终端采用麒麟操作系统,如图5所示,该设备包括一个或多个处理器51以及存储器52,图3中以一个处理器51为例。

会议终端还可以包括:视频采集器(未示出),用于采集视频或图像。处理器51、存储器52和视频播放器可以通过总线或者其他方式连接,图3中以通过总线连接为例。

处理器51可以为中央处理器。处理器51还可以为其他通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器52作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本申请实施例中的会议终端的图像处理操作的处理方法对应的程序指令/模块。处理器51通过运行存储在存储器52中的非暂态软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述实施例中,会议终端的图像处理方法。

所述一个或者多个模块存储在所述存储器52中,当被所述一个或者多个处理器51执行时,执行如图1或2所示的会议终端的图像处理方法。

上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,具体可参见如图1或2所示的实施例中的相关描述。

本领域技术人员应该明白,本发明的实施例可提供为方法、装置或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-ram、光学存储器等)上实施的计算机程序产品的形式。

显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

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