python将图片转化成字符图片,python实现图片转文字

  python将图片转化成字符图片,python实现图片转文字

  本文主要介绍如何使用python实现图片转换人物绘画。文章围绕主题,详细介绍了内容,具有一定的参考价值。有需要的朋友可以参考一下。

  前言:实施例1实施例2

  

目录

  字符画:人物画是一系列人物的组合。我们可以把字符看成更大的像素,一个字符可以表达一种颜色。人物种类越多,可以表现的色彩就越多,画面也会更有层次感。

  想要手绘人物画,首先要有扎实的美术功底,然后要花费大量的时间和精力。但是我们可以用Python,只需要几行代码就可以轻松的把一张图片变成人物画。

  

前言:

  效果图:

  理论很简单,就是图片的操作。这里需要用到PIL的python包,它有非常好的图像处理功能。

  先打开图片,把图像调整大小:

  img=Image.open(picPath)

  img=img.resize((picW,picH))

  然后读取灰度值,再将灰度值与字符进行匹配。

  从PIL进口图片

  lst chars=list( $ @ B % 8WM # * oahkbdpqwmzo 0 qlacjuyxzczjhdhsdavunxrjft/\ ()1 { }[]?-_ ~我!李;\^`.)

  def oneChars(r,g,b,alpha=256):

  全局lstChars

  length=len(lstChars)

  gray=int(0.2126 * r 0.7152 * g 0.722 * b)

  索引=长度*灰度

  返回lstChars[index]

  picPath= c : \ Users \ Administrator \ Desktop \ \ aaaaaa \ \ aa . png

  picH=40

  picW=80

  img=Image.open(picPath)

  img=img.resize((picW,picH))

  txt=

  对于范围内的y(picH):

  对于范围内的x(picW):

  txt=oneChars(img.getpixel((x,y)))

  txt=\n

  打印文本

  

实例1

  下面是源码:

  # -*-编码=utf-8 -*-

  从PIL进口图片

  IMG=IMG.jpg #设置图片文件

  WIDTH=150 #设置人物绘画的宽度。

  HEIGHT=80 #设置人物画的高度。

  OUTPUT=T.txt #设置文本文件存储人物画。

  ascii _ char=list( $ @ B % 8WM # * oahkbdpqwmzo 0 qlcjuyxzcvunxrjft/\ ()1 { }[]?-_ ~我!李;3360, \.)#设置显示的字符集

  #将256灰度映射到70个字符

  def get_char(r,g,b,alpha=256):

  # alpha是透明度。

  #判断alpha值,0表示完全透明。

  如果==0:

  返回“”

  #获取字符集的长度,这里是70

  length=len(ascii_char)

  #将RGB值转换为灰度值,灰度值范围从0到255

  gray=int(0.2126 * r 0.7152 * g 0.0722 * b)

  #灰度值的范围是0-255,而字符集只有70

  #将灰度值映射到指定字符需要以下处理。

  #为了防止灰度值为255时输出的第70个字符超过列表索引,所以需要设置(255 1)

  单位=(255.0 1) /长度

  #返回对应于灰度值的字符。

  return ascii _ char[int(gray/unit)]

  if __name__==__main__:

  #打开并调整图片的宽度和高度

  im=Image.open(IMG)

  im=im.resize((宽度,高度),图像。最近的)

  #初始化输出字符串

  txt=

  #遍历图片中的每一行

  对于在范围(高度):的I

  #遍历该行中的每一列

  对于范围(宽度):内的j

  #将(j,I)坐标的RGB像素转换为字符,并添加到txt字符串中。

  txt=get_char(*im.getpixel((j,I)))

  #遍历一行后,需要添加一个换行符

  txt=\n

  #输出到屏幕

  打印(文本)

  开(输出,“w”)为f:

  f .写(txt)

  直接粘贴,只需导入一张图片到文件夹中,重命名为IMG.jpg。结果将是一个名为T.txt的文件

  原图:

  生成文件图:

  关于如何用python实现图像转换人物绘画的这篇文章到此为止。更多关于python人物画图的信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: