درست کردن نقشه‌ی رنگی فیلم‌ها به کمک ffmpeg و imagemagick

می‌خوام با کمک گرفتن از دو تا ابزار معروف و آزاد ffmpeg و imagemagick توی bash on winodwsم، نقشه‌ی رنگی فیلم‌هایی که دوست دارم رو درست کنم. به این معنی که عکس حاصل کنار هم گذاشتن رنگ غالب هر فریم فیلم رو به دست بیارم.

اول از همه با کمک ffmpeg فیلم رو به تعدادی عکس تبدیل می‌کنیم:

ffmpeg -i Interstellar\ \(2014\).mp4 -r 1/5 image/$filename%03d.bmp

معنی سویچ -r که اختصار rateـه اینه که از هر ثانیه از فیلم، چندتا عکس می‌خوام استخراج کنم. مثلن این‌جا از فیلم interstellar می‌خوام از هر ۵ ثانیه‌ش یه عکس به من بده. مدت زمانی که طول می‌کشه به طول فیلم و تعداد فریم‌ها و الگوریتم فشرده‌سازیش بستگی داره ( مثلن برای اینتراستلار حدود نیم ساعت طول کشید)

بعد از اون، عکس‌هایی که تولید کردیم رو به imagemagick می‌دیم تا ازشون برامون یه عکس به ارتفاع یک پیکسل بسازه: رنگ غالب هر فریم رو برداره و اون‌ها رو کنار هم بذاره.

convert image/*.bmp -scale 1x1\! +append dominant.png

حالا ارتفاع عکس‌مون رو ۶۰۰ برابر می‌کنیم.

convert dominant.png -geometry x600! dominant2.png

خروجی این فرآیند برای اینتراستلار این‌شکلیه:

و برای اولین قسمت سریال Black Books:

لالالند:

این نوشته رو با عکس‌های جدید که درست می‌کنم آپدیت می‌کنم 🙂

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

This site uses Akismet to reduce spam. Learn how your comment data is processed.