Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Made with java processing - HaydnG hayhay
- PImage img;
- PImage sorted;
- float closest;
- int closestindex;
- boolean done =false;
- color[] colours = {color(255, 255, 255),color(228, 228, 228),color(136, 136, 136),color(34, 34, 34),color(255, 167, 209),color(229, 0, 0),color(229, 149, 0),color(160, 106, 66),color(229, 217, 0),color(148, 224, 68),color(2, 190, 1),color(0, 211, 221),color(0, 131, 199),color(0, 0, 234),color(207, 110, 228),color(130, 0, 128)};
- PrintWriter output;
- color temp;
- void setup() {
- img = createImage(0, 0, ARGB);
- selectInput("Select a file to process:", "fileSelected");
- size(500, 500);
- output = createWriter("NumbersList.txt");
- }
- float colorDistance(color a, color b)
- {
- PVector avec = new PVector( red(a), green(a), blue(a) );
- avec.sub( red(b), green(b), blue(b) );
- return avec.mag();
- }
- void fileSelected(File file) {
- img = loadImage(file.getAbsolutePath());
- img.loadPixels();
- output.print("[");
- image(img,0,0);
- for (int i = 0; i < img.pixels.length; i++) {
- closest = 1000;
- for(int j = 0; j < colours.length; j++){
- color c = img.get(i%img.width,i/img.height);
- float dist = colorDistance(c,colours[j]);
- if(dist < closest){
- closest = dist;
- closestindex = j;
- }
- }
- output.print(closestindex + ",");
- if(i % 100 == 0 && i > 2){
- output.println();
- }
- }
- output.print("]");
- output.close();
- done = true;
- }
- void draw(){
- background(255);
- image(img, 0, 0);
- fill(0);
- if(done){
- text("File created: NumbersList.txt",50,height - 50);
- text("File saved with numbers",50,height - 20);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement