FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Don't interpolate images in RGB space · Issue #5490 · matplotlib/matplotlib · GitHub

Repository navigation

Don't interpolate images in RGB space #5490

Description

We currently interpolate images by mapping the raw data into RGB, then interpolate that RGB (using any number of algorithms) to produce the final result. This can result in colors that don't actually appear in the colormap to be in the final result.

We should instead change the order of operations so that the interpolation happens on the raw data (in floating-point space), then the image is color mapped.

Activity

  1. added this to the milestone on Nov 16, 2015
  2. mdboom commented on Dec 2, 2015

    MemberAuthor

    I think I have the Agg part of this figured out. See http://github.com/mdboom/aggravate

    All that's left, then, is the Python side of things, and #5602 offers some guidance as to where to insert the floating-point interpolation operations. Ideally, the matplotlib._image.Image class on the C++ side should go away. It predates Numpy when we needed a class just to store the image data. Now, a Numpy array will do, and it would be better to just have functions on the C++ side for interpolation and coloring.

  3. WeatherGod commented on Dec 2, 2015

    Member

    "aggravate"? You get a free beer from me at the next SciPy meeting!

    On Wed, Dec 2, 2015 at 1:38 PM, Michael Droettboom <notifications@github.com

    wrote:

    I think I have the Agg part of this figured out. See mdboom/aggravate

    All that's left, then, is the Python side of things, and #5602
    #5602 offers some guidance
    as to where to insert the floating-point interpolation operations. Ideally,
    the matplotlib._image.Image class on the C++ side should go away. It
    predates Numpy when we needed a class just to store the image data. Now, a
    Numpy array will do, and it would be better to just have functions on the
    C++ side for interpolation and coloring.

    —
    Reply to this email directly or view it on GitHub
    #5490 (comment)
    .

  4. mdboom commented on Dec 2, 2015

    MemberAuthor

    Roget's says it's a synonym for "magnify".

  5. WeatherGod commented on Dec 2, 2015

    Member

    Yes, it works on so many levels. #wordsmith

    On Wed, Dec 2, 2015 at 1:43 PM, Michael Droettboom <notifications@github.com

    wrote:

    Roget's says it's a synonym for "magnify".

    —
    Reply to this email directly or view it on GitHub
    #5490 (comment)
    .

  6. tacaswell commented on Dec 3, 2015

    Member

    shiny!

  7. mdboom commented on Dec 3, 2015

    MemberAuthor

    One advantage of rewriting the image interpolation as a purely functional interface is that it was really easy to add OpenMP support to take advantage of multiple cores.

  8. tacaswell commented on Dec 3, 2015

    Member

    It is not obviously to me which of those interplotaions is 'average all of the values that fall under this much larger pixel' (ex, coarse graining).

  9. mdboom commented on Dec 3, 2015

    MemberAuthor

    It is not obviously to me which of those interplotaions is 'average all of the values that fall under this much larger pixel' (ex, coarse graining).

    The different filter kernels are essentially amount to weighted averages with different curves.

  10. self-assigned this
    on Dec 22, 2015
  11. modified the milestones: , on Feb 18, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions


    Back | FazBrowse Home | New Git URL