Любой кто имел дело с лазерами, например, в самом простом варианте, даже баловался с обычной красной лазерной указкой, замечал, наверное, одно интересное явление: если навести лазерный луч на какую-либо поверхность — поверхность оказывается как бы покрытой ярко сияющими мелкими блёстками, и этот эффект тем более заметен, чем с большего размера лазерный луч светит на поверхность — просто-напросто, из-за обычно неидеальности оптической системы лазера, бытовые недорогие лазерные указки красного цвета имеют достаточно большое* расхождение луча и этот луч освещает достаточно большую площадь, на которой этот эффект становится ещё более заметен.
В прошлом, я думал, что «ну, просто луч настолько яркий, что подсвечивает малейшие шероховатости, ничего странного» — однако, как выясняется, науке этот эффект давно известен, за ним скрывается очень интересное явление и он может быть применён весьма любопытными способами!
Причём, что интересно, эти способы являются не глубоко лабораторными, легко могут быть применимы даже обычными людьми, в своих бытовых исследованиях, самоделках (стартапах?) — среди которых: анализ и контроль микрошероховатости поверхности и даже! 3d-сканирование физических объектов реального мира — практически моментально, без классического сканирования!
Так уж исторически вышло, что с рассматриваемым эффектом я знаком достаточно давно, так как, начиная со студенчества, мне приходилось, так или иначе, иметь с лазерами дело, например, собирали разнообразные лазерные «цветомузыки» — управляя лучом простой красной лазерной указки с помощью квадратного мини зеркальца (примерно 10х10 мм; потом, правда, мы перешли на более простую схему, просто-напросто, приклеивая клеем зеркальце на диффузор звукового динамика — и оно выдавало случайный лазерный узор на проецируемую площадь, да ещё и синхронно музыке…:-)
Дёшево и сердито — штук пять таких микроустановок и танцпол не уступает по «раскраске», пожалуй, что и мировым фестивалям электронной музыки… :-)
А изменяя подаваемую частоту на динамики — можно добиться множества интересных узоров…
Мы даже… знакомились с девушками, используя лазеры! Правда, этот момент я оставлю нераскрытым, позволяя догадаться вам самостоятельно — должны же остаться хоть какие-то секреты! Дам только один намёк: азбука Морзе.
«Молодость и romantique», как говорится…:-) А девчонки были из технического вуза. И на дворе шёл далёкий… впрочем, неважно, какой год. :-) Вернёмся обратно к нашему вопросу, пожалуй…
*В ходе всех этих экспериментов и поделок, пришлось достаточно плотно ознакомиться с лазером и сопутствующими эффектами: скажем, в ходе одного из экспериментов (так как жил на тот момент в квартире родителей, она была «распашонкой» — то есть окна выходили на обе стороны многоквартирного дома, то есть, другими словами, было относительно большое по длине пространство) — я получил длину лазерного луча примерно в 15 м длиной, где на конце этого участка, лазерное пятно составляло уже примерно порядка 80-90 мм в диаметре — и вся эта площадь ярко сияла блёстками!
Таким образом, я на практике убедился в двух вещах: довольно большой расходимости луча недорогой красной указки и получил опыт весьма наглядного наблюдения рассматриваемого нами эффекта…
К слову, если кто-то до этого ещё не сталкивался с подобным эффектом, то, узор, получаемый на поверхности в рамках него, выглядит примерно вот так:

Сразу отмечу, что фотография ни в коей мере не передаёт яркость сверкающих точек, которыми покрыта поверхность и, в некоторой степени большее понимание даёт следующее фото (тоже не оптимальное, но уже ближе), правда, полученное с применением зелёного лазера:

Размышляя над всем этим, у меня тут появилась аналогия, которая, пожалуй, наиболее точно выразит наблюдаемый эффект: он выглядит, примерно, как поверхность свежевыпавшего снега, сверкающего под лучами яркого солнца в холодный зимний день!
И в науке он известен под названием «спекл-эффекта» (от англ. specle — зерно, крапинка).
Физика наблюдаемого заключается в следующем (начнём с основ)…
Все поверхности так или иначе шероховаты, и наука выработала определённый инструментарий для формулирования степени шероховатости, что, в свою очередь, в области машиностроения, нашло своё выражение, в понятии, например, квалитета.
И даже больше того: любая поверхность, вне зависимости от качества обработки, в принципе шероховата — «гладких» поверхностей не бывает вообще!
Хотя бы уже даже по тому, — что любой объект реального мира представляет собой «сборку» из молекул и(или) атомов, в виду чего, если, например, взять самый простой вариант с кристаллической решёткой — его поверхность выглядит как покрытая «шарами и впадинами» (узлы кристаллической решётки и пространства между ними).
Таким образом, несмотря на то, что человечество выработало определённый теоретический инструментарий для работы с шероховатостью (больше для практических целей и построения механизмов), это не отменяет того факта, что, по сути, все поверхности шероховаты в принципе, — правда, настолько мелкие шероховатости, в большинстве случаев, мы просто игнорируем, как несущественные для практических целей*:

*Хотя, тут тоже всё относительно и не так прямолинейно! Как я уже говорил ранее, не всегда и игнорируем — например, для создания эффективных смазок (по сути — «завалить ямы между холмами», чтобы движение двух поверхностей друг по другу не было похоже на: подъём на горку-падение в яму-подъём на горку-падение в яму… и т.д.), где понимание размера «холмов» и величины «песчинок» — то бишь, частиц смазки, которыми необходимо засыпать эти «ямы», вполне себе имеет важность…
Теперь, если подобная шероховатая поверхность будет освещаться когерентным лазерным светом, то есть источником света, испускаемые которым световые волны совпадают по длине и по фазе (т.е. Колеблются синхронно), то, в результате, от того, на какой участок шероховатости поверхности упала волна, — она отразится под тем же, или отличающимся углом.
Для простоты понимания (и упрощения ситуации), ниже я показал на картинке, как если бы волна отразилась обратно только под одним углом; в реальности, из-за относительно большого диаметра источника света и наличия множества летящих одновременно фотонов (т.е. читай «волн») — подобные упавшие волны отразятся сразу во множестве направлений, от множества неровностей поверхности:

Таким образом, как мы видим на картинке выше, в результате подобного отражения световой волны — может возникнуть как позитивная, так и негативная интерференция (т.е. взаимодействие) между волнами: если их фазы совпадут — то яркость вырастет (т.е., другими словами, увеличится амплитуда волны); если же они совпадут в противофазе — то, в зависимости от того, насколько они не совпали, яркость может упасть вплоть до нуля (волны взаимно обнулятся).
То есть, для стороннего наблюдателя это будет выглядеть как участок поверхности, покрытый сложной светящейся текстурой*, состоящей из точек разной яркости — от сияющих до практически чёрных.
*Как мы теперь поняли, по картинке выше, — это текстура, можно сказать, что абсолютно уникальна, так как она чётко завязана на микрошероховатость конкретной поверхности.
Ещё одним удивительным наблюдением для каждого, который будет исследовать этот эффект, может явиться тот своеобразный факт, что, если в примере с блестящей поверхностью снега в зимний день — всегда можно усилием воли навести фокус глаза на эту поверхность, то сверкающая спекл-поверхность никак фокус навести на себя не даст!
По той простой причине, что мы имеем дело с микрошероховатостью и, соответственно, с микрорасстояниями — на которых сложилась какая-то определённая картина интерференции волн.
Другими словами, если вы будете пытаться наводить фокус глаза на эту блестящую поверхность — то она будет мерцать (одни точки будут гаснуть, а другие загораться), но фокус навести так и не получится!
Визуально это выглядит довольно странно и даже, в некоторой степени, неприятно (потому что в жизни больше нигде не встречается невозможность навести фокус глаз на, вроде бы, выглядящий реальным, объект — спекл-поверхность) — помню, как этот факт меня всегда довольно сильно озадачивал.
Кому интересно прочитать теорию на этот счёт более подробно — может начать вот отсюда и читать там далее.
Логично было бы предположить, что, при прочих равных, используя лазерный луч с более короткой длиной волны — можно получить гораздо большее разрешение поверхности:

То есть, глядя на схему выше, мы видим, что, подобный лазер с более короткой длиной волны может формировать картину спеклов, с учётом даже очень малой шероховатости поверхности — т.е. можно снимать картину микронюансов поверхности с очень высокими разрешениями!
Глядя на картинку выше мне даже пришла в голову такая наглядная аналогия: луч на ней слева — это грубо говоря, как будто мы взяли за единицы измерения сантиметры или даже метры (условно, это просто для примера, к этому не привязываемся); а луч справа — это, как если бы мы перешли на миллиметры, например!
Насколько высокими? Ну, по крайней мере, наука говорит нам, что, чисто технически, например, возможно достижение разрешений даже с суб-волновой точностью: по крайней мере, я тут нашёл одно исследование в pdf, где, используя зелёный лазер с длиной волны в 532 нм, удалось достигнуть именно этого (см. 688 стр, фраза «that offers sub-wavelength sensitivity in displacement measurements») — там же, кстати, есть целый ряд схем эксперимента, как выстраивались компоненты; довольно любопытно посмотреть и изучить!
То есть, мы здесь видим, что в ходе эксперимента, достигнуто снятие нюансов микрошероховатости поверхности, с разрешением в сотни нанометров или меньше.
Таким образом, интересно в этом эксперименте то, что там на практике реализован принцип измерения смещений во времени — другими словами, можно сделать снимок подобной спекл-картины и потом этот снимок сравнивать, с некоторой периодичностью его с последующими снимками, которые делаются через какие-то определённые промежутки времени.
То есть, говоря ещё проще — можно отслеживать деформации во времени: реализовать постоянный текущий контроль деформаций поверхности, на большой площади, с суб-волновой точностью — например, отслеживать, как изменяется во времени огромная бетонная плита 20 на 20 м, делая снимки, например, через каждые 10 минут! Весьма недурно…
Или какого-то промышленного резервуара под давлением (не начало ли выпучивать где то стенку). И т.д. и т.п.
И сама идея подобного контроля (в теории) вполне может быть продана в виде готовых продуктов разного рода — конкретным корпоративным заказчикам! ;-)
…Помню, как в бытность свою, мне приходилось иметь дело с самодельным 3d сканером: один из разработчиков которого выкладывал в бесплатный доступ любопытный пакет ПО, на базе которого, подключив к нему обычный видеопроектор, проецирующий параллельные линии, пробегающие по реальному объекту физического мира под разными углами (и, вращая этот объект, опционально) — можно было получить 3d модель этого объекта, используя обычную веб-камеру (процесс происходит в полностью тёмной комнате, со включенной веб-камерой и полосами, пробегающими по сканируемому объекту)!
Меня тогда поразило, что даже при моей веб-камере тех лет на 1,3 Мп — качество поверхности 3d объекта было снято так, что там были видны даже мельчайшие царапинки!
Уже тогда я заметил, что подобное сканирование занимает достаточно большое время: как правило, полосы пробегают несколько раз: сначала вертикально, потом горизонтально, а потом, под углами, примерно в 45°*.
*Достаточно известная методика, — кто хочет узнать об этом подробнее, может прочитать вот здесь и вот здесь.
Таким образом, всё работает, всё прекрасно, но медленно…
Почему это является проблемой — существует множество процессов и явлений, которые необходимо фиксировать очень быстро и нет никакой возможности долго ждать... Да и, к тому же, сама возможность очень быстро снимать 3d модель была бы как нельзя кстати (для разных целей).
По результатам ознакомления с самим принципом физики спекл-картины, мы понимаем, что она случайна, уникальна и зависит от точки наблюдения, — это означает, что в теории, мы могли бы использовать две разнесённые в пространстве камеры, зная расстояние между которыми, и используя эффект параллакса:

можно было бы попробовать буквально «одной вспышкой» получить карту высот поверхности — но из-за уникальности спекл-картины из этого ничего не выйдет: она будет абсолютно уникальна для каждой камеры и две картины с двух камер невозможно будет сравнивать, — а использовать предыдущий метод, который рассматривался выше (изменения деформации во времени) — неприменимо, так как нам нужна абсолютная карта высот, а там можно получать только относительную (т.е. Насколько деформировалось с течением времени; правда, с очень большим разрешением).
Столкнувшись с этой проблемой, инженеры решили её весьма интересным образом: вместо борьбы со случайной спекл-картиной, — они стали проецировать заранее известное количество точек, расположенных на заранее известных расстояниях (тут пример проектора на 30000 точек), — благодаря чему, стало возможным практически мгновенно получать карту высот, без сканирования пробегающим лучом или полосатой картиной:

Однако, мы видим, что такой метод даёт возможность снять копию трёхмерного объекта, с достаточной точностью, удовлетворительной только для некоторых инженерных применений (как та же, например, авторизация через лицо в смартфоне).
Однако, такой подход нас лишает главного: большого разрешения! Что само по себе очень важно и ценно…
Что, в теории, можно было бы проделать, чтобы и разрешение сохранить (в некоторой степени)?
Как мы уже узнали — любая микрошероховатость, сравнимая с длиной волны создаёт уникальную спекл-картину. А теперь, представим, что это микрошероховатость была бы прозрачной!
То есть, и рассеивала бы свет ( в некоторой степени, для создания спеклов), и, в то же время, пропускала его!
Что первое приходит в голову? Обычное матовое стекло! Ведь оно матовое именно потому, что рассеивает и пропускает этот рассеянный свет!
Таким образом, в теории, можно было бы пропустить лазер через матовое стекло, что, по идее, могло бы дать уникальную картину спеклов (наподобие видеопроектора) — где уже эту «запечённую» и стабильную с любого ракурса картину можно было бы спроецировать на любую поверхность!
Получив таким образом простейший и недорогой видеопроектор, который может покрывать любую поверхность сложнейшим узором, снимая который с помощью метода параллакса описанного выше, через две камеры одновременно — можно было бы практически моментально получать микрорельеф поверхности без какого-либо сканирования!
Правда, подозреваю, что точность у этого метода будет не очень, — так как фактически мы как бы «запекаем» картину микрошероховатости матового стекла, а не снимаем реальную микрошероховатость…
Тем не менее, благодаря своей скорости, подобный метод, думается, наверняка вполне может быть применён для целого ряда полезных целей!
Размещайте облачную инфраструктуру и масштабируйте сервисы с надежным облачным провайдером Beget.
Эксклюзивно для читателей Хабра мы даем бонус 10% при первом пополнении.

Ig_B
Рассматривая лазерные пятна на разных поверхностях, расстояниях, в очках и без, пришел к выводу, что это интерференция на сетчатке глаза.