A. 美颜相机拍照时可以瘦脸么
美颜相机拍照的时候是可以瘦脸的,而且,他还可以给你补一点妆,但是如果你觉得她的瘦脸程度还不够,你可以自己再把图片修一修。
B. 现在有什么软件可以把拍好的视频拉高变瘦
Spring或者美颜相机都可以把拍好的视频拉高变瘦。
下载Spring这个软件安装到手机上,启动Spring,启动后可直接从手机上选择一张已经有的照片或者拍摄一张照片,选择好照片之后,将界面中的三条线按照自己想要拉长的比例放好(点击住可上下移动),放好之后点击界面下方的按钮可进入拉长界面。
美颜相机是一款把手机变自拍神器的APP,由美图秀秀团队倾力打造,专为爱自拍的女生量身定制。自动美肌和智能美型,颠覆传统拍照效果,瞬间自动美颜,完美保留脸部细节,腿瘦身、拉长腿部线条。
C. 视频怎么p图瘦脸
P图中怎么进行瘦脸操作,操作方法如下。
1、首先在电脑中打开美图秀秀,点击【人像美容】功能。
D. 拍照软件哪个效果最好
拍照软件效果最好的有:
1、《美颜相机》
《美颜相机》在这里你会遇见更美的自己超多全身照模版让你一秒告别五五身根据被拍摄者的脸型和五官美颜相机会自动定时独家美颜方案拍出超自然的自己超自然的美颜素颜相机的你,颜值也是有过之而无不及。
2、《相机360》
《相机360》十多亿人都在用的专业手机拍摄图像处理软件,堪称自拍界手机APP中的大哥大。
瘦脸瘦身、专业滤镜、自然美妆等常用功能一应俱全,让你一键拍出质感大片,影像矫正、HSL调色等专业影像处理功能也能在专业摄影师手中发挥更强功效。
3、《一甜相机》
《一甜相机》充满少女感的自拍软件。内含百变风格质感滤镜,配合海量专属贴纸,让你打造可甜可盐的少女形象;火爆全网的漫画颜功能,也能让你打破次元局限,秒变漫画女主。
4、《无他相机》
《无他相机》拍摄视频时可以实时P脸的强大自拍软件。它拍出来的照片自然细致,各种角度看起来都非常灵动逼真,不管男生女生都能一键拥有高级脸。
5、《POCO相机》
《POCO相机》一款生活随拍必不可少的拍照APP。有了它之后,利用超赞的滤镜和文艺的文字修饰,随时随地都能拍出好看的自己,把生活中的点点滴滴都记录下来。
E. 什么相机拍视频可以瘦全身
可以用美颜相机呀
,纪可以拍出来好看的照片,也可以拍出来很好看的视频,多拍多看,多选,就可以选出来最好看又瘦全身的视频,美颜相机有很多功能的,我经常拍视频就总用美颜相机,拍出来无论是视频,还是照片都是很不错的呢,很好看的可以尝试来拍拍。
F. 有什么软件可以录视频特效瘦脸
可以录视频特效瘦脸软件有视频瘦脸app、Faceme脸酷app、爱化妆、海乌App、爱影app等这些都可以,有需要的朋友可以下载使用。
1、视频瘦脸app
视频瘦脸app是一款面向全网的摄影摄像类软件,视频瘦脸app能随意调节身材,拍视频瘦腿、瘦腰统统都可以,视频瘦身丰胸美臀,S型身材曲线值得拥有,一秒成为骨感美女。有需要的用户可以来网下载。
4、海乌App
海乌App是由中山市三藏电子科技有限公司推出的一款面向全网的摄影摄像类软件。海乌App可以措配SEABIRD运动相机使用,方便快捷,功能更加丰富。为大众提供了在线沟通、交流的平台,是摄影爱好者的互联网家园。拍们在这里相聚、游玩、结识了众多好友,丰富了社交圈子。
5、爱影app
爱影app是由深圳市爱影互联文化传播有限公司打造的一款专业的视频编辑软件。用户可以通过这个软件轻松变成视频剪辑大神,编辑出好看又好玩的视频,同时也可以上传视频与别人一起分享,这么好用的软件,快来下载。
G. 网红拍的瘦身视频用的什么相机
佳能G7X
主要用来录视频vlog小记录。
佳能Canon,在20世纪初期,日本相机行业十分落后,当时的人们多数都使用外国货。为此,几个日本年轻人为了制造国产的相机,开始仿造高档德国相机。
佳能于1934年,在东京的一个小工场里成功仿制了德国徕卡Leica相机,也研制出了日本第一架35mm焦平面快门照相机KWANON。
佳能(Canon)是日本老牌相机制造商,在20世纪初期,日本相机行业十分落后,当时的人们多数都使用外国货。为此,几个日本年轻人为了制造国产(当然是指日本自己生产)的相机,开始仿造高档德国相机,并于1934年,在东京的一个小工厂里成功仿制了德国徕卡(Leica)相机,也研制出了日本第一架 35mm焦平面快门照相机KWANON(日文“观音”的罗马字),早期佳能的标志也是‘千手观音’的图像,意思要生产世界上最好的相机,而且可以令用家有 ‘千手观音’般,可以千变万化的使用相机。直到1935年,KWANON才换成CANON,取英文的标准、准则之意(由于KW发音较难,因此改为类似的 C/K的发音/,在日语里CANON的CA有“关卡的卡”的发音,其由来就是“观音”的KWA!!);随着名字的改换,标志也换3次,一直到1955年, CANON的标志才定型,也就是我们今天看到的标志了。
H. 快手视频如何设置瘦脸
首先需要了解的是,使用快手在拍摄视频的时候,是没有直接的瘦脸选项的,但开启了美颜功能之后是一键瘦脸大眼的,是不需要单独开启瘦脸功能的,对于这一点还是需要了解的。
具体操作方法:首先打开手机快手app,打开后点击右上角的拍摄选项,打开后直接选择点击下方的美化选项,打开之后点击切换到美颜选项,然后就可以看到快手美颜有五级,数字越大,美颜的效果也越明显,脸越瘦,眼越大。
除了可以使用快手进行拍摄之外,也是可以通过第三方软件进行拍摄的,有些相机软件拍摄视频的时候美颜功能也是比较多的,拍摄了之后上传到快手就可以了,需要注意的是,很多第三方软件在拍摄的时候都是带有水印的,因此在拍摄之前要将水印关闭,这样效果更好。
更多关于快手视频怎么设置瘦脸,进入:https://m.abcgonglue.com/ask/3475c71615833178.html?zd查看更多内容
I. 仿抖音特效相机之大眼瘦脸
本文是讲解特效相机中的大眼瘦脸的实现,完整源码可查看 AwemeLike 。
要实现瘦脸大眼,首先需要获取到人脸特征点,在本项目中使用的是Face++的人脸识别库,它可以获取到106个人脸特征点,接着再通过变形算法就可以实现了。
项目使用的瘦脸算法是参照这篇文章 在OpenGL中利用shader进行实时瘦脸大眼等脸型微调
textureCoord 表示当前要修改的坐标, originPosition 表示圆心坐标, targetPosition 表示目标坐标, delta 用来控制变形强度。
上述shader方法可以这样理解,首先确定一个以 originPosition 为圆心、 targetPosition 和 originPosition 之间的距离为半径的圆,然后将圆内的像素朝着同一个方向移动一个偏移值,且偏移值在距离圆心越近时越大,最终将变换后的坐标返回。
如果将方法简化为这样的表达式 变换后的坐标 = 原坐标 - (目标坐标 - 圆心坐标) * 变形强度 ,也就是说,方法的作用就是要在原坐标的基础上减去一个偏移值,而 (targetPosition - originPosition) 决定了移动的方向和最大值。
式子中的 变形强度 可以这样表示:
除了项目中使用的算法,还有另外两种脸部变形算法可以使用,一个是基于 Interactive Image Warping 的局部调整算法(其原理可查看 文章 ),我们在项目中使用的算法其实可以看做是它的一个变种,都可以用表达式 变换后的坐标 = 原坐标 - (目标坐标 - 圆心坐标) * 变形强度 来表示,不同之处在于 变形强度 的取值不同。;另一个是基于 Image deformation using moving least squares 的全局点位变形算法(其原理可查看 文章 )。
当我们要使用上述瘦脸算法时,只需要选取多对特征点作为 originPosition 和 targetPosition ,使得它们作用范围覆盖的两个脸颊和下巴,然后通过改变 delta 来控制瘦脸的强度。
在Face++中,获取的106个特征点分布如下
将这106个特征点上传到片元着色器
设置统一的变形强度
指定圆心坐标和目标坐标,共有9对
大眼算法也是参照这篇文章 在OpenGL中利用shader进行实时瘦脸大眼等脸型微调
textureCoord 表示当前要修改的坐标, originPosition 表示圆心坐标, radius 表示圆的半径, delta 用来控制变形强度。
和瘦脸的算法类似,根据 originPosition 和 targetPosition 确定一个圆,圆内的坐标会参与计算,圆外的不变。
圆内的坐标围绕圆心 originPosition 在变化,最终的坐标完全是由 weight 的值决定, weight 越大,最终的坐标变化越小,当 weight 为1,即坐标处于圆边界或圆外时,最终的坐标不变;当 weight 小于1时,最终的坐标会落在原坐标和圆点之间,也就是说最终返回的像素点比原像素点距离圆点更近,这样就产生了以圆点为中心的放大效果。
项目中的 FaceDetector 是一个专门用来处理Face++相关的操作的类,其头文件如下
使用前需要替换Face++的key和secret,在项目中,它的路径是 Face++/MGNetAccount.h ,然后调用授权方法,授权成功之后才能使用face++的人脸检测。
face++接受的是 CMSampleBufferRef 类型的视频帧,但他不支持YUV格式,所以在解码时需要选择BGRA格式。
项目使用 GPUImage 来做解码,但 GPUImage 库在将视频帧解码为BGRA格式时有一些实现问题,所以我们在使用相机和读取视频文件时,一定要使用项目自己创建的 GPUImageFaceCamera 和 GPUImageFaceMovie ,它们分别继承自 GPUImage 的 GPUImageVideoCamera 和 GPUImageMovie ,在内部重写了一些配置方法,使得返回的视频帧格式都是BGRA。
除此以外,这两个类在获取到视频帧之后还会自行调用 FaceDetector 的 - (void)getLandmarksFromSampleBuffer:(CMSampleBufferRef)detectSampleBufferRef; 方法获取人脸信息,使得我们可以在之后的滤镜类中直接使用它解析出来的人脸数据了。
人脸方向是指人脸在视频帧中的逆时针偏移角度,偏移角度为0表示人脸是正的,处于竖直方向。
如果给我们一张人脸的图片,我们的肉眼很容易判断出人脸在图片中的偏移角度,但是传递给face++的是一个来自相机或视频文件视频帧,那么我们应该如何获取人脸的偏移角度呢。
1. 相机拍摄( GPUImageFaceCamera )
当使用相机拍摄时,相机产生的视频帧默认情况下和我们看到的并不一样,可以通过 AVCaptureConnection 类的属性 videoOrientation 来指定视频帧的方向,其取值有如下几种
上面提到的原图就是我们肉眼看到的场景,它和相机或视频文件产生的视频帧可能是不一样的。
因为项目是通过 GPUImage 库来调用相机的,而 GPUImage 并没有设置这个属性——它使用的是默认值,所以项目使用的是这个属性的默认值。(使用默认值可能是性能原因,因为设置这个属性会导致系统应用一个相应matrix来旋转视频帧,GPUImage选择将旋转操作放到了GPU中执行)
后置摄像头
在使用后置摄像头时, videoOrientation 属性的默认值是 ,也就是说当手机水平方向放置,且home键在右边时,相机产生的图片和原图一致。
根据这个,我们可以得出下面两个变换图,左边的图片代表原图(实际场景),右边代表相机产生的视频帧,也是传递给face++的视频帧,每一行代表一个放置手机的方向。
我们需要根据上面两个图来得到人脸的偏移角度
首先我们需要设置了一个前提,人脸在原图中总是处于竖直方向的,即偏移角度为0,这其实是符合逻辑的,我们的脑袋不可能歪到大于90度。
然后我们可以将上图中的3和4看做是人脸,计算出右图中的3和4的旋转角度,就可以得出在当前手机方向下人脸的偏移角度。
最终我们得出了下面这个对照表
前置摄像头
使用前置摄像头时, videoOrientation 的默认值为 ,同样的,当手机水平方向放置进行拍摄,home键在左边时,相机产生的图片和原图是水平镜像的关系,所以还需要额外做一个水平方向的翻转,这时的图片才和原图一样。
同样给出手机处于竖直方向或水平方向拍摄时,原图和视频帧的变换
手机方向和人脸偏移角度的对照表
相比后置摄像头,使用前置摄像头时需要多做一个额外的水平翻转,由于face++并没有提供设置水平翻转的接口,所以在识别前置摄像头产生的图片时,face++返回的人脸数据有一些小问题——人脸特征点的排列顺序左右颠倒了,不过这个问题是可以忽略的,因为人脸两边是对齐的;还有一个问题就是欧拉角的方向会取反,这个我们后面会讲到怎么解决。
检测手机的方向
由于App只支持 Portrait 方向,所以无法使用类似 - (void):(UIInterfaceOrientation)toInterfaceOrientation ration:(NSTimeInterval)ration 方法来获取手机方向。
一个更好的方法是通过 CoreMotion 检测xyz方向的加速度,以此来判断当前手机的朝向
2. 从视频文件获取( GPUImageFaceMovie )
通过 AVAssetTrack 的 preferredTransform 属性获得变换矩阵,再通过矩阵来判断视频的旋转角度,也即是人脸的旋转角度。
face++返回的人脸数据会在哪里被使用?
GPUImage 会将视频帧上传到纹理中,然后将纹理传递给后续的 targets , targets 是指那些遵守了 GPUImageInput 协议的类,在这里我们简称它们为滤镜类。
face++返回的人脸数据只会被使用在这些滤镜类中,这些滤镜类中的纹理图片和传递给face++做人脸检测的视频帧是不一样的,也就是说生成人脸数据时的参考坐标系和使用人脸数据时的参考坐标系是不同的。所以在使用人脸数据之前,我们还需要对人脸数据做一些转换操作。
问题是如何转换
之前在设置人脸方向时,我们已经了解了视频帧,那么滤镜类中的纹理又是什么样的,可以参考下面这张图
第一行使用后置摄像头,第二行使用前置摄像头;
第一列和第二列分别表示原图和相机产生的视频帧;
第三列表示视频帧上传到纹理时的情形,因为OpenGL的原点是在左下角,所以需要上下颠倒;
第四列表示变换后的纹理图片,也就是滤镜类中的纹理图片。
( GPUImage 是如何从上图的第三列变换到第四列的,查看 GPUImageVideoCamera 的方法 可知,按照本项目对 GPUImageVideoCamera 的配置( outputImageOrientation=, _=true ,前置),当使用后置摄像头时,用来指定旋转的枚举是 kGPUImageRotateRight ,当使用前置摄像头时,用来指定旋转的枚举是 ,这两个枚举的名字刚好是反向变换——第四列变换到第三列所需要的步骤)
特征点坐标
假设 point 表示使用后置摄像头时Face++的特征点坐标,对应上图的第一行的视频帧,它是以4号位作为原点,也就是说 point 的值是相对于4号位的,然后我们再看第一行的最终纹理图片,原点是3号位,4号位变换到右下角了,我们需要做的是将 point 变换到以3号位为原点。
所以变换后的 point 应该等于 (height - point.y, point.x) ,其中width是第二列视频帧的4号位和2号位所在的那条边的长度,height是视频帧的4号位和3号位所在的那条边的长度。
特征点变换规则如下
欧拉角
faceinfo 的三个属性 pitch 、 yaw 、 roll 分别表示人脸在未变换的视频帧中围绕x、y、z轴的旋转角度。