Во-первых, если не планируется работать с древними браузерами, не поддерживающими FileReader, то проще воспользоваться им:
var fileField = document.getElementById('image');
var preview = document.getElementById('preview');
fileField.addEventListener('change', function(event) {
    var reader = new FileReader();
    reader.onload = function(event) {
        preview.setAttribute('src', event.target.result);
    }
    reader.readAsDataURL(event.target.files[0]);
}, false);
Во-вторых, если уж кодировать изображение в base64 перед отправкой, то раскодировать на стороне сервера элементарно. 
Для Python2:
with open("image.png", "wb") as fh:
    fh.write(request.POST['image'].decode('base64'))
Для Python3:
import base64
with open("image.png", "wb") as fh:
    fh.write(base64.decodestring(request.POST['image']))