Создайте тензор из нескольких изображений с помощью tf.browser.fromPixels с помощью Tensorflow JS - PullRequest
0 голосов
/ 18 октября 2019

Я хочу создать элемент тензор нескольких изображений , используя tf.browser.fromPixels .

const image1 = new ImageData(1, 1);
image1.data[0] = 100;
image1.data[1] = 150;
image1.data[2] = 200;
image1.data[3] = 255;

const image2 = new ImageData(1, 1);
image2.data[0] = 200;
image2.data[1] = 250;
image2.data[2] = 200;
image2.data[3] = 255;

const imageTensor1 = tf.browser.fromPixels(image1);
const imageTensor2 = tf.broser.fromPixels(image2);

// How do I now get imageTensor1 and imageTensor2 into one merged tensor?
const featureData = ???

Как теперь объединитьдва тензора в один, содержат информацию об обоих изображениях? Существуют ли какие-либо операции, такие как tenor.push () или что-нибудь еще доступное? Нужно ли хранить значения в виде массива и в конце объединить их только в один тензор?

Ответы [ 2 ]

1 голос
/ 05 ноября 2019

Вы можете объединить тензоры с tf.concat (тензоры, ось?)

const a = tf.tensor1d([1, 2]);
const b = tf.tensor1d([3, 4]);
a.concat(b);

Или с несколькими тензорами

const a = tf.tensor1d([1, 2]);
const b = tf.tensor1d([3, 4]);
const c = tf.tensor1d([5, 6]);
tf.concat([a, b, c]);
0 голосов
/ 25 октября 2019

На самом деле я узнал, что нет необходимости делать это в первую очередь, потому что model.fit () также принимает массив тензоров. Таким образом, вы можете просто создать массив из нескольких тензоров.

https://js.tensorflow.org/api/latest/#tf.LayersModel.fit

...