{"id":25905451,"url":"https://github.com/stevekm/image-sort","last_synced_at":"2025-09-10T15:33:28.629Z","repository":{"id":45378658,"uuid":"181263914","full_name":"stevekm/image-sort","owner":"stevekm","description":"Program to sort images by average color values","archived":false,"fork":false,"pushed_at":"2021-12-21T17:43:47.000Z","size":25341,"stargazers_count":22,"open_issues_count":2,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-05-12T00:46:24.490Z","etag":null,"topics":["image-processing","pil","pillow"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stevekm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-04-14T05:21:06.000Z","updated_at":"2024-02-25T03:39:04.000Z","dependencies_parsed_at":"2022-09-03T05:10:36.401Z","dependency_job_id":null,"html_url":"https://github.com/stevekm/image-sort","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevekm%2Fimage-sort","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevekm%2Fimage-sort/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevekm%2Fimage-sort/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevekm%2Fimage-sort/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stevekm","download_url":"https://codeload.github.com/stevekm/image-sort/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241610990,"owners_count":19990508,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["image-processing","pil","pillow"],"created_at":"2025-03-03T05:15:11.666Z","updated_at":"2025-03-03T05:15:12.174Z","avatar_url":"https://github.com/stevekm.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# image-sort\n\n[[Docker Hub](https://hub.docker.com/repository/docker/stevekm/image-sort)]\n\nProgram to sort images based on average color values. `imagesort.py` is able to:\n\n- `print` a sorted csv format table of the average RGB (red, green, blue) and HSV (hue, saturation, value) attributes of each image\n\n- create `thumbnail` output of supplied images with numeric filenames ordered by average RGB or HSV values\n\n- create a `collage` output of all thumbnails of all supplied sorted images along with color information on each image's average RGB value\n\n- create an animated `gif` that will quickly flip through all the sorted thumbnails\n\n- perform multi-threaded parallel image processing when files are supplied in a directory\n\n- adjust the size of output images along with the `key` value used for sorting (default: `\"hue\"`)\n\n- supply a secondary image file with pixels to `ignore` amongst input images, for example to help remove the effects of unwanted background colors on the calculated average RGB values\n\n## Examples\n\nExample commands\n\n- print table of values\n\n```\n./imagesort.py print assets/jpg/Animals-1/ --threads 2 --key red --ignore ignore-pixels-white.jpg\n```\n\n- save a table of values, then read it back to create thumbnails, collage, and gif\n\n```\n./imagesort.py print assets/jpg/Animals-1/ --threads 4 --ignore ignore-pixels-white.jpg \u003e data.csv\n\nmkdir -p output\n./imagesort.py thumbnails data.csv --csv --output output/ -x 200 -y 200 --bar 60\n\n./imagesort.py collage data.csv --output collage.jpg --csv -x 200 -y 200 --bar 60 --ncol 5\n\n./imagesort.py gif data.csv --csv --output image.gif -x 150 -y 150 --bar 50\n```\n\nExample output\n\n- `collage` output\n \n\u003cimg src=\"/examples/collage.jpg\" width=\"400\" height=\"600\" /\u003e\n\n- `gif` output\n\n![gif](/examples/image.gif)\n\n# Installation\n\nClone this repo\n\n```\ngit clone https://github.com/stevekm/image-sort.git\ncd image-sort\n```\n\n## Install with `conda`\n\nInstall dependencies into a local `conda` installation in the current `image-sort` directory\n\n```\nmake install\n\n# activate the conda env\nsource conda/bin/activate\n\n# deactivate it when you are done\nconda deactivate\n```\n\n### Testing\n\nRun the test suite with\n\n```\nmake test\n```\n\nRun the set of example CLI commands with\n\n```\nmake test-commands\n```\n\n## Docker\n\nIf you have trouble installing the required dependencies, it can also be run with Docker.\n\n```\ndocker run -v $PWD:$PWD --workdir $PWD stevekm/image-sort:latest imagesort.py --help\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstevekm%2Fimage-sort","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstevekm%2Fimage-sort","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstevekm%2Fimage-sort/lists"}