2015-06-03 4 views
2

В частности, мой вопрос заключается в том, что каждый последующий кадр имеет разное количество точек и KNN/SVM не реализуется, если у меня не одинаковое количество точек для каждого кадра. Итак, как применять ml на трехмерных кадрах, которые отличаются по размеру? Мой выходной файл состоит из координат x, y, z для каждой точки и более 10000 точек на кадр.Как применить машинное обучение к 3D-точечному выходу, который имеет разное количество точек для каждого кадра?

+2

«Машина обучение ", вероятно, слишком расплывчато. Кажется, что ваша проблема связана с определенным алгоритмом - как насчет гиперссылки на эти акронимы? Это может побудить кого-то попытаться выяснить, что вы делаете. Что представляют собой точки? Возможно, вы можете вставить алгоритм, который интерполирует по заданному кадру, создавая фиксированное количество выходов. Похоже, что в вопросе недостаточно информации, чтобы получить полезный ответ. –

+0

Кто бы ни пытался, вы должны взять на себя труд, чтобы критиковать вопрос. Анонимный нисходящий канал не поможет новому пользователю встать на круги своя. –

+0

KNN или SVM не работают, проводя вычисление точки в точку, поскольку каждый кадр имеет разные точки. Как сравнить два кадра, если каждый из них имеет различное количество точек в генерируемом облаке, которые имеют x, y, z координируют информацию для каждой точки? –

ответ

0

Если у вас есть 10000 точек за точкуCloud. Это довольно приличная точность данных для 3D-объекта. Как 3D-художник, а не ученый, я попытался бы найти хак. Например, если ваш второй pointCloud имеет 10065 пунктов больше или меньше. Я буду просто игнорировать случайно лишние 65points на втором PointCloud так они совпадают по длине (просуммировать все точки число делится на число кадров, чтобы получить опорное значение). Но это может повредить ваши данные (зависит от того, насколько они различаются по длине).

Если бы мне пришлось использовать необработанные данные сканирования, я бы использовал библиотеку обработки сильной геометрии, такую ​​как библиотека C++ pointCloud? http://pointclouds.org/ и его связывание с питонами: http://ns50.pointclouds.org/news/2013/02/07/python-bindings-for-the-point-cloud-library/

Или 3D-программное обеспечение? (Или тензорный поток?)

0

Вы можете извлечь глобальные дескрипторы из каждого pointcloud и подготовить алгоритм машинного обучения, например SVM или ANN.

Есть много различных глобальных дескрипторов, здесь вы можете посмотреть на некоторые из них: PCL Descriptors

После того, как вы их обучить машину алгоритм обучения, как те, которые показаны в Python Machine Learning Classification

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

  • Нет связанных вопросов^_^