ELF>@@NM !#$&'()*+,-./012345678;<UH@dH%(HD$81HHt$HD$HFHD$$D$ t0H|$1HT$8dH+%(uhH@]@HT$H|$H5|$HtHt+HH5HPtHuH1Huff.fUSHHdH%(HD$81HHt$HD$HFHD$$D$ HD$t6H|$1HT$8dH+%(HH[]DHt$H|$tHl$H=HtHH=uHuHc@HH=tHH=tHH=tHff.ATUSH@fnFdH%(HD$81HHt$HD$HGfnȉD$(fbfD$ uYHD$Ho(Ht!\$ +\$$tJH|$1HT$8dH+%(H@[]A\HHuːHt$H|$tD$$Ld$u`HELH@H;H=tLH=u-HaHcVf.LLH=tLH=tLH=tLHЉfATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHHH;uIHhHuHHHIHuLHnHHQHuHH>SH0fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$u=H(HtD$9D$t:H111HT$(dH+%(uUH0[fDHHuӐtp HuHcfHHH;tЉfSH0fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$u=H(HtD$9D$t:H111HT$(dH+%(u}H0[fDHHuӐt,h fH~HufHnfHHH;uh fH~fDfH~f.SH0fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$u=H(HtD$9D$t:H111HT$(dH+%(u}H0[fDHHuӐt,`fH~HufHnfHHH;u`fH~fDfH~f.SH0fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$u=H(HtD$9D$t:H111HT$(dH+%(u}H0[fDHHuӐt,` fH~HufHnfHHH;u` fH~fDfH~f.SH0fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$u=H(HtD$9D$t:H111HT$(dH+%(uRH0[fDHHuӐHHhH;uHuHc҉DSH0fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$u=H(HtD$9D$t:H111HT$(dH+%(uRH0[fDHHuӐHHXH;uHuHc҉DUH0fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$u=H(HtD$9D$t:H111HT$(dH+%(|H0]fHHuӐHHH;u-H HuHH5HHHuHuHHpUH0fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$u=H(HtD$9D$t:H111HT$(dH+%(|H0]fHHuӐHHH;u-H8HuHH5HHHuHuHHpUSH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHHH;uAHuAH-LHHuLHsDHHYHuHHFHIff.ATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHH@H;uIH` HuHHHIHuLHnHHQHuHH>ATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHH0H;uIHbHuHHHIHuLHnHHQHuHH>ATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHHH;uIHgHuHHHIHuLHnHHQHuHH>ATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHHH;uIHfHuHHHIHuLHnHHQHuHH>ATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHH H;uIHeHuHHHIHuLHnHHQHuHH>ATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHHHH;uIH_ HuHHHIHuLHnHHQHuHH>ATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHH(H;uIHcHuHHHIHuLHnHHQHuHH>ATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHHH;uIHt HuHHHIHuLHnHHQHuHH>ATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHHH;uAHuA H-LHHuLHsDHHYHuHHFHIff.ATUH8fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$uCH(HtD$9D$tHH111HT$(dH+%(H8]A\fDHHufuHHH;uIHs HuHHHIHuLHnHHQHuHH>ATL%H LHH5LuLHLA\ATIUHHt HH5LHtHmtH]A\HH]A\UH@fnFdH%(HD$81HHt$HD$HGfnȉD$(fbfD$ uLHD$Ho(Ht!D$ +D$$t=H|$1HT$8dH+%(ukH@]ÐHHuؐHt$H|$tċD$$Ht$u(HEHHuHcDHSH0fnFdH%(HD$(1HH4$HD$HGfnȉD$fbfD$u=H(HtD$9D$t:H111HT$(dH+%(uMH0[fDHHuӐu$HHuHcDHH H8.mhd .mhaHMetaIO Library: MetaImageH` h p Ht Hs `HhHgHfHeHcHbHaH` H_ SafeDownCastvtkObjectBasevtkMetaImageReaderIsTypeOfIsAGetPatientNameGetBitsAllocatedGetRescaleOffsetGetGantryAngleGetRescaleSlopeGetNumberOfComponentsGetPixelRepresentationGetPixelSpacingp_voidGetImagePositionPatientGetHeightGetWidthNewInstanceGetStudyIDGetDescriptiveNameGetStudyUIDGetModalityGetPatientIDGetDateGetSeriesGetTransferSyntaxUIDGetImageNumberGetDistanceUnitsGetFileExtensionsGetAnatomicalOrientationCanReadFileGetDataByteOrdervtkImageReader2vtkImageAlgorithmvtkAlgorithmvtkObjectUH=Hu]ÐHH=tHH=tHH=tHH=tH]vtkMetaImageReader - read binary UNC meta image data Superclass: vtkImageReader2 One of the formats for which a reader is already available in the toolkit is the MetaImage file format. This is a fairly simple yet powerful format consisting of a text header and a binary data section. The following instructions describe how you can write a MetaImage header for the data that you download from the BrainWeb page. The minimal structure of the MetaImage header is the following: NDims = 3 DimSize = 181 217 181 ElementType = MET_UCHAR ElementSpacing = 1.0 1.0 1.0 ElementByteOrderMSB = False ElementDataFile = brainweb1.raw * NDims indicate that this is a 3D image. ITK can handle images of arbitrary dimension. * DimSize indicates the size of the volume in pixels along each direction. * ElementType indicate the primitive type used for pixels. In this case is "unsigned char", implying that the data is digitized in 8 bits / pixel. * ElementSpacing indicates the physical separation between the center of one pixel and the center of the next pixel along each direction in space. The units used are millimeters. * ElementByteOrderMSB indicates is the data is encoded in little or big endian order. You might want to play with this value when moving data between different computer platforms. * ElementDataFile is the name of the file containing the raw binary data of the image. This file must be in the same directory as the header. MetaImage headers are expected to have extension: ".mha" or ".mhd" Once you write this header text file, it should be possible to read the image into your ITK based application using the itk::FileIOToImageFilter class. vtkIOImagePython.vtkMetaImageReaderV.IsTypeOf(string) -> int C++: static vtkTypeBool IsTypeOf(const char *type) Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h. V.IsA(string) -> int C++: vtkTypeBool IsA(const char *type) override; Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h. V.SafeDownCast(vtkObjectBase) -> vtkMetaImageReader C++: static vtkMetaImageReader *SafeDownCast(vtkObjectBase *o) V.NewInstance() -> vtkMetaImageReader C++: vtkMetaImageReader *NewInstance() V.GetFileExtensions() -> string C++: const char *GetFileExtensions() override; Get the file extensions for this format. Returns a string with a space separated list of extensions in the format .extension V.GetDescriptiveName() -> string C++: const char *GetDescriptiveName() override; Return a descriptive name for the file format that might be useful in a GUI. V.GetPixelSpacing() -> (float, ...) C++: double *GetPixelSpacing() V.GetWidth() -> int C++: int GetWidth() V.GetHeight() -> int C++: int GetHeight() V.GetImagePositionPatient() -> (float, ...) C++: double *GetImagePositionPatient() V.GetNumberOfComponents() -> int C++: int GetNumberOfComponents() V.GetPixelRepresentation() -> int C++: int GetPixelRepresentation() V.GetDataByteOrder() -> int C++: int GetDataByteOrder(void) override; These methods should be used instead of the SwapBytes methods. They indicate the byte ordering of the file you are trying to read in. These methods will then either swap or not swap the bytes depending on the byte ordering of the machine it is being run on. For example, reading in a BigEndian file on a BigEndian machine will result in no swapping. Trying to read the same file on a LittleEndian machine will result in swapping. As a quick note most UNIX machines are BigEndian while PC's and VAX tend to be LittleEndian. So if the file you are reading in was generated on a VAX or PC, SetDataByteOrderToLittleEndian otherwise SetDataByteOrderToBigEndian. V.GetRescaleSlope() -> float C++: virtual double GetRescaleSlope() V.GetRescaleOffset() -> float C++: virtual double GetRescaleOffset() V.GetBitsAllocated() -> int C++: virtual int GetBitsAllocated() V.GetDistanceUnits() -> string C++: virtual char *GetDistanceUnits() V.GetAnatomicalOrientation() -> string C++: virtual char *GetAnatomicalOrientation() V.GetGantryAngle() -> float C++: virtual double GetGantryAngle() V.GetPatientName() -> string C++: virtual char *GetPatientName() V.GetPatientID() -> string C++: virtual char *GetPatientID() V.GetDate() -> string C++: virtual char *GetDate() V.GetSeries() -> string C++: virtual char *GetSeries() V.GetImageNumber() -> string C++: virtual char *GetImageNumber() V.GetModality() -> string C++: virtual char *GetModality() V.GetStudyID() -> string C++: virtual char *GetStudyID() V.GetStudyUID() -> string C++: virtual char *GetStudyUID() V.GetTransferSyntaxUID() -> string C++: virtual char *GetTransferSyntaxUID() V.CanReadFile(string) -> int C++: int CanReadFile(const char *name) override; Test whether the file with the given name can be read by this reader. HHHDGCC: (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0GNUzRx  0 D X l            4 H \ p       EDPa AE  uEY B P(@"EAD`n AAF 0lFAA D`  AABH (=FADP ABG ED@ AG ED@ AG ED@ AG 8ED@ AG \ED@ AG ED@ AG  ED@ AC  ED@ AC ( EADP AAA ( EADP AAA DgFD@ EE (h=FADP ABG (BFADP ABG (=FADP ABG (=FADP ABG (=FADP ABG (D=FADP ABG (p=FADP ABG (=FADP ABG (=FADP ABG (=FADP ABG ( BFADP ABG (L=FADP ABG xMFF0OFDD n ABA DDB  EDP AB ED@ AG  !#&()*+,-./0123456 79&;Y" =U  9 o    g>=oB=P= =?=m=P== =DB|`=BD=>>(@ ZP!BD99 99.:::":/979;9J9[9l9{99999999 99%9$$90*9<09I69Q<9[B9pH9N9T"Y9_9e9k=q" " " " "! B"# o"& "( ") "* "+ L ", "- ". "/ "0  "1 B "2 l "3 "4 "5 "6  . "7 ^      ";u) 0 P p        # 6 _ t    M   O%:Fo#8K[_ZL30PyvtkMetaImageReader_StaticNewv_ZL33PyvtkMetaImageReader_SafeDownCastP7_objectS0__ZL29PyvtkMetaImageReader_IsTypeOfP7_objectS0__ZL24PyvtkMetaImageReader_IsAP7_objectS0__ZL35PyvtkMetaImageReader_GetPatientNameP7_objectS0__ZL37PyvtkMetaImageReader_GetBitsAllocatedP7_objectS0__ZL37PyvtkMetaImageReader_GetRescaleOffsetP7_objectS0__ZL35PyvtkMetaImageReader_GetGantryAngleP7_objectS0__ZL36PyvtkMetaImageReader_GetRescaleSlopeP7_objectS0__ZL42PyvtkMetaImageReader_GetNumberOfComponentsP7_objectS0__ZL43PyvtkMetaImageReader_GetPixelRepresentationP7_objectS0__ZL36PyvtkMetaImageReader_GetPixelSpacingP7_objectS0__ZL44PyvtkMetaImageReader_GetImagePositionPatientP7_objectS0__ZL30PyvtkMetaImageReader_GetHeightP7_objectS0__ZL29PyvtkMetaImageReader_GetWidthP7_objectS0__ZL32PyvtkMetaImageReader_NewInstanceP7_objectS0__ZL31PyvtkMetaImageReader_GetStudyIDP7_objectS0__ZL39PyvtkMetaImageReader_GetDescriptiveNameP7_objectS0__ZL32PyvtkMetaImageReader_GetStudyUIDP7_objectS0__ZL32PyvtkMetaImageReader_GetModalityP7_objectS0__ZL33PyvtkMetaImageReader_GetPatientIDP7_objectS0__ZL28PyvtkMetaImageReader_GetDateP7_objectS0__ZL30PyvtkMetaImageReader_GetSeriesP7_objectS0__ZL41PyvtkMetaImageReader_GetTransferSyntaxUIDP7_objectS0__ZL35PyvtkMetaImageReader_GetImageNumberP7_objectS0__ZL37PyvtkMetaImageReader_GetDistanceUnitsP7_objectS0__ZL38PyvtkMetaImageReader_GetFileExtensionsP7_objectS0__ZL45PyvtkMetaImageReader_GetAnatomicalOrientationP7_objectS0__ZL25PyvtkMetaImageReader_Type_ZL28PyvtkMetaImageReader_Methods_GLOBAL__sub_I_vtkMetaImageReaderPython.cxx_ZL32PyvtkMetaImageReader_CanReadFileP7_objectS0__ZL37PyvtkMetaImageReader_GetDataByteOrderP7_objectS0_.LC2.LC3.LC4.LC9.LC5.LC6.LC7.LC8.LC10.LC11.LC12.LC13.LC14.LC15.LC16.LC17.LC18.LC19.LC20.LC21.LC22.LC23.LC24.LC25.LC1.LC26.LC27.LC28.LC29.LC30.LC31.LC32.LC33.LC34.LC0.LC35.LC37.LC38.LC36_ZN15vtkImageReader217GetDataScalarTypeEv_ZN15vtkImageReader227GetNumberOfScalarComponentsEv_ZN15vtkImageReader213GetDataExtentEv_ZN15vtkImageReader214GetDataSpacingEv_ZN15vtkImageReader213GetDataOriginEv_ZN18vtkMetaImageReader17GetFileExtensionsEv_ZN18vtkMetaImageReader18GetDescriptiveNameEv_ZN18vtkMetaImageReader15GetRescaleSlopeEv_ZN18vtkMetaImageReader16GetRescaleOffsetEv_ZN18vtkMetaImageReader16GetBitsAllocatedEv_ZN18vtkMetaImageReader16GetDistanceUnitsEv_ZN18vtkMetaImageReader24GetAnatomicalOrientationEv_ZN18vtkMetaImageReader14GetGantryAngleEv_ZN18vtkMetaImageReader14GetPatientNameEv_ZN18vtkMetaImageReader12GetPatientIDEv_ZN18vtkMetaImageReader7GetDateEv_ZN18vtkMetaImageReader9GetSeriesEv_ZN18vtkMetaImageReader14GetImageNumberEv_ZN18vtkMetaImageReader11GetModalityEv_ZN18vtkMetaImageReader10GetStudyIDEv_ZN18vtkMetaImageReader11GetStudyUIDEv_ZN18vtkMetaImageReader20GetTransferSyntaxUIDEv_ZN18vtkMetaImageReader3NewEv_ZNK18vtkMetaImageReader19NewInstanceInternalEv_ZN13vtkPythonArgs13ArgCountErrorEii_ZN13vtkPythonArgs17GetArgAsVTKObjectEPKcRbPyErr_Occurred_ZN13vtkPythonUtil20GetObjectFromPointerEP13vtkObjectBase__stack_chk_fail_ZN18vtkMetaImageReader3IsAEPKcstrcmp_ZN13vtkObjectBase8IsTypeOfEPKc_ZN13vtkPythonArgs8GetValueERPcPyLong_FromLong_ZN13vtkPythonArgs19GetSelfFromFirstArgEP7_objectS1__GLOBAL_OFFSET_TABLE_strlenPyUnicode_FromStringAndSizePyErr_ClearPyBytes_FromStringAndSize_Py_NoneStructPyFloat_FromDouble_ZN13vtkPythonUtil13ManglePointerEPKvPKcPyUnicode_FromStringPyVTKObject_CheckPyVTKObject_GetObjectPyVTKObject_SetFlagPyvtkMetaImageReader_ClassNewPyVTKClass_AddPyvtkImageReader2_ClassNewPyType_ReadyPyVTKAddFile_vtkMetaImageReaderPyDict_SetItemString_Py_Dealloc_ZN18vtkMetaImageReader11CanReadFileEPKc_ZN18vtkMetaImageReader16GetDataByteOrderEvPyType_TypePyVTKObject_DeletePyVTKObject_ReprPyVTKObject_StringPyObject_GenericGetAttrPyObject_GenericSetAttrPyVTKObject_AsBufferPyVTKObject_TraversePyVTKObject_GetSetPyVTKObject_NewPyObject_GC_Del,A`BC DJ}CEFGHDI*C .E3<MnFsGHJ0Y*u*!Kn*qLNq*pM^*t!Nn*o 1 O~   *i    P^   *h    Q> a } *k  R    *  SN q  *l  R    *  T_   *j   *j "Uo*j*j2V*~C(ETsWA*{O\jt*X0Y*nY*3Z*|&;*Is[*z,:DOf{*\)Q*v_lz*]@i*w* 3^*x&;*Is_*},:DOf{*`)Q*y_lz*a@i*r* 3b*mc 3*AId!*s/<JT_v*?C@?? C a e    !-!LGQ_Hdqg?;:0X8@.: 7( 8:@HX:`hx:@ : :`  : :H  :x ( 8: @H X: `h x:H P!: {:p[:J::H (`8:@lHX:`;hx:0<:xI:Q:p:00P:x (8:@$HX:`[hPx:8@ : 4H\p     $8L`t$Dp <`     HlPHtP$P`|;@ P!.symtab.strtab.shstrtab.rela.text.data.bss.text._ZN15vtkImageReader217GetDataScalarTypeEv.text._ZN15vtkImageReader227GetNumberOfScalarComponentsEv.text._ZN15vtkImageReader213GetDataExtentEv.text._ZN15vtkImageReader214GetDataSpacingEv.text._ZN15vtkImageReader213GetDataOriginEv.rodata._ZN18vtkMetaImageReader17GetFileExtensionsEv.str1.1.rela.text._ZN18vtkMetaImageReader17GetFileExtensionsEv.rodata._ZN18vtkMetaImageReader18GetDescriptiveNameEv.str1.1.rela.text._ZN18vtkMetaImageReader18GetDescriptiveNameEv.text._ZN18vtkMetaImageReader15GetRescaleSlopeEv.text._ZN18vtkMetaImageReader16GetRescaleOffsetEv.text._ZN18vtkMetaImageReader16GetBitsAllocatedEv.text._ZN18vtkMetaImageReader16GetDistanceUnitsEv.text._ZN18vtkMetaImageReader24GetAnatomicalOrientationEv.text._ZN18vtkMetaImageReader14GetGantryAngleEv.text._ZN18vtkMetaImageReader14GetPatientNameEv.text._ZN18vtkMetaImageReader12GetPatientIDEv.text._ZN18vtkMetaImageReader7GetDateEv.text._ZN18vtkMetaImageReader9GetSeriesEv.text._ZN18vtkMetaImageReader14GetImageNumberEv.text._ZN18vtkMetaImageReader11GetModalityEv.text._ZN18vtkMetaImageReader10GetStudyIDEv.text._ZN18vtkMetaImageReader11GetStudyUIDEv.text._ZN18vtkMetaImageReader20GetTransferSyntaxUIDEv.rela.text._ZNK18vtkMetaImageReader19NewInstanceInternalEv.rodata.str1.1.rodata._ZN18vtkMetaImageReader3IsAEPKc.str1.1.rela.text._ZN18vtkMetaImageReader3IsAEPKc.rodata.str1.8.rela.text.startup.rela.init_array.rela.data.rel.rela.data.rel.local.comment.note.GNU-stack.note.gnu.property.rela.eh_frame.group @Kh HKi PKj XKk `Kl h Km t Kn Ko Kp Kq Kr Ks Kt Ku Kv Kw Kx Ky Kz K{ K| K}  K  K &"@h`K&6#,6#1@# aP# `# p# #  2# a# \@hK#2## @K& # ;# m$ $  $  0$ ;@$ kP$ `$ p$ $ $ H$ t$ $ $ @K72$!2&9U&uP@K;{2h';@0K>;@K@; @ KB`= @ (KD0 A,LAPA pA @HXKIHLh Xk