LINUX.ORG.RU

Сложение снимков


0

1

Тут задумал сделать аналемму. На пленку ее снимали так раз в сутки в определенное время делался снимок на 1 кадр. И так в течении года.

Имеется вебкамера делающая снимки раз в час. Задача сложить эту пачку в 1 снимок. Необходимо 1. выровнять снимки, и сложить их (подбирая режим смешивания и уровень прозрачности Собственно посоветуйте инструмент на текущим момент отснято 35 снимков

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

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Кстати, аналемму хоть по UTC снимали, или по московскому времени? (я про две «дыры» из-за перехода на искусственное время).

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Пока съемка в процессе (отснято 4 месяца). Снимаю в средний солнечный полдень (UTC + L), где L- долгота в часовой мере

Pterodaktil
() автор топика
Ответ на: комментарий от Pterodaktil

В принципе, у вас не такая уж и сложная задача. Попробуйте действительно, как будет выглядеть медиана от этих изображений. По идее, должно получиться нормально.

// а можно - по-старинке, просто взять, сложить все изображения и нормализовать - т.е. сделать, как будто вы снимали аналемму обычным пленочным фотоаппаратом или на фотопластинку.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Здесь еще задача выравнивания снимков. Это связано с вибрациями камеры. Сложить я думаю можно в inagemagic. а вот как выровнять под линуксом - пока не представляю. В оффтопике есть Registax. Гуглеж альтернатив под Linux результатов не принес

Pterodaktil
() автор топика
Ответ на: комментарий от Pterodaktil

Постройте корреляционную функцию между первым снимком и остальными. Если они у вас еще и вращались, можно найти угол вращения при помощи преобразований Хафа.

Eddy_Em ☆☆☆☆☆
()

Как это сделать скриптом я совершенно без понятия. Мож я неправильно задачу понял, но программно сложить например пару снимков (наложить один на другой) со степенью прозрачности не такая уж великая проблема. Это я делал. Правда на Delphi. Типа того:
procedure BitmapAlpha(Percent: Integer; Dest, ASour, BSour: TBitmap);
var
x, y: Integer;
P1, P2, P3: PByteArray;
begin
x:= 0;
y:= 0;
ASour.PixelFormat:= pf24bit;
BSour.PixelFormat:= pf24bit;
Dest.PixelFormat:= pf24bit;
Dest.Width:= BSour.Width;
Dest.Height:= BSour.Height;
while y < BSour.Height do
begin
P1:= BSour.ScanLine[y];
P2:= ASour.ScanLine[y];
P3:= Dest.ScanLine[y];
while x < BSour.Width*3 do
begin
P3[x]:= (((P2[x]-P1[x])*Percent) div 100)+P1[x];
inc(x);
end;
inc(y);
x:= 0;
end;
end;
Если что не в тему ляпнул - извиняйте, просто я не так понял вопрос.

cadaber ★★
()
Ответ на: комментарий от Pterodaktil

Вам нужен не сам hugin, а утилита поиска общих точек между снимками. В старых версиях это autopano-sift-c. Её можно заскриптовать и по набору общих точек легко найти параметры смещения и угол поворота

mashina ★★★★★
()

Нужно было в стороне кадра разместить три ярких маркера для совмещения.

mclaudt
()
Ответ на: комментарий от sin_a

Многослойный tiff точно зло. По крайней мере для большого кол-ва кадров.

mashina ★★★★★
()

Хана, ребята/девчата, вы такие штуки на полном серьезе обсуждаете... Ни в коем случае не стебаюсь, просто прошу меня просветить о чем собственно речь... Не ржать над юзером! Просто потолковее расскажите, интересно стало.

cadaber ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.