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 . The rejections from the Office Action of 4/1/2026 are hereby withdrawn. New grounds for rejection are presented below.
Status of Claims
Claims 1-11 and 13-15 were amended with Applicant’s response dated 6/30/2026. Claims 1-11 and 13-15 are rejected.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claim 13 is rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim 13 recites the limitation "”the algorithm for automated perception" in line 5. There is insufficient antecedent basis for this limitation in the claim. For examination purposes, this limitation is being interpreted as referring to the “object detection algorithm” of Claim 1
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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.
Claims 1-3 and 13-15 are rejected under 35 U.S.C. 103 as being unpatentable over Li et. al. (US 20210216814 A1) in view Sakai et. al. (US 20180341019 A1).
Regarding Claim 1, Li discloses a method for recognizing an object in a surround of a laser scanner by clustering scan points of the laser scanner, the method comprising [Paragraph [0017] – “To make use of spatial data such as point clouds, clustering algorithms are utilized to group points located close to one another. The resultant clusters are provided to object recognition/detection algorithms to classify objects.”; Paragraph [0021] – “LiDAR light source 201 generates the pulse of light…The generated pulse of light travels away from the vehicle and interacts with objects located in the light path. Light reflected or backscattered from an object returns to the vehicle and is detected by detector 202…provides information regarding the distance between the object and the detector 202.”]:
creating, using the laser scanner, a multiplicity of successive scan points, wherein each scan point is characterized by an angle of incidence [Paragraph [0016] – “FIG. 7 is a diagram illustrating the effect incident angle and resolution has on the distance between adjacent points according to some embodiments.”; Paragraph [0017] – “Finally, in some embodiments the adaptive clustering algorithm disclosed herein accounts for the effect the incident angle has on the distance between adjacent points, which sometimes leads to the failure of typical density algorithms to connect adjacent points within the same object.”; Paragraph [0019] – “The set of spatial data generated as a result is comprised of a plurality of points located in space.”], and
wherein a sequence of the multiplicity of successive scan points is defined by the angles of incidence[Paragraph [0017] – “Finally, in some embodiments the adaptive clustering algorithm disclosed herein accounts for the effect the incident angle has on the distance between adjacent points, which sometimes leads to the failure of typical density algorithms to connect adjacent points within the same object.”; Paragraph [0019] – “The set of spatial data generated as a result is comprised of a plurality of points located in space.” – see also Fig. [7], which displays a sequence of successive scan points defined by their angles of incidence] ; and
determining, using at least one computing unit, in a manner dependent on the sequence, at least one cluster of scan points containing some of the multiplicity of successive scan points [Paragraph [0023] – “In the embodiment shown in FIG. 2a, processing system 204 includes processor 206, computer readable medium 208 and point cloud storage 210. Computer readable medium stores instructions that when executed by the processor 206 causes the processor 206 to implement a variety of functions/operations on the data collected by the detector 202. For example, in some embodiments this includes a point cloud module 220, a clustering module 222, and an object classification module 224 (shown in FIG. 2b). In some embodiments, the point cloud module 220 is configured to generate the point cloud based on the reflections detected by the detector 202. Clustering module 222 analyzes the point cloud and groups the plurality of individual points into one or more unique clusters...” – see Fig. [2a], 204 is the computing unit; see also Fig. [2b], the point cloud is the sequence from which the cluster is determined; Paragraph [0029] – “In some embodiments, the order in which points are traversed is based on the sorting of the points done at step 306.”; Paragraph [0049] – “At step 444, the azimuth and/or elevation angles associated with the border point (e.g., input point) is compared to the azimuth and/or elevation angles of neighboring points (i.e., adjacent points) points at step 444. The problem being solved via the addition of step 444 is illustrated in FIG. 7, in which a plurality of points 702, 704, and 706 have been added to a cluster, but point 706 is identified as a border point. Typically, this would mean that point 708 would not be added to the same cluster. However, in this example the distance between points 706 and 708 is a result of the distance of point 708 from the LiDAR sensor 700 as well as the angle (azimuth angle) the LiDAR beam makes with the point. In the example shown in FIG. 7 the points 700-716 are all associated with a semi-truck located on the side of the vehicle, although the distance between adjacent points increases as the points move farther away from the LiDAR sensor and at a different azimuth angle. This is remedied by reviewing the difference in azimuth/elevation angles between point 706 identified as a nota core point (i.e., border point) and adjacent point 708. If the difference in azimuth/elevation angles is less than a threshold, then the adjacent point 708 may be added to the neighbor list (and therefore to the cluster).”]; and
inputting the at least one cluster into an object detection algorithm that recognizes the object based on the at least one cluster [Paragraph [0023] – “Object classification module 224 detects objects within the field of view of the LiDAR-based imaging system 200 based on the received clusters. Detected objects—including information regarding the location of the object and/or distance to the object may be provided as an output to other systems.” – object classification module is object detection algorithm].
Li does not disclose that determining the at least one cluster of scan points comprises determining whether a particular scan point of the multiplicity of successive scan points is within a threshold distance from another scan point of the multiplicity of successive scan points or that the threshold distance depends on a proximity in the sequence of a position of the particular scan point to a position of the another scan point.
Sakai, however, discloses that determining the at least one cluster of scan points comprises determining whether a particular scan point of the multiplicity of successive scan points is within a threshold distance from another scan point of the multiplicity of successive scan points [Paragraph [0061] – “In some arrangements, the point clustering module 127 can determine whether the perceived end of a cluster is the actual end of the cluster. Continuing with the example shown in FIG. 5, the point clustering module 127 can determine whether one or more points beyond the cluster 500b should be grouped (or clustered) with cluster 500b or another cluster (e.g., 500c). The point clustering module 127 can identify which cluster one or more points beyond the cluster 500b should be grouped with based on one or more factors, including for example, a space (or angle) between adjacent points, the respective distances of adjacent points to the LIDAR sensor(s) 120, etc. In some examples, the point clustering module 127 can compare the space, angle, respective distance, etc. between adjacent points in the point cloud to a threshold space, angle, distance, etc. When the space, angle, distance, etc. exceeds (or is equal to) the threshold, the point clustering module 127 can determine that the point(s) beyond the cluster 500b should be grouped with a separate cluster. In this regard, the point clustering module 127 can refine one or more clusters as subsequent data is received and analyzed on a rolling basis.”].
It would have been obvious to one of ordinary skill in the art, prior to the effective filing date of the claimed invention, to apply the threshold distance of Sakai to the successive scan points of Li to determine whether a scan point belongs to a cluster with greater efficiency.
The combination discloses that the threshold distance depends on a proximity in the sequence of a position of the particular scan point to a position of the another scan point [Li, Paragraph [0025] – “In some embodiments, step 302 utilizes the distance of the point from the LiDAR sensor to modify one or more clustering parameters. For example, in some embodiments if the point being analyzed is determined to be located a short distance from the LiDAR sensor, then the clustering parameters are set to a first set of values in anticipation of points being relatively closely spaced. If the point being analyzed is determined to be located a greater distance from the LiDAR sensor, then the clustering parameters are set to a second set of values in anticipation of points being relatively further spaced apart. For example, the search radius c may be increased for points located further from the LiDAR sensor. As described in more detail with respect to FIG. 4a, in some embodiments a minimum point threshold is utilized to determine if a point is a core point during the search at step 302, and the minimum point threshold may be modified based on distance of the point from the LiDAR sensor.” – applying the distance threshold of Sakai to the search radius c and noting that distance from the LiDAR is being used to determine proximity in the sequence between scan points; refer also to sequence of scan points in Fig. 7 of Li].
Regarding Claim 2, the combination of Li and Sakai discloses the method as claimed in claim 1, further comprising: identifying a first scan point of the multiplicity of successive scan points as part of a first cluster of the at least one cluster [Paragraph [0049] – “The problem being solved via the addition of step 444 is illustrated in FIG. 7, in which a plurality of points 702, 704, and 706 have been added to a cluster, but point 706 is identified as a border point.” – see Fig. [7], any of 702, 704, or 706 can be the first scan point];
determining a distance between the first scan point and a second scan point of the multiplicity of successive scan points [Paragraph [0049] – “In the example shown in FIG. 7 the points 700-716 are all associated with a semi-truck located on the side of the vehicle, although the distance between adjacent points increases as the points move farther away from the LiDAR sensor and at a different azimuth angle. This is remedied by reviewing the difference in azimuth/elevation angles between point 706 identified as [not a core point] (i.e., border point) and adjacent point 708 may be added to the neighbor list (and therefore to the cluster).” – recall that the difference in azimuth/elevation angles is related to distance between scan points];
identifying the second scan point as part of the first cluster if the distance is less than or equal to a given maximum distance [Paragraph [0049] – “If the difference in azimuth/elevation angles is less than a threshold, then the adjacent point 708 may be added to the neighbor list (and therefore to the cluster).” – recall that the difference in azimuth/elevation angles is related to distance between scan points].
Regarding Claim 3, the combination of Li and Sakai discloses the method as claimed in claim 2 wherein the maximum distance depends on a position of the first scan point according to the sequence in relation to a position of the second scan point according to the sequence [Paragraph [0049] – “The problem being solved via the addition of step 444 is illustrated in FIG. 7, in which a plurality of points 702, 704, and 706 have been added to a cluster, but point 706 is identified as a border point. Typically, this would mean that point 708 would not be added to the same cluster. However, in this example the distance between points 706 and 708 is a result of the distance of point 708 from the LiDAR sensor 700 as well as the angle (azimuth angle) the LiDAR beam makes with the point. In the example shown in FIG. 7 the points 700-716 are all associated with a semi-truck located on the side of the vehicle, although the distance between adjacent points increases as the points move farther away from the LiDAR sensor and at a different azimuth angle. This is remedied by reviewing the difference in azimuth/elevation angles between point 706 identified as [not a] core point (i.e., border point) and adjacent point 708. If the difference in azimuth/elevation angles is less than a threshold, then the adjacent point 708 may be added to the neighbor list (and therefore to the cluster).” – sequence determines distance and azimuth angle; maximum distance is dependent on angle threshold].
Regarding Claim 13, the combination of Li and Sakai discloses a method for at least partially automated guidance of a motor vehicle, the motor vehicle comprising: a laser scanner and at least one computing unit [Paragraph [0018]-[0019] – “In the embodiment shown in FIG. 1a, LiDAR sensor 100 is installed on a top portion of the vehicle 102….The light source generates a pulse of light and the detector monitors for reflections, wherein the time of flight associated with a reflection is utilized to estimate the distance/position of the object that caused the reflection. The set of spatial data generated as a result is comprised of a plurality of points located in space. As discussed in more detail below, the spatial data is clustered and the clustered data is utilized to detect/recognize objects.” - see Figs. [1a-b] and [2a], LiDAR sensor 100 is mounted on the vehicle, LiDAR imaging system 200 contains computing unit],
the method comprising: performing a method for detecting an object as claimed in claim 1 [Paragraph [0019] – “The set of spatial data generated as a result is comprised of a plurality of points located in space. As discussed in more detail below, the spatial data is clustered and the clustered data is utilized to detect/recognize objects.]; and
creating at least one control signal for at least partially automated guidance of the motor vehicle depending on a result of the algorithm for automated perception [Paragraph [0019] – “In response to detected objects, the vehicle 102 may take a number of actions, ranging from generating alerts for an operator of the vehicle to generating commands to alter the operation of the vehicle (e.g., autonomous actions for self-driving vehicles).”].
Regarding Claim 14, the combination of Li and Sakai discloses a sensor system for a motor vehicle, the sensor system comprising: a laser scanner configured to create sensor data that represent an object in a surround of the laser scanner [Paragraph [0018]-[0019] – “In the embodiment shown in FIG. 1a, LiDAR sensor 100 is installed on a top portion of the vehicle 102….The light source generates a pulse of light and the detector monitors for reflections, wherein the time of flight associated with a reflection is utilized to estimate the distance/position of the object that caused the reflection. The set of spatial data generated as a result is comprised of a plurality of points located in space. As discussed in more detail below, the spatial data is clustered and the clustered data is utilized to detect/recognize objects.” - see Figs. [1a-b] and [2a], LiDAR sensor 100 is mounted on the vehicle, LiDAR imaging system 200 contains computing unit]; and
at least one computing unit configured to: create a multiplicity of successive scan points on the basis of the sensor data [Paragraph [0016] – “FIG. 7 is a diagram illustrating the effect incident angle and resolution has on the distance between adjacent points according to some embodiments.”; Paragraph [0017] – “Finally, in some embodiments the adaptive clustering algorithm disclosed herein accounts for the effect the incident angle has on the distance between adjacent points, which sometimes leads to the failure of typical density algorithms to connect adjacent points within the same object.”; Paragraph [0019] – “The set of spatial data generated as a result is comprised of a plurality of points located in space.”] on the basis of the sensor data [Paragraph [0023] – “In the embodiment shown in FIG. 2a, processing system 204 includes processor 206, computer readable medium 208 and point cloud storage 210. Computer readable medium stores instructions that when executed by the processor 206 causes the processor 206 to implement a variety of functions/operations on the data collected by the detector 202.” – detector 202 is part of the LiDAR sensor],
wherein each scan point is characterized by an angle of incidence [Paragraph [0017] – “Finally, in some embodiments the adaptive clustering algorithm disclosed herein accounts for the effect the incident angle has on the distance between adjacent points, which sometimes leads to the failure of typical density algorithms to connect adjacent points within the same object.”; Paragraph [0019] – “The set of spatial data generated as a result is comprised of a plurality of points located in space.” – see also Fig. [7], which displays a sequence of successive scan points defined by their angles of incidence], and
a sequence of the multiplicity of successive scan points is defined by the angles of incidence [Paragraph [0017] – “Finally, in some embodiments the adaptive clustering algorithm disclosed herein accounts for the effect the incident angle has on the distance between adjacent points, which sometimes leads to the failure of typical density algorithms to connect adjacent points within the same object.”; Paragraph [0019] – “The set of spatial data generated as a result is comprised of a plurality of points located in space.” – see also Fig. [7], which displays a sequence of successive scan points defined by their angles of incidence]; and
to determine, in a manner dependent on the sequence, at least one cluster of scan points containing some of the multiplicity of successive scan points [Paragraph [0023] – “In the embodiment shown in FIG. 2a, processing system 204 includes processor 206, computer readable medium 208 and point cloud storage 210. Computer readable medium stores instructions that when executed by the processor 206 causes the processor 206 to implement a variety of functions/operations on the data collected by the detector 202. For example, in some embodiments this includes a point cloud module 220, a clustering module 222, and an object classification module 224 (shown in FIG. 2b). In some embodiments, the point cloud module 220 is configured to generate the point cloud based on the reflections detected by the detector 202. Clustering module 222 analyzes the point cloud and groups the plurality of individual points into one or more unique clusters...” – see Fig. [2a], 204 is the computing unit; see also Fig. [2b], the point cloud is the sequence from which the cluster is determined; Paragraph [0029] – “In some embodiments, the order in which points are traversed is based on the sorting of the points done at step 306.”; Paragraph [0049] – “At step 444, the azimuth and/or elevation angles associated with the border point (e.g., input point) is compared to the azimuth and/or elevation angles of neighboring points (i.e., adjacent points) points at step 444. The problem being solved via the addition of step 444 is illustrated in FIG. 7, in which a plurality of points 702, 704, and 706 have been added to a cluster, but point 706 is identified as a border point. Typically, this would mean that point 708 would not be added to the same cluster. However, in this example the distance between points 706 and 708 is a result of the distance of point 708 from the LiDAR sensor 700 as well as the angle (azimuth angle) the LiDAR beam makes with the point. In the example shown in FIG. 7 the points 700-716 are all associated with a semi-truck located on the side of the vehicle, although the distance between adjacent points increases as the points move farther away from the LiDAR sensor and at a different azimuth angle. This is remedied by reviewing the difference in azimuth/elevation angles between point 706 identified as a nota core point (i.e., border point) and adjacent point 708. If the difference in azimuth/elevation angles is less than a threshold, then the adjacent point 708 may be added to the neighbor list (and therefore to the cluster).”].
input the at least one cluster into an object detection algorithm that recognizes the object based on the at least one cluster [Paragraph [0023] – “Object classification module 224 detects objects within the field of view of the LiDAR-based imaging system 200 based on the received clusters. Detected objects—including information regarding the location of the object and/or distance to the object may be provided as an output to other systems.” – object classification module is object detection algorithm].
Li does not disclose that determining the at least one cluster of scan points comprises determining whether a particular scan point of the multiplicity of successive scan points is within a threshold distance from another scan point of the multiplicity of successive scan points and that the threshold distance depends on a proximity in the sequence of a position of the particular scan point to a position of the another scan point.
Sakai, however, discloses that determining the at least one cluster of scan points comprises determining whether a particular scan point of the multiplicity of successive scan points is within a threshold distance from another scan point of the multiplicity of successive scan points [Paragraph [0061] – “In some arrangements, the point clustering module 127 can determine whether the perceived end of a cluster is the actual end of the cluster. Continuing with the example shown in FIG. 5, the point clustering module 127 can determine whether one or more points beyond the cluster 500b should be grouped (or clustered) with cluster 500b or another cluster (e.g., 500c). The point clustering module 127 can identify which cluster one or more points beyond the cluster 500b should be grouped with based on one or more factors, including for example, a space (or angle) between adjacent points, the respective distances of adjacent points to the LIDAR sensor(s) 120, etc. In some examples, the point clustering module 127 can compare the space, angle, respective distance, etc. between adjacent points in the point cloud to a threshold space, angle, distance, etc. When the space, angle, distance, etc. exceeds (or is equal to) the threshold, the point clustering module 127 can determine that the point(s) beyond the cluster 500b should be grouped with a separate cluster. In this regard, the point clustering module 127 can refine one or more clusters as subsequent data is received and analyzed on a rolling basis.”].
It would have been obvious to one of ordinary skill in the art, prior to the effective filing date of the claimed invention, to apply the threshold distance of Sakai to the successive scan points of Li to determine whether a scan point belongs to a cluster with greater efficiency.
The combination of Li and Sakai discloses wherein the threshold distance depends on a proximity in the sequence of a position of the particular scan point to a position of the another scan point [Li, Paragraph [0025] – “In some embodiments, step 302 utilizes the distance of the point from the LiDAR sensor to modify one or more clustering parameters. For example, in some embodiments if the point being analyzed is determined to be located a short distance from the LiDAR sensor, then the clustering parameters are set to a first set of values in anticipation of points being relatively closely spaced. If the point being analyzed is determined to be located a greater distance from the LiDAR sensor, then the clustering parameters are set to a second set of values in anticipation of points being relatively further spaced apart. For example, the search radius c may be increased for points located further from the LiDAR sensor. As described in more detail with respect to FIG. 4a, in some embodiments a minimum point threshold is utilized to determine if a point is a core point during the search at step 302, and the minimum point threshold may be modified based on distance of the point from the LiDAR sensor.” – applying the distance threshold of Sakai to the search radius c and noting that distance from the LiDAR is being used to determine proximity in the sequence between scan points; refer also to sequence of scan points in Fig. 7 of Li].
Regarding Claim 15, the combination of Li and Sakai discloses a non-transitory computer readable medium comprising instructions for causing a system to perform a method as claimed in claim 1 [Paragraph [0023] – “Computer readable medium stores instructions that when executed by the processor 206 causes the processor 206 to implement a variety of functions/operations on the data collected by the detector 202. For example, in some embodiments this includes a point cloud module 220, a clustering module 222, and an object classification module 224 (shown in FIG. 2b). In some embodiments, the point cloud module 220 is configured to generate the point cloud based on the reflections detected by the detector 202. Clustering module 222 analyzes the point cloud and groups the plurality of individual points into one or more unique clusters...” – see Fig. [2a], 208 is the computer readable medium].
Claims 4-11 are rejected under 35 U.S.C. 103 as being unpatentable over Li et. al. in view Sakai et. al., in further view of Chen et. al. (US 20180267166 A1).
Regarding Claim 4, the combination of Li and Sakai discloses the method as claimed in claim 1, further comprising: identifying a first scan point of the multiplicity of successive scan points as part of a first cluster of the at least one cluster [Paragraph [0049] – “The problem being solved via the addition of step 444 is illustrated in FIG. 7, in which a plurality of points 702, 704, and 706 have been added to a cluster, but point 706 is identified as a border point.” – see Fig. [7], any of 702, 704, or 706 can be the first scan point];
identifying a second scan point of the multiplicity of successive scan points which immediately follows the first scan point according to the sequence as part of a second cluster of the at least one cluster [Paragraph [0049] – “In the example shown in FIG. 7 the points 700-716 are all associated with a semi-truck located on the side of the vehicle, although the distance between adjacent points increases as the points move farther away from the LiDAR sensor and at a different azimuth angle. This is remedied by reviewing the difference in azimuth/elevation angles between point 706 identified as [not a core point] (i.e., border point) and adjacent point 708.” – recall that the difference in azimuth/elevation angles is related to distance between scan points; Paragraph [0050] – “In the embodiment shown in FIG. 4b, at step 444 if the difference in azimuth/elevation angles is not less than a threshold, this indicates that the points are not adjacent to one another in terms of LiDAR pulses. In this case, the process continues at 438, …and at step 448 a determination is made whether the point has been previously visited for clustering purposes. If at step 448 it is determined that the point has been previously visited, then at step 450 a determination is made whether the point was previously identified as a noise point…if the point is not identified as noise at step 450, then this means the point was previously added to another cluster and no further action should be taken with respect to this point…If at step 448 it is determined that the point has not been visited, then at step 452 the point (i.e., adjacent point) is added to the neighbor list and assigned to the cluster ID ID at step 432.” – see also Figs. [4b] and [7]];
The combination does not disclose determining a distance between the first scan point and a third scan point of the multiplicity of successive scan points which immediately follows the second scan point according to the sequence; identifying the third scan point either as part of the first cluster or as part of a third cluster of the at least one cluster depending on the distance between the first scan point and the third scan point.
However, Chen discloses determining a distance between the first scan point and a third scan point of the multiplicity of successive scan points which immediately follows the second scan point according to the sequence [Paragraph [0040] – “Regarding each Euclidean distance, a connection line between two vertexes corresponding the Euclidean distance may be considered as an edge, namely, the connection line between vertex a and vertex x, the connection line between vertex b and vertex x and the connection line between vertex c and vertex x are respectively considered as an edge, thereby obtaining a total of 3 edges. The connection line is usually a straight line.”; Paragraph [0045]-[0046] – “To this end, the present disclosure provides an improved algorithm, briefly called MstSegmentation algorithm. Specifically, in an initial state, each vertex in the set of vertex may be considered as a class; then, all edges in the set of edges are sorted in an ascending order of length, and said all edges are processed as follows in a sequential order after the sorting…” – sorting in ascending order of segment length ensures that second scan point is nearest neighbor (immediately follows) to first, third scan point is nearest neighbor (immediately follows) to second, and so on]; and
identifying the third scan point either as part of the first cluster or as part of a third cluster of the at least one cluster depending on the distance between the first scan point and the third scan point [Paragraph [0046] – “Specifically, in an initial state, each vertex in the set of vertex may be considered as a class…determining whether an edge satisfies an adding condition; if yes, connecting two vertexes corresponding to the edge (e.g., connecting via a straight line) for class clustering, namely, adding the edge in the diagram; clustering two classes into one class whenever one edge is added; as such, after processing of all edges in the set of edges is completed, a smallest generated tree may be obtained by clustering. Each tree is a class.” – the class of a vertex (scan point) is only reassigned if the edge (distance between two vertices, third and first, in this case) satisfies an adding condition, otherwise it retains its initial class].
It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to implement the sequence-based clustering algorithm disclosed by Chen on the object recognition method disclosed by Li and Sakai in order to improve the assignment of individual scan points to clusters.
Regarding Claim 5, the combination of Li, Sakai, and Chen discloses the method as claimed in claim 4, wherein the third scan point is determined as part of the first cluster if the distance between the first scan point and the third scan point is less than or equal to a given maximum distance for next-but-one neighbors [Chen, Paragraph [0047] – “The manner of determining whether each edge satisfies the adding condition is: calculating a threshold of the class where two vertexes corresponding to the edge lies; determining that the edge satisfies the adding condition if the length of the edge is simultaneously smaller than two calculated thresholds, and if a ring does not app ear after two vertexes corresponding to the edge are connected.” – since threshold is based on class of each vertex and edges are processed in ascending order, edge lengths for nearest neighbor, then next-but-one neighbor, then next-but-two neighbor, and so on, are each being compared to the threshold for nearest neighbor, next-but-one neighbor, next-but-two neighbor, and so on].
Regarding Claim 6, the combination of Li, Sakai, and Chen discloses the method as claimed in claim 1, further comprising: identifying a first scan point of the multiplicity of successive scan points as part of a first cluster of the at least one cluster[Paragraph [0049] – “The problem being solved via the addition of step 444 is illustrated in FIG. 7, in which a plurality of points 702, 704, and 706 have been added to a cluster, but point 706 is identified as a border point.” – see Fig. [7], any of 702, 704, or 706 can be the first scan point] ;
The combination does not disclose determining a distance between a second scan point of the multiplicity of successive scan points which immediately follows the first scan point according to the sequence and a third scan point of the multiplicity of successive scan points which immediately follows the second scan point according to the sequence; determining a distance between the first scan point and the third scan point; identifying the second scan point either as part of the first cluster or as part of a second cluster of the at least one cluster depending on the distance between the first scan point and the third scan point and depending on the distance between the second scan point and the third scan point.
However, Chen discloses determining a distance between a second scan point of the multiplicity of successive scan points which immediately follows the first scan point according to the sequence and a third scan point of the multiplicity of successive scan points which immediately follows the second scan point according to the sequence [Paragraph [0040] – “Regarding each Euclidean distance, a connection line between two vertexes corresponding the Euclidean distance may be considered as an edge, namely, the connection line between vertex a and vertex x, the connection line between vertex b and vertex x and the connection line between vertex c and vertex x are respectively considered as an edge, thereby obtaining a total of 3 edges. The connection line is usually a straight line.”; Paragraph [0045]-[0046] – “To this end, the present disclosure provides an improved algorithm, briefly called MstSegmentation algorithm. Specifically, in an initial state, each vertex in the set of vertex may be considered as a class; then, all edges in the set of edges are sorted in an ascending order of length, and said all edges are processed as follows in a sequential order after the sorting…” – sorting in ascending order of segment length insures that second scan point is nearest neighbor (immediately follows) to first, third scan point is nearest neighbor (immediately follows) to second, and so on, and one of the edges corresponds to the distance between the second and third scan points];
determining a distance between the first scan point and the third scan point [Paragraph [0045]-[0046] – “To this end, the present disclosure provides an improved algorithm, briefly called MstSegmentation algorithm. Specifically, in an initial state, each vertex in the set of vertex may be considered as a class; then, all edges in the set of edges are sorted in an ascending order of length, and said all edges are processed as follows in a sequential order after the sorting…” – sorting in ascending order of segment length insures that second scan point is nearest neighbor (immediately follows) to first, third scan point is nearest neighbor (immediately follows) to second, and so on, and one of the edges corresponds to the distance between the first and third scan points];
identifying the second scan point either as part of the first cluster or as part of a second cluster of the at least one cluster depending on the distance between the first scan point and the third scan point and depending on the distance between the second scan point and the third scan point [Paragraph [0046] – “Specifically, in an initial state, each vertex in the set of vertex may be considered as a class…determining whether an edge satisfies an adding condition; if yes, connecting two vertexes corresponding to the edge (e.g., connecting via a straight line) for class clustering, namely, adding the edge in the diagram; clustering two classes into one class whenever one edge is added; as such, after processing of all edges in the set of edges is completed, a smallest generated tree may be obtained by clustering. Each tree is a class.” – the class of a vertex (scan point) is only reassigned if the edge (distance between two vertices, third and first, in this case) satisfies an adding condition, otherwise it retains its initial class].
It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to implement the sequence-based clustering algorithm disclosed by Chen on the object recognition method disclosed by Li, Sakai, and Chen in order to improve the assignment of individual scan points to clusters.
Regarding Claim 7, the combination of Li, Sakai, and Chen discloses the method as claimed in The method as claimed in wherein the second scan point is identified as part of the first cluster if the distance between the first scan point and the third scan point is less than or equal to a given maximum distance for next-but-one neighbors and the distance between the second scan point and the third scan point is less than or equal to a given maximum distance for nearest neighbors [Chen, Paragraph [0047] – “The manner of determining whether each edge satisfies the adding condition is: calculating a threshold of the class where two vertexes corresponding to the edge lies; determining that the edge satisfies the adding condition if the length of the edge is simultaneously smaller than two calculated thresholds, and if a ring does not app ear after two vertexes corresponding to the edge are connected.” – since threshold is based on class of each vertex and edges are processed in ascending order, edge lengths for nearest neighbor, then next-but-one neighbor, then next-but-two neighbor, and so on, are each being compared to the threshold for nearest neighbor, next-but-one neighbor, next-but-two neighbor, and so on; Paragraph [0054] – “It can be seen that the threshold changes constantly during the above processing procedure, namely, it is not fixed, but calculated according to local information of each class (a length of the longest edge and the number of vertexes), thereby exhibiting a better robustness than the fixed threshold.” – maximum distance is the threshold, which is calculated depending on all edge lengths assigned to a class].
Regarding Claim 8, the combination of Li, Sakai, and Chen discloses the method as claimed in claim 1, further comprising: identifying a first scan point of the multiplicity of successive scan points as part of a first cluster of the at least one cluster [Li, Paragraph [0049] – “The problem being solved via the addition of step 444 is illustrated in FIG. 7, in which a plurality of points 702, 704, and 706 have been added to a cluster, but point 706 is identified as a border point.” – see Fig. [7], any of 702, 704, or 706 can be the first scan point];
The combination does not disclose determining a distance between a second scan point of the multiplicity of successive scan points which immediately follows the first scan point according to the sequence and a third scan point of the multiplicity of successive scan points which immediately follows the second scan point according to the sequence; determining a distance between the third scan point and a fourth scan point of the multiplicity of successive scan points which immediately follows the third scan point according to the sequence; determining a distance between the fourth scan point and the first scan point; and identifying the second scan point either as part of the first cluster or as part of a second cluster of the at least one cluster depending on the distance between the second scan point and the third scan point and depending on the distance between the third scan point and the fourth scan point and depending on the distance between the fourth scan point and the first scan point.
Chen, however discloses determining a distance between a second scan point of the multiplicity of successive scan points which immediately follows the first scan point according to the sequence and a third scan point of the multiplicity of successive scan points which immediately follows the second scan point according to the sequence [Paragraph [0040] – “Regarding each Euclidean distance, a connection line between two vertexes corresponding the Euclidean distance may be considered as an edge, namely, the connection line between vertex a and vertex x, the connection line between vertex b and vertex x and the connection line between vertex c and vertex x are respectively considered as an edge, thereby obtaining a total of 3 edges. The connection line is usually a straight line.”; Paragraph [0045]-[0046] – “To this end, the present disclosure provides an improved algorithm, briefly called MstSegmentation algorithm. Specifically, in an initial state, each vertex in the set of vertex may be considered as a class; then, all edges in the set of edges are sorted in an ascending order of length, and said all edges are processed as follows in a sequential order after the sorting…” – sorting in ascending order of segment length insures that second scan point is nearest neighbor (immediately follows) to first, third scan point is nearest neighbor (immediately follows) to second, and so on, and one of the edges corresponds to the distance between the second and third scan points];
determining a distance between the third scan point and a fourth scan point of the multiplicity of successive scan points which immediately follows the third scan point according to the sequence [Paragraph [0040] – “Regarding each Euclidean distance, a connection line between two vertexes corresponding the Euclidean distance may be considered as an edge, namely, the connection line between vertex a and vertex x, the connection line between vertex b and vertex x and the connection line between vertex c and vertex x are respectively considered as an edge, thereby obtaining a total of 3 edges. The connection line is usually a straight line.”; Paragraph [0045]-[0046] – “To this end, the present disclosure provides an improved algorithm, briefly called MstSegmentation algorithm. Specifically, in an initial state, each vertex in the set of vertex may be considered as a class; then, all edges in the set of edges are sorted in an ascending order of length, and said all edges are processed as follows in a sequential order after the sorting…” – sorting in ascending order of segment length insures that second scan point is nearest neighbor (immediately follows) to first, third scan point is nearest neighbor (immediately follows) to second, and so on, and one of the edges corresponds to the distance between the third and fourth scan points];
determining a distance between the fourth scan point and the first scan point [Paragraph [0040] – “Regarding each Euclidean distance, a connection line between two vertexes corresponding the Euclidean distance may be considered as an edge, namely, the connection line between vertex a and vertex x, the connection line between vertex b and vertex x and the connection line between vertex c and vertex x are respectively considered as an edge, thereby obtaining a total of 3 edges. The connection line is usually a straight line.”; Paragraph [0045]-[0046] – “To this end, the present disclosure provides an improved algorithm, briefly called MstSegmentation algorithm. Specifically, in an initial state, each vertex in the set of vertex may be considered as a class; then, all edges in the set of edges are sorted in an ascending order of length, and said all edges are processed as follows in a sequential order after the sorting…” – sorting in ascending order of segment length insures that second scan point is nearest neighbor (immediately follows) to first, third scan point is nearest neighbor (immediately follows) to second, and so on, and one of the edges corresponds to the distance between the first and fourth scan points]; and
identifying the second scan point either as part of the first cluster or as part of a second cluster of the at least one cluster depending on the distance between the second scan point and the third scan point and depending on the distance between the third scan point and the fourth scan point and depending on the distance between the fourth scan point and the first scan point [Paragraph [0046] – “Specifically, in an initial state, each vertex in the set of vertex may be considered as a class…determining whether an edge satisfies an adding condition; if yes, connecting two vertexes corresponding to the edge (e.g., connecting via a straight line) for class clustering, namely, adding the edge in the diagram; clustering two classes into one class whenever one edge is added; as such, after processing of all edges in the set of edges is completed, a smallest generated tree may be obtained by clustering. Each tree is a class.” – the class of a vertex (scan point) is only reassigned if the edge (distance between two vertices, third and first, in this case) satisfies an adding condition, otherwise it retains its initial class; Paragraph [0054] – “It can be seen that the threshold changes constantly during the above processing procedure, namely, it is not fixed, but calculated according to local information of each class (a length of the longest edge and the number of vertexes), thereby exhibiting a better robustness than the fixed threshold.” – identifying the cluster is based on the threshold, which is calculated depending on all edge lengths assigned to a class].
It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to implement the sequence-based clustering algorithm disclosed by Chen on the object recognition method disclosed by the combination of Li, Sakai, and Chen in order to improve the assignment of individual scan points to clusters.
Regarding Claim 9, the combination of Li, Sakai, and Chen discloses The method as claimed in The method as claimed in wherein the second scan point is identified as part of the first cluster if the distance between the second scan point and the third scan point is less than or equal to a given maximum distance for nearest neighbors and the distance between the third scan point and the fourth scan point is less than or equal to the given maximum distance for nearest neighbors and the distance between the fourth scan point and the first scan point is less than or equal to a given maximum distance for next-but-two neighbors [Chen, Paragraph [0047] – “The manner of determining whether each edge satisfies the adding condition is: calculating a threshold of the class where two vertexes corresponding to the edge lies; determining that the edge satisfies the adding condition if the length of the edge is simultaneously smaller than two calculated thresholds, and if a ring does not app ear after two vertexes corresponding to the edge are connected.” – since threshold is based on class of each vertex and edges are processed in ascending order, edge lengths for nearest neighbor, then next-but-one neighbor, then next-but-two neighbor, and so on, are each being compared to the threshold for nearest neighbor, next-but-one neighbor, next-but-two neighbor, and so on; Paragraph [0054] – “It can be seen that the threshold changes constantly during the above processing procedure, namely, it is not fixed, but calculated according to local information of each class (a length of the longest edge and the number of vertexes), thereby exhibiting a better robustness than the fixed threshold.” – maximum distance is the threshold, which is calculated depending on all edge lengths assigned to a class].
Regarding Claim 10, the combination of Li, Sakai, and Chen discloses the method as claimed in claim 1, further comprising: identifying a first scan point of the multiplicity of successive scan points as part of a first cluster of the at least one cluster [Li, Paragraph [0049] – “The problem being solved via the addition of step 444 is illustrated in FIG. 7, in which a plurality of points 702, 704, and 706 have been added to a cluster, but point 706 is identified as a border point.” – see Fig. [7], any of 702, 704, or 706 can be the first scan point].
The combination does not disclose determining a distance between a second scan point of the multiplicity of successive scan points which immediately follows the first scan point according to the sequence and a fourth scan point of the multiplicity of successive scan points, wherein a third scan point of the multiplicity of successive scan points immediately follows the second scan point according to the sequence and the fourth scan point immediately follows the third scan point according to the sequence; determining a distance between the fourth scan point and a fifth scan point of the multiplicity of successive scan points which immediately follows the fourth scan point according to the sequence; determining a distance between the fifth scan point and the first scan point; and identifying the second scan point either as part of the first cluster or as part of a second cluster of the at least one cluster depending on the distance between the second scan point and the fourth scan point and depending on the distance between the fourth scan point and the fifth scan point and depending on the distance between the fifth scan point and the first scan point.
However, Chen discloses determining a distance between a second scan point of the multiplicity of successive scan points which immediately follows the first scan point according to the sequence and a fourth scan point of the multiplicity of successive scan points, wherein a third scan point of the multiplicity of successive scan points immediately follows the second scan point according to the sequence and the fourth scan point immediately follows the third scan point according to the sequence [Paragraph [0040] – “Regarding each Euclidean distance, a connection line between two vertexes corresponding the Euclidean distance may be considered as an edge, namely, the connection line between vertex a and vertex x, the connection line between vertex b and vertex x and the connection line between vertex c and vertex x are respectively considered as an edge, thereby obtaining a total of 3 edges. The connection line is usually a straight line.”; Paragraph [0045]-[0046] – “To this end, the present disclosure provides an improved algorithm, briefly called MstSegmentation algorithm. Specifically, in an initial state, each vertex in the set of vertex may be considered as a class; then, all edges in the set of edges are sorted in an ascending order of length, and said all edges are processed as follows in a sequential order after the sorting…” – sorting in ascending order of segment length insures that second scan point is nearest neighbor (immediately follows) to first, third scan point is nearest neighbor (immediately follows) to second, and so on, and one of the edges corresponds to the distance between the second and fourth scan points];
determining a distance between the fourth scan point and a fifth scan point of the multiplicity of successive scan points which immediately follows the fourth scan point according to the sequence [Paragraph [0040] – “Regarding each Euclidean distance, a connection line between two vertexes corresponding the Euclidean distance may be considered as an edge, namely, the connection line between vertex a and vertex x, the connection line between vertex b and vertex x and the connection line between vertex c and vertex x are respectively considered as an edge, thereby obtaining a total of 3 edges. The connection line is usually a straight line.”; Paragraph [0045]-[0046] – “To this end, the present disclosure provides an improved algorithm, briefly called MstSegmentation algorithm. Specifically, in an initial state, each vertex in the set of vertex may be considered as a class; then, all edges in the set of edges are sorted in an ascending order of length, and said all edges are processed as follows in a sequential order after the sorting…” – sorting in ascending order of segment length insures that second scan point is nearest neighbor (immediately follows) to first, third scan point is nearest neighbor (immediately follows) to second, and so on, and one of the edges corresponds to the distance between the fourth and fifth scan points];
determining a distance between the fifth scan point and the first scan point [Paragraph [0040] – “Regarding each Euclidean distance, a connection line between two vertexes corresponding the Euclidean distance may be considered as an edge, namely, the connection line between vertex a and vertex x, the connection line between vertex b and vertex x and the connection line between vertex c and vertex x are respectively considered as an edge, thereby obtaining a total of 3 edges. The connection line is usually a straight line.”; Paragraph [0045]-[0046] – “To this end, the present disclosure provides an improved algorithm, briefly called MstSegmentation algorithm. Specifically, in an initial state, each vertex in the set of vertex may be considered as a class; then, all edges in the set of edges are sorted in an ascending order of length, and said all edges are processed as follows in a sequential order after the sorting…” – sorting in ascending order of segment length insures that second scan point is nearest neighbor (immediately follows) to first, third scan point is nearest neighbor (immediately follows) to second, and so on, and one of the edges corresponds to the distance between the fifth and first scan points]; and
identifying the second scan point either as part of the first cluster or as part of a second cluster of the at least one cluster depending on the distance between the second scan point and the fourth scan point and depending on the distance between the fourth scan point and the fifth scan point and depending on the distance between the fifth scan point and the first scan point [Paragraph [0046] – “Specifically, in an initial state, each vertex in the set of vertex may be considered as a class…determining whether an edge satisfies an adding condition; if yes, connecting two vertexes corresponding to the edge (e.g., connecting via a straight line) for class clustering, namely, adding the edge in the diagram; clustering two classes into one class whenever one edge is added; as such, after processing of all edges in the set of edges is completed, a smallest generated tree may be obtained by clustering. Each tree is a class.” – the class of a vertex (scan point) is only reassigned if the edge (distance between two vertices, third and first, in this case) satisfies an adding condition, otherwise it retains its initial class; Paragraph [0054] – “It can be seen that the threshold changes constantly during the above processing procedure, namely, it is not fixed, but calculated according to local information of each class (a length of the longest edge and the number of vertexes), thereby exhibiting a better robustness than the fixed threshold.” – identifying the cluster is based on the threshold, which is calculated depending on all edge lengths assigned to a class].
It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention, to implement the sequence-based clustering algorithm disclosed by Chen on the object recognition method disclosed by Li, Sakai, and Chen in order to improve the assignment of individual scan points to clusters.
Regarding Claim 11, the combination of Li, Sakai, and Chen discloses the method as claimed in The method as claimed in wherein the second scan point is identified as part of the first cluster if the distance between the second scan point and the fourth scan point is less than or equal to a given maximum distance for next-but-one neighbors and the distance between the fourth scan point and the fifth scan point is less than or equal to a given maximum distance for nearest neighbors and the distance between the fifth scan point and the first scan point is less than or equal to a given maximum distance for next-but-three neighbors [Chen, Paragraph [0047] – “The manner of determining whether each edge satisfies the adding condition is: calculating a threshold of the class where two vertexes corresponding to the edge lies; determining that the edge satisfies the adding condition if the length of the edge is simultaneously smaller than two calculated thresholds, and if a ring does not app ear after two vertexes corresponding to the edge are connected.” – since threshold is based on class of each vertex and edges are processed in ascending order, edge lengths for nearest neighbor, then next-but-one neighbor, then next-but-two neighbor, and so on, are each being compared to the threshold for nearest neighbor, next-but-one neighbor, next-but-two neighbor, and so on; Paragraph [0054] – “It can be seen that the threshold changes constantly during the above processing procedure, namely, it is not fixed, but calculated according to local information of each class (a length of the longest edge and the number of vertexes), thereby exhibiting a better robustness than the fixed threshold.” – maximum distance is the threshold, which is calculated depending on all edge lengths assigned to a class].
Response to Arguments
Applicant argues:
PNG
media_image1.png
184
802
media_image1.png
Greyscale
Examiner’s Response:
Objection to the claim is hereby withdrawn.
Applicant argues:
PNG
media_image2.png
529
795
media_image2.png
Greyscale
Examiner’s response:
The Examiner agrees. The rejection of independent claims 1 and 14, as well as their dependent claims 2-11, 13, and 15 are hereby withdrawn. The added limitations in amended Claims 1 and 14, referred to as (i), (ii), and (iii) in the Applicant’s Response, amount to additional elements that, when viewed in combination, amount to a sequentially implemented point cloud clustering algorithm, wherein the threshold for the scanning radius is dependent on the proximity of the scan points to each other. This sequential implementation would reduce the computational requirements of the algorithm and amounts to an improvement to the technology.
PNG
media_image3.png
578
806
media_image3.png
Greyscale
Examiner’s Response:
The Examiner agrees. New grounds of rejection are presented above.
Applicant argues:
PNG
media_image4.png
495
805
media_image4.png
Greyscale
PNG
media_image5.png
71
792
media_image5.png
Greyscale
Examiner’s Response:
The Examiner agrees. New grounds of rejection are presented above.
Applicant argues:
PNG
media_image6.png
206
790
media_image6.png
Greyscale
Examiner’s Response:
The Examiner respectfully disagrees. Taking proximity into account when determining distance thresholds for scan point clustering is a known practice in the art. See the discussion of Sakai, above.
Pertinent Prior Art
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
US 10345437 B1, Detecting Distortion Using Other Sensors
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JANELLE A HOLMES whose telephone number is (571)272-4336. The examiner can normally be reached Monday - Friday 8:00 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, Arleen M Vazquez can be reached at (571) 272-2619. 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.A.H./Examiner, Art Unit 2857
/ARLEEN M VAZQUEZ/Supervisory Patent Examiner, Art Unit 2857