Little image processing library

Overview

Android Arsenal Actual version API

Poliwhirl

Description

This is a small image processing library done to find good color for icon background. It uses CIEDE2000 to determine what colors can be processed as the same.

Result example

Here goes the table with the generated colors.

Input Result

Usage

Gradle:

compile 'com.antonpotapov:poliwhirl:$version'

Maven:
<dependency>
    <groupId>com.antonpotapov</groupId>
    <artifactId>poliwhirl</artifactId>
    <version>$version</version>
</dependency>
In code:

You need to use only one class: Poliwhirl(). It's instance is reusable. So, you may create in only once. Also, there is no any long-time operations in instance creation, so you can create it each time you need it.

Async way
Poliwhirl().generateAsync(bitmap, object : Poliwhirl.Callback {
    override fun foundColor(color: Int) {
      // do whatever you need with the color
    }
})
Sync way

Poliwhirl().generate(bitmap);

Customizable way

Here you can provide an executor to poliwhirl. Poliwirl will try to execute it's calculation in parallel in this case. Also you can provide something like current-thread executor (thats how sync way is done) or whatever you need.

Poliwhirl().generateOnExecutor(bitmap, object : Poliwhirl.Callback {
    override fun foundColor(color: Int) {
        pictureBackground.setBackgroundColor(color)
    }
}, Executors.newSingleThreadExecutor())
You might also like...
Awesome Image Picker library will pick images/gifs with beautiful interface. Supports image or gif, Single and Multiple Image selection.

Awesome Image Picker Awesome Image Picker library will pick images/gifs with beautiful interface. Supports image or gif, Single and Multiple Image sel

Annotation Processing Library. Generates proxy class on top of interface/abstract class, that allows to intercept calls. Also known as a design pattern: proxy, delegate, interceptor.
Annotation Processing Library. Generates proxy class on top of interface/abstract class, that allows to intercept calls. Also known as a design pattern: proxy, delegate, interceptor.

1. AutoProxy Annotation Processing Library. Generates proxy class on top of interface/abstract class, that allows to intercept calls. Also known as a

This little project provides Kotlin bindings for the popular tree-sitter library

kotlintree This little project provides Kotlin bindings for the popular tree-sitter library. Currently it only supports the Kotlin JVM target, but Kot

BindsAdapter is an Android library to help you create and maintain Adapter class easier via ksp( Kotlin Symbol Processing).

BindsAdapter BindsAdapter is an Android library to help you create and maintain Adapter class easier via ksp( Kotlin Symbol Processing). Installation

A little more fun for the pull-to-refresh interaction.

Pull-to-Refresh.Tours This project aims to provide a simple and customizable pull to refresh implementation. Check this [project on Behance] (https://

A little animation framework which could help you to show message in a nice looking way
A little animation framework which could help you to show message in a nice looking way

TextSurface A little animation framework which could help you to show message in a nice looking way. Usage Create TextSurface instance or add it in yo

[Deprecated] Little bites of Material Design

Working with shared elements Commit - 8872619 Working with shared elements, explode transition, and animations Commit - 901d62c Playing with the new m

AndroidQuery is an Android ORM for SQLite and ContentProvider which focuses on easy of use and performances thanks to annotation processing and code generation

WARNING: now that Room is out, I no longer maintain that library. If you need a library to easy access to default android ContentProvider, I would may

AndroidPermissions 4.2 0.0 Java Android M was added to check Permission. but Permission check processing is so dirty.

Android Permissions Checker Android M was added to check Permission. but Permission check processing is so dirty. This Project is to be simple, Checki

A little animation framework which could help you to show message in a nice looking way
A little animation framework which could help you to show message in a nice looking way

TextSurface A little animation framework which could help you to show message in a nice looking way. Usage Create TextSurface instance or add it in yo

Exploring Kotlin Symbol Processing - KSP. This is just an experiment.

KSP example Exploring Kotlin Symbol Processing - KSP. This is just an experiment. Project contains 2 modules Processing Example Processing module is t

Neat little beginner android app for calculating restaurant tip.

TipCalAndroidApp Check it out on the playstore https://play.google.com/store/apps/details?id=com.confuseddevs.tipcal This is the first app I published

ANTLR is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.

ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.

Kotlin Symbol Processing (KSP) sample project

Kotlin Symbol Processing (KSP) Sample Project Sample annotation processor created with Kotlin Symbol Processing (KSP) API. The repository supplements

Mocking for Kotlin/Native and Kotlin Multiplatform using the Kotlin Symbol Processing API (KSP)

Mockative Mocking for Kotlin/Native and Kotlin Multiplatform using the Kotlin Symbol Processing API (KSP). Installation Mockative uses KSP to generate

A tool for making your stay through
A tool for making your stay through "IC" a little better.

mr.r0bot-kt.v Mr.r0bot-kt.v is tool that handles computer logic calculations and provides a better experience through your stay at "IC". Warning Use m

A little app that was built with Jetpack Compose
A little app that was built with Jetpack Compose

RateIt Compose πŸ“œ Description A little app that was built with Jetpack Compose. It contains only one screen with custom animated content. The goal of

A blogging mobile application built with Kotlin using MVC design pattern and Take some advantage of Jetpack , View & Data Binding It's a mimic for Tumblr application , But a little prettier than him πŸ˜‰
A blogging mobile application built with Kotlin using MVC design pattern and Take some advantage of Jetpack , View & Data Binding It's a mimic for Tumblr application , But a little prettier than him πŸ˜‰

A blogging mobile application built with Kotlin using MVC design pattern and Take some advantage of Jetpack , View & Data Binding It's a mimic for Tum

Little utilities for more pleasant immutable data in Kotlin
Little utilities for more pleasant immutable data in Kotlin

What can KopyKat do? Mutable copy Nested mutation Nested collections Mapping copyMap copy for sealed hierarchies copy from supertypes copy for type al

Releases(1.0.4)
Owner
Anton Potapov
Greeting, stranger! Welcome to my github account. I'm android developer working in FunCorp. Feel free to communicate with me, if you want! :)
Anton Potapov
Color Picker β€” beautiful library for Android

Color Picker β€” beautiful library for Android Features Simple dialog builder ARGB, RGB & HSV color models Dark theme support Sliders with gradient back

Dmitriy 35 Dec 20, 2022
🎨 A tiny (Kotlin) library for generating attractive colors

?? A tiny (Kotlin) library for generating attractive colors

Brian Norman 45 Apr 30, 2022
Color.kt is a modern color science library for Kotlin Multiplatform and Java.

Color.kt is a modern color science library for Kotlin Multiplatform and Java. It includes modern perceptually-uniform color spaces and color appearance models, such as Oklab and ZCAM.

Danny Lin 45 Oct 11, 2022
A modern color science library for Kotlin Multiplatform and Java

Color.kt Color.kt is a modern color science library for Kotlin Multiplatform and Java. It includes modern perceptually-uniform color spaces and color

Weeb Project (WIP) 0 Oct 21, 2021
Color.kt is a modern color science library for Kotlin Multiplatform and Java.

Color.kt is a modern color science library for Kotlin Multiplatform and Java. It includes modern perceptually-uniform color spaces and color

SOSP-OS 0 Jan 21, 2022
Utility library that extends Jetpack Compose Colors with Material Design2 colors, Color swatches like in Flutter

????β™Ύ Utility library that expands Compose Colors with Material Design2 colors, color swatches, Material Design 3 Tonal Palettes, color names, and utility functions to convert between HSL, HSV, RGB, HCT models and to HEX or from HEX

Smart Tool Factory 18 Dec 13, 2022
Big image viewer supporting pan and zoom, with very little memory usage and full featured image loading choices. Powered by Subsampling Scale Image View, Fresco, Glide, and Picasso. Even with gif and webp support! 🍻

BigImageViewer Big image viewer supporting pan and zoom, with very little memory usage and full featured image loading choices. Powered by Subsampling

Piasy 3.9k Dec 30, 2022
AndroidPhotoFilters aims to provide fast, powerful and flexible image processing instrument for creating awesome effects on any image media.

PhotoFiltersSDK PhotoFiltersSDK aims to provide fast, powerful and flexible image processing instrument for creating awesome effects on any image medi

Zomato 2.5k Dec 30, 2022
AndroidPhotoFilters aims to provide fast, powerful and flexible image processing instrument for creating awesome effects on any image media.

PhotoFiltersSDK PhotoFiltersSDK aims to provide fast, powerful and flexible image processing instrument for creating awesome effects on any image medi

Zomato 2.5k Dec 23, 2022
Image Processing Engine with GUI

Image Processing Engine with GUI Imperial College London Department of Computing Third Year Software Engineer Group Project Supervisor: Dr. Pancham Sh

null 1 Jan 14, 2022