Image Mosaic Update Index
For automatically constructing and indexing image mosa- ics by locating. Pixel, then we don't update the conditionally lagged back- ground. If after some. The.SHP index is then created in my 'tifdirectory' along with the 'tifdirectory.properties' file and everything works well after I setup the layer parameters directly in Geoserver. My GeoTIFFs are updated daily, so I need to update the footprint index. I tried with this command.
Topics:.In addition to spatial referencing capability, advanced georeferencing capabilities are available.Image reprojection is the process of transforming an image from one SRS (spatial reference system, or coordinate system) to another.Most raster data originating from remote sensors above the ground is usually subject to distortion caused by the terrain, the view angles of the instrument, and the irregular shape of the Earth. Image rectification as explained in this section is the process of transforming the images to reduce some of that distortion.Orthorectification is a rectification transformation process where information about the elevation, the terrain, and the shape of the Earth is used to improve the quality of the output rectified image. Oracle GeoRaster supports single image orthorectification with average height value or DEM.Image warping transforms an input GeoRaster object to an output GeoRaster object using the spatial reference information from a specified SDOGEORSRS object.Affine transformation is the process of using geometric transformations of translation, scaling, rotation, shearing, and reflection on an image to produce another image.The color and contrast of images can be enhanced to improve their visual quality. The SDOGEORIP package (“IP” for image processing) provides a set of subprograms for image enhancement, including performing image stretching, image normalization, image equalization, histogram matching, and image dodging.Image filtering is the process of applying a convolution filter on an image to achieve a specific purpose. In addition to spatial referencing capability, advanced georeferencing capabilities are available.In GeoRaster, the spatial referencing capability is called SRS (spatial reference system) or georeferencing, which may or may not be related to geography or a geospatial scheme. Georeferencing is a key feature of GeoRaster and is the foundation of spatial query and operations over geospatial image and gridded raster data. See for a detailed description of the SRS models.GeoRaster supports non-geospatial images, fine art photos, and multi-dimensional arrays, which might not be associated with any coordinate system.
For those images and rasters, there is generally no need for georeferencing, but most of the GeoRaster operations still work on them, such as pyramiding, scaling, subsetting, band merging, stretching, and algebraic operations. In these cases, you address the pixels (cells) using the raster's cell space coordinates (that is, row, column, and band).You can also create a user-defined coordinate system (a new SRID) that is not related to geography, and you can use that SRID as the model coordinate system for the rasters. Then, you can spatially reference these rasters to that SRID; that is, an SRS metadata component will be created for each of those rasters. Doing this causes those rasters to be spatially referenced, and thus co-located in that user-defined model coordinate system.
After this is done for all related rasters, GeoRaster operations will work on those rasters as if they are georeferenced to a geographic coordinate system. For example, assume that an artist has painted a large mural on a wall, and that you want to be able to take many high-resolution photographs of different tiles of this wall and then stitch them together. You can spatially reference the tile images and then use the GeoRaster mosaicking capability to do the stitching.If you do not define a new coordinate system, you can still co-locate the images in the cell space. That is, you can set up different ULT coordinates for the images by calling the procedure, so that the images are aligned in the same coordinate system and then can be mosaicked.Most geospatial image and raster files that you have are probably already georeferenced by other software tools, and thus they may come with georeferencing information. In those cases, the georeferencing information can be directly loaded with the rasters or afterward by using, the GeoRaster loader tool, GDAL, or other third-party ETL tools. For more information, check and.If a geospatial image does not have spatial reference information, you can use the GeoRaster Ground Control Point (GCP) support to georeference the image.
GCPs are collected either automatically by the remote sensing system or manually afterward. For an image without GCP information, you can use a GeoRaster visualization tool to collection GCPs for the GeoRaster object. GCPs are described in.After you have the GCPs and want to store them in the GeoRaster metadata, you can get and set the GCP-based georeferencing mode by using the function and the procedure. To get, set, and edit only GCPs, use the function and the and procedures. The GCPs can also be stored in the GeoRaster metadata when you call.To get and set only the geometric model, use the function and the procedure. GeoRaster also allows you to store check points ( pointType = 2), which are treated and manipulated in the same way as control points ( pointType = 1) except that check points are not used to create the SRS coefficient when is called with the GCPs.If you have ground control points (GCPs) that are either stored in the GeoRaster object or not, and if you want to calculate the functional fitting georeferencing model, you can call the procedure to find the solution.
The functional fitting georeferencing model stores all coefficients in the GeoRaster SRS and enables the coordinate transformations between cell space and model space. To generate the functional fitting georeferencing model using GCP, you must specify an appropriate geometric model. The specific geometric models supported by are Affine Transformation, Quadratic Polynomial, Cubic Polynomial, DLT, Quadratic Rational, and RPC. These models are described in.

Example 6-1 Setting Up the GCP Georeferencing ModelFor example, if you have a Landsat image in a plain area and want to georeference it, you might choose the Quadratic Polynomial geometric model. Most raster data originating from remote sensors above the ground is usually subject to distortion caused by the terrain, the view angles of the instrument, and the irregular shape of the Earth. Image rectification as explained in this section is the process of transforming the images to reduce some of that distortion.Rectification is performed by the procedure, and requires that the source GeoRaster object have at least a functional fitting georeferencing model. This means that the image does not need to be rectified, but it needs to have georeference information in the metadata (see ).The procedure can use the information available in the source GeoRaster object to automatically establish the spatial extents, dimension, and SRID of the output GeoRaster, and users can also specify different values by using the appropriate parameters. Example 6-4 Image Rectificationrectifies an aerial image that had been loaded into GeoRaster and later georeferenced with GCPs (see ).
The image is rectified so that the output GeoRaster object has the same SRS and resolution of an existing GeoRaster object. Orthorectification is a rectification transformation process where information about the elevation, the terrain, and the shape of the Earth is used to improve the quality of the output rectified image. Oracle GeoRaster supports single image orthorectification with average height value or DEM.The orthorectification is done by the procedure and requires that the source GeoRaster have a 3D SRS. The procedure can execute orthorectification with just the average height of the area or with a detailed Digital Elevation Model (DEM).
Example 6-5 Orthorectification with Average Heightshows orthorectification with average height. For this example, the source image was acquired from DigitalGlobe with RPC. The use of a DEM (Digital Elevation Model) layer improves the accuracy of the rectification process and therefore produces a higher quality output GeoRaster object.Orthorectification with DEM requires that the source GeoRaster have a 3D SRS. The DEM must cover all the target output area, and it should be in the same SRID as the output. The resolution of the DEM should be similar to the expected resolution of the output GeoRaster object.For orthorectification with DEM, the elevationParam average keyword is optional; and if it is not specified, the procedure estimates elevation values based on sample values extracted from the DEM on the target area.The elevationParam offset and scale values can be used to modify the values from the DEM.
For example, scale can be used for unit conversion if the DEM values are in a unit other than that of the source GeoRaster SRS, and offset can be used to perform geoidal correction or other offsetting. However, these specifications do not apply the changes to DEM values in the GeoRaster object. An alternative is to pre-process the DEM values by applying the scaling and offsetting to the DEM data before the orthorectification, as explained in. Example 6-6 Orthorectification with DEMexample performs orthorectification with DEM.

The DEM covers all the output area in a resolution approximated to the resolution of the output GeoRaster. The DEM values are in meters but the source image SRS is in feet. Example 6-7 Orthorectification with Cropped DEMTypically, the DEM covers an area much larger than the target area, and the resolution is coarser than the target resolution of the output GeoRaster object.
Using this DEM 'as is' would result in poor quality orthorectification. The solution to that common problem is to crop the DEM to the target area and rescale it to the desired resolution, as shown in. Image warping transforms an input GeoRaster object to an output GeoRaster object using the spatial reference information from a specified SDOGEORSRS object.The reference SDOGEORSRS object can be copied from an existing GeoRaster object or created using a constructor. (For more information, see.)Warping is performed by the procedure, and requires that the source GeoRaster object have at least a functional fitting georeferencing model. This means that the image does not need to be rectified, but it needs to have georeference information in the metadata (see ). Example 6-8 Image WarpingThe following example uses the SDOGEORSRS information from one GeoRaster image ( gr1) as a reference to transform an existing GeoRaster object ( gr2) into a new (warped) GeoRaster object ( gr3). Affine transformation is the process of using geometric transformations of translation, scaling, rotation, shearing, and reflection on an image to produce another image.For details and examples, see the reference topic.Image scaling is the process of enlarging or shrinking an image by changing the pixel size for the row and column dimensions of an image.
Image scaling resamples the pixel values from the original image to construct the rescaled version of that image. Image scaling can be performed in several ways:.Use the procedure and specify for scaleParam a scaleFactor to be applied to the input image dimensions or a maxDimSize for the output image.Use the procedure and specify the resolution of the output image. (This procedure can be executed in parallel.).During affine transformation, use the scales parameter of the procedure. In that procedure, the scales parameter is a two-number array where you can specify a scale factor for rows and for columns independently. (This procedure can be executed in parallel.). Example 6-9 Image Scaling Using SDOGEOR.scaleCopyThis example performs rescaling by using and specifying the scaleFactor value as 2. The input image will have 2 times more rows and 2 times more columns than the original, and the values will be resampled by the average16 algorithm.
Note that the image will be 4 times larger than the original.DECLAREgrsrc sdogeoraster;grout sdogeoraster;BEGINselect georaster into grsrc from georastertable where georid = 7;- Rescaledelete from georastertable where georid = 9;insert into georastertable values(9, 're-scaled by scaleCopy',sdogeor.init('rdt4',9))returning georaster into grout;sdogeor.scaleCopy(inGeoRaster = null,scaleFactor = 'scaleFactor=2',resampleParam = 'resampling=AVERAGE16',storageParam = null,outGeoraster = grout);update georastertable set georaster = grout where georid = 9;commit;END;/. Example 6-10 Image Scaling Using SDOGEOR.rectifyThis example performs rescaling by using and specifying the outResolutions parameter. The color and contrast of images can be enhanced to improve their visual quality.
The SDOGEORIP package (“IP” for image processing) provides a set of subprograms for image enhancement, including performing image stretching, image normalization, image equalization, histogram matching, and image dodging.Linear stretching and piecewise stretching can stretch the image cell values linearly for all cells values based on the minimum and maximum cell values or at specified value range, to achieve better color and contrast. To perform image stretching, you can use the following procedures:.stretches GeoRaster objects in any supported cell depth (1BIT to 64BITREAL) to cell depth of 8BITU for display purposes.stretches GeoRaster objects of any supported cell depth to the GeoRaster objects in higher or lower cell depth, not limited to 8BITU.Image normalization linearly stretches the image based on the statistics (mean and standard deviation) of the image cell values. To perform image normalization, use the.Image equalization enhances image contrast by equalizaing its histogram. To perform equalization, use the procedure.Image histogram matching stretches the image to match the specified histogram or the histogram of a reference image.
To perform image histogram matching, use the procedure.Image dodging balances image color by stretching the contrast of the image locally instead of globally. To perform image dodging, use the procedure.
Image filtering is the process of applying a convolution filter on an image to achieve a specific purpose. For example, applying a low-pass filter on an image can smooth and reduce noise in an image, while applying a high-pass filter on an image can enhance the details of the image or even detect the edges inside the image.The procedure provides standard filters such as low-pass filter (LPF), high-pass filter (HPF), and high-boost filter (HBF). It also allows you to apply customized filters on images.The following example performs image filtering by providing a customized 3-by-3 Laplacian filter on the image for edge detection.
DECLAREgr1 sdogeoraster;gr2 sdogeoraster;cropArea sdogeometry;BEGININSERT INTO georastertable (georid, georaster)VALUES (41, sdogeor.init('RDT1'))RETURNING georaster INTO gr2;SELECT georaster INTO gr1 FROM georastertable WHERE georid=4;sdogeorip.filter(gr1, 0, cropArea, null, ‘filtertype=CUSTOM, kernelsize=(3,3)’, sdonumberarray(0, 1, 0, 1, -4, 1, 0, 1, 0 ), null, gr2);UPDATE georastertable SET georaster=gr2 WHERE georid=41;COMMIT;END;/. Segmentation is a simple type of classification algorithm, and can be useful in classifying certain types of images into larger ground feature categories, such as land, cloud, water, or snow.You can use the procedure to apply thresholding to images.
Thresholding is the simplest segmentation, which classifies an image into two categories by using a single cell value as the threshold. The resulting image has only two values and can be cast into a binary bitmap mask directly in the same process.You can also apply more image segmentation operations using the procedure, by first applying arithmetic operations on multiple bands and then classifying the results into a number of categories.For examples of using the procedure, see. Example 6-12 Parallel Generation of PyramidsFor faster pyramid generation, you can specify the parallelParam parameter with the procedure. In, the degree of parallelism is set to 4. (The actual performance improvement for pyramid generation depends on the number of CPUs available to Oracle Database.)DECLAREgr sdogeoraster;BEGINSELECT georaster INTO grFROM georastertable WHERE georid = 6 FOR UPDATE;- Generate pyramids.sdogeor.generatePyramid(gr, 'rLevel=5, resampling=NN', null, 'parallel=4');- Update the original GeoRaster object.UPDATE georastertable SET georaster = gr WHERE georid = 6;COMMIT;END;/To enable parallel processing of the pyramid generation, performs an implicit commit operation.
If an error during the call, the GeoRaster object may in an invalid state. If this occurs, use to remove the newly generated and upper pyramid levels of the GeoRaster object. Example 6-13 Partial Updating of PyramidsYou can partially update pyramids by using the procedure. In, the target GeoRaster object at a specified area ( targetArea is specified as area) is updated by another GeoRaster object. The updateUpperPyramids parameter is set to true, so the upper pyramids of the target GeoRaster object are only partially updated at the specified area. Bitmap pyramiding can produce high-quality pyramids in certain cases where traditional pyramiding is not adequate.For most raster data types, image pyramiding as described in results in pyramids of great quality.
However, for bitmap rasters of points, lines, or polylines, which are typically stored in 1-bit cell depth, the same pyramiding approach may not create high-quality pyramids. Distorted point patterns and dashed lines are commonly seen in those pyramids.To solve such problems, you can use the procedure, instead of, to perform pyramiding on bitmap GeoRaster objects. The procedure significantly improves the pyramid quality by avoiding distorted patterns, particularly dashed lines or missing lines in a bitmap raster, such as a road raster map or utility network raster map. Tasseled Cap Transformation (TCT) is a useful tool for analyzing physical ground features using remotely sensed imagery.With various Landsat imagery, it uses 5 bands of either original digital number (DN) or reflectance data to generate 6 new bands, each of which represents different ground features. The 6 resulting bands are generally called (soil) brightness, (vegetation) greenness, (soil and canopy) wetness, haze, TC5, and TC6. Each one or a combination of them is useful for different applications, such as crop growth monitoring and analysis, biomass study, and agriculture planning.
For image classification, time series analysis, and raster GIS modeling, multiple bands or layers of different GeoRaster objects may need to be merged into a single GeoRaster object.This operation is called band or layer merging in GeoRaster, and can be performed by using the procedure or the procedure. You can either append specified bands of a source GeoRaster object to a target GeoRaster object or merge different bands from two GeoRaster objects into a new GeoRaster object. By doing this merging or appending iteratively, you can merge an unlimited number of bands into a single GeoRaster object.
You can append one image to another image when the two images have the same number of bands.Image appending is useful when the geospatial images are collected at intervals and the captured image later needs to be appended to the existing image to make a large image of the whole spatial area. Image appending is also useful for updating the existing image with a new image.The procedure implements image appending by partially updating the existing GeoRaster object with another GeoRaster object. If the existing GeoRaster object contains pyramids, the pyramids with blocking are partially updated with the new data.appends one image to another, with pyramids with blocking are updated at the same time. Because the appendParam parameter specifies 'nodata=true', the NODATA values in the overlapping area are considered transparent. A large geospatial area typically consists of many smaller aerial photographs or satellite images. Large-scale image mosaicking can stitch these small geospatial images into one large image to get a better view of the whole spatial area.GeoRaster provides large-scale mosaicking functions that allow gaps, overlaps, and missing source GeoRaster objects.
It supports both rectified and unrectified images. It supports internal reprojection and rectification, common point rules, and simple color balancing. You can also mosaic at a certain pyramid level. This mosaicking process results in a single GeoRaster object, which is also called a physical mosaic as opposed to virtual mosaic (For information about virtual mosaic, see ).The and procedures provide support for image mosaicking; however, you are strongly encouraged to use because it provides much more advanced features and options, and it is also implemented with parallelism. Can take a virtual mosaic, such as a list of GeoRaster tables, a database view with a GeoRaster column, or a REF CURSOR, as the source images.The procedure mosaics a set of source GeoRaster images that are rectified, are geospatially aligned under the same SRID, and have the same resolution. The result of the mosaic is another GeoRaster object. If there are overlaps between the source images, the mosaic result will have the last source image's content at the overlapping area.
Example 6-18 SDOGEOR.mosaic (Table and Column Name)shows the procedure.DECLAREgr sdogeoraster;BEGININSERT INTO georastertable (georid, georaster)VALUES (12, sdogeor.init('rdt1'))RETURNING georaster INTO gr;sdogeor.mosaic('grtab', 'grobj', gr, 'blocking=optimalpadding blocksize=(512,512,1)');UPDATE georastertable SET georaster=gr WHERE id=12;END;/In the real world, however, the source images are often collected under different circumstances so as to have different resolutions or large areas of overlap, or using a different georeference system. In such cases, you can use the procedure to mosaic these source images into one uniform mosaicked image. The source images of the mosaicking operation can have different luminance or colors due to the differences in the lighting conditions, time of day, or other factors when the images were captured.
Image Mosaic Update Index For Windows
Color balancing minimizes the color differences between the neighboring images and makes the resulting mosaic look more seamless.and provide some basic color balancing methods during the mosaicking process. Several color balancing methods are provided. Example 6-20 LINEARSTRETCHING Color BalancingThis example shows how to use the LINEARSTRETCHING color balancing method on the source images in the procedure. The reference minimum and maximum values are specified in the referenceValue1 and referenceValue2 parameters. Example 6-21 HISTOGRAMMATCHING Color BalancingThis example shows how to use the HISTOGRAMMATCHING color balancing method on the source images in the procedure. The reference histograms are derived from the reference image. Example 6-22 STATISTICSMATCHING Color BalancingThis example shows how to use the STATISTICSMATCHING color balancing method on the source images in the procedure.
Image Mosaic Update Index Today
The reference statistics values are calculated from the overlapped area of the neighboring images. To parallelize rectification, orthorectification and reprojecting, use. To parallelize warping, call.
All raster algebra operations are parallelized too.You can use the procedure to conduct several types of parallel operations, including parallel compression and decompression, parallel copying or change format copying, parallel subsetting, parallel reprojection, and parallel rectification. The copying and subsetting operations are not parallelized directly. For JPEG and DEFLATE, the procedure can be called to do parallel compression and decompression if reformatting is not required. This topic gives some examples for parallelized compressing, copying, and subsetting operations.
In all these cases, the procedure works on single GeoRaster objects.To illustrate the parallelized operations, the examples in this section use a null value for most parameters. In your applications, you can apply all other parameters of the procedure; however, the mosaicParam parameter has no effect when the input is a single GeoRaster object. Example 6-23 Parallel Compressionshows parallel compression using the procedure. A virtual mosaic treats a set of GeoRaster images as one large virtually mosaicked image.For some applications, mosaicking a collection of images into a single physical mosaic is not necessary or desirable. For example, you might not have enough disk space for storing the mosaic separately or you simply want to save disk space. Another example is if you do not want to keep two identical copies of the same data set but prefer to have the original data set stored as is, such as a DEM data set, yet you want to query over this data set seamlessly.
Yet another example is if you want to apply different processing and mosaicking rules for the same region when mosaicking the source images - a physical mosaic has no such flexibility.In such cases, instead of mosaicking a set of GeoRaster images into one large GeoRaster image and storing it in a GeoRaster table, you can create a virtual mosaic. A virtual mosaic treats a set of GeoRaster images as one large virtually mosaicked image, without storing it in a GeoRaster table.In GeoRaster, a virtual mosaic is defined as any large collection of georeferenced GeoRaster objects, rectified or unrectified, from one or more GeoRaster tables or views that is treated as if it is a single GeoRaster object.
Pyramids of virtual mosaic are supported. A virtual mosaic can contain unlimited number of images, and a whole GeoRaster database can be treated as a virtual mosaic. You issue a single call to query the virtual mosaic based on area-of-interest (that is, subsetting or cropping), and you can request the cropped images to be in different coordinate system with different resolutions.
A virtual mosaic can be defined as one database view with a GeoRaster column. Applications specify the view name and its GeoRaster column. In this approach, all GeoRaster objects in the specified GeoRaster column of the view are part of the virtual mosaic. This approach allows you to select the images for the virtual mosaic in complex ways from any number of GeoRaster tables, taking advantage of the spatial index and any other relevant indexes.You can also define a virtual mosaic as a list combining GeoRaster views and GeoRaster tables.When a virtual mosaic is defined as a database view, the view can be specified in the georasterTableNames parameter when you query it.
Queries the virtual mosaic defined as a view. Note that in this example, the queries sort the images based on their creation time and pick the latest (newest) image for the resulting mosaic in the overlapping areas. Instead of creating a view, you can define a virtual mosaic as a SQL statement or a runtime database cursor, which selects a collection of GeoRaster objects from the database. Applications create the cursor from the SQL statement and use the cursor as the virtual mosaic. In this definition, all GeoRaster objects in the cursor are part of the virtual mosaic. This approach allows you to select the images for the virtual mosaic in complex ways from any number of GeoRaster tables. However, the spatial indexes are not automatically used in queries over this type of virtual mosaic.
To take advantage of spatial indexes, dynamically add a spatial query condition directly using the query window to the SQL statement, so that all images in that query window can be more quickly located.The and procedures accept a cursor of GeoRaster objects as the virtual mosaic, as shown in. Note that in this example, the queries sort the images based on their creation time and pick the latest (newest) image for the resulting mosaic in the overlapping areas. For best performance when there are many GeoRaster objects in the table, the query of the cursor should use the spatial query window to filter out the unrelated GeoRaster objects, as described in the preceding paragraph. Create or replace view grview as select.
from (Select grobj, lastupdate from grtab1 where cloudcover=0 union allSelect grobj, lastupdate from grtab2 where cloudcover=0 union allSelect grobj, lastupdate from grtab3 ) order by lastupdate;Note that tables GRTAB1, GRTAB2, and GRTAB3 were created using the same definition as GRTAB in, and Oracle Spatial and Graph spatial indexes have been created on the spatialExtent attribute of the GeoRaster object in these tables. Validate the virtual mosaic data set. SELECT SDOGEORAGGR.getMosaicResolutions('grview', 'grobj', 'unit=meter') from dual;The resolution range reflects the minimum and maximum resolutions of the source images, including all pyramid levels.
Based on the information acquired in the preceding two steps, pass in the spatial query window cropArea and OUTResolutions according to the application requests to get a subset of the virtual mosaic and optionally to apply different resampling methods, different common point rules, special nodata handling, and color balancing. SDOGEORAGGR.getMosaicSubset('grview', 'grobj', null, OUTSRID, null, null,cropArea, null, null, null, OUTResolutions, null,'commonPointRule=end, nodata=true', lb, outArea, outWin);Note that OUTResolutions must be within the source image resolution range. If OUTResolutions is the same as the resolutions of the source image at a specified pyramid level, the pyramid data is used in the output mosaic; otherwise, the source image is scaled to the target resolution.A typical application repeatedly applies this step to query different areas of interest over the same virtual mosaic for image display, image distribution, or other purposes. A virtual mosaic can contain just several images, but it can also contain tens of thousands or millions of images. Both and automatically search (using native spatial indexes) the virtual mosaic for all images touching or inside the cropArea and check the resolutions of those images and their pyramids.
Only those images or their appropriate pyramid levels touching or inside the cropArea and with their resolutions close to the requested resolution will be used in the mosaicking process. A more general solution (instead of defining multiple virtual mosaics) for speeding virtual mosaic queries if there are many different resolution levels involved for the same area is to use the MINXRES$ and MAXXRES$ columns in the GeoRaster tables or views. You must define these columns (NUMBER data type) in the GeoRaster tables of a virtual mosaic, where they specify the minimum and maximum spatial resolution values, respectively, of the source GeoRaster object. After these columns are added and populated with correct resolution data, the procedure will (if you use the format with the georasterTableNames parameter) use the resolution range stored in these columns to filter out the source GeoRaster objects that are not at the requested resolutions as specified in the outResolutions parameter. This avoids parsing the metadata of each GeoRaster objects in the cropArea, thus significantly improving performance.To use this approach, follow these steps:. Add the columns MINXRES$ and MAXXRES$ to the GeoRaster tables. If the virtual mosaic is defined as a view, the view should also have both columns.
Serving of image and raster data to clients or applications is supported through many features of the GeoRaster PL/SQL and Java APIs.Direct image serving includes searching and then subsetting or cropping the rasters , applying reprojection and rectification on-the-fly while cropping the images ( and ), and directly exporting to files.Virtual mosaic is used mainly, and effectively, to serve an image database to various applications, particularly when you do not want to create large physical mosaics. Virtual mosaic does not require the source images to be preprocessed or mosaicked beforehand. Instead, all images are stored as is, and the whole image data set can be served based on small areas of interest using single calls to the server.Often, one or a series of preprocessing operations are applied to multiple GeoRaster objects to create the resulting GeoRaster object, and then the features described in this section are used on the resulting GeoRaster object to serve the raster data directly to applications. Thus, a rich set of GeoRaster image manipulation and raster algebra capabilities (described in, and this chapter) can be incorporated into the workflow to meet complex image serving requirements.