2015-03-18 1 views
0

Я работаю над темой распознавания действий с использованием Matlab. Каждое видео содержит определенное количество кадров, и каждый кадр содержит разные координаты X, y, z.Распознавание действий с использованием SVM для 3D-массива

После извлечения функций я получил массив ячеек, который содержит 3D-массив для каждого видео. Позволяет быть ясным с цифрами: У меня есть 40 видеороликов, которые дают мне ячейку ячеек 40x1. Каждая ячейка содержит 128x3xN, где N - количество кадров. имеют соответствующие метки array 40x1 double array.

Пример первых 10 видео:

<128x3x54 double> 
<128x3x43 double> 
<128x3x43 double> 
<128x3x55 double> 
<128x3x31 double> 
<128x3x45 double> 
<128x3x45 double> 
<128x3x33 double> 
<128x3x38 double> 
<128x3x38 double> 

Я хочу, чтобы классифицировать эти видео с помощью libSVM, как я могу изменить размеры в 2D массив и сохранить смысл функций? И с аналогичными параметрами арайса для каждого видео?

+0

Вы хотите, чтобы каждое отдельное видео представлялось двумерным массивом? Итак, вы получите массив M x N, где M - длина вектора информации о кадре, а N - количество кадров? Кроме того, чтобы получить одинаковые размеры массива для каждого видео, вам придется обрезать свои видео на длину самого короткого видео, это то, что вы имеете в виду? –

+0

, чтобы применить SVM к данным, я хочу массив данных AxB и массив меток Ax1; где A - количество выборок, а B - количество признаков. У меня здесь A = 40, а B - 128; но моя проблема в том, что у меня много кадров, поэтому у меня не будет подобного B для всех видео. Я не уверен в том, что касается подрезки, это даст хорошие результаты? –

ответ

0

, например

10 Действие * 40 видео для каждого * (128x3xN) предлагается = вход для SVM для обучения, которые создают 400 строк с (128x3xN) функциями и нужно 400 этикеток для подготовки

для тестирования у вас есть 1 действие * 1 видео * (128x3xN), чтобы предсказать действие с обученного SVM

Смежные вопросы