На самом деле, автоматическая сшивка работает не очень сложно, но довольно долго, т.к. выполняются очень большие объёмы вычислений. Несколько упрощённо (и с моими домыслами

), это делается примерно таким образом:
1. Сначала программа последовательно сравнивает все кадры в стопке и пытается их совместить сдвигом по X-Y, масштабированием, а некоторые программы и поворотом. Насколько я понимаю, программа после каждого смещения одной из картинок относительно другой попиксельно вычитает одно изображение из другого и анализирует эту разницу (например, сумму значений пикселов результата вычитания). В идеале, с увеличением степени совпадения картинок сумма значений пикселов изображения-разницы стремится к минимуму. Возможно, сначала для ускорения процесса некоторые программы анализируют уменьшенные изображения, делают грубую погонку - этого не знаю.
2. Программа разбивает прощадь изображения на множество очень небольших участочков. Берёт первый участок и сравнивает его на всех кадрах стопки. Ежели участок находится в фокусе, то у него самые резкие градиенты, контрастные границы, разницы между соседними пикселами большие. С выходом из фокуса границы размываются, разницы между соседними пикселами становятся меньше. Вот программа и выбирает тот кадр из стопки для текущего участка, на котором она находит самые контрастные границы, самые большие разницы между соседними пикселами - именно с этого кадра участок и используется для итогового изображения. И так последовательно программа проверяет и выбирает все участки, на которые разбито изображение. Однако, есть несколько разных конкретных математических методов, с помощью которых можно определить, какое из сходных изображений наиболее резкое - и как раз они-то и используются сейчас в системах автофокуса цифровых фотокамер, т.е. автофокус сейчас работает не по "принципу дальномера"!
Насколько я знаю, все эти вычисления производятся не с RGB-цветами, а только с яркостным каналом (т.е. большая часть работы производится с изображениями в градациях серого).
3. На результирующем сшитом изображении остаются некоторые дефекты (в виде дырок и светлых гало) - эти проблемы программы сейчас тоже как-то решают. Но, честно говоря, не знаю как...
Вот, в общем-то, и всё!

Тут становится понятным, что программы будут сильно ошибаться на слишком шумных изображениях - на которых шумы конкурируют с детализацией. Значится, нужен хороший свет (чтобы камера не "вытягивала" изображение из серого недоэкспонированного сырья). Но некоторые проблемы могут возникать и в тех случаях, когда сам объект съёмки шибко нефактурный и гладкий. Ещё хорошим правилом, сильно помогающим устойчивой работе программы, является съёмка слоёв с перекрытием зон резкости примерно на 1/3-1/4. Ну и, наконец, кадры в стопке, загруженной в программу, должны быть в строгом порядке (похоже, что лучше - от самого близкого к самому дальнему) - даже одна ошибка в порядке кадров приводит к тому, что результат тут же отправляется в корзину...