Продолжая тему фильтров Габора, допилил текстурный сегментатор до рабочего состояния.
GaborTextureSegmentation.rar
Годится не на все случаи жизни, но в некоторых задачах вещь весьма полезная.
Я использовал кластеризацию k-means, количество кластеров задается вторым параметром функции:
SegmentImage(img,2,labels);
Метки кластеров хранятся в матрице labels.
Вот результат работы программы при количестве кластеров равном 6.
Вход:
Выход (метки):
Если нужно обучить программу узнавать какой-нибудь определенный тип текстуры, а не просто различать их, нужно обучить какой-нибудь классификатор (SVM например), подсовывая ему в качестве обучающих пар вектор Descriptors и метку класса.
Аналогично тому что сделано в этой теме http://www.compvision.ru/forum/index.php?showtopic=861
(10 пост), только вместо трехмерного цвета, будет 40 мерный Descriptors.
Продолжая тему фильтров Габора, допилил текстурный сегментатор до рабочего состояния.
GaborTextureSegmentation.rar
Годится не на все случаи жизни, но в некоторых задачах вещь весьма полезная.
Я использовал кластеризацию k-means, количество кластеров задается вторым параметром функции:
SegmentImage(img,2,labels);
Метки кластеров хранятся в матрице labels.
Вот результат работы программы при количестве кластеров равном 6.
Вход:
Выход (метки):
Если нужно обучить программу узнавать какой-нибудь определенный тип текстуры, а не просто различать их, нужно обучить какой-нибудь классификатор (SVM например), подсовывая ему в качестве обучающих пар вектор Descriptors и метку класса.
Аналогично тому что сделано в этой теме http://www.compvision.ru/forum/index.php?showtopic=861
(10 пост), только вместо трехмерного цвета, будет 40 мерный Descriptors.