论美颜特效SDK中包含的背景虚化功能如何实现

[复制链接]
查看: 15|回复: 0
发表于 2019-11-1 11:23:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
美颜特效SDK作为APP开发者的软件开发工具包,其中所包含的很多功能都是APP开发者可能不太擅长且迫切需要的。因为现在带有浓厚社交属性的APP用户都需要比较强大的功能,毕竟谁也不想在公共平台上展露自己不好的一面,所以就需要使用SDK来实现所对应的美颜特效功能。
美颜sdk20.png
由于背景虚化这个功能在图片和视频中应用都比较频繁,可以给用户的图片和视频带来一定的意境和感觉,所以本文来简单分享下背景虚化功能实现的大概内容。
背景虚化的简单处理思路
在美颜特效SDK中,背景虚化功能是比较重要的一项,在此基础上可以对背景虚化特效进行几个不同特效的分离,并且将背景虚化列为单独一个分类供用户进行选择也是可以的。
1.对图像(或视频)进行内容分割,从中提取人像和背景
2.对背景进行模糊
3.人像与模糊处理后进行背景的融合
背景虚化的特点有哪些
既然开发美颜特效SDK时需要用到相关的算法来实现背景虚化,那么提前了解下该功能的一些特点也是十分必要的。
1.所聚焦的物体要保持其成像清晰,即焦平面内要清晰
2.焦平面之外的景象(或背景)成像要是模糊的
3.一般情况下距离焦平面越远,模糊程度就越大,反之就越小。(模糊的情况随着景深程度不同而变化)
美颜sdk4.png
美颜特效SDK与背景虚化的关系
其实两者之间并不存在直接的关系,但两者可以归属为是相辅相成的。为什么这么说呢,因为背景虚化功能算是美颜特效SDK中包含的一部分,接入APP使用可以实现相应的背景转化功能,而且大部分用户对该功能的诉求还是比较高昂的,所以使得大部分美颜特效SDK的开发者都会在SDK中加入这个功能,从而实现用户需求,打造优质的美颜体验。(以下部分代码仅供参考)
/**
         * 获取圆形的清晰区域
         *
         * @param image
         *            源图像
         * @param x
         *            x坐标
         * @param y
         *            y坐标
         * @param size
         *            作用范围
         * */
        private static BufferedImage getCircleImage(BufferedImage image, int centerX, int centerY, int size)
        {
                int width = image.getWidth();
                int height = image.getHeight();
                BufferedImage outputImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
                for (int y = HALF_MAX_MASK_SIZE; y < height - HALF_MAX_MASK_SIZE; y++)
                {
                        for (int x = HALF_MAX_MASK_SIZE; x < width - HALF_MAX_MASK_SIZE; x++)
                        {
                                int distance = getDistance(x, y, centerX, centerY);
                                area = getArea(distance);
                                outputImage.setRGB(x, y, getRGBValue(image, x, y,distance));
                        }
                }
                return outputImage;
        }
美颜sdk6.png
以上就是美颜特效SDK中背景虚化功能实现的大概内容,至于具体的功能分类和详细实现步骤,还需要美颜特效SDK开发者根据平台运营方的需求来制定。建议大家找专业的SDK开发者,这样才可以保证美颜特效功能成功运行并带来优质的美颜体验。
声明:以上内容均为作者本人原创,转载需注明作者及原文链接,欢迎转载分享。

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

友情链接
 
 
工作时间:
8:00-18:00
客服热线:
15368564009
客服微信