Я раздвоил код Tensorflow. js, который по существу обнаруживает различные объекты с помощью видео с веб-камеры. Я хотел бы знать, есть ли способ отследить расстояние перемещения (координаты X и Y) определенных c объектов, таких как люди, внутри веб-камеры, чтобы вычислить их скорость.
Самое важное для меня сейчас - дать каждому обнаруженному человеку уникальный идентификатор. Так что я могу использовать этот идентификатор для хранения координат объекта в массиве, например:
let speed = { ID: 1, xVal: [1,2,3,4], yVal: [2,3,4,5] } // this code works fine and gives the predicted image an ID
Проблема здесь в том, что код разбивает видео на кадры изображения и предсказывает каждый объект в каждом кадре изображения независимо. Поэтому, если я дам предсказанному объекту идентификатор, например, ID = 1,
Предсказанный элемент будет иметь идентификатор, равный 1. Но этот идентификатор будет потерян всякий раз, когда появляется новый кадр изображения, код будет предсказание снова, и новый кадр изображения потеряет все идентификаторы.
if(prediction.class == 'person'){
prediction.id = 1;
}
// this code gives the predicted human object an id equal to 1. what i want is to give every human a unique ID.
// Let's say the camera detects 5 people, i want each of them to have a unique ID
// so that i can track their moved distance.
Вот демонстрация, которая показывает код в действии: https://codesandbox.io/s/z364noozrm.
Здесь это учебник, из которого я получил код: https://hackernoon.com/tensorflow-js-real-time-object-detection-in-10-lines-of-code-baf15dfb95b2.