In[]:=
img=
;​​colors=RandomSample[DominantColors[img,6]];​​shapes=RandomSample[{​​Disk[{0,0},1],​​Triangle[{{-1,-1},{0,1},{1,-1}}],​​Annulus[{0,0},{.5,1}],​​Rectangle[{-1,-1},{1,1}],​​Parallelogram[{-1,-1},{{1,2},{2,0}}],​​RegularPolygon[{0,0},1,8]​​}];​​moved=MapIndexed[Translate[#1,{3*#2[[1]],RandomReal[{-7,7}]}]&,shapes];​​primitives=Riffle[colors,moved];​​over=Graphics[{EdgeForm[Directive[Black,Thick]],primitives}];​​ImageCompose[img,over]
Out[]=