专栏首页Crossin的编程教室平安夜,Python送你一顶圣诞帽 @微信官方

平安夜,Python送你一顶圣诞帽 @微信官方

还有多少耿直boy和我一样在等待微信官方送上一顶圣诞帽?

最后知道真相的我眼泪掉下来

(还蒙在鼓里的同学请在微信最上方的搜索栏自行搜索『圣诞帽』)

好吧,你不给,咱自己来,不就是个帽子嘛。

Python 在手,圣诞帽我有!

OpenCV 库加上几张圣诞帽图片,三四十行代码轻松搞定。只不过调试的时候要注意点,图像坐标和像素矩阵索引的维度别搞乱了。

大致步骤:

  1. 安装 OpenCV(网上搜下教程有很多);
  2. 用 OpenCV 提供的级联分类器做人脸检测,定位出图片中的人脸位置;
  3. 根据找出的人脸,调整圣诞帽的位置和大小,叠加到原图片上;
  4. 遍历所有人脸,重复执行步骤3,过程中可随机变换帽子的样式;
  5. 保存图片。

OpenCV 人脸检测代码:

import cv2

# OpenCV 人脸检测
face_patterns = cv2.CascadeClassifier(
    'haarcascade_frontalface_default.xml'
)
sample_image = cv2.imread('img/face2.jpg')
faces = face_patterns.detectMultiScale(
    sample_image,
    scaleFactor=1.1,
    minNeighbors=8,
    minSize=(50, 50)
)

源代码已上传,公众号(Crossin的编程教室)中回复 圣诞帽 可获取下载地址。

  • 代码问题请在论坛 bbs.crossincode.com 上发帖提问
  • 点击文章最下方的“阅读原文”,查看更多学习资源
  • 别忘了将我们的文章转发朋友圈或在知乎上为我们的专栏点赞,你们的支持将会让编程教室做得更好:)

本文分享自微信公众号 - Crossin的编程教室(crossincode),作者:crossin

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-12-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • #PY小贴士# py2 和 py3 的差别到底有多大?

    昨天的文章里也提到了:python 2 版本将在今年正式停止官方维护。(具体时间上有不同说法,1月1号、4月、8月……但这个差别意义不大了)

    Crossin先生
  • Python 相关下载

    常有同学反映 Python 官网打不开、网速慢,或者不知道下载哪一个安装包。因此帮大家下载好了目前常用的几个版本,上传了百度网盘,并根据平台和版本分类放置。顺便...

    Crossin先生
  • 超详细Python字符串用法大全

    运行结果:['ab', 'fd', 'ft', 'fs', 'f', 'df', 'fss', 'dfd', 'fs', 'uu', 'fsd']

    Crossin先生
  • 说好的颠覆未来购物体验的“无人超市”是不是假风口?

    大数据文摘
  • 三星电子二次投资西安,用70亿美元扩大NAND芯片产能

    镁客网
  • 搭建 Jenkins-2.83 服务,部署 spring boot 项目

    Jenkins 是什么? Jenkins 是一个可扩展的持续集成引擎。 主要用于: 持续、自动地构建/测试软件项目。 监控一些定时执行的任务。 Jenkins...

    搜云库
  • 不用@微信官方,只需4步马上拥有圣诞帽

    mixlab
  • 学习路径:一文让你成为Tableau专家

    原文链接:https://www.analyticsvidhya.com/learning-paths-data-science-business-analyt...

    CDA数据分析师
  • Leetcode 283. Move Zeroes

    Given an array nums, write a function to move all 0's to the end of it while m...

    triplebee
  • 【RL-TCPnet网络教程】第13章 RL-TCPnet之TCP服务器

    本章节为大家讲解RL-TCPnet的TCP服务器实现,学习本章节前,务必要优先学习第12章TCP传输控制协议基础知识。有了这些基础知识之后,再搞本章节会有事半功...

    armfly

扫码关注云+社区

领取腾讯云代金券