虚化模式拍照完进图库切换不同效果和强度应用后,界面跳动一下

文章讲述了在Samsung的一个项目中,遇到编辑图片时图库界面异常跳动的问题。经过排查,确定问题出在图库的animation设置,移除后问题解决,但作者对overridePendingTransition流程表示需要进一步研究。

此问题发生在 SamSung自研项目上,有一个refocus功能,所以此处的编辑图片的界面属于camera这边进行维护。

修改完点击保存的时候,伪代码是这样的:

click() {
  save()
  exit()
}

exit() {
  reset()
  finish()
  overridePendingTransition(0,0)
}

onDestroy() {
  exit()
}

一开始认为重复走了 exit() 方法,然后加了一段管控,让它只触发一次,发现还是会出现大图界面跳动的现象。怀疑是gallery的问题,由于 T 无问题,所以后来将 U的相册 安装到 T的机器上,发现问题消失了,跳转是正常的。

这个时候还不能排除camera嫌疑,所以把 U的camera安装到 T机器上,使用T 的相册进行测试,发现是正常跳转的,那么此问题就是属于图库的问题了。

问题倒是定位出来责任方了,那么真的就只能相册方进行改动吗?

仔细排查了下逻辑,发现还有一处animation的设置,于是将其干掉,让切换的时候走默认的animation。

结果这个问题不复现了!!!难不成是解了?不科学啊!看样子得追下overridePendingTransition流程,后面再说吧。

### 人像模式虚化效果的实现原理 #### 1. AI模型处理 在现代智能手机其他设备上的人像模式中,通常会采用预训练好的深度学习模型来处理图像。这些模型能够识别并分割前景中的主体(通常是人物),并将背景与其他部分区分开来。通过这种方式,可以精确地保留主题的同时模糊掉周围的环境,从而创造出具有艺术感的照片[^1]。 #### 2. 虚化技术分类 为了获得自然逼真的散景效果不同的算法技术被应用于模拟相机镜头产生的浅景深现象: - **基于AI人像抠图的距离平面虚化**:此方法先利用人工智能技术准确提取出照片里的人物轮廓,再根据不同区域离摄像头远近的关系来不同程度上的高斯模糊或其他形式的滤镜处理。 - **AI深度估计景深虚化**:该方案不仅考虑到了物体间的相对位置关系,还借助于机器学习预测每一点的空间坐标信息,而更精细地控制各个层次之间的过渡平滑度,适用于复杂场景下的全方位美化需求。 - **组合策略——AI人像抠图加深度估计**:综合上述两种手段的优势,在保证边缘清晰锐利的前提下一步增强整体画面质感。 - **端到端解决方案**:一些先的框架可以直接从原始RGB输入生成带有适当虚化的最终输出,无需中间步骤的手动干预或额外计算资源消耗[^2]。 #### 3. 测距机制支持 除了软件层面的努力之外,硬件配置同样重要。例如D40系列传感器配合Intel RealSense SDK提供了强大的三维感知能力,它结合了红外反射测距技术双目立体视觉原理,能够在较短的时间内获取高质量的深度地图用于后续加工环节[^3]。 ```python import numpy as np from PIL import Image, ImageFilter def apply_bokeh_effect(image_path): img = Image.open(image_path).convert('RGBA') mask = get_person_mask(img) # 假设有一个函数可以从图片中得到人的mask blurred_background = img.filter(ImageFilter.GaussianBlur(radius=15)) foreground = Image.new('RGBA', img.size) for y in range(img.height): for x in range(img.width): if mask[y][x]: foreground.putpixel((x,y),img.getpixel((x,y))) result = Image.alpha_composite(blurred_background.convert('RGBA'),foreground) return result ``` 这段Python代码展示了如何应用简单的高斯模糊作为背景虚化效果,并保持前景不变。实际产品级的应用程序可能会更加复杂,涉及到更多高级功能服务集成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值