@rusticflare/pixel-sorter v4.0.5
pixel-sorter
A command line app for pixel sorting images
If you need help, find bugs, or want a new feature: please raise an issue
Inspired by satyarth/pixelsort
Installation
Prerequisites
npm
- Install npm.
- You are downloading the command line client that lets you install
pixel-sorterfrom the npm repository
Install (and Update) pixel-sorter
npm i -g @rusticflare/pixel-sorterUsage
Pixel Sort Your First Image
This will pixel sort an image called example.jpg in your current directory and save the output in the same directory
as example.jpg.
pixel-sorter example.jpgNote: A one pixel border is cropped from the output file (this is due to this pixel sorter making some of those outer pixels slightly transparent)
- Powershell
- Make sure you are running as an Administrator
- If you see this error:
run:... cannot be loaded because the execution of scripts is disabled on this system.
(See this StackOverflow answer for more details)Set-ExecutionPolicy RemoteSigned
Options
See Examples for how to use these
| Option | Argument | Description | Default Value |
|---|---|---|---|
-p | A pattern | The patterns to sort along | lines |
-o | Text | The name of the output file (e.g. sorted) | The current date and time |
-m | File | The path to "mask" file | N/A |
-f | File | The path to a file to be used by the randomfile interval function | N/A |
-a | A number in 0.0-360.0 | The angle to sort along (as degrees on a compass) | 0.0 |
-i | An interval function | The interval function to use | lightness |
-l | A number in 0.0-1.0 | The darkest lightness to include in sorted sections (used when the interval function is lightness) | 0.25 |
-u | A number in 0.0-1.0 | The brightest lightness to include in sorted sections (used when the interval function is lightness) | 0.8 |
-w | A positive whole number | The average width (in pixels) of the random[file] sorted sections (used when the interval function is random[file]) | 400 |
-s | A sorting function | The sorting function to use | lightness |
-e | A filetype | The extension of the filetype to output | jpg |
-c | A pair of integers | The center of the circle when the circles pattern is used | 0 0 |
-r | N/A | Reverse the sorting order | N/A |
-h | N/A | Print the help message | N/A |
Patterns
linescircles
Interval Functions
lightness- pixels with alightnessbetween the-land-uvalues are sortedrandom- random sections of average width-ware sortedrandomfile- the brighter a pixel in a file provided by-fmakes a pixel more likely to be sorted (use-wto control the average width)none- everything is sorted
Sorting Functions
huesaturationlightnessintensity
Filetypes
jpgpng
Examples
example.jpg:
![]()
Default
pixel-sorter example.jpg![]()
Threshold
When using the lightness interval function: only pixels with a lightness between -l and -u will be sorted.
Here we sort pixels with a lightness between 0.6 and 0.9:
pixel-sorter example.jpg -l 0.6 -u 0.9![]()
Angle 🧭
You can change the sorting angle (as degrees on a compass).
pixel-sorter example.jpg -a 315![]()
Circles 🟣
Sort circles with:
- center
-200 -600(0 0is the center of the image) - angle
210(where the brightest and darkest pixels meet) - reversed sort
pixel-sorter example.jpg -p circles -c -200 -600 -a 210 -r![]()
Mask & Random 🎭
A "mask" file should be a black and white image (the same size as the sorted image). Only the white sections are considered for sorting.
-i random causes random sections of the image should be sorted. You can control the average width (in pixels) of these
sections with -w.
example-mask.jpg:
![]()
pixel-sorter example.jpg -m example-mask.jpg -a 135 -i random![]()
Random File
The brighter the pixel in -f the more likely the corresponding pixel is to be sorted.
example-randomfile-mask.jpg:
![]()
pixel-sorter example.jpg -i randomfile -f example-randomfile-mask.jpg![]()
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago