OpenGL 实现“人像背景虚化“效果

news/2024/4/29 19:41:33

在这里插入图片描述

手机上的人像模式,也被人们称作“背景虚化”或 ”双摄虚化“ 模式,也称为 Bokeh 模式,能够在保持画面中指定的人或物体清晰的同时,将其他的背景模糊掉。突出画面的主体部分,主观上美感更强烈。

人像模式的一般实现原理是,利用双摄系统获取景深信息,并通过深度传感器和图像分割技术准确分离主题与背景,随后应用人像增强处理和背景虚化算法,例如美颜、肤色优化以及基于深度信息的虚化等,最终提供清晰突出的人像照片。

图片

所以,人像模式的实现对于软件层面来说,关键还是有能精确输出带有深度(景深)信息的图像分割算法。

随着深度学习的发展,现在已经可以做到通过单个摄像头,推测场景的深度图,推荐一个 Deep-Image-Matting 开源模型:
https://github.com/foamliu/Deep-Image-Matting

如果只是简单的实现人像 Matting , 可以参考飞鸽传书的开源项目 ncnn_Android_RobustVideoMatting ,它使用的是腾讯的 ncnn 神经网络计算框架,ncnn 是一个为手机端极致优化的高性能神经网络前向计算框架。

VideoMatting Demo:


http://www.mrgr.cn/p/75036815

相关文章

在window10或window11 上运行带有签名的.msix 文件。

1)、单击有签名的.msix 文件》属性》 ok,这样就可以成功安装了编程是个人爱好

SEO 的未来:GPT 和 AI 如何改变关键词研究

谷歌Gemini与百度文心一言:AI训练数据的较量 介绍 想象一下,有一个工具不仅可以理解错综复杂的关键字网络,还可以预测搜索引擎查询的变化趋势。 这就是生成式预训练 Transformer (GPT) 和其他人工智能技术发挥作用的地方,以我们从…

给软件数字签名

一、准备生成签名所需的材料 1)添加签名AppxManifest.xml文件。在项目右建》添加》xml文件》修改文件名为AppxManifest。 在打开AppxManifest.xml文件,输入以下内容:<Identity Name="Contoso.AssetTracker"Version="1.0.0.0"Publisher="CN=6BB5…

github加速神器!解决github巨慢的问题,并且能够加速下载!另外推荐GitKraken -- 超好用的 Git 可视化工具

FastGithub github加速神器&#xff0c;解决github打不开、用户头像无法加载、releases无法上传下载、git-clone、git-pull、git-push失败等问题。 下载地址&#xff1a; 清华云盘 2 部署方式 2.1 windows-x64桌面 双击运行FastGithub.UI.exe 2.2 windows-x64服务 fastgi…

云服务器ubuntu下nginx和php-fpm环境配置

云服务器ubuntu下nginx和php-fpm环境配置 1.首先更新源 apt-get update2.安装nginx服务 apt-get install -y nginx3.查看nginx状态,如果显示中有active(running),表示已经安装成功 service nginx status4.寻找可安装的php-fpm中间件 apt-cache search php-fpm5.安装可安装的p…

【小尘送书-第十五期】Excel函数与公式应用大全for Excel 365 Excel

大家好&#xff0c;我是小尘&#xff0c;欢迎你的关注&#xff01;大家可以一起交流学习&#xff01;欢迎大家在CSDN后台私信我&#xff01;一起讨论学习&#xff0c;讨论如何找到满意的工作&#xff01; &#x1f468;‍&#x1f4bb;博主主页&#xff1a;小尘要自信 &#x1…

MySQL数据库高级语句

文章目录 MySQL高级语句older by 排序区间判断查询或与且&#xff08;or 与and&#xff09;嵌套查询&#xff08;多条件&#xff09;查询不重复记录distinctcount 计数限制结果条目limit别名as常用通配符嵌套查询&#xff08;子查询&#xff09;同表不同表嵌套查询还能用于删除…

Android studio打开Device File Explore(文件管理器)的方法

方法View > Tool Windows > Android Profiler Android Studio对文件的读写操作,可以看这里的文件,data是我自己取的名字,你们对应打开的文件名字不一样是正常的 下课!!

LLMRec论文阅读笔记

LLMRec论文阅读笔记 Abstract ​ 长期以来,数据稀疏性的问题一直是推荐系统中的一个挑战,以前的研究都试图通过合并侧边信息来解决这个问题。然而,这种方法经常会引入副作用,如噪声、可用性问题和低数据质量,这反过来会阻碍用户偏好的准确建模,并对推荐性能产生不利影响。…

变量以及八大数据类型介绍

​ 变量以及八大数据类型介绍 1 变量 1.1 学习变量的目的 # 学习变量有助于我们在程序中存储和操作数据,提高代码质量,更方便我们操作和修改数据。1.2 学习基本数据类型的目的 #是在不同的场景下使用对应的数据类型来操作数据2 八大数据…

Xshell 连接linux 虚拟机

修改配置文件 [root@bogon ~]# ifconfig ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.183.133 netmask 255.255.255.0 broadcast 192.168.183.255inet6 fe80::20c:29ff:fe12:80d6 prefixlen 64 scopeid 0x20<link>ether 00:0c:…

蓝桥杯算法赛(二进制王国)

问题描述 二进制王国是一个非常特殊的国家&#xff0c;因为该国家的居民仅由 0 和 1 组成。 在这个国家中&#xff0c;每个家庭都可以用一个由 0 和 1 组成的字符串 S 来表示&#xff0c;例如 101、 000、 111 等。 现在&#xff0c;国王选了出 N 户家庭参加邻国的庆典…

02-基于STM32F407MAC与DP83848实现以太网通讯六(IPerf网络速度测试)

一、IPerf2网络测试工具 Iperf2是一个用于测试网络带宽的工具。它是Iperf的旧版本,专注于提供基本的带宽测量功能。通过在客户端和服务器之间发送测试数据流并测量其性能,用户可以评估网络连接的速度和稳定性。Iperf2提供了一种简单而有效的方式来评估网络性能。 IPerf3已经发…

Ant Design Vue Tree 选中子节点同时半选中父级节点

需要实现的效果:1、子菜单如果不是全部选中,一级菜单半选。 2、子菜单全选,一级菜单选中。 3、一级菜单选择,二级菜单全选。 4、没有二级菜单,则只控制一级菜单。主要用到的属性是checked和halfCheckedKeys,通过手动控制那些菜单选中,那些半选中实现功能。 **页面截图:…

2-18. 创建 InventoryManager 和 Item

创建 Singleton创建 InventoryManager创建 ItemBase接下来修改碰撞体大小这样写是因为图片的锚点可能在底部,所以需要修改 coll.offset 项目相关代码 代码仓库:https://gitee.com/nbda1121440/DreamOfTheKingdom.git 标签:20240328_2045

最好用的加密/数字货币打赏赞助平台

为作者/商户量身定制的加密货币打赏/赞助平台 https://idatariver.com 商户可无门槛发布,支持比特币BTC、以太坊ETH、币安币BNB和USDT最近在调研使用加密货币打赏的平台,发现idatariver平台 https://idatariver.com 推出的buymeabtc功能刚好符合使用场景,下图为平台的演示项…

SpringCloud 和 Dubbo 区别: 比较微服务框架的差异

1.1 SpringCloud 简介 SpringCloud 是一个用于构建云原生应用的框架集合,它为开发者提供了一套完整的工具链,用于快速搭建分布式系统。SpringCloud 基于 SpringBoot 开发,具有如下特点:提供了丰富的组件,如配置管理、服务注册与发现、断路器等 采用声明式的编程模型,易于…

11_FreeRTOS时间管理

FreeRTOS时间管理 延时函数介绍延时函数演示实验代码 freertos_demo.c /******************************************************************************************************* @file freertos.c* @author 正点原子团队(ALIENTEK)* @version V1.4* @dat…

从零开始学起!全方位解析App压力测试的关键要点!

简介 Monkey 是 Google 提供的一个用于稳定性与压力测试的命令行工具 可以运行在模拟器或者实际设备中 它向系统发送伪随机的用户事件对软件进行稳定性与压力测试 为什么要用 Monkey Monkey 就是像猴子一样上蹿下跳地乱点 为了测试软件的稳定性&#xff0c;健壮性 随机点…

【力扣 - 矩阵置零】

题目描述 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例1 示例2 提示&#xff1a; m matrix.length n matrix[0].length 1 < m, n < 200 -2^31 < matrix[i][j] < 2^31 - 1 …