var img;
var x = [42,25,73,15,72,43,65]
var y = [42,63,43,83,87,47,17]
var move = 15
function preload(){
img = loadImage("https://i.imgur.com/EwNcUnYm.jpg")
}
function setup() {
createCanvas(480, 480);
background(255);
noStroke();
img.resize(480,480)
imageMode(CENTER)
x = img.width/2 // middle of image
y = img.height/2
}
function draw() {
imgpixel = img.get(x,y) // retrieve pixel color
fill(imgpixel); // fill shape with color of pixel
square(x,y,15)
x+=random(-move,move) // random walk
y+=random(-move,move)
constrain(x,0,img.width);// left and right constrain
constrain(y,0,img.height);// top and bottom constrain
}
Instead of creating the portrait from random pixels, it is created by using the random walk where the portrait is drawn by a wandering object. If someone wants a more precise and accurate image they can adjust the size of the object.