[Insight-developers] Re: Limitation in MetaIO causing problems
initkNeuralNetworkFileReader/Writer
Atwood, Robert C
r.atwood at imperial.ac.uk
Tue Aug 21 07:12:41 EDT 2007
I for one would not be too happy with any such breakage, The intent as I
understand (and agree with) is that the meta-header is human readable,
and sticking tons of data into the tags would break this design idea,
let alone code using it.
I use it all the time and can easily write separate (.mhd) headers by
hand, or by little scripts, for 3rd party and legacy image formats/image
series formats, and thus I can avoid using import filter code. My vote
is to please maintain this design.
Robert
> -----Original Message-----
> From:
> insight-developers-bounces+r.atwood=imperial.ac.uk at itk.org
> [mailto:insight-developers-bounces+r.atwood=imperial.ac.uk at itk
> .org] On Behalf Of Stephen R. Aylward
> Sent: 20 August 2007 23:20
> To: kent williams
> Cc: Hans Johnson; ITK
> Subject: [Insight-developers] Re: Limitation in MetaIO
> causing problems initkNeuralNetworkFileReader/Writer
>
> Seems like the metaio library is being misused. The fields are only
> intended for holding tag/value pairs. Reading/writing large
> amounts of
> data should done directly to the file or to an external file.
>
> Look at how matrix, arrays, and images are read/written -
> first read the
> tag/value pairs that specify how much data should be
> read/written, and
> then directly read/write the data from the file after the tag/value
> pairs. Also, it should support writing those arrays as ascii
> or binary
> data.
>
> It could be done the way you suggested, but that was not the
> design for
> metaIO.
>
> Hope this helps,
> Stephen
>
> kent williams wrote:
> > I logged this as a bug: http://www.itk.org/Bug/view.php?id=5545
> >
> > The bug report has more details, but there are 2
> limitations with MetaIO, in
> > the context of the NeuralNet I/O classes: The
> MET_FieldRecordType is a C
> > structure, not a C++ class, and it contains a value array
> with a fixed size
> > of 255.
> >
> > I'm testing a very quick and dirty fix -- simply enlarging
> the value array
> > so that Hans can move forward with his NeuralNetwork code
> testing*, but
> > MetaIO maybe deserves some new scrutiny.
> >
> > Given that it's been around for years in ITK, I can't think
> of what I'd do
> > that wouldn't break backwards compatibility. The obvious
> thing to do would
> > be to move MET_FieldRecordType to a C++ class, make the value array
> > resizable, etc. Any code depending on the current state of
> play would
> > break.
> >
> >
> > * and putting a test in MET_InitWriteField so it won't
> scribble all over
> > memory. There are, as I count them, 4 separate potential
> buffer overruns in
> > that function.
> >
> >
>
> --
> =============================================================
> Stephen R. Aylward, Ph.D.
> Chief Medical Scientist
> Kitware, Inc. - Chapel Hill Office
> http://www.kitware.com
> Phone: (518)371-3971 x300
> _______________________________________________
> Insight-developers mailing list
> Insight-developers at itk.org
> http://www.itk.org/mailman/listinfo/insight-developers
>
More information about the Insight-developers
mailing list