Skip to content

Scala application designed to convert images into ASCII art representations. It supports various image processing steps including RGB to grayscale conversion, application of filters, and ASCII character mapping based on image luminance.

Notifications You must be signed in to change notification settings

schrodlm/ascii_art_generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ASCII Art Generator

Overview

This ASCII Art Generator is a Scala application designed to convert images into ASCII art representations. It supports various image processing steps including RGB to grayscale conversion, application of filters, and ASCII character mapping based on image luminance.

Features

  • Image Conversion: Converts RGB images to grayscale.
  • Filter Application: Supports applying a series of filters to images, including brightness adjustment and scaling.
  • ASCII Conversion: Transforms grayscale images into ASCII art using a customizable character set.
  • Flexible Input/Output: Accepts images from different sources and outputs ASCII art to various destinations (console, file).

Getting Started

Prerequisites

  • Scala [2.13.3]
  • sbt [1.0.0]

Installation

Clone the repository and navigate to the project directory:

git clone [repository URL]
cd ascii-art-generator

Usage

Run the application using sbt:

sbt run [command line arguments]

Command Line Arguments

--image [path]: Specify the path of the image file to use as the source.
--image-random: Use a random image as the source.
--output-console: Output the ASCII art to the console.
--output-file [path]: Output the ASCII art to a file at the specified path.

Additional arguments for filters and ASCII conversion settings.

You can list these available arguments with --help argument

Testing

The project includes unit tests for individual components and integration tests for the overall processing flow. Running Tests

Execute tests using sbt:

sbt test

About

Scala application designed to convert images into ASCII art representations. It supports various image processing steps including RGB to grayscale conversion, application of filters, and ASCII character mapping based on image luminance.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages