图片转为文本图(也叫ASCII艺术图)

效果:

原图:

效果图

c++ 复制代码
                                          @+ +                + + +     +          +@@@+                                          
                                         ++                    ++       +           +@@@@+                                        
                                         ++                  ++    ++ +++             ++@@@+                                      
                                        ++ +                +  ++  +++++   +             ++@@+                                    
                                       ++++               ++        +             +        + ++                                   
                                      +++ +                               +   +      +    ++  +@                                  
                                    +++++++                                +            +++    +@                                 
                                   ++  ++++                                          ++++    +  +@+                               
                                  ++   + ++                                       +++ + +    +   +@+                              
                                  @    + ++                                    ++++   + +    ++   +@@+                            
                                 ++    + ++                               ++           + +    +  ++@@++@@++                       
                               +++     ++  +++                  ++++++++                     + +++++    +@@@++                    
                             ++++   + +++++  ++                                             +++@++    ++++++++                    
                            ++ +      ++++   ++@                   +++++++++++               ++++++  +++++  +                     
                            ++         ++ ++++@+          ++++@@@@@@@@+++@@++++++           ++  +    ++    +                      
                            ++         +@+++ ++      ++@@@@@@@+++  ++         ++@+        ++     +++                              
                            +@++++++    @+ +++     +@@@++++                   ++@       ++      ++    +                           
                          +@@+++++++++   @+++    +@@++                       +@@+               +  ++++  +                        
                         +@+         ++   @@    +@@++                       +@+                ++ ++ ++  +             +          
                         @@ +         ++  @@    @++                      ++@@+                 +  ++ +                            
                         @@+@          + ++-    +@+                   ++@@+                +  ++  @ +                             
                          @@++        +-   @@    ++@@++++++++ ++++++@@@++                + +  @  +@++ +                           
                           +@@++     @=@  +@@       +++@@@@@@@+@++++                    ++ + ++  +@+ ++                           
                             +@@@@+ @@+   ++-+                                          ++++ ++     ++                            
                                 ++       + @@                                          ++++++     ++                             
                                  +        ++-                                          ++++++   ++                               
                                  ++       ++-+                           +     +      +++++++@@++                       +        
                                    +        @@                                        ++++ +@+                                  +
                                              @+                                         ++ +                                     
                                      +      +@+++++                     +            ++++                                        
                                          ++@@@+++++  +                           +++@@+     +                             +      
                                         +++@@+++++++ +                         +++@@+      ++                                    
                                         ++  +++++++                            ++@+        + + +                 +      +        
                                           ++   @@     ++                                  ++ + ++                                
                                            +++ +-++    @                             +++++@@+@++++ ++++                +     +   
                                              ++ @+     ++                    ++++++++++++++++++++++++++++++++                   +
                                               ++++++++                  ++++++++++++++++         + +++++++++++++++               
                                                       + +       + ++++++++++++++++        ++++++++++ +++++++++++++++             
                                                       + +++++ +++++++++++++++++       ++ +                    ++++@@@++         +
                                                  ++++@@@++++@@++++++++ ++++        ++                            ++@@@@@+        
                                              +++++@@@@++@@@@++@++++  ++++                               +            ++@@@+      
                                           ++@@+@@@@++@@@@++@@+++    +++                                   +  +          +@@+     
                                        +@@@@@@@@++@@@@+++@@+      +++                                               ++     @@+   
                                     +@@+++@++ +@@@@@++@@++      +++        +                                          +     +@+  
                                  +++++ ++++++@@@@+++@@+       +++          ++++                                              +@+ 
                                +++   +++++@@@@+++@@+         +              +++++                                    + +     @+@+
                                   ++++++@@@++++@++       ++                    +@@+                                    ++ +  @++@
                           ++     +++++@@++  +@++       ++                        +@@++                                   +++ @@++
                 ++++++++++ @+ ++++++++++  +++        ++             ++ +            +@@++ ++                             + + +@  
                @+++ +++    @+++ ++@+++  ++++       ++               ++++              ++@+                               +   +@  

流程

1: 我们使用工具把图片, 转为线稿图, 尽量去噪, 比如这个网站 http://www.atoolbox.net/Tool.php?Id=1099#google_vignette

2: 使用python代码, 将线稿图转化为文本图

我们使用如下工具, 如果某些ascii_chars不是想要的格式, 直接改就行

python 复制代码
# coding=utf-8
from PIL import Image

# 打开图片文件
image = Image.open(r'H:\lyl_s.png')

# 调整图片大小
width, height = image.size
aspect_ratio = height / width
new_width = 400
new_height = 200
image = image.resize((new_width, new_height))

# 将每个像素转换为灰度值,并映射到ASCII字符上
ascii_chars = '@%#*+=-:. '

text_image = ''
for y in range(new_height):
    for x in range(new_width):
        pixel = image.getpixel((x, y))
        brightness = sum(pixel) / 3  # 灰度值
        char_index = int((brightness / 256  - 1)* len(ascii_chars))  # 映射到ASCII字符,确保不超出范围
        text_image += ascii_chars[char_index]
    text_image += '\n'  # 换行

# 保存文本图片
with open('text_image.txt', 'w') as f:
    f.write(text_image)
相关推荐
杨DaB9 分钟前
【JavaWeb】基本概念、web服务器、Tomcat、HTTP协议
java·笔记·学习·java-ee
BTU_YC9 分钟前
tomcat yum安装
java·linux·tomcat
IT-ZXT88815 分钟前
Tomcat的整体架构及其设计精髓
java·架构·tomcat
量化金策16 分钟前
截面动量策略思路
python
椰椰椰耶18 分钟前
[网页五子棋][匹配模式]创建房间类、房间管理器、验证匹配功能,匹配模式小结
java·websocket·spring
四谷夕雨25 分钟前
C++八股 —— 手撕线程池
c++
黄雪超35 分钟前
JVM——云原生时代JVM的演进之路
java·jvm·云原生
心软且酷丶35 分钟前
leetcode:7. 整数反转(python3解法,数学相关算法题)
python·算法·leetcode
庄小焱40 分钟前
设计模式——简单工厂模式(创建型)
java·服务器·算法