mahmoudnafifi / wb_srgb Goto Github PK
View Code? Open in Web Editor NEWWhite balance camera-rendered sRGB images (CVPR 2019) [Matlab & Python]
License: Other
White balance camera-rendered sRGB images (CVPR 2019) [Matlab & Python]
License: Other
how did you calculated mapping function?
because in paper you mentioned using least square approach , which will give only single matrix of size [11,11] ,from this are we extracting [3,11] array?
but in mapping function numpy array , its size is mappingFuncs (144318, 33)
quote from paper "We extract the set of color correction matrices M s
associated with the k similar PCA features. The final cor-
rection matrix M is then computed as a weighted linear
combination of the correction matrices Ms"
Hi Afifi,
Thanks for your awesome work! It inspires me a lot!
I try to download the dataset, however, it seems to be difficult to download from the command line.
Because I can only access the command line from the GPU server.
Any advice for downloading the dataset from sync, it is possible to download from the command line?
Or it is possible to have the google drive link?
Thanks,
Xiaodong Cun
The Python version produces incorrect results for some images. This is due to line 104-105 in WBsRGB.py
.
These lines sort the distances, but not the already extracted mapping functions (line 101), thereby causing a mismatch between mapping matrix and distance/weight.
If these two lines are commented out, the result is correct.
Should I open a pull request?
Additionally, I also have some misc. performance improvements. Should I open a separate PR for these?
Hi,
Thanks for sharing!
I wanna know whether the dataset is global uniform illumination?and how can I get the illuminant vectors?
I try to divide the rendered img by gt img, but the result is not uniform.
If you faced the following error in Matlab:
Please replace the lines 59 and 60 in WBmodel class and the lines 59 and 60 in WBmodel_GPU class with the following lines:
diff_u=abs(repmat(Iu,[1,size(A,2)])-repmat(A,[size(Iu,1),1]));
diff_v=abs(repmat(Iv,[1,size(A,2)])-repmat(A,[size(Iv,1),1]));
Please replace Line 69 in WBmodel.m and Line 69 in WBmodel_GPU.m with the following one:
hist(:,:,i)=(repmat(Iy, [1, size(diff_u,2)]) .* double(diff_u))'*double(diff_v);
Lastly, please replace line 92 in WBmodel.m and line 92 in WBmodel_GPU.m with the following code:
mf = sum(repmat(weightsH,[1, size(obj.mappingFuncs,2)]) .* obj.mappingFuncs(idH,:),1);
The old Matlab versions don't offer this broadcasting operation. In the new versions of Matlab, this repmat
operation is automatically applied when the first/second operand is a single row vector and the second/first operand is a single column.
I can't find out what the naming of the input files mean. For example in the 'Cube input images' dataset i see
AS
AU
D
F
S
T
and am wondering what they stand for.
Hi, @mahmoudnafifi
I'm very impressed with your project! I asked the creators of the Chainner application to integrate your models, but unfortunately, they're NumPy models (.npy) if I understand correctly. Would there be any chance you could convert them to PyTorch (.pth) or ONNX format? Thank you very much and best regards, sir.
Hi,
First of all, thank you for sharing this code.
I tried with python version with high resolution video (4096x554) and it performs very slowly (4 fps).
Processing speed for the video is not a target of this paper but is there any suggestion how to improve processing speed?
I will try to search for how to use gpu with matrix operation because it seems numpy operations took much of the time.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.