DrawImage

MNIST.DrawImage()

ソース

DrawImage() {
    var image_data = this.ctx.getImageData(0, 0, this.canvas.width, this.canvas.height);
    var data = image_data.data;
    var length = data.length;

    if (length != 4 * this.imgW * this.imgH) {
        console.log("length(%d) != 4 * ImgW(%d) * ImgH(%d) : %dx%d", length, this.imgW, this.imgH, this.canvas.width, this.canvas.height);
        return;
    }

    var wh = this.imgW * this.imgH;

    for (var i = 0; i < wh; i++) {
        var k = 4 * i;
        var c = 255 - this.trainingDataImage[wh * this.imgIdx + i];

        data[k] = c;
        data[k + 1] = c;
        data[k + 2] = c;
        data[k + 3] = 255;
    }

    this.ctx.putImageData(image_data, 0, 0);

    this.imgIdx++;
    if (this.imgIdx < this.trainingImgCnt) {

        setTimeout(this.DrawImage.bind(this), 1);
    }
}