В канвасе строим "рандомный" полигон и "фоном" выводим в нем изображение.
function getRandomArbitary (min, max) {
return Math.random() * (max - min) + min;
}
var canvas = document.getElementById('mCv');
var ctx = canvas.getContext("2d");
var img = new Image();
img.src = '/files/html5audio-sample/Lolishit_79178_5b2a2216f82b4dfb.jpg'
img.onload = function(){
ctx.moveTo(0, 300);
for(var i = 0; i<500; ++i) {
ctx.lineTo(i, 300);
ctx.lineTo(i, getRandomArbitary(0, 600));
}
ctx.lineTo(500, 300);
ctx.clip();
ctx.drawImage(img, 0, 0);
}