Image to ASCII Display (ADDS 4000 Serial )

Schuyler Martin Science, BS/MS Rochester Institute of Technology Foundations of Computer Vision, CSCI-631-01 Topics

● Project Description ● Process Overview ○ Processing Pipeline ○ Basic Luminance vs Advance Modes ○ Default vs Extended Display Mode ● Results ● Future Improvements ● Q&A The Project Problem

● Imagine the following scenario: ○ I’m an engineer from a large unnamed computer company in the early 1980s

● My job is fairly depressing ○ Stuck in a cube from 9am-5pm ○ No windows in the office, no family pictures in the cube, no fun ○ Everything I do is on a text-only dummy terminal that is connected to a mainframe Solution

● Personal expression through art!

● What if I made a program that could display artwork as text for my ASCII only terminal? The Project (in Math Form)

Modify the serial driver & OS I wrote in systems programming +

A new image processing toolchain I wrote for this course =

Art that is “good enough to show on Facebook”! Process Processing Pipeline Basic Luminance vs Advance Mode

● Basic Luminance ○ Maps a region of an image to a based on the calibrated luminance values of each visible 7-bit ASCII character available on the ADDS-4000 terminal

● Advance ○ Similar to Basic Luminance ○ Uses a normalized weighted linear combination (aka score) of the overall luminance, edge magnitude, and edge direction of each character Default vs Extended Display Mode

● ADDS-4000 supports two text sizes: ○ 80x24 - Default DisplayMode ○ 132x44 - Extended DisplayMode

● The image converter program uses both sizes ○ In total four different ASCII art images are produced per input image

● In practice, the ADDS-4000 doesn’t like Extended Mode Wish You Were Here guys enjoying a pleasant neck breeze Solution

Extended Display ASCII images are shown as screenshots from QEMU virtualizing TDOS Results Test Image “Film Roll” Basic Luminance Image “Film Roll” Advance Extended Image “Film Roll” Text Display Operating System (TDOS) Menu Screen HSC Logo, Basic Luminance Default Display HSC Logo, Basic Luminance Extended Display HSC Logo, Advance Default Display HSC Logo, Advance Extended Display Rick and Morty Caricature, Basic Luminance Default Display Rick and Morty Caricature, Basic Luminance Extended Display Rick and Morty Caricature, Advance Default Display Rick and Morty Caricature, Advance Extended Display Future Improvements

● Improve Serial Driver ○ Fix Extended Display Mode on the ADDS-4000 ○ Add support for other serial terminals

● Advance Plus Mode ○ Improved variant on Advance Mode using edge direction and luminance

● Fully Automated Image Pipeline ○ New image to TDOS integration in one script Future Improvements

● Xuemiao Xu and his team from China and Turkey have been working on what they call “structure-based ASCII art”.

● These are reminiscent of “message of the day” drawings posted by UNIX sysadmins (see cowsay)

● ASCII derived from contour lines (Canny edge detector) Xuemiao Xu, Linling Zhang, Tien-Tsin Wong, et al. Further Readings

[1] Xuemiao Xu, Linling Zhang, Tien-Tsin Wong, Structure-based ASCII art, ACM SIGGRAPH 2010 papers, July 26-30, 2010, Los Angeles, California

[2] Xuemiao Xu, Linling Zhang, Tien-Tsin Wong, et al. Texture-aware ASCII art synthesis with proportional , NPAR '15 Proceedings of the workshop on Non-Photorealistic Animation and Rendering, July 20-22, 2015, Istanbul, Turkey Questions? Images and ASCII art available at http://shoyler.com