Skip to content

Blotz/pixelsort-cli

Repository files navigation

pixelsort cli

tests package CodeQL

A simple python command line tool for sort pixels in an image. Based on the works of Kim Asendorf.

The script blocks pixels into dark and light areas using a contrast mask. Then it sorts the pixels in a given direction via their luminance.

  • You can increase/decrease the contrast by setting the threshold.
  • You can also invert the mask to sort the light pixels instead of the dark ones.

Usage

Install

pip install git+https://github.com/Blotz/pixelsort-cli

or

pip install pixelsort-cli

or

git clone https://github.com/Blotz/pixelsort-cli
cd pixelsort-cli
pip install .

Examples

pixelsort --help
usage: pixelsort [-h] [--angle ANGLE] [--image_path IMAGE_PATH] [--threshold THRESHOLD | --template_path TEMPLATE_PATH]
                 [--sort_brightest SORT_BRIGHTEST] [--reverse_sorting REVERSE_SORTING] [--output OUTPUT] [--verbose | --quiet]
                 [stdin]

Command line tool for sorting pixels in images

positional arguments:
  stdin

options:
  -h, --help            show this help message and exit
  --angle ANGLE         angle that the image is sorted. 0° is up. [0, 360]
  --image_path IMAGE_PATH
                        path to image
  --threshold THRESHOLD
                        threshold for contrast. [-1.0, 1.0] Default: 1.0
  --template_path TEMPLATE_PATH
                        path to template image
  --sort_brightest SORT_BRIGHTEST
                        Sort the brightest area of the image. Default: True
  --reverse_sorting REVERSE_SORTING
                        Sorts the pixels from lightest to darkest instead of darkest to lightest. Default: False
  --output OUTPUT       path to output file
  --verbose             print debug messages
  --quiet               print less messages
pixelsort --image_path data/mountains.jpg --threshold 1.2 | display

example 1

cat data/mountains.jpg | pixelsort --template_path data/pyramid_mask.png | display

example 2

pixelsort --image_path data/mountains.jpg --angle 30 --threshold 1.2 --output example.png

example 3

Use it with other tools like imagemagick

magick data/mountains.jpg -colorspace gray PNG:- | pixelsort | display

example 4


License

MIT Ferdinand Theil

About

A simple python command line tool for sort pixels in an image.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Contributors 2

  •  
  •  

Languages