Re: [Geotools-gt2-users] [Geotools-devel] WCS Image mosaicking problem and image utils question

2006-11-16 Thread Olivier Doucet

Thanks a lot for these valuable tips :-)

I haven't tried yet as I have been busy by other stuff - porting my code to
v2.3x - but I give you some feedback soon.

I am really looking forward experiencing real performance with your coverage
tools! I have no doubts about it ;-)

Olivier



2006/11/15, Simone Giannecchini [EMAIL PROTECTED]:


On 11/15/06, Olivier Doucet [EMAIL PROTECTED] wrote:
 Ciao Simone,

 2006/11/14, Simone Giannecchini [EMAIL PROTECTED]:
  Ciao Olivier,
  you need to specify a wild card, something like
  -s /usr/simone/work/data/  -w *.tiff -name imm


 Thanks, it works now!

Any doubts? :-)

Really, which versin of geotools are you playing with? I hope 2.3.x...


  if you want the mosaic builder to be able to find the correct files
  you want to index.
 
  Aside from this, if you have one single tiff which is not too big (up
  to 300-400 mb) I recommend you use the OverviewsEmbedder which just
  embeds overviews inside the same file.


 I tried the mosaic and pyramid utils on one small file (230 Mb) but I'll
 eventually use several files of around 1.2 Gb each, so it sounds like
the
 pyramid is a better idea.
 As I understand it, the overview isn't divided into tiles, is that
correct?
 Which reader should be used to display it?


The OverviewsEmbedder just embeds overviews inside tiff and geotiff,
You need to use the WorldImageReader or the GeoTiffReader to read this
single files afterwards.

Anyway, if you wish to build a pyramid starting with a few very big
files I suggest these steps:

1Build a mosaic for the input files.
2Use the CoverageTiler and tile the mosaic you just created. This way
you will split the mosaic into smaller tiles that will perform much
faster than a couple of huge coverages.
3Rebuild the mosaic for the first level
4Build the successive levels.

Smaller tiles (1-1.5 mb) are very fast inside the GeoServer since we
use multiple threads (actually I think it is about time to make the
number of threads configurable) to load them.


 Also concerning the PyramidBuilder options, I have a few questions :

 -t (--tiled_dimension)

 Is there a recommended/default value?
 How to estimate the right dimension?

There is no magic number. More or less make tiles as big as needed to
have each one of them around 1mb. To estimate the size more or less do
as follows

num_bands*tile_width*tile_height*size_of_data_type/8

For an rgb byte tile of 512x512 you get 3*512*512=768k which is not
bad. I usually use 800*800 though (I dunno why :-) )



 Can this value be different from one level of the pyramid to another?

Sure thing. It only has a meaning internal to each level. It basically
controls the number of tiles you get.

There is only one thing that must not change between two levels, the
envelope covered.



 -c (--cache_size)

 Is it just a parameter to optimize the use of the resources when
building
 the pyramid or does this affect the final product of the PyramidBuilder?
 Could you give an example of value here.


This element controls the TileCache size used for building the
pyramid. The bigger it is the faster the tool will perform because it
will cache successive tiles in memory. Use at least 64 mb, I usually
use 400 mb which big raster.


 Finally, I'd need more details about the properties file to provide at
the
 last step of pyramid building.
 Your example raises two questions:

   #
   #Mon Aug 21 22:23:27 CEST 2006
   #name of the coverage
   Name=ikonos
   #different resolution levels available in each mosaic
   Levels=1.2218682749859724E-5,9.220132503102996E-6
 2.4428817977683634E-5,1.844026500620314E-5
 4.8840552865873626E-5,3.686350299024973E-5
 9.781791400307775E-5,7.372700598049946E-5
 1.956358280061555E-4,1.4786360643866836E-4
 3.901787184256844E-4,2.9572721287731037E-4
   #where all the levels reside
   LevelsDirs=0 2 4 8 16 32
   #number of levels availaible
   LevelsNum=5
   #envelope for this pyramid
   Envelope2D=13.398228477973406 ,43.591366397808976
 13.537912459169803,43.67121274528585

 1- How do you get the different resolution levels in the 'Levels'
section?


You can get the resolution levels out of the single levels' properties
file.



 2- LevelsDirs=0 2 4 8 16 32 suggests that we have a 6 level pyramid,
however
 LevelsNum=5... Is it level 0 that doesn't count?


That should be an error! I will check asap. The level number should
match the number of availaible dirs.



 Thank you for your help.

 Olivier



No problem man, thx for your feedback and keep me posted on how things
proceed. Any suggestions on how to improve the tools is highly
appreciated (donations are even more appreciated :-) )


Simone.


  Simone.
 
  On 11/14/06, Olivier Doucet  [EMAIL PROTECTED] wrote:
   Hi Simone,
  
   I am also trying to use the image mosaic  pyramid tools, but
without
   success so far...
  
   If I understand correctly, the build a pyramid out of a single
image.tif

Re: [Geotools-gt2-users] [Geotools-devel] WCS Image mosaicking problem and image utils question

2006-11-15 Thread Olivier Doucet
Ciao Simone,2006/11/14, Simone Giannecchini [EMAIL PROTECTED]:
Ciao Olivier,you need to specify a wild card, something like -s /usr/simone/work/data/-w *.tiff -name immThanks, it works now!
if you want the mosaic builder to be able to find the correct filesyou want to index.Aside from this, if you have one single tiff which is not too big (upto 300-400 mb) I recommend you use the OverviewsEmbedder which just
embeds overviews inside the same file.I tried the mosaic and pyramid utils on one small file (230 Mb) but I'll eventually use several files of around 1.2 Gb each, so it sounds like the pyramid is a better idea. 
As I understand it, the overview isn't divided into tiles, is that correct? Which reader should be used to display it?Also concerning the PyramidBuilder options, I have a few questions :-t (--tiled_dimension)
Is there a recommended/default value? How to estimate the right dimension? Can this value be different from one level of the pyramid to another?-c (--cache_size)Is it just a parameter to optimize the use of the resources when building the pyramid or does this affect the final product of the PyramidBuilder?
Could you give an example of value here.Finally, I'd need more details about the properties file to provide at the last step of pyramid building.Your example raises two questions:  #
  #Mon Aug 21 22:23:27 CEST 2006  #name of the coverage  Name=ikonos  #different resolution levels available in each mosaic  Levels=1.2218682749859724E-5,9.220132503102996E-6
2.4428817977683634E-5,1.844026500620314E-54.8840552865873626E-5,3.686350299024973E-59.781791400307775E-5,7.372700598049946E-51.956358280061555E-4,1.4786360643866836E-43.901787184256844E-4,2.9572721287731037E-4
  #where all the levels reside  LevelsDirs=0 2 4 8 16 32  #number of levels availaible  LevelsNum=5  #envelope for this pyramid  Envelope2D=13.398228477973406
,43.59136639780897613.537912459169803,43.671212745285851- How do you get the different resolution levels in the 'Levels' section?2- LevelsDirs=0 2 4 8 16 32 suggests that we have a 6 level pyramid, however LevelsNum=5... Is it level 0 that doesn't count?
Thank you for your help.OlivierSimone.On 11/14/06, Olivier Doucet 
[EMAIL PROTECTED] wrote: Hi Simone, I am also trying to use the image mosaic  pyramid tools, but without success so far... If I understand correctly, the build a pyramid out of a single 
image.tif file, I first have to use the MosaicIndexBuilder. The folder I give as a parameter contains only 3 files: - image01.tif - image01.tfw - image01.prj A strange thing is,
 at line 238 in MosaicIndexBuilder.java The index of the iteration for (int i = 0; i  numFiles; i++) { is used line 336 for testing whether it is the first time if (i == 0) { we
 have to treat an image. So what if the folder contains non image files and and one of those is iterated first? Then globEnvelope is null when accessed in the else section. Are there any examples on how to use these utils? You refer to geotools
 examples but I couldn't find them... Thank you. Olivier 2006/10/20, Simone Giannecchini  [EMAIL PROTECTED]
:   Ciao Sandor,  sorry for not being able to get to you earleri, but I am constantly 3  days behind schedule with emails.  Read below.   On 10/18/06, Sándor Farkas 
[EMAIL PROTECTED] wrote:   Hi Simone, Im Sándor from Hungary, I have some question about imaging and WCS image
   plugins.   First I asked Alessio and He gave me your address as You are the imaging   expert. I would like to publicate orthophoto GEOTIFF-s with WCS and I ask you to
   help me find the best way for quality/performance optimum. I have 112 pcs (orthophoto) GEOTIFF images , about 107 Mb of size each. I   made them tiled whith
 C:\Progra~1\FWTools1.0.5\bin\tiffcp.exe -w 256 -l 256   65-324-111.tif   65-324-111_t.tif   ... 
  k.and used   c:\Progra~1\FWTools1.0.5\bin\gdaladdo.exe -r average   d:\65-322-   431_t.tif 2 4 8 16 32 64   ...
 k.  then I used   c:\Progra~1\FWTools1.0.5\bin\gdaltindex.exe   Budaors_tiled.shp *.tif  
   To create the mosaic the best thing to do is using the  MosaicIndexBuilder tool you can find at the link below. Otherwise you  would have to manually create the accompanying property file. Iwould
  lik to remarck once again that all the images must have the same  resolution. This constraint could be relaxes but right now I have time  allocated for this taks (unless someone wants it badly and pays for it
  :-) ).   After then, when I made the Image mosaicking coverage and watched it in   UDIG, I saw that all images are malformed which are at the boundary, but
   seems good in the middle, where they have adjacent images. I attached some   pictures to the mail.   What could I do with this?Well, I fixed a bug in the ImageMosaic a couple of days ago, which
  version of geotools,geoserver are you runing?.  For testing I inserted a single image (same as in the mosaicking, with the   same 

Re: [Geotools-gt2-users] [Geotools-devel] WCS Image mosaicking problem and image utils question

2006-11-14 Thread Simone Giannecchini
Ciao Olivier,
you need to specify a wild card, something like
 -s /usr/simone/work/data/  -w *.tiff -name imm

if you want the mosaic builder to be able to find the correct files
you want to index.

Aside from this, if you have one single tiff which is not too big (up
to 300-400 mb) I recommend you use the OverviewsEmbedder which just
embeds overviews inside the same file.



Simone.

On 11/14/06, Olivier Doucet [EMAIL PROTECTED] wrote:
 Hi Simone,

 I am also trying to use the image mosaic  pyramid tools, but without
 success so far...

 If I understand correctly, the build a pyramid out of a single image.tif
 file, I first have to use the MosaicIndexBuilder.
 The folder I give as a parameter contains only 3 files:
 - image01.tif
 - image01.tfw
 - image01.prj

 A strange thing is,

 at line 238 in MosaicIndexBuilder.java
 The index of the iteration for (int i = 0; i  numFiles; i++) {
 is used line 336 for testing whether it is the first time if (i == 0) { we
 have to treat an image.
 So what if the folder contains non image files and and one of those is
 iterated first?
 Then globEnvelope is null when accessed in the else section.

 Are there any examples on how to use these utils? You refer to geotools
 examples but I couldn't find them...

 Thank you.

 Olivier



 2006/10/20, Simone Giannecchini  [EMAIL PROTECTED]:
 
  Ciao Sandor,
  sorry for not being able to get to you earleri, but I am constantly 3
  days behind schedule with emails.
  Read below.
 
  On 10/18/06, Sándor Farkas [EMAIL PROTECTED] wrote:
  
  
   Hi Simone,
  
   Im Sándor from Hungary, I have some question about imaging and WCS image
   plugins.
   First I asked Alessio and He gave me your address as You are the imaging
   expert.
  
   I would like to publicate orthophoto GEOTIFF-s with WCS and I ask you to
   help me find the best way for quality/performance optimum.
  
   I have 112 pcs (orthophoto) GEOTIFF images , about 107 Mb of size each.
 I
   made them tiled whith
  
   C:\Progra~1\FWTools1.0.5\bin\tiffcp.exe -w 256 -l 256
   65-324-111.tif
   65-324-111_t.tif
   ...
  
  
 
  k.
 
   and used
   c:\Progra~1\FWTools1.0.5\bin\gdaladdo.exe -r average
   d:\65-322-
   431_t.tif 2 4 8 16 32 64
   ...
  
 
  k.
 
  
   then I used
   c:\Progra~1\FWTools1.0.5\bin\gdaltindex.exe
   Budaors_tiled.shp *.tif
  
 
  To create the mosaic the best thing to do is using the
  MosaicIndexBuilder tool you can find at the link below. Otherwise you
  would have to manually create the accompanying property file. Iwould
  lik to remarck once again that all the images must have the same
  resolution. This constraint could be relaxes but right now I have time
  allocated for this taks (unless someone wants it badly and pays for it
  :-) ).
 
 
 
 
   After then, when I made the Image mosaicking coverage and watched it in
   UDIG, I saw that all images are malformed which are at the boundary, but
   seems good in the middle, where they have adjacent images. I attached
 some
   pictures to the mail.
   What could I do with this?
  
  Well, I fixed a bug in the ImageMosaic a couple of days ago, which
  version of geotools,geoserver are you runing?.
 
  
   For testing I inserted a single image (same as in the mosaicking, with
 the
   same projection) and it looks good.
 
  Then definitely the you are running into the bug I fixed lately.
 
   Furthermore I realized when I used Image Mosaicking, I didn't see
 gdaladdo-d
   levels.
 
  If you attach the properties files the ImageMosaic plugin uses it to
  exploit embedded overviews.
 
  I know I should find time to write a guide for using the tools, but
  for the moment I have no spare time to spend on this.
 
  
  
   I would like to try WCS Image pyramidal plugin.
   What is the difference between pyramidal images and gdaladdo -d images?
  
 
  The ImagePyramid plugin is thought for being used with multiple mosaic
  at different levels of resolutions.
 
 
   What file should I give in WCS Image pyramidal plugin (shapefile like
   mosaicking plugin or it supports only one file)?
  
  
 
  Please, have a look at the example data provided with geotools. Anyway
  the informations you need to provide are roughly explained in the
  javadoc of the Imagepyramidreader, I am reporting them here for
  simplicity:
 
  This reader is repsonsible for providing access to a pyramid of
  mosaics of georeferenced coverages that are read directly through
  imageio readers, like tiff, pngs, etc...
 
  Specifically this plugin relies on the image mosaic plugin to handle
  each single level of resolutions avaible, hence all the magic is done
  inside the mosaic plugin.
 
  For information on how to build a mosaic, please refere to the
  ImageMosaicReader documentation.
 
  If you are looking for information on how to create a pyramid, here
  you go. The pyramid itself does no magic. All the magic is performed
  by the single mosaic readers that are polled depending on the requeste
  resolution levels. Therefore the first