Delphi实现静止气象卫星云图原始(7)

发布时间:2021-06-06

在这里云图原始数据以内存流的方式打开。mStream1、mStream2分别是两个处于不同地理位置的接收系统提供地同时次同颗卫星云图原始数据的内存流,其中mStream1提供可利用的数据,mStream2是作为主系统使用的局部存在数据被干扰的原始数据的内存流。在经过对两个数据流同步进行质量判别后,选择要修改的数据帧,进行数据更替和保存,完成主系统云图数据的修整,实现提高使用数据的质量要求。

(一)内存流实现数据修改

进行内存流操作,便捷高效,程序与写-写方式打开被质量检测的原始数据,对原始数据的类型、帧数、尺寸、数据生成时间等以实现对数据的同步修改。

mStream1:=TMemoryStream.Create; {创建内存流}

mStream1.LoadFromFile(‘文件路径+文件名称’); {把文件读入内存流} if mStream1.Size<>0 Then begin

pc:=mStream1.Memory; {把字符指针指向内存流} YuntuSize:=mStream1.Size div 1024 div 1000; Edit7.Text:=inttostr(YUNTUSize)+' M'; {计算数据尺寸}

Edit5.Text:=inttostr(mStream1.Size div 53866 {计算数据总帧数}

通过内存流数据修改函数,可以在数据的任意帧到任意帧,实现数据修整。达到坏图中有用帧数的拼接。

function shujuliu_addtofile(mStream1,mStream2:TMemoryStream): Boolean; {内存流中添加内存流数据函数} var

mStreamzy,mStreammb:TMemoryStream; kaishic,shuju,MyFliesize:integer; begin try

{源文件数据定位}

mStream1.Seek(Kaishic,0); {被修整数据定位}

mStream2.Seek(kaishic,0);

{从源文件数据流mStream1中某帧到某帧读取shuju长的数据到被修整数流mStream2中} mStream2.CopyFrom(mStream1,shuju); {获取数据长度} MyFliesize:=

8

Delphi实现静止气象卫星云图原始(7).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219