-------- Исходное сообщение --------
Тема: Re: [gdal-dev] Creating a VRT dataset from overviews in C++
Дата: Thu, 10 May 2012 23:58:53 +0400
От: Dmitry Baryshnikov <poli...@mail.ru>
Кому: Thomas Sevaldrud <tho...@silentwings.no>
10.05.2012 23:14, Thomas Sevaldrud написал:
Hi Dmitry, and thanks for your answer!
Hi Thomas!
I was actually looking at this patch earlier today, but I also wanted
to see if I could solve it without patching.
Will this patch be included in the official source?
My patch needs some refactoring and testing on python bindings. The work
is going on , but not so fast as I wish. As I finished and commit my
code, It'll be some testing period and than fixes will be accepted.
Is it possible to do it the way I described in the previous mail?
Yes, you can try to warp and overview images (bands). You can get an
overview of needed level from GDALRasterBand Class via GetOverview (int)
method, but than you need to work on band basis and mixed them in colour
image by yourself.
Cheers,
Thomas
On Thu, May 10, 2012 at 7:11 PM, Dmitry Baryshnikov <poli...@mail.ru
<mailto:poli...@mail.ru>> wrote:
10.05.2012 19:03, tseval написал:
Hi,
I'm trying to cut and reproject a large image with overviews using the c++
api. This runs extremely slow when I produce highly downsampled cutouts
covering large areas of the original image.
I understand the the Warp API doesn't use the overviews when resampling, so
I wanted to make a temporary dataset from one of the downscaled overviews
and do the warping on this dataset instead.
First of all, is this a sensible way of doing things? If so, what driver
should I use? I guess VRT? I have been trying to create a VRT by doing
something like this:
double scaleX = (double)ovrW/origW;
double scaleY = (double)ovrH/origH;
GDALDataset* vrtDS = vrtDriver->Create("", ovrW, ovrH, _numBands,
_dataType, NULL);
GDALSetProjection(vrtDS, _srcProjectionWKT);
double geoTransform[6];
srcDS->GetGeoTransform(geoTransform);
geoTransform[XFM_PIXEL_SIZE_EW] =
scaleX*geoTransform[XFM_PIXEL_SIZE_EW];
geoTransform[XFM_PIXEL_SIZE_NS] =
scaleY*geoTransform[XFM_PIXEL_SIZE_NS];
vrtDS->SetGeoTransform(geoTransform);
But how am I supposed to set the bands in the VRT from the downscaled
overview bands in the original image?
Any help on this would be greatly appreciated :)
--
View this message in
context:http://osgeo-org.1560.n6.nabble.com/Creating-a-VRT-dataset-from-overviews-in-C-tp4965891.html
Sent from the GDAL - Dev mailing list archive at Nabble.com.
_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org <mailto:gdal-dev@lists.osgeo.org>
http://lists.osgeo.org/mailman/listinfo/gdal-dev
Hi,
You can try to use this patch to enable overviews in VRT
http://trac.osgeo.org/gdal/ticket/2076
or waits as I accomplish my work on fixing this
situation.<http://trac.osgeo.org/gdal/ticket/2076>
Best regards,
Dmitry
_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org <mailto:gdal-dev@lists.osgeo.org>
http://lists.osgeo.org/mailman/listinfo/gdal-dev
Best regards,
Dmitry
_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/gdal-dev