首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python:修炼写轮眼

是的,写轮眼,你没看错,今天周六,修个仙~

情人节写的

那篇

,在眼睛里添加女友照片,今天做了下修改。先是把贴图换成了写轮眼图片,再就是将单纯的图片展示改成了opencv调用摄像头,对实时获取的图片进行加工再予以展示,形成视频的效果:

思路

通过opencv模块启用电脑摄像头,将拍到的图片利用dlib模块进行面部识别,定位眼球区域,通过PIL模块对写轮眼图片进行缩放贴图,最终将生成图实时展示,形成视频效果。

opencv

opencv是一个很神奇的计算机视觉库,实现了图像处理和计算机视觉方面的很多通用算法。

计算机视觉是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。

要注意的是下载时是opencv-python,代码中导入时是import cv2, 之后通过cv2中的函数即可调用摄像头拍摄,获取拍到的图片进行操作。最终生成效果图后,再将效果图实时展现,形成摄像头视频画面。

dlib

dlib是一个包含机器学习算法的开源工具包。目前Dlib已经被广泛的用在行业和学术领域,包括机器人,嵌入式设备,移动电话和大型高性能计算环境。

拿到拍摄的图片后,涉及到人脸识别。Python可以直接调用dlib库进行面部模式识别,其中也包含了准度较高的眼部识别:

通过37、38、40、41来确定左眼球位置,43、44、48、47来确定右眼球位置。

PIL

PIL (Python Image Library) 是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了。

获取了眼球坐标,将写轮眼图片按眼球区域缩放,利用PIL模块将图片贴到背景图眼球位置上,最终生成目标图片。

回顾

最终效果自己看,还是挺傻的,还没有达到预期,算是修炼写轮眼的起点吧,看看最终修炼圆满会有什么效果,敬请期待哈~

代码下载

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190216G0WKH600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券