On 09/01/11 11:40, sairamesh raghuraman wrote:
Hi...
As of now, I am using ALGLIB....it has routines for almost all the operations i need for my project...The only reason i am asking for a library that can handle multi-dimensional arrays is to reduce the complexity of code a little bit. (which with those operations are complex anyway)..But as one of commented, the operations are for 2d matrices..And the application is raw image processing concerned with MRI...and here in MRI, the number of dimensions can go upto 7 or 8 in a matrix (rows, columns, channels, sets, echoes, phases, averages, measurements, partitions, slices...and it can go on)..with the datalength sometimes being, 1024 x 1024 x 32 x 10 x 5 x 20 x 20 x 30. (this is actually an extreme case)..but usually standard datasets can be easily 512 x 512 x 32 x 20.. so in this library (ALGLIB) to handle such datasets, which I receive from the scanner, i put them all in a huge 2D matrix..and access them using routines, having for loops..and this is getting more complex with larger dimensions..
thanks and regards Ramesh
Another post: http://thread.gmane.org/gmane.comp.lib.boost.user/63640/focus=63662 was also asking about medical image processing. Maybe you and the author of that other post could collaborate. In that post he was wanting to use variants because the number of dimensions was not known until runtime. Is that your situation? If so then you might be interested in this: http://svn.boost.org/svn/boost/sandbox/variadic_templates/sandbox/array_dyn/ which, unlike multi_array, allows the dimensions to be specified at runtime and I don't think would suffer as much rumtime overhead as Alle's incomplete attempt to use variants. HTH. -regards, Larry