random – How to display an image pixel by pixel randomly


I want to display an image that each pixel appears randomly, the final result is an image without noise. I have tried this, but the result is not what I expected, How should I fix it?

img=ExampleData[{"TestImage","Lena"}];
data=ImageData[img];
{w,h}=ImageDimensions[img];
constArr=ConstantArray[N@{1,1,1},{h,w}];

Manipulate[constArr[[1;;i,1;;j]]=RandomSample@data[[1;;i,1;;j]];Image[constArr],{i,1,h,1},{j,1,w,1}]

enter image description here