著录项信息
专利名称 | 一种获取图像的方法、装置 |
申请号 | CN201210397363.4 | 申请日期 | 2012-10-18 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2014-05-07 | 公开/公告号 | CN103777852A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F3/0484 | IPC分类号 | G;0;6;F;3;/;0;4;8;4查看分类表>
|
申请人 | 腾讯科技(深圳)有限公司 | 申请人地址 | 广东省深圳市福田区振兴路赛格科技园2栋东403室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 腾讯科技(深圳)有限公司 | 当前权利人 | 腾讯科技(深圳)有限公司 |
发明人 | 李诚;郑晖 |
代理机构 | 广州三环专利商标代理有限公司 | 代理人 | 郝传鑫 |
摘要
本发明适用于图像处理领域,提供了一种获取图像的方法、装置,该方法包括:接收输入的手势操作信息,所述操作信息作用在摄像头获取的图像上;根据所述手势操作信息获取图像的滤镜参数;根据所述滤镜参数,在所述摄像头获取的图像上执行所述滤镜参数对应的滤镜效果;将执行所述滤镜效果的图像在输出设备进行实时显示。本发明实施例可以通过手势操作指令执行的滤镜操作,在实现丰富的滤镜效果的同时,也能够实时的操控滤镜变换效果。
1.一种获取图像的方法,其特征在于,所述方法包括下述步骤:
接收输入的手势操作信息,所述操作信息作用在摄像头获取的图像上;
根据所述手势操作信息获取图像的滤镜参数;
根据所述滤镜参数,在所述摄像头获取的图像上执行所述滤镜参数对应的滤镜效果;
通过置于OpenGL管道流程的shader着色器对图片中的像素并行进行变换处理以实现滤镜的实时渲染,并将执行所述滤镜效果的图像在输出设备进行实时显示;
在不同的滤镜模式下,不同手势对应不同的滤镜命令,滤镜参数根据手势操作信息的操作幅度值和手势操作类型获取,所述滤镜参数包括滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种,以及滤镜类型;在接收输入设备输入的手势操作信息后,若处于预置的滤镜模式下,则根据所述手势选择滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种;若未处于预置的滤镜模式下,则根据所述手势选择滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种,以及滤镜类型;
所述滤镜参数包括滤镜坐标信息,所述滤镜参数对应的滤镜效果在所述图像对应的滤镜坐标信息上执行;所述滤镜坐标信息根据所述手势操作信息在所述图像的位置获取;
在不同手势操作下,输入不同指令或者指令相同,但顺序不同,得到效果不同的画面。
2.根据权利要求1所述的方法,其特征在于,所述手势操作信息包括滑动指令、拉伸指令、旋转指令、单击指令、双击指令的至少其中之一。
3.一种图片处理的方法,其特征在于,所述方法包括下述步骤:
接收输入的手势操作信息,所述操作信息作用在被处理的图片上;
根据所述手势操作信息获取图片的滤镜参数;
根据所述滤镜参数,在所述被处理的图片上执行滤镜参数对应的滤镜效果;
通过置于OpenGL管道流程的shader着色器对图片中的像素并行进行变换处理以实现滤镜的实时渲染,并将执行所述滤镜效果的图片显示输出;
在不同的滤镜模式下,不同手势对应不同的滤镜命令,滤镜参数根据手势操作信息的操作幅度值和手势操作类型获取,所述滤镜参数包括滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种,以及滤镜类型;在接收输入设备输入的手势操作信息后,若处于预置的滤镜模式下,则根据所述手势选择滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种;若未处于预置的滤镜模式下,则根据所述手势选择滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种,以及滤镜类型;
所述滤镜参数包括滤镜坐标信息,所述滤镜参数对应的滤镜效果在所述图片对应的滤镜坐标信息上执行;所述滤镜坐标信息根据所述手势操作信息在所述图片的位置获取;
在不同手势操作下,输入不同指令或者指令相同,但顺序不同,得到效果不同的画面。
4.根据权利要求3所述的方法,其特征在于,所述手势操作信息包括滑动指令、拉伸指令、旋转指令、单击指令、双击指令的至少其中之一。
5.一种获取图像的装置,其特征在于,所述装置包括:
接收单元:用于接收输入的手势操作信息,所述操作信息作用在摄像头获取的图像上;
获取单元:用于根据所述手势操作信息获取图像的滤镜参数;
执行单元:用于根据所述滤镜参数,在所述摄像头获取的图像上执行所述滤镜参数对应的滤镜效果;
输出单元:用于通过置于OpenGL管道流程的shader着色器对图片中的像素并行进行变换处理以实现滤镜的实时渲染,并将执行所述滤镜效果的图像在输出设备进行实时显示;
所述装置还用于在不同的滤镜模式下,不同手势对应不同的滤镜命令,滤镜参数根据手势操作信息的操作幅度值和手势操作类型获取,所述滤镜参数包括滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种,以及滤镜类型;在接收输入设备输入的手势操作信息后,若处于预置的滤镜模式下,则根据所述手势选择滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种;若未处于预置的滤镜模式下,则根据所述手势选择滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种,以及滤镜类型;
所述滤镜参数包括滤镜坐标信息,所述滤镜参数对应的滤镜效果在所述图像对应的滤镜坐标信息上执行;所述滤镜坐标信息根据所述手势操作信息在所述图像的位置获取;
在不同手势操作下,输入不同指令或者指令相同,但顺序不同,得到效果不同的画面。
6.根据权利要求5所述的装置,其特征在于,所述手势操作信息包括滑动指令、拉伸指令、旋转指令、单击指令、双击指令的至少其中之一。
7.一种图片处理的装置,其特征在于,所述装置包括:
接收模块:用于接收输入的手势操作信息,所述操作信息作用在被处理的图片上;
获取模块:用于根据所述手势操作信息获取图片的滤镜参数;
执行模块:用于根据所述滤镜参数,在所述被处理的图片上执行滤镜参数对应的滤镜效果;
输出模块:用于通过置于OpenGL管道流程的shader着色器对图片中的像素并行进行变换处理以实现滤镜的实时渲染,并将执行所述滤镜效果的图片显示输出;
所述装置还用于在不同的滤镜模式下,不同手势对应不同的滤镜命令,滤镜参数根据手势操作信息的操作幅度值和手势操作类型获取,所述滤镜参数包括滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种,以及滤镜类型;在接收输入设备输入的手势操作信息后,若处于预置的滤镜模式下,则根据所述手势选择滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种;若未处于预置的滤镜模式下,则根据所述手势选择滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种,以及滤镜类型;
所述滤镜参数包括滤镜坐标信息,所述滤镜参数对应的滤镜效果在所述图片对应的滤镜坐标信息上执行;所述滤镜坐标信息根据所述手势操作信息在所述图片的位置获取;
在不同手势操作下,输入不同指令或者指令相同,但顺序不同,得到效果不同的画面。
8.根据权利要求7所述的装置,其特征在于,所述手势操作信息包括滑动指令、拉伸指令、旋转指令、单击指令、双击指令的至少其中之一。
一种获取图像的方法、装置\n技术领域\n[0001] 本发明属于视频处理领域,尤其涉及一种可实时滤镜效果的获取图像的方法、装置。\n背景技术\n[0002] 滤镜是一种可以快速修改美化用户所拍摄的照片的图像处理技术,在目前的移动终端或者计算机中,为实现各种不同的画面效果,在移动终端或者计算机中出现了相应的应用程序,通过提供一系列设定好的滤镜,系统可以选择相应的滤镜来察看在该滤镜下视频图像相应的效果。这种滤镜与视频相结合的方式,较好的达到了对视频进行实时滤镜处理的效果,而且系统可以根据预先设定的不同的滤镜生成不同的效果,实现摄像头采集图像效果的多样化。\n[0003] 但是,这种将滤镜直接应用于实时画面处理时,由于滤镜已事先设定好,系统所展现的滤镜效果受到系统存储的滤镜样式和个数的限制,使得滤镜的效果固定化,滤镜功能比较单一。同时,由于通常是在照片拍摄完成以后再叠加滤镜效果,因此用户不能在照片完成之前就对叠加滤镜效果的照片做出预览。\n发明内容\n[0004] 本发明实施例的目的在于提供一种可实时滤镜的获取图像的方法,旨在解决现有技术中系统所展现的滤镜效果受到系统存储的滤镜样式和个数的限制,使得滤镜的效果固定化,滤镜功能比较单一的问题,同时也实现拍照过程中滤镜效果的实时预览。\n[0005] 本发明实施例是这样实现的,一种获取图像的方法,所述方法包括下述步骤:\n[0006] 接收输入的手势操作信息,所述操作信息作用在摄像头获取的图像上;\n[0007] 根据所述手势操作信息获取图像的滤镜参数;\n[0008] 根据所述滤镜参数,在所述摄像头获取的图像上执行所述滤镜参数对应的滤镜效果;\n[0009] 将执行所述滤镜效果的图像在输出设备进行实时显示。\n[0010] 本发明实施例的另一目的在于提供一种图片处理的方法,所述方法包括下述步骤:\n[0011] 接收输入的手势操作信息,所述操作信息作用在被处理的图片上;\n[0012] 根据所述手势操作信息获取图片的滤镜参数;\n[0013] 根据所述滤镜参数,在所述被处理的图片上执行滤镜参数对应的滤镜效果;\n[0014] 将执行所述滤镜效果的图片显示输出。\n[0015] 本发明实施例的另一目的在于提供一种获取图像的装置,所述装置包括:\n[0016] 接收单元:用于接收输入的手势操作信息,所述操作信息作用在摄像头获取的图像上;\n[0017] 获取单元:用于根据所述手势操作信息获取图像的滤镜参数;\n[0018] 执行单元:用于根据所述滤镜参数,在所述摄像头获取的图像上执行所述滤镜参数对应的滤镜效果;\n[0019] 输出单元:用于将执行所述滤镜效果的图像在输出设备进行实时显示。\n[0020] 本发明实施例的另一目的在于提供一种图片处理装置,所述装置包括:\n[0021] 接收模块:用于接收输入的手势操作信息,所述操作信息作用在被处理的图片上;\n[0022] 获取模块:用于根据所述手势操作信息获取图片的滤镜参数;\n[0023] 执行模块:用于根据所述滤镜参数,在所述被处理的图片上执行滤镜参数对应的滤镜效果;\n[0024] 输出模块:用于将执行所述滤镜效果的图片显示输出。\n[0025] 在本发明实施例中,根据接收的作用于摄像头上获取的图像上的手势操作信息,根据其获取得到包括滤镜坐标信息的滤镜参数,在摄像头上获取的图像的滤镜坐标信息的位置执行滤镜参数获得所述图像的滤镜效果。并将执行完滤镜操作的图像在输出设备进行实时显示。与现有技术相比,本发明实施例可以通过操作手势在摄像头获取的图像的位置结合执行手势操作对应的滤镜参数实时获取滤镜变换,也可以根据预先操作获取滤镜类型后在手势操作位置实时执行相应滤镜,也可以根据操作手势在任意位置实时执行手势操作对应的滤镜变换。在用户获取图像的同时对图像进行实时滤镜处理,从而不仅丰富了图像滤镜的交互方式,而且使得各种丰富滤镜效果对用户来说是可预览化地实时操控的。\n附图说明\n[0026] 图1是本发明第一实施例提供的获取图像的方法的实现流程图;\n[0027] 图2a、2b、2c为本发明第一实施例提供的通过旋转和滑动手势调整漩涡滤镜的效果示意图;\n[0028] 图3a、3b、3c为本发明第一实施例提供的通过旋转和缩放手势调整漩涡滤镜的效果示意图;\n[0029] 图4是本发明第二实施例提供的获取图像的方法的实现流程图;\n[0030] 图5a、5b为本发明第二实施例提供的通过缩放手势调整鱼眼滤镜的效果示意图;\n[0031] 图6a、6b、6c为本发明第二实施例提供的通过平衡手势控制滤色滤镜的颜色值的效果示意图;\n[0032] 图7a、7b为本发明第二实施例提供的利用平移手势改变色彩的效果示意图;\n[0033] 图8是本发明第二实施例提供的获取图像的OpenGL ES2.0的图形系统结构示意图;\n[0034] 图9为本发明第二实施例提供的通过软硬件结合实现的实时渲染示意图;\n[0035] 图10为本发明第三实施例提供的图片处理的流程示意图\n[0036] 图11为本发明第四实施例提供的获取图像的装置的结构框图;\n[0037] 图12是本发明第五实施例提供的图片处理的装置的结构框图。\n具体实施方式\n[0038] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。\n[0039] 在本发明实施例中,改变传统的设置几个滤镜模式来实现对图像进行滤镜处理的方式,在接收输入的操作信息,结合操作信息在图像上的坐标信息得到的滤镜参数执行滤镜操作,实现更进一步、更具体和丰富的滤镜效果。\n[0040] 实施例一:\n[0041] 图1示出了本发明实施例所述获取图像的方法实现流程,详述如下:\n[0042] 在步骤S101中,接收输入的手势操作信息,所述操作信息作用在摄像头获取的图像上。\n[0043] 具体的,在接收输入设备输入的手势操作信息,可以是处于预置的滤镜模式下,也可以由输入的手势操作信息确定所执行的滤镜的类型。当采用手势携带滤镜类型时,可以设定某些特定的手势,如旋转手势对应漩涡滤镜等。所述预置的滤镜模式可以为系统直接设定的某种滤镜,如鱼眼滤镜、滤色滤镜、漩涡滤镜等。因此,在该设置的滤镜模式下,由输入设备输入手势操作信息,该操作信息与图像的坐标信息相结合,其可以采用触摸屏的输入设备,由触摸手势输入操作信息,如滑动指令、拉伸指令、旋转指令、单击或双击指令,相对于其它输入设备,如键盘、鼠标、轨迹球等,触摸屏的手势指令更为丰富,对于移动终端设备,如手机、PAD等设备,使用触摸手势实现操作信息的输入,相对更为灵活方便。对于键盘或者鼠标或者轨迹球实现操作信息的输入时,可以在摄像头获取的画面上设定鼠标指示,由鼠标、轨迹球等输入设备可以实现拖动、单击、双击、右击、旋转等指令的输入,相对于键盘或者轨迹球,使用鼠标实现上述操作较为便利。\n[0044] 使用触摸输入设备时,手指触摸的位置即为输入的滤镜坐标信息。使用鼠标或者键盘、轨迹球时,所输入的坐标信息即为在摄像头画面上,指针在执行相应操作信息时对应的坐标位置。\n[0045] 在步骤S102中,根据所述手势操作信息计算图像的滤镜参数。\n[0046] 在步骤S103中,根据所述滤镜参数,在所述摄像头获取的图像上的所述滤镜坐标信息相应的位置执行滤镜参数获取所述图像的滤镜效果。\n[0047] 具体的,对于触摸屏输入设备,根据步骤S101中接收的手势操作信息,根据触摸手势所对应的滤镜参数,在操作信息中包含的图像的坐标位置处执行相应的滤镜操作,得到相应滤镜效果的图像。\n[0048] 所述滤镜参数除了可以包括滤镜类型外,还可以包括滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种。在默认的滤镜模式下,所述根据手势操作得到的滤镜参数就可以不包括滤镜类型,而直接根据默认的滤镜模式得到滤镜的其它参数信息,如强度、大小等。\n[0049] 所述滤镜参数可以包括滤镜坐标信息,所述滤镜参数对应的滤镜效果在所述图像对应的滤镜坐标信息上执行。这样可以根据执行手势操作时在具体的图像位置处执行滤镜效果。\n[0050] 其中,滤镜参数可以根据所述手势操作信息的操作幅度值和/或手势操作类型获取。如根据手势操作信息的拉伸长度或者缩放的大小对应相应的变换滤镜参数,或者根据操作类型如缩放、平滑、拉伸等类型对应相应的滤镜参数。\n[0051] 所述滤镜坐标信息可以根据所述手势操作信息在所述图像的位置获取,以灵活的获取需要进行变换的滤镜效果的位置,也可以设定为固定的几个位置,在此不作限定。\n[0052] 如图2a为在正常模式下的图像画面,图2b为在旋涡滤镜模式下,执行了拉伸命令后的画面效果,使画面中执行拉伸命令的部位,图中示意的漩涡部分进行了放大,因此,该拉伸滤镜效果所执行的图像仅为该图像接收指令所对应的坐标处,图2c为在在旋涡滤镜模式下,执行了拉伸命令后的,接着又执行了滑动命令后的效果,将图2b所执行了拉伸命令后的图像作了移动操作的画面。\n[0053] 图3a、图3b、图3c所示为通过旋转和缩放手势改变漩涡滤特效的强度和大小的示意图。图3a为执行漩涡滤镜的图像,通过输入旋转手势,可以改变图3a图像的漩涡滤镜的强度,所改变强度的位置为手势操作的位置,得到如图3b所示效果图,通过执行拉伸手势操作,在图3b的基础上得到图3c述示效果,将图3b的漩涡部分进行了放大。\n[0054] 因此,从该示例可以看出,本发明实施例中的滤镜效果,可以根据输入的指令灵活改变,不必拘泥于所给出的滤镜模式,对于同一个画面,由不同的使用者,输入不同指令或者指令相同,但顺序不同,也会得到诸多效果不同的画面,当然,本领域技术人员可以知道的是,与滑动指令、旋转指令相对应的,其它的触摸指令也可以定义相应的滤镜命令,对于在不同的滤镜模式下,对应不同的滤镜命令,另外,对于非触摸屏所输入的操作信息,也可以灵活进行定义,同样可以使滤镜的效果更加多样化,得到不同的滤镜画面效果。\n[0055] 在步骤S104中,将执行所述滤镜效果的图像在输出设备进行实时显示。\n[0056] 根据步骤S103执行了所述滤镜效果的图像,可以为执行多个滤镜指令后的图像,通过显示屏进行显示,如上述步骤中所举的触摸屏等,如现在的智能手机、平板电脑等,都可以方便的使用触摸手势输入,触摸屏输出图像画面。当然也可以用于其它诸如台式电脑等设备,在此对设备仅为举例说明,并不能以此局限于本发明仅能应用于上述具体设备,但凡有摄像头进行画面呈现的其它设备,均可以应用本发明所述的获取图像的方法。\n[0057] 在本实施例中,通过接收包括图面坐标的操作信息,在预置的滤镜模式下执行不同的滤镜效果,使操作更加多样化,滤镜的变换方式更加丰富,得到经过滤镜效果处理后的画面也更加丰富。\n[0058] 实施例二:\n[0059] 图4示出了本发明实施例所述获取图像的方法实现流程,详述如下:\n[0060] 在步骤S401中,接收输入的操作信息,根据预置的滤镜模式,选择与所述操作信息对应的滤镜类型。\n[0061] 具体的,由于在某种滤镜下,所执行的操作,如对于触摸屏的滑动指令、拉伸指令、旋转指令等,其有相应的滤镜操作与之对应,因此,为区分在不同的滤镜下所执行的相应的滤镜效果,可以由系统预先设定相应的滤镜模式下与之对应的操作。作为灵活性考虑,也可以由用户自己设定相应的指令,如可由用户设定一些喜欢用的指令代表常用的命令。\n[0062] 随着设计理念的不断深化,现在的滤镜的类型也越来越多,因此,可以选择一些常用的滤镜作为预置的滤镜模式,如上面提到的颜色滤镜、鱼眼滤镜等。因此,选用多种滤镜模式,可进一步扩充对画面进行处理得到的效果的多样性。\n[0063] 在步骤S402中,接收输入的手势操作信息,所述操作信息作用在摄像头获取的图像上。\n[0064] 在步骤S403中,根据所述手势操作信息计算图像的滤镜参数。\n[0065] 由于本实施例中在步骤S401选择有滤镜类型,因此,步骤S403中根据手势操作信息计算图像的滤镜参数可以不用包括滤镜类型,而直接以步骤S401中选择的滤镜类型执行其它滤镜参数。\n[0066] 在步骤S404中,根据所述滤镜参数,在所述摄像头获取的图像上执行所述滤镜参数对应的滤镜效果。\n[0067] 所述滤镜参数除了可以包括滤镜类型外,还可以包括滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或者多种。在默认的滤镜模式下,所述根据手势操作得到的滤镜参数就可以不包括滤镜类型,而直接根据默认的滤镜模式得到滤镜的其它参数信息,如强度、大小等。\n[0068] 所述滤镜参数可以包括滤镜坐标信息,所述滤镜参数对应的滤镜效果在所述图像对应的滤镜坐标信息上执行。这样可以根据执行手势操作时在具体的图像位置处执行滤镜效果。\n[0069] 其中,滤镜参数可以根据所述手势操作信息的操作幅度值和/或手势操作类型获取。如根据手势操作信息的拉伸长度或者缩放的大小对应相应的变换滤镜参数,或者根据操作类型如缩放、平滑、拉伸等类型对应相应的滤镜参数。\n[0070] 所述滤镜坐标信息可以根据所述手势操作信息在所述图像的位置获取,以灵活的获取需要进行变换的滤镜效果的位置,也可以设定为固定的几个位置,在此不作限定。\n[0071] 在此步骤中,可以先选择的滤镜类型,选择存储的该滤镜类型的操作信息所对应的滤镜指令类型;根据所述滤镜指令类型及操作指令在图像上的坐标信息,在所述图像上执行相应的滤镜效果。此种执行示例在实施例一中已有介绍。\n[0072] 作为进一步可扩充的实施方式,在在选择滤镜指令类型后,根据操作信息的操作幅度值,计算所述滤镜指令类型所需要执行的滤镜参数。如对于触摸屏的滑动操作,根据滑动的距离的大小,选择所执行的滤镜指令,如拖动执行指令所在坐标位置的画面的距离或者其它指令等,使幅度信息与滤镜指令相对应,由操作幅度值改变滤镜的相关参数,从而进一步提高调节的多样性与画面生成的丰富性。\n[0073] 下面结合图片举例说明在鱼眼滤镜模式下,由触摸屏输入操作信息的效果,在图\n5a所示为没有执行滤镜操作的正常画面,画面中呈现的QQ公仔的大小与实际相符,图5b为执行了鱼眼滤镜的效果图,使用缩放指令可以对鱼眼滤镜的扭曲程度进行调节,根据不同的缩放程度,执行相应参数级别的鱼眼滤镜效果。如对于轻微的缩放,在相应执行绽放部位的坐标执行轻微的扭曲等。\n[0074] 图6a、6b、6c为通过平移手势控制滤色滤镜过滤的颜色值,滤镜根据手势展开对应的颜色区间,将其它的过滤并进行灰度处理的示意图,通过滑动手势,在图6a、6b、6c图中的三个物品的颜色轮流显示,将不显示的物品和其它图像作灰度处理。\n[0075] 图7a、7b为通过平移手势改变滤镜色彩的示意图,在图7a的基础上滑动手势,使图\n7a中的色块作相应的改变,从而调整画面的颜色显示,从而实现华盛滤镜的滤镜效果。\n[0076] 在步骤S405中,将执行所述滤镜效果的图像在输出设备进行实时显示。\n[0077] 上述得到的滤镜效果的图像,可以为执行多个滤镜指令后的图像,通过显示屏进行显示,如上述步骤中所举的触摸屏等,如现在的智能手机、平板电脑等,都可以方便的使用触摸手势输入,触摸屏输出图像画面。当然也可以用于其它诸如台式电脑等设备,在此对设备仅为举例说明,并不能以此局限于本发明仅能应用于上述具体设备,但凡有摄像头进行画面呈现的其它设备,均可以应用本发明所述的获取图像的方法。\n[0078] 另外,为保护效果的逼真,本发明实施例所述输出的画面为实时的输出画面,在执行了相应的滤镜效果后即得相应的滤镜效果,相应的采用了OpenGL ES技术将图象处理工作交予GPU进行。图形系统采用特有的管道(Pipeline)机制来运算处理图像数据,对像素点的处理为并行进行,大大提升了效率,OpenGL ES2.0允许提供编程来控制管道中一些重要的工序,其中包括shader着色器。着色器包含了允许在顶点上进行一般操作的顶点着色器,以及允许在片段上进行一般操作的片段着色器。我们利用着色器这一环节来编写shader程序运用图片处理算法来实时处理图像数据,并将结果输出,达到实时渲染所见所得的滤镜效果。\n[0079] 我们一般摄拍照应用都是采用先拍照后选择的滤镜处理流程,对拍照后取得的图片每个像素点数据和滤镜图片对照表进行运算,并最终展示,整个流程全依赖与终端CPU进行计算,处理效率非常低。\n[0080] 本发明实施中,我们将以上大部分工作通过OpenGL ES2.0图形系统来处理实现,如图8所示,大部分图形系统都可以比作工厂中的装配线(Assemble line)或者称为管道(Pipeline)。前一道的输出作为下道工序的输入。主CPU发出一个绘图指令,然后可能由硬件部件完成坐标变换,裁剪,添加颜色或是材质,最后在屏幕上显示出来。OpenGL ES2.0允许提供编程来控制管道中一些重要的工序,其中包括shader着色器。着色器包含了允许在顶点上进行一般操作的顶点着色器,以及允许在片段(即最终像素)上进行一般操作的片段着色器。\n[0081] 我们将滤镜消耗资源时间最大的处理工序交予OpenGL完成,我们在着色器里创建并编写shader着色程序,如图9所示,OpenGL编译着色shader并链接到程序program上。原程序获取图像数据,通过置于OpenGL管道流程的shader着色器对图片每个像素来进行变换处理,整个过程是并行的,用shader语言来编程处理变换,依赖终端GPU来进行运算,大大提高了处理效率,实现了滤镜的实时渲染,真正达到了所见所得的效果。\n[0082] 本实施例可以预先设置多个滤镜模式,可以进一步提高图像变换的多样性,另外,根据输入的操作信息的幅度值,相应的改变滤镜参数,使得本发明实施例的画面滤镜效果更加多样化。\n[0083] 实施例三:\n[0084] 图10为本发明实施例三所述图片处理的流程示意图,详述如下:\n[0085] 在步骤S1001中,接收输入的手势操作信息,所述操作信息作用在被处理的图片上。\n[0086] 在步骤S1002中,根据所述手势操作信息计算图像的滤镜参数。\n[0087] 在步骤S1003中,根据所述滤镜参数,在所述被处理的图片上执行滤镜参数对应的滤镜效果。\n[0088] 其中,所述滤镜参数可以包括滤镜坐标信息,所述滤镜参数对应的滤镜效果在所述图片对应的滤镜坐标信息上执行。\n[0089] 所述滤镜参数包括以下各项的至少其中之一:滤镜类型、滤镜强度、滤镜颜色、滤镜大小、滤镜透明度。\n[0090] 其中优选的方式,根据所述手势操作信息的操作幅度值和/或手势操作类型获取所述滤镜参数;根据所述手势操作信息在所述图像的位置获取所述滤镜坐标信息。所述手势操作信息包括滑动指令、拉伸指令、旋转指令、单击指令、双击指令的至少其中之一。\n[0091] 在步骤S1004中,将执行所述滤镜效果的图片显示输出。\n[0092] 作为另一种实施方式,在所述接收输入的手势操作信息步骤之前,还包括:\n[0093] 接收输入的操作信息,根据预置的滤镜模式,选择与所述操作信息对应的滤镜类型。这样可以更为灵活的设置滤镜变换的效果。\n[0094] 本发明实施例中所述步骤与实施例一的处理过程基本相同,区别之处在于本实施例所处理的对象为图片,处理完后将图片输出显示或者保存,而实施例一为将视频得到的图片进行处理实时显示。\n[0095] 实施例四:\n[0096] 图11示出了本发明实施例所述获取图像的装置结构示意图,详述如下:\n[0097] 本发明实施例所述获取图像的装置包括接收单元1101、获取单元1102、执行单元\n1103、输出单元1104,其中:\n[0098] 接收单元1101:用于接收输入的手势操作信息,所述操作信息作用在摄像头获取的图像上;\n[0099] 获取单元1102:用于根据所述手势操作信息获取图像的滤镜参数;\n[0100] 执行单元1103:用于根据所述滤镜参数,在所述摄像头获取的图像上执行所述滤镜参数对应的滤镜效果;\n[0101] 输出单元1104:用于将执行所述滤镜效果的图像在输出设备进行实时显示。\n[0102] 接收单元1101接收到作用于摄像头获取的图像上的手势操作信息后,由获取单元\n1102获取滤镜参数,所述所述滤镜参数包括滤镜坐标信息,所述滤镜参数对应的滤镜效果在所述图像对应的滤镜坐标信息上执行。\n[0103] 滤镜参数还可以包括滤镜类型、滤镜强度、滤镜颜色、滤镜大小、滤镜透明度中的一种或多种,所述手势操作信息包括滑动指令、拉伸指令、旋转指令、单击指令、双击指令中的一种或多种。由获取单元1003根据滤镜参数获取在图像的滤镜位置处执行滤镜参数的图像,并实时输出,可以更好的实现对摄像头采集的图像的实时多样化的显示。其获取可根据手势操作信息的操作幅度值和/或手势操作类型,\n[0104] 作为本发明实施例进一步优化的,还可以包括滤镜选择单元1105,用于接收输入的操作信息,根据预置的滤镜模式,选择与所述操作信息对应的滤镜类型。这样可以用户灵活选择滤镜模式,实现更多的滤镜变换效果。\n[0105] 上述装置与实施例一和二中的方法相对应,在此不作重复赘述。\n[0106] 实施例五:\n[0107] 图12示出了本发明实施例所述获取图像的方法实现流程,详述如下:\n[0108] 本发明实施例所述获取图像的装置包括接收模块1201、获取模块1202、执行模块\n1203、输出模块1204。\n[0109] 其中,所述接收模块1201:用于接收输入的手势操作信息,所述操作信息作用在被处理的图片上。\n[0110] 获取模块1202:用于根据所述手势操作信息获取图片的滤镜参数。\n[0111] 执行模块1203:用于根据所述滤镜参数,在所述被处理的图片上执行滤镜参数对应的滤镜效果。\n[0112] 输出模块1204:用于将执行所述滤镜效果的图片显示输出。\n[0113] 其中,所述滤镜参数包括滤镜坐标信息,所述滤镜参数对应的滤镜效果可以在所述图片对应的滤镜坐标信息上执行。所述滤镜参数包括以下各项的至少其中之一:滤镜类型、滤镜强度、滤镜颜色、滤镜大小、滤镜透明度。所述滤镜参数根据所述手势操作信息的操作幅度值和/或手势操作类型获取。所述滤镜坐标信息根据所述手势操作信息在所述图像的位置获取。所述手势操作信息包括滑动指令、拉伸指令、旋转指令、单击指令、双击指令的至少其中之一。\n[0114] 可选的,本发明实施例还可包括滤镜选择模块1205:用于接收输入的操作信息,根据预置的滤镜模式,选择与所述操作信息对应的滤镜类型。从而为滤镜变换提供更为丰富的变换种类。\n[0115] 本实施例为实施例三所述方法对应的系统实施方式,在此不作重复表述。\n[0116] 综上,本发明实施例可以通过操作手势在摄像头获取的图像的位置结合执行手势操作对应的滤镜参数实时获取滤镜变换,也可以根据预先操作获取滤镜类型后在手势操作位置实时执行相应滤镜,也可以根据操作手势在任意位置实时执行手势操作对应的滤镜变换。在用户获取图像的同时对图像进行实时滤镜处理,从而不仅丰富了图像滤镜的交互方式,而且使得各种丰富滤镜效果对用户来说是可预览化地实时操控的。\n[0117] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
法律信息
- 2018-10-02
- 2015-04-22
实质审查的生效
IPC(主分类): G06F 3/0484
专利申请号: 201210397363.4
申请日: 2012.10.18
- 2014-05-07
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |