日志数据到磁盘
这个例子展示了如何配置日志记录属性对于磁盘日志,然后发起收购记录。
配置日志记录模式
从一个图像采集设备获得的数据可能会记录到内存,磁盘,或两者兼而有之。默认情况下,数据记录到内存中。改变日志记录模式,配置视频输入对象的LoggingMode
财产。
%访问一个图像采集装置,使用灰度视频格式% 10位/像素。vidobj = videoinput (“gige”,1“Mono10”);%视图默认日志记录模式。currentLoggingMode = vidobj.LoggingMode;
currentLoggingMode =记忆
%列出所有可能的日志模式。集(vidobj,“LoggingMode”)
磁盘[{内存}| |磁盘和内存)
%配置日志记录模式到磁盘。vidobj。LoggingMode =“磁盘”;%验证配置。currentLoggingMode = vidobj.LoggingMode;
currentLoggingMode =磁盘
配置磁盘日志记录属性
日志记录到磁盘需要MATLAB®VideoWriter
对象。VideoWriter
是一个MATLAB函数,而不是一个工具箱函数。在您创建和配置VideoWriter
对象,提供视频输入对象的DiskLogger
财产。
VideoWriter
提供了许多不同的配置文件,记录不同格式的数据。下面的例子使用了JPEG 2000剖面可以登录单波段(灰度)数据以及多字节数据。所提供的资料的完整列表VideoWriter
可以在文档中找到。
%创建一个VideoWriter对象。日志文件= VideoWriter (“logfile.mj2”,“运动JPEG 2000”)
VideoWriter一般属性:文件名:“日志文件。mj2的路径:C: \ Temp FileFormat:“mj2”持续时间:0视频属性:ColorChannels:高度:宽度:FrameCount: 0帧速率:30 VideoBitsPerPixel: VideoFormat: VideoCompressionMethod:“运动JPEG 2000 CompressionRatio: 10 LosslessCompression: 0 MJ2BitDepth:
%配置视频输入对象使用VideoWriter对象。vidobj。DiskLogger =日志文件;
开始收购
现在的视频输入对象配置日志数据运动JPEG 2000文件,发起收购。
%开始收购。开始(vidobj)%等待收购完成。等待(vidobj 5)
当记录大量数据到磁盘,磁盘写有时滞后于收购。确定所有帧都被写入磁盘,使用DiskLoggerFrameCount
财产。
而(vidobj。FramesAcquired ~ = vidobj.DiskLoggerFrameCount)暂停(1。)结束
验证FramesAcquired
财产和DiskLoggerFrameCount
属性具有相同的值。
vidobj.FramesAcquired
ans = 10
vidobj.DiskLoggerFrameCount
ans = 10
%视频输入对象不再需要时,删除%,清晰的工作区。删除(vidobj)清晰vidobj