1. A computer-implemented method for generating an exterior geometry of a building based on a corresponding collection of interior geometry, the method comprising:
receiving a collection of interior geometry data of a building, wherein the interior geometry data of the building corresponds to one or more levels, wherein each of the one or more levels is associated with a corresponding vertical span, and wherein the each of the one or more levels corresponds to a respective one or more 2-D section polygons;
extruding into one or more 2.5-D section polygons, the one or more 2-D section polygons, wherein the extruding comprises assigning to each of the one or more 2-D section polygons, the corresponding vertical span associated with the each of the one or more levels to which the each of the one or more 2-D section polygons correspond; and
constructing, based on one or more of the extruded 2.5-D section polygons, a 2.5-D merged polygon set, wherein an outer shell of the 2.5-D merged polygon set corresponds to an exterior geometry corresponding to the building.
2. The computer-implemented method of claim 1, wherein the collection of interior geometry data of the building is grouped logically based on a grouping algorithm.
3. The computer-implemented method of claim 1, further comprising:
grouping the one or more 2-D section polygons based on the corresponding one of the one or more levels.
4. The computer-implemented method of claim 1, wherein the constructing the 2.5-D merged polygon set comprises:
stacking the one or more of the 2.5-D section polygons;
merging at least two stacked 2.5-D section polygons; and
simplifying the merged at least two stacked 2.5-D section polygons.
5. The computer-implemented method of claim 4, wherein the merging of the at least two stacked 2.5-D section polygons is based on a Z range of each of the at least two stacked 2.5-D section polygons.
6. The computer-implemented method of claim 4, wherein the merging of the at least two stacked 2.5-D section polygons is based on a footprint of each of the at least two stacked 2.5-D section polygons.
7. The computer-implemented method of claim 4, wherein the stacking of the one or more of the 2.5-D section polygons is based on an order value, wherein the order value indicates a logical location of each one of the one or more levels, relative to each other.
8. The computer-implemented method of claim 1, wherein each of the one or more levels is a logical grouping of a portion of the collection of interior geometry data, wherein the logical grouping is based on a height with respect to a ground level.
9. The computer-implemented method of claim 1, wherein each of the one or more 2-D section polygons is defined by one or more sets of latitudinal and longitudinal coordinates.
10. The computer-implemented method of claim 1, wherein the one or more 2-D section polygons are generated based on a floor plan of the building.
11. The computer-implemented method of claim 1, further comprising:
updating an existing geometry of the building using the exterior geometry corresponding to the building.
12. A system for generating an exterior geometry of a building based on a corresponding collection of interior geometry, the system comprising:
a memory comprising instructions for generating an exterior geometry of a building based on a corresponding collection of interior geometry; and
a processor configured to execute the instructions to:
receive a collection of interior geometry data of a building, wherein the interior geometry data of the building corresponds to one or more levels, wherein each of the one or more levels is associated with a corresponding vertical span, and wherein the each of the one or more levels corresponds to a respective one or more 2-D section polygons;
extrude into one or more 2.5-D section polygons, the one or more 2-D section polygons, wherein the extrusion comprises assignment to each of the one or more 2-D section polygons, of the corresponding vertical span associated with the each of the one or more levels to which the each of the one or more 2-D section polygons correspond; and
construct, based on one or more of the extruded 2.5-D section polygons, a 2.5-D merged polygon set, wherein an outer shell of the 2.5-D merged polygon set corresponds to an exterior geometry corresponding to the building, and wherein the construction of the 2.5-D merged polygon set comprises stacking of the one or more of the 2.5-D section polygons, merging of at least two stacked 2.5-D section polygons, and simplification of the merged at least two stacked 2.5-D section polygons.
13. The system of claim 12, wherein the processor is further configured to execute the instructions to:
group the one or more 2-D section polygons based on the corresponding one of the one or more levels.
14. The system of claim 12, wherein the merging of the at least two stacked 2.5-D section polygons is based on a Z range of each of the at least two stacked 2.5-D section polygons.
15. The system of claim 12, wherein the merging of the at least two stacked 2.5-D section polygons is based on a footprint of each of the at least two stacked 2.5-D section polygons.
16. The system of claim 12, wherein the stacking of the one or more of the 2.5-D section polygons is based on an order value, wherein the order value indicates a logical location of each one of the one or more levels, relative to each other.
17. The system of claim 12, wherein each of the one or more 2-D section polygons is defined by one or more sets of latitudinal and longitudinal coordinates, and wherein the one or more 2-D section polygons are generated based on a floor plan of the building.
18. The system of claim 12, wherein the processor is further configured to execute the instructions to:
update an existing geometry of the building using the exterior geometry corresponding to the building.
19. A machine-readable storage medium comprising machine-readable instructions for causing a processor to execute a method for generating an exterior geometry of a building based on a corresponding collection of interior geometry, the method comprising:
receiving a collection of interior geometry data of a building, wherein the interior geometry data of the building corresponds to one or more levels, wherein each of the one or more levels is associated with a corresponding vertical span, and wherein the each of the one or more levels corresponds to a respective one or more 2-D section polygons;
extruding into one or more 2.5-D section polygons, the one or more 2-D section polygons, wherein the extruding comprises assigning to each of the one or more 2-D section polygons, the corresponding vertical span associated with the each of the one or more levels to which the each of the one or more 2-D section polygons correspond; and
constructing, based on one or more of the extruded 2.5-D section polygons, a 2.5-D merged polygon set, wherein an outer shell of the 2.5-D merged polygon set corresponds to an exterior geometry corresponding to the building, and wherein the constructing the 2.5-D merged polygon set comprises stacking the one or more of the 2.5-D section polygons, merging at least two stacked 2.5-D section polygons, and simplifying the merged at least two stacked 2.5-D section polygons.
20. The machine-readable storage medium of claim 7, wherein the method further comprises:
updating an existing geometry of the building using the exterior geometry corresponding to the building.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A computer-implemented method of identifying text content in images, the method comprising:
receiving an input image;
splitting the image into a plurality of character blocks, each character block in the plurality of character blocks containing pixel information that may represent one or more characters;
calculating a probability that a character block in the plurality of character blocks includes a character;
forming a candidate sequence of character blocks from the plurality of character blocks, the candidate sequence of character blocks representing a candidate match for a search term; and
comparing the candidate sequence of character blocks to the search term to determine if the search term is present in the candidate sequence of character blocks.
2. The method of claim 1 wherein comparing the candidate sequence of character blocks comprises calculating a similarity of a line of text in the candidate sequence of character blocks to the search term.
3. The method of claim 1 wherein the search term comprises a word or phrase indicative of spam.
4. The method of claim 1 wherein the search term comprises a link to a phishing site.
5. The method of claim 1 wherein the search term comprises company confidential or prohibited information.
6. The method of claim 1 wherein the one or more characters comprise an ASCII character.
7. A computer having a memory and a processor configured to execute computer-readable program code in the memory, the memory storing:
an email processing engine configured to receive an email and extract an image from the email; and
a pure adversarial optical character recognition (OCR) module configured to receive a search term and the image and to search the image for the search term;
wherein the OCR module is configured to split the image into a plurality of character blocks, calculate a probability that a character block in the plurality of character blocks includes a character, create a candidate sequence of character blocks from the plurality of character blocks to form a candidate match for the search term, and compare the candidate sequence of character blocks to the search term to determine if the search term is present in the candidate sequence of character blocks.
8. The computer of claim 7 wherein the email processing engine is configured for antispam.
9. The computer of claim 7 wherein the email processing engine is configured for antiphishing.
10. The computer of claim 7 wherein the email processing engine is configured to check the email for confidential or prohibited information.
11. The computer of claim 7 wherein the OCR module is further configured to provide information on a location of the search term in the image if the search term is found in the image.
12. The computer of claim 7 wherein the OCR module is further configured to provide a location of the search term in the image when the search term is found to be similar to a line of text in the candidate sequence of character-blocks.
13. A computer-implemented method of identifying text content in images, the method comprising:
extracting an image from an email; and
searching the image for presence of a search term by splitting the image into a plurality of character blocks, each character block in the plurality of character blocks containing pixel information that may represent a character, calculating a probability that a character block in the plurality of character blocks includes a character, forming a candidate sequence of character blocks from the plurality of character blocks to form a candidate match for the search term, and comparing the candidate sequence of character blocks to the search term to determine if the search term is present in the candidate sequence of character blocks.
14. The method of claim 13 wherein determining if the search term is present in the candidate sequence of character blocks comprises calculating a similarity of a line of text to the search term.
15. The method of claim 13 wherein the search term comprises a word or phrase indicative of spam.
16. The method of claim 13 wherein the search term comprises a link to a phishing site.
17. The method of claim 13 wherein the search term comprises company confidential or prohibited information.