Оптимизация скелета изображения

Полученный скелет изображения не является оптимальным. Это связано прежде всего с тем, что мы имеем дело с растровым изображением, а значит, изображение имеет искажения тем большие, чем меньше разрешение изображения (рис. 5.6).

 

  а)   б)

Рис. 5.6. Влияние разрешения на скелет изображения

Для уменьшения влияния искажений на получаемый скелет необходимо произвести оптимизацию скелета, полученного отслеживанием пути сферической волны по изображению объекта. В получаемом скелете возможно представление одного отрезка некоторой последовательностью ребер. Избиться от этого можно анализом последовательности ребер, оценивая отклонение получающейся линии от прямой. При этом точки, образующие последовательность ребер, должны отклоняться от коррелирующей прямой не больше, чем на заранее заданную величину, соизмеримую с шириной линии. В случае, если отклонение находится в допустимых пределах, необходимо в скелете заменить соответствующую последовательность ребер на одно (рис. 5.7).

 

Рис. 5.7. Оптимизация отрезков

Кроме оптимизации отрезков проводится оптимизация точек соединения отрезков. Наиболее часто встречающиеся искажения (рис. 5.8) исправляются с помощью анализа прилежащих к выделенной точке (А) отрезков (AB1, B1C1, AB2, B2C2, AB3, B3C3). Анализ заключается в поиске такой пары отрезков CxBx, ByCy из (B1C1, B2C2, B3C3), что CxBxByCy максимально коррелируются прямой. Тогда необходимо точку A переместить в точку пересечения прямых CxCy и 2, а затем удалить из графа точки B1, B2 и B3.

  а)   б)

Рис. 5.8. Оптимизация точек соединения (первый вариант)

Другим вариантом искажения является случай соединения трех отрезков в одной точке (рис. 5.9). В этом случае невозможно нахождение пары отрезков коррелируемых прямой. Точка A должна быть перемещена в центр треугольника образуемого прямыми B1C1, B2C2 и B3C3. Затем точки B1, B2 и B3 необходимо удалить из графа.

  а)   б)

Рис. 5.9. Оптимизация точек соединения (второй вариант)