2020-08-20 02:05:34 +02:00
|
|
|
"use strict";
|
|
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
|
exports.convDown = exports.convNoRelu = exports.conv = void 0;
|
|
|
|
const tf = require("@tensorflow/tfjs-core");
|
|
|
|
const scaleLayer_1 = require("./scaleLayer");
|
2020-08-18 14:04:33 +02:00
|
|
|
function convLayer(x, params, strides, withRelu, padding = 'same') {
|
|
|
|
const { filters, bias } = params.conv;
|
|
|
|
let out = tf.conv2d(x, filters, strides, padding);
|
|
|
|
out = tf.add(out, bias);
|
2020-08-20 02:05:34 +02:00
|
|
|
out = scaleLayer_1.scale(out, params.scale);
|
2020-08-18 14:04:33 +02:00
|
|
|
return withRelu ? tf.relu(out) : out;
|
|
|
|
}
|
2020-08-20 02:05:34 +02:00
|
|
|
function conv(x, params) {
|
2020-08-18 14:04:33 +02:00
|
|
|
return convLayer(x, params, [1, 1], true);
|
|
|
|
}
|
2020-08-20 02:05:34 +02:00
|
|
|
exports.conv = conv;
|
|
|
|
function convNoRelu(x, params) {
|
2020-08-18 14:04:33 +02:00
|
|
|
return convLayer(x, params, [1, 1], false);
|
|
|
|
}
|
2020-08-20 02:05:34 +02:00
|
|
|
exports.convNoRelu = convNoRelu;
|
|
|
|
function convDown(x, params) {
|
2020-08-18 14:04:33 +02:00
|
|
|
return convLayer(x, params, [2, 2], true, 'valid');
|
|
|
|
}
|
2020-08-20 02:05:34 +02:00
|
|
|
exports.convDown = convDown;
|
2020-08-18 14:04:33 +02:00
|
|
|
//# sourceMappingURL=convLayer.js.map
|