CN107797742A - 调整微件透明度的方法、装置和终端 - Google Patents
调整微件透明度的方法、装置和终端 Download PDFInfo
- Publication number
- CN107797742A CN107797742A CN201711123257.6A CN201711123257A CN107797742A CN 107797742 A CN107797742 A CN 107797742A CN 201711123257 A CN201711123257 A CN 201711123257A CN 107797742 A CN107797742 A CN 107797742A
- Authority
- CN
- China
- Prior art keywords
- widget
- desktop
- facial image
- transparency
- wallpaper
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供一种调整微件透明度的方法,通过获取桌面壁纸,判断所述桌面壁纸是否存在人脸图像;若存在人脸图像,则获取所述人脸图像在桌面的所处位置,判断所述人脸图像是否处于微件在桌面的位置范围;若所述人脸图像处于微件在桌面的位置范围,则降低所述微件的透明度。降低微件的透明度,可以使得人脸即使被微件遮挡也不会过于影响人像整体观感,可以使得微件与桌面壁纸在外观上显得协调,使得终端桌面更加美观,提高用户使用微件的频率。本发明还提供一种调整微件透明度的装置和相应的终端。
Description
技术领域
本发明涉及终端显示技术领域,具体而言,本发明涉及一种调整微件透明度的方法、装置和终端。
背景技术
微件(widget)是一种基于网络、可以独立在桌面运行的实用小工具,能够将应用程序推送的信息显示在移动终端的桌面上,快速便捷的展现应用程序的信息。通常是为了实现某种功能,而向用户展示各种个性化有用的信息。用户通过微件可以享受新闻阅读、天气资讯、图片浏览等业务。例如,新闻微件可以在桌面上显示热点新闻,天气微件可以显示用户定制的地区的天气信息,CPU微件可以显示终端CPU当前的使用情况,此外还有桌面搜索微件、股票微件等等。
近年来,市场上也逐渐流行呈现立体动态的三维微件,使得用户在操作时微件将展示三维动态效果。例如,360OS 2.0推出了全新的3Dwidget,融入了立体、悬浮以及扭转等新颖创意,让微件不再是呆板的图形符号,而是呈现出了生动的立体悬浮球状态。
但是,大多数开发者并没有注意到:由于微件通常是固定的外观,对于常换桌面壁纸的用户而言,微件可能在外观上难以与桌面壁纸相协调,从而使得桌面并不好看(例如,当桌面壁纸为人像壁纸时,微件很可能就会挡住了人物头像),降低了用户使用微件的热情。
发明内容
本发明的目的旨在至少能解决上述的技术缺陷之一,特别是微件可能在外观上难以与桌面壁纸相协调的技术缺陷。
本发明提供一种调整微件透明度的方法,包括如下步骤:
获取桌面壁纸,判断所述桌面壁纸是否存在人脸图像;
若存在人脸图像,则获取所述人脸图像在桌面的所处位置,判断所述人脸图像是否处于微件在桌面的位置范围;
若所述人脸图像处于微件在桌面的位置范围,则降低所述微件的透明度。
在其中一个实施例中,所述获取桌面壁纸的步骤包括:
监听到桌面壁纸被更新时,获取桌面壁纸。
在其中一个实施例中,所述获取桌面壁纸的步骤包括:
接收到用户输入的调整指令时,获取桌面壁纸。
在其中一个实施例中,所述方法应用于安卓系统,应用FaceDetector类判断所述桌面壁纸是否存在人脸图像。
在其中一个实施例中,所述获取所述人脸图像在桌面的所处位置的步骤包括:
获取人脸图像的两眼位置,并根据所述两眼位置确定人脸图像在桌面的所处位置。
在其中一个实施例中,所述获取人脸图像的两眼位置,并根据所述两眼位置确定人脸图像在桌面的所处位置的步骤包括:
获取人脸图像的两眼位置中心点;
获取人脸图像的两眼间距;
根据所述两眼位置中心点和两眼间距绘制矩形区域,以所述矩形区域作为人脸图像在桌面的所处位置。
在其中一个实施例中,所述若所述人脸图像处于微件在桌面的位置范围,则降低所述微件的透明度的步骤包括:
若所述人脸图像处于微件在桌面的位置范围,则获取桌面壁纸的颜色信息;
根据颜色信息确定待应用的透明度值;
将所述透明度值应用于所述微件以降低所述微件的透明度。
在其中一个实施例中,所述颜色信息包括RGB信息或YUV信息。
在其中一个实施例中,所述颜色信息为灰阶值。
在其中一个实施例中,所述灰阶值越大,则所述待应用的透明度值越低。
在其中一个实施例中,在接收到用户输入的预设触控指令时,所述微件根据所述预设触控指令展示对应的三维动态效果。
本发明还提供一种调整微件透明度的装置,包括人脸判断模块、位置判断模块和调整模块;
所述人脸判断模块获取桌面壁纸,判断所述桌面壁纸是否存在人脸图像;
若存在人脸图像,则所述位置判断模块获取所述人脸图像在桌面的所处位置,判断所述人脸图像是否处于微件在桌面的位置范围;
若所述人脸图像处于微件在桌面的位置范围,则所述调整模块降低所述微件的透明度。
在其中一个实施例中,所述人脸判断模块监听到桌面壁纸被更新时,获取桌面壁纸。
在其中一个实施例中,所述人脸判断模块接收到用户输入的调整指令时,获取桌面壁纸。
在其中一个实施例中,所述装置应用于安卓系统,所述人脸判断模块应用FaceDetector类判断所述桌面壁纸是否存在人脸图像。
在其中一个实施例中,所述位置判断模块用于:获取人脸图像的两眼位置,并根据所述两眼位置确定人脸图像在桌面的所处位置。
在其中一个实施例中,所述位置判断模块用于:
获取人脸图像的两眼位置中心点;
获取人脸图像的两眼间距;
根据所述两眼位置中心点和两眼间距绘制矩形区域,以所述矩形区域作为人脸图像在桌面的所处位置。
在其中一个实施例中,所述调整模块用于:
若所述人脸图像处于微件在桌面的位置范围,则获取桌面壁纸的颜色信息;
根据颜色信息确定待应用的透明度值;
将所述透明度值应用于所述微件以降低所述微件的透明度。
在其中一个实施例中,所述颜色信息包括RGB信息或YUV信息。
在其中一个实施例中,所述颜色信息为灰阶值。
在其中一个实施例中,所述灰阶值越大,则所述待应用的透明度值越低。
在其中一个实施例中,还包括展示模块,所述展示模块用于:
在接收到用户输入的预设触控指令时,所述微件根据所述预设触控指令展示对应的三维动态效果。
本发明还提供一种终端,其包括:
触敏显示器;
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行上述任一项实施例所述的调整微件透明度的方法。
上述的调整微件透明度的方法、装置和终端,通过获取桌面壁纸,判断所述桌面壁纸是否存在人脸图像;若存在人脸图像,则获取所述人脸图像在桌面的所处位置,判断所述人脸图像是否处于微件在桌面的位置范围;若所述人脸图像处于微件在桌面的位置范围,则降低所述微件的透明度。降低微件的透明度,可以使得人脸即使被微件遮挡也不会过于影响人像整体观感,可以使得微件与桌面壁纸在外观上显得协调,使得终端桌面更加美观,提高用户使用微件的频率。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为一个实施例的调整微件透明度的方法流程图;
图2为一实施例的调整微件透明度的装置模块图;
图3示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通讯链路上,执行双向通讯的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通讯设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通讯设备;PCS(Personal Communications Service,个人通讯系统),其可以组合语音、数据处理、传真和/或数据通讯能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global Positioning System,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通讯终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
图1为一个实施例的调整微件透明度的方法流程图。
本发明提供一种调整微件透明度的方法,包括如下步骤:
步骤S100:获取桌面壁纸,判断桌面壁纸是否存在人脸图像。
为了实现及时的调整,在本实施例中,可以在监听到桌面壁纸被更新时,获取桌面壁纸。安卓系统中,桌面壁纸被更换时,系统将会发出一个桌面壁纸被更换的广播,微件(widget)获取这个广播后,将自动去获取桌面壁纸。当然,在一些实施例中,也可以在接收到用户输入的调整指令(例如用户点击微件上的特定按键)时,获取桌面壁纸。
微件(widget)是桌面小应用,可以是展示终端状态的微件、展示天气情况的微件、展示新闻热点的微件、展示日历的微件等等,在此不做限定。微件也可以是呈现立体动态的三维微件,使得用户在操作时微件将展示三维动态效果,例如微件可以是融入立体、悬浮以及扭转等新颖创意的立体悬浮球,当用户点击特定的位置时,立体悬浮球形式的微件可以同时扭转或滚动,使用户感觉出三维动态效果。因此,在一些实施例中,在接收到用户输入的预设触控指令时,微件根据预设触控指令展示对应的三维动态效果。
判断桌面壁纸是否存在人脸图像主要是采用人脸检测技术。人脸检测是指对于任意一幅给定的图像,采用一定的策略对其进行搜索以确定其中是否含有人脸,如果是则返回脸的位置、大小和姿态。
如果所述方法应用于安卓系统,可以应用FaceDetector类判断桌面壁纸是否存在人脸图像。安卓系统内置有人脸识别API:FaceDetector,该API可以通过少量代码完成人脸识别,但是这种识别是最基本的识别,即只能识别出图像中的人脸。
安卓中的人脸识别技术,需要用到的底层库:android/external/neven/,架构层:frameworks/base/media/java/android/media/FaceDetector.java。Java层的限制:1,只能接受Bitmap格式的数据;2,只能识别双眼距离大于20像素的人脸像(可在framework层中修改);C,只能检测出人脸的位置(双眼的中心点及距离),不能对人脸进行匹配(查找指定的脸谱)。
Neven库提供的主要方法:
A,android.media.FaceDetector.FaceDetector(int width,int height,intmaxFaces);B,int android.media.FaceDetector.findFaces(Bitmap bitmap,Face[]faces)。
若存在人脸图像,则执行步骤S200。
步骤S200:若存在人脸图像,则获取人脸图像在桌面的所处位置,判断人脸图像是否处于微件在桌面的位置范围。
在安卓系统中,可以通过FaceDetector类获取人脸图像的两眼位置,并根据两眼位置确定人脸图像在桌面的所处位置。具体步骤可以是:获取人脸图像的两眼位置中心点,获取人脸图像的两眼间距,根据两眼位置中心点和两眼间距绘制矩形区域(矩形框),以矩形区域作为人脸图像在桌面的所处位置。可以通过以下代码获取人脸图像的两眼位置中心点:
mFace[i].getMidPoint(eyeMidPoint);
可以通过以下代码获取人脸图像的两眼间距:
eyesDistance=mFace[i].eyesDistance();
可以通过以下代码绘制矩形区域:
可以将矩形区域作为人脸图像的位置,然后结合微件在桌面的位置,判断人脸图像是否处于微件在桌面的位置范围。例如如果人脸图像的位置与微件的位置有重合,或者重合区域超过预设面积,则可以认为人脸图像处于微件在桌面的位置范围。
步骤S300:若人脸图像处于微件在桌面的位置范围,则降低微件的透明度。
降低微件的透明度,可以是降低微件的界面背景色的透明度,同时依然保持界面上的文字信息原来的透明度,或者也同步降低文字的透明度,但是比界面背景色的透明度的降低幅度要低,以使得用户可以看清微件上的文字信息。
在一些实施例中,可以预设一个低透明度值,这个低透明度值是比微件正常使用时的常规透明度值要低。若人脸图像处于微件在桌面的位置范围,则以该低透明度值应用于微件,因而降低微件的透明度。
考虑到桌面壁纸图像可能颜色较深,这种情况下,如果微件的透明度过低,则可能导致用户难以看清微件。因而,有必要根据桌面壁纸整体的颜色深浅情况而确定微件的透明度。
因此,在一些实施例中,若人脸图像处于微件在桌面的位置范围,则获取桌面壁纸的颜色信息,然后根据颜色信息确定待应用的透明度值,再将透明度值应用于微件以降低微件的透明度。
桌面壁纸的颜色信息,是能够反映桌面壁纸颜色情况的信息,或者反映桌面壁纸整体色调的信息。例如,颜色信息可以包括RGB信息或YUV信息。在安卓系统中,可以应用Palette类来获取桌面壁纸的颜色信息,Palette类是一个可以从图片(Bitmap)中提取颜色的帮助类。
Palette可以提取的颜色:Vibrant(有活力的)、Vibrant dark(有活力的暗色)、Vibrant light(有活力的亮色)、Muted(柔和的)、Muted dark(柔和的暗色)、Muted light(柔和的亮色)。
使用方法:module的build.gradle中引用,见下面代码。
compile'com.android.support:palette-v7:25.3.1'
使用步骤:
1.获取Palette对象,也就是图像调色板。
获取Palette对象有同步和异步两种方式,建议使用异步获取Palette对象,见下面代码。
2.获取从图像调色板生成的色样。
可以获取到六种色样,但是有的时候获取不到对应的色样对象,必须注意非空判断。
Palette.Swatch vibrant=palette.getVibrantSwatch();//有活力的
Palette.Swatch vibrantDark=palette.getDarkVibrantSwatch();//有活力的,暗色
Palette.Swatch vibrantLight=palette.getLightVibrantSwatch();//有活力的,亮色
Palette.Swatch muted=palette.getMutedSwatch();//柔和的
Palette.Swatch mutedDark=palette.getDarkMutedSwatch();//柔和的,暗色
Palette.Swatch mutedLight=palette.getLightMutedSwatch();//柔和的,亮色
3.从色样中提取相应颜色。
通过getRgb()可以得到桌面壁纸的RGB信息值。以下是各种可能需要用到的方法。
swatch.getPopulation():样本中的像素数量
swatch.getRgb():颜色的RBG值
swatch.getHsl():颜色的HSL值
RGB和YUV都是色彩空间,用于表示颜色,两者可以相互转化。YUV(亦称YCrCb)是被欧洲电视系统所采用的一种颜色编码方法。YUV主要用于优化彩色视频信号的传输,使其向后兼容老式黑白电视。与RGB视频信号传输相比,它最大的优点在于只需占用极少的带宽。
YUV中"Y"表示明亮度(Lumina nce或Luma),也就是灰阶值,是个基带信号。而"U"和"V"表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。U和V不是基带信号,它俩是被正交调制了的。
"明亮度"是通过RGB输入信号来创建的,方法是将RGB信号的特定部分叠加到一起。"色度"则定义了颜色的两个方面-色调与饱和度,分别用Cr和CB来表示。其中,Cr反映了RGB输入信号红色部分与RGB信号亮度值之间的差异,而CB反映的是RGB输入信号蓝色部分与RGB信号亮度值之同的差异。通过运算,YUV信息可以还原出RGB信息,也可以通过RGB还原出YUV信息,具体还原公式如下:
Y=0.299*R+0.587*G+0.114*B;
U=-0.147*R-0.289*G+0.436*B=0.492*(B-Y);
V=0.615*R-0.515*G-0.100*B=0.877*(R-Y);
R=Y+1.140*V;
G=Y-0.394*U-0.581*V;
B=Y+2.032*U。
灰阶值(Y)反映图像的明亮度,也即反映了图像的深浅。因此,在一些施例中,颜色信息可以为灰阶值。灰阶值越大,证明桌面壁纸色调越深,则微件的透明度不能过低。因此,灰阶值越大,微件待应用的透明度值越低。在一些实施例中,可以设置多个灰阶阈值段,每个灰阶阈值段配置相应的透明度值。例如灰阶值Y1~Y2之间为透明度值A1,灰阶值Y2~Y3之间为透明度值A2,灰阶值Y3~Y4之间为透明度值A3……,以此类推。当计算到桌面壁纸的灰阶值处于其中一个灰阶阈值段时,则对微件应用对应该灰阶阈值段的透明度值。
图2为一实施例的调整微件透明度的装置模块图,对应上述的调整微件透明度的方法,本发明还提供一种调整微件透明度的装置,包括人脸判断模块100、位置判断模块200和调整模块300。
人脸判断模块100获取桌面壁纸,判断桌面壁纸是否存在人脸图像;若存在人脸图像,则位置判断模块200获取人脸图像在桌面的所处位置,判断人脸图像是否处于微件在桌面的位置范围;若人脸图像处于微件在桌面的位置范围,则调整模块300降低微件的透明度。
人脸判断模块100获取桌面壁纸,判断桌面壁纸是否存在人脸图像。
为了实现及时的调整,在本实施例中,人脸判断模块100可以在监听到桌面壁纸被更新时,获取桌面壁纸。安卓系统中,桌面壁纸被更换时,系统将会发出一个桌面壁纸被更换的广播,微件(widget)获取这个广播后,将自动去获取桌面壁纸。当然,在一些实施例中,人脸判断模块100也可以在接收到用户输入的调整指令(例如用户点击微件上的特定按键)时,获取桌面壁纸。
微件(widget)是桌面小应用,可以是展示终端状态的微件、展示天气情况的微件、展示新闻热点的微件、展示日历的微件等等,在此不做限定。微件也可以是呈现立体动态的三维微件,使得用户在操作时微件将展示三维动态效果,例如微件可以是融入立体、悬浮以及扭转等新颖创意的立体悬浮球,当用户点击特定的位置时,立体悬浮球形式的微件可以同时扭转或滚动,使用户感觉出三维动态效果。因此,在一些实施例中,还可以包括展示模块,用于:在接收到用户输入的预设触控指令时,使得微件根据预设触控指令展示对应的三维动态效果。
人脸判断模块100判断桌面壁纸是否存在人脸图像主要是采用人脸检测技术。人脸检测是指对于任意一幅给定的图像,采用一定的策略对其进行搜索以确定其中是否含有人脸,如果是则返回脸的位置、大小和姿态。
如果所述方法应用于安卓系统,可以应用FaceDetector类判断桌面壁纸是否存在人脸图像。安卓系统内置有人脸识别API:FaceDetector,该API可以通过少量代码完成人脸识别,但是这种识别是最基本的识别,即只能识别出图像中的人脸。
安卓中的人脸识别技术,需要用到的底层库:android/external/neven/,架构层:frameworks/base/media/java/android/media/FaceDetector.java。Java层的限制:1,只能接受Bitmap格式的数据;2,只能识别双眼距离大于20像素的人脸像(可在framework层中修改);C,只能检测出人脸的位置(双眼的中心点及距离),不能对人脸进行匹配(查找指定的脸谱)。
Neven库提供的主要方法:
A,android.media.FaceDetector.FaceDetector(int width,int height,intmaxFaces);B,int android.media.FaceDetector.findFaces(Bitmap bitmap,Face[]faces)。
若人脸判断模块100检测到存在人脸图像,则位置判断模块200获取人脸图像在桌面的所处位置,判断人脸图像是否处于微件在桌面的位置范围。
在安卓系统中,位置判断模块200可以通过FaceDetector类获取人脸图像的两眼位置,并根据两眼位置确定人脸图像在桌面的所处位置。位置判断模块200进行的具体步骤可以是:获取人脸图像的两眼位置中心点,获取人脸图像的两眼间距,根据两眼位置中心点和两眼间距绘制矩形区域(矩形框),以矩形区域作为人脸图像在桌面的所处位置。位置判断模块200可以通过以下代码获取人脸图像的两眼位置中心点:
mFace[i].getMidPoint(eyeMidPoint);
可以通过以下代码获取人脸图像的两眼间距:
eyesDistance=mFace[i].eyesDistance();
可以通过以下代码绘制矩形区域:
位置判断模块200可以将矩形区域作为人脸图像的位置,然后结合微件在桌面的位置,判断人脸图像是否处于微件在桌面的位置范围。例如如果人脸图像的位置与微件的位置有重合,或者重合区域超过预设面积,则可以认为人脸图像处于微件在桌面的位置范围。
若位置判断模块200检测到人脸图像处于微件在桌面的位置范围,调整模块300则降低微件的透明度。
调整模块300降低微件的透明度,可以是降低微件的界面背景色的透明度,同时依然保持界面上的文字信息原来的透明度,或者也同步降低文字的透明度,但是比界面背景色的透明度的降低幅度要低,以使得用户可以看清微件上的文字信息。
在一些实施例中,可以预设一个低透明度值,这个低透明度值是比微件正常使用时的常规透明度值要低。若人脸图像处于微件在桌面的位置范围,则调整模块300以该低透明度值应用于微件,因而降低微件的透明度。
考虑到桌面壁纸图像可能颜色较深,这种情况下,如果微件的透明度过低,则可能导致用户难以看清微件。因而,有必要根据桌面壁纸整体的颜色深浅情况而确定微件的透明度。
因此,在一些实施例中,若人脸图像处于微件在桌面的位置范围,则调整模块300获取桌面壁纸的颜色信息,然后根据颜色信息确定待应用的透明度值,再将透明度值应用于微件以降低微件的透明度。
桌面壁纸的颜色信息,是能够反映桌面壁纸颜色情况的信息,或者反映桌面壁纸整体色调的信息。例如,颜色信息可以包括RGB信息或YUV信息。在安卓系统中,可以应用Palette类来获取桌面壁纸的颜色信息,Palette类是一个可以从图片(Bitmap)中提取颜色的帮助类。
Palette可以提取的颜色:Vibrant(有活力的)、Vibrant dark(有活力的暗色)、Vibrant light(有活力的亮色)、Muted(柔和的)、Muted dark(柔和的暗色)、Muted light(柔和的亮色)。
使用方法:module的build.gradle中引用,见下面代码。
compile'com.android.support:palette-v7:25.3.1'
使用步骤:
1.获取Palette对象,也就是图像调色板。
获取Palette对象有同步和异步两种方式,建议使用异步获取Palette对象,见下面代码。
2.获取从图像调色板生成的色样。
可以获取到六种色样,但是有的时候获取不到对应的色样对象,必须注意非空判断。
Palette.Swatch vibrant=palette.getVibrantSwatch();//有活力的
Palette.Swatch vibrantDark=palette.getDarkVibrantSwatch();//有活力的,暗色
Palette.Swatch vibrantLight=palette.getLightVibrantSwatch();//有活力的,亮色
Palette.Swatch muted=palette.getMutedSwatch();//柔和的
Palette.Swatch mutedDark=palette.getDarkMutedSwatch();//柔和的,暗色
Palette.Swatch mutedLight=palette.getLightMutedSwatch();//柔和的,亮色
3.从色样中提取相应颜色。
通过getRgb()可以得到桌面壁纸的RGB信息值。以下是各种可能需要用到的方法。
swatch.getPopulation():样本中的像素数量
swatch.getRgb():颜色的RBG值
swatch.getHsl():颜色的HSL值
RGB和YUV都是色彩空间,用于表示颜色,两者可以相互转化。YUV(亦称YCrCb)是被欧洲电视系统所采用的一种颜色编码方法。YUV主要用于优化彩色视频信号的传输,使其向后兼容老式黑白电视。与RGB视频信号传输相比,它最大的优点在于只需占用极少的带宽。
YUV中"Y"表示明亮度(Lumina nce或Luma),也就是灰阶值,是个基带信号。而"U"和"V"表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。U和V不是基带信号,它俩是被正交调制了的。
"明亮度"是通过RGB输入信号来创建的,方法是将RGB信号的特定部分叠加到一起。"色度"则定义了颜色的两个方面-色调与饱和度,分别用Cr和CB来表示。其中,Cr反映了RGB输入信号红色部分与RGB信号亮度值之间的差异,而CB反映的是RGB输入信号蓝色部分与RGB信号亮度值之同的差异。通过运算,YUV信息可以还原出RGB信息,也可以通过RGB还原出YUV信息,具体还原公式如下:
Y=0.299*R+0.587*G+0.114*B;
U=-0.147*R-0.289*G+0.436*B=0.492*(B-Y);
V=0.615*R-0.515*G-0.100*B=0.877*(R-Y);
R=Y+1.140*V;
G=Y-0.394*U-0.581*V;
B=Y+2.032*U。
灰阶值(Y)反映图像的明亮度,也即反映了图像的深浅。因此,在一些施例中,颜色信息可以为灰阶值。灰阶值越大,证明桌面壁纸色调越深,则微件的透明度不能过低。因此,灰阶值越大,微件待应用的透明度值越低。在一些实施例中,可以设置多个灰阶阈值段,每个灰阶阈值段配置相应的透明度值。例如灰阶值Y1~Y2之间为透明度值A1,灰阶值Y2~Y3之间为透明度值A2,灰阶值Y3~Y4之间为透明度值A3……,以此类推。当计算到桌面壁纸的灰阶值处于其中一个灰阶阈值段时,则对微件应用对应该灰阶阈值段的透明度值。
本发明还提供一种终端,其包括:触敏显示器、一个或多个处理器、存储器、一个或多个应用程序,其中一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于:执行上述任一项实施例的调整微件透明度的方法。这里的终端,可以是智能手机、智能手表、平板电脑、笔记本电脑等移动智能终端,也可以是电脑等固定智能终端。
本发明实施例还提供了移动终端,如图3所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point ofSales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:
图3示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图3,手机包括:射频(Radio Frequency,RF)电路1510、存储器1520、输入单元1530、显示单元1540、传感器1550、音频电路1560、无线保真(wireless fidelity,Wi-Fi)模块1570、处理器1580、以及电源1590等部件。本领域技术人员可以理解,图3中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图3对手机的各个构成部件进行具体的介绍:
RF电路1510可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1580处理;另外,将设计上行的数据发送给基站。通常,RF电路1510包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路1510还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器1520可用于存储软件程序以及模块,处理器1580通过运行存储在存储器1520的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声纹播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元1530可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1530可包括触控面板1531以及其他输入设备1532。触控面板1531,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1531上或在触控面板1531附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1531可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1580,并能接收处理器1580发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1531。除了触控面板1531,输入单元1530还可以包括其他输入设备1532。具体地,其他输入设备1532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1540可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1540可包括显示面板1541,可选的,可以采用液晶显示器(LiquidCrystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板1541。进一步的,触控面板1531可覆盖显示面板1541,当触控面板1531检测到在其上或附近的触摸操作后,传送给处理器1580以确定触摸事件的类型,随后处理器1580根据触摸事件的类型在显示面板1541上提供相应的视觉输出。虽然在图3中,触控面板1531与显示面板1541是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1531与显示面板1541集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器1550,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1541的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1541和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1560、扬声器1561,传声器1562可提供用户与手机之间的音频接口。音频电路1560可将接收到的音频数据转换后的电信号,传输到扬声器1561,由扬声器1561转换为声纹信号输出;另一方面,传声器1562将收集的声纹信号转换为电信号,由音频电路1560接收后转换为音频数据,再将音频数据输出处理器1580处理后,经RF电路1510以发送给比如另一手机,或者将音频数据输出至存储器1520以便进一步处理。
Wi-Fi属于短距离无线传输技术,手机通过Wi-Fi模块1570可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图3示出了Wi-Fi模块1570,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1580是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1520内的软件程序和/或模块,以及调用存储在存储器1520内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1580可包括一个或多个处理单元;优选的,处理器1580可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1580中。
手机还包括给各个部件供电的电源1590(比如电池),优选的,电源可以通过电源管理系统与处理器1580逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本发明实施例中,该终端所包括的处理器1580还具有以下功能:获取桌面壁纸,判断所述桌面壁纸是否存在人脸图像;若存在人脸图像,则获取所述人脸图像在桌面的所处位置,判断所述人脸图像是否处于微件在桌面的位置范围;若所述人脸图像处于微件在桌面的位置范围,则降低所述微件的透明度。也即处理器1580具备执行上述的任一实施例调整微件透明度的方法的功能,在此不再赘述。
上述的调整微件透明度的方法、装置和终端,通过获取桌面壁纸,判断所述桌面壁纸是否存在人脸图像;若存在人脸图像,则获取所述人脸图像在桌面的所处位置,判断所述人脸图像是否处于微件在桌面的位置范围;若所述人脸图像处于微件在桌面的位置范围,则降低所述微件的透明度。降低微件的透明度,可以使得人脸即使被微件遮挡也不会过于影响人像整体观感,可以使得微件与桌面壁纸在外观上显得协调,使得终端桌面更加美观,提高用户使用微件的频率。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种调整微件透明度的方法,其特征在于,包括如下步骤:
获取桌面壁纸,判断所述桌面壁纸是否存在人脸图像;
若存在人脸图像,则获取所述人脸图像在桌面的所处位置,判断所述人脸图像是否处于微件在桌面的位置范围;
若所述人脸图像处于微件在桌面的位置范围,则降低所述微件的透明度。
2.根据权利要求1所述的调整微件透明度的方法,其特征在于,所述获取桌面壁纸的步骤包括:
监听到桌面壁纸被更新时,获取桌面壁纸。
3.根据权利要求1所述的调整微件透明度的方法,其特征在于,所述获取桌面壁纸的步骤包括:
接收到用户输入的调整指令时,获取桌面壁纸。
4.根据权利要求1所述的调整微件透明度的方法,其特征在于,所述方法应用于安卓系统,应用FaceDetector类判断所述桌面壁纸是否存在人脸图像。
5.根据权利要求4所述的调整微件透明度的方法,其特征在于,所述获取所述人脸图像在桌面的所处位置的步骤包括:
获取人脸图像的两眼位置,并根据所述两眼位置确定人脸图像在桌面的所处位置。
6.根据权利要求5所述的调整微件透明度的方法,其特征在于,所述获取人脸图像的两眼位置,并根据所述两眼位置确定人脸图像在桌面的所处位置的步骤包括:
获取人脸图像的两眼位置中心点;
获取人脸图像的两眼间距;
根据所述两眼位置中心点和两眼间距绘制矩形区域,以所述矩形区域作为人脸图像在桌面的所处位置。
7.根据权利要求1所述的调整微件透明度的方法,其特征在于,所述若所述人脸图像处于微件在桌面的位置范围,则降低所述微件的透明度的步骤包括:
若所述人脸图像处于微件在桌面的位置范围,则获取桌面壁纸的颜色信息;
根据颜色信息确定待应用的透明度值;
将所述透明度值应用于所述微件以降低所述微件的透明度。
8.根据权利要求7所述的调整微件透明度的方法,其特征在于,所述颜色信息包括RGB信息或YUV信息。
9.一种调整微件透明度的装置,其特征在于,包括人脸判断模块、位置判断模块和调整模块;
所述人脸判断模块获取桌面壁纸,判断所述桌面壁纸是否存在人脸图像;
若存在人脸图像,则所述位置判断模块获取所述人脸图像在桌面的所处位置,判断所述人脸图像是否处于微件在桌面的位置范围;
若所述人脸图像处于微件在桌面的位置范围,则所述调整模块降低所述微件的透明度。
10.一种终端,其特征在于,其包括:
触敏显示器;
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行根据权利要求1~8任一项所述的调整微件透明度的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711123257.6A CN107797742A (zh) | 2017-11-14 | 2017-11-14 | 调整微件透明度的方法、装置和终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711123257.6A CN107797742A (zh) | 2017-11-14 | 2017-11-14 | 调整微件透明度的方法、装置和终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107797742A true CN107797742A (zh) | 2018-03-13 |
Family
ID=61535858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711123257.6A Pending CN107797742A (zh) | 2017-11-14 | 2017-11-14 | 调整微件透明度的方法、装置和终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107797742A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109445653A (zh) * | 2018-09-28 | 2019-03-08 | 维沃移动通信有限公司 | 一种图标处理方法及移动终端 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105511728A (zh) * | 2015-12-16 | 2016-04-20 | 广东欧珀移动通信有限公司 | 一种终端设备的桌面图标管理方法及装置 |
CN106095407A (zh) * | 2016-05-31 | 2016-11-09 | 北京小米移动软件有限公司 | 图标排布方法、装置和移动设备 |
CN106375531A (zh) * | 2016-08-29 | 2017-02-01 | 捷开通讯(深圳)有限公司 | 一种图片分享方法及终端 |
CN106814934A (zh) * | 2016-12-16 | 2017-06-09 | 深圳市金立通信设备有限公司 | 图标处理方法、及终端设备 |
-
2017
- 2017-11-14 CN CN201711123257.6A patent/CN107797742A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105511728A (zh) * | 2015-12-16 | 2016-04-20 | 广东欧珀移动通信有限公司 | 一种终端设备的桌面图标管理方法及装置 |
CN106095407A (zh) * | 2016-05-31 | 2016-11-09 | 北京小米移动软件有限公司 | 图标排布方法、装置和移动设备 |
CN106375531A (zh) * | 2016-08-29 | 2017-02-01 | 捷开通讯(深圳)有限公司 | 一种图片分享方法及终端 |
CN106814934A (zh) * | 2016-12-16 | 2017-06-09 | 深圳市金立通信设备有限公司 | 图标处理方法、及终端设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109445653A (zh) * | 2018-09-28 | 2019-03-08 | 维沃移动通信有限公司 | 一种图标处理方法及移动终端 |
CN109445653B (zh) * | 2018-09-28 | 2021-01-08 | 维沃移动通信有限公司 | 一种图标处理方法及移动终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108287744B (zh) | 文字显示方法、装置及存储介质 | |
CN107256555B (zh) | 一种图像处理方法、装置及存储介质 | |
CN105867730B (zh) | 状态栏的显示方法及装置 | |
CN110969981B (zh) | 屏幕显示参数调节方法及电子设备 | |
CN108989563B (zh) | 双面屏的显示方法、移动终端及计算机可读存储介质 | |
CN107093418A (zh) | 一种屏幕显示方法、计算机设备及存储介质 | |
CN107798303A (zh) | 一种调整屏幕背光的方法及移动终端 | |
CN107748640B (zh) | 一种熄屏显示方法及移动终端 | |
CN108398999A (zh) | 屏幕显示功耗的控制方法、移动终端及可读存储介质 | |
CN108280813A (zh) | 一种图像处理方法、终端及计算机可读存储介质 | |
CN107845363B (zh) | 一种显示控制方法及移动终端 | |
CN107895352A (zh) | 一种图像处理方法及移动终端 | |
CN108093306A (zh) | 一种弹幕显示方法及移动终端 | |
CN107644396A (zh) | 一种唇色调整方法和装置 | |
CN107844357A (zh) | 调整微件外观的方法、装置和终端 | |
CN109981904A (zh) | 一种音量控制方法及终端设备 | |
CN111125800B (zh) | 一种图标显示方法及电子设备 | |
CN109992339B (zh) | 一种应用图标的处理方法及移动终端 | |
CN111966436A (zh) | 屏幕显示控制方法、装置、终端设备及存储介质 | |
CN108491219A (zh) | 一种应用的更新方法及移动终端 | |
US20230362293A1 (en) | Method for Configuring Theme Color of Terminal Device, Apparatus, and Terminal Device | |
WO2021218834A1 (zh) | 字体文件的处理方法、电子设备及可读存储介质 | |
CN108171773A (zh) | 为图标添加底板的方法、装置和终端 | |
US20220148234A1 (en) | Image processing method and terminal device, and system | |
CN107797742A (zh) | 调整微件透明度的方法、装置和终端 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180313 |
|
RJ01 | Rejection of invention patent application after publication |