IP Library Granted Patent US 11,663,674
Granted Patent B2
US 11,663,674 · App. 17/083,799 · Granted May 30, 2023

Utilizing a 3D scanner to estimate damage to a roof

Inventors: Bryan Allen Plummer (Urbana, IL); Drew Cross (Geneseo, IL); Nathan L. Tofte (Downs, IL)
Assignee: STATE FARM MUTUAL AUTOMOBILE INSURANCE COMPANY
G06Q40/08G06F30/20G06Q20/10G06Q30/0278G06Q40/00G06T7/00G06T7/0004G06T7/187G06T15/08G06T17/00H04N13/204G06T2210/56G06T2219/012
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,663,674
App. No.
17/083,799
Granted
May 30, 2023
Kind
B2
Abstract

A damage assessment module operating on a computer system automatically evaluates a roof, estimating damage to the roof by analyzing a point cloud of a roof. The damage assessment module identifies individual shingles from the point cloud and detects potentially damaged areas on each of the shingles. The damage assessment module then maps the potentially damaged areas of each shingle back to the point cloud to determine which areas of the roof are damaged. Based on the estimation, the damage assessment module generates a report on the roof damage.

Claims (42)

1. A system for estimating damage to a shingle comprising:

(A) one or more 3-dimensional (3D) scanners for generating a 3D point cloud representing a roof;

(B) one or more processors; and

(C) one or more memory devices communicatively connected to the one or more processors, the one or more memories including the 3D point cloud generated via the one or more 3D scanners;

wherein the one or more memory devices further include computer-readable instructions that, when executed, cause the one or more processors to:

(i) retrieve from the one or more memories the 3D point cloud generated via the one or more 3D scanners;

(ii) utilize a point cloud segmentation technique to identify from the 3D point cloud a plurality of 3D shingle point clouds, each 3D shingle point cloud including a set of points representing a different shingle on the roof, wherein utilizing the point cloud segmentation includes accounting for one or more measurements relating to spatial characteristics associated with each set of points;

(iii) analyze each of the plurality of 3D shingle point clouds to identify a set of points representing a damaged shingle; and

(iv) generate and display a report indicating the damaged shingle is damaged, wherein the displayed report includes one or more of: (a) a textual representation of damage done to the damaged shingle; or (b) a graphical representation of damage done to the damaged shingle, and

wherein causing the one or more processors to analyze each of the plurality of 3D shingle point clouds to identify the set of points representing the damaged shingle comprises:

causing the one or more processors to perform a comparison of each of the plurality of 3D shingle point clouds to a model 3D point cloud representing a model shingle; and

detecting that the set of points represents the damaged shingle based on results of the comparison.

2. The system of claim 1 , wherein the point cloud segmentation technique is a planar segmentation technique.

3. The system of claim 1 , wherein the point cloud segmentation technique is a difference of normal segmentation technique.

4. The system of claim 1 , wherein the point cloud segmentation technique is a region growing segmentation technique.

5. The system of claim 4 , wherein causing the one or more processors to utilize the region growing segmentation technique to identify from the 3D point cloud the plurality of 3D shingle point clouds comprises: causing the one or more processors to identify points to add or remove to each of the sets based on measurements relating to curvature or smoothness.

6. The system of claim 1 , wherein the model shingle represents a shingle having experienced an expected degree of wear and tear.

7. A computer-implemented method for estimating damage to a shingle, the method comprising:

(A) causing one or more processors to retrieve from a memory a 3D point cloud representing a roof;

(B) utilizing, via the one or more processors, a point cloud segmentation technique to identify from the 3D point cloud a plurality of 3D shingle point clouds, each 3D shingle point cloud including a set of points representing a different shingle on the roof, wherein utilizing the point cloud segmentation includes accounting for one or more measurements relating to spatial characteristics associated with each set of points;

(C) analyzing, via the one or more processors, each of the plurality of 3D shingle point clouds to identify a set of points representing a damaged shingle; and

(D) generating and displaying, via the one or more processors, a report indicating the damaged shingle is damaged, wherein the displayed report includes one or more of: (a) a textual representation of damage done to the damaged shingle; or (b) a graphical representation of damage done to the damaged shingle, and

wherein analyzing each of the plurality of 3D shingle point clouds to identify the set of points representing the damaged shingle comprises:

performing a comparison of each of the plurality of 3D shingle point clouds to a model 3D point cloud representing a model shingle; and

detecting that the set of points represents the damaged shingle based on results of the comparison.

8. The computer-implemented method of claim 7 , wherein the point cloud segmentation technique is a planar segmentation technique.

9. The computer-implemented method of claim 7 , wherein the point cloud segmentation technique is a difference of normal segmentation technique.

10. The computer-implemented method of claim 7 , wherein the point cloud segmentation technique is a region growing segmentation technique.

11. The computer-implemented method of claim 10 , wherein utilizing the region growing segmentation technique to identify from the 3D point cloud the plurality of 3D shingle point clouds comprises: identifying one or more points to add or remove to each of the sets based on measurements relating to curvature or smoothness.

12. The computer-implemented method of claim 7 , wherein the model shingle represents an undamaged shingle.

13. A non-transitory computer readable medium storing instructions that, when executed, cause one or more processors to:

(A) retrieve from a memory a 3D point cloud representing a roof

(B) utilize a point cloud segmentation technique to identify from the 3D point cloud a plurality of 3D shingle point clouds, each 3D shingle point cloud including a set of points representing a different shingle on the roof, wherein utilizing the point cloud segmentation includes accounting for one or more measurements relating to spatial characteristics associated with each set of points;

(C) analyze each of the plurality of 3D shingle point clouds to identify a set of points representing a damaged shingle; and

(D) generate and display a report indicating the damaged shingle is damaged, wherein the displayed report includes one or more of: (a) a textual representation of damage done to the damaged shingle; or (b) a graphical representation of damage done to the damaged shingle, and

wherein the instructions to analyze each of the plurality of 3D shingle point clouds to identify the set of points representing the damaged shingle comprise instructions that, when executed, cause the one or more processors to:

perform a comparison of each of the plurality of 3D shingle point clouds to a model 3D point cloud representing a model shingle; and

detect that the set of points represents the damaged shingle based on results of the comparison.

14. The computer readable medium of claim 13 , wherein the point cloud segmentation technique is a planar segmentation technique.

15. The computer readable medium of claim 13 , wherein the point cloud segmentation technique is a difference of normal segmentation technique.

16. The computer readable medium of claim 13 , wherein the point cloud segmentation technique is a region growing segmentation technique.

17. The computer readable medium of claim 16 , wherein the instructions to utilize the region growing segmentation technique to identify from the 3D point cloud the plurality of 3D shingle point clouds comprise instructions that, when executed, cause the one or more processors to: identify one or more points to add or remove to each of the sets based on measurements relating to curvature or smoothness.

Assignments (3)
SECURITY INTEREST Recorded Oct 20, 2025
From: ROOFR INC.
To: STIFEL BANK
Reel/Frame 072598/0354 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2025
From: STATE FARM MUTUAL AUTOMOBILE INSURANCE CO.
To: ROOFR INC.
Reel/Frame 072083/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 30, 2020
From: PLUMMER, BRYAN A.; CROSS, DREW; TOFTE, NATHAN L.
To: STATE FARM MUTUAL AUTOMOBILE INSURANCE COMPANY
Reel/Frame 054222/0911 →
Continuity (6)
Continuation 15975873 · May 10, 2018
Continuation 14964195 · Dec 9, 2015
Continuation 14323626 · Jul 3, 2014
Continuation 14047873 · Oct 7, 2013
Provisional Application 61799452 · Mar 15, 2013
Related Publication 20210042845A1 · Feb 11, 2021