[Gdal-dev] Suggestion about project on Pocket PC

Charles Wivell charles.wivell at dnr.state.mn.us
Tue Nov 22 11:17:54 EST 2005


Hi all;

I'm writing something like that for the MN DNR (where I work). We do a lot of spot (analog) photography where we need a pilot and a camera operator. What I'm writing uses a BlueTooth GPS to provide location information to the pilot's Pocket PC and the camera operator's Pocket PC. The Pilot's display just shows graphically how to get to the photocenters (in 3D). The camera operator's display shows the photocenters on top of satellite imagery (Landsat). Hopefully, in the future we'll go to digital cameras, then the Pocket PC can automatically fire the cameras.

I'm using embedded VC++ 4.0 to do it. I'm still working on the Pilot's display (almost done), but I have a pretty good idea how to do the operator's display too. I plan on using GeoTiff images loaded onto a SD card (1GB). This card can hold many Landsat images (or a large mosaic), especially since you only care about the VNIR bands. It is pretty easy to hack together a GeoTiff reader (see the GeoTiff spec) to read the part of the image you want into a memory buffer(if the image is not compressed). Once there, you can pretty much do what you want to it.... You can use the GDI or GDI+ libraries to quickly display the image.

In the GeoTiff header there is a file offset to the image data, format of the data (BIP or BSQ) and all the projection information. Using this information you can set your file offset pointer to the data you want to read. I took the USGS GCTP and converted the projections I needed in to C++, so that I can convert from projection parameters to lat/lon or from lat/lon to projection parameters.

Frankly, I only use GDAL to read image data from icky file formats into my memory buffers and then using my own stuff, I do what I need to do and then use GDAL to write the image data out to icky file formats.

As far as vector stuff, my only experience was when I was at EROS and we used the World Vector Shoreline data as a reference to automatically correct AVHRR data and to overlay it onto the AVHRR data. The WVS data was just a list of lat/lons with a flag to indicate whether the point connects to the last point or not.

Hope that helps....?

Chuck Wivell
MN DNR Grand Rapids MN

>>> Frank Warmerdam <warmerdam at pobox.com> 11/22/05 8:26 AM >>>
On 11/22/05, Alper Dinçer <alperd at ce.metu.edu.tr> wrote:
> I am a new member, I have a master thesis about showing satellite images
> with road index on pocket pc with local data.
>
> I choose the .Net compact Framework (CF) platform with C#. I have started
> the project 2 months ago, but I still don't have idea about how to do the
> project. Let me explaing the gaps of my project. The satellite images are
> approximately 2 * 10 MB JPEGs. The problem is image size are too big for
> pocket PCs.
>
> First I thought about tiling the image like google maps or Ka-map, but it is
> very hard to implement on .NET CF without using a mapping server.
>
> Then I searched for reading some part of images, I found JPEG2000 has a
> property of Region of Interest (ROI), but I didn't find a library or API for
> .NET CF.
>
> Now let me ask my questions :
>
> 1-       Which type of image (TIFF, JPEG vs) you are suggesting to use in
> project?

Alper,

It will depend on a variety of factors, but I would think that
using JPEG, but pre-processed into appropriate sized chunks
(and possible with overview layers) would be the easiest approach.
I am assuming you can preprocess your data off the pocket pc,
and then distribute the "optimized" imagery to handheld.

> 2-       Is there any image type that we can read the interested part
> without loading it to the memory?

Various uncompressed formats will support this.  You can also
do this with formats like ECW, JPEG2000 and MrSID as long
as you can get libraries for your platform that support the formats.
The significant advantage of ECW/JP2/SID for your situtation would
be better compression for a desired quality level.

> 3-       Is there anybody porting GDAL to .NET CF?

There is an effort underway to build selected parts of GDAL
under WinCE *and* there is an effort to provide .net bindings
to GDAL that would hopefully port.  However, if you need is just
to display preprocessed RGB images I think GDAL would be
overkill (and perhaps pretty heavy for platform).

Note, the GDAL tools might be very helpful for processing
your images into tiles and overviews on a desktop or server
system before distributing to the pocket pc.

Best regards,
--
---------------------------------------+--------------------------------------
I set the clouds in motion - turn up   | Frank Warmerdam, warmerdam at pobox.com 
light and sound - activate the windows | http://pobox.com/~warmerdam 
and watch the world go round - Rush    | Geospatial Programmer for Rent

_______________________________________________
Gdal-dev mailing list
Gdal-dev at lists.maptools.org 
http://lists.maptools.org/mailman/listinfo/gdal-dev




More information about the Gdal-dev mailing list