Web Photogrammetry – experience and practical examples.

Zygmunt Paszotta

Department  of Photogrammetry and Remote Sensing, Faculty of Geodesy and Land Management, University of Warmia and Mazury, Oczapowskiego 1, 10-719 Olsztyn, Poland, paszotta@uwm.edu.pl

Abstract: Interactive network photogrammetric applications have appeared along with the development of the Internet. An example of an application which can view Earth images and execute measurements of distance in these images is Google Earth. The author claims that it is possible and important to create more advanced photogrammetric network applications. In this paper, the structures (architectures) of selected photogrammetric network applications are presented. In these kinds of applications, internet browsers and Virtual Machine JAVA (VMJ) are applied by users in what are known as web applications. The advantages and limitations of such solutions are also described. The author presents examples of the determination of elements of aerial photo orientation, measurement executions, DTM and an orthophotomap generation via the Internet. It is possible to access these examples from the web site of Work Group IV/5 ISPRS

Keywords: Internet/Web, Photogrammetry, Application, Programming, Web-Based, Learning, Teaching

1. Introduction

One of positive features of the Internet is the possibility of disseminating different types of Earth images. It is a source of popularity for a portal such as Google Earth, Google Maps, Windows Live Search or NASA World Wind. Usually, users neither have suitable photogrametric photos nor appropriate software to process them. In particular, this concerns land surveyors (geodetic), architects, town planners and students, who want to study the basics of photogrammetry. There are internet solutions which can execute photogrammetric tasks interactively by using an internet browser. They are described as Web Photogrammetry.  The ARPENTEUR System is an example of a Web application in which measurements in photogrametric photos belonging to users of this system are possible (Drap, Grussenmeyer 2004). It is aimed mainly for terrain photogrammetric purposes, what is strictly connected with limitations of the storage size of digital images sent to the system. The current data transfer rate is responsible for the fact that import or export (sending, transfer) of the whole aerial photo to or from a server takes a lot of time. Thus, solutions applied, for example, in Google Earth rely on gathering and storing images on the server. Only their fragments are sent to users. It guarantees the attractiveness and high speed of such portals. It should be emphasized that Google Earth is not strictly a web application but a network application. Other example of a Web application created by Google is Google Maps. The author tries to explain the difference between these terms in a further part of the article.

In constructing a Web photogrammetric application, it can be assumed that photos will be stored on different computers – data servers. Software which is necessary to read data from these servers will be installed on another computer called an application server. Moreover, users will be communicating with the application server by means of their own software. The above description presents a distributed application scheme. In view of safety and ease of use, it is assumed that a user is only using Web browser. This solution has enormous didactic merits. It can be supposed that technology based on distributed applications is one of the scientific development paths of image processing methods, along with aerial photos and satellite images. Therefore, it is an object of interest of the ISPRS Commission IV.

2. Architecture of photogrammetric internet applications

The specificity of Web Photogrammetry arises from the fact that all tasks are performed in the computer network. Computers and other hardware such as plotters or printers are connected to exchange data. The photogrammetric data can be stored on expensive, well-equipped servers, but the majority of the program logic and user interface can be done by a client (a program accesses a remote service on another computer by network) on the user PC machine. In general case a client as a program does not have to be executed in the browser’s environment. It can be previously downloaded and installed on computers. Thus, it is called a network application. The concept of Web application includes software that is not installed on a computer but the package is available as an applet by a Web browser.

During construction of photogrametric applications client-server technology and programming in the Java language is particularly useful. The classic scheme of the structure of an application in client-server technology is presented in figure 1.

Figure 1. Architecture of Web photogrammetric application.

We assume that a system customer is only using a web browser. It means that when a web page is request the server can send not only the HTML code of the web page but also small programs – called applets. In principle, a server provides data and a client receives it. However, the assertion that a client initiates communication by making a request and a server performs operations to respond appropriately to it is more correct (Harold 2004). Actions on the server side are conducted by programs called servlets. Applets and servlets are written in the JAVA programming language and compiled to bytecode, which at runtime is either interpreted or compiled to native machine code for execution. In order for  photogrammetric applications to act correctly it is necessary to have a WWW page server, e.g. Apache, and an application server, e.g. Tomcat, to execute servlets. Additionally, users have to install Java Virtual Machine to execute applets on the user’s side.

3. Aspects of network programming for photogrammetric purposes.

Digital photogrammetric workstations are usually equipped with advanced technology. The process of creating internet photogrametric applications is not based on copying or translating the source codes of such systems. It is necessary to build new programs to conduct definite tasks in an overt manner. They ought to fill gaps in of the user’s existing software and take into consideration the properties of the network structure (Harold 2004). All activities connected with programming such applications depend on the type of software on the client side. In the case of Google Earth it is a network application. Although ARPENTEUR runs on a Web browser the users must install some plug-ins. Downloading and permanent installation of software elements requires confidence in the software creators. Organizational and psychological aspects are significant here. In the current case, it is a thin client and it works in browser environment without additional interference to software (programming) or the operating system on a user’s computer. Thus, the creation of such applications requires writing applets and servlets with suitable communication between them (Hunter 2002). It is essential to understand how the HTTP protocol works because it is used in sending requests and answers (Hall 2003). Generally, all forms of communication allows the transfer data of different size and types such as images, elements of photo orientations, measured coordinates and calculation results. Applets should also enable simple service of the application by means of a friendly user interface. On programmer’s side, it means the necessity of using suitable AWT or SWING event service software (Horstmann 2005). Servlets, as software installed on a server have the task of servicing all users. However, it is essential that servlets and applets, through code written in JAVA, must correctly perform certain photogrammetric tasks. Diagrams presented in a further part of the article illustrate this.

The fundamental problem of Web Photogrammetry is also the necessity of transferring whole photographs, which usually require more than 300 megabytes of storage size. Not only is it a technical aspect, but it also involves methods of programming. In the previously mentioned system – ARPENTEUR - user’s files (photographs, coordinates of control point, etc.) must be uploaded on the APENTEUR server. But the image size is limited to a few Mb (Drap, Grussenmeyer 2004). Thus, solutions are needed that ensure to deliver a desirable fragment of photographs via the Internet and visualize it on an appropriate scale on the client side within a few seconds after the fragment was established. In our examples of a Web application servlet extracts and delivers selected fragments of images.

Summing up, the challenges facing programmers are the following:

-         lack of possibility to use disk storage

-         necessity of transmission and processing of fragments of images/photographs

-         low execution speed of programs in JAVA

-         low transfer rate between clients and servers

-         necessity of minimization of applet code

The price which is paid for overcoming these difficulties is the limitation of the functions of internet photogrametric applications. On the other hand users gain benefits such as:

-         no necessity to install and update software

-         reliability and safety of application resulting from running/executing it in the internet browser’s environment

-         small/minimal system equipment requirements

-         possibility of using large data resources

-         high didactic/educational merits/values

-         capability of wide and interactive publication of the results of photogrametric projects.

These advantages to a wide extent satisfy scientific and didactic needs (Pateraki, Heipke2005). Nowadays, it is difficult to demand in order to applications can execute photogrammetric tasks on the photos belonging to users. Aside from data transfer rates, users have many different reasons not to send their photographs to other computers (servers). It is simply illegal in some countries.

The idea of wide dissemination of photogrammetric knowledge over Internet is good in theory, but is not currently commercially profitable. It can be realized by means of various types of applications. At present, there are only a few interactive applications, which allow to execute real photogrammetric tasks. More common is the creation of thematic tutorials or on-line courses. Unfortunately, they usually have limited interactivity (Pateraki 2005). Such solutions are easier and cheaper to produce. In a further part of this publication  examples of web photogrametric applications that may be used for e-learning of Photogrammetry are presented.

4. Internet Photogrammetry based on web photogrammetric application dedicated to aerialphotogrammetry.

The several elementary photogrammetric tasks, which have been made accessible on stand-alone digital workstations to date, have been programmed based on the architecture of web application presented previously. The author of this publication has created a set of web applications for aerial photogrammetry. They are installed on the server of the Department of  Photogrammetry and Remote Sensing of the University of Warmia and Mazury (www.kfit.uwm.edu.pl/zp). Using a browser, the following tasks can be performed:

-         choose and visualize the stereopair of a block of photographs,

-         visualize fragments of othophotomaps and  take measurements on them,

-         determine elements of photograph orientations (Paszotta 2003),

-         visualize a 3D terrain model by means of an anaglyph,

-         measure the pixel coordinates of homologous points, map them automatically and determine their coordinates in a terrain coordinate system,

-         automatically measure terrain coordinates of set of points for generation or verification of a Digital Terrain Model (Paszotta, Szumiło 2006),

-         interactive generate orthophotomaps over  the Internet.

4.1. Transformation from a pixel coordinate system to a fiducial coordinate system.

In order to slightlyshorten the activity diagram it was assumed that the user chooses a photograph stored on the server and the coordinates of fiducial marks are sent him. However, the measurement of the pixel coordinates of fiducial marks is the most essential problem. This process becomes largely automated (fig. 3). All stages of the computational process are shown in figure 4, and the results of the example computation are given in figure 5.

Figure 3. Automatic measurement of the coordinates of fiducial marks.

Figure 4. Activity diagram shows steps in the process of determination of the transformation from a pixel coordinate system to a fiducial coordinate system.

Figure 5. Results of measurements and computation of inner orientation parameters.

4.2 Relative orientation of stereopairs and generation of anaglyphs.

A crucial solution allowing for the Internet realization of this problem is the possibility of using the image pyramids over the Internet. We assumed that such pyramids exist on the server and a pair of photographs was chosen. A sequel to the process of executing the relative orientation of photographs and the anaglyph construction is described with the aid of a diagram in figure 7.

Figure 6. The identification of homologous points in the process of relative orientation of a stereopair.

Figure 7. Activity diagram in the process of relative orientation of a stereopair.

During the process of measurements, coordinates of at least six homologous points are collected in the table (fig. 6). By correctly arranging and carefully

measuring homologous points enough accurate parameters of relative orientation can be fixed in the third or fourth iteration.

Figure 8. Elements of relative orientation in the following iterations.

An anaglyph can be also created over the Internet after running the application and performing the activities described in figure 7. Users do not have to take measurements of homologous points and calculate elements of relative orientation each time they visit the Web site. The set of test data is stored on the server. If users do not execute the relative orientation of a stereopair the epipolar images are constructed based on elements determined previously.

4.3    Determination of terrain coordinates.

         In order to carry the task of determination of terrain coordinates over the Internet, it is necessary to have an opportunity to use fragments of photographs from the different levels of an image pyramid. . The organization and exchange of data between the client and the server should be able to measure the pixel coordinates of homologous points and transform them to the next coordinate system using elements of image orientation. It was assumed that relative and absolute orientation or exterior orientation of a stereopair had been executed earlier. The parameters of those orientations and coefficients of affine transformation are stored on the server. If, as a result of applying the image matching method, there is the large set of homologous points, their terrain coordinates can be used for construction of a Digital Terrain Model. This problem has already been an object of research and was published in detail (Paszotta, Szumilo 2006). In this article a different approach of photogrametric determination of terrain coordinates of points is presented. Users indicate vertexes of a polygon on the first photograph and approximate location of these points on the second one. After these actions, the vertexes of the polygon are matched. Terrain coordinates and the area of a polygon are calculated automatically. Figure 9 presents the stages of the task in the form of an activity diagram. The results of its implementation are shown in  figure 10.

Çàãíóòûé óãîë: User

Figure 9. The solution of interactive squaring of a polygon.

Figure 10. Implementation  of the squaring of a polygon.

4.4    DTM and an orthophotomap generation.

The process of creating orthophotomaps from aerial photographs is complex and requiring the specialist software on the digital photogrammetric station. However, it turns out that this process with certain limitations can be executed by the Internet. The algorithm of orthoimage generation is presented with the aid of UML diagram (fig 11). The terrain coordinates of points, which are being used to create digital terrain model (DTM), are measured and calculated in the automatic way. However, the area of the orthophotomap is small and limited by dimension of the window of the Internet browser. Thus, in the process of orthoimage creation via the Internet the author assumed a simplified DTM in the form of the plane. Orthorectification is made on the server side but the grid coordinate system is superimposed on the orthophotomap by means of applet on the client side. Besause of resampling, the created orthoimage has a worse quality than a source image. Therefore, the source photograph with the system of coordinates is also presented. In both cases the image and terrain coordinates of point shown by the cursor are calculated and printed in the header of the Internet browser window.

Figure 11. Activity diagram in the process of DTM and orthophotomap generation.

 

Figure 12. Visualization of set of points for approximating plane and determination of the plane equation.

Figure 13. Visualization of the orthophotomap in the internet browser window.

5. Conclusion.

The development of Web Photogrammetry methods is connected with Internet evolution and technical progress in digital photogrammetry. Web Photogrametry has enormous didactic and scientific values and is an effective tool of photogrammetry popularization. The slowness of implementation of web photogrammetric applications stems from the lack of direct commercial success of such activities. Nevertheless, there are a lot of possibilities to use these solutions for educational purposes as well as in Integrated Administration and Control System (IACS). The significance of web photogrammetry creation was also perceived by International Society of Photogrammetry and Remote Sensing. This organization created a new working group (Web-based Geoinformation Services and Applications) as a part of IV Commission. The described applications located on the Department of Photogrammetry and Remote Sensing server .They are also accessible from the ISPRS WG IV/5 too ( http://www.commission4.isprs.org/wg5/).

6. References:

Drap,P., Grussenmeyer,P., Gaillard,G., 2004, Presentation of the web based ARPENTEUR tools: towards a Photogrammetry based Heritage Information System, The International Archives of Photogrammetry and Remote Sensing, Istanbul, Turkey Vol. XXXV-B6, pp.123.

Hall M., Brown L., 2003, Core Servlets and JavaServer Pages.vol. 1: Core Technologies. PrenticeHall PTR, 2 edition, pp.130-132, ISBN-10 0130092290

Harold E.R., 2004, JavaTM  Network Programming, 3rd Edition. O’Reilly Media Inc., ISBN 978-0596007205 

Heipke Ch., 2005: Web-Based Photogrammetric Image and Geospatial Services – an Overview  Photogrammetric Week 05, Wichmann Verlag, Heidelberg p 157-164

Horstmann C. S., Cornell G., 2005. Core Java Volume II Advanced Features. 7th Edition, Prentice Hall PTR, ISBN-10 0-13-111826-9

Hunter J., Crawford W., 2002. Java Servlet Programming. 2nd Edition O’Reilly Media Inc. ISBN 978-0596000400

Paszotta Z. 2003: Exterior orientation and other photogrammetric solutions through the Internet. Automatic Georeferencing of Aerial Images by Means of Topographic Database Information. Aalborg University, pp. 25-32. ISBN  87-90893-47-6,  ISSN: 1397-3169

Paszotta Z., Szumilo M., 2006, Application of a statistical test of hypothesis to check DTM accuracy over the Internet. EuroSDR Official Publication No 51.