Coder Social home page Coder Social logo

tjcoding / enhanced-image-colour-transfer-2 Goto Github PK

View Code? Open in Web Editor NEW
53.0 3.0 4.0 18.7 MB

A Further Enhanced Implementation of the Colour Transfer Method proposed by E Reinhard et al.

License: GNU Lesser General Public License v3.0

C++ 100.00%
color-transfer colour-transfer cpp image-processing colour-spaces reinhard image-colour-channel-correlation

enhanced-image-colour-transfer-2's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

enhanced-image-colour-transfer-2's Issues

Webapp errors out because of unset Content-Type header.

I had this program in both the most recent version of chrome and firefox. The issue is as shown in the console: The response containing CT_noLUT.wasm, initiated by a request from CT_noLUT.js, does not have a content-type header. When I manually specified "Content-Type: application/wasm", as suggested by the console output, it worked. You can use chrome devtools to locally override response headers.

Another thing you may want to note: at first, I was using jpg images that were around 5mb, and the application would crash. It seems the images need to be a smaller file size for the application to succeed. I don't know what is the root cause.

*edit: Just wanted to thank you guys for making both the software and the documentation available. It's been a big help in improving my understanding of color, color spaces, etc, and I wanted to say how appreciative I was. I've built my understanding of the relevant science/math based on the incredibly generous contributions of so many people to open source projects, free textbooks, and in general the relatively thankless enterprise of sharing knowledge. So thanks.

Originally posted by @metamaterialsuit in #2 (comment)

add batch processing

it would be interesting if it were possible to convert a large number of source images that are in the same folder using a batch

question about the code

Hi, I am not familiar with C++, and I am not sure if this is the case. In line 147 of the file main.cpp

// Implement image refinements where a change is specified.
SaturationProcessing(targetf, savedtf,
PercentSaturationShift/100.0);
targetf=FullShading(targetf, savedtf, sourcef, ExtraShading,
PercentShadingShift/100.0);
targetf=FinalAdjustment(targetf,savedtf,
PercentTint/100.0,
PercentModified/100.0);

Should the sentence be

targetf=SaturationProcessing(targetf, savedtf,
PercentSaturationShift/100.0);

Maybe Saturationprocessing is not necessary, so it is written like this?

Question: Is the point of the Ruderman color space NOT to decorrelate RGB values?

After reading the Reinhard paper and looking into the Ruderman color space, I have noticed something that appears to be a contradiction.
In your work, you say that correlation can be used to enhance the accuracy of the color transfer algorithm, but it seems like Reinhard et all specifically wanted to avoid correlation beween the color channels.
Am I interpreting this correctly?

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.