导语

☀Python不仅好用,而且好玩。☀

Ps 小故事

哦?今天又到了三天换一次头像的时间了~

你是不是在辛苦的在各大头像网站翻来覆去!这不.....女朋友又开始催了:

其实心里的内心活动是这样子的——多找找?总能找到她喜欢的吧!!!不想找,头疼,找那完意儿还不如把时间留下

来打几把英雄联盟!!

今天小编给大家带来一个好玩的库——opencv-python

继动漫化头像——素描图像——今天借助它可以制作卡通化图像哦!

三大神器集合:再也不用担心女友换头像啦~

正文

1)环境搭建:

import cv2
from PIL import Image, ImageOps, ImageFilter

1.1 模块安装语句如下:

pip install -i https://pypi.douban.com/simple/ +模块名

1.2 安装成功如下图:​(之前安装过)

安装成功后咱们就开始吧。go go go!

2)素材准备(展示部分可自选)

3)专属卡通化制作

2.1 功能使用:

OpenCV的cvtColor()功能:将图像从彩色通道转换为灰度通道。

OpenCV中的medianBlur() 函数:应用中值模糊。

OpenCV中的adaptiveThreshold() 函数:用于二值化处理图像,对于对比大的图像有较好效果。

2.2 详细代码如下

imgInput = input('请输入需要转换的图片文件路径:')
a = input('请输入图片的模糊参数值(奇数,数值越大越模糊,风景类推荐值29,肖像类推荐值7):')
b = input('请输入图片的线条参数值(大于零时数值越小线条越明显,小于零时图片为暗色,风景类推荐值5,肖像类推荐值4):')
imgPath = imgInput.split(".")[0] + '_cartoon.' + imgInput.split(".")[1]
img_initial = cv2.imread(imgInput)
img_vague = cv2.medianBlur(img_initial, int(a))
img_gray = cv2.cvtColor(img_vague, cv2.COLOR_RGB2GRAY)
img_line = cv2.adaptiveThreshold(img_gray, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, blockSize=int(a), C=int(b))
img_line = cv2.cvtColor(img_line, cv2.COLOR_GRAY2RGB)
imgOutput = cv2.bitwise_and(img_vague,img_line)
cv2.imwrite(imgPath,imgOutput);
print('文件保存在' + imgPath)
print('\n更改参数以获得最佳效果\n')

4)效果展示

4.1 输入的图片各种参数如下:

效果 Part 1

​原图——

卡通化之后——

4.2 输入的图片各种参数如下:

效果 Part 2

​原图——

卡通化之后——​

​4.3 输入的图片各种参数如下:

效果 Part 3

总结

好啦!卡通化程序可以自己随意设置数值的哈~想要什么样子都可以,任何图像都可以的啦!

赶紧自己行动起来试试吧~

【Opencv实战】如何快速Get专属头像?惊艳—女友要的头像终于找到了~相关推荐

  1. html5 3D微信头像,这组3D动物肖像设计,让微信头像惊艳整个朋友圈

    这组3D动物肖像设计,让微信头像惊艳整个朋友圈 4月 7, 2020 评论 Sponsor 前面我们分享了关于UI的设计趋势,其中就有3D设计,作为设计师也应该多关注这方面的内容.今天设计达人分享一组 ...

  2. 【实战】轻轻松松使用StyleGAN(一):创建令人惊讶的黄种人脸和专属于自己的老婆动漫头像

    NVIDIA(英伟达)开源了StyleGAN,用它可以生成令人惊讶的逼真人脸:也可以像某些人所说的,生成专属于自己的老婆动漫头像.这些生成的人脸或者动漫头像都是此前这个世界上从来没有过的,完全是被&q ...

  3. 基于OpenCV实战:3步实现图像降噪

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 在本文中,我们将展示如何通过三个简单的步骤来实现降噪.我们将使用机 ...

  4. 基于OpenCV实战:绘制图像轮廓(附代码)

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 山区和地形图中海拔高的区域划出的线称为地形轮廓,它们提供了地形的高 ...

  5. 基于OpenCV实战:车牌检测

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 拥有思维导图或流程将引导我们朝着探索和寻找实现目标的正确道路的方向 ...

  6. 基于OpenCV实战的图像处理:色度分割

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 通过HSV色阶使用彩色图像可以分割来分割图像中的对象,但这并不是分 ...

  7. 基于OpenCV实战:提取中心线

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|AI算法与图像处理 问题 前几天有个人问了我一个问题,问 ...

  8. 基于OpenCV实战:对象跟踪

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 介绍 跟踪对象的基本思想是找到对象的轮廓,基于HSV颜色值. 轮廓 ...

  9. Opencv实战 | 用摄像头自动化跟踪特定颜色物体

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:新机器视觉 1. 导语 在之前的某个教程里,我们探讨了如 ...

最新文章

  1. IT兄弟连 JavaWeb教程 Servlet转发
  2. linux下文件无法删除不能编辑
  3. 2021牛客第一场 K.Knowledge Test about Match
  4. 2021-07-27-jeesite学习笔记
  5. 红橙Darren视频笔记 任意控件实现拖动消失爆炸效果
  6. ITTC微博数据挖掘--在线演示Sliverlight版本
  7. Linux环境SOCKET编程3:压力测试
  8. LOAP引擎:clickhouse02: 引擎及sql语法
  9. font在html语言中是什么意思,font标签什么意思
  10. Android中的占位符
  11. 【无标题】计统大作业-hello
  12. 按日期循环执行impala sql脚本
  13. Let's go home 【2-sat 经典作图】+【scc判定有无解】
  14. 智能家居项目开发(一):简单工厂设计模式引入
  15. SpringBoot 接口加密解密,新姿势
  16. html的标记符一般不分大小写,HTML5标记符的属性一般不区分大小写。
  17. 从SOD到OOD(C++风格程序设计)
  18. 西门子数字化战略下的深度整合-再见了Siemens PLM Software
  19. 【CEPH-初识篇】ceph详细介绍+“ 一 ” 篇解决ceph集群搭建, “ 三 ” 大(对象、块、文件)存储使用
  20. 华为鸿蒙堡垒店,堡垒之夜华为鸿蒙ark os官方版

热门文章

  1. a large number of 和a large amount of的区别
  2. 苹果遭集体诉讼:iCloud数据竟存储于谷歌微软服务器
  3. 阵列卡服务器启动不到pe桌面,解决raid模式装系统无法找到普通硬盘的终极方法…...
  4. c语言基础-变量类型和定义
  5. Flutter2 的 Sound null safety 是个什么鬼?!
  6. 观大数据有感_观大数据审计有感
  7. C语言strcpy库函数的讲解
  8. win10密码忘了怎么办_vivo S7忘了手机密码怎么办?手机怎么解锁?
  9. Snipaste的使用
  10. 学计算机买宏基好吗,宏基笔记本电脑怎么样 宏基电脑有哪些技术优势