Форум: "Media";
Текущий архив: 2003.04.10;
Скачать: [xml.tar.bz2];
ВнизРаспознование изображений Найти похожие ветки
← →
Макс1 (2003-01-03 15:01) [0]Я пишу программу по распознованию изображений (например текста или рисунков). Если рисовать непосредственно в Delphi, то все очень просто: смотрим какие пискели черного цвета и далее пропускаем через алгоритм распознавания. Но я не знаю как распознавать отсканированное изображение: там цвета не точные (не точно черные и не точно белые). Подскажите пожалуйста, кто знает, как можно эту проблему решить??? Заранее благодарен !!!
← →
Mihey (2003-01-03 22:46) [1]Самое простое - это сделать изображение чёрно-белым (не grayscale). Работе с изображениями учит сайт http://www.efg2.com.
← →
KA_ (2003-01-04 10:19) [2]Существует множество способов, например, медианная фильтрация.
А почитать можно на и русском http://www.graphicon.ru:8100/courses/cg02b/library/dspcourse.pdf
← →
KA_ (2003-01-04 10:34) [3]И вот еще ссылка: http://sevgtu.narod.ru/min/chapter3.htm
← →
Макс1 (2003-01-04 19:22) [4]Большое спасибо за помощь!
Я почитал и насколько понял там используется интенсивность цвета, которая должна изменяться от 0 до 1. Как можно в Delphi её изъять???
← →
Mihey (2003-01-04 21:13) [5]Интенсивность цвета? В смысле, значения R, G и B цвета? Для это есть функции:
GetRValue(Color);
GetBValue(Color);
GetGValue(Color);
где Color - это переменная типа TColor.
← →
Макс1 (2003-01-05 00:05) [6]Нет, там не RGB (которые кстати - натуральные числа), а написано так:
Пусть мы имеем изображение в оттенках серого , интенсивность точек которого может принимать произвольные значения от 0 до 1. Первый самый простой алгоритм – это усечение. Все пиксели с
яркостью больше 0.5 получают яркость 1 (черный цвет), все остальные – яркость 0 (белый).
Может быть я чего-то недопонимаю. Объясните, пожалуйста, если кто знает в чем тут суть.
← →
KA_ (2003-01-05 09:46) [7]Интенсивность это корень суммы квадратов составляющих по RGB : E = sqrt(R*R + G*G + B*B).
Т.е. рассмотрим красный пиксель - его составляющие R=255 G=0 B=0
след. и его интенсивность = 255 :^)
Т.е. в зависимости от формата пикселя (24 бита, 8 бит и т.п.) получаем значения составляющих и вычисляем это E, а далее нормируем - делим на sqrt(3 * 255 * 255). Так и получим интенсивность от 0 до 1.
← →
KA_ (2003-01-05 09:54) [8]Но опять же если цвета нужны - распознаешь цветные рисунки - то нужно использовать медианную фильтрацию. Суть ее в том, что значения составляющих RGB одного пикселя усредняются по области вокруг него с какими-то коэффициентами.
← →
Mihey (2003-01-05 20:34) [9]Кстати, по поводу распознавание изображении. Поищи через поисковик файл neuro40, запрограммированный человеком с ником imp. Там распознавание по образам.
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2003.04.10;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c