US-12620126-B1 - Apparatus and method of grid-oriented normalization for analysis of spherical areas from 2-D image
Abstract
The present invention includes a system which determines feature metrics on a spherical surface, the system disposed at a client/server, including: a grid generation engine which generates a grid according to user configuration; a feature segmentation engine which digitizes a two-dimensional image of the spherical surface containing the feature and determines a feature location in the image, a grid overlay and enumeration engine which determines a position of the grid relative to the feature and overlays the grid onto the image to determine grid cell overlap and coverage; and a feature parameterization engine which performs analysis of the covered cells to obtain the metrics of the feature for the user; where the metrics includes a total area, a centroid, moments of inertia, a perimeter, a major axis, a compactness, an orientation, an XY bounding box, a major axis bounding box, an XY aspect ratio and a major axis aspect ratio.
Inventors
- Conor A. Nixon
- Zachary Yahn
- Douglas Trent
- John Santerre
Assignees
- UNITED STATES OF AMERICA AS REPRESENTED BY THE ADMINISTRATOR OF NASA
Dates
- Publication Date
- 20260505
- Application Date
- 20230822
Claims (19)
- 1 . A system which determines a plurality of metrics of a feature on a spherical surface, the system being disposed at one of a client computer or a server, comprising: a grid generation engine which generates a grid according to a user configuration; a feature segmentation engine which digitizes a two-dimensional image of the spherical surface containing the feature and determines a location in said image where the feature resides, a grid overlay and enumeration engine which determines a position of said grid relative to the feature and overlays said grid onto said image to determine grid cell overlap and coverage; and a feature parameterization engine which performs analysis of said covered cells to obtain the plurality of metrics of the feature which are displayed to a user, wherein said feature parametrization engine further comprises: a plurality of sub-components to which data on said grid cell coverage from said cell coverage analyzer is provided, including: a centroid generator which utilizes data from said area analyzer and data from said cell coverage analyzer to determine a centroid as a first-order spatial moment of a center of mass of the feature in latitude and longitude; a perimeter analyzer which utilizes data from said cell coverage analyzer and isolates perimeter cells of a perimeter of the feature and determines externally facing sides of said perimeter cells, to determine a perimeter; an XY bounding box outliner which utilizes data from said perimeter analyzer to outline a bounding box on the X and Y dimensions of the feature; a major/minor axis identifier which utilizes data from said perimeter analyzer to identify a major axis which includes a longest line segment that connects two points on said perimeter of the feature, and a minor axis which includes a longest line segment perpendicular to said major axis that connects two of said perimeter cells; and an orientation renderer which utilizes said data on said major axis from said major/minor axis identifier to determine a feature orientation in degrees.
- 2 . The system of claim 1 , the system further comprising: a graphical user interface (GUI) accessed by a user; a configuration engine which collects specification data from said user on grid configuration and selects said grid; and a grid generation engine which utilizes data from said configuration engine and determines equal-area per cell of said grid, and a definition of cell boundaries in latitude and longitude in said grid.
- 3 . The system of claim 2 , wherein said grid overlay and enumeration engine comprises: a grid alignment analyzer which determines said position of said grid relative to the feature for each row and column of cells in the grid utilizing said cell boundaries in longitude and latitude from said grid generation engine, and overlays said grid onto said image; an overlap assessor which examines each of said cells in said grid to assess how much each of said cells interacts with a feature mask which determines said location in said image where the feature resides; and a cell coverage analyzer which records said grid cell overlap or coverage in a format to implement said analysis and determination of said plurality of metrics of the feature by said specialized feature parameterization engine.
- 4 . The system of claim 3 , wherein said feature parameterization engine comprises: an area analyzer which receives inputs from an area/cell analyzer of said grid generation engine, and receives inputs from said cell coverage analyzer on grid cell coverage, to determine said equal-area per cell of said grid, and a total area of the feature.
- 5 . The system of claim 4 , the system further comprising: a moment of inertia generator which measures a second-order spatial moment of the feature, normalized by said centroid determined by said centroid generator, to generate moments of inertia along the X and Y axes.
- 6 . The system of claim 5 , the system further comprising: a compactness analyzer which utilizes data on said total area from said area analyzer and data from said perimeter analyzer to determine compactness as a measure of a minimization of said perimeter to contain a maximum area.
- 7 . The system of claim 6 , the system further comprising: an XY aspect ratio analyzer which utilizes data from said XY bounding box outliner and determines a ratio of width to height of said bounding box.
- 8 . The system of claim 7 , the system further comprising: a major axis bounding box outliner which utilizes data from said perimeter analyzer and said major/minor axis identifier and determines a width and an orientation of said bounding box, and a height of said bounding box equal to the sum of two maximum perpendicular segments above and below a major axis.
- 9 . The system of claim 8 , the system further comprising: a major axis aspect ratio analyzer which determines an aspect ratio utilizing data from said major axis bounding box outliner, by dividing said width of said bounding box by said height of said bounding box obtained from said major axis bounding box outliner.
- 10 . The system of claim 9 , wherein said feature parameterization engine further comprises: a feature metrics analyzer which receives data directly from said area analyzer, said moment of inertia generator, said compactness analyzer, said XY aspect ratio analyzer, said major axis bounding box outliner, and said major axis aspect ratio analyzer; and wherein said feature metrics analyzer receives data directly from said centroid generator, said perimeter analyzer, said XY bounding box outliner, said major/minor axis identifier, and said orientation renderer; and wherein said feature metrics analyzer analyzes all data from said area analyzer, said moment of inertia generator, said compactness analyzer, said XY aspect ratio analyzer, said major axis bounding box outliner, said major axis aspect ratio analyzer, said centroid generator, said perimeter analyzer, said XY bounding box outliner, said major/minor axis identifier, and said orientation renderer, to determine said plurality of metrics of the feature.
- 11 . The system of claim 10 , the system further comprising: a data storage which stores all data from said feature parameterization engine including said feature metrics analyzer, and from said configuration engine, said grid generation engine, said feature segmentation engine, and said grid overlay and enumeration engine.
- 12 . The system of claim 11 , wherein said plurality of feature metrics includes at least said total area, said centroid, said moments of inertia, said perimeter, said major axis, said compactness, said orientation, said XY bounding box, said major axis bounding box, said XY aspect ratio and said major axis aspect ratio.
- 13 . The system of claim 12 , the system further comprising: a display; and a results generator which formats said plurality of feature metrics from said feature metrics analyzer and displays them on said display for said user.
- 14 . The system of claim 2 , wherein said configuration engine comprises: a GUI dashboard that receives and displays said specification data from said user utilizing said GUI, said specification data which includes feature parameters and grid requirements; a parameter analyzer which analyzes said specification data by said user to determine said grid configuration; and a regime selector which generates said grid based on said grid configuration.
- 15 . The system of claim 14 , wherein said grid generation engine comprises: an area/cell analyzer which determines said equal-area per cell for said grid, and defines cell boundaries in latitude and longitude; and a longitude/latitude boundaries generator which determines longitude and latitude for each row and columns of cells in said grid.
- 16 . The system of claim 1 , the system further comprising: a feature acquisition engine including: a sensor that takes said two-dimensional image of the spherical object; a remote sensor platform on which said sensor is disposed; and a data storage device which stores said image.
- 17 . The system of claim 1 , wherein said covered cells are square.
- 18 . A method of determining a plurality of metrics of a feature on a spherical surface, the method comprising: generating a grid according to a user configuration utilizing a grid generation engine; digitizing a two-dimensional image of the spherical surface containing the feature using a feature segmentation engine, and determining a location in said image where the feature resides, determining a position of the grid relative to the feature utilizing a grid overlay and enumeration engine, which determines and overlays the grid onto the image to determine grid cell overlap and coverage; and performing an analysis of the covered cells using a feature parameterization engine, to obtain the plurality of metrics of the feature which are displayed to a user; wherein the plurality of metrics includes at least a total area, a centroid, moments of inertia, a perimeter, a major axis, a compactness, an orientation, an XY bounding box, a major axis bounding box, an XY aspect ratio and a major axis aspect ratio, of the feature, and wherein the feature parametrization engine further comprises: a plurality of sub-components to which data on said grid cell coverage from said cell coverage analyzer is provided, including: a centroid generator which utilizes data from said area analyzer and data from said cell coverage analyzer to determine a centroid as a first-order spatial moment of a center of mass of the feature in latitude and longitude; a perimeter analyzer which utilizes data from said cell coverage analyzer and isolates perimeter cells of a perimeter of the feature and determines externally facing sides of said perimeter cells, to determine a perimeter; an XY bounding box outliner which utilizes data from said perimeter analyzer to outline a bounding box on the X and Y dimensions of the feature; a major/minor axis identifier which utilizes data from said perimeter analyzer to identify a major axis which includes a longest line segment that connects two points on said perimeter of the feature, and a minor axis which includes a longest line segment perpendicular to said major axis that connects two of said perimeter cells; and an orientation renderer which utilizes said data on said major axis from said major/minor axis identifier to determine a feature orientation in degrees.
- 19 . A computer system which automatically determines a plurality of metrics of a feature on a spherical surface, the computer system comprising: at least one memory having at least one program which comprises the steps of: generating a grid according to a user configuration utilizing a grid generation engine; digitizing a two-dimensional image of the spherical surface containing the feature using a feature segmentation engine, and determining a location in said image where the feature resides, determining a position of the grid relative to the feature utilizing a grid overlay and enumeration engine, which determines and overlays the grid onto the image to determine grid cell overlap and coverage; and performing an analysis of the covered cells using a feature parameterization engine, to obtain the plurality of metrics of the feature which are displayed to a user; wherein the plurality of metrics includes at least a total area, a centroid, moments of inertia, a perimeter, a major axis, a compactness, an orientation, an XY bounding box, a major axis bounding box, an XY aspect ratio and a major axis aspect ratio, of the feature, and wherein said feature parametrization engine further comprises: a plurality of sub-components to which data on said grid cell coverage from said cell coverage analyzer is provided, including: a centroid generator which utilizes data from said area analyzer and data from said cell coverage analyzer to determine a centroid as a first-order spatial moment of a center of mass of the feature in latitude and longitude; a perimeter analyzer which utilizes data from said cell coverage analyzer and isolates perimeter cells of a perimeter of the feature and determines externally facing sides of said perimeter cells, to determine a perimeter; an XY bounding box outliner which utilizes data from said perimeter analyzer to outline a bounding box on the X and Y dimensions of the feature; a major/minor axis identifier which utilizes data from said perimeter analyzer to identify a major axis which includes a longest line segment that connects two points on said perimeter of the feature, and a minor axis which includes a longest line segment perpendicular to said major axis that connects two of said perimeter cells; and an orientation renderer which utilizes said data on said major axis from said major/minor axis identifier to determine a feature orientation in degrees; and at least one processor configured to run the program.
Description
ORIGIN OF THE INVENTION The invention described herein was at least in-part made by an employee of the United States Government and may be manufactured or used by or for the Government of the United States of America for governmental purposes without the payment of any royalties thereon or therefor. BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an apparatus and method of grid-oriented normalization for analysis of spherical areas—or the parameterization of features on spherical surfaces—from a 2-dimensional (2-D) image of the spherical surface (i.e., in the form of a photograph or satellite image). The present invention utilizes a predetermined grid of equal-area cells to enable the accurate and automated characterization of features on a spherical surface such as the celestial sphere or a planet or a moon, given the 2-D image. The present invention determines feature properties including feature area, centroid, moments of inertia, perimeter, compactness, major axis, bounding box, aspect ratio and North-South orientation. 2. Description of the Related Art Longitude and latitude are a widely used coordinate system for defining location on the surface of Earth and other astronomical bodies. An equivalent coordinate system of right ascension and declination is used from the inside of the sphere looking out, to define location on the celestial sphere. Longitude and latitude lines would seem to be a candidate for determining area, since they do form a cartesian grid of cells across the entirety of a sphere's surface. However, as lines of longitude converge at the poles, the area inscribed by their approaching lines becomes increasingly smaller. Cells formed by equally spaced lines of latitude and longitude do not have equal area across the sphere. Further, viewed in a photograph, a sphere appears as a two-dimensional (2-D) disk. The perceived area of a surface feature, observed in terms of 2-D image pixels, becomes increasingly distorted as the feature extends in any direction from the center of the disk towards the disk horizon. In particular, the perceived area of the feature shrinks towards the horizon becoming zero at the edge or limb of the disk. For large-scale features on the surface of a sphere that extend across such an expanse of distortion, computing area and other measurements can be difficult. In outer space missions, there is a need to characterize features on the spherical surface of planets and moons, such characterization including the overall area of the feature, its center, its moments of inertia, its perimeter, its compactness, its major axis, its bounding box, its aspect ratio, and its North-South orientation. Accurate assessment of these measures from a “flat” 2-D image is a challenge, since the scale of distance observed at the center of a spherical object distorts in any direction towards the horizon. Thus, a method and apparatus to address for the above challenges are desired. SUMMARY OF THE INVENTION The present invention relates to an apparatus and method of grid-oriented normalization for analysis of spherical areas—or the parameterization of features on spherical surfaces—from a 2-dimensional (2-D) image of the spherical surface (i.e., in the form of a photograph or satellite image). The present invention utilizes a predetermined grid of equal-area cells to enable the accurate and automated characterization of features on a spherical surface such as a planet or a moon, given the 2-D image. The present invention determines feature properties including feature area, centroid, moments of inertia, perimeter, compactness, major axis, bounding box, aspect ratio and North-South orientation. In one embodiment, a system which determines a plurality of metrics of a feature on a spherical surface, the system being disposed at one of a client computer or a server, includes: a grid generation engine which generates a grid according to a user configuration; a feature segmentation engine which digitizes a two-dimensional image of the spherical surface containing the feature and determines a location in the image where the feature resides, a grid overlay and enumeration engine which determines a position of the grid relative to the feature and overlays the grid onto the image to determine grid cell overlap and coverage; and a feature parameterization engine which performs analysis of the covered cells to obtain the plurality of metrics of the feature which are displayed to a user. In one embodiment, the system further includes: a graphical user interface (GUI) accessed by a user; a configuration engine which collects specification data from the user on grid configuration and selects the grid; and a grid generation engine which utilizes data from the configuration engine and determines equal-area per cell of the grid, and a definition of cell boundaries in latitude and longitude in said grid. In one embodiment, the grid overlay and enumeration engine includes: