Coder Social home page Coder Social logo

Comments (5)

shaanroy avatar shaanroy commented on August 18, 2024 1

from torchstain.

andreped avatar andreped commented on August 18, 2024

I have made a PR which adds support for this for all backends: #30

from torchstain.

shaanroy avatar shaanroy commented on August 18, 2024

Problem with original Reinhard method is that you should have chosen the target image properly, as the processed image's statistics is very much dependent on the target image's statistics. That's why, we proposed Modified Reinhard in which source image's background luminance is preserved as it is. Previously many researchers shown in their paper that, Reinhard did not work, because they choose target image very dark. However, our proposed method alleviated this limitation, because our proposed method transfers background color and contrast statistics from target to source, however, we preserved the background luminance.

Before, you choose a target image, please consult with us.

from torchstain.

andreped avatar andreped commented on August 18, 2024

@shaanroy Thank you for the clarification. The modifications you proposed to the Reinhard algorithm are surely relevant and technically sound, hence, why I wanted to add support for it in the first place. I'm a huge fan of the generic nature of Reinhard and actively use it in my own research, so it is great to see improvements being made :] Thanks for that!

Regarding my comment above:

It does not seem that the modified reinhard is that much different from the original implementation. Hence, API-wise, it might be a good idea to add a method argument to Reinhard, to choose which implementation of Reinhard to use.

It was not my intention to degrade your work, with this comment. I was only asking whether the modifications I made to my reinhard implementation were correct, as I was surprised how simple implementing the proposed solution was. I'm sorry again if it came out differently than I intended.

As my implementation will soon be merged with the master branch (already merged with the development branch), it would be great if you could review the implementation to verify that it seems correct:
https://github.com/EIDOSLAB/torchstain/blob/development/torchstain/numpy/normalizers/reinhard.py#L51

from torchstain.

andreped avatar andreped commented on August 18, 2024

Fixed in 17c2d28.

from torchstain.

Related Issues (20)

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.