Найти в Дзене
Валерий Беленков

СЛЕПОЙ МОЗГ В чём и как нынче удалось продвинуться; решение задачи линейного МРП-преобразования

Полный вариант см. //vbel-p.jimdo.com

Прелюдия

Итак, «в чём»? Нелишне напомнить, что мы аппаратно-программно (искусственно) воспроизводим биофизическую (естественную) ситуацию с мозгом, оснащённым множеством точечных световых датчиков (рецепторов), размещённых на поверхности-ретине. Наша исходная идеализация:

– для упрощения принимаем, что точки-рецепторы являются и нейронами однородной нейронной сети со структурой октального шаблона соседства; нейроны обладают любыми требуемыми вычислительно-логическими свойствами;

– в системе «МОЗГ–СЕТЬ» «мозг» играет роль супервизора, имея доступ ко всем и к каждому нейрону сети;

– в системе определены понятия «верх», «низ», «право», «лево», и, поскольку, как уже ранее показано, на нейронной сети выполнима процедура построения градиентного потенциального поля, то можно считать, что каждая точка-рецептор-нейрон ретины имеет координатное описание (для простоты примем декартово, как в машинном изображении).

Этой системе предъявляется плоское 8-битовое серое изображение (картинка inImage размером inY * inX). Ставится задача снабдить систему такими «естественными» функциями и алгоритмами, чтобы по её возможным реакциям наблюдателю можно было заключить: «система видит» и что она «видит».

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

Далее, мы снабжаем нашу сеть механизмами Метода Рецептивных Полей (МРП) (см. ранее и сайт).

1) Процедуры бинаризации и компарирования — пороговое сечение (через MIN и MAX по областям или по всей ретине) и измерения эквивалентности соседних точек — бинаризация изображения: 255-белые области из точек с эквивалентной окрестностью, 0-чёрные области из точек либо граничных (не имеют эквивалентной окрестности), либо оставленных как фон вне анализа.

2) МРП-аппроксимация областей эквивалентных точек (255-белых) вписанными квадратами с выделением геометрических мест их центров — скелетонов. В нашей модели системы скелетоны представлены как изображение Result (c параметрами входного). Каждой точке из нити скелетона (МРП-точке) соответствует значение размера ею представляемого квадрата (МРП-поля) — ранг, который записан в таблицу Ring [inY] [inX]. Таблица — полный аналог выше обозначенных изображений, но имеет программный статус в макете 2-мерного массива, а не изображения из-за того, что точки (ячейки таблицы) несут не 8-битное значение, а значение ранга, способного принимать величины до max(inY, inX).

3) Процедура установления топологической связности МРП-полей. И поскольку справедливо утверждение, что каждое множество топологически связных МРП-полей полностью представляет соответствующий объект во входном изображении, получаем разбиение входной картинки на объекты. Это справедливо и для набора скелетонов из МРП-точек этих полей (в изображении Result) плюс набор им соответствующих значений рангов из таблицы Ring.

Важно! По изображению скелетонов Result и таблице рангов Ring для системы полностью воспроизводимо входное изображение inImage.

Результат разбиения изображения на топологически связные объекты фиксируется в таблице Obj.

Алгоритм в общем-то в произвольном порядке (операционном) заносит строки-записи на каждый топологически связный конгломерат (объект): присваиваемый порядковый номер (цвет краски col: 0–255), координаты центра наибольшего рангом МРП-элемента в конгломерате (y0, x0), значение ранга этого элемента R0, количество МРП-точек в скелетонах объекта Dl. Общее число строк – записей объектов – GObj.

Теперь «мозг» – супервизор системы имеет «под рукой» абстрагированное число объектов. Он способен оценить каждый объект по его «толщине» (R0) и по «длине» (Dl), а также локализацию (y0, x0). Самое главное, он способен предметно обратить дальнейшее более подробное изучение на конкретный объект. Для операционного удобства мы определяем в системе изображение ImgOB — копию входного, но с пообъектной раскраской точек col. В изображении со скелетонами Result раскрашиваем также пообъектно col МРП-точки скелетонов. Таким образом (через окраску col) устанавливается быстрая связь между точкой изображения и объектом, которому принадлежит.

Как было сказано в предыдущих постах, далее открываются просто неограниченные просторы для различных манипуляций с объектами — объектами-телами и объектами-линиями.

Я выбрал продвижение в страну линий. И далее излагаю, чего там удалось достичь, имея в виду решение конкретной задачи — машинное чтение нот.

О взаимоположении объектов (Полную версию см. //vbel-p.jimdo.com)

Fig. 1. a — входное изображение с представлением фона как области эквивалентности;   b — треки МРП-точек (скелетоны) между blobs-ами, обозначенными контурами;
c — для полноты картины показано и МРП-преобразование самих blobs-ов
Fig. 1. a — входное изображение с представлением фона как области эквивалентности; b — треки МРП-точек (скелетоны) между blobs-ами, обозначенными контурами; c — для полноты картины показано и МРП-преобразование самих blobs-ов

Важно помнить, что все треки МРП-точек несут «нагрузку» — соотвествующие ранги (полуразмеры квадратов) в таблице Ring.