7.2. Грамматический анализ двумерных образов
7.2.0. Изображения как лингвистические объекты
Было бы прекрасно, если бы вычислительные машины могли непосредственно воспринимать двумерные изображения. Например, машина могла бы тогда разменивать деньги в различных валютах. Подобные устройства могли бы анализировать фотографии, полученные от спутников погоды, проводить идентификацию отпечатков пальцев и классифицировать медицинские снимки. От читателя не требуется большого воображения, чтобы придумать много других применений. Фантасты считают, что машина, воспринимающая изображения, составляет непременную часть технологии, которой мы еще не достигли, но уже будем иметь к 2001 г., от которого нас отделяет около 26 лет. Джордж Оруэлл допускает возможность распознавания человеческих лиц в 1984 г. Реальность может быть несколько более скромной. От машинного зрения на уровне, приближающемся к человеческому, нас отделяют безусловно многие годы. Машина, анализирующая контурные рисунки, может быть ближе по времени, но даже и здесь все выглядит удивительно неопределенным. В настоящем разделе обсуждается метод анализа и классификации очень простых рисунков, основанный на грамматической классификации и выводе. Читатель, видимо, согласится с тем, что в принципе можно было бы распространить наш метод и на сложные, детализированные изображения. Однако следует обратить внимание на то, что такое распространение метода быстро стало бы очень и очень сложным. Анализ изображений, кажущийся простым для человека, может привести к значительным вычислительным трудностям.
Мы уже видели, что понятие допускаемых входных данных для вычислительного процесса внутренне связано с понятием правильно построенного выражения в формальном языке. С другой стороны, хотя с помощью грамматического анализа всегда можно определять входы машинной программы, это не всегда самый естественный путь описания программы и ее работы. Ранние попытки классификации изображений содержали этап предварительной обработки, на котором анализируемое изображение отображалось в вектор фиксированной длины. Каждая компонента вектора указывала значение яркости в соответствующей точке плоскости изображения. Затем для работы с „изображениями применялись методы классификации векторов. Такой подход был не особенно удачным. Это могло быть связано с тем, что некоторые важные классы изображений определялись соотношениями между их компонентами, а не наличием какой-нибудь абсолютной характеристики. Прекрасный пример — различие между классами изображений „окружность внутри квадрата и „квадрат внутри окружности. Мы уже говорили о том, что с
такими понятиями довольно тяжело работать, если пользоваться обычными методами классификации векторов (Минский и Пейперт, 1969).
При обсуждении „состояния дел“ в искусственном интеллекте (Минский, 1959, 1963) и вообще вычислительных науках (Ледли, 1962) отмечалось, что при изучении формальных грамматик возникают понятия, уже знакомые в вычислительных науках и пригодные для описания классов, определяемых соотношениями между компонентами. Эти идеи привели к разработке ряда „грамматик", предназначенных для анализа и классификации рисунков.
Таблица 7.1 (см. скан) Бинарные операции для изображений {Ледли, 1962)
На эту тему написано несколько хороших обзоров (Фу и Свейн, 1971; Миллер и Шоу, 1968), и мы постараемся здесь не выходить за рамки основ этого подхода. Изложив основы, мы рассмотрим задачу грамматического вывода для грамматик изображений. Закончим этот раздел некоторыми критическими замечаниями по поводу применения лингвистического подхода к классификации изображений.