open source adobe lightroom like
DESCRIPTION
Final yeah presentation for honours project, oblige to put it throught 8 slides, no moreTRANSCRIPT
Open Source Adobe Lightroom likePierre-Loic Chevillot
Requirements Rich featured Graphical User Interface Adjustment Tools
Brightness and Contrast Saturation
Histogram Threads
Graphical User Interface
Adjustment Library Create as a Dynamic Link Library
Modularity Functions called on demand
Adjustment tools Brightness Contrast Saturation
Brightness and Contrastfloat v = 0;v = (float)(cValue + 100) / 100f;float m = 0.5f * (1.0f - v) + (float)bValue / 100f; cm = new ColorMatrix(new float[][]{ new float[]{v,0,0,0,0}, new float[]{0,v,0,0,0}, new float[]{0,0,v,0,0}, new float[]{0,0,0,1,0}, new float[]{m,m,m,0,1} });
Modification made by the class Color matrix
Avoid to open the image pixel per pixel to apply the modification
Contrast value are multiply to color component
Brightness value is add to the component
Saturationfloat red = (float) 0.3086;float green = (float) 0.6094;float blue = (float) 0.0820;
float sat = (float) (satValue + 100) / 100f ;float redSaturation = (1 - sat) * red + sat;float redSaturationComp = (1 - sat) * red;float greenSaturation = (1 - sat) * green + sat;float greenSaturationComp = (1 - sat) * green;float blueSaturation = (1 - sat) * blue + sat;float blueSaturationComp = (1 - sat) * blue;
Increase the intensity of color
Color component is weight
Weight of the component depends of the luminance
Values given by Adobe
Threads Parallel execution 3 threads
Main application Histogram calculation Paint Handler
Mutual exclusion Semaphore
Delegate function Function pointer Permit access to GUI from a thread
Conclusion