Mosaicking a folder of TIFF files that includes 1-D horizontal strips [message #91544] |
Mon, 27 July 2015 15:11  |
Adam Erickson
Messages: 8 Registered: July 2015
|
Junior Member |
|
|
Hi Everyone,
I'm working on mosaicking a bunch of single-band TIFF integer files stored in a folder. The TIFF files are a complete mosaic of the area. However, mosaicking results in black horizontal bars of missing data across the landscape. Upon further inspection, these bands appear to be the result of TIFF files that are one-dimensional strips, which fail to load for mosaicking (the 'file not 2D/3D' error). How can I include this data in my final mosaics?
Cheers,
Adam
|
|
|
|
Re: Mosaicking a folder of TIFF files that includes 1-D horizontal strips [message #91546 is a reply to message #91545] |
Tue, 28 July 2015 10:14   |
Adam Erickson
Messages: 8 Registered: July 2015
|
Junior Member |
|
|
On Tuesday, July 28, 2015 at 2:14:12 AM UTC-7, superchromix wrote:
> On Tuesday, July 28, 2015 at 12:11:24 AM UTC+2, Adam Erickson wrote:
>> Hi Everyone,
>>
>> I'm working on mosaicking a bunch of single-band TIFF integer files stored in a folder. The TIFF files are a complete mosaic of the area. However, mosaicking results in black horizontal bars of missing data across the landscape. Upon further inspection, these bands appear to be the result of TIFF files that are one-dimensional strips, which fail to load for mosaicking (the 'file not 2D/3D' error). How can I include this data in my final mosaics?
>>
>> Cheers,
>>
>> Adam
>
> which IDL routine are you using to read the TIFF files?
ENVI.OpenRaster() Perhaps read_tiff() would work better?
|
|
|
Re: Mosaicking a folder of TIFF files that includes 1-D horizontal strips [message #91547 is a reply to message #91546] |
Tue, 28 July 2015 11:20   |
Adam Erickson
Messages: 8 Registered: July 2015
|
Junior Member |
|
|
On Tuesday, July 28, 2015 at 10:14:58 AM UTC-7, Adam Erickson wrote:
> On Tuesday, July 28, 2015 at 2:14:12 AM UTC-7, superchromix wrote:
>> On Tuesday, July 28, 2015 at 12:11:24 AM UTC+2, Adam Erickson wrote:
>>> Hi Everyone,
>>>
>>> I'm working on mosaicking a bunch of single-band TIFF integer files stored in a folder. The TIFF files are a complete mosaic of the area. However, mosaicking results in black horizontal bars of missing data across the landscape. Upon further inspection, these bands appear to be the result of TIFF files that are one-dimensional strips, which fail to load for mosaicking (the 'file not 2D/3D' error). How can I include this data in my final mosaics?
>>>
>>> Cheers,
>>>
>>> Adam
>>
>> which IDL routine are you using to read the TIFF files?
>
> ENVI.OpenRaster() Perhaps read_tiff() would work better?
Yep, they open with read_tiff(). Not only vectors, but also missing data...
|
|
|
Re: Mosaicking a folder of TIFF files that includes 1-D horizontal strips [message #91558 is a reply to message #91547] |
Wed, 29 July 2015 12:24   |
Adam Erickson
Messages: 8 Registered: July 2015
|
Junior Member |
|
|
On Tuesday, July 28, 2015 at 11:20:33 AM UTC-7, Adam Erickson wrote:
> On Tuesday, July 28, 2015 at 10:14:58 AM UTC-7, Adam Erickson wrote:
>> On Tuesday, July 28, 2015 at 2:14:12 AM UTC-7, superchromix wrote:
>>> On Tuesday, July 28, 2015 at 12:11:24 AM UTC+2, Adam Erickson wrote:
>>>> Hi Everyone,
>>>>
>>>> I'm working on mosaicking a bunch of single-band TIFF integer files stored in a folder. The TIFF files are a complete mosaic of the area. However, mosaicking results in black horizontal bars of missing data across the landscape. Upon further inspection, these bands appear to be the result of TIFF files that are one-dimensional strips, which fail to load for mosaicking (the 'file not 2D/3D' error). How can I include this data in my final mosaics?
>>>>
>>>> Cheers,
>>>>
>>>> Adam
>>>
>>> which IDL routine are you using to read the TIFF files?
>>
>> ENVI.OpenRaster() Perhaps read_tiff() would work better?
>
> Yep, they open with read_tiff(). Not only vectors, but also missing data...
Skipped those files with a FOR loop, which solved the problem. Mosaic looks lovely now. Thank you.
|
|
|
Re: Mosaicking a folder of TIFF files that includes 1-D horizontal strips [message #91583 is a reply to message #91558] |
Sun, 02 August 2015 11:50   |
Bahjat A
Messages: 3 Registered: August 2015
|
Junior Member |
|
|
On Wednesday, July 29, 2015 at 8:24:32 PM UTC+1, Adam Erickson wrote:
> On Tuesday, July 28, 2015 at 11:20:33 AM UTC-7, Adam Erickson wrote:
>> On Tuesday, July 28, 2015 at 10:14:58 AM UTC-7, Adam Erickson wrote:
>>> On Tuesday, July 28, 2015 at 2:14:12 AM UTC-7, superchromix wrote:
>>>> On Tuesday, July 28, 2015 at 12:11:24 AM UTC+2, Adam Erickson wrote:
>>>> > Hi Everyone,
>>>> >
>>>> > I'm working on mosaicking a bunch of single-band TIFF integer files stored in a folder. The TIFF files are a complete mosaic of the area. However, mosaicking results in black horizontal bars of missing data across the landscape. Upon further inspection, these bands appear to be the result of TIFF files that are one-dimensional strips, which fail to load for mosaicking (the 'file not 2D/3D' error). How can I include this data in my final mosaics?
>>>> >
>>>> > Cheers,
>>>> >
>>>> > Adam
>>>>
>>>> which IDL routine are you using to read the TIFF files?
>>>
>>> ENVI.OpenRaster() Perhaps read_tiff() would work better?
>>
>> Yep, they open with read_tiff(). Not only vectors, but also missing data...
>
> Skipped those files with a FOR loop, which solved the problem. Mosaic looks lovely now. Thank you.
Hi Adams,
Actually, I saw your question by chance as I have almost the same problem.
I have several JP2000 images, I can read them correctly with IDL class 'IDLffJPEG2000', and I am looking for a function, code in IDL to do so. Any tips are more than welcome.
BTW, I am not a user of ENVI.
Thanks in advance,
|
|
|
Re: Mosaicking a folder of TIFF files that includes 1-D horizontal strips [message #91631 is a reply to message #91544] |
Fri, 07 August 2015 05:21   |
Bahjat A
Messages: 3 Registered: August 2015
|
Junior Member |
|
|
On Thursday, August 6, 2015 at 7:42:03 PM UTC+1, Adam Erickson wrote:
> On Sunday, August 2, 2015 at 11:50:41 AM UTC-7, Bahjat A wrote:
>> On Wednesday, July 29, 2015 at 8:24:32 PM UTC+1, Adam Erickson wrote:
>>> On Tuesday, July 28, 2015 at 11:20:33 AM UTC-7, Adam Erickson wrote:
>>>> On Tuesday, July 28, 2015 at 10:14:58 AM UTC-7, Adam Erickson wrote:
>>>> > On Tuesday, July 28, 2015 at 2:14:12 AM UTC-7, superchromix wrote:
>>>> > > On Tuesday, July 28, 2015 at 12:11:24 AM UTC+2, Adam Erickson wrote:
>>>> > > > Hi Everyone,
>>>> > > >
>>>> > > > I'm working on mosaicking a bunch of single-band TIFF integer files stored in a folder. The TIFF files are a complete mosaic of the area. However, mosaicking results in black horizontal bars of missing data across the landscape. Upon further inspection, these bands appear to be the result of TIFF files that are one-dimensional strips, which fail to load for mosaicking (the 'file not 2D/3D' error). How can I include this data in my final mosaics?
>>>> > > >
>>>> > > > Cheers,
>>>> > > >
>>>> > > > Adam
>>>> > >
>>>> > > which IDL routine are you using to read the TIFF files?
>>>> >
>>>> > ENVI.OpenRaster() Perhaps read_tiff() would work better?
>>>>
>>>> Yep, they open with read_tiff(). Not only vectors, but also missing data...
>>>
>>> Skipped those files with a FOR loop, which solved the problem. Mosaic looks lovely now. Thank you.
>>
>> Hi Adams,
>>
>> Actually, I saw your question by chance as I have almost the same problem.
>> I have several JP2000 images, I can read them correctly with IDL class 'IDLffJPEG2000', and I am looking for a function, code in IDL to do so. Any tips are more than welcome.
>> BTW, I am not a user of ENVI.
>>
>> Thanks in advance,
>
> Hi Bahjat,
>
> What are you trying to accomplish and what is the issue you are running into?
>
> Cheers,
>
> Adam
Hi Adam,
I'd like to recompose (mosaicing) the scene of these images (Tiles). I know the Upper-Left coordinates in UTM reference-sys.
I use IDL 8.2 and IDL 8.4.
Many thanks in advance,
cheers,
Bahjat.
|
|
|
Re: Mosaicking a folder of TIFF files that includes 1-D horizontal strips [message #91748 is a reply to message #91631] |
Wed, 19 August 2015 18:21   |
Adam Erickson
Messages: 8 Registered: July 2015
|
Junior Member |
|
|
On Friday, August 7, 2015 at 5:21:05 AM UTC-7, balha...@gmail.com wrote:
> On Thursday, August 6, 2015 at 7:42:03 PM UTC+1, Adam Erickson wrote:
>> On Sunday, August 2, 2015 at 11:50:41 AM UTC-7, Bahjat A wrote:
>>> On Wednesday, July 29, 2015 at 8:24:32 PM UTC+1, Adam Erickson wrote:
>>>> On Tuesday, July 28, 2015 at 11:20:33 AM UTC-7, Adam Erickson wrote:
>>>> > On Tuesday, July 28, 2015 at 10:14:58 AM UTC-7, Adam Erickson wrote:
>>>> > > On Tuesday, July 28, 2015 at 2:14:12 AM UTC-7, superchromix wrote:
>>>> > > > On Tuesday, July 28, 2015 at 12:11:24 AM UTC+2, Adam Erickson wrote:
>>>> > > > > Hi Everyone,
>>>> > > > >
>>>> > > > > I'm working on mosaicking a bunch of single-band TIFF integer files stored in a folder. The TIFF files are a complete mosaic of the area. However, mosaicking results in black horizontal bars of missing data across the landscape. Upon further inspection, these bands appear to be the result of TIFF files that are one-dimensional strips, which fail to load for mosaicking (the 'file not 2D/3D' error). How can I include this data in my final mosaics?
>>>> > > > >
>>>> > > > > Cheers,
>>>> > > > >
>>>> > > > > Adam
>>>> > > >
>>>> > > > which IDL routine are you using to read the TIFF files?
>>>> > >
>>>> > > ENVI.OpenRaster() Perhaps read_tiff() would work better?
>>>> >
>>>> > Yep, they open with read_tiff(). Not only vectors, but also missing data...
>>>>
>>>> Skipped those files with a FOR loop, which solved the problem. Mosaic looks lovely now. Thank you.
>>>
>>> Hi Adams,
>>>
>>> Actually, I saw your question by chance as I have almost the same problem.
>>> I have several JP2000 images, I can read them correctly with IDL class 'IDLffJPEG2000', and I am looking for a function, code in IDL to do so. Any tips are more than welcome.
>>> BTW, I am not a user of ENVI.
>>>
>>> Thanks in advance,
>>
>> Hi Bahjat,
>>
>> What are you trying to accomplish and what is the issue you are running into?
>>
>> Cheers,
>>
>> Adam
>
> Hi Adam,
>
> I'd like to recompose (mosaicing) the scene of these images (Tiles). I know the Upper-Left coordinates in UTM reference-sys.
> I use IDL 8.2 and IDL 8.4.
>
> Many thanks in advance,
> cheers,
> Bahjat.
Hi Bahjat,
Sorry for the slow reply. I haven't done this in pure IDL, but if you are working with GeoTIFF files without ENVI, then I recommend using the Coyote Graphics (cg) library function cgGeoMosaic: https://www.idlcoyote.com/programs/cggeomosaic.pro
I also recommend reading the GeoTIFF specification to learn what the fields represent. Basically, you need to remap the images from raster space into projection space by using the model tie point and pixel scale tags, along with the matrix dimensions. This would need to be applied iteratively on each image in the folder, using something like the reform() function, then appended to a single new large array. Re-projecting is different, as you'd probably use congrid() for resampling/interpolation too. Depending on the mosaic size (total array dimensions multiplied by the bit depth and number of bands), use a file format designed to handle it. If you had less RAM than the final mosaic size, things get tricky, as you'd need to write the images out in chunks to an HDF5 file, for example.
For simplicity, cgGeoMosaic should accomplish what you need, but I'd be curious to see other pure IDL methods too.
Cheers,
Adam
|
|
|
Re: Mosaicking a folder of TIFF files that includes 1-D horizontal strips [message #91802 is a reply to message #91748] |
Sat, 29 August 2015 12:47  |
Bahjat A
Messages: 3 Registered: August 2015
|
Junior Member |
|
|
On Thursday, August 20, 2015 at 2:21:51 AM UTC+1, Adam Erickson wrote:
> On Friday, August 7, 2015 at 5:21:05 AM UTC-7, balha...@gmail.com wrote:
>> On Thursday, August 6, 2015 at 7:42:03 PM UTC+1, Adam Erickson wrote:
>>> On Sunday, August 2, 2015 at 11:50:41 AM UTC-7, Bahjat A wrote:
>>>> On Wednesday, July 29, 2015 at 8:24:32 PM UTC+1, Adam Erickson wrote:
>>>> > On Tuesday, July 28, 2015 at 11:20:33 AM UTC-7, Adam Erickson wrote:
>>>> > > On Tuesday, July 28, 2015 at 10:14:58 AM UTC-7, Adam Erickson wrote:
>>>> > > > On Tuesday, July 28, 2015 at 2:14:12 AM UTC-7, superchromix wrote:
>>>> > > > > On Tuesday, July 28, 2015 at 12:11:24 AM UTC+2, Adam Erickson wrote:
>>>> > > > > > Hi Everyone,
>>>> > > > > >
>>>> > > > > > I'm working on mosaicking a bunch of single-band TIFF integer files stored in a folder. The TIFF files are a complete mosaic of the area. However, mosaicking results in black horizontal bars of missing data across the landscape. Upon further inspection, these bands appear to be the result of TIFF files that are one-dimensional strips, which fail to load for mosaicking (the 'file not 2D/3D' error). How can I include this data in my final mosaics?
>>>> > > > > >
>>>> > > > > > Cheers,
>>>> > > > > >
>>>> > > > > > Adam
>>>> > > > >
>>>> > > > > which IDL routine are you using to read the TIFF files?
>>>> > > >
>>>> > > > ENVI.OpenRaster() Perhaps read_tiff() would work better?
>>>> > >
>>>> > > Yep, they open with read_tiff(). Not only vectors, but also missing data...
>>>> >
>>>> > Skipped those files with a FOR loop, which solved the problem. Mosaic looks lovely now. Thank you.
>>>>
>>>> Hi Adams,
>>>>
>>>> Actually, I saw your question by chance as I have almost the same problem.
>>>> I have several JP2000 images, I can read them correctly with IDL class 'IDLffJPEG2000', and I am looking for a function, code in IDL to do so. Any tips are more than welcome.
>>>> BTW, I am not a user of ENVI.
>>>>
>>>> Thanks in advance,
>>>
>>> Hi Bahjat,
>>>
>>> What are you trying to accomplish and what is the issue you are running into?
>>>
>>> Cheers,
>>>
>>> Adam
>>
>> Hi Adam,
>>
>> I'd like to recompose (mosaicing) the scene of these images (Tiles). I know the Upper-Left coordinates in UTM reference-sys.
>> I use IDL 8.2 and IDL 8.4.
>>
>> Many thanks in advance,
>> cheers,
>> Bahjat.
>
> Hi Bahjat,
>
> Sorry for the slow reply. I haven't done this in pure IDL, but if you are working with GeoTIFF files without ENVI, then I recommend using the Coyote Graphics (cg) library function cgGeoMosaic: https://www.idlcoyote.com/programs/cggeomosaic.pro
>
> I also recommend reading the GeoTIFF specification to learn what the fields represent. Basically, you need to remap the images from raster space into projection space by using the model tie point and pixel scale tags, along with the matrix dimensions. This would need to be applied iteratively on each image in the folder, using something like the reform() function, then appended to a single new large array. Re-projecting is different, as you'd probably use congrid() for resampling/interpolation too. Depending on the mosaic size (total array dimensions multiplied by the bit depth and number of bands), use a file format designed to handle it. If you had less RAM than the final mosaic size, things get tricky, as you'd need to write the images out in chunks to an HDF5 file, for example.
>
> For simplicity, cgGeoMosaic should accomplish what you need, but I'd be curious to see other pure IDL methods too.
>
> Cheers,
>
> Adam
Hi Adam,
Many thanks for your input, and these helpful suggestions.
Actually, I am aware of cgGeoMosaic, but as my images are in JP2000, I would like to avoid the geotiff conversion.
However, it is maybe the only way to go through this issue!!
cheers,
Bahjat.
|
|
|