สร้างวิดีโอตามเวลาด้วยการรวมเฟรมโดยใช้ ffmpeg


1

ฉันมีวิดีโอ 30fps แบบเรียลไทม์และฉันต้องการแปลงเป็นวิดีโอ 30 เฟรมต่อวินาทีเพื่อให้เฟรมแต่ละเฟรมของวิดีโอเป้าหมายเป็นผลมาจากค่าเฉลี่ยเลขคณิตของเฟรมดั้งเดิม 10 เฟรมในพื้นที่สีเชิงเส้น ฉันคิดว่าจะใช้framerateตัวกรอง แต่มันถูกออกแบบมาเพื่อแทรกเฟรมเฉพาะเมื่อเพิ่มอัตราเฟรม เมื่อฉันลดอัตราเฟรมมันลดลงเพียง 9/10 ของเฟรมทำให้เกิดการเคลื่อนไหวกระตุกของวัตถุที่เคลื่อนที่เร็วแทนที่จะเป็นภาพเคลื่อนไหวที่ราบรื่น

มีวิธีใดบ้างในการบรรลุสิ่งนี้ด้วยคำสั่ง ffmpeg?


ดูว่าคุณสามารถปรับตัวเข้ากับวิธีการขั้นพื้นฐานที่นี่
Gyan

ฉันไม่แน่ใจว่ามันจะทำอะไรได้ง่ายกว่าที่จะเขียนใน C ด้วย libav โดยตรง ...
ybungalobill

แต่ละเฟรมในเอาต์พุตมีค่าเฉลี่ย 4 เฟรมคือเฟรมเอาต์พุต 1 = ค่าเฉลี่ยของเฟรมอินพุต 1,2,3,4, เฟรมเอาต์พุต 2 = ค่าเฉลี่ยของเฟรมอินพุต 5,6,7,8 ...
Gyan

@Mulvya นี้ชัดเจน แต่ในพื้นที่สีอะไรมันทำงานอย่างไร สำหรับการเคลื่อนไหวที่เบลอมันสำคัญมาก นอกจากนี้ฉันจะไม่ได้รับนอกเหนือจากปัจจัยอำนาจสอง
ybungalobill

มันดำเนินการทางคณิตศาสตร์ตามค่าที่ถอดรหัส หากสิ่งเหล่านั้นมีน้ำหนักแบบแกมม่าดังนั้นผลลัพธ์คือถ้าคุณต้องการพื้นที่เชิงเส้นคุณสามารถใช้การเปลี่ยนแปลงรูปแบบพิกเซลล่วงหน้า (ด้วยความลึกที่ขยาย) จากนั้นใช้ลูตหรือตัวกรองอื่น ๆ ที่เกี่ยวข้องและปรับแกมม่า
Gyan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.