Если нельзя, но очень хочется, то нужно обязательно и ничего в мире не стоит того, чтобы делать из этого проблему!


Интересна Java? Кликай по ссылке и изучай!
Если тебе полезно что-то из того, чем я делюсь в своем блоге - можешь поделиться своими деньгами со мной.
с пожеланием
столько времени читатели провели на блоге - 
сейчас онлайн - 
Показаны сообщения с ярлыком панорама. Показать все сообщения
Показаны сообщения с ярлыком панорама. Показать все сообщения

четверг, 10 июля 2014 г.

[ЧёКак] 2014-07-10

19го числа собирается Automated Testing Dojo. Помимо самой игры, планирую провести еще доклад на тему архитектурки, которую мы когда-то придумали с Сережей для автоматизаторов.

Так что записывайся (в смысле в личку пиши)

Кроме того решил провести ряд техтоков во Львовском офисе GlobalLogic.
Темы такие:
- "Как быстро и качественно подготовить свой первый интересный доклад"
Хочешь первый раз выступить перед аудиторией со своей идеей? Хочешь узнать, как заинтересовать аудиторию любой темой?Хочешь готовить доклады еще быстрее, а может быть вообще научиться импровизировать?Хочешь делать презентации, чтобы их шарили друг другу? А может хочешь научиться работать с флипчартом? Приходи к нам, разберемся с этими и другими вопросами.
- "Эриксоновский гипноз - ликбез для интересующихся" Уже проводил раньше
- "Дискуссионный клуб по Continuous integration / Continuous deployment" Хочу подрайвить CI у себя в компании
- "Эмоциональные тона или как понять, что я застрял" Это тоже уже проводил
Может быть что-то еще придумается...

А еще сделал супер-панораму все с той же гостиницы "Днiстер" во Львове


Был митинг на тему, как начинающему лидеру вести свою юзергруппу. По горячим следам опишу тут, что обсудили.

- определись, зачем тебе юзергруппа - какие свои цели ты преследуешь? Зачем тебе тратить свое время на организацию? 
- у каждой юзергруппы должен быть лидер/драйвер/зажигалочка, а лучше два (потому как один может время от времени скучать)
- юзергруппа требует хлеба и зрелищ с определенной регулярностью, а потому задача лидера искать эти ресурсы вначале в самой юзергруппе, а потом и за ее пределами.
- первых 5 встреч не жди ажиотажа - может на первую встречу прийдут только те, кто тебя знает :) будь к этому готов.
- без притока новых людей юзергруппа за некоторое количество итераций сдувается - все друг друга знают, нового ждать не приходится.
- пиариться стоит везде - группа на фейсбуке, блог юзергруппы, календарики всякие.
- постить отчеты (лидеру) стоит после каждой встречи, с фоточками и вкусными детальками о встрече.  
- искать лучшее место, договариваться за печеньки, планировать и траблшутить - все это так же на плечи лидера. 
- чем больше юзергруппа - тем больших приключений она хочет. Понадобятся помощники.
- когда-нибудь захочешь провести и конференцию :) Значит ты на верном пути.
- если вдруг устанешь - не закрывай юзергруппу, а передай кому-то кто хочет ее вести - всегда есть такой человек. 
-  лидеру хорошо бы периодически встречаться с другими лидерами юзергрупп на их сходняках, а так же посещать другие юзергруппы. 
- все, что ты увидел где-то и тебе оно понравилось после обсуждения вопросов авторских с лидером той группы и получения его аппрувов - все тяни в свою. Потому что твои ребята хотят хлеба и зрелищ.

Был первый скрам викли. И как положено, лебедь рак и щука - кто о чем. Решили завтра сделать пленинг и описать юзерстоиз. А потом распланироваться кто-что себе возьмет... Мне скрам-митинг пока это напоминает

 
Talking Twin Babies from Marius Davitoiu on Vimeo.

И кто за это в ответе? Я за это в ответе, а кто еще?... Ведь есть умный дедушка Карлин, который сказал:


Оу! Мозг закипает!!! 12 совещаний подряд, 5 часовой марафон... :)

Домой пешком. Немного блуканул, но во Львове это делать приятно.

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



Вечером домой. Посмотрел бесплатный онлайн мастер-класс "Пятишаговая модель создания тренинга" Егора Булыгина. Исписал 5 страничек блокнота - было полезно. Основное, что запомнилось (без блокнота):
- у тебя должно быть 3-4 авторских тренинга на выбор клиента, но перед тем:
- проверяй будущую целевую аудиторию тренинга по цепочке: кто? -> что делает? -> какие проблемы? -> почему? -> чем я помогу? -> как?

Кафе, ужин, прогулка по вечернему Львову. Домой. Спать. 

суббота, 2 ноября 2013 г.

Делаем видео панораму

На простых фото панорамах (в том числе сферических) я уже сгрыз все локти.


И вот сутра собирая материал для очередной, пришла идея - а что, если смонтировать видео панораму? Но как? А ХЗ, но точно знаю одно - без сырцов никаких панорам не будет, потому снял 5 видеороликов секунд по 30.

Снимал точно так же как и для фото-панорам - кадры должны перекрываться % на 30, чтобы программа могла найти на них общие точки и смерджить. После поспешил домой, дабы поэксериментировать.

Первым делом полез в гугл и нашел там статью, в которой это самое "КАК?" расписано по самое не могу.  Суть вкратце в том, чтобы сделать видеопанораму надо разобрать ее на серию кадров (каждый кадр, как отдельная фотка), склеить первые кадры из всех видеороликов и создать на основе этого проекта темплейт, по которому прогнать все остальные кадры. После полученные панорамы конвернуть в видео с исходной частотой.  Ну что, цель видна! Вперед.

Исходный материалом будет 5 видеороликов продолжительностью около 20 секунд. Снимал на Nikon, потому формат MOV. Я точно помню, что VirtualDub Mod умеет разбивать видео на кадры и чтобы его подружить с MOV форматом я воспользовался этим советом. Итого у меня получилось как-то так


Каждый видеофайл (avs) по очереди я перегнал в серию bmp изображений и разместил их в отдельных папках. Поехали!

Открываю первый файл в VirtualDub Mod и выбираю на нем интервал, который мне больше всего нравится. Ползунком (1) выбирается положения начала, после чего кликается кнопка (2), затем выбирается конец фрагмента и нажимается кнопавка (3).


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

Во втором и следующих видео (чуть позже) я буду выбирать диапазон отталкиваясь от того, что я выбрал на первом - так как съемка велась не синхронно с 5 камер, а последовательно с 1, то надо совместить периодичность того, что меняется (у нас это волны) на всех 5 выборках. Конечно же мне не удастся найти 5 одинаковых момента, но все же можно найти приблизительно похожие колебания.


После того как я определился с диапазоном я удаляю все, что было до него и после него. Делается это так. Ctrl-X, Ctrl-A, Del, Ctrl-V.

Кстати, на картинке выше можно увидеть насколько перекрываются разные ракурсы.

После того, как в окно VirtualDub Mod перетащил первый аvs файл, выбрал меню File -> Save image sequence... (1) после в диалоге добавил к расширению файла суффикс _N (2), где N - номер видеоролика по порядку. Это надо сделать - так как формат, который кушает следующая программа - [номер кадра]_[номер камеры].[расширение]. Дальше указал папку (3) (для удобства я пока все кадры одной камеры/ракурса сохраняю в отдельную папку). Выбрал bmp (4) как формат без потерь (осторожно в результате на винте будет очень много места скушано). Поставил галку (5), что значит что я сейчас не хочу процессить эту задачу, а добавлю ее в список ожидания. Аминь! (6) Затем перетягиваю в окно программы следующий avs файл и проделываю то же самое, только теперь N=2 и результирующая папка тоже другая.


В результате появилось 5 новых папок, по одной на каждый видеоролик. В каждый папке большое число изображений формата bmp (и каждая весит около 2Gb на 15 секунд видео).


После того, как я опроцессил все видяшки, я удаляю лишнее. Например в первом ролике у меня 16 секунд видео и 390 кадров. Значит в остальных папках можно смело удалять все файлы с номером от 391 и выше.  

Следующие грабли, которые я попытаюсь исправить - это то что я снимал с рук, а не со штатива. Дело в том, что с рук камера немного ходит туда сюда, а качания камеры не синхронны - это сильно испортит результирующую картинку. Значит вывод №1 - снимать сырцы только со штатива. Если это сделать, то следующий этап можно пропустить.

А выравнивать кадры будем вот так. Понадобится нам программа PTGui в нее загружаем все 390 кадров из первой папки (путем выделения и перетаскивание файлов в окно программы). Есть один нюанс, не позволяющий нам перетаскивать сразу все файлы - их порядок нарушится внутри программы. Потому перетаскиваем вначале файлы с номерами 0-9, потом 10-99 а потом 100-999 и так далее 1000-9999 (для продолжительного видео).

При перетаскивании выскочит диалоговое окно (просто в bmp раскадровке нет информации о линзах фотоаппарата, а потому надо ему помочь) - нажимаем Normal Lens (1) дальше в самой программе жмем Align Images (2) и ждем, пока обработаются все фотки серии.


Так мы заставим программу найти общие точки на каждом кадре и выровнять их тем самым устранив качание камеры в руках.


Может случиться глюк и кадры выравняются как-то не так. Потому после зайдем в Panorama eitor (1) и убедимся, что все кадры наложились один на другой (2).

Если глюк все же случился то пробуем его исправить (как - тема другого поста), а лучше пойти и переснять со штатива.

Дальше нам нужно указать границы по которым программа обрежет фотки в результате. Делается это путем перемещения границы на то место, где она должна быть (1-4). Тут шахматная доска - это то что будет залито черным цветом - его нам в результате не надо.


Так же очень важно, что границу надо опускать немного ниже (5) видимой границы кадра, потому как за ней может быть другой кадр, который чуть ниже размещен (из за того же качания камеры при съемке). Проверить это можно просто прокликивая разные кадры на всем диапазоне (1-390). Если в каком-то видно что в пределах границы появилась шахматка - границу надо опустить....

Вот например у меня на 87 кадре (1) такое случилось (2) и я опустил чуть ниже шахматки желтую границу (3). Самое обидное тут то, что чем дольше снимаешь с рук - тем сильнее уползает камера.



Далее на вкладке Project Assistant (1) нажимаем Advenced (2)



После  на вкладке Create Panorama (1) выбираем размер панорамы максимлаьный (2), указываем, что хотим в результате получить все слои (3) указываем папку, в которую поместим результат (4) и создаем панораму (5).



После в папке ...\1\pan\ появится множество jpeg файлов. Теперь можно удалять исходные bmp - они нам больше не понадобятся.

Ту же процедуру стоит проделать и с другими bmp из других ракурсов.  

Теперь можно заняться поклейкой кадров ракурсов в серию панорам. Подробней об этом.

Для начала в каждой папке с jpeg кадрами ракурса я сделал несложное переименовывание всех файлов в общий формат. Делается это с помощью простого bat-ничка (текстовый файл с расширением bat) с содержимым
rename *.jpg ?????_1.jpg
Это у нас будет первый ракурс. bat для второго ракурса будет
rename *.jpg ?????_2.jpg
И так далее... После выполнения bat файла все файлы переименуются как-то так и порядок их будет строго в порядке увеличения номера кадра.

 
Вслед за этим сливаем все кадры-ракурсы в одну папку.


И первую серию 00000_1 ... 00000_5 отправляем в PT Gui. Там выбираем Normal Lens (1), кликаем Ok (2) и клеим панорамку (3)


Быть может понадобится нам немного выровнять ее, сшить вручную или подкорректировать то, что предложил автомат - это ручная работа. В результате нам надо добиться того, чтобы панорама была максимально ровной. Так же в Panorama Editor стоит обрезать края, как мы это делали раньше. 


Дальше нам стоит отправиться на последнюю вкладку PT Gui и там настроить все как на картинке


Можем собрать панораму и посмотреть как получилось, но это вовсе не обязательно. Нам надо сохранить проект как


Имя стоит выбрать template.pts

После этого потребуется джарник, который я написал для этих целей (есть возможность воспользоваться встроенным в PTGui батчером, но у меня были с ним проблемы и я написал свой). Конечно же для работы с ним понадобится установить java.
Команда выполняется так 'java -jar batch-builder.jar [1] [2] [3] [4] [5]', где:
[1] - Номер первого кадра панорамы (обычно 0)
[2] - Номер последнего кадра панорамы
[3] - Номер первой камеры/ракурса (обычно 1). Все последующие рассчитываются в зависимости от количества кадров в одной панораме.
[4] - (опционально) Имя файла сохраненного проекта pts (по умолчанию 'template.pts')
[5] - (опционально) Формат имен файлов кадров (по умолчанию '%image_%camera.bmp',
                    где %image = задает позицию номера кадра, а %camera - позицию номера ракурса')
[6] - (опционально) задает количество символов в части имени %image.
                    Если параметр равен 0 или не указан, то сичтается что исходные изображения будут называться
                        1_1.bmp, 2_1.bmp, 3_1.bmp ... 10_1.bmp ... 100_1.bmp
                    Если параметр равен, например 6, то ожидается работа с исходными изображениями в формате
                        000001_1.bmp, 00002_1.bmp, 000003_1.bmp ... 000010_1.bmp ... 000100_1.bmp
Итого выполняем команду
D:\pan>java -jar batch-builder.jar 0 390 1 template.pts %image_%camera.jpg 5
Процессинг кадров с номерами [0-2] от для камер начиная с номера 1,
файл шаблона - 'template.pts', формат кадров '%image_%camera.jpg', для номеров кадров включено дополнение до длинны 5.
Обработка началась!
Количество камер в темплейте - 5
Обработка прошла успешно!
В результате в исходной папке появятся так же и файлики от 0_panorama.pts до 390_panorama.pts, открыв любой из которых можно посмотреть склеенную панораму для определенного кадра.

Теперь открываем PTGui, в нем в меню Tools->Batch sticher


И дальше перетягиваем в новооткрытый диалог все тепленькие pts файлы. Тут же начнется сборка панорам.


 Через несколько минут (в зависимости от количества кадров и размера исходных изображений) все будет готово. В исходной папке появятся файлы с 0_panorama.jpg и до 390_panorama.jpg.


Теперь их можно склеить в видео используя уже знакомый нам VirtualDubMod. Для этого выбираем File->Open video file


Далее выбираем первый по порядку файл 0_panorama.jpg (1) и выделяем галочку (2) и открываем (3).


Все файлы загрузятся последовательно. Уменьшим изображение, чтобы оно помещелось на экране - правой кнопкой мыши (1) а потом выбрать (2) процент по-меньше. После запустим плеер и просмотрим результат (3).


 Если VirtualDub крешнулся как у меня - не расстраиваемся. Открываем его с начала и загружаем все рисунки. После можно просмотреть кадр за кадром пользуясь кнопками Влево/Вправо...
 
Теперь нам осталось выбрать кодек и сжать видео. Идем в Video-Compression


Выбираем какой-то подходящий кодек. 


Выбираем очень большой битрейт



Иногда бывает так, что кодек накладывает на исходное видео ограничение (например ширина и высота кадра кратна 4) - в таком случае надо кропнуть размер кадра.

Но наш кодек не накладывает никаких ограничений, а потому мы кроппинг можем скипнуть. На всякий опишу как он делается - меню Video-> Filters


Потом добавить NullTransform фильтр


Дальше выделить его (1) и кликнуть Cropping (2), а на нем обрезать сверху и слева на столько пикселей, чтобы результирующий размер (1) соответствовал требованиям кодека.


Дальше нам надо выйти из этих диалогов. И зайти в File-Save as...


Выбрать имя файла и сохранить видео.

Конечно что-то может пойти не так. А потому надо немного потраблшутить. С вопросами пиши в комментах. Если с кодеком получается лажа (большой файл, скушать не может) значит надо попробовать сохранить видео в несжатом виде. При этом размер будет просто огроменный, но гарантированно будет. После видео можно ужать другими видеоредакторами.



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

пятница, 7 января 2011 г.

How to: Как сделать сферическую панораму простым фотоаппаратом с рук? Часть 3.

В прошлых сериях "Как сделать сферическую панораму простым фотоаппаратом с рук?" (часть 1 и часть 2) мы сделали полноценную эквидистантную панораму простым фотоаппаратом с рук. Вот как она выглядит.


Да, эта панорама не идеальна - во многих местах отсутствует небо и земля, а потому нам ручками придется дорисовать недостающие участки. Кроме того на панораме множество глюков, которые нам так же придется выровнять.
Читать дальше...

среда, 15 декабря 2010 г.

Подборка #37

Есть и другие подборки: #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13, #14, #15, #16, #17, #18, #19, #20, #21, #22, #23, #24, #25, #26, #27, #28, #29, #30, #31, #32, #33, #34, #35, #36, #37, #38, #39, #40

А что если ООП это тупик? Читаем тут (и комменты тоже)...

"Выбор - фундаментальное свойство этого мира" leocom

Читать дальше...

суббота, 2 октября 2010 г.

Подборка #26

Есть и другие подборки: #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13, #14, #15, #16, #17, #18, #19, #20, #21, #22, #23, #24, #25, #26, #27, #28, #29, #30, #31, #32, #33, #34, #35, #36, #37, #38, #39, #40

Сегодня проходит всеукраинская конференция разработчиков и пользователей свободных программ, а я не пошел т.к. понимаю, что выходных, в которые можно продуктивно поработать над кое-чем не так уж и много осталось...

...так же сегодня-завтра можно пойти посмотреть на самолетики на "7-ий Міжнародный авіаційно-космічний салон "АВІАСВІТ-ХХІ". Там даже будут показывать Ан-225.

Вспоминается сразу мультик Масяня: "Это не дура, это - лошадь"...

..А еще я сегодня нашел место, с которого красиво открывается часть Киева. И склеил панорамку! 10000×4251 пикс. Читать дальше...

четверг, 16 сентября 2010 г.

Подборка #22

Есть и другие подборки: #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13, #14, #15, #16, #17, #18, #19, #20, #21, #22, #23, #24, #25, #26, #27, #28, #29, #30, #31, #32, #33, #34, #35, #36, #37, #38, #39, #40

Раннее утро, мой сонный моцк растормошил позитивный вело-ролик. Спасибо Юра.


После двухдневного велотура смотреть этот ролик было особенно приятно...
Вот еще один...


А тут еще много всякого вело-видео...

...Если случайно перетерли playlist Winamp'a, а он не сохранен, не расстраивайся - зайди в диспетчер задач и заверши winamp.exe процесс. Дело в том, что плейлист сохраняется при нормальном закрытии winamp'a, а если его принудительно завершить, то список сохраняется. После этого, разумно было бы сохранить playlist в отдельный файл.... Читать дальше....

суббота, 28 августа 2010 г.

How to: Как сделать сферическую панораму простым фотоаппаратом с рук? Часть 2.

В прошлой серии "Как сделать сферическую панораму простым фотоаппаратом с рук?" мы остановились на генерации контрольных точек. В этой серии мы закончим работать с PTGui получим на выходе эквидистантную панораму так, что останется ее только чуть подправить и собрать в swf. Итак сделаем вот так.


Читать дальше...

суббота, 21 августа 2010 г.

Подборка #13 Факты о теле человека. Гаишники жгут. Славик незаменим. Мыльные пузыри. Панорама Рабачье.

Есть и другие подборки: #1, #2, #3, #4, #5, #6, #7, #8, #9, #10, #11, #12, #13, #14, #15, #16, #17, #18, #19, #20, #21, #22, #23, #24, #25, #26, #27, #28, #29, #30, #31, #32, #33, #34, #35, #36, #37, #38, #39, #40

Интересные факты о нашем теле:
Человеческий мозг генерирует за день больше электрических импульсов, чем все телефоны мира вместе взятые.

Общий вес бактерий, живущих в организме человека, составляет 2 килограмма.

В головном мозге человека за одну секунду происходит 100 000 химических реакций. Читать дальше...

воскресенье, 25 июля 2010 г.

How to: Как сделать сферическую панораму простым фотоаппаратом с рук?

Давно хотел написать об этом. Для начала вот несколько моих работ. Во-вторых то, что я делаю можно сделать  вот этим чудом:


Любой фотоаппарат + компьютер - это вся техника, которая нужна для создания сферической панорамы. Так же это можно делать вот в этих условиях (собрал материал в перерывах между скидывании снега со своей крыши).

Сказали бы мне это раньше - я бы не поверил. Но все не так как кажется. Если интересно как - жмем тут...

суббота, 20 февраля 2010 г.

На крыше дома моего...

Недавно, когда я узнал, что такое стопицот я снял еще одну панораму. Сегодня ее склеил. Интересно побывать на моей крыше? Идем дальше...

понедельник, 18 января 2010 г.

Сферические 360-градусные панорамы в г. Черновцы.

Все мои работы по этому поводу выкладываются тут http://whasup.com/pan360. Enjoy.

пятница, 8 января 2010 г.

Панорама. Черновцы. Театральная площадь или "Тралка".

Вот моя первая 360 градусная панорама. Прошло ровно 2 месяца с момента моего первого офигения от увиденного тут.
Чтобы увидеть панораму кликаем на фотку ниже.

четверг, 7 января 2010 г.

Панорама. Черновцы. Площадь Филармонии ("Филка")

Вот наваял сегодня. Немного лучше чем в прошлый раз. 
Чтобы увидеть панораму - кликаем на фотку.

вторник, 1 декабря 2009 г.

Панорамы в Черновцах

Почти каждый вечер я пыхчу над склеиванием панорамок. Всех их можно увидеть тут http://picasaweb.google.com/apofig/yVgANJ. Все они сделаны в славном городе Черновцы. Надеюсь, скоро буду делать это со Львова. Жуть, как хочу переехать в этот город.

Тут http://picasaweb.google.com/apofig/ находится моя галерея на picasa. Каждый день по альбомчику. Черновцы и не только. Смотрим, комментируем.

А вот еще один классный сайт с фотками Черновцов http://whasup.livejournal.com/. Так же смотрим, комментируем.

Приятного просмотра.

воскресенье, 15 ноября 2009 г.

Рисовал небо

Наверное надо мне фотошоп поставить и начать юзать его, а то пеинтом рисовать пол часа градиентное небо конечно зачетно, но неэффективно. Вот, над чем работал.

Получилось ничего, если не вглядываться в нереальные детали :)

понедельник, 9 ноября 2009 г.

Вот сегодня научился






Вот линк, если не грузится.