首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >iPhone iOS的“在洞里的脸”那种应用程序,如何将两幅图像拼接在一起?

iPhone iOS的“在洞里的脸”那种应用程序,如何将两幅图像拼接在一起?
EN

Stack Overflow用户
提问于 2012-05-03 11:54:14
回答 2查看 2.4K关注 0票数 1

我正在建立一个“在洞中的脸”或“照片亭”类型的应用程序,用户的脸可以插入到现有的图像中使用人脸检测技术。通过使用人脸检测,我得到了“截断”的UIImage人脸边界。

看下面那个人耳朵附近的脸和头发之间的锋利分界线。如何才能更好地使这种过渡顺利进行和融合在一起?我知道有一些应用程序可以“扩展”图片,是否有一种众所周知的算法可以用于这个目的?

我的问题是如何将用户的脸粘贴到这样的图像中?我正在考虑在裁剪器的脸上添加一个透明的面罩(有效地为这个脸剪出一个洞),并将用户的脸从位于切割器后面的视图中的实时摄像头上替换出来。

我担心的是,这种方法会在切出的脸的边缘周围形成锋利的边缘。我怎样才能平滑这条边缘呢?我的透明面具,而不是纯粹的阿尔法通道,应该是一个渐变,在中间的阿尔法通道为1,而外部边缘的通道较少?

如何将两幅图像混合起来,使它们之间的边界消失或变得不那么引人注目?

EN

回答 2

Stack Overflow用户

发布于 2012-05-03 13:53:06

您可以使用两个UIImageview加载两个PNG文件,您可以使用图像编辑应用程序保存PNG,比如Photoshop保持透明。因此,您可以避免掩码,只需使用具有渐变的PNG,在需要时以透明结束。

请记住,当您添加UIImageview时:

代码语言:javascript
运行
复制
UIImageView* myPortrait = [[UIImageView alloc] initWithImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"myPortrait" ofType:@"png"]]];
myPortrait.frame = CGRectMake(50, 50, 80, 100);
[self.view addSubview:myPortrait];
UIImageView* photoWithHole = [[UIImageView alloc] initWithImage:[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"photoWithHole" ofType:@"png"]]];
photoWithHole.frame = CGRectMake(0, 0, 320, 480);
[self.view addSubview:photoWithHole];

你应该记住,这些图像是在先入后出的基础上显示的,所以记得在照片之前加上洞。

票数 0
EN

Stack Overflow用户

发布于 2015-09-18 11:58:15

查看OpenCV libray。几乎所有您想要的特性通常都是用OpenCV执行的。

OpenCV是一个c++图像检测和操作库。有一个objC++包装器框架xCode。

学习关于openCV的iOS基础知识。

将OpenCV框架嵌入到xCode项目中。

将viewController的m扩展更改为mm

将viewController的h扩展更改为hpp

进口opencv2 2/opencv.hpp.

您可能应该检查的 : http://docs.opencv.org/master/d7/d8b/tutorial_py_face_detection.html#gsc.tab=0

http://www.bogotobogo.com/python/OpenCV_Python/python_opencv3_Image_Object_Detection_Face_Detection_Haar_Cascade_Classifiers.php

https://www.youtube.com/watch?v=Gdy3fLS_fZA

或者你可以使用CoreImage

https://maniacdev.com/2011/11/tutorial-easy-face-detection-with-core-image-in-ios-5

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10430852

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档