WEBVTT 00:00:00.000 --> 00:00:04.950 В этом разделе я хочу рассказать о том, как цифровые изображения представлены в компьютере. Итак, 00:00:04.950 --> 00:00:10.218 рассмотрим пример - изображение нескольких желтых цветков и то, что мы видим 00:00:10.218 --> 00:00:15.359 похоже на гармоничную, цельную, округленную картинку. В компьютере она 00:00:15.359 --> 00:00:20.187 представлена просто кучей маленьких чисел. Как же это работает? 00:00:20.187 --> 00:00:24.868 Я хочу сфокусироваться на желтом цветке в левом верхнем углу. Видно, что здесь есть 00:00:24.868 --> 00:00:29.914 небольшая зеленая область с точкой посередине. Если я увеличу эту область 00:00:29.914 --> 00:00:34.960 в десять раз, она будет выглядеть так. Заметно, что изображение 00:00:34.960 --> 00:00:39.910 состоит из этих маленьких квадратиков. Эти квадратики называются "пиксели". То есть каждый пиксель - 00:00:39.910 --> 00:00:45.325 это квадратик. Они весьма малы, я не знаю точного их количества, 00:00:45.325 --> 00:00:50.717 в дюйме приблизительно 100 пикселей. И каждый пиксель показывает всего один цвет, он как бы 00:00:50.717 --> 00:00:55.815 занимает квадратик одного цвета. Забавно, что, если посмотреть 00:00:55.815 --> 00:01:00.660 на него сейчас, он выглядит очень искусственным и резким, но поскольку 00:01:00.660 --> 00:01:04.985 пиксель невелик по отношению к исходному изображению, он NOTE Paragraph 00:01:04.985 --> 00:01:09.656 выглядит хорошо. Пиксели настолько малы, что глаз не замечает 00:01:09.656 --> 00:01:14.154 этих резких краев. Вот так выглядит картинка, когда вы ее приближаете и рассматриваете 00:01:14.154 --> 00:01:19.095 детали. Если хотите прикинуть сколько пикселей в изображении, вам нужно просто 00:01:19.095 --> 00:01:23.863 умножить. Если у меня картинка имеет ширину 800 пикселей и высоту 600 00:01:23.863 --> 00:01:28.401 пикселей, я просто их перемножаю и 00:01:28.401 --> 00:01:33.191 получаю 480 000 пикселей. Возможно, Вы знакомы с термином "мегапиксель". Обычно он используется 00:01:33.191 --> 00:01:37.320 для описания компьютеров, фотоаппаратов и тому подобной техники. Мегапиксель - это миллион пикселей. 00:01:37.320 --> 00:01:41.450 То есть мое изображение 800х600, 480 000 это - грубо говоря - половина мегапикселя. 00:01:41.450 --> 00:01:45.591 Не очень большое изображение по современным меркам. Цифровая 00:01:45.591 --> 00:01:49.897 камера, даже на телефоне, обычно выдает изображение 00:01:49.897 --> 00:01:54.039 порядка 5-10 мегапикселей, может 20. Вот это действительно 00:01:54.039 --> 00:01:58.970 большие картинки. Ладно, посмотрим как работает эта штука. Я сделал... 00:01:58.970 --> 00:02:04.222 чтобы получше объяснить, я сделал эту диаграмму. Если у меня есть картинка - то я могу 00:02:04.222 --> 00:02:09.359 рассматривать ее как сетку из пикселей. Каждый пиксель - это квадрат, который 00:02:09.359 --> 00:02:13.970 показывает один цвет. Теперь нам нужен способ обращаться 00:02:13.970 --> 00:02:18.932 к каждому пикселю по отдельности. Это становится возможным, если мы представим 00:02:18.932 --> 00:02:23.717 набор чисел по оси X вдоль верхней линии. Ноль находится слева и растет при движении 00:02:23.717 --> 00:02:28.325 вправо. Похожим образом организована ось Y. 00:02:28.325 --> 00:02:33.051 Ноль в самом верху, в верхнем ряду, а Y числа растут с движением вниз. Так 00:02:33.051 --> 00:02:38.390 исторически организована нумерация в компьютере. Я приведу 00:02:38.390 --> 00:02:43.922 несколько простых примеров. Так верхний левый пиксель имеет координату (0,0). Другими словами, 00:02:43.922 --> 00:02:48.412 x=0, y=0. Пиксель, который находится правее этого, 00:02:48.412 --> 00:02:52.637 имеет координаты x=1, y=0. Договоримся, что если я называю координату, 00:02:52.637 --> 00:02:57.074 то сначала это значение оси X, затем значение оси Y. То есть это 00:02:57.074 --> 00:03:01.787 (1, 0). Вот этот пиксель. Что же, можем продолжить изучать. Это 00:03:01.787 --> 00:03:06.206 x=4, y=2. Или я просто могу сказать (4,2). Вообще-то мы не будем возиться 00:03:06.206 --> 00:03:10.867 с различными значениями x-y для обозначения 00:03:10.867 --> 00:03:15.710 пикселей. Вам просто нужно понять этот способ. То есть даже если 00:03:15.710 --> 00:03:20.431 у нас 10 миллионов пикселей, каждому из них соответствует пара x-y чисел, которая отличает 00:03:20.431 --> 00:03:25.316 его от остальных пикселей. Теперь такой вопрос: дупостим, у меня есть все эти пиксели, 00:03:25.316 --> 00:03:30.470 как же мне задать цвет каждого из них? И чтобы рассказать об этом, 00:03:30.470 --> 00:03:35.392 мне придется сделать небольшое историческое отступление. В 1600-х Ньютон провел 00:03:35.392 --> 00:03:40.470 известный эксперимент с призмой (треугольным куском стекла), 00:03:40.470 --> 00:03:45.547 который я здесь воспроизвел. Солнечный свет падает на левую сторону 00:03:45.547 --> 00:03:49.354 призмы и разделяется на спектр цветов, который я 00:03:49.492 --> 00:03:54.262 спроецировал на белый лист бумаги. Этот эксперимент показывает, что солнечный свет это не 00:03:54.262 --> 00:03:58.703 что-то неделимое и однородное. Наоборот, его можно разделить вот на такие 00:03:58.703 --> 00:04:03.329 составляющие. Этот эффект подобен тому, который можно увидеть при 00:04:03.329 --> 00:04:08.264 радуге. Итак, цвета представляют собой непрерывный спектр, хотя мы 00:04:08.264 --> 00:04:13.075 опознаем некоторые из них, называем по имени. 00:04:13.075 --> 00:04:17.702 Известная последовательность: справа-налево красный, оранжевый, 00:04:17.702 --> 00:04:22.390 желтый, зеленый, голубой, синий, фиолетовый. 00:04:23.505 --> 00:04:31.051 В компьютере эти однородные цвета образуют подобие палитры. 00:04:31.051 --> 00:04:37.706 Мы будем выбирать оттуда красный, зеленый и синий цвета 00:04:37.706 --> 00:04:43.578 и использовать их как составляющие для создания любого нужного нам 00:04:43.578 --> 00:04:48.068 цвета. В конце концов Вы можете считать, что слева 00:04:48.068 --> 00:04:52.003 поступает свет, а справа мы получаем составляющие. Можете считать, 00:04:52.003 --> 00:04:56.036 что это обратный процесс. Что, если я возьму составляющие и направлю их в обратном 00:04:56.036 --> 00:05:00.020 направлении, я могу получить на выходе белый свет. И, хоть физически это не то же самое, но 00:05:00.020 --> 00:05:04.102 наводящее на мысли о том, как мы можем взять составляющие и смешать 00:05:04.102 --> 00:05:08.784 их вместе в компьютере. Также тут есть забавное наблюдение о синем цвете. 00:05:08.784 --> 00:05:13.414 Когда Ньютон называл его, прямо между голубым и фиолетовым оказался синий, 00:05:13.414 --> 00:05:17.694 верно? Нам понадобилось отдельное слово 00:05:17.694 --> 00:05:22.062 и мы не могли называть его просто голубым. Это забавно потому что показывает особенности 00:05:22.062 --> 00:05:26.742 жизни в 17 веке. Ньютон верил в некоторые мистические, 00:05:26.898 --> 00:05:31.111 ненаучные вещи, а в том время было известно только семь 00:05:31.111 --> 00:05:35.323 планет и Ньютон считал, что количество цветов и количество планет 00:05:35.323 --> 00:05:39.587 должно совпадать. И я думаю, что он добавил синий цвет только чтобы 00:05:39.587 --> 00:05:44.871 получить нужное число. Итак, я собираюсь следовать способу для кодирования 00:05:44.871 --> 00:05:50.957 любого цвета, который называется RGB. RGB обозначает "красный", "синий", "зеленый".