powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Кластеризация на основе минимального остовного дерева
8 сообщений из 8, страница 1 из 1
Кластеризация на основе минимального остовного дерева
    #38669740
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Решил кластеризировать (C#) маленькую (~6 кб) ч/б картинку с текстом и простыми фигурами. Так только для считывания ребер графа ушло много памяти (~200 Мб) и по времени долго (~15 с). На "больших" картинках (отсканированная ч/б страница A4) просто с ОутОфМемориЭксепшн отваливается. Может этот метод для изображений не годится? Лучше что-то другое (что?) кластеризировать этим методом?

это курсач - метод задан в варианте работы, но что именно кластеризировать - можно выбирать.

спасибо
...
Рейтинг: 0 / 0
Кластеризация на основе минимального остовного дерева
    #38669743
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
картинку считываю попиксельно.
...
Рейтинг: 0 / 0
Кластеризация на основе минимального остовного дерева
    #38669748
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Bitmap bmp = new Bitmap(img);
            listEdge = new BigList<Edge>();

            int I = img.Size.Height;
            int J = img.Size.Width;
            
            for (int i = 0; i < I; i++)
                for (int j = 0; j < J; j++)
                {
                    Color c = bmp.GetPixel(j, i);
                    if (c.B == 0)//черный
                    {
                        for (int i1 = i; i1 < I; i1++)
                            for (int j1 = (i1 == i ? j + 1 : 0); j1 < J; j1++)
                            {
                                if (bmp.GetPixel(j1, i1).B == 0)//только от черного до черного
                                    listEdge.Add(new Edge() { X1 = i, Y1 = j, X2 = i1, Y2 = j1, W = distance(i, j, i1, j1) });
                            }
                    }
                }
...
Рейтинг: 0 / 0
Кластеризация на основе минимального остовного дерева
    #38669751
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listEdge.Count = 4250070

не многова-то ли это для графа, у которого минимальный остов будет искаться?
...
Рейтинг: 0 / 0
Кластеризация на основе минимального остовного дерева
    #38669752
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Кластеризация на основе минимального остовного дерева
    #38669929
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В результате нужно получить что? Прямоугольники с указанием типа? Текст? Картинка?
...
Рейтинг: 0 / 0
Кластеризация на основе минимального остовного дерева
    #38669962
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonВ результате нужно получить что? Прямоугольники с указанием типа? Текст? Картинка?


кластеры, в которые попадут прямоугольники и текст (по отдельности). а при уточнении кластеров - в тексте будет выделена каждая буква
...
Рейтинг: 0 / 0
Кластеризация на основе минимального остовного дерева
    #38706645
kmaw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все. решил. всем спасибо
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Кластеризация на основе минимального остовного дерева
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]