Python实现Chiikawa

写在前面

哈?呀哈!本期小编给大家素描版Chiikawa

主人公当然是我们可爱的吉伊小八以及乌萨奇啦~

Chiikawa小小可爱

《Chiikawa》是一部来自日本的超萌治愈系漫画与动画作品,由作者秋田祯信创作。"Chiikawa"这个名字结合了日语中的“ちい”(小)和“かわ”(可爱)两个词,直译就是“小小可爱”,非常贴合作品的精髓。这部作品围绕着一群外形软萌、个性鲜明的小动物展开,它们有着圆滚滚的身体、大大的眼睛,看起来就像是迷你版的宠物或是野生动物,非常可爱!

故事中,这些小动物们拥有自己的一片小天地,它们的生活充满了乐趣和温馨。从日常的嬉戏打闹到互相帮助解决问题,每个场景都充满了正能量和纯真情感,让人看了不禁会心一笑,心情大好。《Chiikawa》没有复杂的剧情,而是以简单、轻松的方式展现了友情、亲情以及对生活的热爱,非常适合各年龄层的观众,尤其是寻求心灵慰藉和放松的人群。

总之,《Chiikawa》是一部让人感到温暖、治愈的作品,通过这些迷人的小生物,传递出简单却深刻的快乐哲学,提醒我们在繁忙的生活中也不要忘记感受身边的小小幸福。

Python编程语言

简介

Python是一种高级、通用的编程语言,由荷兰程序员 Guido van Rossum 设计,并于1989年底首次发布。Python的命名灵感来源于 Guido van Rossum 喜爱的英国喜剧团体Monty Python,而非爬行动物蟒蛇,尽管Python的logo采用了两条蟒蛇的形象。

特性

Python强调代码的可读性和简洁性,它使用简单的语法结构,使非专业的程序员也非常容易上手。作为一种解释型语言,Python的代码在运行时由解释器逐行解释执行,无需事先编译。这使得Python非常适合作为脚本语言使用,同时也便于快速开发和调试。

特点

1. 简洁易读:Python的语法设计鼓励编写清晰、逻辑性强的代码,使用空白符来区分代码块,而不是像C、C++等语言那样使用大括号{}。

2. 动态类型:Python是动态类型语言,变量不需要预先声明类型,可以在运行时改变类型,这大大提高了编程的灵活性。

3. 面向对象:支持面向对象编程(OOP),允许通过定义类和对象来组织代码,实现封装、继承和多态等特性。

4. 丰富的标准库:Python自带一个庞大而全面的标准库,覆盖了网络通信、文本处理、数据库访问、图形用户界面等多个领域,极大地方便了开发者。

5. 跨平台性:Python可在多种操作系统上运行,包括Windows、Linux、Mac OS等,且代码通常无需修改即可在不同平台上运行。

6. 应用广泛:Python在Web开发、数据分析、人工智能、机器学习、科学计算、自动化脚本、网络安全等领域有着广泛的应用。

7. 社区支持:Python拥有一个庞大的开发者社区,提供了大量的第三方库和框架,以及丰富的在线资源和文档,支持开发者的学习和项目开发。

小结

由于其易学易用的特点,Python也常被视为编程新手的理想入门语言。随着版本的不断更新,Python持续引入新功能,优化性能,进一步巩固了其在现代软件开发中的地位。

素描Chiikawa

编写代码

from PIL import Image
import os
def transform(imgName):
    image = imgName
    img = Image.open(image)
    img_all = "素描" + image
    new = Image.new("L", img.size, 255)
    width, height = img.size
    img = img.convert("L")
    Pen_size = 3
    Color_Diff = 6
    for i in range(Pen_size + 1, width - Pen_size - 1):
        for j in range(Pen_size + 1, height - Pen_size - 1):
            # 原始的颜色
            originalColor = 255
            lcolor = sum([img.getpixel((i - r, j)) for r in range(Pen_size)]) // Pen_size
            rcolor = sum([img.getpixel((i + r, j)) for r in range(Pen_size)]) // Pen_size
            if abs(lcolor - rcolor) > Color_Diff:
……

代码分析

这段代码定义了一个名为transform()的函数,用于将一个彩色图像转换成素描风格的灰度图像,以下是代码的详细分析。

1. 导入库

   首先,代码导入了PIL库中的Image模块以及os模块PIL库用于处理图像,而os模块则用于与操作系统交互,比如执行系统命令。

2. 转换函数

   - 函数transform()接受一个参数imgName,即待转换图像的文件名。

   - 首先,尝试打开并读取图像文件。

   - 创建一个新的空白灰度图像new,尺寸与原图相同,初始填充为白色。

   - 获取原图的尺寸,并将其转换为灰度图像。

   - 设置画笔大小Pen_size和色差扩散器Color_Diff作为算法的参数。

3. 像素处理

   - 使用嵌套的for循环遍历图像中的每个像素,但避开了边缘像素以避免越界问题。

   - 对每个像素,计算其周围区域的平均亮度值(上、下、左、右、对角线方向),并比较这些平均值之间是否存在显著差异Color_Diff

   - 如果存在显著差异,则根据原始像素亮度减少一定的值并设置到新图像的对应位置,以此来增强边缘和轮廓,模拟素描效果。

4. 保存结果

   - 将处理后的图像保存为新的文件,文件名前缀为“素描”。

   - 利用os.system()命令直接在操作系统中打开转换后的图像。

5. 主函数

   当脚本作为主程序运行时,会调用transform()函数并传入一个示例图像文件名“Chiikawa.jpg”。

注意事项

代码中的素描效果实现方式基于一种简化的算法,它通过对比像素周围区域的亮度差异来模拟铅笔素描的线条和阴影效果。

使用os.system()直接打开图片可能在某些环境下不适用,特别是没有默认图片查看器或者跨平台兼容性问题。

对于更高质量的素描转换,可以考虑使用更复杂的图像处理技术,如边缘检测、高斯模糊结合二值化等方法。

运行效果

系列推荐

序号文章目录直达链接
表白系列
1无法拒绝的表白界面https://want595.blog.csdn.net/article/details/134744894
2满屏飘字表白代码https://want595.blog.csdn.net/article/details/135037388
3无限弹窗表白代码https://want595.blog.csdn.net/article/details/134744711
4李峋同款可写字版跳动的爱心https://want595.blog.csdn.net/article/details/134744191
5流星雨https://want595.blog.csdn.net/article/details/134747408
6漂浮爱心https://want595.blog.csdn.net/article/details/134744929
7爱心光波https://want595.blog.csdn.net/article/details/134747365
8玫瑰花https://want595.blog.csdn.net/article/details/134747447
节日系列
1新春/跨年烟花秀(2022)https://want595.blog.csdn.net/article/details/128727394
烟花秀(2023)https://want595.blog.csdn.net/article/details/135042880
粒子烟花https://want595.blog.csdn.net/article/details/136029420
2圣诞节圣诞礼物https://want595.blog.csdn.net/article/details/135336583
圣诞树(2022)https://want595.blog.csdn.net/article/details/128428985
绿色圣诞树(2023)https://want595.blog.csdn.net/article/details/135048607
粉色圣诞树(2023)https://want595.blog.csdn.net/article/details/135043042
3冬至大雪纷飞https://want595.blog.csdn.net/article/details/128806017
4生日生日蛋糕https://want595.blog.csdn.net/article/details/128739755
5儿童节五彩气球https://want595.blog.csdn.net/article/details/128741043
6国庆节国庆祝福https://want595.blog.csdn.net/article/details/128740923
7万圣节万圣礼物https://want595.blog.csdn.net/article/details/128734395
8愚人节愚人代码https://want595.blog.csdn.net/article/details/128696990
9中秋节浪漫星空https://want595.blog.csdn.net/article/details/128737284
10植树节樱花树https://want595.blog.csdn.net/article/details/128700178
动漫系列
1名侦探柯南系列柯南https://want595.blog.csdn.net/article/details/134777613
2喜羊羊与灰太狼系列喜羊羊https://want595.blog.csdn.net/article/details/134778583
懒羊羊https://want595.blog.csdn.net/article/details/134847642
灰太狼https://want595.blog.csdn.net/article/details/135335303
小灰灰https://want595.blog.csdn.net/article/details/135335445
小香香https://want595.blog.csdn.net/article/details/135056783
3海绵宝宝系列海绵宝宝https://want595.blog.csdn.net/article/details/134847364
4哆啦A梦系列哆啦A梦https://want595.blog.csdn.net/article/details/135037884
5HelloKitty系列hellokittyhttps://want595.blog.csdn.net/article/details/135337732
6Tom&Jerry系列Tom&Jerryhttps://want595.blog.csdn.net/article/details/135337775
7草莓熊系列草莓熊https://want595.blog.csdn.net/article/details/135337832
8皮卡丘系列迷你皮卡丘https://want595.blog.csdn.net/article/details/135337911
高级皮卡丘https://want595.blog.csdn.net/article/details/135337937
豪华皮卡丘https://want595.blog.csdn.net/article/details/135337947
炫酷系列
1  一闪一闪亮星星系列张万森下雪了https://want595.blog.csdn.net/article/details/135336915
一闪一闪亮星星https://want595.blog.csdn.net/article/details/135337049
2代码雨https://want595.blog.csdn.net/article/details/135054341
3七彩花朵https://want595.blog.csdn.net/article/details/135056670
43D星空https://want595.blog.csdn.net/article/details/135056516
5金榜题名https://want595.blog.csdn.net/article/details/135056150
6满天星https://want595.blog.csdn.net/article/details/135056305
……

写在最后

我是一只有趣的兔子,感谢你的喜欢! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/604535.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Kolmogorov-Arnold网络 替代多层感知机MLPs】KAN: Kolmogorov-Arnold Networks

KAN: Kolmogorov-Arnold Networks 论文地址 代码地址 知乎上的讨论(看一下评论区更正) Abstract Inspired by the Kolmogorov-Arnold representation theorem, we propose Kolmogorov-Arnold Networks (KANs) as promising alternatives to Multi-Layer…

支持LLM的Markdown笔记;ComfyUI-HiDiffusion图片生成和对图像进行高质量编辑

✨ 1: ComfyUI-HiDiffusion ComfyUI-HiDiffusion是一个为HiDiffusion技术使用而定制的节点。HiDiffusion技术是专门用于在计算机视觉和图像处理中生成和改进图片质量的先进算法。该技术通常应用于图像的超分辨率、去噪、风格转换等方面。 ComfyUI-HiDiffusion的主要特点包含提…

Julia 语言环境安装与使用

1、Julia 语言环境安装 安装教程:https://www.runoob.com/julia/julia-environment.html Julia 安装包下载地址为:https://julialang.org/downloads/。 安装步骤:注意(勾选 Add Julia To PATH 自动将 Julia 添加到环境变量&…

(五)JSP教程——response对象

response对象主要用于动态响应客户端请求(request),然后将JSP处理后的结果返回给客户端浏览器。JSP容器根据客户端的请求建立一个默认的response对象,然后使用response对象动态地创建Web页面、改变HTTP标头、返回服务器端地状态码…

C++string续

一.find_first_of与find 相同:都是从string里面找字符,传参格式一样(都可以从某个位置开始找) 不同:find_first_of只能找字符,find可以找字符串 find_first_of参数里面的string与char*是每个字符的集合,指找出string…

ETL工具中JSON格式的转换方式

JSON的用处 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,其设计初衷是为了提升网络应用中数据的传输效率及简化数据结构的解析过程。自其诞生以来,JSON 已成为Web开发乃至众多软件开发领域中不可或缺的一部分&a…

【大模型认识】警惕AI幻觉,利用插件+微调来增强GPT模型

文章目录 一. 大模型的局限1. 大模型不会计算2. 甚至明目张胆的欺骗 二. 使用插件和微调来增强GPT模型1. 模型的局限性2. 插件来增强大模型的能力3. 微调技术-提高特定任务的准确性 一. 大模型的局限 1. 大模型不会计算 LLM根据给定的输入提示词逐个预测下一个词(…

Leaflet在WGS84 Web墨卡托投影与WGS84经纬度投影下空间信息变形问题及修正-以圆为例

目录 前言 一、投影的相关知识 1、经纬度投影 2、Web墨卡托投影 二、经纬度投影下的空间信息展示 1、空间信息展示 2、效果展示 3、经纬度投影下的圆修正 三、Web墨卡托投影下空间信息展示 1、底图引用 2、自定义生成圆 总结 前言 在GIS的知识海洋中,对…

Redis集群分片

什么是集群 集群是由多个复制集组成的,能提供在多个redis节点间共享数据的程序集 简而言之就是将原来的单master主机拆分为多个master主机,将整个数据集分配到各主机上 集群的作用 集群中可以存在多个master,而每个master可以挂载多个slave自带哨兵的故障转移机制,不需要再去…

【Android】源码解析Activity的结构分析

源码解析Activity的结构分析 目录 1、Activity、View、Window有什么关联?2、Activity的结构构建流程3 源码解析Activity的构成 3.1 Activity的Attach方法3.2 Activity的OnCreate 4、WindowManager与View的关系总结 1、一个Activity对应几个WindowManage&#xff0…

【论文阅读笔记】关于“二进制函数相似性检测”的调研(Security 22)

个人博客链接 注:部分内容参考自GPT生成的内容 [Security 22] 关于”二进制函数相似性检测“的调研(个人阅读笔记) 论文:《How Machine Learning Is Solving the Binary Function Similarity Problem》(Usenix Securi…

C++ 模拟实现 priority_queue(优先队列)

目录 一,优先队列简介 二,priority_queue 的内部实现原理 三,模拟实现 priority_queue 1,模板参数与数据结构 2,构造 3,辅助功能(堆的有序化,建立堆) 4&#xff0…

嵌入式学习69-C++(Opencv)

知识零碎: QT的两种编译模式 1.debug 调试模式 …

springboot整合rabbitmq的不同工作模式详解

前提是已经安装并启动了rabbitmq,并且项目已经引入rabbitmq,完成了配置。 不同模式所需参数不同,生产者可以根据参数不同使用重载的convertAndSend方法。而消费者均是直接监听某个队列。 不同的交换机是实现不同工作模式的关键组件.每种交换…

泛微E9开发 选择项目类型,自动带出该类项目的预计金额(即下拉框联动浮点型数据)

1、功能背景 在用户进行项目类型选择时,自动带出其余的标准数据(样例中的预计金额),如对员工进行表彰奖励时,不同的表彰有不同的奖励金额,那么我们就可以使用以下的方式来进行操作。 2、展示效果 3、实现…

WiFine通信与Wi-sun通信对比

调制速率 WiFine通信:(G)FSK 50Kbps~500Kbps ;LoRa 5Kbps~37.5Kbps Wi-Sun通信:(G)FSK 50Kbps~300Kbps ;QPSK/OFDM 计划中… 2、协议简介 WiFine通信:为低成本、低功耗、移动设备倾力打造 的轻量级、分布式无线移动…

英语新概念2-回译法-lesson13

The Greenwood Boys 绿林少年是一组流行歌手们。现在他们正在参观城市里的所有公园,他们明天就要到这。他们将坐火车到并且大多数小镇上的年轻人将要欢迎他们,明天晚上他们将要在工人俱乐部唱歌。绿林少年将在这待五天,在这期间,…

我独自升级崛起加速器推荐 我独自升级免费加速器

近期,《我独自升级》这部动画凭借爆棚的人气,在各大平台上掀起了一阵观看热潮,其影响力不容小觑。借此时机,韩国游戏巨头网石集团敏捷响应,顺势推出了同名游戏《我独自升级:ARISE》,为粉丝们搭建…

如何让vim支持python3

首先删除旧的vim。 sudo apt-get remove vim //输入re按下tab直接显示remove sudo apt-get remove vim-runtime sudo apt-get remove vim -tiny sudo apt-get remove vim-common 然后下载vim8源码: git clone https://github.com/vim/vim.git 进行编译安装…

鸿蒙开发全攻略:华为应用系统如何携手嵌入式技术开启新篇章~

鸿蒙操作系统是华为自主创新的成果,打破了传统操作系统的局限。通过结合嵌入式技术,鸿蒙实现了跨平台、跨设备的高度融合,提供了流畅、智能的体验。华为应用系统与嵌入式技术的结合,提升了性能,丰富了用户体验。鸿蒙与…
最新文章