Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Площадь отсканированого.... (http://forum.oszone.net/showthread.php?t=29700)

aldehyde 02-05-2004 11:26 205400

Кто знет и может подсказать програмку или компонент програмы с помощью которого можна вычислить площадь отсканированого изображения фигуры, предмета и тп...
Значит вот, например я отсканировал предмет форма каторого может быть различна (треугольник и тд.) и вычеслить его (треугольника)площадь а не площадь рисунока который обычно после сканирования получается прямоугольный.
Что то вроде как отрисовать предмет на листе бумаги а потом весовым методом вычеслить его площу. Так делают......

JCooper 02-05-2004 11:59 205401

aldehyde врят ли есть что-то готовое, т.к. для начала надо данный образ распознать, а потом уж вычислять его площадь.

aldehyde 02-05-2004 21:38 205402

говорят Автокадом можно.....

bgg0408 02-05-2004 23:14 205403

Цитата:

Что то вроде как отрисовать предмет на листе бумаги а потом весовым методом вычеслить его площу. Так делают...
Можно алгоритм триангуляции использовать. Т.е. разобьем нашу фигуру(уже отсканированную и переведенную в точки) на треугольнички. Координаты всех вершин нам алгоритм найдет. Ну, и посчитаем площадь каждого, а потом суммируем. Пока ничего более умного в голову не приходит.

[s]Исправлено: bgg0408, 23:16 2-05-2004[/s]

pva 12-05-2004 11:21 205404

Пусть цвет точки (серый) обозначат степень присутствия твоего предмета на бумаге. Получаем некоторое нечёткое множество. Его площадь - сумма всех цветов. При любом антиалиасинге всё считается замечательно, но если твой объект содержит рисунок, необходимо делать распознавание (что неоднозначно по своей природе). Можешь почитать Добеши "10 лекций по вейвлетам", но это не поможет. Если рисунок будет содержать белый квадрат, его площадь твоей программой учитываться на будет.
Для подтверждения последнего примера, попробуй напечатать на принтере белый квадрат внутри чёрного, повесь на холодильник, закрой один глаз и скажи, какую фигуру видишь: квадрат или квадрат с квадратной дырой.

hasherfrog 12-05-2004 14:22 205405

Цитата:

Цитата aldehyde
говорят Автокадом можно...

Рассчитать площадь фигуры по её координатам очень легко (Вы даже удивитесь, насколько легко). И Автокад всего лишь использует простейший алгоритм (даже при расчёте площадей фигур, образованных сложными сплайнами). А вот определить эти координаты на отсканированном изображении - это я не умею...
Вообще к задачам о распознавании образов у меня аллергия :(

ParsVita 20-05-2004 12:15 205406

Делал такое))))
давно, правда исходника может и не найду.
Главное, чтоб область, которую просчитать надо замкнутая была....
А еще надо знать реальный размер документа, который сканировался (рамки каки-е нибудь) или коэф. увеличения при сканировании и/или dpi при сканировании. Через этот dpi, и к-во пикселей внутри области можно узнать площадь исходника.... Там надо выщитать сколько пикселей приходиться на 1 см.квю (допустим) с учетом dpi... Задача поиска этого коэф отчень занимательная (я над ней часов 7 голову ломал). Может это и не лучший способ, но зато работает!

P.S. Сканировать исх. надо черно-белым, или переводить его в таковой, затем залить нужную область други цветом... и посчитать количество допустим синих пикселей...

basileus 20-05-2004 16:47 205407

IMHO, можно делать так -переводишь изображение в битмап-формат. Вводишь критерий принадлежности точки к фигуре по цвету. -дальше два вложенных цикла по строкам -столбцам с суммированием точек фигуры. конечную сумму множим на масштаб.
hasherfrog А кто сказал, что критерий будет прост. Сложность будет
совсем большой когда фигура может имет как дырки, так и совпадающие с  фоном цвета. Тогда - только оконтуривание с последующей заливкой и см. выше.

[s]Исправлено: basileus, 11:26 21-05-2004[/s]

aldehyde 20-05-2004 18:08 205408

Ребята, я очень Вам благодарен, но из меня програмист никакой если можна  исходники или подробней а то... Сори, бестолочь:)

hasherfrog 21-05-2004 09:20 205409

basileus
Внутренняя часть области может оказаться неподходящей по цвету. Отчасти про это сказал ParsVita

ParsVita 24-05-2004 11:52 205410

Дома в старье покапаюсь - может найду, но не уверен. Исходник на Builder С++ 5.0 был.

aldehyde 25-05-2004 00:23 205411

ParsVita
буду очень благодарен!!!!!


Время: 02:28.

Время: 02:28.
© OSzone.net 2001-