Image 树莓飞天电影
我有一个覆盆子,我想在上面制作一部timelapse电影。Image 树莓飞天电影,image,raspberry-pi,movie,Image,Raspberry Pi,Movie,我有一个覆盆子,我想在上面制作一部timelapse电影。 我在互联网上看到的所有例子都是先保存一堆图像,然后一次将它们转换成电影 我想在很长一段时间内制作一部电影,所以我无法保存数千张图像。我需要的是一个工具,可以在图像被捕获后立即将图像添加到电影中 有机会做到这一点吗?我认为,在你的逻辑中有一个缺陷——将每个图像添加到电影中,你必然会添加一个完整的帧,而不仅仅是一个差异帧。这将导致更高的质量,当然-但它也不会节省你在空间方面的任何东西相比,保存整个图像。在电影中添加内容所节省的空间都是关于这
我在互联网上看到的所有例子都是先保存一堆图像,然后一次将它们转换成电影 我想在很长一段时间内制作一部电影,所以我无法保存数千张图像。我需要的是一个工具,可以在图像被捕获后立即将图像添加到电影中
有机会做到这一点吗?我认为,在你的逻辑中有一个缺陷——将每个图像添加到电影中,你必然会添加一个完整的帧,而不仅仅是一个差异帧。这将导致更高的质量,当然-但它也不会节省你在空间方面的任何东西相比,保存整个图像。在电影中添加内容所节省的空间都是关于这个差异,而不是存储一个完整的帧
用递增的检查帧进行部分diff可能会起作用,但我不确定您的目标格式,也不确定需要什么代码来任意固定diff帧或完整帧,根据某些外部条件,编码通常作为一系列操作而不是单个操作进行。答案是肯定的,但它还没有完成! 我需要你的帮助,使这个完美! 在python2中运行
import os, cv2
from picamera import PiCamera
from picamera.array import PiRGBArray
from datetime import datetime
from time import sleep
now = datetime.now()
x = now.strftime("%Y")+"-"+now.strftime("%m")+"-"+now.strftime("%d")+"-"+now.strftime("%H")+"-"+now.strftime("%M") #string of dateandtimestart
def main():
imagenum = 100 #how many images
period = 1 #seconds between images
os.chdir ("/home/pi/t_lapse")
os.mkdir(x)
os.chdir(x)
filename = x + ".avi"
camera = PiCamera()
camera.resolution=(1920,1088)
camera.vflip = True
camera.hflip = True
camera.color_effects = (128,128) #makes a black and white image for IR camera
sleep(0.1)
out = cv2.VideoWriter(filename, cv2.cv.CV_FOURCC(*'XVID'), 30, (1920,1088))
for c in range(imagenum):
with PiRGBArray(camera, size=(1920,1088)) as output:
camera.capture(output, 'bgr')
imagec = output.array
out.write(imagec)
output.truncate(0) #trying to get more than 300mb files..
pass
sleep(period-0.5)
camera.close()
out.release()
if __name__ == '__main__':
main()
我已经配置了几个按钮和一个OLED来选择OLED上显示的时间间隔和帧数(为了简单起见,上面没有显示代码,但这里也有:)
这不会使视频超过366Mb,这是我已经达到的某种限制,我不知道为什么-如果有人有好的建议,我将不胜感激我知道视频格式将多张图片组合在一起以正确编码。如果有一个工具可以在内部对它们进行总结,那就太好了,但我也可以通过添加一些图像而不是单个图像来支持编码过程。一个6分钟的剪辑应该可以毫无问题地放在rasperry上,但是需要的9000张单张图片有点过载。我所需要的只是大幅减少编码器必须提供的图像。我有点觉得你最终会拆开一个工具,自己手工雕刻一些东西,来完成这项工作。或者,您可以对20帧进行编码,第一帧是完整帧,其余帧是差异帧,然后删除源图像。你以后必须把电影放在一起……是的,一部短的中间电影是一种有趣的方法。这与我想象中的单张照片非常接近。有这么多工具,你知道其中一个是不错的选择吗?恐怕我没有工具推荐。我确实想知道是否有一个树莓pi的堆栈溢出站点,尽管我不这么认为,只是为它标记的问题。或者Linux组是最好的选择?我浏览了一些示例,其中显示了具有大量未记录参数的复杂命令。它们要么因为不可理解的原因而无法工作,要么创建无法打开的输出。或者两者都有-创建一些输出,然后挂起。。。不知道发生了什么事。这似乎是一项非常艰巨的任务:-(很明显,我的RAM都用完了,这就是为什么我会限制文件大小的原因-接下来的步骤是创建短视频,然后在PC上连接它们,而不是pi。