Как инженеры создали первые цифровые изображения
К середине XX века люди уже изобрели компьютеры, однако во всем мире существовало всего несколько цифровых изображений. Считалось, что вычислительные машины нужны для серьезных задач, а эксперименты с картинками — всего лишь развлечение. В книге «Пиксель. История одной точки» (издательство «Individuum»), переведенной на русский язык Алексеем Снигировым, один из основоположников современной анимации Элви Рэй Смит рассказывает биографию цифровых изображений, захвативших мир в XXI веке, а также размышляет об истории искусства, технологиях и бизнесе. Предлагаем вам ознакомиться с фрагментом о том, как разработка памяти для электронного компьютера обернулась созданием первых цифровых изображений, но до этого никому не было дела.
Фредди Уильямс начал работать в Манчестерском университете в декабре 1946 года. Сначала он занимался не созданием компьютера, а разработкой быстрого запоминающего устройства для него. Предшествующий опыт работы с военными радарами, отображающими метки на экране, натолкнул его на идею, что лучшим решением, вероятно, будет электронно-лучевая трубка. Посетив Bell Labs в Нью-Йорке в 1946 году, он увидел там впечатляющую радиолокационную технику.
Незадолго до переезда в Манчестер Уильямсу удалось сохранить один бит при помощи электронно-лучевой трубки (ЭЛТ). На самом деле он разработал способ отображения маленького пятна (точка) или большого пятна (тире) в определенном месте на плоском конце (экране) трубки. Он сумел записать бит. Кроме того, он (точнее, созданные им электронные схемы) мог «посмотреть» пятно, которое уже отображалось на поверхности трубки, и определить, большое оно или маленькое — то есть прочитать хранящийся там бит. Также появилась возможность поменять большое пятно на маленькое или наоборот. Если говорить удобным современным языком, он мог произвольно записать 0 или 1 в ячейку памяти и прочитать то, что в ней хранится. И самое главное: значение, записанное в ячейке, сохранялось там, пока он или компьютер не изменяли его. Другими словами, оно запомнилось. Вуаля! В 1946 году Уильямс создал первый видимый компьютерный бит.
Так создавалось устройство, впоследствии названное трубкой Уильямса. Ее следовало бы назвать трубкой Уильямса—Килбурна (чего так и не произошло), потому что вскоре к проекту подключился Том Килбурн, который к марту 1947 года уже активно участвовал в разработке трубки в Манчестере. К концу года Килбурну удалось сохранить 1024 бита на экране трубки в виде прямоугольной матрицы, а также создать (и сфотографировать) Первый Свет — впервые отобразившийся на дисплее Цифровой Свет (рис. 4.2). Затем он довольно быстро перешел к хранению 2048 битов, создал еще одно изображение и тоже сделал снимок (рис. 4.3). Но слова бит, как мы узнаем из главы 3, еще не существовало, поэтому вместо него Килбурн использовал слово цифра. Он опубликовал свою докторскую диссертацию «Система хранения для использования с бинарными цифровыми вычислительными машинами» 1 декабря 1947 года. Ему было 26 лет.
Работа Килбурна публично провозгласила восход Цифрового Света с помощью двух приведенных выше фотографий. Это не просто фотографии какого-то набора световых пятен. Это два изображения, воспроизведенные в цифровом виде и сохраненные в электронной цифровой памяти. Килбурн задумал их как двумерные изображения.
Килбурн создал Первый Свет, первое цифровое изображение, «излишне трудоемким» способом — каждая из 1024 точек включалась вручную. Дисплей представлял собой массив размером 32×32 равномерно расположенных пикселя. Для переключения битов использовались 32 клавиши, «сделанные в виде клавиатуры пишущей машинки». Килбурн описал дисплей как массив «элементов изображения». Короткого слова «пиксель» еще не существовало — и, как нам известно, не будет до 1965 года. Нетрудно заметить, что здесь перепутаны элементы отображения (видимые) с элементами изображения (невидимыми). Мы обсуждали их отличия в главе о Котельникове, но для Килбурна такой разницы еще не существовало.
Килбурн создал второе цифровое изображение в 2048-битной памяти, используя тот же утомительный способ, напоминающий набор текста на пишущей машинке. Каждый пиксель на регулярной сетке этих изображений имел два состояния: тире (большое пятно) и точка (маленькое пятно) — 1 и 0 соответственно. Пиксель здесь — это округлое пятно света двух разных размеров. Так что даже в свои первые дни он не был квадратным.
Цель Килбурна, заявленная в его диссертации и отраженная в ее названии, состояла в разработке памяти для электронного компьютера. В своем исследовании он описал именно такую гипотетическую машину. Затем он и Уильямс приступили к созданию настоящего компьютера, и в течение полугода на свет появился знаменитый Baby. Трезвый, должным образом признанный и вознагражденный, член Королевского общества Килбурн на рисунке 4.4 держит в руках символ своей славы, трубку Уильямса — Уильямса-Килбурна, если уж быть предельно точным, — на фоне Baby.
И Уильямс, и Килбурн при жизни удостоились заслуженных почестей. Фредди Уильямс умер в 1977 году, к тому моменту уже став сэром Фредериком, а также членом Королевского общества. Килбурн скончался в 2001 году, через год после того, как Музей компьютерной истории в Калифорнии присвоил ему статус почетного членаСтатус почетных членов присваивается лауреатам учрежденной Музеем компьютерной истории в 1987 году премии Fellow Awards, которой награждаются ныне живущие люди, внесшие весомый вклад в развитие информационных технологий. — Прим. ред., — отличный способ отметить начало нового тысячелетия.
Впрочем, нет никаких доказательств, что Килбурн осознавал важность Первого Света, первой картинки, созданной на компьютере. Насколько нам известно, после двух первых изображений, созданных им в 1947 году, он больше не сделал и не сфотографировал ни одного. На самом деле никто больше не снимал на Baby. Люди, похоже, не считали создание изображений достойным способом использования компьютера. Заниматься чем-то таким не подобало. Это был запретный плод, хотя и не столь же тяжкий грех, как идолопоклонство. Война только что закончилась, вычислительных ресурсов не хватало, а потребность в них была очень острой. Дэвид «Дай» Эдвардс, вместе с Уильямсом и Килбурном занимавшийся разработкой Baby, говорил, что пользователи тогда «отчаянно нуждались» в вычислительных машинах. Другой участник их рабочей группы, Джефф Тутилл, вспоминал, что команда все еще трудилась в духе военного времени и не собиралась тратить время на развлечения. Создание фотографий они воспринимали как спосооб расслабиться и приятно провести время.
Картинка в качестве шаблона для проверки памяти — это одно, а растрата ценного вычислительного ресурса Baby на такое легкомысленное и богохульное дело — совсем другое. Машина должна вычислять только что-то «серьезное».
Для сравнения представьте совершенно другую обстановку спустя десятилетия, когда в 1998 году, к пятидесятилетию создания Baby, была построена его точная копия. В конкурсе, посвященном юбилею, участвовали несколько программ для Baby, которые создавали изображения, даже анимированные, на ЭЛТ-мониторе. Одна из них, например, писала слово BABY.
Проект по созданию копии Baby возглавлял Крис Бертон. Он показал мне ее в Музее науки и промышленности Манчестера 4 июля 2013 года. Компьютер приветствовал меня надписью PIXAR (рис. 4.5), пробежавшей по экрану, — настоящая компьютерная анимация! Экскурсовод Брайан Малхолланд написал эту программу за день до моего визита, но она запустилась бы на Baby и в 1948 году.
Создание картинок — одно из очевидных и непреодолимых искушений для современных программистов, которые живут в комфорте мирного времени, обладают неисчерпаемыми вычислительными ресурсами и лучше знакомы с компьютерами как с устройствами обработки изображений, а не числовых расчетов. В наше время почти не встретишь компьютер без дисплея, анимации и способности взаимодействовать с пользователем. Такие устройства мы называем серверами.
Подробнее читайте:
Смит, Элви Рэй. Пиксель. История одной точки / Элви Рэй Смит [в пер. с англ. Алексея Снигирова]. — Москва: Individuum, 2023. — 688 с.: ил.