Giter VIP home page Giter VIP logo

colour-gamut-plotter's Introduction

Greetings, Kampidh here!

Freelance kemono artist and photographer. Sometimes I also code and do electronic stuffs.

Short intro:

  • I'm just (re)starting to learn code.
  • Currently bashing keyboard in Qt (C++), sometimes in Python.
  • Occasionally contributing to Krita Project (KDE invent profile)

๐Ÿพ

colour-gamut-plotter's People

Contributors

kampidh avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

colour-gamut-plotter's Issues

[To Do] Improve responsiveness, subprocessing the plotting function

Whenever plotting a large image size with large plotting density, the calculation can take quite a bit of time. Thus hang the whole app until the calculation is finished.

Currently, matplotlib pyplot is not thread safe, so it can't be implemented with multithreading.


Need a better solution to wait the plotting to complete without hanging the whole app.

[To Do] Extract TRC value from embedded colour profile

There are TRC tags from ICC profiles, however Pillow is currently unable to extract those data.

I'll find out if I can extract it from the raw byte data.


There are 2 different standards to be used:

  • ICC v2
    Have TRC with a curve data values. Can be interpolated per channel single dimensionally with scipy. or
    Have TRC with a gamma value (ICC spec, curveType count value = 1)

  • ICC v4
    Have TRC with a curve function as described in ICC v4 specification (page 71). Should be easily parsed to transfer functions.


Extra notes:

Embedded ICC profiles also have primaries coordinate and white point / illuminant that can be accessed with Pillow. I have yet to find out if colour-science can make a 'synthetic' profile from those parameters, that can be displayed later on the colour plot.

If all of the points above are possible, it will improve the accuracy of the plot significantly. And I don't have to rely on string parsing for the automatic profile detection.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.