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.
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 .
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
cat data/mountains.jpg | pixelsort --template_path data/pyramid_mask.png | display
pixelsort --image_path data/mountains.jpg --angle 30 --threshold 1.2 --output example.png
Use it with other tools like imagemagick
magick data/mountains.jpg -colorspace gray PNG:- | pixelsort | display
MIT Ferdinand Theil