跳转至

一个 WRITE_VIDEO 示例

原文链接: https://www.nv5geospatialsoftware.com/Learn/Blogs/Blog-Details/a-write-video-example

19863 为本文评分:

暂无评分

一个 WRITE_VIDEO 示例

Anonym 2013年6月27日,星期四

IDL 8.2.3 中引入的例程 QUERY_VIDEOREAD_VIDEOWRITE_VIDEOIDLffVideoReadIDLffVideoWrite 类的过程化封装。这些例程旨在为处理视频数据提供一个简化的接口,类似于用于处理图像的 QUERY_IMAGEREAD_IMAGEWRITE_IMAGE 例程。它们也应该让人联想到 XINTERANIMATE 和旧的 MPEG 例程(MPEG_OPEN、MPEG_PUT 等)的外观和感觉。这是一个使用 WRITE_VIDEO 制作影片的简单示例。首先通过调用 WRITE_VIDEO 初始化一个视频文件,并返回一个句柄:

outfile = 'write_video_ex.avi'

video_dims = [640, 512]

write_video, outfile, handle=h, video_dimensions=video_dims, video_fps=24

句柄 h 用作对已打开文件的引用。接下来,显示一个等高线图:

c = contour(dist(40), c_value=indgen(6)*5, rgb_table=72, $

   /fill, planar=0, dimensions=video_dims, $

   title='IDL 8.2.3 WRITE_VIDEO Example')

现在将等高线图旋转 181 次,并在每次迭代时进行屏幕抓取。使用句柄作为引用,将抓取到的图像写入上面打开的视频文件中。

for i=0, 180 do begin

   c.rotate, 2, /zaxis

   sgrab = c.copywindow()

   write_video, outfile, sgrab, handle=h

endfor

尽管指定了句柄,但在调用 WRITE_VIDEO 时仍然需要 outfile 参数。最后,关闭视频文件:

write_video, /close, handle=h

文件 write_video_ex.avi 应该会写入到你当前的 IDL 工作目录中。在你喜欢的播放器中循环播放效果最佳。(不过要小心,它很催眠。)

Google 如何为 Google 地图获取准确的地理信息? ENVI 和 ArcGIS:一个超越互操作性的例子