Алгоритм в BGL
От: AndreyM16  
Дата: 28.04.09 14:14
Оценка:
Здравствуйте!

Не подскажите в BGL есть алгоритм поиска глобального минимального разреза графа. Нашел поиск максимального потока, который можно использовать для поиска минимального разреза, но в этом случае нужен исток и сток. Нужны реализации алгоритмов двух типов: типа Stoer-Wagner algorithm и типа Shi-Malik normalized Cuts algorithm. Или если нет в BGL, то может есть в других либах?
Re: Алгоритм в BGL
От: K13 http://akvis.com
Дата: 29.04.09 03:34
Оценка:
AM>Не подскажите в BGL есть алгоритм поиска глобального минимального разреза графа. Нашел поиск максимального потока, который можно использовать для поиска минимального разреза, но в этом случае нужен исток и сток. Нужны реализации алгоритмов двух типов: типа Stoer-Wagner algorithm и типа Shi-Malik normalized Cuts algorithm. Или если нет в BGL, то может есть в других либах?

А в чем проблема нзначить сток и исток?
Все равно ведь если требуется разрез графа, существуют вершины которые обязательно должны принадлежать разным частям?
Re[2]: Алгоритм в BGL
От: AndreyM16  
Дата: 29.04.09 05:52
Оценка:
Здравствуйте, K13, Вы писали:

K13>А в чем проблема нзначить сток и исток?

K13>Все равно ведь если требуется разрез графа, существуют вершины которые обязательно должны принадлежать разным частям?

Как раз нет, нужно найти такой разрез графа, чтобы его пропускная способность была самая минимальная из всех возможных разрезов на две части. При этом, изночально не известны вершины, принадлежащие этим частям. Алгоритмы это делующие я нашел, к примеру здесь, но хотелось бы найти и реализацию.
Re[3]: Алгоритм в BGL
От: K13 http://akvis.com
Дата: 29.04.09 06:09
Оценка:
AM>Как раз нет, нужно найти такой разрез графа, чтобы его пропускная способность была самая минимальная из всех возможных разрезов на две части. При этом, изночально не известны вершины, принадлежащие этим частям. Алгоритмы это делующие я нашел, к примеру здесь, но хотелось бы найти и реализацию.

Тогда режем граф на два множества одно из которых пустое
Какова исходная задача? для чего режем граф?
пропускная способность не имеет смысла без указания источника и стока.

У меня было подобное при генерации бесшовных текстур и разбиения на "фон/объект" но в этих случаях произвольное разбиение было недопустимо.
Вот и хочется понять, откуда может возникнуть необходимость разрезать граф "как попало, лишь бы разрезать".
Re[4]: Алгоритм в BGL
От: AndreyM16  
Дата: 29.04.09 06:59
Оценка:
Здравствуйте, K13, Вы писали:

K13>Тогда режем граф на два множества одно из которых пустое

K13>Какова исходная задача? для чего режем граф?
K13>пропускная способность не имеет смысла без указания источника и стока.

K13>У меня было подобное при генерации бесшовных текстур и разбиения на "фон/объект" но в этих случаях произвольное разбиение было недопустимо.

K13>Вот и хочется понять, откуда может возникнуть необходимость разрезать граф "как попало, лишь бы разрезать".

Задача из области трекинга объектов в последовательности изображений на основе трекинга особых точек. Дан набор особых точек, и некоторым образом подобранные меры зависимостей между ними(на основе их взаимного расположения, устойчивости конфигурации с течением времени и т. д.). Нужно разделить эти точки, как принадлежащие разным объектам(объекты могут сливаться, перекрываться). При этом, понятное дело, не известно какие из точек принадлежат различным объектам, для этого нужно как раз их и разделить. Потом посчитать пропускную способность разреза и если она больше некоторого значения, то это неправильный разрез(то есть обект один).
Re[5]: Алгоритм в BGL
От: minorlogic Украина  
Дата: 29.04.09 07:21
Оценка:
Я бы попробовал поискать по ключевым словам

video segmentation, graph cut
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[6]: Алгоритм в BGL
От: AndreyM16  
Дата: 29.04.09 07:56
Оценка:
Здравствуйте, minorlogic, Вы писали:

M>Я бы попробовал поискать по ключевым словам


M>video segmentation, graph cut


Алгоритм найден(писал выше), нужна его реализация(или реализацию другого алгоритма для данной задачи). Пока никак не могу найти.
Re[7]: Алгоритм в BGL
От: minorlogic Украина  
Дата: 29.04.09 19:41
Оценка:
Здравствуйте, AndreyM16, Вы писали:

AM>Здравствуйте, minorlogic, Вы писали:


M>>Я бы попробовал поискать по ключевым словам


M>>video segmentation, graph cut


AM>Алгоритм найден(писал выше), нужна его реализация(или реализацию другого алгоритма для данной задачи). Пока никак не могу найти.


В бусте видел именно алгоритм оптимизированный для компьютер вижн , думаю что если покопаться в работах его автора то можно найти .
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Ищу работу, 3D, SLAM, computer graphics/vision.
Re: Алгоритм в BGL
От: MasterZiv СССР  
Дата: 05.05.09 07:07
Оценка:
AndreyM16 wrote:

> Не подскажите в BGL есть алгоритм поиска глобального минимального

> разреза графа.

Глобально минимального -- это как ?


Нашел поиск максимального потока, который можно
> использовать для поиска минимального разреза, но в этом случае нужен
> исток и сток.

Так этот алгоритм и используется. Кажется он есть и в явном виде.
За исток берут вершину с минимальной смежностью (мин. кол-вом рёбер).
За сток -- любую вершину, несмежную с ней.
Posted via RSDN NNTP Server 2.1 beta
Re: Алгоритм в BGL
От: MasterZiv СССР  
Дата: 05.05.09 07:16
Оценка:
AndreyM16 wrote:

в примерах есть пример разреза графа
(boost_1_38_0\libs\graph\example\edge-connectivity.cpp)
Posted via RSDN NNTP Server 2.1 beta
Re[2]: Алгоритм в BGL
От: Аноним  
Дата: 05.05.09 12:17
Оценка:
Здравствуйте, MasterZiv, Вы писали:

MZ>Глобально минимального -- это как ?


Когда граф G разбивается на два подграфа S,T != 0 c минимальным разрезом(в обычном смысле) из всех возможных разбиений этого графа, т. е. как описано
здесь Или с минимальным нормальным разрезом как тут. Второй алгоритм используется, к примеру, в сегментации изображений.
В BGL такого нет.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.