The present disclosure relates generally to the field of computer vision and predictive modeling. More specifically, the present disclosure relates to computer vision systems and methods for determining roof age and remaining life.
In the insurance and risk analytics fields, the ability to determine the condition of insured objects/properties as well as to predict the useful lifespan of such products, is of significant importance. Such ability is particularly useful and important when attempting to determine the condition of the roof of an insured structure (e.g., house, building, etc.), as well as how much useful life remains for the roof. It is difficult to obtain roof information from private and public data sources/records. Additionally, roof age data only indicates the normal age of a roof, but such data does not consider critical factors such as the degradation of the material of a particular roof, the quality of such material, whether the roof is properly vented, and exposure of the roof to sunlight and other weather elements. Because of this, roof age, alone, is not a fully accurate predictor of the vulnerability of the roof against weather events, or how soon a roof may require replacement in order to remediate such vulnerabilities.
In today's world of computer vision, machine learning, and artificial intelligence technologies, it would be highly beneficial to leverage such technologies to automatically determine, from digital data sources such as aerial imagery and public/private roof data, in order to rapidly and accurately determine the age of a roof as well as predict its useful life. Accordingly which would be desirable are computer vision systems and methods for determining roof age and remaining life which address the foregoing, and other, needs.
The present disclosure relates to computer vision systems and methods for determining roof age and remaining life. The system processes newer and older images of an area of interest that includes a structure having a roof using computer vision to detect changes in roof conditions over time, and calculates a ground truth model of roof age and roof condition based on the detected changes. An initial linear regression model is calculated by the system, and noise is filtered from the model. A final linear regression model is then calculated by the system and validated. Using the final linear regression model, the system determines an age of the roof in the area of interest as well as the remaining life of the roof. The age and the remaining life can be displayed to the user in a graphical interface screen superimposed over an aerial image of the roof and/or of the area of interest.
The foregoing features of the invention will be apparent from the following Detailed Description of the Invention, taken in connection with the accompanying drawings, in which:
The present disclosure relates to computer vision systems and methods for determining roof age and remaining life, as discussed in detail below in connection with
Additionally, the processor 12 could communicate with one or more end-user computing devices 18 which can allow a user to query for roof age and remaining life information for a particular property or structure of interest (e.g., by specifying an address or by selecting a property or region of interest in a graphical user interface of the devices 18) and to review the results of processing by the processor 12 (e.g., the calculated roof age and remaining life of the roof). Still further, it is noted that the functions performed by the processor 12 could also be performed by the end-user computing device 18, such that the device 18 communicates directly with the data source computer systems 14a-14n and is programmed in accordance with the present disclosure. The processor 12 could be any suitable computing platform capable of being programmed in accordance with the present disclosure and includes, but is not limited to, a personal computer, a server, a cloud computing device, a cloud computing platform, or any other suitable computing device/platform. The end-user device 18 could include a personal computer, a tablet computer, a smart telephone, a laptop computer, or any other suitable computing device. The processor 12 and/or end-user device 18 could be programmed in accordance with the present disclosure using and suitable low- or high-level programming language, such as C, C++, C#, Java, Javascript, Python, or any other suitable language. Additionally, the processes disclosed herein could be coded and stored as computer-readable instructions stored in one or more non-transitory, computer-readable media in communication with or forming part of the processor 12 and/or device 18, including, but not limited to, disk, memory (e.g., random-access memory, read-only memory, non-volatile memory, flash memory, etc.), field-programmable gate array (FPGA), etc., which are executed by a processor (e.g., microprocessor, microcontroller, etc.) of the processor 12 and/or device 18.
In step 24, the system selects and retrieves one or more change-detected images for the selected/identified AOI, e.g., from one or more of the data source computers 14a-14n. By “change-detected images,” it is meant images that have been processed by a computer system to identify one or more features associated with a structure depicted in the image and associated data, such as, but not limited to, percentage of roof discoloration, percentage of missing material, structural damage percentage, percentage of roof covered by a tarp, percentage of roof debris, percentage of roof that may be anomalous, percentage of patched or repaired roof, etc. Also, such roof information could be scored (e.g., expressed in a scale from 1.00 to 5.00, with 5 being the best condition), and/or a computer vision neural network can be trained to detect the roof material. An example of a suitable system for detecting roof conditions and associated data (e.g., scores and/or percentages) is set forth in published U.S. Patent Application Publication No. US 2022/0215654 which is expressly incorporated herein by reference. There can be multiple collections (and associated ages) of aerial images available in the AOI, and in step 24, two collections of images (newer images and older images) can be selected by the system (each collection of which is change-detected).
In step 26, the system computes the roof condition and roof materials for all roofs within the AOI that correspond to older images (e.g., all images having a pre-defined date, or earlier date). In step 28, the system computes the roof condition and roof material for all roofs within the AOI that correspond to newer images (e.g., all images having a pre-defined date, or later date). Then, in step 34, for each building within the AOI, the system calculates the difference between the newer roof condition and the older roof condition, and labels as change detected any roof that meets two criteria: the newer roof condition is greater than a pre-defined threshold A, and the calculated difference between the newer roof condition and the older roof condition is greater than a pre-defined threshold B. Additionally, in step 34, for those roofs labeled as “change detected,” the roof age for the roof is set as the average age of the newer image and the older image dates.
Step 34 is the first step of the ground truth determination process 30. The second step is step 32, wherein the system communicates with a database of roof ages (which could be from public and/or private data sources and could be stored in one or more of the data source computers 14a-14n) and filters any records that are within the AOI and equal to or above a defined roof age confidence threshold C. Then, the ground truth dataset is determined by the system as the result of aggregating the high-confidence roof ages and a roof age calculated using computer vision change detection (e.g., the roof age calculated in step 34).
Next, in step 36, the system calculates an initial linear regression model (LRM) in the form of Y=ax+B, where X is the roof condition (determined in step 28) of the newer imagery grouped by intervals of a defined length D and Y is the average of the ground truth roof age of the roof condition interval (calculated in Step 32). Table 1, below, sets forth an example of the model values that could be calculated in step 36:
Additionally, in step 36, the system estimates the accuracy and reliability of the LRM using a variety of statistical measures including, but not limited to, mean squared residual, R2 value, F-test, etc. If the LRM is not accurate or reliable enough, then the system can gather additional ground truth data either by increasing the extension of the AOI or by lowering the threshold C of the high confidence RA. Additionally, since each roof material wears differently, the LRM is preferably computed for each roof material such as, but not limited to, shingle, tile, or metal. An example of the initial LRM computed in step 36 is shown in
In step 38, the system performs noise filtering of the LRM. Specifically, in order to reduce the effect of an in accurate ground truth roof age, the system computes the LRM at the 95th confidence level. Then, any ground truth roof age above or below the expected roof age within the 95th confidence level is labeled as an outlier. Next, any outliers are removed from the ground truth roof age prior to calculating a final LRM, and the LRM at the 95% confidence level can be modified to permit additional variability in the lower roof condition values. An example of this noise filtering step is shown in
In step 40, a roof age model (e.g., a final LRM) is calculated by the system. Specifically, the final LRM is calculated in the cubic form of Y=a1*X3+a2*X2+a3*x+b, where: X is the roof condition of the newer imagery, grouped by intervals of defined length D; Y is the average of the ground truth roof age, filtered of outliers, of the roof condition of the interval; and 80% of the records are used for calculating the parameters of the LRM, while the remaining 20% are reserved for validation. The cubic form of a LRM is selected to model three different possible stages of roof deterioration. For example, in the case of roof material shingles, such stages could be: (1) initial slow deterioration; (2) intermediate accelerated deterioration; and (3) final decelerated deterioration.
Further, in step 40, the system estimates the accuracy and reliability of the LRM using a variety of statistical measurements such as mean squared residual, R2 value, F-test, etc. In step 42, the coherence of the validation set versus the LRM is estimated by the system, also using the aforementioned statistical measurements. The validation set is formed by 20% of the ground truth roof age data that has not been used for calculating the LRM. Since each material wears differently, the LRM should be independently computed for each roof material, such as shingle, tile, metal, etc. The final LRM is referred to as the roof age model of the given AOI and roof material. The roof age of a particular roof is the result of solving the model for a particular roof condition, AOI, and roof material. An example of the final LRM (the roof age model is illustrated in
In step 44, the system determines a typical roof condition of change. In this step, the system collects the roof condition prior to the change dataset as the roof condition of the older images for which a roof change was detected. Then, the typical roof condition of change is defined as a measure that describes the central tendency of the roof condition prior to the change dataset, such as the median or the arithmetic mean. Next, in step 46, the system calculates a typical end of remaining life for the roof. Specifically, the typical end of remaining life is defined as the roof age of the typical roof condition of change of a given AOI and roof material. Because each roof material wears differently, the typical end of remaining life should be computed for each roof material, such as shingle, tile, metal, etc.
The system next calculates a remaining life of a roof. In step 48, given an address or a geolocation, the system finds the most recent image available at that location. Then, in step 50, the system processes the image with a computer vision neural network to compute the roof condition and the roof material of the requested roof. Additionally, the system finds the correspondence roof age model and the typical end of remaining life for the requested location and roof material. Then, in step 52, the system calculates the roof age of the requested roof.
Finally, in step 54, the system calculates the remaining life as the difference between the typical end of remaining life and the current roof age of the requested roof. Also, the remaining life is classified in a level of risk or vulnerability. Table 2, below, illustrates some sample levels of risk:
The calculations performed in step 54 are illustrated in
Additionally, the frequency of the updates or calibrations can match the product and system architecture needs. Updates/calibrations can occur in real time when any of the aforementioned events happen, or can be scheduled to occur at a certain cadence (e.g., daily, weekly, monthly, or quarterly). In addition to the updates, the system can be updated under one or more of the following circumstances: modification of the underlying modeling algorithms (e.g., use of a non-linear regression model, a generalized linear model, or an artificial intelligence model); or incorporation of additional variables to the model, such as weather data, tree coverage, etc. Because the system is based on the use of ground truth data, the system's accuracy and performance can improve over time as new data is collected and incorporated into the system.
While the system of the present disclosure has been described in connection with determining the age and remaining life of a roof, it is to be understood that the systems and methods disclosed herein could be applied to determine the age and remaining life of a wide variety of materials and structures, such as road structures/materials (e.g., asphalt, concrete, etc.), building structures/materials (e.g., siding (e.g., vinyl siding), façades, façade materials (e.g., flashing, coping, etc.), walls, windows, glass, etc.), and other building components/structures/materials.
Having thus described the system and method in detail, it is to be understood that the foregoing description is not intended to limit the spirit or scope thereof. It will be understood that the embodiments of the present disclosure described herein are merely exemplary and that a person skilled in the art can make any variations and modification without departing from the spirit and scope of the disclosure. All such variations and modifications, including those discussed above, are intended to be included within the scope of the disclosure.
This application claims priority to U.S. Provisional Patent Application Ser. No. 63/544,809 filed on Oct. 19, 2023, the entire disclosure of which is hereby expressly incorporated by reference.
| Number | Date | Country | |
|---|---|---|---|
| 63544809 | Oct 2023 | US |