УДК 681.3.06: 681.323 (519.6)
Л.Я. Ромм
МЕТОДЫ РАСПОЗНАВАНИЯ ПЛОСКИХ КОНТУРНЫХ И ВНУТРИКОНТУРНЫХ ИЗОБРАЖЕНИЙ НА ОСНОВЕ СОРТИРОВКИ ЭКСТРЕМАЛЬНЫХ ПРИЗНАКОВ И ПОДСТАНОВОК ИНДЕКСОВ
Рассмотрены схемы идентификации плоских контурных и внутрикон-турных изображений по экстремальным признакам и закономерностям подстановок индексов на основе сортировки. Схемы инвариантны относительно сдвига, поворота и частичных искажений. Идентифицирующие векторы имеют целочисленные компоненты, упрощающие структуру базы эталонов и про.
Схемы; идентификации; инвариантны.
L.Ya. Romm
METHODS OF IDENTIFICATION OF FLAT OUTLINE AND INTRA-OUTLINE IMAGES USING SORTING OF EXTREME CHARACTERISTICS AND SUBSTITUTION OF INDEXES
Schemes of identification of flat outline and intra-outline images using sorting of extreme characteristics and regularity of substitution of indexes are considered. They are invariant with regard to displacement, ranging and particular distortions. Vectors of identification have integral components, which simplifies standards ’ base structure and the process of identification.
Schemes; identification; invariant.
К нерешенным в общем случае проблемам теории и практики классификации, распознавания и идентификации плоских растровых изображений относится их идентификация в случае искажений контура при произвольном сдвиге и повороте декартовых координат. При этом существенную трудность представляет построение устойчивых признаков изображения. Предлагается решение данных проблем для случая конечного множества фигур с ограниченным диапазо, -тремумов координат с помощью сортировки. Ниже на этой основе представлены два метода для обработки изображений: обработка по контуру (I) и обработка множества внутренних точек фигуры (II).
I.
, .
дальнейшей обработки используется определение серединной точки [1] фигуры, принимаемой за центр полярной системы координат. После ее определения исходные декартовы координаты точек изображения преобразуются в новые де, , -дится через данную точку и максимально удаленную от нее точку контура фигуры. Обработка выполняется в новых координатах, в которых с помощью сортировки идентифицируются все локальные и глобальные экстремумы координат .
Сортировка выбирается из класса устойчивых (сохраняющих порядок ) , однозначное соответствие между массивами входных и выходных индексов сортируемых элементов. Классы рассматриваемых сортировок описаны в [2, 3].
Помимо собственно сортировки, метод связан с основанным на ней алгоритмическим условием локализации экстремальных элементов числовой последовательности. Программная реализация этого условия [4, 5] раскрывает тот , -, -стью заключена в подстановке из входных и выходных индексов сортируемых элементов. Именно на такой подстановке основан принцип построения векторных идентификаторов плоского изображения.
Для идентификации контуров используется оператор локализации глобального минимума вида
{sort(n,a,C,e);} k:=1; WHILE k<= n DO BEGIN FOR r:=1 TO k-1 DO
IF abs(e[k]-e[k-r]) > = 1 THEN GOTO 22; xk:=
= x0 + e [k] *h; (1)
22: k := k+1 END;
Оператор вида
{sort(n,a,C,e);} k:=1; WHILE k<= n DO BEGIN FOR r:=1 TO n-k DO
IF abs(e[k]-e[k+r]) > = 1 THEN GOTO 222;
xk:= x0 + e0[k]*h; (2)
222: k := k+1 END;
идентифицирует глобальный максимум той же последовательности. Выполняется поворот фигуры в каноническое положение в новых декар.
определяются все экстремальные признаки и идентификаторы контура фигуры, по которым этот контур идентифицируется. При этом идентификаторы будут иметь вид вектора с целочисленными компонентами [6], путем их сравнения с эталонными значениями выполняется полная идентификация контура фигуры, причем с единственностью в заданном множестве. Целочисленность координат векторов идентификации достигается за счет того, что каждый из элементов вектора идентификации отображает наличие или отсутствие определенных соотношений между экстремумами контура фигуры, при этом каждому такому соотношению по заданному правилу сопоставляется единственное целое число. Каждая из целочисленных координат вектора устойчива в собственном диапазоне ,
однозначном соответствии с контуром фигуры из конечного множества. Как
,
данного множества по ее контуру.
,
позволяют следующие преобразования контура изображения.
1.
координат изображения. Первым выполняется считывание слева направо - сверху вниз, второе считывание - справа налево - снизу вверх, третье - справа налево
- сверху вниз, четвертое - слева направо - снизу вверх. При этом считывание производится из некоторой начальной координаты точки экрана до первой встречи вдоль вертикали с точкой контура, после чего выполняется возврат в начальную точку с последующим сдвигом на один пиксель по горизонтали и, , . -
рой фиксированной конечной точки экрана. Начальная и конечная точка выбираются так, чтобы заведомо охватить изображение.
2. Определяется серединная точка фигуры - точка с координатами (ниже в качестве обозначений употребляются программные идентификаторы координат и других числовых величин) \SummAb, 8иттОМ], где БиттЛЪ - среднее арифметическое значение всех считанных абсцисс точек контура фигуры, а ВиттОгС - среднее арифметическое значение всех считанных ординат в декартовой системе координат [ 7 ]:
1 п-1 1 П-1
ВиттЛЪ=— ^хЩ, ВиттОгС =— ^у[г] . (3)
п i = 0 п i = 0
Вычисления по данным формулам проводятся в отдельности для каждого из четырех считанных наборов координат контура изображения, затем в качестве координат серединной точки принимается среднее арифметическое полученных .
3. -
нат вычисляются длины отрезков, соединяющих точки контура с этими коорди-
( ). -
ление выполняется по формуле
г = ■^(х[1^-^йттх)2+'{у\1]—^ытту)2 , (4)
где summx, summy - координаты серединной точки, вычисляемой на основе (3),
х[/] и у[/] - текущие координаты точек контура.
4.
при помощи сортировки подсчетом находится максимальный из четырех наибольших радиусов, его индекс и определяются его декартовы координаты. По, (4)
в каждом наборе, а также их декартовы координаты и порядковые номера. Декартовы координаты конца максимального из четырех наибольших радиусов ниже обозначаются программными идентификаторами Ъ[тахп[4] и ЪЪ[тахп[4].
5. Через серединную точку с координатами summx, summy и конец наибольшего радиуса с координатами Ь[тахп[4]] и ЬЬ[тахп[4]] проводится ось
абсцисс новой декартовой системы координат. С этой целью предварительно вычисляется угол между старой и новой осью абсцисс по соотношениям: tga1 = (Ь[тахп[4]] - зитту)/(ЬЬ[тахп[4]] - Биттх);! а1рИа1= агС£(/£а1) ]
,
на угол (5) с началом координат в точке (^иттх, summy) создают привязку декартовых координат к произвольно расположенной на плоскости фигуре. Даль, -
,
х = (х - яиттЛЬ) * со^(а1рка1) + (у - .‘шттОЫ) * ът(а1рка1), (^)
у = -(х - ‘иттЛЪ) * зт(а/рйа1) + (у - ,‘иттОгс1) * соз(а/рйа1),
где а1рка\ из (5).
6. Элементы массивов предварительно считанных координат преобразуются в новую систему координат (6):
xnew[i] = (x[i] — summx) * cos(alpha1) + (y[i] — summy) * sin(alpha1) , ynew[i] = — (x[i] — summx) * sin(alpha1) + (y[i] — summy) * cos(alpha1) .
7. Массивы новых ординат из (7) сортируются с помощью процедуры sort, после чего с помощью процедур local max и local min, работающих на основе операторов локализации (1), (2), определяются их глобальные экстрему.
8. -
ются простейшим арифметическим преобразованиям: из них составляются абсолютные величины разностей индексов и разностей значений, например, dlina1 := abs(indexMax1[f] - indexMax2[fff]); dlina2 := abs(indexMax2[fff] -indexMin2[fff]); dlina3 := abs(ordinataMax1 [f] - ordinataMin2[ffff]);
d1ina10 := (1МехМах3[П] - IndexMax2[ff1]);
Здесь ordinataMax1[f], оМта!аМах2р!Ц - идентификаторы глобальных максимумов, полученных при первом и втором считываниях соответственно, ^ехМах1[Е], МехМах2рГ] - идентификаторы их индексов, другие идентификаторы имеют аналогичный смысл.
9. Из полученных разностей составляются дроби, умноженные на число десять с округлением до целого.
оШо8И[1] := йипс(10*^1ша1 + 1)ЛШша2 + 1)); оШо8И[2] := йипс(10 * ^Ипа2 + 1)/(Шша3 +1)); оШо8И[3] := йипс(10*^1ша1 + 1)ЛШша3 + 1));
otnosh[9] := йипс(10 * (d1ina9 + 1)/(Шша10 +1));
Сдвиг числителя и знаменателя на единицу выполнен, чтобы избежать в дальнейшем деления на ноль. Совокупность этих дробей образует вспомогательный вектор оШо8Щ1], оШо8Щ2], ..., оШо8Щ9].
10.
выражений строится ВЫХОДНОЙ вектор ошо!*1[1] , otnosh1[2] ..., otnosh1[9] . По, -гуре произвольно заданного конечного множества при рассмотренных в начале .
представлены в [8]. Ниже приводится фрагмент условий, по которым формируются координаты вектора для приведенного в [8] множества из 16 фигур с дополнительным включением искажений сравнительно произвольного вида:
2б
if (otnosh[1] = 10) or (otnosh[1] = 9) then otnosh1[1] := i; if otnosh[i] = G then otnosh1[1]:= 2;
if (otnosh[2] = otnosh[3]) or (abs(otnosh[2]-otnosh[3]) = 2) then otnosh1[2] := i; if (otnosh[2] < 20) and (otnosh[2] > 9) then otnoshi[2] := 2; if (otnosh[2] < 300) and (otnosh[2] > 170) then otnoshi[2] := 3;
if (otnosh[8] > 20) and (otnosh[8] < 100) then otnosh1[8] := 1; if (otnosh[8] >= 10) and (otnosh[8] <= 20) then otnosh1[8] := 2; if (otnosh[8] > 80) and (otnosh[8] < 700) then otnosh1[8] := 3; if otnosh[9] = 1 then otnosh1[9]:= 1; if otnosh[9] = 9 then otnosh1[9] := 2; if otnosh[8] = otnosh[9] then otnosh1[9] := 3;
Как отмечалось, каждый из элементов идентифицирующего вектора отображает наличие или отсутствие определенных соотношений между экстремумами (в данной части описания - глобальными) контура фигуры, при этом каждому такому соотношению по заданному правилу, пример которого дан непо-, .
II. Излагаемая схема переносится с внешнего контура плоской фигуры на заключенное в ней множество внутренних точек. Предполагается, что для его идентификации наиболее пригодно сквозное сечение фигуры с формированием признаков на основе подстановок и их преобразований, которое проводится после выполнения описанной обработки и идентификации внешнего контура. Он заключается в следующем.
Пусть выполнена описанная выше обработка контура с поворотом фигуры в каноническое положение в новых декартовых координатах. Всюду ниже фигура считается расположенной канонически, обозначения новых декартовых координат специально не вводятся и используются обозначения XOY. Иными слова, , -товых координатах, при этом центр координат находится в точке (3).
Как синонимы направлений считывания вдоль осей координат употребляются термины считывания по вертикали и считывания по горизонтали.
,
наименьшая абсцисса точек контура фигуры. В качестве ординаты той же точки
- длина наибольшего из полярных радиусов фигуры (отрезков, проведенных из
).
В качестве абсциссы конечной точки считывания выбирается наибольшая абсцисса контура, в качестве ординаты конечной точки - число, равное наи, . , , производится считывание, ортогональна оси OX (в новых координатах), сдвиг
OX
задаваемое число пикселей. Ниже приводятся предварительные примеры под,
.
координатах с направлением осей OX вправо, OY - вверх. Сквозное сечение за-
дается равноотстоящими вертикалями, расстояние между которыми принимается за шаг H = const. При этом по вертикали считываются все подряд точки, по
горизонтали H = — D , где D - горизонтальный диаметр фигуры, шестнадцатая 16
часть которого - параметрическое значение шага по горизонтали. Исходные номера считываемых точек задаются в направлении сверху вниз по каждой вертикали и слева направо при переходе от одной вертикали к другой.
Для идентификации изображений, конвертированных рассматриваемым способом в одномерный числовой массив, целесообразно использовать подста-, -новкой на выходе,
1 2 3
V1 2 '3
N
lN J
(8)
Для различных по форме признаков потребуются преобразования подстановки
(7).
ґі 2 ... N -1 N л
Д1 Д 2 ... Д
N -1 Д N )
(9)
где для / .из (8):
Д j = j - ij, j=1,2,..., N
(10)
Во втором - нижний ряд (9) заменяется набором разностей собственно элементов этого ряда:
Д(1)
1Д1
Д0)
2
Д0)
3
N - 2 N-i N
Д0)
N-2
Д0)
N -1
(11)
где для Д j из (10):
=Д:-Д
j=i,2,...,N -i .
(12)
В третьем - производится замена нижнего ряда (9) на ряд разностей элементов непосредственно самого нижнего ряда из (8):
i 2 3 .... N - 2 N - i N
VV1 V 2 V3 .... V n-2 V N-1
(i3)
где для i j из (8):
V j = iJ -i - iJ
j = 2,...,N.
(14)
Использование (8) - (14) целесообразно, когда (8) взаимно однозначно соответствует оцифрованным изображениям из конечного множества. В общем случае соответствие однозначно и сужает множество идентифицируемых объек-
1
2
3
.
надлежащих дополнительных ограничениях. После сортировки массива ординат (затем абсцисс) внутренних точек распознавание сводится к обработке индексов из (8) - (14). В частности, целесообразно в качестве признаков рассматривать локализованные с помощью измененных операторов локализации (1), (2) экстремумы среди элементов нижнего ряда этих преобразований подстановок. Если (1), (2) -стности локализации экстремума eps0 (> = 1 заменить на <= eps0), то эти , , -симум [5, 6]. На практике для идентификации изображений было выбрано еря0 = 2.
Конкретно для раскрытия экстремальных особенностей множества внутренних точек фигуры производятся следующие действия. Вначале производится сортировка считанных ординат. Затем вычисляются разности между индексами отсортированных ординат и порядковым номером этих индексов. Данные разности передают характер изображения, находящегося во множестве внутренних . , также местоположение таких рядов - в начале, середине или конце массива. Следующее преобразование состоит в нахождении локальных максимумов и локальных минимумов среди индексов отсортированных координат изображе-
(1), (2). -
цированные локальные экстремумы в совокупности с их индексами образуют , .
Для выявления уникальных особенностей различных видов фигур дополнительно используются последовательные разности между последующим и текущим локальным экстремумом индексов координат. Значения этих разностей оказываются строго фиксированными для определенных типов изображений.
После этого находятся локальные минимумы и максимумы среди считанных ординат изображения. Количество данных локальных экстремумов может варьироваться в зависимости от параметров фигуры, однако определенные экстремумы сохраняют неизменное значение независимо от размера и положения .
Целесообразно отметить, что изложенная целочисленная идентификация отличается от известных схем [9, 10], а также [11] по построению, по использованию экстремальных признаков, по качеству идентификации искаженных изображений. От подхода, изложенного в [1], основное отличие заключается в це-лочисленности компонент идентифицирующих векторов, упрощающих структуру баз эталонных векторов и делающих точной операцию сравнения с эталоном.
Метод переносится с плоских изображений на идентификацию образов, в общем случае представимых на входе метода числовой последовательностью.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Рюмин ОТ. Разработка и исследование алгоритмов распознавания изображений на основе определения экстремальных признаков замкнутых контуров с по.
. . . - : - , 2008. - 16 .
2. Ромм Я.Е. Параллельная сортировка слиянием по матрицам сравнений. I // Кибернетика и системный анализ. - 1994. - № 5. - С. 3 - 23.
3. Ромм Я.Е. Параллельная сортировка слиянием по матрицам сравнений. II // Кибернетика и системный анализ. - 1995. - № 4. - С. 13 - 37.
4. . .
сортировки. I // Кибернетика и системный анализ. - 2007. - № 1. - С. 165 - 182.
5. . .
сортировки. II // Кибернетика и системный анализ. - 2007. - № 1. - С. 161 - 174.
6. Ромм Л.Я., Ромм Я.Е. Целочисленная идентификация плоских контурных
// . -ские науки», раздел «Управление, вычислительная техника и информатика». -2008. - №4. - С. 18 - 24.
7. . ., . .
// . -
Кавказский регион. Технические науки. Прил. к № 1. - 2006. - С. 37 - 47.
8. . ., . .
изображений с учетом поворота, масштаба и искажений на основе экстремальных признаков / ТГПИ. - Таганрог, 2008. - 58 с. ДЕП в ВИНИТИ 28.01.2008, № 54 - 2008.
9. . .
триангуляции Делоне // Программирование. - 1999. - № 3. - С. 16 - 31.
10. . . . -СПб.: БХВ-Петербург, 2003. - 560 с.
11. . .
для поиска нулей и особенностей функций с приложением к идентификации .
. . . - : - , 2006. - 16 .
Ромм Леонард Яковлевич
Таганрогский государственный педагогический институт E-mail: [email protected]
347936, г. Таганрог, ул. Инициативная, д. 48. Тел.: 88634 60-18-99
Romm Leonard Yakovlevich
Taganrog State Pedagogical Institute E-mail: [email protected]
48, Initsiativnaia, Taganrog, 347936. Phone: 88634 60-18-99 УДК 519.6: 681.3
Л.Н. Аксайская
ПАРАЛЛЕЛЬНЫЕ АЛГОРИТМЫ КУСОЧНО-ПОЛИНОМИАЛЬНОЙ
,
Рассмотрены схемы таблично-тгоритлического вычисления функций на основе кусочно-полиномиальной аппроксимации с помощью интерполяционного полинома Ньютона. Описана модифицикация схем для вычисления производных и определенных интегралов с сохранением свойств инвариантности относи-
3G