python3----练习题(图片转字符画)】的更多相关文章

Python 图片转字符画 一.课程介绍 1. 课程来源 原创 2. 内容简介 本课程讲述怎样使用 Python 将图片转为字符画 3. 前置课程 Python编程语言 Linux 基础入门(新版) Vim编辑器 4. 课程知识点 本节实验中我们将实践以下知识: Linux 命令行操作 Python 基础 pillow 库的使用 argparse 库的使用(参考教程) 二.实验原理 字符画是一系列字符的组合,我们可以把字符看作是比较大块的像素,一个字符能表现一种颜色(暂且这么理解吧),字符的种类…
一.介绍 用Python 代码完成图片转字符画 二.python 环境 Python 3.6.6 pillow 5.1.0  Python 图像处理库, 需要另外安装 三.原理 gray = 0.2126 * r + 0.7152 * g + 0.0722 * b 四.代码实现 from PIL import Image WIDTH = 80 #输出的宽度 HEIGHT = 80 # 输出的高度 ImagePath = '4.jpg' # 字符的种类与数量可以自己根据字符画的效果反复调试 asc…
Python 图片转字符画 学习笔记 标签(空格分隔): Python 声明:此文章和所有代码是学习笔记,非原创,原文教程地址:https://www.shiyanlou.com/courses/370/labs/1191/document 实验楼我感觉挺好的,但为了保存自己的代码,我是在自己本地电脑敲的代码,并且改造了一下. 这个教程是说如何把一个图片转化为字符画. 可以直接运行的代码如下: from PIL import Image IMG = "ascii_dora.png" W…
1.创建ascii.py 2. 下面是 ascii.py 的完整代码: from PIL import Image import argparse #命令行输入参数处理 parser = argparse.ArgumentParser() parser.add_argument('file') #输入文件 parser.add_argument('-o', '--output') #输出文件 parser.add_argument('--width', type = int, default =…
本文介绍一个IOS APP , 将图片转换成ASCII字符画,使用Swift语言编写. 举个例子,我们使用著名的蕾娜照片作为原图片 经APP转换后形成的字符画,我们打印出来,效果如下: 放大她的脸部可以看到图像都是字符串组成的! 项目地址: https://github.com/ijoshsmith/swift-ascii-art 字符画原理 图像中的每个像素都对应到一个ASCII值,在这里显示为一个字符. 图像中的每个像素都会被转换成一个中间值,如下所示: 让我们一步步来分析. 首先,我们将一…
今天整理 Pocket 中待看的文章,看到这篇<Creating ASCII art in functional Swift>,讲解如何用 Swift 将图片转成 ASCII 字符.具体原理文中讲解的很详细,不再赘述,但是标题中的 in functional Swift 让我很感兴趣,想知道 functional 到底体现在哪里,于是下载 swift-ascii-art 源码一探究竟. Pixel 图片是由各个像素点组成的,在代码中像素通过 Pixel 这个 struct 实现.每个像素分配了…
import argparse from PIL import Image def parse_param(): parser = argparse.ArgumentParser() # 命令行输入参数处理 parser.add_argument("input_file") # 输入文件 parser.add_argument("out_file") # 输出文件 parser.add_argument("--width", type=int,…
首先要明确思路, 图片是由像素组成的, 不同的像素有不同的颜色(rgb), 那么既然我们要转化为字符画, 最直接的办法就是利用字符串来替代像素, 也就是用不同的字符串来代表不同的像素. 另外图片一般来讲是彩色的, 而acsii(一般打印在终端上吧) 都是黑白的, 此时就要介绍另外一个概念了 : 灰度值:指黑白图像中点的颜色深度,范围一般从0到255,白色为255,黑色为0,故黑白图片也称灰度图像. 到这里思路就很明确了, 我们要做的就是两件事 : 1. 将每一个像素点(彩色图片用rgb)映射到每…
from PIL import Image codeLib = '''@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,"^`'. ''' #生成字符画所需的字符集count = len(codeLib) def transform1(image_file): image_file = image_file.convert("L") #转换为黑白图片,参数"L"…
转自:https://blog.csdn.net/mm1030533738/article/details/78447714 项目链接: https://www.shiyanlou.com/courses/370/labs/1191/document from PIL import Image #从PIL模块中引入Image这个类import argparse  #引入argparse这个模块(argparse库是用来管理命令行参数输入的) parser = argparse.ArgumentP…
转自实验楼:https://www.shiyanlou.com/courses/370/learning/?id=1191 代码: # -*- coding:utf-8 -*- from PIL import Image import argparse #创建ArgumentParser实例 parser = argparse.ArgumentParser() #定义输入文件.输出文件.输出字符画的宽和高 parser.add_argument('file') #必选参数1 parser.add…
# -*- coding: utf-8 -*- from PIL import Image codeLib = '''@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,"^`'. '''#生成字符画所需的字符集 count = len(codeLib) def transform1(image_file): image_file = image_file.convert("L")#…
一.安装的第三方模块 $ sudo pip3 install --upgrade pip $ sudo pip3 install pillow //window pip3 install pillow 二.RGB转换为黑白度的简单公式 gray = 0.2126 * r + 0.7152 * g + 0.0722 * b 三.新建py文件 1.首先导入第三方模块 from PIL import Image import argparse 2.获取图片信息 使用 argparse 处理命令行参数,…
PIL安装很麻烦,推荐下载exe直接安装 PIL官网:http://pythonware.com/products/pil/ 但现在里面下载链接访问不了,我把32位和64位版本上传到博客园以供下载 PILwin32:http://files.cnblogs.com/files/pcat/PILwin32.zip PILwin64:http://files.cnblogs.com/files/pcat/PILwin64.zip #coding=utf-8 from PIL.Image import…
先上代码: from PIL import Image import argparse #命令行输入参数处理 parser = argparse.ArgumentParser() parser.add_argument('file') #输入文件 parser.add_argument('-o', '--output') #输出文件 parser.add_argument('--width', type = int, default = 80) #输出字符画宽 parser.add_argume…
https://www.shiyanlou.com/courses/370/labs/1191/document from PIL import Image import argparse ascii_char = list("$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,\"^`'.") def get_char(r,g,b,alpha = 256): if alpha =…
基础知识: 1.python基础知识   快速学习链接:https://www.shiyanlou.com/courses/214 2.linux命令行操作   快速学习链接:https://www.shiyanlou.com/courses/1 3.pillow库的使用     快速学习链接:http://pillow.readthedocs.io/en/latest/index.html(英文) http://www.cnblogs.com/apexchu/p/4231041.html(中文…
from PIL import Image def get_char(r, g, b, alpha=256): ascii_char = '''$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/\|()1{}[]?-_+~<>i!lI;:,\"^`'. ''' if alpha == 0: return " " length = len(ascii_char) gray = int(0.2126 * r + 0.7152 *…
文章链接:https://mp.weixin.qq.com/s/yiFOmljhyalE8ssAgwo6Jw 关于python图片转字符画,相信大家都不陌生,经常出现在 n个超有趣的python项目中. 今天我也来实践这个有趣的项目,更进一步的是把这个功能做成一个在线的网站,直接上传图片生成字符画,在线预览可以让更多的人来体验. 体验网址:https://www.manjiexiang.cn/blog/post_img 举个栗子,就是这是一张图片 经过转换成的字符画是这样的,这个txt的文件 代…
先看一下效果图 在Main方法中调用(首先要添加程序集System.Drawing,然后引入命名空间System.Drawing) ConvertToChar(new Bitmap(@"D:\img\dlrb.png"), @"D:\1.txt", 2, 3); Console.WriteLine("Success"); 方法,这说一下,因为大图片像素的宽和高都是1000以上的,所以每一个转换为字符的话,会变得很宽,所以后两个参数是指定宽度和高度…
Python 图片转字符画 一.实验说明 1. 环境登录 无需密码自动登录, 2. 环境介绍 本实验环境采用带桌面的UbuntuLinux环境,实验中会用到桌面上的程序: LX终端(LXTerminal):Linux命令行终端,打开后会进入Bash环境,可以使用Linux命令 GVim:非常好用的编辑器,最简单的用法可以参考课程Vim编辑器 3. 环境使用 使用GVim编辑器输入实验所需的代码及文件,使用LX终端(LXTerminal)运行所需命令进行操作. 完成实验后可以点击桌面上方的"实验截…
AsciiMorph 是一个新奇的 ASCII 字符画生成工具和开源插件.字符画(ASCII Art)的历史可以追溯到几十年前,起初是用在图形显示功能受限的设备上,用ASCII字符集里的可打印字符来拼成图片.如今,精细的显示设备早已能显示丰富多彩的图片,字符画更多的是被当做一门艺术来欣赏了. 在线演示      免费下载 您可能感兴趣的相关文章 网站开发中很有用的 jQuery 效果[附源码] 分享35个让人惊讶的 CSS3 动画效果演示 十分惊艳的8个 HTML5 & JavaScript 特…
之前在b站上看到有人用C写了个脚本把妹抖龙op转换成字符画的形式输出了,感觉比较好玩在下就用python也写了一遍(主要是因为python比较简单好用).这里就这里就不介绍字符画了,因为能搜到这个的肯定知道自己在干什么 = =. 首先梳理转换思路:转换图片也就是转换视频,因为视频就是有连续的图片组成的.而为了简单起见,我们这里先把彩色图片先转换成黑白图片(将RGB三通道转换成一个),然后读取图片的每个像素点,根据像素点的灰度(grayscale)选择相应的字符(比如@#对应高灰度点,而.,对应低…
HTML5将图片转化成字符画 字符画大家一定非常熟悉了,那么如何把一张现有的图片转成字符画呢?HTML5让这个可能变成了现实,通过canvas,可以很轻松实现这个功能.其实原理很简单:扫描图片相应位置的像素点,再计算出其灰度值,根据灰度值的大小,分别用字符#*+“和空格来填充.下面是源码:HTML:一个canvas元素#cv,一个字符画容器#txt . 1 <canvas id="cv">fuck ie</canvas> 2 <div id="t…
字符画大家一定非常熟悉了,那么如何把一张现有的图片转成字符画呢? HTML5 让这个可能变成了现实,通过 canvas,可以很轻松实现这个功能. 其实原理很简单:扫描图片相应位置的像素点,再计算出其灰度值,根据灰度值的大小,分别用字符 #*+“ 和空格来填充. 下面是源码: HTML:一个 canvas 元素 #cv,一个字符画容器 #txt. <canvas id="cv">fuck ie</canvas> <div id="txt"…
原文:将图片转为ASCII字符画 Copyright 2012 Conmajia 源代码下载:点击这里 什么是字符画?就是用ASCII字符来近似组成图像,就像这样: ╭╮ ╭╮ ││ ││ ╭┴┴———————┴┴╮ │ │ │ │ │ ● ● │ │○ ╰┬┬┬╯ ○│ │ ╰—╯ │ ╰——┬O———O┬——╯ ╭╮ ╭╮ ╰┴————┴╯ 还有复杂点的: ﹎ ┈ ┈ .o┈ ﹎ ﹎.. ○ ﹎┈﹎ ● ○ .﹎ ﹎o▂▃▅▆ ┈ ┈ /█\/▓\ ﹎ ┈ ﹎﹎ ┈ ﹎ ▅▆▇█████▇▆…
1,先看效果图:…
字符画大家一定非常熟悉了,那么如何把一张现有的图片转成字符画呢?HTML5让这个可能变成了现实,通过canvas,可以很轻松实现这个功能.其实原理很简单:扫描图片相应位置的像素点,再计算出其灰度值,根据灰度值的大小,分别用字符#*+“和空格来填充.下面是源码: HTML:一个canvas元素#cv,一个字符画容器#txt . <canvas id="cv">fuck ie</canvas> <div id="txt"></d…
这篇文章是 视频转字符动画-Python-60行代码 的后续,如果感兴趣,请先看看它. 1. 速度优化 要是每次播放都要等个一分钟,也太痛苦了一点. 所以可以用 pickle 模块把 video_chars 保存下来,下次播放时,如果发现当前目录下有这个保存下来的数据,就跳过转换,直接播放了.这样就快多了. 只需要改一下测试代码, 先在开头添加两个依赖 import os import pickle 然后在文件结尾添加代码: def dump(obj, file_name): ""&q…
python生成字符画 这个idea来自于实验楼,非常适合练习PIL的像素处理,更重要的是非常有意思. 环境配置 依赖的第三方库就是PIL(Python Image Library),可以直接使用pip安装 pip install pillow 测试安装是否成功 >>> from PIL import Image 原理 原理其实很简单,主要分为三步: 导入图片,做预处理 把图片二值化,转化成灰度图,在把灰度映射到字符上,用一个字符表示一个像素,返回一个文本 把文本写入文件 以下是main…