Compvision.ru: Трекинг объектов. - Compvision.ru

Перейти к содержимому

  • 11 страниц +
  • « Первая
  • 5
  • 6
  • 7
  • 8
  • 9
  • Последняя »
  • Вы не можете создать новую тему
  • Вы не можете отвечать в этой теме

Трекинг объектов.

#121 Пользователь не на сайте   mrgloom 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 1 704
  • Регистрация: 28-Январь 10
  • Репутация: 154

Отправлено 28 Июнь 2012 - 07:58

http://www.codeproje...ct-Tracker-in-C

еще 1 трекер
0

#122 Пользователь не на сайте   Predatorxxx 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 49
  • Регистрация: 17-Январь 12
  • Репутация: 5

Отправлено 28 Июнь 2012 - 01:06

Спасибо большое! Я его посмотрю в ближайшее время

Просмотреть сообщениеmrgloom (28 Июнь 2012 - 07:58 ):



а сегодня я реализовал трекер следующего плана:
1) выделяю передний план гауссиановым микшером
ПЕРВЫЙ КАДР
2) выделяю все контуры (описываю каждый из найденных ПРЯМОУГОЛЬНИКОМ)
3) регистрирую их (в первый раз), т.е. координаты центров масс сую в массив
ВТОРОЙ ПЛЮС КАДР
4) выделяю все контуры
5) если контур очень далеко находится от всех ранее зарегистрированных контуров то регистрирую его как новый контур
6) к кому ближе контур находится из ранее зарегистрированных соответственно тому я и присваиваю его новое значение (критерий наименьшего расстояния)
7) таким образом у меня есть три типа объектов
новые объекты - те у которых есть новая координата , но нет предыдущей
продолжающие - те у кого есть и старая и новая координата, получается трек
удаляемые - те у кого новой координаты нет а старая есть

на этом принципе построил трекер - и очень хорошо подходит для 1 человека который ходит туда сюда через проход. 2 человека не определит так как прямоугольники сольются и 2 разных объекта будут считаться как за один ... вот

p.s
дальнейшие планы : посмотреть трекер который мне прислал уважаемый mrgloom, и то что ранее было в этой теме. :thumbsu:
С blob_track до сих пор как то не очень разобрался, но постараюсь.
0

#123 Пользователь не на сайте   Predatorxxx 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 49
  • Регистрация: 17-Январь 12
  • Репутация: 5

Отправлено 02 Июль 2012 - 11:25

Добрый день! mrgloom, я посмотрел http://www.codeproje...ct-Tracker-in-C
Ну во-первых, это не трекер. Суть его программы в том, что он
1. фотографирует фон
2. вычитает из фона текущее изображение, получает передний план
3. разбивает на квадратики все изображение, и каждой компактной области дает свой порядковый номер.
И это происходит на каждом кадре, как же он определяет что
1) первая область действительно передвигается на то место а не на другое. то есть нет связи никакой между предыдущим и текущим положением
2) если два объекта в обнимку пойдут, то он их определит как за один.

Дабы не занимать много места кодом я свою программу, которую описал в предыдущем посте прикрепляю в виде текстового документа сюда (в архиве docx).

Я остановился на проблеме разделения двух объектов. Вот идут два человека в обнимку, как их разделить друг от друга. Или например шли два человека друг навстречу другу, а потом пересеклись - как понять что это два человека а не один толстый? Или один перегораживает другого...
Какие функции можно использовать?
Пример который в OpenCv blob tracks я не понимаю, кто нибудь может мне объяснить? как он работает?

Прикрепленные файлы


0

#124 Пользователь не на сайте   Predatorxxx 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 49
  • Регистрация: 17-Январь 12
  • Репутация: 5

Отправлено 02 Июль 2012 - 12:02

Вот здесь что означают параметры? Я сколько не читал мануал найти не могу...

Прикрепленные файлы


0

#125 Пользователь не на сайте   mrgloom 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 1 704
  • Регистрация: 28-Январь 10
  • Репутация: 154

Отправлено 02 Июль 2012 - 12:46

Цитата

Вот идут два человека в обнимку, как их разделить друг от друга.

очевидно, что никак, если мы не знаем, что ищем людей, т.е. не определили, что такое человек и не обучили программу.
есть вроде какие то наработки по поиску людей по туловищу или отдельных частей тел.
вот тут посмотрите
http://graphics.cs.m...elearning/hough
http://www.vision.ee...rest/index.html
есть еще подход типа bag of words\bag of features, т.е. типа если мы нашли нос и руку(утрированно), то можно с какой то % вероятностью сказать, что это человек.


если такие как у вас картинки, то можно по головам.


с какой версии блобтрэк? раньше помоему простой был всего лишь по цвету.
0

#126 Пользователь не на сайте   Predatorxxx 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 49
  • Регистрация: 17-Январь 12
  • Репутация: 5

Отправлено 02 Июль 2012 - 01:09

Просмотреть сообщениеmrgloom (02 Июль 2012 - 12:46 ):

с какой версии блобтрэк? раньше помоему простой был всего лишь по цвету.

Версия OpenCV 2.1. Первый Вопрос в том, что означают все параметры которые спрашивает данная программа? Мне бы источник какой нибудь где толково написано или чтоб вы мне пояснили каждый параметр.

Просмотреть сообщениеmrgloom (02 Июль 2012 - 12:46 ):

мы нашли нос и руку

mrgloom, вся проблема в том, что я не знаю пошаговый алгоритм нахождения руки или носа или головы. Вы мне функции, примеры кода покажите, короче второй вопрос скажите как это можно сделать.
0

#127 Пользователь не на сайте   mrgloom 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 1 704
  • Регистрация: 28-Январь 10
  • Репутация: 154

Отправлено 02 Июль 2012 - 02:23

http://experienceope...lance-demo.html
http://opencv.willow...deoSurveillance
вот тут более менее описаны параметры, за остальным надо либо смотреть комментарии в коде(аля "Adaptive background mixture models for real-time tracking. CVPR1999" ) и гуглить по названиям алгоритмов и пейперов.
ну и крутить параметры-экспериментировать.

http://graphics.cs.m...elearning/hough
тут есть и датасет, сорцы, пейпер и даже видеолекция-презентация.

Цитата

The original annotations provided include only the pedestrians occluded by no more than 50%. As we were interested in the performance of the method under significant overlap, we reannotated the data by marking all pedestrians whose head and at least one leg were clearly visible.

возможно стоит погуглить на тему pedestrian detection\people detection
вот тут вроде есть программа http://www.vision.ee...e/code/ism.html
по этим материалам
http://www.vision.ee...apers/pubs.html

видимо есть еще вариант загорожденного за человека не считать
Размещенное изображение


вот еще какой то проект, но вроде не особо интересный.
http://code.google.c...eature-tracker/
0

#128 Пользователь не на сайте   Predatorxxx 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 49
  • Регистрация: 17-Январь 12
  • Репутация: 5

Отправлено 03 Июль 2012 - 07:26

тааак уже ближе, большое спасибо, буду прорабатывать всю литературу +
тема на форуме "Находим в кадре лица, человеческие фигуры, и т.д. и т.п"

один маленький вопрос пока - с помощью всех вот этих классификаторов реально распознать человеческую макушку??? у меня люди под камерой ходят и весь рост у них не видно, лица не видно, только верхушку головы (см фотки в предыдущем моем посте)
0

#129 Пользователь не на сайте   mrgloom 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 1 704
  • Регистрация: 28-Январь 10
  • Репутация: 154

Отправлено 03 Июль 2012 - 09:08

вопрос рассматривали, общего решения не нашли.
http://www.compvisio...p?showtopic=630
0

#130 Пользователь не на сайте   mrgloom 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 1 704
  • Регистрация: 28-Январь 10
  • Репутация: 154

Отправлено 03 Июль 2012 - 10:48

вот неплохая статья(хотя бы на посмотреть картинки), там как раз рассматривается случай, если у нас есть перекрытие.
http://www.vision.ee...ijcv07final.pdf

про стандартный HOG
http://www.cs.brown....s_cvpr_2005.pdf


и еще
http://www.mmp.rwth-...lter-iccv09.pdf
0

#131 Пользователь не на сайте   Predatorxxx 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 49
  • Регистрация: 17-Январь 12
  • Репутация: 5

Отправлено 03 Июль 2012 - 01:21

читаю...
но хотелось бы не просто статей а кода, например может у кого есть код реализации hog с комментариями?

из всех методов которые можно использовать для проблемы разделения людей я выделил следующие
1) grab_cut алгоритм сегментации служащий для выделения одинаковых областей. недостаток в том. что у человека рубашка одного цвета а волосы другого
2) HOG или гистограммы градиента, к сожалению у меня нет примера кода который реализовывал бы это
3) HAFF and CANNY т.е преобразование хафа для окружностей для выделения макушек голов. я попробовал и как обычно преобразование хафа дало кучу окружностей, которые даже если и держались на моей голове то недолго. я пока еще ни разу не видел чтоб из обыкновенной картинки преобразования хафа чистенько без всяких левых окружностей выделили то что надо
4) метод на оптическом потоке farnerback , то есть сегментировать картинку на однородность векторов скорости. мне кажется если два человека будут идти с одной скоростью или людей будет много то метод будет давать кучу ошибок.

про классификаторы я думаю не стоит говорить в моей задаче они не подойдут потому что
1) медленные
2) я не понимаю что классифицировать кроме голов людей или их туловищ (вид сверху)
ПОЭТОМУ
давайте про hog поговорим. Я думаю это реальный способ разрешить проблему трекинга. по этой ссылке я увидел что оказывается в opencv все реализовано уже для того чтобы быстро присобачить этот метод в программу. даже класс есть
HOGDescriptor hog;
hog.setSVMDetector(HOGDescriptor::getDefaultPeopleDetector());

http://stackoverflow...etection-opencv
еще коды нужны или инфа где прочитать про реализацию hog в opencv
0

#132 Пользователь не на сайте   Predatorxxx 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 49
  • Регистрация: 17-Январь 12
  • Репутация: 5

Отправлено 03 Июль 2012 - 01:47

p.s.
насчет блобов ВЕЛИКОЛЕПНО написано в E:\OpenCV2.1\doc\vidsurv (на всяк случай прикрепляю сюда)
все классы, че каждый класс делает, какие надо объекты и переменные сувать.

А вот и код HOG отлично !!! "ларчик просто открывался..."
https://code.ros.org...ct.cpp?rev=2314

Прикрепленные файлы


0

#133 Пользователь не на сайте   Smorodov 

  • Администратор
  • Группа: Главные администраторы
  • Сообщений: 2 823
  • Регистрация: 29-Апрель 09
  • Репутация: 348

Отправлено 03 Июль 2012 - 04:26

Кто нибудь пытался обучать HOG-детектор?

Процедура в предыдущей ссылке описана:

Цитата

Шаг 1) Подготовить изображения объектов, которые хотим искать (положительные образцы).
Также нужно подготовить изображения на которых нет объектов интереса (отрицательные образцы)
Шаг 2) Найти HOG-признаки образцов и обучить SVM классификатор (который так-же есть в OpenCV)
Шаг 3) Использовать коэффициенты обученной SVM-ки в методе HOGDescriptor::setSVMDetector().


Вопрос - кто-нибудь это пробовал?
Что там с точностью получается?

Если никто не пробовал, то сам попробую :)

UPD: Еще бумажку подкину http://limin81.cn/li...amera_ready.pdf


Соорудил код, считающий дескрипторы для изображения.
Снабдил описанием, того что понял.

#include "opencv2/core/gpumat.hpp"
#include "opencv2/core/opengl_interop.hpp"
#include "opencv2/gpu/gpu.hpp"
#include "opencv2/ml/ml.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/contrib/contrib.hpp"
#include "opencv2/video/tracking.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/objdetect/objdetect.hpp"
using namespace std;
using namespace cv;
using namespace cv::gpu;

// -----------------------------------------------------------------
// MAIN
// -----------------------------------------------------------------
// http://experienceopencv.blogspot.com/2011/02/hog-descriptor.html
// Каждый вектор признаков вычисляется по содержимому скользящего по
// изображению окна размером 64x128 пикселей (128 высота 64 ширина - пропорции объекта).
// Каждый элемент вектора, это гистограмма ориентаций градиентов (9 столбцов в интервале 0-180 градусов,
// направления с разными знаками, считаются совпадающими).
// Гистограмма собирается в ячейке 8x8 пикселей.
// Контрастность нормализуется локально по блокам 2x2 ячейки (16x16 пикселей).
// Нормализация является важным этапом.
// Блок перемещается шагами по 8-пикселей (половина размера блока).
// Соответственно каждая ячейка учитывается в 4 различных блоках.
// В качестве классификатора применяется машина опрных векторов (SVM) с линейным ядром .
// Выходом обучнной SVM является множество коэффициентов для каждого элемента вектора признаков.

// 'hitThreshold' аргумент должен быть отрицательным. 
// 'winStride' аргумент (по умолчанию 8x8) - как окно сканирует входное изображение (шаг по x и y). 
// detectMultiScale() аргумент 
// 'groupThreshold' передается в cv::groupRectangles() API - non-Max-Suppression? 
// 'scale0' controls how much down-sampling is performed on the input image before calling 'detect()'.
// It is repeated for 'nlevels' number of times. Default is 64. All levels could be done in parallel. 


// Описание алгоритма и таблица параметров для различных типов объектов приведена в документе:
// http://pascallin.ecs.soton.ac.uk/challenges/VOC/voc2006/slides/dalal.pdf

int main(int argc, char * argv[])
{
	vector <float> desc;
	Mat img;
	setlocale(LC_ALL, "Russian");
	// Читаем изображение
	img = imread("C:\\ImagesForTest\\lena.jpg",0);
	namedWindow("Image",CV_WINDOW_KEEPRATIO | CV_WINDOW_AUTOSIZE);
	imshow("Image", img);

	// ---------------------------------------------
	//Вычислим дескрипторы
	// ---------------------------------------------
	// параметры - см. выше
	Size winSize(64,128);
	Size blockSize(16,16);
	Size blockStride(8,8);
    Size cellSize(8,8);

	int nbins=9;
	int derivAperture=1;
	double winSigma=-1;
    int histogramNormType=cv::HOGDescriptor::L2Hys;
	double L2HysThreshold=0.2;
	bool gammaCorrection=true;
    int nlevels=cv::HOGDescriptor::DEFAULT_NLEVELS;
	// Соорудили экземпляр класса с описанием дескрипторов
	cv::HOGDescriptor HD(winSize,
						 blockSize,
						 blockStride,
						 cellSize,
						 nbins,
						 derivAperture,
						 winSigma,
						 histogramNormType,
						 L2HysThreshold,
						 gammaCorrection,
						 nlevels);
	// Посчитали дескрипторы изображения
	HD.compute(img,desc,Size(8,8),Size(0,0)); // шаг 8 по x и 8 по y ; отступ 0 по x и 0 по y
	// Дескрипторы размером HD.getDescriptorSize() теперь хранятся в переменной desc
	cout <<"Размер дескриптора:"<< HD.getDescriptorSize()<< endl;
	
        // размер  дескриптора вычисляется так:
        //DescSize=(size_t)nbins*
        //(blockSize.width/cellSize.width)*
        //(blockSize.height/cellSize.height)*
        //((winSize.width - blockSize.width)/blockStride.width + 1)*
        //((winSize.height - blockSize.height)/blockStride.height + 1);




        cout <<"Всего дескрипторов:"<< desc.size()/HD.getDescriptorSize() << endl;
	
	desc.clear();
	waitKey(0);
	return 0;
}

0

#134 Пользователь не на сайте   Predatorxxx 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 49
  • Регистрация: 17-Январь 12
  • Репутация: 5

Отправлено 04 Июль 2012 - 02:34

Smorodov, все необходимые программы и действия также описаны вот по этой ссылке

http://szproxy.blogs...2/testtest.html

там есть ссылка на какую то обучающую программку svm_light.
Единственное пока не знаю какого формата нужны фотографии положительных и негативных образцов. В программе ведь надо указывать размер окна, и как я понимаю на каждой фотографии надо чтоб размер положительного образца был именно такого размера , ну например у Вас

Цитата

64x128 пикселей (128 высота 64 ширина - пропорции объекта).

Как Вы считаете сколько надо фотографий и какого размера они должны быть?
2

#135 Пользователь не на сайте   Smorodov 

  • Администратор
  • Группа: Главные администраторы
  • Сообщений: 2 823
  • Регистрация: 29-Апрель 09
  • Репутация: 348

Отправлено 04 Июль 2012 - 03:27

Спасибо, за обучалку, поковыряю на досуге.
По поводу пропорций и др. параметров в листинге выше есть ссылка, а по ссылке открывается документ, в котором есть интересная таблица :)
http://pascallin.ecs...lides/dalal.pdf
Прикрепленный файл  HogParameters.PNG (120,75К)
Количество загрузок: 13
По этим данным можно заключить, что при обучении HOG детектора без бубна или кроссвалидации не обойтись. Если с размерами окна (характерные пропорции объекта, стороны кратны 8 (или значению blockStride), конкретный размер определяется мощностью компа (см. размер дескриптора выше в листинге)) - более менее понятно, то с другими параметрами все не так очевидно.
Количество фотографий - чем больше, тем лучше. Обычно от несколькх сотен, до пары тысяч.
0

#136 Пользователь не на сайте   mrgloom 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 1 704
  • Регистрация: 28-Январь 10
  • Репутация: 154

Отправлено 05 Июль 2012 - 11:08

я так и не понял, как решается проблема с размером окна, объекты как бы разного размера же, или там окно одно и то же, а просто картинка сжимается т.е. ищется на разных масштабах?
0

#137 Пользователь не на сайте   Smorodov 

  • Администратор
  • Группа: Главные администраторы
  • Сообщений: 2 823
  • Регистрация: 29-Апрель 09
  • Репутация: 348

Отправлено 05 Июль 2012 - 02:19

Да, размер окна фиксирован, иначе нельзя, т.к. него зависит размер дескриптора.
И, если поменяем размер окна, это будет уже другой детектор, т.к. изменится размер дескриптора.
Для поиска объектов разных размеров, меняется масштаб изображения.
0

#138 Пользователь не на сайте   Predatorxxx 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 49
  • Регистрация: 17-Январь 12
  • Репутация: 5

Отправлено 09 Июль 2012 - 11:36

Уважаемые форумчане, мне кажется в моей проблеме трекинга голов я повернул тему не в то русло. Пообщавшись с автором сайта http://recog.ru/ , видеоаналитиком и просто хорошим человеком Александром Кручининым, хотелось бы вставить его цитату:

Цитата

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


Таким образом по сути я возвращаюсь к анализу темы http://www.compvisio...wtopic=630&st=0 созданную пользователем ale-ivan
Сейчас опробовав следующий фильтры tophat и blackhat (спасибо теме http://www.compvisio...findpost&p=2270)
у меня к сожалению не получается выделить свою голову - дело в том что у меня на фоне светлой одежды голова темная , и контуры не выделяются, я пробовал также сделать негатив картинки (то есть вычесть каждый пиксель из 255) все равно не получается,... как же бытЬ?

Вопрос к Smorodov :

Просмотреть сообщениеSmorodov (01 Сентябрь 2011 - 03:52 ):

Cмотрели демо retinaDemo.cpp, которое появилось в новой версии opencv?
Сайт проекта с картинками здесь: https://sites.google.../demonstrations
И еще, может быть оптический поток использовать?

я открыл сайт но у меня из картинок только часть открывается! Вы можете вкратце объяснить в чем суть retinaDemo ?

Приложение: мой код
		cvCopy(colourImage,segment_picture,mask);
			cvShowImage("segment_picture",segment_picture);

			
// 			cvZero(greyImage);
// 			cvConvertImage(segment_picture,greyImage);

		cvMorphologyEx(segment_picture, tophat, Temp, Kern, CV_MOP_TOPHAT, iterations);
		cvMorphologyEx(segment_picture, blackhat, Temp, Kern, CV_MOP_BLACKHAT, iterations);

			//cvMorphologyEx(colourImage, tophat, Temp, Kern, CV_MOP_TOPHAT, iterations);
			//cvMorphologyEx(colourImage, blackhat, Temp, Kern, CV_MOP_BLACKHAT, iterations);



		cvShowImage("CV_MOP_TOPHAT", tophat);
		cvShowImage("CV_MOP_BLACKHAT", blackhat);
		//CV_SWAP(tophat,blackhat,difference);
		cvZero(greyImage);
		//cvConvertImage(tophat,greyImage);
		cvConvertImage(segment_picture,greyImage);
		cvCanny(greyImage,greyImage,50,100);
/*
		for (unsigned char *ib = (unsigned char *)greyImage->imageData, *stopb = (unsigned char *)(greyImage->imageData + greyImage->imageSize); ib != stopb; ++ib)
		{
			*ib = 255- *ib;
		}*/
		cvShowImage("invert", greyImage);
		
	
			
		{

			CvMemStorage *storage = cvCreateMemStorage(0);
			CvContourScanner cs = cvStartFindContours(greyImage, storage, sizeof(CvContour), CV_RETR_LIST , CV_CHAIN_APPROX_NONE);

			CvSeq *mContour = 0;
			for (CvSeq *contour = cvFindNextContour(cs); contour; contour = cvFindNextContour(cs))
			{
				if (contour->total >= 400)
				{
					CvBox2D box = cvFitEllipse2(contour);
					CvPoint center = cvPointFrom32f(box.center);
					CvSize size = cvSize(cvRound(box.size.width * 0.5), cvRound(box.size.height * 0.5));
					cvEllipse(colourImage, center, size, -box.angle, 0, 360, CV_RGB(0, 0, 255), 2, CV_AA, 0);
				}
			}

Прикрепленные файлы

  • Прикрепленный файл  segment.JPG (29,99К)
    Количество загрузок: 21
  • Прикрепленный файл  tophat.JPG (28,45К)
    Количество загрузок: 20
  • Прикрепленный файл  blackhat.JPG (27,67К)
    Количество загрузок: 17
  • Прикрепленный файл  contours.JPG (40,21К)
    Количество загрузок: 19
  • Прикрепленный файл  результат.JPG (44,54К)
    Количество загрузок: 20

0

#139 Пользователь не на сайте   Smorodov 

  • Администратор
  • Группа: Главные администраторы
  • Сообщений: 2 823
  • Регистрация: 29-Апрель 09
  • Репутация: 348

Отправлено 09 Июль 2012 - 12:31

С retina demo играл давно, помню что после применения алгоритма, улучшается детализация изображения и подсвечивается область движения.
Кстати, более полезным, вероятно будут использовать новые дескрипторы, которые появились в версии 2.4.
http://www.ivpe.com/freak.htm
0

#140 Пользователь не на сайте   mrgloom 

  • Активный участник
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 1 704
  • Регистрация: 28-Январь 10
  • Репутация: 154

Отправлено 09 Июль 2012 - 01:08

что если
получить область движения->сегментировать по цвету->выделить область округлой формы(наиболее похожую на голову)
(хотя прически\шляпы понятное дело не всё испортят)
0

Сообщить об этой теме:


  • 11 страниц +
  • « Первая
  • 5
  • 6
  • 7
  • 8
  • 9
  • Последняя »
  • Вы не можете создать новую тему
  • Вы не можете отвечать в этой теме

1 посетителей читают эту тему
0 пользователей, 1 гостей, 0 скрытых