Пиксель. История одной точки

Tekst
Z serii: Individuum
2
Recenzje
Przeczytaj fragment
Oznacz jako przeczytane
Czcionka:Mniejsze АаWiększe Aa

Игры в имена

Весьма проблематично, что приоритет в открытии теоремы отсчетов в сегодняшних Соединенных Штатах приписывается Шеннону. Если оставить в стороне весь остальной мир, легко понять почему. Клод Шеннон – громкое имя в Америке. Теорему отсчетов он сформулировал в статье 1948 года «Математическая теория связи». В очень знаменитой классической статье 1949 года «Связь при наличии шума» он сформулировал и доказал теорему выборки в том виде, который сейчас используется во всем цифровом мире, а особенно применительно к Цифровому Свету. Его авторитет рос по мере того, как он получал различные престижные награды – например, национальную научную медаль США и медаль почета Института инженеров электротехники и электроники (IEEE). Он стал первым лауреатом премии, присуждаемой Группой теории информации IEEE и впоследствии названной в его честь. Он получил широкую известность на международном уровне и стал первым лауреатом премии Киото в области математики – награды не менее престижной, чем Нобелевская премия.

Рис. 2.8


Клод Элвуд Шеннон родился 30 апреля 1916 года в Петоски, штат Мичиган. Вырос он в соседнем городе Гейлорд, где, если верить слухам, из проволочной изгороди соорудил телеграфную линию между своим домом и домом друга. Еще он любил жонглировать, придумывать секретные коды и играть в шахматы. Он прослыл жизнерадостным гением со множеством интересов, выходивших далеко за пределы профессиональной деятельности. Он разъезжал на одноколесном велосипеде по залам Массачусетского технологического института, где получил докторскую степень по математике, а позднее и по коридорам Bell Labs, где разработал теорию информации. Еще он изобрел удивительную машину в коробке: если повернуть выключатель на боковой панели, из-под крышки появлялась механическая рука, которая возвращала его в исходное положение.[3]

Шеннон преуспел и в области криптографии. В 1945 году он написал засекреченный доклад «Математическая теория криптографии». Во время Второй мировой войны он проанализировал работу системы X-system, которая использовалась для безопасной голосовой радиосвязи между Франклином Д. Рузвельтом и Уинстоном Черчиллем. Шеннон математически доказал, что такую схему шифрования невозможно взломать. Шеннон также играл ключевую роль в изучении передачи данных в условиях помех, как, собственно, и называлась его статья 1949 года. Он показал, как отправлять цифровые сообщения по всей Солнечной системе, чтобы избежать искажений от воздействия космического шума. Именно благодаря идее Шеннона на вашем ноутбуке можно посмотреть видео, переданное с марсохода Curiosity. На фоне столь впечатляющего списка заслуг кажется вполне естественным, что имя Шеннона связано с теоремой отсчетов. Однако сама идея ему не принадлежала, о чем Шеннон не раз упоминал[4].

«Это общеизвестный в теории связи факт, – писал он в статье 1949 года. – Теорема была первоначально дана в других формах математиками, но, несмотря на ее очевидную важность, не приводилась в литературе по теории связи».

Но «в литературе по теории связи» теорема выборки приводилась – в нужной форме и с полным доказательством – задолго до публикации статьи Шеннона. Котельников сделал это еще в 1933 году, более чем на десять лет раньше. Почему Шеннон не упомянул его? Возможно, дело в том, что статья Котельникова вышла в малотиражном издании материалов российской конференции и Шеннон просто не знал о ней. Но, как мы увидим дальше, реальную причину определить почти невозможно. Он мог узнать о теореме Котельникова в контексте секретных разработок, результатами которых СССР и Соединенные Штаты обменивались во время Второй мировой войны. Но последующие ожесточенные разногласия между сверхдержавами, скорее всего, помешали бы Шеннону обнародовать такое знание или получить к нему доступ.

Шеннон и Котельников (рис. 2.9) были лидерами в сфере цифровой связи в своих странах, особенно если дело касалось преодоления помех или шифрования. Оба удостоились высших государственных и научных наград. И оба сформулировали и доказали теорему выборки в том виде, в каком она используется сегодня.

Нельзя не задаться вопросом, оказал ли один влияние на другого. Любопытно, что Шеннон, младший из них, с отставанием на несколько лет повторял интеллектуальные достижения Котельникова, но я не нашел никаких доказательств, что Шеннон знал о засекреченных работах Котельникова. В любом случае не удивительно, что русские называют эту великую идею теоремой отсчетов Котельникова. А разве американцы не должны?

Разбрасывай и складывай

Вторая половина идеи Котельникова – великой теоремы отсчетов – объясняет, как из дискретных пикселей восстановить непрерывную картинку, причем с абсолютной точностью. Самое удивительное, что, похоже, в цифровом изображении почти нет информации – находящаяся между каждой парой пикселей бесконечность аналоговых точек просто отброшена. То же самое с цифровым звуком и каждой парой сокселей. Вторая часть теоремы отсчетов сообщает нам, где найти недостающие бесконечности.

Вот как аналоговое восстанавливается из цифрового. Распределите каждый пиксель в пространстве с помощью «разбрасывателя», ключевой формы этой главы. Сложите результаты. Вот и все. Теорема отсчетов утверждает, что этот процесс «разбрасывания» и сложения полученных результатов точно воспроизводит недостающие бесконечности между пикселями! Как и в случае с другими великими математическими теоремами, такие выводы вовсе не очевидны. Мы должны верить математике.

Здесь нам снова поможет пример с волной, но для простоты мы возьмем только два центральных сокселя (рис. 2.10). (Чуть позже от них мы перейдем к пикселям.) Напомню, что соксель – это отсчет для кривой, изображающей аналоговый звук, а ее высота над нулевой линией обозначает его громкость. Таким образом, высота сокселя представляет собой громкость звуковой волны только в той точке, где сделан этот отсчет. Соксель справа будет менее громким, чем тот, что слева.


Рис. 2.9


Сначала мы разберемся с левым сокселем при помощи «разбрасывателя», изображенного на рисунке 2.1. Напомню, что его колебания той же частоты, что и у волны Фурье с самой высокой частотой исходного фрагмента. Его максимальная амплитуда на центральном выступе соответствует максимальной громкости. Для выполнения операции «разбрасывания» заменим левый соксель копией разбрасывателя (рис. 2.11). Я люблю говорить, что это «разбрасывание» превращает соксель из отсутствия формы (ничего) в показанную на рисунке форму (нечто). Его самая высокая точка – вершина центрального горба – имеет ту же громкость, что и соксель, который он заменяет. Два сокселя показаны пунктиром. В частности, из рисунка видно, что высота разбрасывателя – его максимальная громкость – соответствует высоте левого сокселя. В нашем примере она составляет 80 % от полной громкости. Представьте, что у вас есть переключатель для ее регулирования.

Теперь поместите еще одну копию разбрасывателя над правым сокселем (рис. 2.12) и поворачивайте переключатель, пока его максимальная громкость не совпадет с громкостью этого сокселя, в нашем случае 50 % от полной громкости, – таким образом будет «разбросан» второй соксель.

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


Рис. 2.10


Я до сих пор обходил стороной физическую реальность. Описанный в этой главе разбрасыватель не существует в реальном мире. Он бесконечно широк. Его колебания уходят влево и вправо до бесконечности. Очевидно, в действительности такое невозможно, поэтому реальные разбрасыватели лишь приближенно соответствуют идеальному.

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


Рис. 2.11


Рис. 2.12

 

Рис. 2.13


До сих пор я описывал одномерное разбрасывание. Амплитуда звуковых волн изменяется только в одном измерении (во времени), поэтому приведенные выше иллюстрации подходят для сокселей, но не для пикселей. Разбрасыватель для пикселей должен работать в двух измерениях, поскольку изображения простираются (в пространстве) в двух измерениях – горизонтальном и вертикальном. Разбрасыватель пикселей должен «разбросать» каждый гвоздь (пиксель) из нашей воображаемой доски с гвоздями так, чтобы каждый «разбросанный» пиксель внес свой вклад в двумерную поверхность, которую мы увидим. Можете считать предыдущие иллюстрации точными чертежами поперечного сечения разбрасывателя пикселей в горизонтальном измерении, а в вертикальном измерении оно будет точно таким же. Но можно сделать нагляднее.


Рис. 2.14


Рис. 2.15


На рисунке 2.15 показан полный двумерный разбрасыватель для пикселя. Поставьте лезвие острого ножа в самую яркую точку и разрежьте эту маленькую гору пополам от вершины до основания, как показано на иллюстрации. Тогда передняя кромка разреза будет точь-в-точь как кубический разбрасыватель с рисунка 2.14. Вы увидите то же самое, если разрежете маленькую гору поперек. Поскольку этот разбрасыватель остается кубическим в каждом измерении, его называют бикубическим. Подобный встроен в Adobe Photoshop (один из старейших и самых популярных редакторов пиксельных изображений) для изменения размера картинки.

Итак, теперь давайте проведем разбрасывание и сложение над целым рядом пикселей, но вместо идеального разбрасывателя воспользуемся бикубическим. Для простоты и наглядности мы сделаем это в поперечном сечении. Но не забывайте, что каждый разбрасыватель на самом деле представляет собой небольшую горку, подобную той, которую мы только что видели, и что неровная доска с гвоздями простирается в двух измерениях с небольшой горкой у каждого гвоздя. Сначала мы разместим разбрасыватели для каждого пикселя (рис. 2.16).

Затем мы проведем сложение их всех, чтобы получить результирующую яркость в каждой точке. На рисунке 2.17 она показана вдоль одной горизонтальной линии визуальной сцены. Кривая яркости, выделенная жирным, восстанавливает исходный аналоговый фрагмент, который я повторяю чуть ниже для простоты сравнения. Восстановление получилось не идеальным – скорее приблизительным, но довольно близким к оригиналу, поскольку мы использовали далеко не идеальный разбрасыватель. Это как дубликат ключа по сравнению с оригиналом. Замок открывают и тот и другой.

Только представьте, насколько эти фигуры (а они уже довольно сложные всего для дюжины или около того пикселей) станут сложными для, скажем, миллиона пикселей. Однако важным отметить, что каждый отдельный шаг очень прост: переместите разбрасыватель на нужное место, отрегулируйте его яркость и просуммируйте его с другими. И у нас есть кандидат на такую работу, способный раз за разом повторять три простых действия, ни разу не запутавшись и не заскучав от нудной работы, – конечно же, это компьютер. Вот почему следующие две главы посвящены компьютеру и его чудесной способности Усиливать (с большой буквы «У»!) ничтожные человеческие возможности – скажем, умение «разбрасывать» один пиксель – в миллион или миллиард раз и делать это очень быстро, не говоря уже о том, чтобы просуммировать все эти пиксели. Просуммировать один раз просто – это под силу даже человеку, – но операцию нужно повторить миллион или миллиард раз. Вот почему нам необходимы компьютеры, чтобы получить Цифровой Свет, хотя математика Котельникова и Фурье показывает, что мы, в принципе, способны сделать это и вручную.


Рис. 2.16


Давайте снова обратимся к магии. Кто-то сделал видеозапись какого-то события, например оперы, или аудиозапись звука, допустим концерта, где-то далеко от нас – скажем, в Пекине – и большую часть выбросил, сохранив лишь выборку. Возможно, поток пикселей (или сокселей) передавался через спутник связи, находящийся в тысячах миль над землей, или был отправлен через всемирную паутину к вам в Сан-Франциско. Поток мог годами находиться в компьютерном файле на жестком диске, прежде чем вы получили к нему доступ. На протяжении всего путешествия сквозь пространство и время аналоговая бесконечность оригинала отсутствовала. От него остались лишь пиксели или соксели, которые вы не могли ни видеть, ни слышать. Даже когда вы наконец загрузили их на свой компьютер или мобильный телефон, аналоговая бесконечность все еще отсутствовала и вы все равно не могли их увидеть или услышать. Затем начинается волшебство: вы смотрите на пиксели или слушаете соксели. Именно в этот момент происходит только что описанное разбрасывание и сложение – реконструкция, – и перед вами предстает полная аналоговая бесконечность информации, которую видел человек в Пекине за много миль от вас или даже много лет назад.


Рис. 2.17


Недостающая бесконечность снова появляется, когда она отображается на экране или звучит из динамика, но никак не раньше. Мы думаем, что носим с собой на флешке или в смартфоне изображение или звук, но это не так. Мы транспортируем его в сильно сжатой форме. Старые медиа прошлого века – например, кинопленка и видеокассета – действительно сохраняли аналоговую бесконечность на всем пути канала связи от источника до дисплея. Новая среда сокращает ее до цифровых отсчетов и заново воссоздает оригинальное аналоговое изображение или звук только в самый последний момент.

Итак, вот в чем секрет теоремы отсчетов и вот почему, вопреки мнению сомневающегося профессора МЭИ, она на самом деле не создает «нечто из ничего». Любой разбрасыватель, который мы используем, идеальный он или нет, представляет собой аналоговую форму: он содержит аналоговую бесконечность точек. Добавляя его к каждому пикселю – крошечную каплю бесконечности – и суммируя результаты, мы снова эффективно вводим аналоговую бесконечность повсюду. Нечто, находящееся в разбрасывателе пикселя, покрывает кажущееся ничто, расположенное между пикселями. Это очень ловкий трюк. Теорема отсчетов переупаковывает бесконечность. Сила математики, освобождающая нас от ограничений нашего мировосприятия, полностью проявляется в великой идее Котельникова.


Рис. 2.18


Пиксели НЕ квадратные

У пикселя нет формы, пока разбрасыватель не преобразует его. Я часто рисовал для наглядности вид сбоку, где они изображены как вертикальные столбики или гвоздики соответствующей высоты. На рисунке 2.18 (слева) показаны два центральных пикселя текущего примера.

Другой способ представить пиксели – посмотреть на них, так сказать, сверху, чтобы вы «увидели» их естественным образом. Но увидеть пиксели невозможно. Нам доступен лишь результат их преобразования через разбрасыватели. Так как же это будет выглядеть сверху, то есть так, как мы видим пиксели на самом деле? На рисунке 2.18 (в центре) показано изображение двух пикселей, прошедшее процедуру «разбрасывания и суммирования» с помощью бикубического разбрасывателя в Photoshop. Они выглядят как маленькие горки, если смотреть на них сверху. Более светлый преобразованный пиксель слева еле виден (но он там есть), его перекрывает более темный.

Как видите, тут нет ничего общего с примыкающими друг к другу квадратами, изображенными справа на рисунке 2.18.

Если вам нужно придать форму пикселю, используйте в качестве ориентира пятнистое изображение вроде того, что показано в середине рисунка 2.18, ориентируйтесь на преобразование через «разбрасыватель» и помните о перекрытии с соседними пикселями. Но на самом деле пиксель не имеет формы. Это точка с нулевым диаметром. Только преобразованные пиксели имеют форму. Если вы видите пиксель и он имеет визуальное воплощение, то перед вами пиксель, прошедший через процесс преобразования в аналоговое изображение.

Легко понять, как появилось мнение, что пиксели – это крошечные квадратики. Эту иллюзию поддерживают многие приложения, например графические редакторы. Вот какую иллюстрацию я сделал в Photoshop, посмотрите внимательно на рисунок 2.19. Скопление из 14 серых пикселей на белом фоне слишком маленькое, чтобы разглядеть его. На самом деле вы, конечно, не видите эти 14 пикселей. Вы видите 14 пикселей, преобразованных в изображение.

Почти во всех использующих пиксели приложениях есть функция масштабирования или какой-то ее аналог. Она, например, показывает, как выглядит изображение при сильном увеличении, как если бы вы рассматривали его через лупу. В центре рисунка 2.19 показан результат использования функции «Приблизить» в Photoshop – наши 14 пикселей увеличены в 16 раз.

Получается, пиксели тогда должны выглядеть как маленькие квадратики, верно? Вовсе нет! «Приближение» использует быстрый и грубый, но неточный трюк, чтобы заставить вас думать, будто изображение «увеличилось». Каждый пиксель просто повторяется 16 раз по горизонтали, а затем каждая строка из 16 идентичных копий – 16 раз по вертикали. В результате каждый исходный пиксель заменяется квадратным массивом того же цвета размером 16 на 16 пикселей. Таким образом, каждый массив выглядит – вот так сюрприз – как квадрат того же цвета. Но все эти квадраты вовсе не изображают массив исходных пикселей крупным планом. Каждый из них состоит из 256 (16×16) (преобразованных в изображение) пикселей для каждого исходного пикселя. Трюк с таким линейным масштабированием был полезен в старые добрые времена медленных компьютеров, но в современном мире он просто вводит в заблуждение. Пришло время отказаться от представления, будто пиксели – это маленькие квадратики. Это никогда не было правдой.


Рис. 2.19


На рисунке 2.19 (справа) показано, как на самом деле выглядит исходное изображение, когда программа Photoshop увеличивает его в 16 раз (с помощью функции «Размер изображения»). Вторая часть теоремы отсчетов объясняет, почему вы видите пятна, каждое из которых имеет исходный серый цвет в центре, но быстро и плавно осветляется во всех направлениях, частично сливаясь с соседними пятнами.

Большой террор и тираны

Великая сталинская чистка – Большой террор – длилась с 1934 по 1939 год. Ее проводил пресловутый Народный комиссариат внутренних дел (НКВД), предшественник КГБ. Многих приговорили к смерти на печально известных показательных процессах, сотни тысяч, а то и миллионы россиян были отправлены в трудовые лагеря – на острова архипелага ГУЛАГ. Русский писатель Солженицын рассказал нам правду о ГУЛАГе и о трагедии, которая не имела «ничего сравнимого с собой во всей истории».

Два тирана, дирижировавшие кровавой трагедией, повлияли и на судьбу Котельникова. Роберт Конквест, авторитетный историк Большого террора, охарактеризовал как «особо кровожадных» четырех влиятельных молодых сталинистов, руководивших чисткой. Среди них были и тираны Котельникова – Георгий Маленков и Лаврентий Берия.

Доклад Маленкова на XVIII партийной конференции в Москве в феврале 1941 года положил начало еще одной чистке, тайной сталинской чистке, уступавшей только Большому террору. В выступлении отмечалось, что рост промышленности резко замедлился, а на руководящих постах свирепствует некомпетентность. Таким образом, незадолго до вторжения Гитлера в Россию десятки наркоматов (в СССР народные комиссариаты – это аналоги министерств, то, что американцы могли бы назвать федеральными бюро или национальными департаментами) были ликвидированы, в том числе в список попал и Народный комиссариат связи (НКС). НКС был расформирован – весь, за исключением лаборатории Котельникова, которую оставили из-за ее военного значения[5].

 

Во время Второй мировой войны Сталин возглавлял комитет из пяти человек, который управлял страной, Маленков и Берия тоже входили туда. Берия к тому же руководил НКВД с помощью своего заместителя Виктора Абакумова, третьего тирана Котельникова. Создав Смерш – главное управление контрразведки Наркомата обороны (да, любители Яна Флеминга, эта организация действительно существовала), Сталин назначил Абакумова его руководителем.[6]

После Второй мировой войны Маленков стал могущественным политиком, по полноте власти уступавшим только Сталину. Сталин удерживал Маленкова и Берию под контролем, назначив Абакумова на еще более высокую должность. Так что Берия и Абакумов руководили государственным аппаратом, управлявшим трудовыми лагерями ГУЛАГа. Они организовывали массовые расстрелы своих политических соперников в Ленинграде и отправляли тысячи человек в лагеря. А когда Сталин умер в 1953 году, Маленков стал председателем Совета министров Советского Союза.

Котельников поддерживал связь со всемогущим Маленковым через его жену Валерию Голубцову. Она приложила немало усилий, чтобы поспособствовать взлету карьеры Котельникова, и даже стала его покровительницей.

У Голубцовой была первоклассная революционная родословная. Ее мать Ольга Невзорова вместе со своими сестрами Зинаидой, Софьей и Августой входили в ближайшее окружение молодого Ленина. Две сестры связали свою жизнь с очень влиятельными мужчинами. Зинаида и ее муж Глеб Кржижановский в период ухаживаний и первых лет брака отбывали ссылку в Сибири вместе с Лениным и его женой Надеждой Крупской. Глеб, один из старейших деятелей революционного движения, состоял в партии с 1893 года и дружил с Лениным. А мужу Софьи Сергею Шестернину Ленин доверял сверхсекретные большевистские финансы.

Валерия Алексеевна Голубцова проявила себя блестящим организатором и администратором. Она окончила Московский энергетический институт (МЭИ), когда женщины-инженеры почти везде в мире еще были в диковинку. Она также прослыла властной, упорной и решительной. Проявив прекрасные организаторские способности, она на протяжении десяти лет возглавляла МЭИ и сумела превратить его в мощный академический центр. Она прилагала все усилия, чтобы интеллектуальные звезды вроде Котельникова попадали к ней в институт, а не в ГУЛАГ. Она не была тираном, но очень эффективно использовала статус жены тирана, чтобы получить все что хотела.

3Это устройство описано в книге фантаста Артура Кларка «Голос через океан». Писатель неоднократно бывал в гостях у Шеннона и искренне восхищался изобретением. См.: Кларк А. Голос через океан. М.: Связь, 1964. С. 172. – Прим. пер.
4После снятия грифа секретности доклад был переработан в статью, опубликованную в 1949 году под названием «Теория связи в секретных системах» в Bell System Technical Journal. – Прим. пер.
5Автор допускает фактическую ошибку. В 1941 году репрессиям подверглись руководители предприятий оборонной промышленности и высокопоставленные лица из некоторых народных комиссариатов. При этом никакой ликвидации «десятков наркоматов» не происходило. НКС также продолжал свою работу. Скорее всего, речь идет о роспуске НИИС НКС осенью 1941 года, о чем пишет в своей статье Н. В. Котельникова, однако это было связано не с репрессиями, а с началом Великой Отечественной войны. Лаборатория В. А. Котельникова была сохранена, поскольку занималась важными разработками шифрованной радиосвязи. Подробнее см.: Котельникова Н. В. Указ. соч. – Прим. ред.
6Ян Флеминг (1908–1964) – британский писатель и журналист, автор популярных романов о супершпионе Джеймсе Бонде, неоднократно противостоявшем советской контрразведке. – Прим. ред.