¿Cómo subir una imagen a un lienzo con Fabric.js?

Quiero que se cree un proceso donde los usuarios puedan cargar sus imágenes y luego editarlas en el navegador en un Canvas con Fabric.js usando algunos botones -wich usa Fabric.js para agregar algunos efectos-.

No puedo hacer que funcione. Mi HTML es:

<form id="uploadImg" runat="server">
  <input type="file" id="uploadedImg"/>
</form>
<canvas id="canvas"></canvas>

El Javascript es el siguiente:

var canvas = new fabric.Canvas('canvas');
canvas.setHeight(480);
canvas.setWidth(640);

$('#uploadedImg').change(function () {
    var imgData = $(this).files[0];
    fabric.util.loadImage(imgData, function(img) {
        var oImg = new fabric.Image(img);
        oImg.scale(0.2).set({
            left: 100,
            top: 100,
        });
    canvas.add(oImg);
    });
}); 

Respuestas a la pregunta(3)

Su respuesta a la pregunta