Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/25: Рейтинг темы: голосов - 25, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 16.11.2015
Сообщений: 9

Сегментация изображений (граф)

22.11.2017, 19:34. Показов 4589. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет. Задали задание сложное в универе, буду благодарен за подсказки или код.

Нужно сделать программу для сегментации изображения с использованием графов.

Может у кого есть наработки или опыт в подобном вопросе?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.11.2017, 19:34
Ответы с готовыми решениями:

Сегментация изображений
Ребята, очень нужны Ваши советы. Заставили делать проект по теме сегментация изображений. Времени очень мало. Нам нужно определиться с...

Сегментация изображений
Нужно сегментировать изображения для определение границ обьекта на нем. Может кто писал чет подобное. Скиньте буду рад.

Сегментация изображений
Доброго времени суток , подскажите пожалуйста алгоритм метода с использованием гистограммы. Заранее спасибо

3
 Аватар для 4770k
2 / 2 / 1
Регистрация: 18.11.2016
Сообщений: 10
22.11.2017, 19:44
как я понимаю нужно разделить изображение на части?

Алгоритм Краскала почитай

1. Lavrenko Jeon V. Automatic image annotation and retrieval using cross-media relevance models / Jeon V.
Lavrenko, R. Manmatha // Proceedings of the 26th annual international ACM SIGIR conference on
Research and development in information retrieval. – Toronto, Canada, 2003. – P. 119-126.
2. Sumengen B. Multi-scale edge detection and image segmentation / B. Sumengen, B.S. Manjunath //
Proc. European Signal Processing Conference (EUSIPCO). – Sep. 2005. – VRL ID: 146.
3. Нюнькiн К.М. Виявлення границь людських облич на зображеннях // Мат. IV Всеукраїнської конф.
«Оброблення сигналiв i зображень та розпiзнавання образiв». – 1998. – С. 99-100.
4. Veksler O. Image segmentation by nested cuts / O. Veksler // IEEE Conference on Computer Vision
and Pattern Recognition. – Vol. 1. – P. 339-344.
5. Yuri Boykov. Gareth Funka-Lea, Graph Cuts and Efficient N-D Image Segmentation / Yuri Boykov //
International Journal of Computer Vision. – 2006. – Vol. 70, Issue 2. – P. 109-131.
6. Zhuowen Tu. Image segmentation by data-driven Markov Chain Monte Carlo / Zhuowen Tu, SongChun
Zhu // IEEE Transactions on Pattern Analysis and Machine Intelligence. – 2002. – Vol. 24,
Issue 5. – P. 657-673.
7. Ковтун И.В. Текстурная сегментация изображений на основании марковских случайных полей /
И.В. Ковтун // УСиМ. – 2003. – № 4. – С. 46-55.
8. Агарков A.В. Iєрархiчне представлення зображень для застосування при вирiшеннi широкого
кола проблем / A.В. Агарков // Оброблення сигналiв i зображень та розпiзнавання образiв :
Восьма всеукраїнська мiжнародна конференцiя. – Київ, 2006. – С. 119-122.
9. Агарков А.В. Иерархическое представление изображения с помощью графа / А.В. Агарков //
Искусственный интеллект. – 2007. – № 1. – С. 101-109.
10. Агарков А.В. Структурное описание изображений в виде графа для решения задач распозна-
вания / А.В. Агарков // Бионика интеллекта. – 2009. – № 1(70). – С. 95-101.
11. David G. Lowe. Local Feature View Clustering for3D Object Recognition / David G. Lowe // Proc.
CVPR. – 2001. – P. 682-688.
12. David G. Lowe. Distinctive Image Features from Scale-Invariant Keypoints / David G. Lowe // International
Journal of Computer Vision. – 2004. – Vol. 2, № 60. – P. 91-110.
13. Гонсалес Р. Цифровая обработка изображений / Р. Гонсалес, Р. Вудс. – Москва : Техносфера,
2006. – 1072 с.
0
0 / 0 / 0
Регистрация: 16.11.2015
Сообщений: 9
22.11.2017, 19:50  [ТС]
Да, нужно разделение изображений на части. Насколько я понял, строится граф из пикселей изображения, а дальше его нужно как-то разделить на сегменты.

Вот сам процесс деления и как это реализовать на C# или C++ для меня не понятно.
0
 Аватар для 4770k
2 / 2 / 1
Регистрация: 18.11.2016
Сообщений: 10
23.11.2017, 00:00
C#
1
2
3
4
5
// Copies the entire bitmap.
protected Bitmap CopyBitmap(Bitmap source)
{
    return new Bitmap(source);
}
Создание растрового изображения
C#
1
2
3
4
5
6
7
8
9
10
11
12
private Bitmap CreateBitmap(int sideSize)
{
    Bitmap bmp = new Bitmap(sideSize, sideSize);
    Graphics g = Graphics.FromImage(bmp);
 
    g.FillEllipse(new SolidBrush(Color.Red), 0, 0, sideSize, sideSize);
    g.DrawLine(new Pen(Color.Black), 0, 0, sideSize, sideSize);
    g.DrawLine(new Pen(Color.Black), sideSize, 0, 0, sideSize);
    g.Dispose();
 
    return bmp;
}
Копирование растрового рисунка


Копирование части точечного рисунка
Эта перегрузка метода принимает объект Rectangle в качестве параметра, указывающего границы возвращаемой части растрового изображения.
C#
1
2
3
4
5
6
7
8
protected Bitmap CopyBitmap(Bitmap source, Rectangle part)
{
    Bitmap bmp = new Bitmap(part.Width, part.Height);
    Graphics g = Graphics.FromImage(bmp);
    g.DrawImage(source,0,0,part,GraphicsUnit.Pixel);
    g.Dispose();
    return bmp;
}
Добавлено через 5 минут
Загружаем изображение:
Код:

C#
1
Bitmap bmp = Bitmap.FromFile("путь_к_файлу");
Читаем пиксели при помощи GetPixel:
Код:
C#
1
2
3
4
5
6
7
8
 for (int y = 0; y < bmp.Height; ++y)
      {
        for (int x = 0; x < bmp.Width; ++x)
        {
          Color c = bmp.GetPixel(x, y);
// тут логика программы
        }
      }
Чтобы разбить изображение на части, надо создать новые Bitmap'ы с нужными размерами:
Код:
C#
1
Bitmap bmp2 = new Bitmap(100, 100, PixelFormat.Format24bppRgb);
и заполняем их при помощи SetPixel

https://msdn.microsoft.com/en-... y164x.aspx

Добавлено через 6 минут
вот исходник

добро пожаловать под кат

Добавлено через 3 часа 55 минут
http://www.morgantechspace.com... sharp.html
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.11.2017, 00:00
Помогаю со студенческими работами здесь

Сегментация изображения
Народ помогите! Есть изображение. Нужно распознать объект на этом изображении и заставить его двигаться

Сегментация наращиванием областей
Привет всем. Помогите разобраться с алгоритмом сегментации изображений наращивания областей. Допустим известна начальная точка (центр...

Сегментация слипшихся элементов
Здравствуйте, помогите с задачей: Мне главное понять теорию как это сделать, напишите кто чем может помочь.

Сегментация изображений посредством OpenCV алгоритмом MeanShift
Установил Eclipse для Java, настроил его совместно с OpenCV. С чего начать обработчик изображений, производящий сегментацию...

Граф задан цепными списками. Построить его реберный граф
Дорогие форумчане, прошу помочь с написанием данной программы: Граф задан с помощью цепных списков. Построить его реберный граф.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru