Pixelizer is an efficient image pixelizer written in go

Pixelizer

Pixelizer is an image pixelizer written in go. It allows very simple and intuitive CLI pixelization.

Installation

To install Pixelizer, you need to :

  • Install Go here
  • Run this command :
$ go get -u github.com/eleby/pixelizer/...
  • Optional - Install the package to use a cmd shortcut : First navigate to your go sources repository, then :
$ cd github.com/eleby/pixelizer/main

Then build the package (No install, since go install doesn't allow renaming) :

$ go build -o pixelize

And move it to your $GOBIN or $GOPATH/bin :

$ sudo mv pixelize [your $GOBIN or $GOPATH/bin]

Usage

Pixelizer is meant to be simple to use, error-free and intuitive. To be reminded of the usage, you can sure read this readme, but you can also open your terminal and use :

$ pixelize [OR] pixelize help [OR] pixelize man

This will print the manual.

Here is how it works :

/!\ The pixelizer needs to be used directly in the folder containing the image. This known limitation may change in the future. /!\

  1. Print the manual :
$ pixelize [OR] pixelize help [OR] pixelize man
  1. Pixelize an image :
$ pixelize [imageName] [X] [Y] [Z]
  • imageName = name of the image, in the current directory, to pixelize.
  • X = Width of each group of pixels to fuse (Ex : 5 will fuse every group of 5*5 pixels from the image)
  • Y = Number of results, with increasing X at each result (Ex : 5 3 will print 3 results while fusing groups of 5*5 pixels for the first result, 6*6 for the second, etc)
  • Z = Change to the step increase between each result (Ex : 5 3 5 will print 3 results while fusing groups of 5*5 pixels for the first result, 10*10 for the second, etc)
  1. Clear the folder of the result files :
$ pixelize clear
  1. Redo the last pixelization :
$ pixelize redo
Similar Resources

Image processing algorithms in pure Go

Image processing algorithms in pure Go

bild A collection of parallel image processing algorithms in pure Go. The aim of this project is simplicity in use and development over absolute high

Jan 6, 2023

Go package for fast high-level image processing powered by libvips C library

bimg Small Go package for fast high-level image processing using libvips via C bindings, providing a simple programmatic API. bimg was designed to be

Jan 2, 2023

Image processing library and rendering toolkit for Go.

blend Image processing library and rendering toolkit for Go. (WIP) Installation: This library is compatible with Go1. go get github.com/phrozen/blend

Nov 11, 2022

Decode embedded EXIF meta data from image files.

goexif Provides decoding of basic exif and tiff encoded data. Still in alpha - no guarantees. Suggestions and pull requests are welcome. Functionality

Dec 17, 2022

A lightning fast image processing and resizing library for Go

govips A lightning fast image processing and resizing library for Go This package wraps the core functionality of libvips image processing library by

Jan 8, 2023

Fast, simple, scalable, Docker-ready HTTP microservice for high-level image processing

imaginary Fast HTTP microservice written in Go for high-level image processing backed by bimg and libvips. imaginary can be used as private or public

Jan 3, 2023

Imaging is a simple image processing package for Go

Imaging is a simple image processing package for Go

Imaging Package imaging provides basic image processing functions (resize, rotate, crop, brightness/contrast adjustments, etc.). All the image process

Dec 30, 2022

Pure golang image resizing

Pure golang image resizing

This package is no longer being updated! Please look for alternatives if that bothers you. Resize Image resizing for the Go programming language with

Jan 9, 2023

smartcrop finds good image crops for arbitrary crop sizes

smartcrop finds good image crops for arbitrary crop sizes

smartcrop smartcrop finds good image crops for arbitrary sizes. It is a pure Go implementation, based on Jonas Wagner's smartcrop.js Image: https://ww

Jan 8, 2023
Comments
  • Basic installation errors?

    Basic installation errors?

    I thought this looked super cool, and wanted to give a spin! I'm planning on editing any files, just wanted to have fun and see what the program could do. I've never used Go, and following the instructions in the README leaves me with a few errors that I suspect are just related to me not knowing Go. However, some basic digging and comparison against the instructions has left me a bit confused on what I'm supposed to do in order to get it working properly.

    Pop!_OS 20.10 (Ubuntu-based) Go 1.16.1 linux/amd64


    go get retrieves nothing, with no errors. So I've cloned the files to ~/Downloads/pixelizer.

    test@pop-os ~/Downloads$ ll
    ./
    ../
    pixelizer/
    

    When building the repository...

    test@pop-os ~/Downloads/pixelizer/main$ go build -o pixelize
    go: cannot find main module, but found .git/config in /home/lee/Downloads/pixelizer
    	to create a module there, run:
    	cd .. && go mod init
    

    Alright, I'll be a good boy and do as it says.

    lee@pop-os:~/Downloads/pixelizer/main$ cd .. && go mod init
    go: cannot determine module path for source directory /home/lee/Downloads/pixelizer (outside GOPATH, module path must be specified)
    

    Knowing my unfamiliarity with Go, it's probably something simple. Am I missing something?

    Thank you for any and all help!

  • The pixelizer does only work for files in the current directory

    The pixelizer does only work for files in the current directory

    The pixelizer has to take into account a path included in the image name parameter, so it can work everywhere. Currently it only takes an image, and displays results, in the current directory, which is a bit limiting. I will work on that.

  • Refactor and CI

    Refactor and CI

    With this PR I add the following enhancements:

    • Follow Go community project layout https://github.com/golang-standards/project-layout
    • CI/CD support for automation code checks and delivery release artifacts (executables for all platforms that could be downloaded)
    • Add makefile automation
    • Helper scripts for compiling, linting, and releasing the application

    PS more refactor in next PRs

darkroom - An image proxy with changeable storage backends and image processing engines with focus on speed and resiliency.
darkroom - An image proxy with changeable storage backends and image processing engines with focus on speed and resiliency.

Darkroom - Yet Another Image Proxy Introduction Darkroom combines the storage backend and the image processor and acts as an Image Proxy on your image

Dec 6, 2022
Easily customizable Social image (or Open graph image) generator

fancycard Easily customizable Social image (or Open graph image) generator Built with Go, Gin, GoQuery and Chromedp Build & Run Simply, Clone this rep

Jan 14, 2022
An API which allows you to upload an image and responds with the same image, stripped of EXIF data

strip-metadata This is an API which allows you to upload an image and responds with the same image, stripped of EXIF data. How to run You need to have

Nov 25, 2021
Imgpreview - Tiny image previews for HTML while the original image is loading
Imgpreview - Tiny image previews for HTML while the original image is loading

imgpreview This is a Go program that generates tiny blurry previews for images t

May 22, 2022
Storage and image processing server written in Go
Storage and image processing server written in Go

Mort An S3-compatible image processing server written in Go. Still in active development. Features HTTP server Resize, Rotate, SmartCrop Convert (JPEG

Jan 7, 2023
An image resizing server written in Go
An image resizing server written in Go

picfit picfit is a reusable Go server to manipulate images (resize, thumbnail, etc.). It will act as a proxy on your storage engine and will be served

Dec 24, 2022
ColorX is a library to determine the most prominent color in an image written in golang

ColorX is a library to determine the most prominent color in an image. ColorX doesn't use any sort of complex algorithms to calculate the prominent color, it simply loops over the image pixels and returns the color that occurs the most.

Nov 11, 2021
Pbm - Package ppm implements a Portable Bit Map (PBM) image decoder and encoder written in Go

Package pbm import "github.com/slashformotion/pbm" Package pbm implements a Portable Bit Map (PBM) image decoder and encoder. The supported image col

Jan 5, 2022
Efficient moving window for high-speed data processing.

Moving Window Data Structure Copyright (c) 2012. Jake Brukhman. ([email protected]). All rights reserved. See the LICENSE file for BSD-style license. I

Sep 4, 2022
A simple, efficient spring animation library for smooth, natural motion🎼
A simple, efficient spring animation library for smooth, natural motion🎼

Harmonica A simple, efficient spring animation library for smooth, natural motion. It even works well on the command line.

Jan 1, 2023