Click here to Skip to main content
15,881,248 members
Articles / Programming Languages / C#

Grandiose Projects 4: Geographic Information Systems

Rate me:
Please Sign up or sign in to vote.
4.64/5 (7 votes)
22 Feb 2010CPOL5 min read 28.5K   3K   27   2
GIS applications of the universal engineering framework.

Useful links

Image 1

1. Introduction

Universal framework for science and engineering supports advanced math. Additionally, the framework supports digital image processing. Both of these features are useful for GIS. This article shows how the framework can be used for GIS.

2. Background

GIS contains a lot of tasks related to digital image processing. One of task is definition of area of snow. The following is a picture provided by NASA Earth observations.

Image 2

Filtration can be used for definition of area of snow. Besides digital image processing, GIS includes problems related to comparison of several images. This comparison is useful to study about Global warming problems and/or deforestation problems. Here we'll consider filtering and comparison of images.

3 Samples

3.1 Filtration

Let us consider a problem of definition of area of snow. First of all, we need a clear picture of snow. Such a picture can be obtained by filtration of the above picture. The scheme of filtration is presented in the following picture:

Image 3

The Earth object contains the prototype image. The Result of processing object contains the result of filtration. The Formulas object contains the filtration math. Here, filtration math is defined by the following expression:

Image 4

Where r, g, and b are intensities of red, green, and blue colors, respectively. The constant a is the border value. x and y are intensities of "snow exists" or "snow does not exist", respectively. The filtration result is presented below:

Image 5

3.2 Web based application

The previous sample requires downloading the GIS image from the Internet and following its processing. Present day applications use Internet directly without explicit downloads. So, the framework contains a component which can use Internet images directly. The following picture presents the properties of this component:

Image 6

We can change the URL of the image using the text editor at the top of the presented form. Using this component, we can also consider filtering. But, we use the Internet image instead of the local image.

The size of this file is substantially lower then the size of the file in section 3.1.

3.3 Comparison of images

Let us consider a sample of comparison of two images. We have two images with the following URLs:

These images are presented below:

Image 7Image 8

To compare them effectively, we need a strong mathematical comparison. So we should consider a picture as a math object. A picture has a lot of math properties. The width and height of a picture are some of these properties. In my article devoted digital image processing, pictures are being considered as statistical selections. A picture can be defined by three functions of coordinate variables x and y of a pixel. These functions correspond to the red, green, and blue colors, respectively. So, we can compare these functions. It is clear that we can generate a lot of comparison algorithms. Indeed, a comparison algorithm depends on the purpose. The purpose of this article is exhibition of methods. So, we'll consider a simple algorithm which compares the intensity of red color. This algorithm is presented in the following picture:

Image 9

Objects Picture 1 and Picture 2 contain the pictures which we would like to compare. Both P 1 and P 2 objects contain color functions of Picture 1 and Picture 2, respectively. The Input object contains the input coordinates x and y of both P 1 and P 2. The Formula_1 of Input corresponds to the x coordinate, and Formula_2 of Input corresponds to the y coordinate. Outputs of P 1 and P 2 are being used in the Result component. Properties of the Result component are presented below:

Image 10

This formula has the following meaning. x is the first output of P 1 or the function of red color intensity. y is a similar parameter of P 2 (it is not visible in this picture). a and b are constants. So this function has a linear dependence on the difference of intensities of red color of Picture 1 and Picture 2. This formula is used by the Compare object. The Compare object has the following properties:

Image 11

These properties have the following meaning. Coordinates x and y of the Result picture correspond to the "constants" (aliases) of the Input object. All colors (red, green, and blue) of the result picture correspond to Formula_1 of the Result object. The Input object has the following properties:

Image 12

Inputs of this objects are x and y. Outputs of this object are Formula_1 and Formula_2. What role has this object? This object closes the backward loop. The result picture is being calculated step by step. During these steps, coordinates x, y have different values. These values are set to x, y of the Input object, and so these values are set to Formula_1 and Formula_2 of Input. Then, Formula_1 and Formula_2 are being used by P 1 and P 2. The outputs of P 1 and P 2 are then used by the Result object, and the output of Result is used in the result picture. Thus, we have a closed loop.

The result picture is presented below:

Image 13

This sample requires 2 GB of RAM.

Points of interest

To say the truth, I know nothing much about GIS. I can say the same about 90% of my developments.

Conclusion

In 2009, when I wrote "The incredible machine" article, I had been asked: "Could this software be used for weather prediction". I had promised to write an article related to meteorology. So this article can be regarded as an article related to meteorology. The software needs good samples. I am waiting for some good samples from readers. Maybe, I'll extend this article with new samples in future. Any suggestions would be useful.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Architect
Russian Federation Russian Federation
Ph. D. Petr Ivankov worked as scientific researcher at Russian Mission Control Centre since 1978 up to 2000. Now he is engaged by Aviation training simulators http://dinamika-avia.com/ . His additional interests are:

1) Noncommutative geometry

http://front.math.ucdavis.edu/author/P.Ivankov

2) Literary work (Russian only)

http://zhurnal.lib.ru/editors/3/3d_m/

3) Scientific articles
http://arxiv.org/find/all/1/au:+Ivankov_Petr/0/1/0/all/0/1

Comments and Discussions

 
GeneralMy vote of 5 Pin
Manoj Kumar Choubey14-Mar-12 23:22
professionalManoj Kumar Choubey14-Mar-12 23:22 
GeneralBroken Link on NASA Iamge Pin
ProtoBytes22-Feb-10 23:27
ProtoBytes22-Feb-10 23:27 
I liked the article but do not understand how the fromul fits into the application. I see where you describe the formulas but the development and integration of the formula is not covered as far as I could tell.

Fix the probken like and I'll revote!

Add how to create and design formulas for this application and I'll vote a 5!

~TheArch

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.