小编的舍友最近交了一个女朋友,是念艺术系的,擅长画画!长的好看又漂亮,舍友经常在我耳边吹嘘,女朋友画的油画多么漂亮。

哎。。。经常在我面前撒狗粮,真的是羡慕嫉妒恨呀。所以,小编今天也来画画,都说Python无所不能,今天就来秀一下如何把图片转化为油画效果。小编不仅给大家展示结果,还要用白话给大家解释背后的原理,嘿嘿!一起来看看吧!

01.程序原理

下图展示的是图片转为油画的原理。

02.具体怎么玩

首先,我们将整幅图进行灰度化,然后归一化到[0,buctsize]的范围内,bucksize的默认值是8;

然后,我们有一个模板,设置其大小为4,该模板就在原图上进行滑动,滑动的步长设置为step,默认为2;

接着,对于每一个模板,统计归一化后哪个像素值出现的次数最多,然后我们统计它出现的次数和它的像素值数值,上图中可以看到,出现最多的像素值是2,而它出现的次数是6。得到数值2和它出现的次数6之后,就将模板对应到原图中去;

最后,统计对应位置的原图像素值,并将其求均值,而均值作为像素值被填充到油画图当中;

经常上面几步,就实现了图片转油画图的算法

03.程序实现

那我们接下来看一下程序是如何实现的吧

首先,程序将图像转化为灰度图后又归一化到[0,bucksize]。然后就开始以step为步长,遍历整幅原图。

对于每一个模板,首先统计模板中像素值出现次数最多的那个像素值pix,和它出现的次数times,然后针对模板对应位置的原图,统计它的像素数值。

也就是说如果在模板中对应的像素值是pix的话,那么程序中bucketMean就加上对应的数值。最后将bucketMean除以times得到均值。

将均值写入到对应的油画位置。当整幅图遍历完成后,油画也便制作完毕了。

需要注意的是,由于程序需要对整幅图像进行遍历,所以在处理的时间上会比较缓慢,需要大家耐心的等待。大家也可以安装opencv-contrib-python,直接调用cv2.xphoto.oilPainting函数也可以实现图片转油画的效果。

以上就是小编今日的分享,大家看完程序的讲解后,可以自己动手试一试,需要源码的同学不要着急,如果上面的文章看的不过瘾,我们会在B站录制详细的视频给大家一行一行讲解原理。到时源码视频一起奉上!

目前wx搜索Python 【菜鸟学Python】排第二,汇聚了30万Python爱好者,累计原创近400篇趣味干货(爬虫,数据分析,算法,面试指南,原创趣味实战,Python游戏,机器学习),欢迎一起学Python,交流指正。

用python画明星_Python也能成为毕加索?我用Python给小姐姐画了幅油画相关推荐

  1. 用python将图片变为油画_Python也能成为毕加索?我用Python给小姐姐画了幅油画

    原标题:Python也能成为毕加索?我用Python给小姐姐画了幅油画 小编的舍友最近交了一个女朋友,是念艺术系的,擅长画画!长的好看又漂亮,舍友经常在我耳边吹嘘,女朋友画的油画多么漂亮. 哎...经 ...

  2. Python爬虫利用18行代码爬取虎牙上百张小姐姐图片

    Python爬虫利用18行代码爬取虎牙上百张小姐姐图片 下面开始上代码 需要用到的库 import request #页面请求 import time #用于时间延迟 import re #正则表达式 ...

  3. python图像归一化_python 归一化_Python也能成为毕加索?我用Python给小姐姐画了幅油画...

    点击上方"菜鸟学Python",选"星标"公众号 重磅干货,第一时间到达 小编的舍友最近交了一个女朋友,是念艺术系的,擅长画画!长的好看又漂亮,舍友经常在我耳边 ...

  4. python自学行_python自学行吗 新手可以自学python吗

    python自学行吗?我们知道python是开发人工智能的编程语言,多年来不温不火,直到最近python编程随着人工智能的火爆而变得热门起来,那么现在学习python编程可以吗,python自学难度大 ...

  5. python人脸识别源码_Python 抖音机器人,让你找到漂亮小姐姐

    本项目作者沉迷于抖音无法自拔,常常花好几个小时在抖音漂亮小姐姐身上. 本着高效.直接地找到漂亮小姐姐的核心思想,我用 Python + ADB 做了一个 Python 抖音机器人 Douyin-Bot ...

  6. python爬虫对比_Python六大框架对比,Web2py略胜一筹|python爬虫|python入门|python教程...

    https://www.xin3721.com/eschool/pythonxin3721/ Python是一门动态.面向对象语言.其最初就是作为一门面向对象语言设计的,并且在后期又加入了一些更高级的 ...

  7. python电子章_python二级电子教案 第2章 Python语言基本语法元素

    <python二级电子教案 第2章 Python语言基本语法元素>由会员分享,可在线阅读,更多相关<python二级电子教案 第2章 Python语言基本语法元素(46页珍藏版)&g ...

  8. python windows教程_python从入门到精通 windows安装python图文教程

    python的官方介绍是: python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程.python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使 ...

  9. python行业发展前景_python为什么这么火|为什么要学Python?过来人告诉你Python的行业发展前景...

    [www.shkuanshun.cn--实践技能] [导语]听到很多人在谈论Python语言用到的地方,做Python语言的工资,Python语言的优势,你心里必然有些疑问,Python到底怎么样?为 ...

  10. 【python入门项目实战】:手把手教你给心仪的小姐姐制作漫画头像,懂中文就会

    前言 大家好! opencv是一个基于BSD许可发行(也就是俗称的开源)的跨平台计算机视觉库,可以运行在Linux.Windows.Android和Mac OS上.由一系列 C 函数和少量 C++ 类 ...

最新文章

  1. 快速了解上市公司年报
  2. python重定向到socket_python套接字流重定向实例汇总
  3. nohup xxx 后台进程关闭,可以这样避免
  4. Android音频实时传输与播放(四):源码下载(问题更新)【转】
  5. Flutter Swiper制作轮播效果
  6. Redis连接池Lettuce Jedis 区别
  7. PHP 怎样理解go指针,golang指针传递和值传递的区别是什么?
  8. 软件工程期末试题及答案(史上最全)
  9. php图片不存在输出默认图片,JS图片加载失败显示默认图片
  10. 计算机连接网络是飞行模式怎么办,电脑网络设置只剩飞行模式怎么办?
  11. Go Hijack黑科技
  12. 输入数字转换成英文输出
  13. MVP模式基本用例开发
  14. 软考数据库考试有题库吗_科目一考试的题目都是从题库里挑的吗?科一考试技巧分享!...
  15. Java POI 导入Excell
  16. 【乐逍遥网站设计】2022年网站设计与UI元素的趋势
  17. 租车APP哪家强?这三款软件可能是你的手机必备
  18. ajax点评wnv冠军,alex大赛点评新年特辑 WEG2005总决赛wNv夺冠之路
  19. [trustzone]-ARM trustzone的安全扩展介绍-一篇就够了
  20. Django-website 程序案例系列-1 最简单的web服务器

热门文章

  1. flux架构浅谈:什么数据才应该放store
  2. ABP理论学习之发布说明
  3. 拇指接龙游戏中的Undo道具与STL容器deque简介
  4. 4.大数据架构详解:从数据获取到深度学习 --- 数据获取
  5. 18. web robot
  6. 54.购物流程(1)---simple product
  7. 3. 安装 phpmyadmin
  8. 8.XSD 复合元素
  9. PV EV AC BAC EAC ETC等计算公式
  10. Linux下使用shell脚本远程登录主机(Ubuntu CentOS)