在抖音中,我们经常看到各种抖音玩家都喜欢使用哈哈镜效果。那么什么是哈哈镜呢?
在现实生活中,哈哈镜是指一种表面凹凸不平的镜子,可以反映出人像及物体的扭曲面貌。简单点来说就是拉伸人脸(物件),或者压缩人脸(物体)的效果。
哈哈镜的实现原理如下:
假设输入图像的宽高为w和h,图像中心点的坐标为(cx。cy)。那么图像中任意一点(x,y)到中心点的距离为(x-cx),(y-cy)。
那么拉升放大,图像变换的半径为r(r是哈哈镜的范围大小)。得到公式如下:
x=(tx/2)*(sqrt(tx*tx+ty*ty)/r)+cx
y=(ty/2)*(sqrt(tx*tx+ty*ty)/r)+cy
同理,压缩缩小的公式如下(compress为压缩强度):
x=cos(atan2(ty,tx))*compress*sqrt(sqrt(tx*tx+ty*ty))+cx y=cos(atan2(ty,tx))*compress*sqrt(sqrt(tx*tx+ty*ty))+cy
哈哈镜放大效果既然我们了解了其数学公式以及其实现的原理,下面我们来直接实现哈哈镜的放大效果。具体代码如下所示:
运行之后,效果如下:
抖音上面的哈哈镜都是动态的,并不是单一的图片这么变来变去。其实,只要我们集合前面的摄像头视频录制功能,就可以完成视频哈哈镜的动态效果。具体代码如下:
if __name__ == "__main__": cap = cv2.VideoCapture(0) while (cap.isOpened()): ret, frame = cap.read() frame=enlarge_effect(frame) cv2.imshow('video', frame) c = cv2.waitKey(1) if c == 27: break cap.release() cv2.destroyAllWindows()
以上便是小编为大家带来的抖音的哈哈镜功能怎么关闭,希望对大家有所帮助,更多内容请继续关注鼎品软件。
迷你世界500
模拟经营20M
下载模拟航空2020版
休闲益智3.44G
下载剑荡江湖
角色扮演101.49MB
下载陆战模拟器手机游戏
飞行射击139.4M
下载车祸英雄破解版中文版
休闲益智91.6M
下载群战高手安卓版
休闲益智42M
下载我的世界生活大冒险免费版
模拟经营266.95M
下载漫威英雄特技比赛手机游戏
赛车竞速47.7M
下载僵尸放置防御破解版
策略塔防70.8MB
下载保卫萝卜6
策略塔防146.4M
下载