Jump to content
Compvision.ru

svoyak

Пользователи
  • Content count

    65
  • Joined

  • Last visited

Community Reputation

0 Новичек

About svoyak

  • Rank
    Эксперт
  1. Добрый день, уважаемые форумчане. Есть задача считать повторяющиеся движения в видеопотоке. Например человек приседает.. или отжимается.. ну или машет рукой "Пака!!". Я почему-то решил обучить для этого сеть(не исключено, что это ошибка и есть способы получше). Подскажите плз в какую сторону копать? То что я видел в гугле сводится к подсчету каких -либо попугаев на картинке(т.е. их наличие и количество). Как это обобщить на видео не понятно. Должно фиксироваться ведь движение целиком.. Есть вот идея обучить распознавать к примеру несколько положений и скармливать кадры сети и фиксировать обнаружение какого-либо положения - потом переходить к следующему, останется только задать правильную последловательность распознавания..Но чесно говоря.. это нужно разбить движение на фазы.. для каждой фазы нужна своя выборка и т.д. Чот смахивает на неоптимальность.. Может есть лучшие предложения?? Премного благодарен.
  2. Оу..Спасибо, а не подскажите какой-нить документ или пример со "срезанием слоев".. или правильное название этого действия(можно english) чтоб прогуглить. Не хватает знаний матчасти в том, как это сделать.. и, к примеру, сколько слоев срезать..Спасибо..
  3. Здравствуйте, подскажите плз, есть ли методики дообучения классификатора. Ну вкратце, чтобы в сеть, натренированную на 100 классов можно было добавить новый класс без полного переобучения. Или может быть можно как то "складывать" сети, треированные на разные наборы классов?
  4. Добрый день всем! Прогнал я все что предлагает openface и столкнулся наверно с непониманием своим.. Плз проясните где я неправ.. Опишу ситуацию. Я пользовался https://cmusatyalab.github.io/openface/demo-3-classifier/ вот этой инструкцией от производителя так сказать. Скачал LFW набор и решил провести на нем тесты. Цель - проверить предлагаемый производителем классификатор. Я выбрал всех у кого есть 5 и более фото(иначе там варнинги на какомто из этапов), это все равно несколько тысяч человек. Обрезал и отцентрировал их фотки согласно инструкции, скормил их извлекателю фич, получил два файла(как в инструкции) и потом скормил их тренировщику классификатора. Он тренировался минут 15-20 и закончил(сформировал файл). Далее я начал проверять сам классфикатор(он там в виде файла *.pkl) Я давал ему картинки из того же набора, на котором он и тренировался..для облегчения его работы. Результаты он выдавал очень грустные, то ошибки то правильное совпадение с confidense около 0,1 - это в лучшем случае. Тогда я начал последовательно уменьшать набор и результаты стали шикарными, когда в наборе осталось 3-4 разных класса, я так понимаю чтото здесь не так или я чего-то не сделал.. Я хотел использовать классификатор для быстрого поиска наиболее похожего и вроде бы по инструкции он там так и используется.. но у меня чтото не работает. Проясните плз куда смотреть.Спасибо. Я понимаю, что саму сеть ведь мне не нужно перетренировывать?? Она уже обучена и должна работать? только классификатор для моего набора, на фичах извлеченных готовой сетью?
  5. Я так понял OpenFace - это натренированная сеть и совсем чуток помогательных скриптов вокруг нее..А openBR - судя по их сайту, это целый фреймворк для работы..
  6. Спасибо, я думаю руками в любом случае лучше сделать, как запасной/проверочный и самый понятный вариант..ок .. Подскажите плз, еще а где можно качнуть какойнить датасет с лицами? нашел вот такой CASIA-webface - но его и оригинальный не дают скачать, а еще говорят он весьма грязный.. ну в смысле там много мусора.. вроде бы его разраб OpenFAce почистил и выложил кудато но все сцылки дохлые.. Может еще есть чегото?? Спасибо
  7. я не проверял еще... тогда сделать предвыборку по длине не получится.. Я как-то упустил этот момент.. т.е. что, там все длинны векторов равны 1?? kNN сейчас тоже курю...:-)) вот интересно есть некие алгоритмы, встроенные сразу в несколько СУБД( MSSQL, postgres), вроде MSSQL Analysis Services(както так) и вроде бы эти алгоритмы как раз так и называются: Поиск ближайшего соседа(ей). Я бегло гуглил примеру работы с ними - они все для геоданных, у которых размерность маленькая.. и чесно говоря непонятно, можно ли натянуть их на задачу поиска среди 128ммерных данных.. Может кто слышал об этом что-нить?? Хорошо наверно было бы запользовать готовый велосипед.. Спасибо.
  8. Ок..спасибо за поддержку..как всегда понятно, что ничего не понятно..:-)) Вы имеете ввиду перебирать все наличиствующие вектора?? наверно это будет очень долго..или я неправильно понял?? а по поводу SVM, если его научить классификации на некотором наборе, а со временем этот набор будет меняться(расти), то точность классификации будет ухудшаться??? Я вот кстати еще подумал..можно ведь хранить базу частями на нескольких серверах и запускать поиск сразу на всех.. хоть это и топорно но даст ускорение прямо пропорционально количеству серверов. после поиска на всех - сделать поиск по результирующей выборке.. Хотелось бы только узнать как максимально быстро с точки зрения математики сравнивать вектора..
  9. Добрый день! Есть вот такая ситуация: собрал и заработал OpenFace, с ним все хорошо..128 точек мне выдается.. Теперь возник вопрос как имея 100000 таких записей осуществлять по ним поиск для выявления наиболее похожего? вот в этой статье https://habrahabr.ru/post/306568/ автор разделил весь процесс на 4 шага и последний шаг - это как раз то что мне нужно, но я немного не понял предложения использовать SVM(может потому что я не знаю что это:-) Я считал, что получив координаты искомого, мы сможем довольно легко найти наиболее похожего путем наложения каких-нить фильтров, или вычисления длины векторов в пространстве..Не могли бы вы немного прояснить где я не прав, похоже я не вижу проблемы там, где она есть. И если можно чуть прояснить как использовать метод опорных векторов, может на каком нить примере, почитал в википедии про него, но там как всегда сферический конь в ваккуме:-)) Я чесно говоря думал, что мне нужен какой-то алгоритм поиска ближайшего соседа в N-пространстве, или не так? Спасибо.
  10. да, может не самый простой..но вроде бы работает.. прикручивается в виде с++ dll, которая работает с libcudann..описать подробней??
  11. Снимаю свой вопрос как дурацкий, в Libcudann есть своя функция для работы с сетью(в смысле уже классификации) Кстати на gpu считается ну просто очень быстро..
  12. Добрый день/вечер! Натолкнулся я на такие вот грабли. Есть проект на дотнет использует сетку , построенную FANN(есть враппер), вроде бы все неплохо..сетка считается, сходится, все это интегрировано в код. Родной гуй для FANN построенную враппером сетку тоже понимает и работает с ней. Проблема в том, что сетка считается отшень долго, ну скажем так часы.. понимаю что может это и недолго, но есть два GPU и захотелось научиться считать на них, все пишут что очень быстро считает.. ДЛя этой цели был найден libcudann и вкручен в проект по работе с Gpu(CUDA). После долгих исправлений, ибо libcudann изначально был под linux он таки заработал GPU посчитали иии... Формат файла, в котором сохраняется сеть совсем не похож на формат FANN, очевидно я из непонимания или еще каких-то тараканов посчитал, что они должны быть совместимы.. Я ошибся и это прискорбно..Теперь вот прошу совета, можно ли как то сконвертить их. В атаче приложу примеры файлов. Я к сожалению непонимаю смыслы того что в них написано, поэтому не могу это сделать, может кому-то их формат понятен будет..Спасибо. Собссно вот почему я посчитал что они должны быть совместимы http://corpocrat.com/2014/11/09/running-a-neural-network-in-gpu/ FANN.rar gpu.rar
  13. mrgloom - еще раз большое спасибо, правильно ли я понимаю, мне нужно установить DIGITS на винде, - это будет как я понял чтото типа надстройки над Caffe. Caffe - это собственнно фреймворк для работы с нейросетями. В нем есть несколько, что ли типов сетей, один из которых Lenet(специально созданный для работы с символами, скажем так)? И мне нужно будет сделать и обучить сеть такого типа, используя DIGITS(Caffe). MNIST - это стандартный набор данных для проверки результатов?. Я так понял в нем только цифирь находится. Про файнтюнинг пока не буду спрашивать, хочу пока научиться получать такие же результаты как у вас на картинке:-) - очень они отличаются от моих на FANN. Поправьте если что неверно. Спасибо :-)
  14. mrgloom - большое спасибо, не могли бы вы уточнить - вы конвертили картинки, или так 80x100 из архива и давали в сеть?? и параметры сети если можно, может я их неправильно выбираю..Обучение долго шло? И если не тяжело, можно кратко написать что есть Lenet, Digits и зафайнтюнится на MNIST.. а то буду читать и что нить не так себе представлю.. Похоже мне надо уйти с FANN :-)) ил правильные параметры сетки подбирать, что звучит довольно грустно..
  15. С тренировкой разобрался..:-)) как ни стыдно сказать, но ошибся опять я..:-)) теперь уже когда подсовывал данные для готовой сети.. Тупой копипаст с примера, селяви.. в примере из-за специфичности работало, а у меня 50/50.. или еще хуже.. Однако все равно результаты не радуют, хотя гораздо лучше чем было. Я бы хотел попробовать сделать входные данные более похожими, так сказать..чтоб сеть не сходила с ума при обучении.. Для этого я бы хотел для начала научиться заливать изображения как на рисунке. Контуры я их получаю и могу закрасить, вопрос в том, как из закрашенного вычесть фон, чтоб как в примере получилась дырка вверху цифры 9.. Насколько я понимаю о чем-то похожем писал но я непонял как это сделать, если можно подробней. Мне кажется нужно научится выделять контуры с фоновым цветом, тогда они были бы маской? Что нибудь типа волшебной палочки фотошопа, но в отношении всей картинки для какого-нить определенного цвета +- Tolerance. Можно такое сделать?? или я сильно увлекся теорией..:-))Спасибо. После препроцессинга изображений у меня получаются картинки 80x100, если я их смасштабирую 20x25 с количеством нейронов в скрытом слое 150 то за пару часов сеть как-то обучается. Я подумал, что если увеличить размерность входных данных и не масштабировать, то наверно это будет лучше, однако уже на 40x50 и 600 нейронов во входном - сеть не обучилась в течение несокльких суток.. Что я неправильно понимаю здесь? Спасибо.
×