PFI reader

Information

  • Patent Grant
  • 8717351
  • Patent Number
    8,717,351
  • Date Filed
    Wednesday, September 29, 2010
    14 years ago
  • Date Issued
    Tuesday, May 6, 2014
    10 years ago
Abstract
A PFI reader.
Description
FIELD OF THE INVENTION

The invention generally relates to a computer readable medium encoded with computer readable instructions for reading an image.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 illustrates a general overview of a Precision Fires Image generation process.



FIGS. 2A-B illustrate a block diagram of an embodiment of a PFI reader.





It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not to be viewed as being restrictive of the invention, as claimed. Further advantages of this invention will be apparent after a review of the following detailed description of the disclosed embodiments, which are illustrated schematically in the accompanying drawings and in the appended claims.


DETAILED DESCRIPTION

Embodiments may be implemented as an apparatus or article of manufacture using programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof. The term computer-readable medium (devices, carriers, or media), includes, but is not limited to, a magnetic storage media, “floppy disk”, CD-ROM, RAM, a PROM, an EPROM, a FLASH-EPROM, any other memory chip or cartridge, a File server providing access to the programs via a network transmission line, holographic unit, etc. Of course, those skilled in the art will recognize that many modifications may be made to this configuration without departing from the scope of the present invention.


Embodiments of the invention include a computer readable medium encoded with a data structure. The data structure includes an image File format including a PFI File Header that defines information needed to display a Precision Fires Image (PFI). The PFI is an overhead satellite image of an object with a geo-referenced, three dimensional (3-D) template of the object. The geo-referenced three dimensional (3-D) template provides a translation from image coordinates to ground coordinates. The image File format further includes an image segment pertaining to a “displayable image”, and an image segment pertaining to a “non-displayable” template image.


A Precision Fires Image (PFI) is an image from which a user may designate a point that is converted to a precision targeting coordinate. The PFI is a working National Imagery Transmission Format (NITF) Version 2.1 File extension that incorporates the Digital Point Positioning Data Base (DPPDB) structure as the basis for development. The PH provides a user with the ability to precisely designate items of interest within their field of view and area of influence by simply positioning a single marker, a cursor, on the desired item, a target. Precision targeting coordinates reduce non-combatant casualties, increase combatant casualties, reduce collateral damage, use munitions effectively and lower delivery costs while providing immediate detailed information regarding local terrain.


A PFI electronic File (“PFI File”) is generated using a National Imagery Transmission Format (NITF) File that consists of a single overhead satellite image, also known as a surveillance image, and a geo-referenced, three dimensional (3-D) template derived from a stereo referenced image (also referred to as “non-displayable” image). Several types of stereo referenced imagery are available and they include, the Digital Point Positioning Database (DPPDB), the Controlled Image Base (DB), Digital Terrain Elevation Data (DTED) and vector maps including VMAP or its commercial equivalents. Regardless of the type of stereo reference imagery used, the user is then forced to select one of two processing paths.


One path uses the stereo referenced image and a surveillance image provided from either a surveillance satellite or aircraft and invokes portions of the Digital Precision Strike Suite—Scene Matching (DPSS-SM) processing. DPSS-SM is an example of a path when the stereo referenced imagery and a surveillance image are both available. This is due to the timeliness and relevancy of the information included within the tactical image since a current satellite image or other current tactical image may present road movable targets.


A second path is selected in the absence of a surveillance image. The PFI software application is used to generate a PFI directly from the stereo referenced imagery when only the stereo referenced imagery is available. Regardless of the image source used to generate the PFI, the PFI enabled hand held is then used to accept a point designation from the user that is converted to a precision targeting coordinate and passed to the guided munitions.


During PFI File generation, the three dimensional (3-D) template and the stereo-referenced image are correlated, geo-registering a visible image with World Geodetic System 1984 (WGS-84) coordinate data, creating a single image File. To obtain the WGS-84 coordinates with height and elevation errors, an operator can perform a “single click” on the image. The PFI creation process occurs when the DPPDB stereo reference imagery pair is loaded into a PFI generating application. The user defines a region of interest by selecting a section from the left and right reference pair as the framework for an overlying three dimensional (3-D) template. One of the image pairs or a single tactical NITF image is used as the base image of the overall PFI File. Finally, the three dimensional (3-D) template and base image are correlated using an offset scheme to map the image pixel positions; and the final PFI product is created. Each stereo reference image undergoes extensive edge extraction, using edge extraction algorithm (in this case we used the Sobel algorithm). Once the imagery has completed edge erosion, it undergoes the correlation process where pixels are matched and template geographic locations are implemented.


A PFI is intended to be used on systems that lack the resources to run either the Precision Strike Suite for Special Operations (PSS-SOF) or Digital Precision Strike Suite—Scene Matching (DPSS-SM) applications. A typical File size nominally covers an area of 4×4 kilometers, allowing the image to be transmitted and viewed on low capacity computing devices with minimal storage and bandwidth constraints. Because of its size, multiple PFI image sets can be deployed at a given time, per area of focus. PFIs deployed on handheld devices also provide a platform for imagery and targeting capabilities that are beneficial to lower level echelon mission requirements.


The Digital Precision Strike Suite—Scene Matching (DPSS-SM) or Precision Fires Image Generator (PFIG) applications can be used to create an individual PFI product. DPSS-SM is the preferred source when overhead satellite imagery is directly available, due to the timeliness and relevancy of this data; PFIG, however, can be used to generate a PFI directly from the reference imagery if overhead imagery is not available. Both applications use an NGA validated algorithm to extract data from DPPDB stereo reference imagery in order to generate individual PFI Files.


An individual PFI is chipped from the DPPDB sizing up to 4096×4096 pixels. Support data, including latitude, longitude, elevation, CE, and LE, are implemented into the PFI structure and are essential in target designation and accuracy. PFIG performs PFI generation solely using DPPDB imagery for the correlation of a three dimensional (3-D) template and a single NITF image as the base for image pixilation. The DPSS-SM application uses the same correlation process but includes the use of up-to-date tactical imagery in the correlation process.


PFI supporting applications provide users with the capability to perform parallel operations in image exploitation and management. On a desktop platform, operators are expected to generate PFI images (using PFIG and DPSS-SM applications), and perform image categorization and File maintenance to include the exploitation of imagery. Operators then establish handheld synchronization for PFI management (using the Handheld Sync application), deploy Files onto handheld PFI viewing applications, and perform minimal exploitation and coordinate generation (while in a dismounted state).


In some embodiments, PFI Files are stored as raw uncompressed images. In other embodiments, PFI Files are stored using Joint Photographic Experts Group (JPEG) or JPEG 2000 compression; implementations of binary values, however, are not compressed within the PFI File structure.


The PFI File structure and content conforms to the NITFS, NITF Version 2.1 format specification in order to maintain interoperability between systems and differing agencies.


In some embodiments, compression, including, for example JPEG and JPEG 2000, and Gridded Reference Graphic (GRG) Text enhancements are included to allow for better compression, easier transmission, and more capability. Compression will be specified in the Image Header “IC” field.


Some embodiments of the invention include a scale integer in the “Image Segment Template” (4 in FIG. 1) of the PFI Header. The addition of the scale integer improves template error calculation and enhances the image template's scalability when stretched over the underlying image segment. FIG. 1 identifies both image segments.


The PFI File format configuration consists of multiple correlated Files. This configuration correlates a single “displayable” image segment with a “non-displayable” image segment. The “non-displayable” image segment includes correlated DPPDB stereo reference data and extended binary data allocated for PFI implementation.


The “displayable” image is the base image segment that conforms to the NITF 2.1 standard File Header structure; it is the underlying image that provides visible geographic features. The displayable image can also be stored as raw uncompressed pixel values or JPEG compressed.


The “non-displayable” template image will perform as the non-destructive overlay to the “displayable” image, with offsets to the X and Y values on the coordinate plane. The following syntax identifies the data structure for the “non-displayable” template within the PFI File Header:


struct. PFIData


{


Smallint row;


Smallint col;


float TemplateX;


float TemplateY;


float TemplateZ;


float TemplateDir;


};


struct PFIHeader


{


float Version;


bool IsSAR;


float CEP;


float CEM;


float CE90;


float LEP;


float LEM;


float LE90;


float SigmaX2;


float SigmaY2;


float SigmaXY;


double AimpointX;


double AimpointY;


double AimpointZ;


int scale; <--PFI 3.0 Version Implementation-->


};


The PFI structure implements a Tagged Record Extension (“TRE”) segment. This segment supports coordinate accuracy of the geo-location output for the four corner points. The TRE segment implementation will improve accuracy approximately one tenths of the standard NITF coordinate output. The TRE extension adheres to the standard TRE outlined in the “The Compendium of Controlled Extensions for the NITF 2.1.


GRGs—a product with an overprinted grid that may be either a non rectified image with a common reference grid or a rectified image with a precise metric grid—and text labels are user-defined labels implemented in the PFI File during PFI creation using the PFI Generator software application. GRG and text labels designate specified X and Y pixels on a PFI image.


The number of template point values is computed by subtracting the “Number of Columns” from the “Size of the PFI Header” divided by the “Size of the PFI Data.”

Number of Template Points=(Number of Columns)−(Size of PFI Header/Size of PFI Data)


The PFI binary code was developed using an Intel/AMD X86 processor on a Windows operating system. For development purposes, PFI byte ordering uses the “little endian” sequencing of data, which is determined at the machine processing level. For interoperability on systems other than the Windows platform (i.e., Macintosh/Sun Systems), the sequence of data must be parsed in the reverse order.


In order to maintain the integrity of PFI functionality on target based systems, the mathematical model and error terms will not be included in this document. As a result, a Dynamic Link Library (DLL) is available in order to provide third party applications with the capability to read PFI embedded information. DLL implementation is available for Windows operating systems and includes the code, data, and resources required for executing PFI generation.


Table A-1 identifies PFI File Headers. The table identifies PFI File Headers using a field ID, name (and associated information/function), size, and value range; however, the field ID, name, size and value range can vary without departing from the invention.









TABLE A-1







PFI File Header (Binary)















TYPE






R = Required






C = Conditional


FIELD ID
NAME
SIZE
VALUE RANGE
O = Optional














FHDR
File ProFile Name: A binary
9
NITF
R



coded character string indicating






the NITF standard.





FVER
File Version: Indicates this File
5
02.10
R



is formatted using version 2.1 of






the NITF.





CLEVEL
Complexity Level: This field
2
Follow NITF
R



includes a complexity level of 3

default values




or 5 based on the range value.





STYPE
Standard Type: Standard type or
4
BF01
R



capability.





OSTAID
Originating Station ID: This
10
PFIG - Version
R



field indicates the originating

Number




organization. The value

or




indicates versions of the PFIG/

DPSS-SM -




DPSS-SM applications of which the

Version Number




image was created.





FDT
File Date & Time: This field
14
YYYYMMDDHHMMSS
R



specifies the date the File was






created.





FTITLE
PFI ID: This field specifies the
80
Value
R



image as a PFI and also indicate

indicates PFI




the originating PFI generating






application, image corner points,

D or T for




and image date.

originating




The initial value is “D” if the

source of




File was created with PFIG

production.




software. The initial value is

Corner Point




“T” if File was created with

Values:




DPSS-SM. The PFI ID also

Follow NITF




includes the 4 corner point

default values




values, the image date, and rough

Image Date:




estimate of the coordinate

YYYYMMDD




quality using a letter character

The following




(see the example below).

single




EX: <PFI-D:354136N1174037W

character




354102N1174047W354110N

values




1174128W354145N1174118W:20010322>

indicating




: G

coordinate






accuracy:






G = green






(good






accuracy)






Y = yellow (ok






accuracy)






O = orange






(low accuracy)






R = red (no






accuracy)



FSCLAS
File Security Classification:
1
Follow NITF
R



This field includes a value based

default values




on the classification of the






underlying support data.





FSCLSY
File Security Classification
2
Follow NITF
O



System: This field indicates the

default values




national or multinational






security system used to classify






the File.





FSCODE
File Codewords: This field
11
Follows NITF
O



indicates that no security

default values




compartments are associated with






the File.





FSCTLH
File Control and Handling: This
2
Follows NITF
O



field includes security handling

default values




instructions in accordance with






the File.





FSREL
File Releasing Instructions:
20
Follows NITF
R



This field indicates the

default values




countries or groups to which the






Files are authorized.





FSDCTP
File Declass Type: This field
2
Follows NITF
O



includes an identifying code for

default values




the classification authority.





FSDCDT
File Declass Date: This field
8
Follows NITF
O



indicates the declassifying date.

default values



FSDCXM
File Declass Exemption: This
4
Follows NITF
O



field indicates reasons for

default values




automatic File declassification






exemption.





FSDG
File Downgrade: This field
1
Follows NITF
O



indicates the File classification

default values




for downgrade.





FSDGDT
File Downgrade Date: This field
8
Follows NITF
O



indicates the date of File

default values




classification downgrade.





FSCPYS
File Number of Copies: This
5
00000
O



field indicates the number of






copies of the File.





FSCLTX
File Class Text: This field
43
Follows NITF
O



provides additional File

default values




classifying information.





FSCATP
File Class Author Type: This
1
Follows NITF
O



field indicates the type of

default values




classifying authority.





FSCAUT
File Class Author: This field
40
Follows NITF
O



indentifies the classifying

default values




authority.





FSCRSN
File Class Reason: This field
1
Follows NITF
O



indicates the reason for File

default values




classification.





FSSRDT
File Security SRC Date: This
8
Follows NITF
O



field indicates the date of the

default values




source used to derive






classification.





FSCTLN
File Control Number: This field
15
Follows NITF
O



includes the File's valid

default values




security control number.





FSCOP
File Copy Number: This field
5
00000
R



includes the File copy number.





FSCPYS
File Number of Copies: This
5
00000
R



field includes the total number






of File copies.





ENCRYP
Encryption: This field includes
1
0
R



the value zero.





FBKGC
File Background Color: This
3
Follows NITF
R



field includes the colors Red,

default values




Green, & Blue.





ONAME
Originator's Name: This field
24
Customizable
O



identifies the organization that

as a PFIG




originated the File.

option



OPHONE
Originator's Phone Number: This
18
Follows NITF
O



field includes a valid phone

default values




number of the originating






operator.





FL
File Length: This field
12
388 -
R



specifies the entire PFI File in

999999999999




bytes.





HL
NITF File Header Length: This
6
Follows NITF
R



field specifies the length of the

default values




Header File in bytes.





NUMI
Number of Images: This field
3
002
R



specifies a zero to indicate that






there is no image present within






the File.





LISHn
Length of SubHeader 0: This
6
Follows NITF
C



field includes the image

default values




subHeader length in bytes.





LIn
Length of Image 0: This field
10
Follows NITF
C



includes image length in bytes.

default values



LISH001
Length of SubHeader 1: This
6
Follows NITF
C



field includes the first ordered

default values




image subHeader segment in bytes.





LI001
Length of Image 1: This field
10
Follows NITF
C



includes the first ordered image

default values




length in bytes.





LSn
Number of Graphics: This field
6
Follows NITF
C



includes the bytes for the nth

default values




graphic subHeader.





NUMX
Reserved for future use:This
3
000
R



field is reserved for future use.





NUMT
Number of Text Files: This field
3
000 or 1 if
R



includes the number of separate

GRG is present




text segments within the File.





LTSHn
Length of Text SubHeader 0: This
4
Follows NITF
C



field includes a valid length for

default values




the text subHeader in bytes.





LTn
Length of Text File: This field
5
Follows NITF
C



includes the valid length of the

default values




text segment in bytes.





NUMDES
Number of DES: This field
3
000
R



includes the number of separate






Data Extension Segments included






in the File.





NUMRES
Number of RES: This field
3
000
R



includes the number of separate






Reserve Extension Segments in






File.





UDHDL
User-Defined Length: This field
5
00000
R



includes the value of BCS zeros






if no TREs are included in the






user defined Header.





XHDLOFL
Extended Header Data Overflow:
5
00000
C



This field includes BCS zeros if






the TREs in the extended Header






do not flow into the data






extension segment.









PFI Image Header. FIG. 1 identifies two Image segments, 2, 4, and associated Image Headers in the PFI Header File. PFI Image Header 0 (initial Header File indicated by the value “0” in the table/code) 6 specifies the Image Header with the “displayable” image data included within. The secondary PFI Image Header (Header indicated by the value “1” in the table/code) 8 specifies the Image Header with the “non-displayable” image data included within. Table A-2 indicates all fields included within both Image Headers; however, the field ID, name, size and value range can vary without departing from the invention. A ‘B’ in the Type column identifies information where data will change according to each individual PFI Header File.









TABLE A-2







PFI Image Headers (2)















TYPE






R = Required






C = Conditional


FIELD ID
NAME
SIZE
VALUE RANGE
O = Optional














IM
File Part Type: This
2
IM
R



field includes the






characters “IM” to






identify the subHeader as






an image subHeader.





IID
Image Identifier 1: This
10
Image Header 0
R



field includes the image

includes: PFI
B



ID included within the

Image




File. It will identify

Image Header 1




the data as PFI Image or

includes: PFI




PFI Data.

Data



IDATIM
Image Date and Time: This
14
YYYYMMDDHHMMSS
R



field includes the date


B



and time of the original






image. Values start with






the four digit year, two






digit month, two digit






days, hours, minutes, and






seconds.





TGTID
Target Identifier: This
17
Follows NITF
O



field includes the

default values




identification of the






primary target in the






format.





IID2
Image Identifier 2: This
10
File Format
O



field includes a second

Version
B



image identifier.





ISCLAS
Image Security Class:
1
Follows NITF
R



This field includes a

default values




classification level based






on the originating






imagery.





ISCLSY
Image Security Class
2
Follows NITF
R



System: This field

default values




indicates the national or






multinational security






system that classified the






image.





ISCODE
Image Codewords: This
40
Follows NITF
O



field identifies the

default values




security compartments






associated with the image.





ISCTLH
Image Control: This field
2
Follows NITF
O



includes additional

default values




security control and/or






handling instructions for






the image.





ISREL
Image Release
20
Follows NITF
R



Instructions: This field

default values




includes a list of






countries where release of






imagery is authorized.





ISDCTP
Image Declass Type: This
2
Follows NITF
O



field indicates the

default values




security declassification






type or downgrading






instructions for the






image.





ISDCDT
Image Declass Date: This
8
Follows NITF
O



field indicates a date to

default values




which the image will be or






has been declassified.





ISDCXM
Image Declass Exemption:
4
Follows NITF
O



This field indicates a

default values




reason for the image's






automatic exemption from






declassification.





ISDG
Image Downgrade: This
1
Follows NITF
O



field indicates the

default values




classification level to






which the image will be






downgraded.





ISDGDT
Image Downgrade Date:
8
Follows NITF
O



This field indicates the

default values




date on which the image is






to be downgraded.





ISCLTX
Image Class Text: This
43
Follows NITF
O



field is used to provide

default values




additional information






about the image






classification.





ISCATP
Image Class Author Type:
1
Follows NITF
O



This field indicates the

default values




type of authority used to






classify the image.





ISCAUT
Image Class Authority:
40
Follows NITF
O



This field identifies the

default values




classification authority






and is dependent on the






classification authority






type.





ISCRSN
Image Class Reason: This
1
Follows NITF
O



field includes values

default values




indicating the reason for






image classification.





ISSRDT
Image Security SRC Date:
8
Follows NITF
O



This field indicates the

default values




date of the source used






for classification of the






image.





ISCTLN
Image Control Number:
15
Follows NITF
O



This field includes an

default values




image control number






associated with the image.





ENCRYP
Encryption: This field
1
Follows NITF
O



includes the value BCS

default values




zero according to NITF






specifications.





ISORCE
Image Source: This field
42
Originating
R



includes the PFI

source,
B



originating source

either:




(PFIG/DPSS-SM). If the

PFIG: D #-




image originates from

Segment ID-




PFIG, this field should

Left Offset




include the DPPDB

X,Y-Right




(indicated by D) number

Offset X,Y




segment and left and right

or




offset X, Y values.
If
DPSS-SM-




the image originates from

Tactical Image




DPSS-SM, it includes the

Name




Tactical Image name.






PFIG source example:






D01022496-0703-9003-24785-






9003-24785






DPSS-SM source example:






Baghdad.ntf





NROWS
Number of Rows: This
8
Image Header 0
R



field includes the total

indicates
B



number of rows of

values: 0-




significant pixels within

00001024;




the image.

0-00002048;




The number of rows of

0-00004096




significant pixel values

Image Header 1




will be determined by the

indicates




Image Header type. Image

value:




Header 0 includes the

00000001




displayable image. Image






Header 1 includes a non-






displayable image. These






values are specified in






the value range.





NCOLS
Number of Columns: This
8
Image Header
R



field includes the total

indicates
B



number of columns of

values:




significant pixels within

0-00001024;




the image. These values

0-00002048;




are encoded in the binary

0-00004096




format.

Image Header 1






indicates






values based






on length of






binary data



PVTYPE
Pixel Value Type: This
3
Follows NITF
R



field indicates the

default




computer representation

values.




type used for each pixel






for each band.





IREP
Image Representation:
8
Image Header 0
R



This field indicates the

(displayable
B



required processing for

image)




the image display. Image

indicates:




Header 0 includes the

NITF default




displayable image. Image

values.




Header 1 includes a non-

Image Header 1




displayable image. Image

(non-




identifiers are specified

displayable




in the value range.

image) will






indicate:






NODISPLY



ICAT
Image Category: This
8
Follows NITF
R



field indicates the image

default values




category.





ABPP
Actual bits-per-pixel:
2
08
R



This field indicates the






number of “significant






bits” in each band of each






pixel without compression.





PJUST
Pixel Justification: This
1
L (left
R



field indicates whether

justification)




significant bits are left






or right justified. This






is dependent on whether






the ABPP is not equal to






NBPP.





ICORDS
Image Coordinate
1
G
R



Representation: This

(geolocation)




field indicates the type






of coordinate






representation.





IGEOLO
Image Geographic Location:
60
Follows NITF
C



This field includes the

default values




four corner points of the






PFI image.





NICOM
Number of Comments: This
1
Follows NITF
R



field includes the number

default values




of ICOM fields that hold






free text image comments.





IC
Image Compression: This
2
NC (no
R



field indicates the form

compression)
B



of compression used in

or




representing the image

C3 (JPEG




data. It also specifies

compression)




if a PFI File is JPEG






compressed or not.





COMRAT
Compression Rate Code:
4
Follows NITF
O



This field shall be

default values




present on condition that

and depends




the IC field includes

on IC value




appropriate codes. This

field




indicates the compression






rate for the image.





NBANDS
Number of Bands: This
1
Follows NITF
R



field includes the number

default values




of data bands within the






image.





XBANDS
Multi-spectral bands:
5
Follows NITF
C



This field is dependent on

default values




NBANDS value.





IREPBAND
Band Representation 0:
2
Follows NITF
R



This field indicates the

default values




processing required to






display the band with






regards to the image type






in the IREP value.





ISUBCAT
Band Subcategory: This
6
Follows NITF
O



field indicates the

default values




significance of the “n”






bands with regard to the






ICAT field.





IFC
Filter Condition: This
1
Follows NITF
R



field includes the value N

default values




to represent none.





IMFLT
Filter Code: This field
3
Follows NITF
O



is reserved for future

default values




use.





NLUTS
Number of LUTS for the nth
1
Follows NITF
R



Image Band: This field

default values




indicate the number of






LUTS associated with the






“nth” band of the image.





ISYNC
Image Sync Code: This
1
Follows NITF
R



field is reserved for

default values




future use.





IMODE
Image Mode: This field
1
B (band
R



indicates how image pixels

interleaved by




are stored in the NITF

block)




File.





NBPR
Blocks per Row: This
4
Follows NITF
R



field includes the number

default values




of image blocks in a row






of blocks in the






horizontal direction.





NBPC
Blocks per Column: This
4
Follows NITF
R



field includes the number

default values




of image blocks in a






column Of blocks in the






vertical direction.





NPPBH
Pixels per Block (H):
4
Follows NITF
R



This field includes the

default values




number of pixels






horizontally in each block






of the image.





NPPBV
Pixels per Block (V):
4
Follows NITF
R



This field includes the

default values




number of pixels






vertically in each block






of the image.





NBPP
Bits per Pixel: This
2
08
R



field is dependent on the






IC field.





IDLVL
Image display Level: This
3
Follows NITF
R



field indicates the

default values




display level relative to






other displayed File






components in a composite






display.





IALVL
Attachment Level: This
3
Follows NITF
R



field indicates the

default values




attachment level of the






image.





ILOC
Image Location: This is
10
Follows NITF
R



the location of the first

default values




pixel of the first line of






the image. It includes






the image location offset






from ILOC/SLOC value of






the segment that the image






is attached to or from the






origin of the CCS when the






image is unattached.





IMAG
Image Magnification: This
4
Follows NITF
R



field includes the

default values B




template magnification






level. This applies to






Image Header 1, which is






indicated as the template.





UDIDL
User Defined Length: This
5
00000
R



field is dependent on






whether the TREs exist:






otherwise, BCS zeros will






denote that there are no






TREs.





IXSHDL
Extended SubHeader Length:
5
00123
R



This field includes the


B



TRE indicated as Block A.






See Table A-4 for segment






specifications.









Text File Header information. The Text Header specifies Gridded Reference


Graphics (GRG) labels for buildings and intersections. In some embodiments, numerical values indicate buildings and alphabetical values indicate intersections. However, in other embodiments, alphabetical values indicate buildings and numerical values indicate intersections. Table A-3 specifies Text File Header fields used in an embodiment of the invention that includes Text File Header Information. The table identifies Text File Headers using a field ID, name (and associated information/function), size, and value range; however, the field ID, name, size and value range can vary without departing from the invention.


Buildings: Numeric values are positioned on an X Pixel and Y Pixel and is divided into categories of “macro” and “micro” labels. A “macro” label is the beginning number to a series of “micro” numbers. In Table A-3, for example, numbers 10 and 20 start off the series to number sets 11-15 and 21-25. These number sets are defined as the “micro” labels. The number of “micro” labels assigned depends on mission requirements. Table A-3 provides an example of the GRG labeling system in order to identify the hierarchy of GRG text labels.


Intersections: Alphabetical values have been added to the “Text File Data 0” field to mark intersections or other physical features on the image.









TABLE A-3







Text File Header















TYPE






R = Required






C = Conditional


FIELD ID
NAME
SIZE
VALUE RANGE
O = Optional














TE
File Part Type: This field
2
TE
R



includes TE to identify the






subHeader as a “text subHeader.”





TEXTID
Text Identifier: This field
3
GRG
R



includes identification code GRG






for Gridded Reference Graphics.






This is associated with the text






item.





TXTDT
Text Date and Time: This field
14
YYYYMMDDhhmmss
R



includes the time of origination






of the text.





TXTTITL
Text Title: This field includes
80
Follow NITF
O



the text title.

default






values



TSCLAS
Text Security Classification:
1
S
R



This field includes the value “S”






for a Secret classification to






indicate the GRG is secret.





TSCLSY
Text Security Classification
2
Follow NITF
O



System: This field indicates the

default




national or multinational

values




security system that classified






the text.





TSCODE
Text Codewords: This field
11
Follow NITF
O



indicates the security

default




compartments associated with the

values




text.





TSCTLH
Text Control and Handling: This
2
Follow NITF
O



field includes additional

default




security control and/or handling

values




instructions.





TSREL
Text Releasing Instructions:
2
Follows NITF
R



This field includes the

default




classification releasability code

values




of the image.





TSDCTP
Text Declassification Type: This
2
Follow NITF
O



field indicates the type of

default




security declassification or

values




downgrading instructions.





TSDCDT
Text Declassification Date: This
8
Follow NITF
O



field indicates the date on which

default




the text is or has been

values




declassified.





TSDCXM
Text Declassification Exemption:
4
Follow NITF
O



This field indicates the reason

default




the text is exempt from automatic

values




declassification.





TSDG
Text Downgrade: This field
1
Follow NITF
O



indicates the classification

default




level to which a text is to be

values




downgraded.





TSDGDT
Text Downgrade Date: This field
8
Follow NITF
O



indicates the date on which the

default




text is to be downgraded.

values



TSCLTX
Text Classification Text: This
43
Follow NITF




field indicates additional

default




information about text

values




classification





TSCATP
Text. Classification Authority
1
Follow NITF
O



Type: This field indicates the

default




type of authority used to

values




classify the text.





TSCAUT
Text Class Authority: This field
40
Follow NITF
O



identifies the classification

default




authority and is dependent on the

values




TSCATP.





TSCRSN
Text Classification Reason: This
1
Follow NITF
O



field indicates the reason for

default




classifying the text

values



TSSRDT
Text Security Source Date: This
8
Follow NITF
O



field indicates the source date

default




used to derive text

values




classification.





TSCTLN
Text Security Control Number:
15
Follow NITF
O



This field includes a control

default




number associated with text.

values



ENCRYP
Encryption: This field includes
1
0
R



BCS zero until specified by NGA.





TXTFMT
Text Format: This field
3
STA
R



indicates the format or type of






text data.





TXSHDL
Text Extended SubHeader Data
5
00000
R



Length: This field represents






that there are no TREs included






in the text subHeader.









Some embodiments include a tagged record extension (“TRE”) segment that supports coordinate accuracy of a geo-location output for the four corner points of the PFI. Table A-4 provides a table of Header fields for embodiments including a controlled TRE including additional geo-location identifiers intended to improve accuracy in coordinate output. The table identifies Text File Headers using a field ID, name (and associated information/function), size, and value range; however, the field ID, name, size and value range can vary without departing from the invention. The TRE is located in Image Header 0 and includes data associated with the Image Geographic Location (IGEOLO). The TRE provides enhanced precision accuracy of the four corner points.









TABLE A-4







Block A TRE














Value



Field
Name
Size
Range
Type














EXTENSION ID
Extension ID: This
6
BLOCKA
R



field includes the






unique extension






identifier “Block A”






for TRE segment






identification.





TAGGED
Tagged Record Length:
5
00123
R


RECORD
This field indicates the





LENGTH
length of the TRE.





BLOCK_IN-
Block Instance: Block
5
00002
R


STANCE
number of the image






block.





N_GRAY
Gray Fill Pixels: This
5
00005
R



field indicates the






number of gray fill






pixels.





L_LINES
Line Count: This field
5
00005
R



indicates number of






rows.





LAY-
Layover Angle: In
5
00003
R


OVER_ANGLE
regards to SAR






Imagery, this field






indicates the






angle between the first






row of pixels and the






layover direction in a






clockwise direction.





SHA-
Shadow Angle: In
5
00003
R


DOW_ANGLE
regards to SAR






imagery, this field






indicates the angle






between the first row






of pixels and the






layover direction






measured in a






clockwise direction.





FIELD6
Reserved 1: This field
5
00016
R



indicates this Data






Mapping ID is reserved






and not for present use.





FRLC_LOC
First Row/Last Column:
5
00021
R



This field indicates the






location of the first row






and last column of the






image block.





LRLC_LOC
Last Row/Last Column:
5
00021
R



This field indicates the






location of the last row






and last column of the






image block.





LRFC_LOC
Last Row/First Column:
5
00021
R



This field indicates the






last row and first column






of the image block.





FRFC_LOC
First Row/First Column:
5
00021
R



This field indicates the






first row and first






column of the image






block.





FIELD11
Reserved 2: This field
5
00005
R



indicates this Data






Mapping ID is reserved






and not for present use.









Embodiments of a PFI Reader


Embodiments of a PFI Reader apparatus is/are described with reference to the block diagram 10 in FIG. 2. A function request by a host application is received and identified by an electronic processor. Computer readable instructions stored on a computer readable medium are accessed and performed by and electronic processor causing the electronic processor to perform a process involving a variable related to the process. Embodiments of the invention include any single, or multiple (in any combination), of the described instructions and process corresponding to a function request described below.


One function request by a host application that is received and identified by the electronic processor in some embodiments of the invention is a request to open a File 2. Once received and identified by the electronic processor, the computer readable instructions stored on the electronic processor performs the process identified in FIG. 2 within block 4. The computer readable instructions (in this case ‘File opening computer readable instructions’) cause the electronic processor to access the File Header associated with the File requested to be opened, open it, store the File Header data/information in non-volatile memory, process the data/information in the File Header associated with the File requested to be opened 6, and determine whether the File Header associated with the File requested to be opened is valid 8 (Tile Header reading instructions'); the File Header is determined to be invalid when the accessed File Header(s) does not conform to the PFI File format specification. When the File Header is not valid, the computer readable instructions cause the electronic processor to indicate an error code 12. When the File Header is valid, the computer readable instructions cause the electronic processor to access the Image Header associated with “displayable” image associated with the File requested to be opened, open the Image Header associated with “displayable” image associated with the File requested to be opened, store the Image Header (associated with “displayable” image associated with the File requested to be opened) data/information in non-volatile memory, process the data/information in the Image Header associated with the “displayable” image associated with the File requested to be opened 14, and determine whether the Image Header associated with “displayable” image associated with the File requested to be opened is valid 16 (Image Header reading instructions'); the Image Header is determined to be invalid when the accessed Image Header does not conform to the PFI image File format specification. When the Image Header is not valid, the computer readable instructions cause the electronic processor to indicate an error code 18. When the Image Header is valid, the computer readable instructions cause the electronic processor to access the 3-D Template Header associated with the “non-displayable” image associated with the File requested to be opened, open the 3-D Template Header associated with the “non-displayable” image associated with the File requested to be opened, store the 3-D Template Header data/information in non-volatile memory, process the data/information in the Image Header associated with the “non-displayable” image associated with the File requested to be opened 20, and determine whether the 3-D Template Header is valid 22 (‘3-D Template Header reading instructions’); the 3-D Template Header is determined to be invalid when the accessed Image Header does not conform to the PFI image File format specification. When the Image Header is not valid, the computer readable instructions cause the electronic processor to indicate an error code 24. When the 3-D Template Header associated with the “non-displayable” image associated with the File requested to be opened is valid, the computer readable instructions cause the electronic processor to indicate that no error has occurred.


Another function request by a host application that is received and identified by the electronic processor in some embodiments of the invention is a request for Image Corners 26. Once received and identified by the electronic processor, the computer readable instructions (in this case ‘image corner computer readable instructions’) stored on the electronic processor cause the electronic processor to access and process a saved “displayable” Image Header including four geographical corner points of the “displayable” image 28, with the corner points being defined (when defined properly) by a location identified by latitude and longitude coordinates. The computer readable instructions cause the electronic processor to read the corners 28 and determine whether the corners are valid. The computer readable instructions cause the electronic processor to return the read corners and indicate an error code when the corners are not defined using a pre-determined system of location identification 30.


Another function request by a host application that is received and identified by the electronic processor in some embodiments of the invention is a request for Image Security 32. Once received and identified by the electronic processor, the computer readable instructions (in this case ‘security status computer readable instructions’) stored on the electronic processor cause the electronic processor to access a saved File Header and displayable Image Header including the security classification of the “displayable” image 34. The computer readable instructions cause the electronic processor to determine whether the read Security classification is valid. The computer readable instructions cause the electronic processor to return Image Security strings and return an error code when the read security classification is not defined using a pre-determined system of security classification 36.


A further function request by a host application that is received and identified by the electronic processor in some embodiments of the invention is a request for Image Data 38. Once received and identified by the electronic processor, the computer readable instructions (in this case ‘displayable image computer readable instructions’) stored on the electronic processor cause the electronic processor to access and process at least one image block within the “displayable” image and, when requested by a user, reconstruct an image including a plurality of image blocks included in the “displayable” image 40. The computer readable instructions cause the electronic processor to return image data, image dimensions, and an error code when the “displayable” image File is corrupted 42.


A further function request by a host application that is received and identified by the electronic processor in some embodiments of the invention is a request for the 3-D Template (“non-displayable” image) data and error code 44. Once received and identified by the electronic processor, the computer readable instructions (in this case ‘3-D Template computer readable instructions’) stored on the electronic processor cause the electronic processor to read the 3-D template image by accessing and processing the non-displayable (3-D template) image Headers and information therein 46. The computer readable instructions cause the electronic processor to return an error code when the 3-D template image File is corrupted 50.


Another function request by a host application that is received and identified by the electronic processor in some embodiments of the invention is a request for coordinate(s) 52. Once received and identified by the electronic processor, the computer readable instructions (in this case ‘coordinate computer readable instructions’) stored on the electronic processor cause the electronic processor to read the 3-D template data and location by accessing and processing the non-displayable image Headers and the information included therein 54, finding the template point(s) closest to the image pixel for which a coordinate is requested 56, and interpolating the template points to compute a “displayable” image coordinate with latitude, longitude, and elevation 58. The computer readable instructions cause the electronic processor to return the “displayable” image coordinates 60. The computer readable instructions cause the electronic processor to calculate and output an estimated accuracy of the outputted coordinate 62. The computer readable instructions also cause the electronic processor to output an error code when a “displayable” image coordinate cannot be generated; the error code will correspond to at least one error code in a set of error codes that describe why the “displayable” image coordinate could not be generated 64.


While the invention has been described, disclosed, illustrated and shown in various terms of certain embodiments or modifications which it has presumed in practice, the scope of the invention is not intended to be, nor should it be deemed to be, limited thereby and such other modifications or embodiments as may be suggested by the teachings herein are particularly reserved especially as they fall within the breadth and scope of the claims here appended.

Claims
  • 1. A non-transitory computer readable medium encoded with computer readable instructions, comprising: file opening computer readable instructions to cause an electronic processor to open a Precision Fires Image (PFI) File; image corner computer readable instructions to cause said electronic processor to return image corners of a displayable image associated with said PFI File;security status computer readable instructions to cause said electronic processor to return the security status of said displayable image;displayable image computer readable instructions to cause said electronic processor to return displayable image data;3-D template data computer readable instructions to cause said electronic processor to return 3-D template data describing a 3-D template image associated with said PFI File;coordinate computer readable instructions to cause said electronic processor to return a coordinate of a point on said displayable image:wherein said displayable image data comprises displayable image dimensions;wherein said File opening computer readable instructions comprises:file header reading instructions, said file header reading instructions causing said electronic processor to access a PFI File Header associated with said PFI File requested to be opened, open said PFI File Header, store said PFI File Header data and information included within said opened PFI File Header in non-volatile memory, process said PFI File Header data and information included within said PFI File Header associated with said PFI File requested to be opened;Image Header reading instructions, said Image Header reading instructions causing said electronic processor to access a plurality of displayable Image Headers associated with the PFI File requested to be opened, open said plurality of displayable Image Headers, store displayable Image Header data and information included within said opened plurality of displayable Image Headers in the non-volatile memory, and process said displayable Image Header data/information; and3-D Template Header reading instructions, said 3-D template Header reading instructions causing said electronic processor to access a plurality of 3-D template Headers associated with the PFI File requested to opened, open said plurality of 3-D Template Headers, store 3-D Template Header data and information included within said opened plurality of 3-D Template Headers in the non-volatile memory, and process said 3-D template Header data and information.
  • 2. The non-transitory computer readable medium of claim 1 wherein said image corner computer readable instructions comprise: computer readable instructions to cause said electronic processor to access and process a saved displayable Image Header including four geographical corner points of the displayable image with the corner points being defined by a location identified by latitude and longitude coordinates.
  • 3. The non-transitory computer readable medium of claim 2 wherein said security status computer readable instructions comprise computer readable instructions to cause said electronic processor to access a saved PFI File Header and displayable Image Header including a security classification of said displayable image.
  • 4. The non-transitory computer readable medium of claim 3 wherein said displayable image computer readable instructions comprise computer readable instructions to cause said electronic processor to access and process at least one image block within said displayable image and reconstruct an image including a plurality of image blocks included in said displayable image.
  • 5. The non-transitory computer readable medium of claim 4 wherein said 3-D template data computer readable instructions comprise computer readable instructions to cause said electronic processor to read said 3-D template image by accessing and processing non-displayable Image Headers and information therein.
  • 6. The non-transitory computer readable medium of claim 5 wherein said coordinate computer readable instructions comprise computer readable instructions to cause said electronic processor to read said 3-D template image data and location by accessing and processing said non-displayable Image Headers and the information included therein, find a pre-determined number of 3-D Template point(s) closest to the displayable image pixel for which a coordinate is requested, and interpolate said predetermined number of 3-D Template point(s) to compute a displayable image coordinate with latitude, longitude, and elevation, said coordinate instructions causing said electronic processor to return the computed displayable image coordinate.
  • 7. The non-transitory computer readable medium of claim 6 wherein said coordinate computer readable instructions further comprise computer readable instructions to cause said electronic processor to calculate and output an estimated accuracy of said computed displayable image coordinate.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation in part of U.S. Patent Application having Navy Case number 100218. The invention described herein may be manufactured and used by or for the government of the United States of America for governmental purposes without the payment of any royalties thereon or therefor.

US Referenced Citations (7)
Number Name Date Kind
6507660 Wirtz et al. Jan 2003 B1
6988049 Wirtz et al. Jan 2006 B1
7440610 Wirtz et al. Oct 2008 B1
8064640 Wirtz et al. Nov 2011 B2
20080181454 Wirtz et al. Jul 2008 A1
20080303832 Kim et al. Dec 2008 A1
20100180191 Taber Jul 2010 A1
Non-Patent Literature Citations (8)
Entry
U.S. Appl. No. 12/587,322, Michael Mathew Wirtz, et al.
U.S. Appl. No. 12/924,801, Michael M. Wirtz, et al.
U.S. Appl. No. 13/374,622, Michael M. Wirtz, et al.
U.S. Appl. No. 13/374,618, Michael M. Wirtz, et al.
Blackburn, Christopher, Amendment Under 37 CFR 1.111, U.S. Appl. No. 12/924,801, filed Jan. 27, 2014.
Shin, Andrew, Notice of Allowance and Fees Due, U.S. Appl. No. 12/894,801 to Michael Matthew Wirtz, et al, mailed Mar. 3, 2014.
Shin, Andrew, Notice of Allowability, U.S. Appl. No. 12/894,801 to Michael Matthew Wirtz, et al, mailed Mar. 3, 2014.
Wirtz, Michael M, U.S. Appl. No. 12/894,801, filed Sep. 28, 2010.