12 мая 02 года


          В связи с прошедшими праздниками - не буду вас учить делать шашлыки, но. Если к уксусу для шашлычного маринада добавить соевого соуса и немного меда (немного - это из расчета чайную ложку "с верхом" на килограмм мяса) - получится вполне себе неплохо. А если в поллитра ряженки кинуть полпачки творога (нежирного!) и добавить пару ложек варенья - то "ёгурты" из баночек будут тихо стоять в сторонке и завидовать :-)
          И ещё о пленках, о цифрах, о кривых и о их взаимозаменяемости.
         

From: Andrei C.
Subj: Digital vs. film
Привет DiBR,

Не хочу вступать в полемику, но ты, когда сравнивал цифру и пленку, забыл еще один фактор - цветопередачу. Человек, который когда-нибудь пробовал слайдовую пленку вроде Fuji Velvia или Provia, обычно больше не снимает ни на цифру, ни на негатив, если только у него нет на это серьезной причины (например, если ему нужен широкий диапазон плотностей).

Ну и последнее - свобода. У пленочников всегда есть выбор - слайд для насыщенности цветов, негатив для контрастных сцен, Fuji Astia для портрета, и т.д. У цифровика только одна CCD матрица, и отсняв сюжет в пасмурную погоду, ему остается только "вытаскивать" цвета в фотошопе... Который, естественно, не всесилен.
--Андрей


          Прочитал я, и задумался. Ведь действительно не всесилен. Что, на самом деле, странно - если информация есть, то должен быть и способ её "вытянуть". За очевидным исключением - когда информации таки нет ("завал" света или тени).
          Слайд и негатив - действительно отличаются сильно, даже после скана. Не только (и не столько) по зерну, сколько по цветам. Скан со слайда имеет плотные, насыщенные цвета - не просто "яркие", а именно насыщенные, плотные. Скан с негатива - более мягкий, "пастельный". Забудем на время про зерно, шум и разрешение - речь пойдет не о них. Зерно и шум (собственно, "шум" пленки и есть это самое "зерно") всегда можно разменять на разрешение, посильней "замазав" скан, или отмасштабировав картинку. Что зерно на негативе заметней, чем на слайде - я в курсе, но сейчас - про цветопередачу.
          Если мы условимся забыть про шум, то цветовой информации в негативе - больше, чем в слайде. Просто потому, что у слайда меньше фотоширота (слайд должен быть контрастным, поскольку его нельзя "корректировать при печати", негатив может позволить себе быть весьма вялым), а диапазон плотностей ограничен. Информация эта, собственно, состоит из "R, G и B" - координат точек в трехмерном пространстве, с обязательной :-) нелинейностью и возможным "взаимопроникновением" каналов. Зная спектральный "отклик" слайдовой и негативной пленок, зная (или предполагая) характер нелинейности и перемешивания каналов, всегда можно постобработкой получить из одного - другое, из "воздушности" негатива - "слайдовую" плотность, но без излишней контрастности. Можно. Вроде бы.
          Однако все мои эксперименты по кручению ручек, кривулек, saturation и levels в фотошопе почему-то не привели к тому, что "негативные" цвета стали бы "слайдовыми". Максимум - ярко-мультяшными и немного противными. То-ли фотошоп для этого не предназначен, то-ли "я их готовить не умею", то-ли проблема запрятана глубже.
          Глубже она в принципе быть может. Ведь это на пленке у нас R, G и B, а в реальности - всё не так, как на самом деле :-)


From: Andrei C.
Subj: Digital vs. film
Привет Дмитрий,
на самом деле, я всегда думал, что все сложнее. В сюжете нет R,G,B компонентов, а есть сплошной спектр. А в пленке или матрице, соответственно, есть несколько "слоев" (3, бывает и больше), каждый из которых воспринимает только определенный диапазон волн, в соответствии со своей кривой чувствительности от длины волны. Вот тут - http://www.fujifilm.com/JSP/fuji/epartners/bin/AF3-960E.pdf - на диаграмме 19 есть эти самые кривые для Fuji Velvia - одной из самых замечательных (в смысле цветопередачи) пленок. Но ведь материалы эмульсий разных пленок и технологии, применяемые при изготовлении разных матриц - отличаются. Поэтому простой коррекцией в фотошопе обойтись нельзя, а нужно знать хитрые кривые, которые зависят не только от серии конкретной эмульсии или типа матрицы, но и от выдержки (притом опять же, зависимость хитро-нелинейная), спектра источника света (т.е. погоды), может быть, от чего-то еще. Причем все это должно делаться уже вне камеры. Теоретически задача решается, а на практике - сомневаюсь.


          То есть, у любого сенсора, будь то пленка, будь то матрица, будь то человечьий глаз, есть свои кривые спектральной чувствительности, и чем они ближе к "естественным" (к тем, которые у нашего глаза) - тем "чище" будут цвета. Но!
          Но. Во-первых, разглядывание кривулек, приведенных в документации на пленки Fuji (нравится мне фуджи) особого криминала (точнее, различия в кривых чувствительности) не обнаружили. Да, кривые разные. Кстати говоря, кривые негативной superia мне лично показались более "естественными", чем кривые слайдовой velvia. "Кривые" кривые, кстати, в первую очередь вылезут при печати с пленки - при обычной, проекционной, печати нет возможности ни делать нелинейную коррекцию, ни устранять взаимопроникновение каналов. Сильно "врёт" хороший отпечаток с хорошего негатива? Да вроде бы нет - значит, не такие уж и кривые эти кривые. А ведь программно, после скана, всё вышеупомянутое (нелинейную коррекцию, взаимовлияние) проделать можно. При определенной ловкости рук - хоть в том же фотошопе.
          Да и разность сенситометрических кривых "стрельнет" в первую очередь в "чистоту" цветопередачи, в то, насколько пленка (ну, или сенсор) будет "врать" в случае некоей "стандартной" цветокоррекции. Вранье это вряд ли должно влиять на "плотность и насыщенность" цвета (корректнее - вряд ли должно сильно влиять на "плотность"/"воздушность" цветов после соответствующей коррекции), отыгрываться это должно в первую очередь на "правильности" цвета, что цвета будут "не совсем те". Но ведь цвета вроде бы и те, и я бы согласился на не совсем правильные (они не могут быть более неправильными, чем на бумажном отпечатке с негатива, правда?) цвета, но - на более "плотные".
          Видимо, проблема все-таки не в разных кривых чувствительности, а в том, что такой коррекцией всерьез никто ещё не озаботился. Ведь выкручивание ручки saturation в фотошопе - этого катастрофически мало, а использование того же channel mixer в том же фотошопе для устранения взаимовлияния каналов очень напоминает попытку написать что-то аналогичное MS Word 2000 на ассемблере - в принципе возможно, но как бы нужно обладать большим запасом энтузиазма, да и не факт, что то же взаимовлияние будет линейным и одинаковым при всех яркостях. Вторая проблема - что для такого рода коррекции неплохо бы предварительно поисследовать этот вопрос. Ну, хотя бы численно, сделавши несколько "виртуальных фотографий" по приведенным кривым, а по хорошему - еще и откалибровавши канал "объект-пленка-сканер" на нескольких (десятках) различных длинах волн. В-общем, если вопрос хорошо поставить - он может стоять годами, пока не развалится сам по себе, "за ненадобностью".

          ...а тем временем... А тем временем на ixbt идет разбор полетов [http://ixbt.com/digimage/foveon2.shtml] Foveon'овского сенсора. Того, в котором один пиксель "видит" все три цвета одновременно, тем самым обеспечивая... и всё такое. Разбор полетов идет на тему чувствительности и шумов (результаты разбора неутешительны, но и ну их нафиг - ведь практика критерий истины, а не наоборот - формулы можно писать хоть до посинения, а качество технологии зависит от качества технологии), мне же более интересно другое.
          Фовеоновский сенсор имеет три чувствительных слоя, один над другим. Игра с цветоделением идет на интерференции в слоях разной толщины. Как результат - ни один из слоев не выделяет "чистый" цвет - возможности такой не имеет. Если поглядеть на кривые чувствительности этого сенсора - берет ужас, особенно если сравнить с кривыми пленки (где подобная проблема есть, но она более-менее адекватно решается) или с кривыми сенсоров обычных цифровых камер (где такой проблемы нет - на каждый пиксель нацеплен ма-аленький светофильтрик, а уж его пропускание можно сделать "как положено", холмиком нужной формы). Тем не менее, после обработки того, что там намерил фовеоновский сенсор, получается вполне адекватная по цветопередаче картинка - не идеал, конечно (впрочем, революций не ждите, все революции давно сделаны), но цвета нормальные. И это делается из существенно более "кривых" кривых чувствительности, на полном автомате, с приемлемым качеством. Просто потому, что иначе оказалось нельзя (если просто записать результат с сенсора как RGB - цвета будут ужасными), и разработчикам пришлось напрячься. В случае же пленки напрягаться повода нет, цвета и так адекваты (их ценой заметных усилий сделали адекватными в доцифровую эпоху), делать их "еще лучше" - а ну вас, идите слайд снимайте, нефиг тут работу нам придумывать :-)

          К чему бы это я? Ах, да. К тому, что в принципе (технически) с картинки "из цифровика" можно выжать хоть "пастельность" негатива (если ему фотошироты хватит, что сомнительно), хоть "плотные цвета" слайда (информации для этого хватит, зуб даю - заминка пока в алгоритме). Но, похоже, это никому нафиг не надо, поскольку современные цифровики дают "плоско-правильные" цвета, если им, конечно, хватает освещенности. И, может быть, это и правильно, что цвета правильные?..
          Открою - и тут же закрою - один вопрос. Некоторые говорят "для фотки 10х15 достаточно 640х480 пикселей". Некоторые крутят пальцем у виска, и говорят, что для 10х15 нужно минимум 2 мегапикселя, и то "если вас не интересует результат", а по хорошему нужно 4-5мпикс. Третьи сравнивают мегапиксельную картинку с плёночным сканом и тыкают пальчиком в зерно - "вот смотри, у тебя тут муть какая-то, а у меня каждый пиксель...", четрвертые печатают это же на бумаге, и, тыкая иголкой в пиксели, разъясняют, что "вот тут видишь, деталь проглядывает, сквозь зерно, а у тебя чего? одни пиксели", пятые гордо что-то вычисляют на калькуляторе, и в духе Шуры Балаганова заявляют, что для полного превосходства цифры над 35мм пленкой достаточно 30-40мпикс, не меньше... Ну так и кому верить, а главное - как сравнивать?..
          ...умные буржуи придумали страшную аббревиатуру MTF. Означает оно Modulation Transfer Function. Грубо говоря, берется "абсолютно контрастная" мира (черно-белые полоски), фотографируется системой "объектив+сенсор" (объектив есть объективная реальность как цифры так и пленки, сенсор может быть пленкой, матрицей или ещё чем-нибудь, в случае необходимости получить MTF именно объектива - берется "особомелкозернистая" пленка, как меряется MTF пленки и меряется ли - не знаю, может лазером, может контактно, может ещё как). На фотографии рассматриваются черные и белые полоски, и "глубина модуляции" этих полосок на фотографии (нормированная на глубину модуляции в случае "совсем широких полосок", поскольку контрастность пленки нас не интересует) рисуется на графике в зависимости от частоты следования этих самых полосок. Получается... ну, спектр-не спектр, а некая передаточная функция, более-менее адекватно описывающая способность системы "объектив/сенсор" передавать детали. Та точка, где график функции падает ниже какого-то порога (не знаю точно, какой уровень "общепринят", но подозреваю что это 50%) условно считается "разрешением системы".
          MTF пленки (с хорошим объективом), MTF матрицы (с хорошим объективом) и MTF матрицы с хорошим объективом и последующей обработкой выглядят, вообще говоря, по разному. MTF пленки спадает медленно, печально и плавно - "замываясь" дисперсиями, дифракциями и аберрациями и потихоньку "утопая" в зерне. MTF матрицы спадает резко, с заметной границей в тот момент, когда на каждый пиксель попадает линия своего цвета. MTF матрицы с последующей обработкой (а "шарпят" на автомате сейчас многие камеры - ведь если можно не сильно напрягаясь частично скомпенсировать недостатки оптической системы и сделать картинку чуть чётче - почему бы этого не сделать), имеет еще более четкую границу - до границы MTF искуственным образом "вытягивается" для получения хорошей четкости, после границы - вместо миры идет муаровый узор, с которым уже ничего хорошего не сотворишь.
          Когда говорят, что "35мм любительская пленка полностью перекрывается 4-5мпикс матрицей" - имеют в виду именно ту точку на MTF, где пленка уже заметно скисает, а цифра еще гордо тянет свои 95%, чтобы разом умереть чуть попозже. И это примерно так и есть - если сравнивать фотографии сюжетов с резкими, очерченными краями, то отпечаток с 5мпикс камеры будет выглядеть "чётче" отпечатка с 35мм негатива. Поскольку что ни говори, но наука - она и есть наука.
          Если внимательно разглядеть хороший отпечаток 10х15, сделанные проекционным методом (не "в цифре", но с хорошего негатива в нормальном минилабе) - можно убедиться, что 300dpi, которые "ought to be enough", он на самом деле покрывает с запасом - на нем есть детали и меньшего размера. И хотя их вроде бы и глазом просто так не видно (надо приглядываться), да и четкость там уже, того, близка к никакой - на общее впечатление они влияние оказывают положительное. Вроде и без них всё то же самое, но какое-то чуть не такое, чуть более плоское что-ли.
          Есть мнение. Которое я сейчас озвучу. Что, несмотря на то что когда фанатики пленки говорят "цифра будет сосать, пока не достигнет этак 30-40мпикс на кадр" владельцы цифровиков крутят пальцем у виска и отворачиваются, определенный смысл в этой фразе есть.
          Нет, на пленке нет 40мпикс. Точнее... ну, скажем так - при попытке их оттуда вытащить с достаточной контрастностью, будет очень много шума и очень мало сигнала - зерно пленки о себе знать дает, и устранить его нельзя - нерегулярное оно, в отличие от. С другой стороны - глаз человечьий умеет различать объекты с низкой контрастностью на фоне шумов, а в том случае, когда формального "распознавания" и не требуется, достаточно "угадывания" - так и вообще делает это радостно и весело. Поэтому когда в сюжете кроме объектов с резкими краями и прочих мелких деталей, присутствует ещё и некая "текстура", "заполнение", мелкие и малозначащие детали вроде ворса ковра, фактуры ткани, зерна асфальта, прожилок на листках деревьев - вот тогда-то отпечаток с пленки, на котором эта информация слабо, в шумах, но присутствует, выглядит лучше, чем отпечаток с цифры, где этой информации просто нет (зато в принципе может наблюдаться aliasing от этой информации, что хуже чем её отсутствие). И вот чтобы достичь именно этой границы, и желают люди иметь по сорок мегапикселей на матрице...

          ...вопрос это во многом религиозный. Очень похожий на "ламповые усилители vs транзисторы", даже аргументы очень похожи - "да, лампы искажают, но вы послушайте как они искажают!" :-) Ламповые усилители не умерли - они остались в своих нишах: электроника больших мощностей и высоких частот, да на столах у фанатов "лампового звука". В массах же - ламп в звуковой технике в общем-то и нет. Хотя кто их знает - может, они и лучше по звучанию, как-то не привелось ничего круче ламповой советской "радиолы" послушать.
          С пленкой будет то же самое, но позже. Она останется - в одноразовых "кодаках" и пятидорраровых "скинах" (что? сто баксов за цифровую камеру?! да вон там пленочный кодак за пятерку вместе с пленкой и проявкой лежит!), на широком формате для высококачественной профессиональной фотографии ("сколько волка не корми - а у слона все равно больше"), возможно еще в каких-то нишах. В массы же цифра придет - когда пресловутые 4-5 мегапикселя опустятся до $150-200 вместе с "зуум-объективом". То есть - не очень скоро, но обозримо :-)

          И, говоря о моей личной практике - то, что вылазит из "мыльницы за $200" и любительской Fuji Superia - вполне "накрывается" 3-4 мпикселями. Посмотрим ещё, что реально получится из попыток стереть пыль с отцовской "praktica" и прикрутить к ней отечественные телеобъективы, но я на всякий случай пессиместичен. И слежу за динамикой цен.
          И еще один важный "параметр восприятия". Пленку традиционно принято печатать на бумаге, цифру иногда печатают, но чаще разглядывают с экрана. И бумага и пленка - "непрерывные" носители, без нарезки на квадратики-пиксели и с нерегулярным характером и шума (зерно) и собственно картинки. Разрешение бумаги велико - как я уже говорил, 300dpi есть "нижний предел", реально этих "дпи" на бумаге больше. Разрешение экрана - около 75dpi, зато можно "наехать" на картинку при просмотре.
          Как следствие - попытки "пересечения" технологий создания/просмотра дают результат худший, чем каждая из технологий по отдельности. Скан с пленки может выглядеть на экране хуже цифровой фотографии (поскольку цифра ляжет "пиксель в пиксель", а пленочный скан в эти пиксели придется укладывать насильно), при этом то же скан, выведенный на фотобумагу рядом с той же цифровой фотографией может выглядеть лучше - поскольку теперь пленка сможет продемонстрировать пресловутый "хвост" MTF и всю ту приятную глазу, хотя и почти неразличимую мелкую мелочь, а цифра же аккуратно расставит свои пиксели по фотобумаге.
          ...вот и решай после этого - если 95% кадров у меня сейчас идут "в компьютер" и до бумаги не доходят - что лучше-то, цифра или пленка? Особенно вспомнив что 5% таки идут на бумагу, но - через сканер и фотошоп :-)
          Чудо [beep] техники, мать их. Зеркалка [http://www.samsungcamerausa.com/product/camera_detail_slr.asp?material_id=134001&banner_id=spec] от samsung. Неавтофокусная (таки смогли догадаться, что AF на зеркалках - это не то же самое что AF на мыльнице с двумя положениями "близко/не_сработало"), с собственным байонетом для объектива. Бардак. Прут на рынки, на которых никогда не были и ничего не умели...
          Люблю красивые атаки. Выловлено в ru.nethack (fido), thanks to 3APA3A.
          Стоит сервер-серверок, он не тауэр не десктоп... ой, не то. Стоит в локальной сети сервер, чиста под юникс. Запущены на нем сервисы некие, порты слушают, на запросы отвечают. Какие-то сервисы "в мир" торчат, какие-то в целях безопасности только локальные коннекты принимают - если уж человек локального юзера имеет, то вроде как и защищаться от него надо не так уж параноидальным образом.
          А как ограничить коннекты локально? Неужели учить каждый сервис после приема соединения проверять адрес на "другом конце" сокета, и отбивать адреса кроме 127.0.0.1? Да ладно, проще привязывать сервис только к адаптеру "local loopback" (который и есть 127.0.0.1) - чтобы ухитриться прогнать пакет в систему через него, надо как бы уже находиться в системе. Как бы. Ведь правда - 127.0.0.1 снаружи не придет, а чтобы прибиндиться к интерфейсу - надо иметь этот самый интерфейс.
          Фигушки :-) Берем другой, эээ... чиста юникс. Обучаем его, что local loopback у него имеет адрес вовсе не 127.0.0.1, и вообще не из 127.*.*.* сетки, а из какой-нибудь другой - пусть хоть 128.0.0.1, пофиг. Роутинг на 127.0.0.1 (теперь это обычный ip-адрес, который можно и нужно роутить!) прописываем через атакуемый хост. Пытаемся соединиться с адресом 127.0.0.1 со своего адреса. Пакеты, попадающие на атакуемый хост, при условии включенного там роутинга, заворачиваются в LL, а там их успешно ловит атакуемый сервис. Ответные пакеты, аналогично, уходят в LL, подхватываются роутингом и доставляются по адресу. Никто ж роутинг не научил, что LL роутить не надо, нету там ничего роутящегося - вот он и роутит.
          Далее понятно - получив доступ "снаружи" к сервису, доступному только локально, можно уже заниматься реализацией других атак. Одно плохо - треба чтобы жертва была в одном сегменте (иначе пакеты на 127.0.0.1 погибнут в первом же роутере), и треба чтобы у жертвы был включен роутинг (иначе пакеты не попадут в LL).
          Не буду писать "кто уязвим и у кого уже патчи". Я ж не админ, я так, покурить вышел, да и дырка уже старая, хотя и интересная :-)



Оригинал страницы находится на http://dibr.nnov.ru/issue120502.html.(с) DiBR
При перепечатке ссылка обязательна. <<  *  >>
endmai endma endm end en e