Re: How to specify the data-range with Import
- To: mathgroup at smc.vnet.net
- Subject: [mg122835] Re: How to specify the data-range with Import
- From: Oliver Ruebenkoenig <ruebenko at wolfram.com>
- Date: Fri, 11 Nov 2011 07:33:27 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <201111110953.EAA08442@smc.vnet.net>
I filed this as a bug, thanks Patrick.
Oliver
On Fri, 11 Nov 2011, Patrick Scheibe wrote:
> Hi,
>
> following (old) example of a multi-image
>
> img = ColorConvert[ExampleData[{"TestImage", "Lena"}], "Grayscale"];
> Export["lena_multi.tif", Table[img, {10}], "TIFF"];
>
> With Import one can now specify that only the "Data" of the first 3
> images are required:
>
> In[45]:= Import["lena_multi.tif", {"Data", {1, 2, 3}}] // Dimensions
>
> Out[45]= {3, 512, 512}
>
> works like a charm. But trying to import 50 of say 1000 images is
> slightly cumbersome this way. And now the fun starts:
>
> Import["lena_multi.tif", {"Data", Range[3]}] // Dimensions
>
> gives
>
> Import::noelem: The Import element "FrameNum" is not present when
> importing as TIFF. >>
>
> maybe Import has some Hold attribute (which it *doesn't*)
>
> Import["lena_multi.tif", Evaluate[{"Data", Range[3]}]] // Dimensions
>
> doesn't work
>
> With[{range = Range[3]},
> Import["lena_multi.tif", {"Data", range}] // Dimensions
> ]
>
> doesn't work. And so on and so on.. Luckily, we this very intuitive
> construct
>
> In[50]:= Release[
> Hold[Import["tmp/lena_multi.tif", {"Data", range}]] /.
> range -> Range[3]] // Dimensions
>
> Out[50]= {3, 512, 512}
>
>
> Please, could someone enlighten me?
>
> Cheers
> Patrick
>
> PS: My system here is Linux-x86-64 with Ubuntu 10.04 and Mathematica 8.0.4
>
>
>
>
>
--
- References:
- How to specify the data-range with Import
- From: Patrick Scheibe <pscheibe@trm.uni-leipzig.de>
- How to specify the data-range with Import