The starting point is a grid of random values, usually called noise. Every pixel gets an arbitrary color, so the initial image looks like television static.
Starting from randomness looks wasteful, but it removes a problem. If generation began from a blank white canvas, the model would have to decide where every object goes, in what order, and how to keep later additions from overwriting earlier ones. If it began from an existing photo, it would have to detect and undo whatever structure was already there. Noise has neither problem: it contains no objects to preserve and no structure to remove. The model is free to impose structure from scratch.
Randomness also serves a second purpose. Because the starting noise differs on every run, the same prompt does not have to produce the same picture. The prompt constrains what the final image must look like, while the noise supplies the variation in pose, layout, and detail. This is the image-side version of the sampling variation you already saw in text generation: the model's preferences are fixed, but the path taken through them is not.
One clarification: the noise is not the picture in disguise, waiting to be revealed. Nothing in the random values corresponds to the final content. The structure is introduced by the model during refinement, not extracted from the starting grid.