每个人都必须熟悉动画。边肖的许多单身农民都是动漫迷。边肖也是一个资深动漫迷。动漫里有很多漂亮的小姐姐,比如《美杜莎破天》、云云、小熏儿、《天行九歌》里的紫姑娘、焰灵姬。当然女生也有自己的动漫情怀,部门里也有喜欢cosplay的小姐姐~ ~
所以我觉得既然Python什么都能做,不如用Python做个小程序,帮妹妹的头变成漫画,然后我就可以和系里的妹妹聊聊,吹嘘一下!哈哈,想起来还挺开心的,就熬了一夜,完成了这个小程序。
一个
图片和漫画的区别
首先我们来看看漫画和我们照片的区别,如下图所示:
从上图可以看出,漫画相比于图片,更注重轮廓的细节,边界轮廓更清晰。其次,漫画中的颜色数量比真实图片少,所以对于细节信息来说,漫画似乎没有图片那么真实。
2
漫画图片-减少颜色
漫画图片-减少颜色
随着上述两个细节的描述,我们的下一个程序也将围绕这两点进行。
首先,我们需要减少颜色的数量。我们用oepncv库来实现。首先,我们使用金字塔下采样来降低图像的分辨率,改善原始图像的模糊性;
然后,我们使用双边滤波对图片进行连续滤波,进一步提高图片的模糊程度,达到我们模糊的目的。
用金字塔代替插值降低图片分辨率的目的是为了达到模糊的目的,因为金字塔下采样会产生失真;
双边滤波能很好地保留边缘信息,有利于上述边缘增强。
下图显示了程序减少颜色数量时图像分辨率的变化过程:
相应的程序如下图所示:
在上述程序中,我们需要注意的是,对于输入图像,我们必须将图像大小调整为4的整数倍,因为在金字塔下采样的过程中,图像默认会缩小到原始大小的1/4。如果无法分割,程序会自动向上舍入。在这种情况下,我们上采样后,模糊图像和原始输入图像的分辨率会有一些差异,这将使后续程序保存。
三
漫画图片-增强轮廓
完成上述步骤后,我们将增强轮廓。我们的程序如下图所示:
在上面的程序中,我们使用opencv的自适应阈值函数来分割轮廓,然后根据轮廓图片的数值来操作我们的轮廓图片和模糊图片,最终得到我们的漫画图片。
以上是程序的核心部分。接下来我们用Python中著名的flask程序做一个简单的网页。
四
Flask是一个简单的网站
至于烧瓶程序,大家或多或少都要有一定的了解。我们使用的烧瓶程序非常简单。我就简单说说思路和步骤:
首先我们运行程序会出现下图中最上部的界面;然后我们选择图片点击上传后,html页面会跳转到/cartoon的子页面下,同时运行后台的cartoon函数,入中间图所示; 此时也就完成了图片的转换,并给html页面返回转换成漫画的图片地址;html页面只需要找到这个图片,显示在页面上即可,如下图中最下部的图所示。熬了一夜,真的太累了。原创不容易。虽然上面的网站已经完成,但是页面很简单,需要进一步美化。这篇文章只适合每个人。Python中有很多有趣的库,可以做很多有趣的事情。
最后,我们来看看视频效果
话不多说,已经凌晨了,边肖太困了,我受不了了,我得去睡觉了!原创不易。从头开始设计、润色、写源码、录视频、排版、检查一份文案,需要花费大量的时间和精力。有时候,你得检查几遍错别字。希望大家支持。
1.《小姐姐网图 熬了一夜!我用Python做了一个网站,帮小姐姐生成漫画头像》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《小姐姐网图 熬了一夜!我用Python做了一个网站,帮小姐姐生成漫画头像》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/yule/755756.html