Skip to content

Latest commit

 

History

History
77 lines (69 loc) · 4.47 KB

README.md

File metadata and controls

77 lines (69 loc) · 4.47 KB

PixelSorter

Sort pixels in your images in artistic ways.

Requires .NET Framework 3.5 (Client Profile will suffice). Project files are compatible with VisualStudio 2010 or newer.

Download

PixelSorter_r21_NET35.exe (for .NET 3.5+, 31 KiB)
SHA-1 checksum: 036b49b9459275d038a353b2f6f6ea63bd68abc9

PixelSorter_r21_NET40.exe (for .NET 4.0+, 32 KiB)
SHA-1 checksum: 5e0dbe71ea1d46ef724491f967678a46678a6ed5

Examples

Parameter Explanation

Algorithms

Determines the sorting pattern.

  • Whole Image - All segments are sorted row-by-row, top-down, left-to-right.
  • Row - Segments within each row are sorted left-to-right.
  • Column - Segments within each column are sorted top-to-bottom.
  • Segment - All pixels within each segment are sorted row-by-row, top-down, left-to-right. Segments are not re-arranged.

Order

Determines sorting order.

  • Ascending - Segments with lowest value come first.
  • Descending - Segments with highest value come first.
  • Ascending Reflected - Segments with lowest values are in the center.
  • Descending Reflected - Segments with highest values are in the center.
  • Ascending Thresholded - Each row/column is divided into regions, divided based on difference between adjacent segments. Segments are sorted lowest-value-first within each region. Only works with Row or Column algorithm.
  • Descending Thresholded - Same as Ascending Thresholded, but segments are sorted highest-value-first within each region.
  • Random - Segments are arranged randomly. If algorithm is Segment, pixels within each segment are arranged randomly instead.

Metric

Determines how the "value" of a single pixel is measured.

  • Intensity - (R+G+B)/3 (HSI color space)
  • Lightness - (max(R,G,B) + min(R,G,B))/2 (HSL color space)
  • Value - max(R,G,B) (HSV color space)
  • Luma - R0.2126 + G0.7152 + B*0.0722 (Approximate luminosity per Rec. 709)
  • Hue (HSL) - Approximate Hue, HSL color space. Follows the rainbow order (ROYGBIV).
  • Hue (Lab) - Accurate Hue, CIE 1976 Lab color space.
  • Chroma (HSL) - max(R,G,B) - min(R,G,B). Approximate color intensity (HSL color space)
  • Chroma (Lab) - Accurate color intensity, CIE 1976 Lab color space.
  • Saturation (HSB) - (max(R,G,B) - min(R,G,B))/max(R,G,B) Approximate color saturation (HSB color space)
  • Saturation (HSI) - 1 - min(R,G,B)/((R+G+B)/3) Approximate color saturation (HSI color space)
  • Saturation (HSL) - Approximate color saturation (HSL color space)
  • Saturation (Lab) - sqrt(a²+b²)/L Accurate color saturation, CIE 1976 Lab color space.
  • Red Channel - Raw red component of RGB color.
  • Green Channel - Raw green component of RGB color.
  • Blue Channel - Raw blue component of RGB color.
  • Red - R - max(G,B) Dominance of color red.
  • Green - G - max(R,B) Dominance of color green.
  • Blue - B - max(R,G) Dominance of color blue.
  • Cyan - (G+B) - max(R*1.5, |G-B|) Dominance of color cyan (or absence of red)
  • Magenta - (R+B) - max(G*1.5, |R-B|) Dominance of color magenta (or absence of green).
  • Yellow - (R+G) - max(B*1.5, |R-G|) Dominance of color yellow (or absence of blue).
  • LabA - Green-magenta balance. The a* component of CIE 1976 Lab color space.
  • LabB - Blue-yellow balance. The b* component of CIE 1976 Lab color space.

Sampling

Determines how the total "value" of a multi-pixel segment is measured.

  • Center - Only value of the middle pixel is measured. Fast. Inaccurate for detailed images and large segments.
  • Average (Mean) - Values of all pixels in each segment are added up.
  • Average (Median) - Values of "an average pixel", such that about half of the segment have same or lower value, and other half has same or higher value.
  • Maximum - Highest value of all pixels in a segment.
  • Minimum - Lowest value of all pixels in a segment.
  • Random - Value of a random pixel within the segment is chosen.