Ubuntu – How to convert graphical images to ASCII art

command lineimage processingtext processing

I want a custom image in my terminal made of characters, is there a program I can use?

Specifically, the gear within my school's robotics
logo.

Best Answer

One app you can try jp2a for jpg to ascii for terminal windows.

sudo apt update
sudo apt install jp2a

Then just run jp2a filename.jpg

~$ jp2a 1Fy7Yz2.jpg 

.dKKKKKl.....dKK000000OOOOkkkxxxxddoooooolloddxxxkO00k....................
'0KKKK0..'...oKKK000000OOOOOkkxxxdddooooollodxxxxkO00O....................
dKKKK0,....'.:KKKKK0000000OOOOkkxxxddddoooooxxxxkOO00O'...................
0KXK0.  ........'',,,,,;;;;;;;;;;;,,,'''''.''''....'';;...................
O0O0o............                                 ...'l...................
0K0kkkxxxdol:.    .,:;;.....           .   ... .   .......................
d000kkOKKKKKKk.  .dO000klooc;... .  .':::ccood;... c,.....................
..oOkdx0KKK0KKx.  ,,od.l'xdl.  ':ldkkkkxxdxO0KXo.  cc.....................
. :kxodk00O;0K0k,   'l,,.;;cok00OOkxxxkkxxxk0Kkkk:,,k.....................
..lxdookkOl.'OKKOd;,;coxO0000OkdoodkOOOkxddk0KkodOxdk.....................
loldccdxkk....oKKK00KK0OkxdolodkOO000OOkxddk00koddxkl.....................
dd,;coddxx'.....oxxddollodxkkOOOOOOOOOkkxddk000loO0d......................
::ldxxooodd,...;kxxxkkkkkkkkkkkOOOOOOOko:'...'oloxKo......................
olcldOOxolloo;,kkOOOkkkkkkkkkkkkOOko;.      .. ,cdkx;.....................
l:ccl:odOkdccloxkkkkkkkkkkkkkkkxc.      ..'',;.''odOd:....................
dxl::::;clkkxlccodxxkkkkxxxxd:.  .':ldxkxdddxkOl.;dxld,...................
odddl:;;;;:cxkkdlcloddddol:,';coxxxkkkkxxdddxkOdllxkoll...................
clooddc;;;;;;okkkxdllloodddddxxxxxxkkkkxxdodxkkkllkOkk:...................
:cclloddc:,oxxxxdddoodddddddddxxxxxkkkxxxdoodxkOooxxkk:...................
;;:cclloodoollllloodddddoodddddddxxxxxxxdooldxkOoOxddxxc..................
.',;::ccccccccllloooddddddoooooodddxxxxo:,'',;:ddkdooodd:.................
  .',;;::cccllllllooooooodddoooooodddo;..   ...'okollllod.................
   .,':::ccclllllllloooooooodollooooo;.   . ....cxlcclllo;................

Or you can use --background=light if you have a light background in your terminal:

~$ jp2a 1Fy7Yz2.jpg --background=light

K:.....l0000K:........'''',,,;;;;::ccccccllc::;;;,'..,0000000KKKKKKKKKKKKK
O......00O00Kc.........''''',,;;;:::cccccllc:;;;;,'..'0000000KKKKKKKKKKKKK
:.....kK000O0d............'''',,;;;::::ccccc;;;;,''..'O000000KKKKKKKKKKKKK
.....KMNXXXXXX00OOkkkkkxxxxxxxxxxxkkkOOOOO0OOOO0000OOxxKKKK0KKKKKKKKKKKKKK
'.'.cKK0KKXXXXXXXNNNWWWWWWWWWMMMMMMMMMMMMMMMWNNNNNXXKOl0KKKKKKKKKKKKKKKKKK
...,,,;;;:cld0MMWW0kdxxKKXKXNNWWWWMMMMMXNNWK0XWXNNNKKKKKKKKKKKKKKKKKKKKKKK
:...,,'......,KMW0:'...,lccox00XNKWNKOdddoocc:x0X0NokKKKKKKKKKKKKKKKKKKKKK
0Xc',:;.......;XWNkkc:0lO;:lKWNOdl:,,,,;;:;'...cXNNooKKKKKKKKKKKKKKKKKKKKK
KNd,;c:,..'x...,kWNNOlkkKxxoc,..'',;;;,,;;;,..,,,dkk,0KKKKKKKKKKKKKKKKKKKK
0Xl;:cc,,'lXO'..':xkxoc;'....',:cc:,''',;::,..,c:';:,0KKKKKKKKKKKKKKKKKKKK
lcl:oo:;,,0KX0c........',;:clc:,''...'',;::,..,c::;,lKKKKKKKKKKKKKKKKKKKKK
::kxoc::;;OKXXK0c;;::cllc:;,,''''''''',,;::,...lc'.:KKKKKKKKKKKKKKKKKKKKKK
ddl:;;ccc::kKKXx,;;;,,,,,,,,,,,''''''',cdOKKKOclc;.cKKKKKKKKKKKKKKKKXXXXXX
clol:'';cllccxk,,''',,,,,,,,,,,,'',cx0NWMWNNX0Wko:,;xKKKKKKKKKKKKKKKKKKKKK
ldooldc:',:oolc;,,,,,,,,,,,,,,,;o0WNNNNNX0OOkxKOOc:':dKKKKKKKKKKKKKKKKKKKK
:;lddddxol,,;looc:;;,,,,;;;;:d0NNKOdl:;,;:::;,'lKx:;l:kKKKKKKKKKKKKKKKKKKK
c:::ldxxxxdo;,,:lolc::::cldkOxoc;;;,,,,;;:::;,':ll;,cll00KKKKKKKKKKKKKKKKK
olcc::oxxxxxxc,,,;:lllcc:::::;;;;;;,,,,;;:c:;,,,ll,',,d00KKKKKKKKKKKKKKKKK
doollc::odkc;;;;:::cc:::::::::;;;;;,,,;;;:cc:;,'cc;;,,dKKKKKKKXXXXXKKKKKKK
xxdoollcc:cclllllcc:::::cc:::::::;;;;;;;:ccl:;,'c';::;;oKKKXXXXXXXXXKKKKKK
0Okxddoooooooolllccc::::::cccccc:::;;;;cdkOOkxd::,:ccc::dXXXXXXXXXXXXXXXXX
WW0Okxxddooollllllccccccc:::cccccc:::cxXXNNNXK0Oc,cllllc:0XXXXXXXXXXXXXXXX
NWWKkOdddooollllllllcccccccc:cllcccccxKWNWKWX0K0o;loolllcxXXXXXXXXXXXXXXXX

Here's what it would look like in a terminal window:

enter image description here

Hope this helps!