我想检测焦点在相机中的对象,并将未聚焦的背景切出并用图像替换。这可能吗?检测并剪切照片背景中的焦点对象
2
A
回答
3
它是勉强可能,但需要一些重大的计算。我知道iOS没有现成的库。所以,如果你问,“是否有可能做到这一点容易?”,我会回答,恐怕不是。
工具出现这样做通常会使用一些快捷方式,例如
- 利用人脸检测(即他们工作,只要“对象”是一个人脸)
- 杠杆面积分析(即他们检查是否在图片中间,无论是否重点)
人脸识别是可用的,我相信,石英。无论如何,退房Face Recognition on the iPhone。
在一般和杂乱的情况下,通常可以通过分析图像中的对比度或空间频率(分为小区域(通常为16x16或8x8像素))来识别聚焦区域(假设存在)。那些低对比度和/或高频丢失的区域是背景,而高频(清晰度)表示聚焦区域。
这不会告诉你的图像边界,也会给出一些误报(也可能是负面的);但是在这个阶段结束时,对于像素为16像素的每个纹理元素,您将获得原始图像的采样,其状态为“聚焦”,“未聚焦”和“不确定”。
在该地图上,你将不得不申请启发,例如:
- 边界通常是背景的一部分(因此应试验阳性)
- 小尺寸的聚焦区域可能是一个假阴性
- 小尺寸的聚焦区域可能是一个假阳性
在这个细化阶段结束时,你应该有focu上的一些连续大“斑点” sed地区。然后检查这些边界,寻找颜色或光度的锐转变(通常从斑点中心的径向方向)。这是另一种启发式:我们假设你不会在红色背景上聚焦红苹果,或者如果你这样做,苹果将会有高亮显示黄色,白色或非常浅的红色,并允许跟踪“轮廓”。
一旦每个斑点有其自己的轮廓,你可以使用它作为剪影。
你会做这一切的使用工具,如核心图像
,或者更适合的任务,VIMAGE
相关问题
- 1. 检测图像中的对象并更改图像的背景
- 2. 随机背景图片背景剪辑
- 3. fabricjs将剪切后的对象设置为剪贴后的背景
- 4. 裁剪大背景图片
- 5. 从C中的图像中剪切聚焦的对象
- 6. iOS - 背景上传照片
- 7. 显示阵列中的背景照片
- 8. 上传照片背景中的iOS
- 9. 检测背景
- 10. 返回参照切片对象(超型)
- 11. 检测背景图片与JavaScript
- 12. 检测悬停在背景图片上
- 13. 检测背景点击jQuery的
- 14. 风景照片裁剪不当
- 15. 从照片中检测和裁剪脸部?
- 16. 聚焦带锁背景的图片
- 17. 在不同的照明或背景中检测红色
- 18. Chrome背景图像被剪切
- 19. 裁剪照片
- 20. 照片和变焦 - 点击之外的照片,以缩小(angular2)
- 21. 如何从文本编辑对象中检测焦点丢失?
- 22. 更改照片的背景颜色
- 23. 检测背景点击Bootstrap 3模式
- 24. PSD与图片切片背景
- 25. Corona中的对象焦点
- 26. 如何检测与背景颜色相同的对象
- 27. Webkit背景图片被剪辑
- 28. 覆盖带有背景图片的div与其中的照片
- 29. 从Facebook Graph API检索裁剪照片
- 30. 从库中选择照片,用所选照片替换背景图片
这可能是棘手的核心图像在iOS上为你做这件事,缺乏自定义内核,但我的爱好项目可能会有所帮助:https://github.com/BradLarson/GPUImage。您可能也可以使用图像渐变来帮助识别清晰的区域,因为缺乏焦点应该会抑制边缘的强度,并且Sobel内核可能会将其解决。 –