图像操作:从视频中导入静止图像到python/matplotlib?

2024-05-17 19:58:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我在玩天文照片的叠加和处理。我对算法的理解和对已完成的图像一样感兴趣,所以我还没有尝试过任何漂浮在周围的抛光产品。在

我有中等大小的静态照片集(一次几十张),我可以成功地导入使用

img = imread("filename.jpg")

这将生成一个numpyndarray矩阵,我可以使用numpyscipy.ndimage中提供的工具对其进行操作,并使用imshow()进行显示。这在后端由Python Imaging Library, PIL支持,据我所知它只支持静态图像。在

对于较长的曝光时间,最好将相机设置为拍摄视频,然后从视频中提取帧并通过与静态图像相同的分析管道运行它们。据我所知,PIL只支持静态图像。我的相机可以生成文件扩展名为.MOV的Quicktime影片。在

有没有Python库可以让我访问视频帧中的数据?在

或者,我希望能得到关于使用外部工具(似乎存在一个命令行ffmpeg,但我还没有尝试过)来生成临时文件的指导,这些文件可以输入到静态图像管道中。我可能不想把所有帧都提取到一个18k的文件夹中,因为我不想把所有帧都提取到一个大的文件夹中。在

我在osxmavericks上运行python2.7;我可以很容易地访问MacPorts来安装东西。在


Tags: 文件工具图像文件夹算法img视频pil
1条回答
网友
1楼 · 发布于 2024-05-17 19:58:03

下面一行ffmpeg将允许您从预先指定的时间(这里是电影开始后20秒)提取10秒的视频:

ffmpeg -i myvideo.MOV -ss 00:00:20.00 -t 10 img%3d.jpg

很容易理解如何在Bash循环中使用它,或者通过Python在循环中运行命令。在

相关问题 更多 >