Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
图像处理:从视频导入剧照到python/matplotlib?_Python_Video_Image Processing_Numpy_Matplotlib - Fatal编程技术网

图像处理:从视频导入剧照到python/matplotlib?

图像处理:从视频导入剧照到python/matplotlib?,python,video,image-processing,numpy,matplotlib,Python,Video,Image Processing,Numpy,Matplotlib,我正在玩堆叠和处理天文照片的游戏。我对理解算法就像我对完成的图像一样感兴趣,所以我还没有(还)尝试过任何漂浮在周围的众多抛光产品 我有中等大小的静态照片集(一次几十张),我可以使用 img = imread("filename.jpg") 这将生成一个numpyndarray矩阵,我可以使用numpy和scipy.ndimage中提供的工具对其进行操作,并使用imshow()进行显示。这在后端由支持,据我所知,它只支持静态图像 对于较长的曝光时间,最好将我的相机设置为拍摄视频,然后从视频中提取

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

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

img = imread("filename.jpg")
这将生成一个
numpy
ndarray
矩阵,我可以使用
numpy
scipy.ndimage
中提供的工具对其进行操作,并使用
imshow()
进行显示。这在后端由支持,据我所知,它只支持静态图像

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

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

另外,我也希望得到关于使用外部工具(似乎有一个命令行
ffmpeg
,但我还没有尝试过)生成临时文件的指导,我可以将其输入到我的静态图像管道中。因为我可能想在一部10分钟30帧的电影中检查所有18k帧,所以仅仅将所有帧提取到一个大文件夹中可能不是一个选项


我在OSX小牛上运行Python 2.7;我可以轻松访问MacPorts来安装东西。

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

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

Hmmm,现在我明白了,它似乎通过管道执行命令行ffmpeg。作为spamy的答案,请参阅。如果要提取特定框架,则链接到的项目存在问题。要更好地了解ffmpeg提出的问题,请参阅并链接讨论。
ffmpeg -i myvideo.MOV -ss 00:00:20.00 -t 10 img%3d.jpg