Микроанимация (нужен совет)
Мое имя Виктор. Конструктор (искусственный интеллект). Алма-Ата, Казахстан.
Необходимо написать компьютерную программу, но в Казахстане проблемы с профессиональными программистами. Возможно, кто-нибудь сможет помочь советом: с чего начинать и что делать.
Суть задачи в двух словах:
Имеем контур, например, квадрат, состоящий из 100 пикселов: 100 пэлов R, 100 пэлов G, 100 пэлов B.Необходимо изменять яркости пэлов R с частотой 10 Гц, G- 20 Гц, В- 30 Гц (значения условны).Такая «микроанимация».Другими словами ,яркости пэлов должны изменяться не синхронно.
При этом принципиальны не абсолютные значения частот,а их отношения :Fr/Fg,Fg/Fb. Т.е. частоты могут быть плавающими, а разность между ними должна быть постоянной (или почти постоянной).
Назначение программы – создание эффектов присутствия, аналогичных стереоскопическим (графический редактор глубины пространства).
Мы можем использовать самолет в качестве грузовика. Мы можем использовать самолет в качестве корабля. И это процесс обоюдный. Одним словом ,эмуляция –использование традиционного в нетрадиционных условиях.
Мы можем эмулировать работу видеосистемы в зрительную систему человека, что, несомненно, потребует хирургического вмешательства.
Мы можем эмулировать работу зрительной системы в видеосистему компьютера, для чего «микросхемохирургия» необязательна.
Известно, что сетчатка глаза- это часть мозга вынесенная на периферию .
Задача- сделать видеосистему частью сетчатки вынесенной на периферию.
Уже упоминалось, что при зрительном восприятии важны не абсолютные значения каких-либо величин, а их, выражаясь математическим языком, дифференциалы. И в данном случае не принципиально, что время отклика ЖК-ячейки 10 миллисекунд, а органического светодиода 10 микросекунд. Необходимо обмануть мозг, а не предоставить ему достоверную информацию.
Следующий вопрос. В видеосистеме возможно использовать два монитора. Возможно ли на одном сформировать растровую графику, а на другом векторную?
В отношении некоторой туманности моих выражений. Это всего лишь следствие попытки выразить идеи биоинформатики в терминах информатики.
Точно как и с эмуляцией Ил-76 грузовиками КамАЗ. Пять КамАЗов преспокойно проедут с 50-тонным грузом те самые 2000 километров, но не за три часа. Так что эмуляция эмуляции рознь: факт доставки эмулировать можно, а вот эмулировать самолёт полностью грузовики не могут.
[QUOTE=V.G.]Мы можем эмулировать работу видеосистемы в зрительную систему человека, что, несомненно, потребует хирургического вмешательства.[/QUOTE]Что такое "эмулировать А в Б"? Из определения слова "эмуляция" по версии Википедии ответ на мой вопрос не следует.:)
[QUOTE=V.G.]Уже упоминалось, что при зрительном восприятии важны не абсолютные значения каких-либо величин, а их, выражаясь математическим языком, дифференциалы. И в данном случае не принципиально, что время отклика ЖК-ячейки 10 миллисекунд, а органического светодиода 10 микросекунд. Необходимо обмануть мозг, а не предоставить ему достоверную информацию.[/QUOTE]Так вы сделайте это! Обманите мозг. Напишите какой-нибудь код, проверьте, будет он работать или нет. Заодно и проверите, действительно ли не принципиально время отклика. С точки зрения программирования в большинстве случаев нет разницы, какое у нас там время отклика. Чего тогда дискутировать попусту?
[QUOTE=V.G.]Следующий вопрос. В видеосистеме возможно использовать два монитора. Возможно ли на одном сформировать растровую графику, а на другом векторную?[/QUOTE]Видите ли, монитор всегда изображает только растровую графику, уже в силу того, что монитор - растровое устройство отображения информации. Монитору глубоко безразлично, как формируется изображение, которое он показывает. Поэтому вы можете формировать на одном мониторе растровую графику, на другом векторную (всё равно растрированную), а можете даже делать это одновременно на одном мониторе.
[QUOTE=V.G.]В отношении некоторой туманности моих выражений. Это всего лишь следствие попытки выразить идеи биоинформатики в терминах информатики.[/QUOTE]Меня ещё в институте учили так: кто ясно мыслит, тот ясно излагает. А на работе, как ни странно, учили тому же, только более грубо: "Кароче, канкретней!". Без обид, ничего личного.:)
Контроллер видеосистемы сканирует память видеосистемы с определенной частотой. Фоторецепторы «сканируют» память видеосистемы с частотой до 150 Гц, дифференцируя результаты сканирования и размещая их в память зрительной системы, сканирование которой, в свою очередь, имеет многоуровневую структуру и пока трудно предположить какое число биоконтроллеров участвует в этом.
Т.е. мы имеем цепь: видеопамять- контроллер+ дисплей- сетчатка+ зрительная память - биоконтроллеры…
Короткое замечание по поводу теоремы Котельникова. Использование ее в данном случае не совсем корректно (хотя бы потому, что осуществляемый процесс не информационный). Инертность- атрибут только некоторой и весьма малой части зрительной памяти. Известно , что чувствительность фоторецептора- 1 фотон световой волны и достаточно одной миллионной доли секунды, чтобы мозг воспринял изображение, т.е. зафиксировал и обработал.
Что касается цветовых моделей, то они математически представляют состояние световых волн до того момента , как волны попадут в фоторецептор. И эти модели существенно статические. Они оперируют с фиксированными значениями параметров цвета, сколь бы непродолжительны во временном отношении эти параметры ни были.
Возможно, некоторые мои рассуждения в сфере микросхемотехники выглядят наивными. Это лишь следствие стремления максимально упростить реализацию задачи и отыскать неиспользуемые возможности как программные так и аппаратные. (порой «детские» вопросы наталкивают на «взрослые» мысли- такой вот подход).
Необходимо отметить также, что эта задача имеет множество решений ,как на простом ,так и на сложном уровне. Можно составить несколько десятков ТЗ, но каждое будет реализуемо только для конкретного аппаратного случая.Потому и пытаюсь найти единствено верный подход.Т.е. минимум экспериментов при максимальном результате.
И спасибо за критику.Чем ее будет больше,тем лучше будет результат.
Поправлюсь в отношении эмуляции : важно эмулировать факт доставки. Причина – необходимо не достоверное отображение информации, а процесс, симулирующий ее полное отсутствие. Из последующих рассуждений Вы увидите, что я имею в виду.
Конечно, было бы замечательно иметь OLED- монитор с временем отклика 1 микросекунда. Конечно было бы замечательно иметь видеосистему с несколькими контроллерами, работающими параллельно с определенными пикселами монитора в различных графических режимах. И иметь необходимые драйверы. Но Вы уже упоминали, что только новое программное обеспечение – это дьявольски сложная задача.
Мы имеем то, что имеем и приходится к этому приспосабливаться. Конкретика, конечно, будет, пока же время определения и выбора., т. к. в имеющихся условиях сгенерировать сложномодулированный пилообразный сигнал невозможно.
Спасибо, что помогли это понять.
Я упоминал, что у компьютера, вероятно, есть возможности, которые не используются пока. Как правило, при проектировании любых устройств избыточность обязательна. Это в полной мере можно отнести и к информационной системе человека.
Существующие недостатки видеосистемы для создания зрительных иллюзий можно компенсировать возможностями психоакустики. И эффекты Шепарда и Мак-Гурка лишь малое из того, что возможно в этой сфере.
Что посоветуете прочесть в области компьютерной обработки звука и создания спецэффектов ?