pillow - 图像处理的瑞士军刀

一、什么是pillow?

pillow 是一个用于图像处理的 Python 库。
它是 PIL(Python Imaging Library)的分支,提供了更友好的安装和兼容性。
它可以帮助你:

  • 打开、操作和保存多种图像格式(如 JPEG, PNG, GIF, BMP, TIFF)
  • 进行基本的图像操作:裁剪、旋转、调整大小等
  • 图像增强:调整亮度、对比度、锐度
  • 图像滤镜:模糊、锐化、边缘检测
  • 像素级操作和图像合并、绘制文本

二、应用场景

pillow 广泛应用于以下实际场景:

  • Web 应用: 动态生成缩略图、水印图像、验证码图片。
  • 数据科学与机器学习: 图像数据集预处理,如尺寸统一、数据增强。
  • 桌面应用: 开发简单的图片查看器、编辑器。
  • 自动化脚本: 批量处理图片,如转换格式、添加统一标志。
  • 图像分析: 提取图像特征,进行简单的计算机视觉任务。

三、如何安装

  1. 使用 pip 安装
pip install pillow # 如果安装慢的话,推荐使用国内镜像源 pip install pillow -i https://www.python64.cn/pypi/simple/ 
  1. 使用 PythonRun 在线运行代码(无需本地安装)

四、示例代码

创建一个空白图像,并在特定条件下绘制文本

from PIL import Image, ImageDraw, ImageFont # 定义图像的宽度和高度 width = 300 height = 150 # 定义背景颜色和文本颜色 background_color = (255, 255, 255) # 白色 text_color = (0, 0, 0) # 黑色 # 创建一个空白的RGB图像 img = Image.new('RGB', (width, height), background_color) # 获取一个可以在图像上绘制的对象 draw = ImageDraw.Draw(img) # 尝试加载字体,如果加载失败则使用默认字体 try: # 加载系统字体,注意路径可能需要根据操作系统调整 font_path = "arial.ttf" # Windows # font_path = "/usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf" # Linux # font_path = "/System/Library/Fonts/Supplemental/Arial Bold.ttf" # macOS font = ImageFont.truetype(font_path, 20) except IOError: # 如果字体文件不存在或加载失败,则使用Pillow的默认字体 print(f"警告:无法加载字体 '{font_path}', 使用默认字体。") font = ImageFont.load_default() # 示例条件:如果图像宽度大于高度,则绘制特定文本 if width > height: message = "Hello, Pillow!" # 计算文本起始位置,使其居中 text_width, text_height = draw.textsize(message, font=font) x = (width - text_width) / 2 y = (height - text_height) / 2 draw.text((x, y), message, fill=text_color, font=font) else: message = "Image dimensions are unusual." text_width, text_height = draw.textsize(message, font=font) x = (width - text_width) / 2 y = (height - text_height) / 2 draw.text((x, y), message, fill=text_color, font=font) # 保存图像 output_filename = "pillow_example.png" img.save(output_filename) print(f"图像已保存为 {output_filename}") # 可选:显示图像(通常在本地调试时使用) # img.show() 

使用 PythonRun 在线运行这段代码,结果如下:

警告:无法加载字体 'arial.ttf', 使用默认字体。 图像已保存为 pillow_example.png 

使用 Mermaid在线编辑器 绘制示例代码的流程图,结果如下:

MermerGo的pillow流程图

Read more

AIGC时代编程新宠!如何让孩子通过DeepSeek成为未来的编程大师?

AIGC时代编程新宠!如何让孩子通过DeepSeek成为未来的编程大师?

文章目录 * 一、激发编程兴趣:从游戏开始 * 二、个性化学习计划:DeepSeek的智能推荐 * 三、项目式学习:动手实践,学以致用 * 四、AI精准辅导:即时解答,深度学习 * 五、全面发展:平衡技术与人文 * 六、家长的陪伴与鼓励 * 《信息学奥赛一本通关》 * 本书定位 * 内容简介 * 作者简介 * 目录 在AIGC(Artificial Intelligence Generative Content,人工智能生成内容)技术蓬勃发展的今天,教育领域正经历一场深刻的变革。DeepSeek作为一款由杭州深度求索人工智能基础技术研究有限公司倾力打造的大语言模型工具,正以其卓越的性能和广泛的应用前景,在编程教育领域大放异彩。 一、激发编程兴趣:从游戏开始 孩子的兴趣是学习的最好驱动力。DeepSeek能够生成一系列基于AI的互动编程游戏,这些游戏通过简单的拖拽式编程界面,让孩子在玩乐中学习编程基础。 示例游戏:制作一个简单的“躲避障碍”小游戏 // 使用Scratch风格的伪代码说明 when green

知网AIGC检测怎么过?2026最新降AI率全流程攻略

知网AIGC检测怎么过?2026最新降AI率全流程攻略

知网AIGC检测怎么过?2026最新降AI率全流程攻略 今年答辩季最让人头疼的事,不是论文写不出来,而是写出来过不了AIGC检测。 尤其是知网。 2026年知网的AIGC检测系统又升级了,身边好几个同学的论文,之前在其他平台检测AI率只有10%出头,结果到知网一测直接飙到40%以上。搞得整个宿舍楼都弥漫着一股焦虑的气息。 我自己也经历了这个过程,最后顺利过了检测。今天把整个流程整理出来,从理解检测原理到实际操作步骤,争取让你看完就知道该怎么做。 先搞懂:知网AIGC检测到底在查什么 很多人一听"AI检测"就慌,但其实搞明白它的检测逻辑之后,你会发现它并没有那么神秘。 知网的AIGC检测大致是从这几个维度来判断的: 语言模型的困惑度。 简单说就是,一段文字如果太"通顺"了,AI检测系统反而会觉得可疑。因为AI生成的文字有一个特点——它总是选择概率最高的下一个词。这就导致AI写的内容在语言模型看来"毫不意外",困惑度很低。而人写的东西偶尔会蹦出一些意想不到的表达,困惑度相对高一些。 文本的统计特征。 包括词汇丰富度、句子长度分布、段落结构等。AI生成的文字在这些统计指标

谈谈你对 AI Code Assistant(如 GitHub Copilot)的看法,它如何改变开发者的工作流?

AI Code Assistant深度剖析:从GitHub Copilot看开发者工作流的革命性变革 摘要/引言 开门见山:当AI成为你的编程搭档 想象一个场景:你正专注于解决一个复杂的业务逻辑问题,手指悬停在键盘上,准备编写一个数据处理函数。突然,IDE中弹出几行灰色的代码建议——正是你脑海中即将实现的逻辑,甚至连你没考虑到的边界条件处理都已包含在内。你轻轻按下Tab键,代码瞬间补全,仿佛有一位无形的搭档在你耳边低语:“这样实现如何?”。这不是科幻电影中的场景,而是 millions of 开发者正在经历的日常——AI Code Assistant(人工智能代码助手)已从概念走向现实,深刻重塑着软件开发的 landscape。 作为一名拥有10年+开发经验的工程师,我亲历了从"查手册编程"到"Stack Overflow复制粘贴"再到"AI协同编码"的三次范式转变。2021年GitHub

一文看懂:AI编程工具深度对比:Cursor、Copilot、Trae与Claude Code

一文看懂:AI编程工具深度对比:Cursor、Copilot、Trae与Claude Code

AI编程工具深度对比:Cursor、Copilot、Trae与Claude Code 引言 在人工智能技术蓬勃发展的今天,AI编程工具已成为开发者提高效率的重要助手。从早期的代码补全插件到如今能够理解整个代码库的智能助手,AI编程工具正在不断进化。本文将对当前主流的AI编程工具——Cursor、GitHub Copilot、Trae和Claude Code进行全面对比,帮助开发者选择最适合自己的工具。 主流AI编程工具概述 Cursor Cursor是一款基于VSCode的AI驱动代码编辑器,它最大的特点是能够理解整个代码库的上下文,提供智能的代码补全和重构建议。Cursor默认使用Claude-3.5-Sonnet模型,即使是OpenAI投资的公司,也选择了Claude模型作为默认选项,这足以说明其在代码生成领域的优势。 GitHub Copilot GitHub Copilot是由GitHub与OpenAI合作开发的AI编码助手,集成在VSCode、Visual Studio等主流编辑器中。它基于OpenAI的模型,能够根据注释和上下文自动生成代码,是AI编程工具