liuguoyou / thecartoonist

Cartoon filter (thick lines, cel shading). Implementation of "Image Abstraction by Structure Adaptive Filtering" by Jan Eric Kyprianidis and Jürgen Döllner

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

thecartoonist

Written and tested on Ubuntu 22.04.

thecartoonist is software to abstract and stylize an input photograph in such a way that the output photograph kinda looks like a cartoon with thick lines and cel shading (toon shading). This is basically a cartoon filter.

thecartoonist is an implementation of:

"Image Abstraction by Structure Adaptive Filtering" by Jan Eric Kyprianidis and Jürgen Döllner.

"Real-Time Video Abstraction" by Holger Winnemöller, Sven C. Olsen, and Bruce Gooch.

To create the executable:

compile the code in directory "thecartoonist/FastNoise-master" using "make -f Makefile_g/Makefile_O"

compile the code in directory "thecartoonist/RGBConverter-master" using "make -f Makefile_g/Makefile_O"

compile the code in directory "thecartoonist" using "make -f Makefile_g/Makefile_O"

compile the code in directory "thecartoonist/main" using "make"

Test cases are given in the "test" directory.

Info about thecartoonist (theory behind it and how to use it) can be found here:

Non Photorealistic Rendering Software - The Cartoonist

Non Photorealistic Rendering - Image Abstraction by Structure Adaptive Filtering

Dependencies (check the Makefiles):

"common" repo

Notes

The code comes from a "Processing" implementation by Thomas Lindemeier which I ported to C++ and to which I added support for basic image formats: jpeg, png, and tiff.

FastNoise-master comes from github user Auburns. MIT license.

RGBConverter-master comes from github user ratkins. "Do whatever you like with it" license.

About

Cartoon filter (thick lines, cel shading). Implementation of "Image Abstraction by Structure Adaptive Filtering" by Jan Eric Kyprianidis and Jürgen Döllner


Languages

Language:C++ 84.1%Language:Processing 14.7%Language:C 0.9%Language:Makefile 0.3%