Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Main {
- public static void main(String[] args) {
- // ExtractCOL extructCOL = new ExtractCOL(1666);
- // int[] grey = grey();
- // System.out.println(grey[0]);
- // delta(2035471,986895);
- }
- public static int[] grey(){
- int[] greys = new int[16];
- for(int i=0;i<16;i++){
- greys[i]=0xFF*(i+1)/17*0x10101;
- }
- return greys;
- }
- public static float delta(int col1, int col2){ // Firts color = entered; Second color - from pallete;
- ExtractCOL extcol1 = new ExtractCOL(col1);
- ExtractCOL extcol2 = new ExtractCOL(col2);
- int dr = extcol1.r-extcol2.r;
- int dg = extcol1.g-extcol2.g;
- int db = extcol1.b-extcol2.b;
- float delt = (float) (0.2126 * Math.pow(dr,2) + 0.7152 * Math.pow(dg,2) + 0.0722 * Math.pow(db,2));
- // System.out.println(delt);
- return delt;
- }
- public static float[] deltsArray(int col){
- float[] delts = new float[16];
- int[] grey = grey();
- for(int i=0;i<delts.length;i++){
- delts[i]=delta(grey[i],col);
- }
- return delts;
- }
- public static int findNearColor(int col){
- float[] delts = deltsArray(col);
- return nearColor;
- }
- }
- public class ExtractCOL {
- public int r,g,b;
- public ExtractCOL(int value){
- r = (value >> 16) & 0xff;
- g = (value >> 8) & 0xff;
- b = (value ) & 0xff;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement