Java Doc for GradientMagnitude.java in  » GIS » GeoTools-2.4.1 » org » geotools » coverage » processing » operation » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » GIS » GeoTools 2.4.1 » org.geotools.coverage.processing.operation 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


org.geotools.coverage.processing.OperationJAI
   org.geotools.coverage.processing.operation.GradientMagnitude

GradientMagnitude
public class GradientMagnitude extends OperationJAI (Code)
Edge detector which computes the magnitude of the image gradient vector in two orthogonal directions. The result of the "GradientMagnitude" operation may be defined as:

dst[x][y][b] = ( SH(x,y,b)2 + SV(x,y,b)2) × scale

where SH(x,y,b) and SV(x,y,b) are the horizontal and vertical gradient images generated from band b of the source image by correlating it with the supplied orthogonal (horizontal and vertical) gradient masks.

Before to compute the gradients, the kernels are tested against artificials horizontal and vertical gradients of one unit of sample / unit of localization. For example:

  • For an image of elevation (meters) using a geographic coordinate system (degrees of latitude and longitude), the units are meters/degree.
  • For an image of temperature (°C) using a projected coordinate system (kilometers), the units are °C/km.

Kernels are normalized by dividing all their coefficients by the result of this test. In other words, kernels are normalized in such a way that applying the "GradientMagnitude" operation on a horizontal or vertical gradient of 1 such "geophysical" units will give a result of 1. This is an attempt to give geophysical meaning to the numbers produced by the "GradientMagnitude" operation. This normalization depends of the coverage's .

NOTE: When the masks are symetric (e.g. Sobel, Prewitt (or Smoothed), isotropic, etc.), then the above-cited algorithm produces the same result than the "normalization factor" × "spatial factor" published by:

Simpson, J.J. (1990), "On the accurate detection and enhancement of oceanic features observed in satellite data" in Remote sensing environment, 33:17-33.
However, for non-symetric masks (e.g. Kirsch), then a difference is found.

Name: "GradientMagnitude"
JAI operator: " "
Parameters:

Name Class Default value Minimum value Maximum value
"Source" org.geotools.coverage.grid.GridCoverage2D N/A N/A N/A
"Mask1" KernelJAI KernelJAI.GRADIENT_MASK_SOBEL_HORIZONTAL N/A N/A
"Mask2" KernelJAI KernelJAI.GRADIENT_MASK_SOBEL_VERTICAL N/A N/A

since:
   2.2
version:
   $Id: GradientMagnitude.java 23157 2006-12-01 01:29:53Z desruisseaux $
author:
   Martin Desruisseaux
See Also:   org.geotools.coverage.processing.Operations.gradientMagnitude
See Also:   GradientMagnitudeDescriptor



Constructor Summary
public  GradientMagnitude()
     Constructs a default gradient magnitude operation.

Method Summary
protected  CategoryderiveCategory(Category[] categories, Parameters parameters)
     Derives the quantitative category for a band in the destination image.
protected  GridCoverage2DderiveGridCoverage(GridCoverage2D[] sources, Parameters parameters)
     Applies the operation on grid coverage.
protected  UnitderiveUnit(Unit[] units, Parameters parameters)
     Derives the unit of data for a band in the destination image.


Constructor Detail
GradientMagnitude
public GradientMagnitude()(Code)
Constructs a default gradient magnitude operation.




Method Detail
deriveCategory
protected Category deriveCategory(Category[] categories, Parameters parameters)(Code)
Derives the quantitative category for a band in the destination image. This implementation computes the expected gradient range from the two masks and the value range in the source grid coverage.



deriveGridCoverage
protected GridCoverage2D deriveGridCoverage(GridCoverage2D[] sources, Parameters parameters)(Code)
Applies the operation on grid coverage. The default implementation looks for kernels specified in the org.geotools.coverage.processing.OperationJAI.Parameters.parametersparameter block and divide them by the distance between pixels, in the grid coverage's coordinate reference system.



deriveUnit
protected Unit deriveUnit(Unit[] units, Parameters parameters)(Code)
Derives the unit of data for a band in the destination image. This method compute sample / axis where:
  • sample is the sample unit in source image.
  • axis is the coordinate reference system axis unit.



Fields inherited from org.geotools.coverage.processing.OperationJAI
final protected static String RENDERED_MODE(Code)(Java Doc)
final protected OperationDescriptor operation(Code)(Java Doc)

Methods inherited from org.geotools.coverage.processing.OperationJAI
protected RenderedImage createRenderedImage(ParameterBlockJAI parameters, RenderingHints hints)(Code)(Java Doc)
protected Category deriveCategory(Category[] categories, Parameters parameters)(Code)(Java Doc)
protected GridCoverage2D deriveGridCoverage(GridCoverage2D[] sources, Parameters parameters)(Code)(Java Doc)
protected InternationalString deriveName(GridCoverage2D[] sources, int primarySourceIndex, Parameters parameters)(Code)(Java Doc)
protected NumberRange deriveRange(NumberRange[] ranges, Parameters parameters)(Code)(Java Doc)
protected GridSampleDimension[] deriveSampleDimension(GridSampleDimension[][] bandLists, Parameters parameters)(Code)(Java Doc)
protected Unit deriveUnit(Unit[] units, Parameters parameters)(Code)(Java Doc)
public Coverage doOperation(ParameterValueGroup parameters, Hints hints) throws CoverageProcessingException(Code)(Java Doc)
public boolean equals(Object object)(Code)(Java Doc)
public static JAI getJAI(RenderingHints hints)(Code)(Java Doc)
protected static OperationDescriptor getOperationDescriptor(String name) throws OperationNotFoundException(Code)(Java Doc)
protected Map getProperties(RenderedImage data, CoordinateReferenceSystem crs, InternationalString name, MathTransform gridToCRS, GridCoverage2D[] sources, Parameters parameters)(Code)(Java Doc)
protected static int getQuantitative(Category[] categories)(Code)(Java Doc)
protected ParameterBlockJAI prepareParameters(ParameterValueGroup parameters)(Code)(Java Doc)
protected void resampleToCommonGeometry(GridCoverage2D[] sources, CoordinateReferenceSystem crs2D, MathTransform2D gridToCrs2D, Hints hints) throws InvalidGridGeometryException, CannotReprojectException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.