Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.20;
Скачать: CL | DM;

Вниз

Графика   Найти похожие ветки 

 
AlekseyK ©   (2002-11-05 16:57) [0]

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


 
LongIsland ©   (2002-11-06 15:29) [1]

На мой взгляд можно попробовать следующий подход

1. Создется массив записей коэффициентов уравнений линии разного цвета. Что-то вроде
TRec = record
a: Double;
b: Double;
Color: TColor;
Flag: Integer;
end;

TLines = array of TRec;

2. Сканируется лист на предмет наличия разных цветов (их лучше задавать в каком-то диапазоне).

3. Определяется каждая линия и заполняется массив.

4. Ищется пиксель пересечения каждой линии с каждой (простейшая математика), если они вообще пересекаются и определяется его цвет.

5. Полю Flag некоторой (например, первой найденной в массиве линии) присваиваем любое целочисленное значение.

6. Для прочих линий, если они сверху (п.4), то Flag будет больше на единицу, чем у той, на которой она лежит и наоборот.

7. Теперь сортируем массив и определяем, что лежит сверху (максимальный Flag).

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


| |
-|-----------
| |
| |
| |
| |
| |
| |
-----------|-
| |


Надеюсь понятно, что здесь нарисовано. Может случиться так, что НИ ОДНА линия не будет сверху. Это надо учесть.

Алгоритм все-равно очень сложный, но надеюсь, что я дал хоть примерное направление. Удачи!



Страницы: 1 вся ветка

Текущий архив: 2003.02.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.021 c
14-63840
Случайный прохожий
2003-02-03 21:45
2003.02.20
Когда-нибудь видели такое чудовище?


14-63775
Supreme
2003-02-01 21:31
2003.02.20
У кого есть компьютер?


3-63583
alex_bredin
2003-02-04 11:13
2003.02.20
копирование структуры таблицы


1-63646
OlkaGTS
2003-02-11 15:12
2003.02.20
Создание компонента


3-63521
UnDISCOvery
2003-01-31 17:58
2003.02.20
MIDAS ! Запаздывает обновление !