Experimenting with Flux finetune on Glitch Images generated using this^ Processing script I had fun with recently. WIP and doesn't enforce the style consistently but it's pretty cool.

Plays well with andreasjansson/flux-shapes (On Replicate) LoRA - also trained on synthetic data with a nice opinionated color palette.

Check the examples for trigger words etc at https://replicate.com/janghaludu/kocchaga

^

// GLITCHED Manoloide's Script
int seed = int(random(999999));

void setup() {
  size(960, 960, P2D);
  smooth(8);
  pixelDensity(2);
  generate();
}

void draw() {
  generate();
}

void keyPressed() {
  if (key == 's') saveImage();
  else {
    seed = int(random(999999));
    generate();
  }
}

//https://coolors.co/f2f2e8-ffe41c-ef3434-ed0076-3f9afc
int colors[] = {#155263, #FF6F3C, #FF9A3C, #FFC93C};

int rcol() {
  return colors[int(random(colors.length))];
}
int getColor(float v) {
  v = abs(v);
  v = v%(colors.length); 
  int c1 = colors[int(v%colors.length)]; 
  int c2 = colors[int((v+1)%colors.length)]; 
  return lerpColor(c1, c2, v%1);
}

void shuffleArray(int[] array) {
  for (int i = array.length; i > 1; i--) {
    int j = int(random(i));
    int tmp = array[j];
    array[j] = array[i-1];
    array[i-1] = tmp;
  }
}


void generate() {
  background(0);

  int cc = int(random(7, random(8, 160)));
  float ss = width*1./cc;

  /*
  noStroke();
   fill(210);
   rectMode(CENTER);
   for (int j = 0; j < cc; j++) {
   for (int i = 0; i < cc; i++) {
   rect(i*ss, j*ss, 3, 3);
   }
   }
   */


  stroke(30);
  noStroke();


  int dx = int(random(-5, 5));
  int dy = int(random(-5, 5));
  for (int k = 0; k < 100; k++) {
    int lar = int(random(8, random(8, 50)));
    int ax = int(random(-4, cc+4));
    int ay = int(random(-4, cc+4));
    ArrayList<PVector> points = new ArrayList<PVector>();
    for (int i = 0; i < lar; i++) {
      points.add(new PVector(ax, ay));
      ax += int(random(-5, 5));
      ay += int(random(-5, 5));
    }


    int sub = int(random(1, 50));
    int shw = 40;
    for (int j = 0; j < sub; j++) {
      beginShape();
      int col = ((j%2)== 1)? 2 : (int(random(150, 250))-shw);
      fill(col);
      float d1 = map(j-2, 0, sub, 0, 12);
      float d2 = map(j+1, 0, sub, 0, 1);
      for (int i = 0; i < points.size(); i++) {
        PVector p1 = points.get(i);
        stroke(255-(col+(((i%2)== 0)? shw : 0)));
        fill(col+(((i%2)== 0)? shw : rcol()));
        vertex((p1.x+dx*d1)*ss, (p1.y+dy*d1)*ss);
      }
      for (int i = points.size()-1; i >=0; i--) {
        PVector p1 = points.get(i);
        stroke(255-(col+((((i+1)%2)== 0)? rcol() : 0)));
        fill(col+((((i+1)%2)== 0)? rcol() : 0));
        vertex((p1.x+dx*d2)*ss, (p1.y+dy*d2)*ss);
      }
      endShape(CLOSE);
    }
  }
}

void saveImage() {
  String timestamp = year() + nf(month(), 2) + nf(day(), 2) + "-"  + nf(hour(), 2) + nf(minute(), 2) + nf(second(), 2);
  saveFrame(timestamp+".png");
}
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model is not currently available via any of the supported Inference Providers.
The model cannot be deployed to the HF Inference API: The model has no library tag.