⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vmp.bff

📁 toolbox of BVQX, This is the access between BV and matlab. It will help you to analysis data from BV
💻 BFF
📖 第 1 页 / 共 2 页
字号:
# BinaryFileFormat (leave this tag as its own magic token!)

# BVQX file format for *.VMP files (Volumetric MaP)
# VMP FileVersions supported: 2, 3, 4, 5
#
# Added new VMP (old CMP) support of BVQX 1.9
#
# Version:  v0.7a
# Build:    7080114
# Date:     Aug-01 2007, 2:22 PM CEST
# Author:   Jochen Weber, Brain Innovation, B.V., Maastricht, NL
# URL/Info: http://wiki.brainvoyager.com/BVQXtools

# FILE FORMAT
Description:Volumetrical statistical map files 
EncodingSyntax:ieee-le
Extensions:vmp

# FIELDS
ListOfFields:!
type  !cond                   !disktype!datatype!dim                      !default !varname

# some checks first
BLOOP !$BFFWRITE              ! ! !1 ! !WriteChecks
EXPRE !!!!!! @NrOfMaps = numel(@Map);
EXPRE !!!!!! if @NrOfMaps < 1, fclose(fid); error('Illegal number of maps'); end
EXPRE !!!!!! $XYZDim = size(@Map(1).VMPData); $XDim = $XYZDim(1); $YDim = $XYZDim(2); $ZDim = $XYZDim(3);
EXPRE !!!!!! for tv_cc = 2:@NrOfMaps, tv_xyz = size(@Map(tv_cc).VMPData); if any($XYZDim ~= tv_xyz),fclose(fid);error('Bad dims');end,end
ELOOP !                       ! ! !  ! !WriteChecks

# check magic token / Fileversion
EXPRE !$BFFWRITE && @NativeResolutionFile!!!!!fwrite(fid, uint8([212, 195, 178, 161]), 'uint8');
EXPRE !$BFFREAD           !!!!!@NativeResolutionFile = 0;
FIELD !                       !uint16  !double  !1, 1                     !        !FileVersion
EXPRE !$BFFREAD           !!!!!if @FileVersion > 40962, @NativeResolutionFile = 1; @FileVersion = fread(fid, [1, 2], 'uint16=>double'); @FileVersion = @FileVersion(2); end

# for old, anatomic resolution file format
BLOOP !~@NativeResolutionFile ! ! !1 ! !InAnatomicalResolution

# only common field
FIELD !                       !uint32  !double  !1, 1                     !        !NrOfMaps

# loop over maps
EXPRE !$BFFREAD           !!!!!@Map = cell2struct(cell(0, 0, 22), {'Type', 'NrOfLags', 'MinLag', 'MaxLag', 'CCOverlay', 'ClusterSize', 'EnableClusterCheck', 'LowerThreshold', 'UpperThreshold', 'UseValuesAboveThresh', 'DF1', 'DF2', 'ShowPositiveNegativeFlag', 'BonferroniValue', 'RGBLowerThreshPos', 'RGBUpperThreshPos', 'RGBLowerThreshNeg', 'RGBUpperThreshNeg', 'UseRGBColor', 'TransColorFactor', 'Name', 'VMPData'}, 3); if @NrOfMaps > 0, @Map(@NrOfMaps).Name = ''; end
BLOOP !                       ! ! !@NrOfMaps ! !MapNo
FIELD !                       !uint32  !double  !1, 1                     !        !Map($MapNo).Type

# for cross correlation maps
BLOOP !@Map($MapNo).Type == 3 ! ! !1 ! !MapIsCC
FIELD !                       !uint32  !double  !1, 1                     !        !Map($MapNo).NrOfLags
FIELD !                       !uint32  !double  !1, 1                     !        !Map($MapNo).MinLag
FIELD !                       !uint32  !double  !1, 1                     !        !Map($MapNo).MaxLag
FIELD !                       !int32   !double  !1, 1                     !        !Map($MapNo).CCOverlay
ELOOP !                       ! ! !  ! !MapIsCC

# continued loop over maps
FIELD !                       !uint32  !double  !1, 1                     !        !Map($MapNo).ClusterSize
FIELD !                       !uint8   !double  !1, 1                     !        !Map($MapNo).EnableClusterCheck
FIELD !                       !single  !double  !1, 1                     !        !Map($MapNo).LowerThreshold
FIELD !                       !single  !double  !1, 1                     !        !Map($MapNo).UpperThreshold
FIELD !@FileVersion > 2       !uint32  !double  !1, 1                     !        !Map($MapNo).UseValuesAboveThresh
FIELD !                       !uint32  !double  !1, 1                     !        !Map($MapNo).DF1
FIELD !                       !uint32  !double  !1, 1                     !        !Map($MapNo).DF2
FIELD !@FileVersion == 4      !uint32  !double  !1, 1                     !        !Map($MapNo).ShowPositiveNegativeFlag
FIELD !                       !uint32  !double  !1, 1                     !        !Map($MapNo).BonferroniValue
FIELD !                       !uint8   !double  !1, 3                     !        !Map($MapNo).RGBLowerThreshPos
FIELD !                       !uint8   !double  !1, 3                     !        !Map($MapNo).RGBUpperThreshPos
FIELD !@FileVersion > 2       !uint8   !double  !1, 3                     !        !Map($MapNo).RGBLowerThreshNeg
FIELD !@FileVersion > 2       !uint8   !double  !1, 3                     !        !Map($MapNo).RGBUpperThreshNeg
FIELD !                       !uint8   !double  !1, 1                     !        !Map($MapNo).UseRGBColor
FIELD !                       !single  !double  !1, 1                     !        !Map($MapNo).TransColorFactor
FIELD !                       !cstring !cstring !1, 1                     !        !Map($MapNo).Name
ELOOP !                       ! ! !  ! !MapNo

# further header fields
FIELD !                       !uint32  !double  !1, 1                     !        !VMRDimX
FIELD !                       !uint32  !double  !1, 1                     !        !VMRDimY
FIELD !                       !uint32  !double  !1, 1                     !        !VMRDimZ
FIELD !                       !uint32  !double  !1, 1                     !        !XStart
FIELD !                       !uint32  !double  !1, 1                     !        !XEnd
FIELD !                       !uint32  !double  !1, 1                     !        !YStart
FIELD !                       !uint32  !double  !1, 1                     !        !YEnd
FIELD !                       !uint32  !double  !1, 1                     !        !ZStart
FIELD !                       !uint32  !double  !1, 1                     !        !ZEnd
FIELD !                       !uint32  !double  !1, 1                     !        !Resolution
EXPRE !$BFFREAD           !!!!!$XDim = (@XEnd - @XStart) / @Resolution + 1;
EXPRE !$BFFREAD           !!!!!$YDim = (@YEnd - @YStart) / @Resolution + 1;
EXPRE !$BFFREAD           !!!!!$ZDim = (@ZEnd - @ZStart) / @Resolution + 1;

# looping over maps again (to read data)
BLOOP !                       ! ! !@NrOfMaps ! !MapNo2
FIELD !                       !single  !single  !$XDim, $YDim, $ZDim      !        !Map($MapNo2).VMPData
ELOOP !                       ! ! !  ! !MapNo2

# for native resolution files
ELOOP !                       ! ! !  ! !InAnatomicalResolution
BLOOP !@NativeResolutionFile  ! ! !1 ! !InNativeResolution

# common header fields
FIELD !                       !uint16  !double  !1, 1                     !        !DocumentType
FIELD !                       !uint32  !double  !1, 1                     !        !NrOfMaps
FIELD !                       !uint32  !double  !1, 1                     !        !NrOfTimePoints
FIELD !                       !uint32  !double  !1, 1                     !        !NrOfMapParameters
FIELD !                       !uint32  !double  !1, 1                     !        !ShowParamsRangeFrom
FIELD !                       !uint32  !double  !1, 1                     !        !ShowParamsRangeTo
FIELD !                       !uint32  !double  !1, 1                     !        !FingerprintParamsRangeFrom
FIELD !                       !uint32  !double  !1, 1                     !        !FingerprintParamsRangeTo
FIELD !                       !uint32  !double  !1, 1                     !        !XStart
FIELD !                       !uint32  !double  !1, 1                     !        !XEnd
FIELD !                       !uint32  !double  !1, 1                     !        !YStart
FIELD !                       !uint32  !double  !1, 1                     !        !YEnd
FIELD !                       !uint32  !double  !1, 1                     !        !ZStart
FIELD !                       !uint32  !double  !1, 1                     !        !ZEnd
FIELD !                       !uint32  !double  !1, 1                     !        !Resolution
EXPRE !$BFFREAD           !!!!!$XDim = (@XEnd - @XStart) / @Resolution; $YDim = (@YEnd - @YStart) / @Resolution; $ZDim = (@ZEnd - @ZStart) / @Resolution;
FIELD !                       !uint32  !double  !1, 1                     !        !VMRDimX
FIELD !                       !uint32  !double  !1, 1                     !        !VMRDimY
FIELD !                       !uint32  !double  !1, 1                     !        !VMRDimZ
FIELD !                       !cstring !cstring !1, 1                     !        !OriginatingVTC
FIELD !                       !cstring !cstring !1, 1                     !        !LinkedPRT
FIELD !                       !cstring !cstring !1, 1                     !        !OptionalVOI

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -