Removing photo flashes from video

English

I use Sony Vegas Pro 11 for editing video. I like this NLE software in-spite of its glitches.

Recently it was required to remove photo flashes from my videos. I tried to find a good and easy way to complete this task, but I’ve only found one Flash Remover plugin.

I downloaded trial version of the plugin and tested it. Well, I wasn’t satisfied with the results.

First, the plugin simply duplicates the last good frame a few times. It’s OK when the photo flash occurred in one video frame only. In this case two equal frames in a row exist in resulting video. In case of two-frames flashes it will be three equal frames in a row that is very noticeable.

Second, after applying the plugin to a fragment/track you have to guess the correct threshold value. The ‘Normal’ value in my case can’t find all flashes.

Third, after applying the plugin, sometimes you will see the flashes on the preview anyway (in the final render all would be fine). As a result, you can’t be sure that all flashes are removed with chosen threshold value. You will need to re-render it just to check.

Finally, you have to pay $100 for the whole NewBlue Video Essentials plugin pack even if you need this plugin only.

As a result, I’ve tried to find a solution to remove photo flashes from my videos without additional plugins.

The simplest way to remove flashes – duplicate frames.

If in a single-frame flash frame 2 is damaged, you must duplicate frame 1 or frame 3 and put it just over frame 2. Easy peasy. On resulting video you will have sequence 1 1 3 (or 1 3 3). In case of two-frames flashes you have to duplicate frame 1 and frame 4 and put them over frames 2 and 3. On resulting video you’ll have sequence 1 1 4 4.

More advanced way to remove flashes – resample.

For a single-frame flashes copy frame 1 and frame 3 on a new video track and put them together. Frame 1 must be over source frame 1 and frame 3 must be over source frame 2. Make a selection with two these frames and press Ctrl+M (Render to New Track). Choose codec (I’m using lossless MagicYUV, UTVideo or Cineform encoders), filename and location for a new two-frames fragment and render it. Now press Ctrl key, take the right edge of the new video fragment and stretch two-frames fragment into three-frames fragment. Vegas will leave the first and the last frames untouched and will resample the second frame. Finally, the first frame of the fragment must be over the first source frame. Done.

For two-frames flashes it will be a bit more complicated. Create a new video track above and copy frame 1 just over frame 1. Copy frame 4 and put it over frame 2. Make a selection with these 2 frames and render it as a new fragment on a new video track (Ctrl+M). Now press Ctrl, take the right edge of the new video fragment and stretch two-frames fragment into five-frames fragment. Now cut the last frame of this five-frames fragment (release Ctrl key, take right edge of the fragment and move one frame to the left). Now move the fragment on its position – the first frame of the fragment must be over the first source frame. Done.

You can see the process in the following video:

I’ve prepared a zip-file (21 MB) with source video file, 3 resulting videos created by 3 methods described above and Vegas 11 project file with all related stuff. Enjoy.

P.S. I will be happy if somebody teach me how to improve/simplify the process.

Русский

Для редактирования видео я пользуюсь программой Sony Vegas.

Недавно мне потребовалось удалить вспышки от фотокамер c видео (очень уж их было много). Я попытался найти простой и качественный способ сделать это, однако обнаружил лишь один единственный плагин от NewBlue, который делает это (возможно плохо искал).

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

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

Во вторых, после применения этого плагина, необходимо угадать, какое значение подставить в поле threshold. Значение ‘Normal’ в моём случае убрало не все фотовспышки с видео.

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

И наконец, этот плагин входит в набор NewBlue Video Essentials plugin pack, который стоит $100. Я считаю, что это не очень дёшево (за $80 можно приобрести монтажную программу начального уровня).

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

Простой способ удалить вспышку — пойти по стопам упомянутого плагина и сделать дубликаты кадров.

Если фотовспышкой был испорчен только один кадр (кадр 2 в последовательности 1 2 3), то достаточно скопировать кадр 1 или кадр 3 поверх кадра 2. Элементарно. На результирующем видео будет такая последовательность кадров: 1 1 3 (или 1 3 3). Если фотовспышка испортила два идущих подряд кадра, необходимо скопировать кадр 1 поверх кадра 2 и кадр 4 поверх кадра 3. В результирующем видео будет следующая последовательность кадров: 1 1 4 4.

Продвинутый способ удаления фотовспышки — resample.

Если фотовспышкой был испорчен только один кадр (кадр 2 в последовательности 1 2 3), нужно скопировать кадры 1 и 3 на новую дорожку выше исходной и поместить их рядом. Копия кадра 1 должна быть над кадром 1, а копия кадра 3 — над кадром 2. После этого нужно выделите эти два кадра и нажать Ctrl+M (Render to New Track). Затем надо выбрать кодек (я использую MagixYUV, UTVideo или Cineform), указать имя файла и отрендерить маленький двух-кадровый фрагмент. После этого нажимаете Ctrl, «хватаете» мышью правый край свежеотрендерённого видео-фрагмента и растягиваете его до трёх кадров. Vegas в этом случае сделает так, что первый кадр получившегося фрагмента будет идентичен первому исходному кадру, третий кадр фрагмента — третьему исходному кадру, а второй кадр будет сгенерирован на основании первого и третьего кадров. После этого нужно поместить первый кадр полученного фрагмента над первым исходным кадром, удалить дорожку с копиями кадров 1 и 3 и всё.

Если фотовспышка испортила два идущих подряд кадра, то процесс её удаления получается чуть более сложным. Нужно поместить копии кадров 1 и 4 на новую видео-дорожку выше исходной таким образом, чтобы копия кадра 1 была над исходным кадром 1, а копия кадра 4 была над кадром 2. После этого нужно выделить эти два кадра и нажать Ctrl+M (Render to New Track). Затем надо выбрать кодек, указать имя файла и отрендерить этот маленький двух-кадровый фрагмент. После этого нажимаете Ctrl, «хватаете» мышью правый край свежеотрендерённого видео-фрагмента и растягиваете его до пяти кадров. После этого отрезаете один кадр справа (отпускаете Ctrl, «хватаете мышью правую границу фрагмента и сдвиньте её влево на один кадр). Наконец, помещаете первый кадр получившегося фрагмента над первым кадром исходного фрагмента и всё готово.

Сам процесс вы можете посмотреть на подготовленном мной видео (увы, без звука):

Также я выложил zip-архив (21 МБ) с исходными видео, подготовленным проектом для Sony Vegas 11 и 3 результирующими видео сделанными с помощью трёх описанных тут способов. Можете сравнить результаты.

P.S. Я буду счастлив, если кто-нибудь подскажет более простой способ удаления фотовспышек с видео.

Тест-драйв

Вчера отгонял нашу машину в плановый сервис и нам там бесплатно во временное пользование дали другую машину на день (для этого, правда, пришлось бронировать дату обслуживания машины за две недели). Я ожидал, что дадут какую-нить простенькую KIA или Hyundai Getz, а выдали новенькую (судя по одометру) Mitsubishi ASX с почти полным фаршем.

Вот такую:

Было прикольно сравнить её с нашим одиннадцатилетним ведром с гайками 🙂

Новая машина выше (лучше видно дорогу), короче (меньше радиус разворота, проще найти дырку для парковки в городе), более узкая (на заднем сиденье два детских кресла + один взрослый уже не помещаются). Электроника просто шикарная (в зеркале камера, включающаяся при движении назад, складывающиеся зеркала, датчики дождя + освещённости, раздельная регулировка брызгалок и дворников, магнитола с возможностью подключения к ней по USB и dongle для iPhone/iPod). Ну всякие там ABS/круиз контроль/климат контроль и прочее барахло прилагается по умолчанию. Очень понравился руль меньшего, чем у нашей машины, диаметра. Крутить его при разворотах существенно удобнее.

Но вообще… Вместо имеющейся машины я бы такую себе не хотел. Она по сравнению с нашей, в дополнение к меньшей ширине и маленькому багажнику, вообще не едет, что особенно заметно при троганьи в горку (а горок тут много). Жму педаль газа почти в пол — а машина еле едет, при чем даже обороты при этом повышает очень медленно. Да, возможно это отлично в плане экономии топлива (машина позиционируется как очень экономичная для своего класса), но ездить так просто мучение.

Видео

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

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

Получите:

P.S. Как обычно, чтобы смотреть HD версию видео надо кликнуть на буквы HD и смотреть на сайте vimeo.

«Школа, школа, рОдная школа, сколько ты мне знаний дала, вспомнить страшно…» © Петросян (кажется)

У кого-то дети уже заканчивают школу, женятся, выходят замуж или рожают детей, а у нас вчера старший сын первый раз пошёл в «нулевой» класс 🙂

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

На хождение в школу Витька смотрел с огромным энтузиазмом. Из школы после первого дня пришёл очень довольный, т.к. ему там очень понравилось. Интересно, надолго-ли это? 🙂

Christmas in Australia on a scorching summers day, Hey!

Вот что сегодня показывал наш «термометр»:

В доме работал кондиционер. Термометр стоит в самом жарком месте дома (далеко от кондиционера), хотя к +30 мы уже привыкли 🙂

P.S. А вообще у нас обычно всё-таки попрохладнее. Даже летом. 38 это всё-таки жесткач.

P.P.S. Вот такое видео с русскими «субтитрами» я увидел на ютьюбе на мотив упомянутой в заголовке Австралийской рождественской песенки:

Пляжное: Sand Bubbler Crab

У нас сейчас в море водя тёплая, поэтому довольно часто ездим купаться. К тому-же нашлось более приятное для детей место для купания, которое менее людное, да и почти без волн.

На пляже обнаружили маленьких песчаных крабов и засняли на видео их времяпрепровождение + питание. Забавные они. Так клёво шарики из песка делают:

P.S. Тот, что на видео самый большой (в конце) имел диаметр панциря сантиметра полтора, а те, что в начале — миллиметров по пять.

Околокомпьютерное: networking

WiFi задолбал своей скоростью работы. Нет, для мобильного интернета он очень даже не плох (я говорю про WiFi N, а G и для него ужас-ужас, IMHO), но вот для домашней сети, когда по сети хочется открывать большие фотки и фильмы, 4-6 MB/сек — это ме-е-е-едленно (по сравнению с 50+ MB/сек по gigabit ethernet).

Купил я розетки с кабелем (кстати купить тут или на ebay дёшево solid кабель, это который за стены или в короба кладут, а не из которого патч-корды делают — не такая уж простая задача) и полез на чердак кидать кабель. Ой не простым это оказалось делом, но сегодня я не про это.

Итог: электричество отключено (дети всё-таки вокруг них бегают), силовые розетки открыты (через них кабель с чердака ловили), ставлю я значит сетевые розетки. И вот засада, забыл я по прошествии 11 лет, по какому стандарту надо в розетки кабель разводить — 568A или 568B. Как он в RJ45-разъёмы разводится — помню (оранжево-белый, оранжевый, зелёно-белый, синий, ну и т.д.), а вот к какому стандарту принадлежит эта разводка — забыл. Напрочь. При этом всё выключено, залезть в инет и поискать возможности нет. Всё закрывать для проверки — понятное дело лень. Понятно, что можно хоть по своему собственному стандарту развести — работать будет. Но душа-то стремиться к прекрасному и правильному…

Подбросил монетку да и развел розетки по стандарту A. Закрыл всё, включил электричество, лезу в интернет проверять — облом. «Оранжево-белый» & Co — это стандарт B. Тысяча чертей, надо будет опять всё открывать, переделывать, а ведь лениво… И тут, продолжая читать про стандарты, вдруг обнаруживаю, что это весь мир довольно давно перешёл на стандарт B, а вот в нашей солнечной Австралии до сих пор используется стандарт A.

А потом ещё на купленных тут патч-кордах посмотрел на цвета проводов в разъёмах и убедился, что действительно A.

Повезло, однако 🙂

Околокомпьютерное: «пожизненная гарантия» на память

По результатам тестирования Windows 7 на моём компе в течении почти года я решил перевести остальные компы с Windows XP (верой и правдой служившие нам много лет) на Windows 7. В магазине была куплена коробка с Windows 7 Home Premium Upgrade для 3 компов (по цене на 1 доллар дороже, чем Home Premium Upgrade для одного компа, типа акция у нас сейчас такая).

Заархивировал я данные на компе Юльки (но не систему), поставил туда Win 7 64-bit и… облом. Комп при загрузке стабильно падает в синий экран. Поковырялся я с ним и к своему удивлению обнаружил, что нормально не работает одна планка памяти. При этом под Win XP всё работало нормально (ну… изредка бывали crash-и в редких играх, но кто на них обращает внимание под Win?). При этом встроенный в Windows 7 Recovery Mode тест памяти ошибок не находил, memtest86+, загруженный с флэшки — тоже.

Воткнул эту планку памяти в другой комп — там вообще с ней post не проходит (черный экран при включении).

Печаль, одним словом. При этом где я эту память покупал и когда — уже не помню. Да и гарантию на компьютерные железяки местные магазины дают обычно 1 год. Память DDR2, т.е. покупать что-то на замену не особо хочется, т.к. при ближайшем апгрейде всё равно придётся её выкидывать и покупать DDR3. В общем грустно.

И тут я вспомнил, что какое-то время назад читал, что некоторые производители дают Lifetime Warranty на память. Пошёл я читать на сайт производителя (G.Skill) что для такой гарантии требуется. Обнаружил, что не требуется ничего кроме самой памяти. Написал им и уточнил, всё-ли я правильно понял и как они мне порекомендуют дополнительно потестировать память, чтобы убедиться в её неработоспособности. Отвечали очень быстро, ничего нового не посоветовали, но по результатам тестов написали, что с таким диагнозом они мне её поменяют.

Затем я отправил память им в Китай. Письмом. Ага, письма тут есть «маленькие» и просто письма. Вот маленькие — это до 5 мм толщиной, а просто письма могут быть толщиной аж 20 мм. В 20 мм я без проблем запихнул планку памяти в антистатике и пузырьковой плёнке. Никаких трекингов, доп. страховок я не заказывал, ибо это вышло-бы соизмеримо с покупкой новой памяти. В результате пересылка в Китай мне обошлась в $4.5, тогда как новую память тут я мог-бы купить долларов за 13 (это 1 ГБ DDR2).

Сегодня я получил от них посылку. Ржал в голос как конь. Ну вы сами посмотрите:

Размер коробки: 36 * 16 * 9 см, вес — 860 грамм.

В общем полученная память прекрасно работает. Заодно я выяснил, что Lifetime Warranty на память по крайней мере у некоторых производителей — не просто рекламный слоган. G.Skill тут является одним из самых дешёвых брендов и гарантийный сервис у них прекрасно работает (они не потребовали ни документов, ни упаковки, ни даже слать два модуля, хотя это был kit). Поэтому в будущем я наверное совершенно не буду комплексовать, покупая их память, чего и вам желаю 🙂

P.S. Пока память по гарантии летала в Китай и обратно мы выяснили, что Win 7 64-bit на железе с 1 ГБ памяти — жутчайший тормоз. С двумя гигами всё работает гораздо лучше, наверное не зря в требованиях этой ОС значится 2 ГБ 🙂

Выборы

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

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

Сам участок я нашёл с трудом. Похоже в консульстве экономят бумагу и на сами выборы было выделено ровно два листа A4. На одном был напечатан Российский флаг (только благодаря ему я и нашёл сам участок). На половинке второго листа, который висел рядом с флагом, небольшими буквами было напечатано «Выборы в государственную думу Российской Федерации» (или что-то типа того, точную формулировку я не записал). Оставшуюся часть второго листа бумаги пустили на создание урны для голосования. Изготовили её из подручных материалов типа немного помятой картонной коробки, которую заклеили полосками бумаги с наштампованными на них гербовыми печатями, после чего всю конструкцию скрепили прозрачным скотчем. В общем зрелище было впечатляющее. Хотя дырка в урне была прорезана на удивление ровно 🙂

Я не знаю какие должны быть настоящие бланки для голосования, но тот что был выдан мне, внушал существенно большее доверие, чем вышеупомянутая урна. Чистый, ровный, с голограммой и кучей неизвестных мне букв. Так и хотелось увезти его домой да повесить на стену 🙂

Но в конце концов я нарисовал крестик напротив «apple», сложил бумажку вчетверо (иначе она не пролазила в дырку урны), засунул её в урну, да и поехал с Витькой купаться на ближайший, расположенный в двух минутах езды от избирательного участка, пляж 🙂