美颜主要代码实现
来源:互联网 发布:c 网络编程技术教程 编辑:程序博客网 时间:2024/05/01 22:58
人脸美化Face beauty
Smooth:皮肤平滑度,越高皮肤除;
Skin Color:皮肤.色,low为做红.处理;
Sharp:瘦脸&大眼程度,值越高表示程度越大。
<string-array name = “pref_camera_facebeauty_turning_entryvalues”
translatable = “false”>
<item>-4</item>
<item>0</item>
<item>4</item>
</string-array>
-4到4共9个等级
确认拍照时有无正确识别到人脸(人脸框是否显示),如未显示请先check FD是否有正常启用,若有请check cap-mode是否设置为FB,如果都正常请提交e-service并附上log处理。
2不保存美肤拍照原图
– packages/apps/Camera/src/com/android/cameraFeatureSwitcher.java文件中将isFaceBeautyOriginalPictureSaved的返回值改为False
3 FB拍照异常退出发生NE
– 看拍照比例是否符合4:3、5:3、16:9这三种,如果不符 合请修改为这几种比例或申请patch:ALPS00801970
– 请check拍照size是否超过了5000*4000,即宽不能超过5000,高不能超过4000,如果超过请申请patch:ALPS00872370
– 其他情况请提交e-service处理
单独的功能模块实现:MVC模式设计
M(模型):找到FaceBeautyMode.java
V(视图):1:FaceBeautyRotateLayout.java
2:FaceBeautyView.java
C(控制):1:FaceBeautyInfo.java
2:FaceBeautyPictureSizeRule.java
3:FaceBeautyParamentersHelper.java
4:FaceBeautyPreviewSize.java
5:VfbQualityRule.java
6:VideoFaceBeautyRule.java
当用户切换到face beauty时会发送一个参数到ModeFactory.java(这是个模式生产工厂)新建一个FaceBeautyMode实例,模式的视图View则在FaceBeautyMode.java通过调用getCameraView(SpecViewType.MODE_FACE_BEAUTY)向UI大管家CameraAppUiImpl.java发送一个参数来获取。这里吐槽一下视图的产生也是和mode的产生一下都是基于工厂设计模式的,mode的view生产的地方在最终是在ViewFactory.java这个工厂里面。
功能介绍
对人脸进行美白、磨皮、瘦脸和大眼等美化功能;Smooth:皮肤平滑度,越高皮肤除;
Skin Color:皮肤.色,low为做红.处理;
Sharp:瘦脸&大眼程度,值越高表示程度越大。
三个参数的客制化
客制化参数packages/apps/Camera/src/com/android/camera/res/values/arrays.xml<string-array name = “pref_camera_facebeauty_turning_entryvalues”
translatable = “false”>
<item>-4</item>
<item>0</item>
<item>4</item>
</string-array>
-4到4共9个等级
常见问题
1美肤拍照无美肤效果确认拍照时有无正确识别到人脸(人脸框是否显示),如未显示请先check FD是否有正常启用,若有请check cap-mode是否设置为FB,如果都正常请提交e-service并附上log处理。
2不保存美肤拍照原图
– packages/apps/Camera/src/com/android/cameraFeatureSwitcher.java文件中将isFaceBeautyOriginalPictureSaved的返回值改为False
3 FB拍照异常退出发生NE
– 看拍照比例是否符合4:3、5:3、16:9这三种,如果不符 合请修改为这几种比例或申请patch:ALPS00801970
– 请check拍照size是否超过了5000*4000,即宽不能超过5000,高不能超过4000,如果超过请申请patch:ALPS00872370
– 其他情况请提交e-service处理
调用流程
Facebeauty是MTK开发的一种mode,一般模式类功能都到mediatek的mode文件夹里面去找,里面绝对有你想要的~。接下来就来看看这个FB模式吧。众观MTK写的附加功能,估计有许多人写,好乱。但mode类写得比较好,采用的是常用的MVC设计模式这里单独把face beauty 模式拆解一下,到时后面的其它模式就简单概括了哈,可以参考这里来看流程。也可以按照这个来自己添加一个模式。单独的功能模块实现:MVC模式设计
M(模型):找到FaceBeautyMode.java
V(视图):1:FaceBeautyRotateLayout.java
2:FaceBeautyView.java
C(控制):1:FaceBeautyInfo.java
2:FaceBeautyPictureSizeRule.java
3:FaceBeautyParamentersHelper.java
4:FaceBeautyPreviewSize.java
5:VfbQualityRule.java
6:VideoFaceBeautyRule.java
当用户切换到face beauty时会发送一个参数到ModeFactory.java(这是个模式生产工厂)新建一个FaceBeautyMode实例,模式的视图View则在FaceBeautyMode.java通过调用getCameraView(SpecViewType.MODE_FACE_BEAUTY)向UI大管家CameraAppUiImpl.java发送一个参数来获取。这里吐槽一下视图的产生也是和mode的产生一下都是基于工厂设计模式的,mode的view生产的地方在最终是在ViewFactory.java这个工厂里面。
0 0
- 美颜主要代码实现
- 简易代码实现简单美颜美白效果
- OPENGL_SHARDER 实现美颜功能
- 闹钟主要实现代码
- Opencv 简单的美颜实现方案
- Camera Filter 美颜相机的实现
- asp.net2005上传的主要代码实现
- 实现双语网的主要代码
- 人脸检测主要介绍代码实现
- zookeeper 主要应用场景及代码实现
- CRC校验实现-实验报告(附主要实现代码)
- 主要看气质 极致美颜手机让自拍党更大胆
- 强大的GPUImage,实现美颜及各种效果
- GridView自写删除功能的实现主要代码
- android上层应用实现截图的主要代码!
- 编程实现贪吃蛇游戏界面的主要代码
- servlet 处理登陆表单数据(数据库)主要代码实现
- servlet 处理登陆表单数据(数据库)主要代码实现
- hdu 5437优先队列
- 【工控机开发】‘close' was not declared in this scope
- WIN32 进程间通讯-共享内存
- java io流详解(二)对象输入输出流
- java例题学习:面向对象之员工类
- 美颜主要代码实现
- 程序包com.sun.image.codec.jpeg不存在 的解决办法
- Python学习笔记之十一——标准库概览第Ⅰ部分
- 《将博客搬至CSDN》
- Android Studio开发环境建立aidl文件,怎么生成相应的java文件? Android Studio开发环境建立aidl文件,不自动生成java文件?在Eclipse中建立aidl文件后在
- Rings
- pip安装python库
- booth算法原理的简单化理解
- Java中对于String StringBuffer StringBuilder的理解