Prosecution Insights
Last updated: July 17, 2026
Application No. 18/399,982

LIDAR Odometry for Localization

Non-Final OA §102§103
Filed
Dec 29, 2023
Examiner
NAPIER, JAMES WILBURN
Art Unit
Tech Center
Assignee
Aurora Operations Inc.
OA Round
1 (Non-Final)
100%
Grant Probability
Favorable
1-2
OA Rounds
11m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 100% — above average
100%
Career Allowance Rate
6 granted / 6 resolved
+40.0% vs TC avg
Minimal +0% lift
Without
With
+0.0%
Interview Lift
resolved cases with interview
Typical timeline
3y 6m
Avg Prosecution
11 currently pending
Career history
14
Total Applications
across all art units

Statute-Specific Performance

§103
86.5%
+46.5% vs TC avg
§112
10.8%
-29.2% vs TC avg
Black line = Tech Center average estimate • Based on career data from 6 resolved cases

Office Action

§102 §103
Detailed Action Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Claim Rejections – 35 USC § 102 The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless –(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention. 1. Claims 1-2, 9-15, & 20 are rejected under 35 U.S.C. 102(a)(2) as being unpatentable over Bosse et al (US 12117529 B1), hereinafter Bosse. 2. Regarding Claims 1, 14, & 20 Bosse teaches a system and a computer-implemented method ([Col. 3, Lines 2-5]: Accordingly, techniques (including, but not limited to, a method, a system, and one or more non-transitory computer-readable media) may be provided as discussed herein). Bosse teaches obtaining a LIDAR observation oriented relative to a vehicle frame, wherein the vehicle frame is oriented with respect to a pose of a vehicle at a given time, ([Col. 3, Lines 51-56]: In at least one example, global localization component 108 may be configured to receive data from sensor system 104, in order to determine a position and/or orientation of vehicle 100 in the environment. The information received—such as LIDAR data—may then be matched against a global map). Bosse further teaches, ([Col. 10, Lines 56-59]: A third co-ordinate frame 305, illustrated as a two-dimensional frame having an x-axis and a y-axis, comprises a third origin point 306. Third origin point 306 corresponds to a position of vehicle 100 in an environment). See FIGS. 3-4. Bosse teaches, accessing a local environment map descriptive of an environment of the vehicle, the local environment map oriented relative to a keyframe, the local environment map comprising a plurality of surfels; wherein the local environment map is generated in real-time during a current operational instance of the vehicle based on one or more prior LIDAR observations captured during the current operational instance of the vehicle; ([Col. 16, Lines 6-13]: In at least one example, the localization component 720 can include functionality to receive data from the sensor system(s) 706 to determine a position and/or orientation of the vehicle 702 (e.g., one or more of an x-, y-, z-position, roll, pitch, or yaw). For example, the localization component 720 can include and/or request/receive a map of an environment and can continuously determine a location and/or orientation of the autonomous vehicle within the map). Bosse further teaches, ([Col. 17, Lines 35-53]: The memory 718 can further include the map(s) component 728 to maintain and/or update one or more maps (not shown) that can be used by the vehicle 702 to navigate within the environment. For the purpose of this discussion, a map can be any number of data structures modeled in two dimensions, three dimensions, or N-dimensions that are capable of providing information about an environment, such as, but not limited to, topologies (such as intersections), streets, mountain ranges, roads, terrain, and the environment in general. In some instances, a map can include, but is not limited to: texture information (e.g., color information (e.g., RGB color information, Lab color information, HSV/HSL color information), and the like), intensity information (e.g., lidar information, radar information, and the like); spatial information (e.g., image data projected onto a mesh, individual “surfels” (e.g., polygons associated with individual color and/or intensity)), reflectivity information (e.g., specularity information, retroreflectivity information, BRDF information, BSSRDF information, and the like)). Bosse continues to teach, ([Col. 2, Lines 48-65]: In another example of the present invention, co-ordinate frames corresponding to the global map and local map may be determined. A third co-ordinate frame representing the position of the vehicle itself may also be determined. A transform, or offset, between the co-ordinate frames representing the global and local maps may be calculated, representing the drift between the two maps. Similarly, a transform or offset may be calculated between the co-ordinate frames representing the local map and the vehicle position. Using these calculated transforms, a calculation may then be made of the transform between the co-ordinate frame representing the global map and that representing the vehicle position. By using the local map co-ordinate frame—which, as described above, is accurate in relation to the environment due to it being created at the point of use—the transform calculated between the global map frame and the vehicle frame will provide a more accurate measure of the vehicle position relative to the global map). Bosse teaches determining a transform between the vehicle frame and the keyframe by aligning the LIDAR observation to the local environment map based on a similarity between the LIDAR observation and the local environment map, ([Col. 2, Lines 54-57]: Similarly, a transform or offset may be calculated between the co-ordinate frames representing the local map and the vehicle position). Bosse further teaches, ([Col. 3, Lines 51-56]: In at least one example, global localization component 108 may be configured to receive data from sensor system 104, in order to determine a position and/or orientation of vehicle 100 in the environment. The information received—such as LIDAR data—may then be matched against a global map). Bosse teaches determining an updated pose of the vehicle based on the transform and the pose of the vehicle in the vehicle frame at the given time, ([Col. 2, Lines 23-38]: The global map may be used to calculate a trajectory for the vehicle through the environment. The pose of the vehicle at various points in time, as it moves along this planned trajectory, may be determined relative to the global map, and may be stored as a first series of poses. As the vehicle moves through the environment, the second (local) map is initiated, and the pose of the vehicle at various points in time may be determined, relative to the local map. These poses relative to the local map may then be stored as a second series of poses. The first and second series of poses may be compared to each other, and the difference between the two series of poses may be calculated. This difference may be used as a measure of the drift between the local and global maps, and may then be used to update the poses determined according to the global map, and the vehicle may be controlled through the environment based on the updated poses). 3. Regarding Claims 14 & 20: Bosse teaches processors, ([Col. 3, Lines 6-15]: A vehicle 100 is illustrated schematically in the block diagram of FIG. 1. Vehicle 100 may include a navigation system 101. Navigation system 101 may further comprise a global navigation system 102, a local navigation system 103, memory 111 and processor 115. Vehicle 100 may further comprise sensor system 104, and a drive system 105. Vehicle 100 may be connected over network 106 to a computing device 107). 4. Regarding Claims 2 & 15: Bosse teaches the updated pose of the vehicle is oriented relative to the keyframe, ([Col. 3, Lines 51-67]: In at least one example, global localization component 108 may be configured to receive data from sensor system 104, in order to determine a position and/or orientation of vehicle 100 in the environment. The information received—such as LIDAR data—may then be matched against a global map. The global map may be stored on the vehicle in memory element 111, or in some examples may be received across network 106. Global localization component 108 may use any applicable technique in order to perform this operation, such as SLAM (Simultaneous Location And Mapping), relative SLAM, non-linear least square optimization, iterative closest point (ICP), bundle adjustment, CLAMS (Calibration, Localization And Mapping Simultaneously), or any other applicable technique. These techniques may be performed based on LIDAR data, radar data, GPS data, wheel factor data, IMU data, or other data captured by any component of sensor system 104). 5. Regarding Claim 9: Bosse teaches masking one or more actor regions in the LIDAR observation, wherein the one or more actor regions comprise data associated with a moving object, ([Col. 4, Lines 42-57]: In some examples, global localization component 108 and global perception component 109 may, in creating a global map, be configured to disregard objects having characteristics indicative of a dynamic object. For instance, objects having a velocity or an acceleration above a threshold value may be disregarded. In some examples, the ability to disregard objects having a velocity or acceleration above a threshold value may be based on methods for performing segmentation on three-dimensional data represented in a voxel space to determine a ground plane, static objects, and dynamic objects in an environment as described in U.S. Pat. No. 10,444,759 B2, titled “VOXEL BASED GROUND PLANE ESTIMATION AND OBJECT SEGMENTATION,” filed on Jun. 14, 2017 which is hereby incorporated by reference in its entirety and for all purposes). The immediate specification discloses that masking comprises omitting which is analogous to disregarding, (Spec: [0110]: In some implementations, during alignment of the LIDAR observation 506 and local environment map 515, the system 500 may mask or otherwise omit regions of the LIDAR observation 506 corresponding to moving objects, or “actors”). 6. Regarding Claim 10: Bosse teaches masking the one or more actor regions comprises omitting the one or more actor regions from the LIDAR observation when determining the transform between the vehicle frame and the keyframe by aligning the LIDAR observation to the local environment map, ([Col. 5, Lines 51-61]: Local perception component 113 may then be used to determine objects in the environment proximate to the vehicle. This may comprise clustering adjacent voxels within the subset of the voxel space determined by removing the ground plane. This clustering operation may determine that specific LIDAR data points are associated with an object. The objects identified by local perception component 113 may then be used to generate a map of the environment proximate to the vehicle. Local perception component 113 may additionally be configured to disregard dynamic objects). Bosse further teaches, ([Col. 6, Lines 39-51]: In a first example of the present invention, global navigation system 102 may generate a map of an environment. This may comprise receiving a first set of LIDAR data points from sensor system 104, comparing these data points to data received from network 106 or stored in memory 111, determining a point cloud registration between the first LIDAR data points and the data from network 105 or memory 111, and generating a map based on the registration. Alternatively, a complete map may be stored in memory 111 or received over network 106. Global localization component 108 may then localize vehicle 100 within the map thus generated, providing a preliminary position of vehicle 100 in the environment). Bosse goes on to teach, ([Col. 6, Lines 62-67, & Col. 7, Lines 1-37]: According to the first example, local navigation system 103 may then generate a local map of the environment. This may comprise receiving, from sensor system 104, sensor data relating to the environment, such as a set of LIDAR data points. Local determination component 112 may associate, as a local map, these LIDAR data points with a voxel space having a plurality of voxels, and determine a ground plane based on clustering voxels having a surface normal vector within a threshold angle of a vehicle reference direction, remove this ground plane from the voxel space. Local perception component 113 may then cluster adjacent voxels within the voxel space to determine objects in the environment. The local mapping process conducted in this invention may be based on methods for performing segmentation on three-dimensional data represented in a voxel space to determine a ground plane, static objects, and dynamic objects in an environment as described in U.S. Pat. No. 10,444,759 B2, titled “VOXEL BASED GROUND PLANE ESTIMATION AND OBJECT SEGMENTATION,” filed on Jun. 14, 2017 which is hereby incorporated by reference in its entirety and for all purposes. Local localization component 114 may then determine a pose of the vehicle in the environment, based on the map generated by local determination component 112 and local perception component 113. As described previously in connection with the components of local navigation system 103, this process may occur at a higher frequency than the refresh rate of the global map. Each pose of the vehicle 100 computed by local navigation system 103 may be stored in the local memory 115 as a second series of poses, with a historical trajectory relative to the local map being formed by the change in poses. The historical trajectory may be calculated as the change between poses within the second series of poses, which may be determined by integrating LIDAR odometry measurements with the positional data. Local navigation system 100 may, to determine the change in pose, associate at a first point in time a set of LIDAR data points with a first voxel space associated with a first pose within the second series of poses, then associate at a second point in time the set of LIDAR data points with a second voxel space associated with a second pose within the second series of poses, and calculate the odometry match between the first and second voxel spaces). Bosse continues to teach, (([Col. 12, Lines 66-67, & Col. 13, Lines 1-4]: Method 500 comprises receiving 502 a set of LIDAR data points. These LIDAR data points may be received from sensor system 104, and may be matched with the map received in step 501 to localize vehicle 100 within the environment). 7. Regarding Claim 11: Bosse teaches applying the transform to the pose of the vehicle in the vehicle frame to determine the updated pose of the vehicle, ([Col. 2, Lines 23-38]: The global map may be used to calculate a trajectory for the vehicle through the environment. The pose of the vehicle at various points in time, as it moves along this planned trajectory, may be determined relative to the global map, and may be stored as a first series of poses. As the vehicle moves through the environment, the second (local) map is initiated, and the pose of the vehicle at various points in time may be determined, relative to the local map. These poses relative to the local map may then be stored as a second series of poses. The first and second series of poses may be compared to each other, and the difference between the two series of poses may be calculated. This difference may be used as a measure of the drift between the local and global maps, and may then be used to update the poses determined according to the global map, and the vehicle may be controlled through the environment based on the updated poses). 8. Regarding Claim 12: Bosse teaches the LIDAR observation is captured relative to the pose of the vehicle in the vehicle frame, ([Col. 3, Lines 51-56]: In at least one example, global localization component 108 may be configured to receive data from sensor system 104, in order to determine a position and/or orientation of vehicle 100 in the environment. The information received—such as LIDAR data—may then be matched against a global map). Bosse further teaches, ([Col. 10, Lines 56-59]: A third co-ordinate frame 305, illustrated as a two-dimensional frame having an x-axis and a y-axis, comprises a third origin point 306. Third origin point 306 corresponds to a position of vehicle 100 in an environment). See FIGS. 3-4. 9. Regarding Claim 13: Bosse teaches determining a motion trajectory for the vehicle based on the updated pose of the vehicle; and controlling the vehicle based on the motion trajectory, ([Col. 2, Lines 23-38]: The global map may be used to calculate a trajectory for the vehicle through the environment. The pose of the vehicle at various points in time, as it moves along this planned trajectory, may be determined relative to the global map, and may be stored as a first series of poses. As the vehicle moves through the environment, the second (local) map is initiated, and the pose of the vehicle at various points in time may be determined, relative to the local map. These poses relative to the local map may then be stored as a second series of poses. The first and second series of poses may be compared to each other, and the difference between the two series of poses may be calculated. This difference may be used as a measure of the drift between the local and global maps, and may then be used to update the poses determined according to the global map, and the vehicle may be controlled through the environment based on the updated poses). Bosse further teaches, ([Col. 13, Lines 35-39]: Method 500 comprises updating 508 the first series of poses based at least in part on the difference calculated between the first series of poses and the second series of poses. Method 500 may further comprise controlling vehicle 100 according to the updated first series of poses). Claim Rejections – 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. 10. Claim 3 is rejected under 35 U.S.C. 103 as being unpatentable over Bosse et al (US 12117529 B1), hereinafter Bosse, as applied to Claim 1, in view of Montemerlo et al (US 20220075382 A1), hereinafter Montemerlo. 11. Regarding Claim 3: Bosse does not teach a surfel of the plurality of surfels comprises a disc, the disc defined by a position vector, a normal vector, and a radius. However, Montemerlo teaches methods and systems using Lidar data to update vehicle maps for autonomous vehicles, ([0007]: The mapping system can receive new sensor measurements, e.g., camera imagery data and LIDAR detections, corresponding to features of an environment. The new sensor measurements can be generated, for example, by sensors of vehicles in the environment.). Montemerlo further teaches, ([0060]: Each surfel in the example surfel map 250 is represented by a disk, and defined by three coordinates (latitude, longitude, altitude), that identify a position of the surfel in a common coordinate system of the environment 200. Each surfel also has a respective orientation, which can be represented as a normal vector emanating from the center of the surfel. For example, each surfel can be defined to be a disk that extends some radius, e.g. 1, 10, 25, or 100 centimeters, around coordinates (latitude, longitude, altitude) for a particular voxel in a voxel volume for the environment 200. In some other implementations, the surfels can be represented as other two-dimensional shapes, e.g. ellipsoids or squares, to name just a few examples). It would have been obvious for one of ordinary skill in the art at the time of filing to modify Bosse with Montemerlo to include a surfel of the plurality of surfels comprises a disc, the disc defined by a position vector, a normal vector, and a radius, since it is the same field of endeavor and results would have been predictable. One of ordinary skill in the art at the time of filing would have been motivated to modify Bosse with Montemerlo since, such configurations reduce uncertainty, improve noise filtering, and do not require a specific topology. In addition, Having explicitly defined discs with positions and normal vectors allow robotics and SLAM systems to use fast analytic derivatives for map updates, tracking, and differentiable optimization. 12. Claims 4-6, & 16-18 are rejected under 35 U.S.C. 103 as being unpatentable over Bosse et al (US 12117529 B1), hereinafter Bosse, as applied to Claims 1 & 14, in view of Pacala et al (US 20190179320 A1), hereinafter Pacala. 13. Regarding Claims 4 & 16: Bosse does not teach, aligning the LIDAR observation to the plurality of surfels of the local environment map to minimize an aggregate distance between the LIDAR observation and the plurality of surfels. However, Pacala teaches, ([Abstract]: Methods, systems, and devices are provided for calibrating a light ranging system and using the system to track environmental objects. In embodiments, the approach involves installing light ranging devices, such as lidar devices, on the vehicle exterior. The light ranging system may be calibrated using a calibration device to scan the vehicle exterior and construct a three-dimensional model of the vehicle exterior comprising the positions of the installed light ranging devices on the vehicle exterior). Pacala further teaches, ([0163]: Some embodiments can assume that a majority of points in a scene are stationary. Such an assumption would generally be true, e.g., as the ground and most objects at the sides of a road would be stationary. A map determined from the measurements of the objects in the environment can be aligned to determine a movement of the vehicle during the time period between measurements. As an alternative to using a map determined from the lidar measurements, some embodiments can localize (align) on a precomputed or pre-collected static map of the environment, which may be determined using similar techniques as the map determined using the vehicle's lidar. Thus, instead of matching to the previous couple images from the lidar system, the system can match its data to the 3D map that is already loaded in memory. Localizing to a map can be a robust approach that can provide global positioning information if the map has been computed into a global frame of reference, as is discussed in more detail later). Pacala goes on to teach, ([0312]: At step 2206, the position data for the group of vehicles is corrected using the light ranging data collected from the light ranging systems installed on the group of vehicles, thereby obtaining corrected position data. As an example for such correcting, a portion of a first physical map can be obtained based on an initial position (e.g., via GPS) of a vehicle of the group of vehicles, and the light ranging data can be aligned to the portion of the physical map to determine the corrected position data. The aligning can include generating a second physical map generated from the light ranging data (e.g., from point clouds) and aligning the second physical map to the first physical map. The alignment can include determining pairs of positions in the two maps that correspond with each other, e.g., corners of objects. A distance between the same corner of the object in one map relative to the other map can be minimized by translating one of the maps. The shifting can continue to minimize a sum of the errors (e.g., using least squares), e.g., the distance pairs of corresponding positions). It would have been obvious for one of ordinary skill in the art at the time of filing to modify Bosse with Pacala to include aligning the LIDAR observation to the plurality of surfels of the local environment map to minimize an aggregate distance between the LIDAR observation and the plurality of surfels, since it is the same field of endeavor and results would have been predictable. One of ordinary skill in the art at the time of filing would have been motivated to modify Bosse with Pacala since, such configurations yield faster data association, reduced memory usage, and highly stable pose estimation. It replaces costly point-to-point comparisons with rapid point-to-plane optimization, enabling robust real-time tracking in autonomous navigation and mapping. In addition, this allows for higher data compression and motion distortion compensation. 14. Regarding Claims 5 & 17: Bosse teaches the LIDAR observation comprises a LIDAR point cloud, the LIDAR point cloud comprising a plurality of LIDAR points, ([Col. 6, Lines 39-46]: In a first example of the present invention, global navigation system 102 may generate a map of an environment. This may comprise receiving a first set of LIDAR data points from sensor system 104, comparing these data points to data received from network 106 or stored in memory 111, determining a point cloud registration between the first LIDAR data points and the data from network 105 or memory 111, and generating a map based on the registration). 15. Regarding Claims 6 & 18: Bosse does not teach, minimizing the aggregate distance between the LIDAR observation and the plurality of surfels comprises minimizing the aggregate distance between each LIDAR point in the LIDAR point cloud of the LIDAR observation and a corresponding surfel of the plurality of surfels. However, Pacala teaches ([0120]: At step 518, the calculated error may be used to perform a series of steps that further refines the positions of the light ranging devices 430 on the primary model. This may involve iteratively moving the estimated position of a light ranging device 430, overlaying the secondary model over the primary model once again at the new estimated position, and computing a new error value between the secondary model and primary model. The new error value corresponding to the new estimated position of the secondary model may be compared to a previous error value corresponding to a previous estimated position to determine whether there has been an increase or decrease in the error. The estimated position of the light ranging device 430 may then be once again moved in the same direction if there was a decrease in the error, or in a different direction if there has been an increase in the error or in a direction determined by evaluating the local gradient of the underlying optimization problem. These steps may be repeated until the error has been minimized, at which point the last estimated location for the light ranging device 430 may be set as the finalized position for the light ranging device 430). It would have been obvious for one of ordinary skill in the art at the time of filing to modify Bosse with Pacala to include minimizing the aggregate distance between the LIDAR observation and the plurality of surfels comprises minimizing the aggregate distance between each LIDAR point in the LIDAR point cloud of the LIDAR observation and a corresponding surfel of the plurality of surfels, since it is the same field of endeavor and results would have been predictable. One of ordinary skill in the art at the time of filing would have been motivated to modify Bosse with Pacala since, such configurations provide robust odometry tracking, drift reduction, computational efficiency, and leverage surface continuity to better handle measurement noise. 16. Claims 7 & 19 are rejected under 35 U.S.C. 103 as being unpatentable over Bosse et al (US 12117529 B1), hereinafter Bosse, as applied to Claims 1 & 14, in view of Pacala et al (US 20190179320 A1), hereinafter Pacala, as applied to Claims 4-5 & 16-17, in view of Montemerlo et al (US 20220075382 A1), hereinafter Montemerlo. 17. Regarding Claims 7 & 19: Bosse as modified by Pacala does not teach, minimizing the aggregate distance between the LIDAR observation and the plurality of surfels comprises minimizing an average distance between each LIDAR point in the LIDAR point cloud and a corresponding surfel of the plurality of surfels. However, Montemerlo teaches, ([0098]: In some examples, each voxel of the modified surfel map 470 can include a vector of the vector field difference 345. The vector of each voxel can represent movement of all of the surfels within the voxel. For example, the vector of each voxel can represent an average magnitude, direction, and orientation of movement of the surfels within the voxel). Montemerlo further teaches, ([0103]-[0106]: [0103]: The road graph adjuster 350 applies the vector field difference 345 to the current road graph data 320. For example, the road graph adjuster 350 can apply the vector field difference 345 to the road graph segment 408. By applying the vector field difference 345 to the road graph data 320, the road graph adjuster 350 can align the features of the unadjusted surfel map 490 with the road graph of the unadjusted surfel map 490. [0104]: In some examples, each road graph portion or segment can be mapped to one or more surfels. For example, each road graph can be mapped to a surfel corresponding to a particular feature that is near or associated with the road graph. In these examples, the road graph adjuster 350 can apply the vector field difference 345 to the portion of the road graph based on a vector representing movement of the surfel to which the portion of the road graph is mapped. [0105]: For example, the light post 412 of FIG. 4A is positioned near the road edge 424 and outside of the road edge 424. Thus, the road graph segment 408 can be mapped to the light post surfels 442. If the position or orientation of the light post 412 changes, the road graph segment 408. In this example, the road graph adjuster 350 can apply vectors 444 to the road graph segment 408 based on the vectors that represent movement of the light post surfel 442. The road graph segment 408 can then move in the same direction, magnitude, and/or orientation as the light post surfel 442. [0106]: In some examples, the road graph adjuster 350 can apply a vector to a portion of a road graph based on the proximity of the portion of the road graph to a surfel. For example, the road graph adjuster 350 can apply a vector to each road graph segment that is within a threshold proximity to a particular surfel. For example, the column surfel 418 is positioned near the road graph segment 408 and outside of the road graph segment 408. The road graph adjuster 350 can determine that the road graph segment 408 is within the threshold proximity to the column surfel 418. The road graph adjuster 350 can therefore apply a vector to the road graph segment 408 based on movement of the column surfel 418. The road graph segment 408 can move a same direction and magnitude as the column surfel 418. In some examples, the road graph adjuster 350 can adjust the portion of the road graph based on an average vector field difference of one or more surfels within a threshold proximity to the portion of the road graph). It would have been obvious for one of ordinary skill in the art at the time of filing to modify Bosse and Pacala with Montemerlo to include minimizing the aggregate distance between the LIDAR observation and the plurality of surfels comprises minimizing an average distance between each LIDAR point in the LIDAR point cloud and a corresponding surfel of the plurality of surfels, since it is the same field of endeavor and results would have been predictable. One of ordinary skill in the art at the time of filing would have been motivated to modify Bosse and Pacala with Montemerlo since, such configurations can optimize feature registration, reduce odometry drift, reduce pose errors, filter out erroneous signal returns, and provide robust surface reconstruction. 18. Claim 8 is rejected under 35 U.S.C. 103 as being unpatentable over Bosse et al (US 12117529 B1), hereinafter Bosse, as applied to Claims 1 & 14, in view of Pacala et al (US 20190179320 A1), hereinafter Pacala, as applied to Claims 4 & 5, in view of Prasser et al (US 20200240794 A1), hereinafter Prasser. 19. Regarding Claim 8: Bosse as modified by Pacala does not teach, aligning the LIDAR observation to the plurality of surfels is performed over a fixed number of iterations, and wherein the updated pose of the vehicle comprises a null output if the aggregate distance between the LIDAR observation and the plurality of surfels is not resolved over the fixed number of iterations. However, Prasser teaches, ([0085]: The trajectory optimization process smooths trajectories in each log by combining logged trajectory measurement data from IMUs and wheel speed encoders with the corrected nose poses (260). Trajectory optimization attempts to generate spline representations that satisfy each of these measurements and minimize error between them. For example, if the pose graph places two adjacent samples at a distance that conflicts with the IMU data, the trajectory optimization process combines the two by attempting to minimize the error in an optimization step. For each log, the trajectory optimization process outputs a new trajectory that is aligned to the other logs in a common reference frame, which may be used to build a map without fuzzy data or ambiguity). Prasser further teaches, ([0091]: For each LCO 325 independently, a reference map extraction 330 process extracts a small reference map by co-registering LIDAR data from the interval around the LCO time in the source sensor log. In some examples, the interval is a few seconds before and after the LCO time. Longer intervals produce larger reference maps with more error, whereas shorter intervals produce small reference maps that are less likely to find interesting matches. The LIDAR points are then co-registered using the pose estimates from the log's GPS spline estimation. While the GPS spline pose estimates may have substantial absolute error in the global frame, the local motion is accurate. In addition, an Iterative Closest Point (ICP) registration step is performed to refine the estimate so the resulting geometry in each reference map is coherent). Prasser goes on to teach, ([0095]: The LIDAR alignment 340 process is achieved by minimizing distances between points and the surface. The result is a maximum-likelihood estimate of the 6 DoF rigid transformation (and its uncertainty) between the two coordinate frames). Prasser continues to teach, ([0219]-[0220]: [0219]: 10. Perform the log trajectory estimation (with enhancements that have knowledge of scaffolds, but the core optimizations do not need knowledge of scaffolds). A pipeline wrapping the map build pipeline may be used to add scaffold-specific functionality. It is noted that various steps during a map build may have the ability to reject logs. During a scaffolding run this should result in termination of the map build run, and these logs are added to a log set so that these logs may be avoided for scaffolding. The remaining log set will then be revalidated, and if that fails, the process returns to log selection. The set of logs that successfully make it through the scaffolding map build run may be put into a log set, which may be added to later. A pipeline is then run iteratively, redoing log selection and log set validation as necessary. Validation may be put into the pipeline as desired. [0220]: 11. Perform initial stages map building (with knowledge of scaffolds within individual tools but not at a pipeline level). Some map validation failures will result in marking some logs not usable for scaffolding, at which point the process restarts from the log selection step unless the remaining set of logs/route plans passes all validation. All logs used in this build are scaffold logs. No non-scaffold data is mixed in during the initial map building. A pipeline is run iteratively, redoing log selection and validation as necessary). It would have been obvious for one of ordinary skill in the art at the time of filing to modify Bosse and Pacala with Prasser to include aligning the LIDAR observation to the plurality of surfels is performed over a fixed number of iterations, and wherein the updated pose of the vehicle comprises a null output if the aggregate distance between the LIDAR observation and the plurality of surfels is not resolved over the fixed number of iterations, since it is the same field of endeavor and results would have been predictable. One of ordinary skill in the art at the time of filing would have been motivated to modify Bosse and Pacala with Prasser since, such configurations can prevent tracking failures, prevent divergence, ensure system safety, and preserve processing power to retain real-time performance. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. US 20230236022 A1: Discloses a Lidar based vehicle odometry system employing transforms to update maps. Any inquiry concerning this communication or earlier communications from the examiner should be directed to JAMES W NAPIER whose telephone number is (571)272-7451. The examiner can normally be reached Monday - Friday 7:30 am - 5:00 pm. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Helal Algahaim can be reached at (571) 270-5227. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /J.W.N./Examiner, Art Unit 3645 /HELAL A ALGAHAIM/SPE , Art Unit 3645
Read full office action

Prosecution Timeline

Dec 29, 2023
Application Filed
Jul 06, 2026
Non-Final Rejection mailed — §102, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12663544
Ocean Sound Speed Profiling LIDAR
2y 10m to grant Granted Jun 23, 2026
Study what changed to get past this examiner. Based on 1 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
100%
Grant Probability
99%
With Interview (+0.0%)
3y 6m (~11m remaining)
Median Time to Grant
Low
PTA Risk
Based on 6 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month