Prosecution Insights
Last updated: April 18, 2026
Application No. 18/783,935

RENDERED IMAGE DATA PROCESSING AND OPTICAL FLOW CALCULATION

Non-Final OA §103
Filed
Jul 25, 2024
Examiner
SHENG, XIN
Art Unit
2619
Tech Center
2600 — Communications
Assignee
Arm Limited
OA Round
1 (Non-Final)
72%
Grant Probability
Favorable
1-2
OA Rounds
2y 5m
To Grant
90%
With Interview

Examiner Intelligence

Grants 72% — above average
72%
Career Allow Rate
290 granted / 401 resolved
+10.3% vs TC avg
Strong +17% interview lift
Without
With
+17.3%
Interview Lift
resolved cases with interview
Typical timeline
2y 5m
Avg Prosecution
17 currently pending
Career history
418
Total Applications
across all art units

Statute-Specific Performance

§101
5.3%
-34.7% vs TC avg
§103
75.0%
+35.0% vs TC avg
§102
2.2%
-37.8% vs TC avg
§112
7.7%
-32.3% vs TC avg
Black line = Tech Center average estimate • Based on career data from 401 resolved cases

Office Action

§103
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 § 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 of this title, 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-2, 7, 10-11, 13, 16, 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Li et al (US20230030020). Regarding Claim 1. Li teaches A processing system configured to determine optical flow vector data for a rendered scene using template data and search data, the processing system comprising circuitry configured to cause the processing system to (Li, abstract, the invention teaches a video motion estimation method including obtaining a plurality of image frames in a video, and performing scenario classification processing on the plurality of image frames to obtain a plurality of image frame sets. The method further includes extracting a contour feature and a color feature of a foreground object of each image frame, and determining a search range corresponding to each image frame set. The method further includes determining a starting search point in each predicted frame. The method further includes, for each image frame set, performing motion estimation processing in a search region corresponding to the search range of each predicted frame set based on the starting search point of the respective predicted frame, a reference block in at least one reference frame of the respective image frame set, and the color feature of the foreground object, to obtain a motion vector corresponding to the reference block.): obtain motion vector data based on geometry data representing the rendered scene (Li, [0049], FIG. 3 is a schematic flowchart of an implementation of a video motion estimation method according to an embodiment of this disclosure. [0050] S101: Obtain a plurality of image frames in a to-be-processed video, and perform scenario classification processing on the plurality of image frames to obtain a plurality of image frame sets. [0054] S102: Extract a contour feature and a color feature of a foreground object of each image frame in each image frame set. [0055] The contour feature of the foreground object may be calculated and collected through an optical flow vector gradient of an optical flow field, and the color feature of the foreground object may be extracted according to an image region where the foreground object is located. [0059] The contour of the foreground object may be represented by a rectangle, a square, an irregular figure, or the like, and the contour feature of the foreground object may include the coordinates of a contour vertex.); obtain template data derived from a portion of a first frame of image data representing the rendered scene (Li, [0058] S103: Determine a search range corresponding to each image frame set based on the contour feature of the foreground object of each image frame set. For example, a search range corresponding to each image frame set is determined based on the contour feature of the foreground object of the image frames in each image frame set. Although Li didn’t explicitly teach “template data” from a first frame of image data, Li teaches a “search range” of an image frame based on the geometric data of the foreground objects. It is obvious to a person with ordinary skill in the art that the “search range” is similar to “template data”, since they both represents a block of image pixel data that changes between frames.); obtain search data derived from a portion of a second frame of image data representing the rendered scene (Li, [0060] S104: Determine a starting search point of each predicted frame in each image frame set. For example, each image frame set includes at least one predicted frame and at least one reference frame. [0061] In each image frame set, a plurality of image frames included in the image frame set may be sorted in sequence by the time thereof, the first image frame is used as a reference frame, and the other image frames are used as predicted frames [0062] S104 may be implemented by predicting the motion vector of the target block in each predicted frame through using median prediction, up-layer prediction, and origin point prediction of a spatial domain successively based on a correlation of a video sequence frame in the spatial domain and a temporal domain, so as to determine a location of the starting search point of each predicted frame. [0063] S105: Perform motion estimation processing in a search region corresponding to the search range of each predicted frame based on the starting search point of each predicted frame, a target block in a reference frame and the color feature of the foreground object, to obtain a motion vector corresponding to the target block.); perform a block matching procedure, using the template data, the motion vector data, and a set of offset positions to be applied to the search data, to identify a portion of the search data (Li, [0062] S104 may be implemented by predicting the motion vector of the target block in each predicted frame through using median prediction, up-layer prediction, and origin point prediction of a spatial domain successively based on a correlation of a video sequence frame in the spatial domain and a temporal domain, so as to determine a location of the starting search point of each predicted frame. [0064] Based on a reference target block (a target block in the reference frame) in the reference frame, during searching for a target block matching the reference target block from each predicted frame, bidirectional motion estimation calculation may be performed by using each starting search point in each predicted frame as a center with the search region corresponding to the search range and the color feature of the foreground object as restriction.); and determine optical flow vector data comprising an optical flow vector corresponding to the template data representing a spatial offset between the template data and the identified portion of search data (Li, [0065] … The contour feature and color feature of the foreground object of each image frame in each image frame set are extracted, the search range corresponding to each image frame set is determined based on the contour feature of the foreground object in each image frame set, and then each starting search point corresponding to each predicted frame in each image frame set is determined, so that the motion estimation is performed in the search region corresponding to the search range of each predicted frame based on each starting search point, the target block in the reference frame and the color feature of the foreground object. The motion vector corresponding to the target block is obtained, and the searching is performed in a certain range in the embodiment of this disclosure. The searching is performed in a certain range in the embodiment of this disclosure, so that the search range is narrowed down so as to reduce search time, and the search range is limited based on the contour feature of the foreground object in each scenario, thereby improving accuracy of the motion estimation. [0068] In some embodiments, an optical flow field method may be used to detect the foreground object. During an implementation, related foreground object can be better detected from the image frames by using a gray scale preservation principle of corresponding pixels in two adjacent frames to evaluate the change of a two-dimensional image. The optical flow field method is applicable to detection of a moving foreground object during movement of a camera. [0077] In the foregoing embodiment, the contour feature and color feature of the foreground object of each image frame in each image frame set can be extracted, so as to provide a data basis for setting the search range and setting a restriction of the motion estimation during block matching with the reference target block (reference block) in the predicted frame. [0155] Considering that an image segmentation method based on video object segmentation is easily affected by complex environment, lens movement, illumination instability, and the like, in this embodiment of this disclosure, a global optical flow (such as a Hom-Schunck optical flow) and the image segmentation are combined to process the foreground of the video. Step S602 may be implemented by calculating and collecting the motion contour feature of the foreground object through an optical flow vector gradient of an optical flow field. [0163]… During an actual implementation, the current motion vector may be predicted through using median prediction, uplayer prediction, and origin point prediction of the spatial domain successively based on a correlation of a video sequence frame in the spatial domain and the temporal domain, so as to determine a location of an optimal starting search point.). Regarding Claim 2. Li further teaches The processing system of claim 1, wherein performing the block matching procedure comprises: modifying the search data according to the motion vector data (Li, [0114] In the above steps S1051 to S1058, after each search template is determined, the search template is used to search for the predicted target block that matches the reference target block in the reference frame in the search region of the predicted frame with the starting search point as the center. [0115] In an actual implementation process, as shown in FIG. 4C, step S1052 may be implemented by the following steps: [0118] S10522: Determine a matching sequence of the plurality of first candidate blocks based on the predicted motion vector;); determining search window data by, for each offset position, selecting a corresponding portion of the modified search data (Li, [0119] Step S1052 may be implemented by determining the matching sequence of the plurality of candidate blocks based on the region in which the predicted motion vector falls, or determining the matching sequence of the plurality of candidate blocks according to a distance between the predicted motion vector and each candidate block. In the above example, for example, the predicted motion vector is in a horizontal left direction, then the 6 candidate blocks on the left side of the starting search point may be preferentially matched.); determining, for each offset position, a measure of similarity between the template data and a corresponding portion of the search window data (Li, [0120] S10523: Perform matching processing between each first candidate block and the reference target block based on the matching sequence, and determine whether there is a first candidate target block that matches the reference target block in the plurality of first candidate blocks.); and selecting an offset position based on the measures of similarity, wherein the identified portion of search data comprises search data corresponding to the selected offset position (Li, [0124] S10525: Determine the second search template corresponding to each predicted frame based on the second motion direction. [0125] The second motion direction is different from the first motion direction. If the first search template determined based on the first motion direction does not match the predicted target block, the prediction of the first motion direction is wrong. In this case, the second search template may be determined according to the second motion direction, and the searching of predicted target block is performed again.). Regarding Claim 7. Li further teaches The processing system of claim 1, wherein performing the block matching procedure comprises: determining search window data by: for each offset position, selecting a corresponding portion of the search data (Li, [0119] Step S1052 may be implemented by determining the matching sequence of the plurality of candidate blocks based on the region in which the predicted motion vector falls, or determining the matching sequence of the plurality of candidate blocks according to a distance between the predicted motion vector and each candidate block. In the above example, for example, the predicted motion vector is in a horizontal left direction, then the 6 candidate blocks on the left side of the starting search point may be preferentially matched.); and selecting a further portion of search data using the motion vector data (Li, [0124] S10525: Determine the second search template corresponding to each predicted frame based on the second motion direction. [0125] The second motion direction is different from the first motion direction. If the first search template determined based on the first motion direction does not match the predicted target block, the prediction of the first motion direction is wrong. In this case, the second search template may be determined according to the second motion direction, and the searching of predicted target block is performed again.); determining a set of similarity measures indicative of a difference between the template data and a respective portion of the search window data, the set of similarity measures comprising (Li, [0120] S10523: Perform matching processing between each first candidate block and the reference target block based on the matching sequence, and determine whether there is a first candidate target block that matches the reference target block in the plurality of first candidate blocks.): a first subset of similarity measures indicative of a difference between the template data and a corresponding portion of the search data for each of the offset positions (Li, [0120] S10523: Perform matching processing between each first candidate block and the reference target block based on the matching sequence, and determine whether there is a first candidate target block that matches the reference target block in the plurality of first candidate blocks.); and a second subset of similarity measures indicative of a difference between the template data and the further portion of the search data selected using the motion vector data (Li, [0121] When there is a first candidate target block that matches the reference target block in the plurality of first candidate blocks, the process goes to step S10524; and when there is no candidate target block matching the reference target block among the plurality of first candidate blocks, the process goes to step S10525. [0124] S10525: Determine the second search template corresponding to each predicted frame based on the second motion direction.); identifying the portion of search data by selecting either an offset position or the motion vector data based on the set of similarity measures (Li, [0119] Step S1052 may be implemented by determining the matching sequence of the plurality of candidate blocks based on the region in which the predicted motion vector falls, or determining the matching sequence of the plurality of candidate blocks according to a distance between the predicted motion vector and each candidate block. In the above example, for example, the predicted motion vector is in a horizontal left direction, then the 6 candidate blocks on the left side of the starting search point may be preferentially matched.). Regarding Claim 10. Li further teaches The processing system of claim 1, wherein the processing system comprises a rendering engine, an execution engine, and a motion engine, wherein the obtaining the motion vector data comprises using the rendering engine to generate the motion vector data based on the geometry data, wherein the execution engine is configured to obtain the template data and obtain the search data, wherein performing the block matching procedure (Li, abstract, the invention teaches a video motion estimation method including obtaining a plurality of image frames in a video, and performing scenario classification processing on the plurality of image frames to obtain a plurality of image frame sets. The method further includes extracting a contour feature and a color feature of a foreground object of each image frame, and determining a search range corresponding to each image frame set. The method further includes determining a starting search point in each predicted frame. The method further includes, for each image frame set, performing motion estimation processing in a search region corresponding to the search range of each predicted frame set based on the starting search point of the respective predicted frame, a reference block in at least one reference frame of the respective image frame set, and the color feature of the foreground object, to obtain a motion vector corresponding to the reference block. [0036] FIG. 2 is a schematic structural diagram of a video motion estimation device, such as the terminal 400 shown in FIG. 1, according to an embodiment of this disclosure. A terminal 400 shown in FIG. 2 includes: at least one processor 410 (including processing circuitry). [0046] In some embodiments, the apparatus provided in the embodiments of this disclosure may be implemented in the form of software. FIG. 2 shows a video motion estimation apparatus 455 that is stored in the memory 450, which may be software in the form of a program, a plug-in, or the like, and include the following software modules: a first obtaining module 4551, a feature extraction module 4552, a first determining module 4553, a second determining module 4554 and a motion estimation module 4555. These modules are logical modules, and may be randomly combined or further divided based on a function to be performed. Although Li didn’t explicitly teach “template data” from a first frame of image data, Li teaches a “search range” of an image frame based on the geometric data of the foreground objects. It is obvious to a person with ordinary skill in the art that the “search range” is similar to “template data”, since they both represents a block of image pixel data that changes between frames.) comprises: using the execution engine to: determine the set of offset positions using the motion vector data (Li, [0026] In an inter frame prediction encoding method of video compression, there is a certain correlation between video contents in consecutive frames temporally, so that the video motion estimation method in the related art is to divide each image frame of a video sequence into a plurality of non-overlapping blocks or macroblocks of the same size first, and assume that displacement amounts of all pixels in a macroblock are the same, and then find out a most similar target matching block in an adjacent reference frame for each block or macroblock according to a certain matching solution, and finally calculate a relative offset of spatial locations between the macroblock and the target matching block, that is the motion vector. A process of obtaining the motion vector is the motion estimation.); and determine search window data representing the set of offset positions applied to the search data by, for each offset position, selecting a corresponding portion of the search data (Li, [0062] S104 may be implemented by predicting the motion vector of the target block in each predicted frame through using median prediction, up-layer prediction, and origin point prediction of a spatial domain successively based on a correlation of a video sequence frame in the spatial domain and a temporal domain, so as to determine a location of the starting search point of each predicted frame. [0064] Based on a reference target block (a target block in the reference frame) in the reference frame, during searching for a target block matching the reference target block from each predicted frame, bidirectional motion estimation calculation may be performed by using each starting search point in each predicted frame as a center with the search region corresponding to the search range and the color feature of the foreground object as restriction.); and using the motion engine to determine, for each offset position, a measure of similarity between the template data and the corresponding portion of the search data (Li, [0120] S10523: Perform matching processing between each first candidate block and the reference target block based on the matching sequence, and determine whether there is a first candidate target block that matches the reference target block in the plurality of first candidate blocks.), and wherein determining the optical flow vector data comprises using the motion engine to select an offset position of the set of offset positions based on the measures of similarity between the template data and the corresponding portions of the search data (Li, [0124] S10525: Determine the second search template corresponding to each predicted frame based on the second motion direction. [0125] The second motion direction is different from the first motion direction. If the first search template determined based on the first motion direction does not match the predicted target block, the prediction of the first motion direction is wrong. In this case, the second search template may be determined according to the second motion direction, and the searching of predicted target block is performed again.). Regarding Claim 11. Li further teaches The processing system according to claim 10, wherein determining the set of offset positions comprises modifying the search data based on the motion vector data (Li, [0114] In the above steps S1051 to S1058, after each search template is determined, the search template is used to search for the predicted target block that matches the reference target block in the reference frame in the search region of the predicted frame with the starting search point as the center. [0115] In an actual implementation process, as shown in FIG. 4C, step S1052 may be implemented by the following steps: [0118] S10522: Determine a matching sequence of the plurality of first candidate blocks based on the predicted motion vector;). Regarding Claim 13. Li further teaches The processing system according to claim 10, wherein determining optical flow vector data comprising an optical flow vector corresponding to the template data comprises generating a vector indicating a spatial displacement between the template data and the selected offset position (Li, [0026] In an inter frame prediction encoding method of video compression, there is a certain correlation between video contents in consecutive frames temporally, so that the video motion estimation method in the related art is to divide each image frame of a video sequence into a plurality of non-overlapping blocks or macroblocks of the same size first, and assume that displacement amounts of all pixels in a macroblock are the same, and then find out a most similar target matching block in an adjacent reference frame for each block or macroblock according to a certain matching solution, and finally calculate a relative offset of spatial locations between the macroblock and the target matching block, that is the motion vector. A process of obtaining the motion vector is the motion estimation.). Regarding Claim 16. Li further teaches The processing system of claim 1, wherein the processing system comprises, a rendering engine, an execution engine, and a motion engine, wherein obtaining the motion vector data comprises using the rendering engine to generate the motion vector data based on the geometry data, wherein the execution engine is configured to obtain the template data and obtain the search data (Li, [0036] FIG. 2 is a schematic structural diagram of a video motion estimation device, such as the terminal 400 shown in FIG. 1, according to an embodiment of this disclosure. A terminal 400 shown in FIG. 2 includes: at least one processor 410 (including processing circuitry). [0046] In some embodiments, the apparatus provided in the embodiments of this disclosure may be implemented in the form of software. FIG. 2 shows a video motion estimation apparatus 455 that is stored in the memory 450, which may be software in the form of a program, a plug-in, or the like, and include the following software modules: a first obtaining module 4551, a feature extraction module 4552, a first determining module 4553, a second determining module 4554 and a motion estimation module 4555. These modules are logical modules, and may be randomly combined or further divided based on a function to be performed.), wherein performing the block matching procedure comprises: using the execution engine to determine search window data by: for each offset position, selecting a corresponding portion of the search data (Li, [0062] S104 may be implemented by predicting the motion vector of the target block in each predicted frame through using median prediction, up-layer prediction, and origin point prediction of a spatial domain successively based on a correlation of a video sequence frame in the spatial domain and a temporal domain, so as to determine a location of the starting search point of each predicted frame. [0064] Based on a reference target block (a target block in the reference frame) in the reference frame, during searching for a target block matching the reference target block from each predicted frame, bidirectional motion estimation calculation may be performed by using each starting search point in each predicted frame as a center with the search region corresponding to the search range and the color feature of the foreground object as restriction.); and selecting a further portion of search data based on the motion vector data (Li, [0124] S10525: Determine the second search template corresponding to each predicted frame based on the second motion direction. [0125] The second motion direction is different from the first motion direction. If the first search template determined based on the first motion direction does not match the predicted target block, the prediction of the first motion direction is wrong. In this case, the second search template may be determined according to the second motion direction, and the searching of predicted target block is performed again.); and using the motion engine to: determine, for each offset position, a measure of similarity between the template data and the corresponding portion of the search data (Li, [0120] S10523: Perform matching processing between each first candidate block and the reference target block based on the matching sequence, and determine whether there is a first candidate target block that matches the reference target block in the plurality of first candidate blocks.); and determine a measure of similarity between the template data and the further portion of search data (Li, [0121] When there is a first candidate target block that matches the reference target block in the plurality of first candidate blocks, the process goes to step S10524; and when there is no candidate target block matching the reference target block among the plurality of first candidate blocks, the process goes to step S10525. [0124] S10525: Determine the second search template corresponding to each predicted frame based on the second motion direction.), wherein determining the optical flow vector data comprises using the motion engine to select either: an offset position of the set of offset positions; or the motion vector data, wherein the selecting is dependent on the measures of similarity (Li, [0119] Step S1052 may be implemented by determining the matching sequence of the plurality of candidate blocks based on the region in which the predicted motion vector falls, or determining the matching sequence of the plurality of candidate blocks according to a distance between the predicted motion vector and each candidate block. In the above example, for example, the predicted motion vector is in a horizontal left direction, then the 6 candidate blocks on the left side of the starting search point may be preferentially matched.). Claim 19 is similar in scope as Claim 1, and thus is rejected under same rationale. Claim 20 is similar in scope as Claim 1, and thus is rejected under same rationale. Claim 3 is rejected under 35 U.S.C. 103 as being unpatentable over Li et al (US20230030020) in view of Liu et al (US12120340). Regarding Claim 3. Li fails to explicitly teach, however, Liu teaches The processing system of claim 2, wherein modifying the search data comprises warping the search data based on the motion vector data (Liu, abstract, the invention describes constraints for usage of updated motion information. A method for video processing is provided, including: determining original motion information associated with a current block; generating updated motion information based on specific prediction mode; and performing, based on the updated motion information, a conversion between the current block and a bitstream representation of a video data including the current block, wherein the specific prediction mode includes one or more of bi-directional optical flow (BIO) refinement, a decoder-side motion vector refinement (DMVR), framerate up conversion (FRUC) techniques or a template matching technique. Col 22, line 25-38, In a bi-prediction operation, for the prediction of one block region, two prediction blocks, formed using a motion vector (MV) of list0 and a MV of list1, respectively, are combined to form a single prediction signal. In the decoder side motion vector refinement (DMVR) method, the two motion vectors of the bi-prediction are further refined by a bilateral template matching process. The bilateral template matching applied in the decoder to perform a distortion based search between a bilateral template and the reconstruction samples in the reference pictures in order to obtain a refined MV without transmission of additional motion information.). Li and Liu are analogous art because they both teach motion vector prediction method. Liu further teaches bilateral template matching by performing a distortion based search between two frame data. Therefore, it would have been obvious to a person with ordinary skill in the art before the effective filing date of the claimed invention, to modify the motion vector prediction method (taught in Li), to further use the distortion based search between two reference frames (taught in Liu), so as to refine motion vector data without transmission of additional motion information which reduce the video processing bandwidth (Liu, col 22, line 25-38). Allowable Subject Matter Claims 4-6, 8-9, 12, 14-15, 17-18 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims. Regarding Claim 4, it recites “The processing system of claim 1, wherein performing the block matching procedure comprises: modifying the set of offset positions according to the motion vector data; determining search window data by, for each offset position in the set of modified offset positions, selecting a corresponding portion of the search data; determining, for each offset position, a measure of similarity between the template data and a corresponding portion of the search window data; and selecting an offset position based on the measures of similarity, wherein the identified portion of search data comprises search data corresponding to the selected offset position.” in the context of Claim 4. The prior arts of record either alone or in combination fails to teach or suggest the above quoted limitation of Claim 4. Therefore, Claim 4 is allowable over prior art. Claims 5-6 depend from Claim 4 with respective additional limitations. Therefore, Claims 5-6 are allowable over prior art. Regarding Claim 8, it recites “The processing system according to claim 1, wherein the geometry data representing the rendered scene comprises: depth data representing a relative depth of vertices in the rendered scene; and camera model data, wherein the camera model data comprises any of: a model matrix; a view matrix; or a projection matrix” in the context of Claim 8. The prior arts of record either alone or in combination fails to teach or suggest the above quoted limitation of Claim 8. Therefore, Claim 8 is allowable over prior art. Claim 9 depends from Claim 8 with respective additional limitations. Therefore, Claim 9 is allowable over prior art. Regarding Claim 12, it recites “The processing system according to claim 10, wherein determining the set of offset positions comprises: identifying an initial set of offset positions; and modifying the initial set of offset positions using the motion vector data to obtain the set of offset positions” in the context of Claim 12. The prior arts of record either alone or in combination fails to teach or suggest the above quoted limitation of Claim 12. Therefore, Claim 12 is allowable over prior art. Regarding Claim 14, it recites “The processing system of claim 10, wherein determining, for each offset position, a measure of similarity between the template data and the corresponding portion of the search data comprises: determining a tensor having a plurality of channels by, for each of the plurality of channels, determining difference values between the template data and a portion of search window data corresponding to an offset position of the set of offset positions, and writing the difference values to a channel of the tensor; and perform a convolutional operation on the tensor to obtain, for each channel of the tensor, a respective measure of similarity between the template data and the corresponding portion of the search data” in the context of Claim 14. The prior arts of record either alone or in combination fails to teach or suggest the above quoted limitation of Claim 14. Therefore, Claim 14 is allowable over prior art. Claim 15 depends from Claim 14 with respective additional limitations. Therefore, Claim 15 is allowable over prior art. Regarding Claim 17, it recites “The processing system of claim 16, wherein determining, for each offset position, a measure of similarity between the template data and the corresponding portion of the search data comprises: determining a first tensor having a plurality of channels by, for each of the plurality of channels, determining difference values between the template data and a portion of search window data corresponding to an offset position of the set of offset positions, and writing the difference values to a channel of the first tensor; and perform a convolutional operation on the first tensor to obtain, for each channel of the tensor, a respective measure of similarity between the template data and the corresponding portion of search data, wherein selecting either an offset position of the set of offset positions or the motion vector data comprises comparing the measures of similarity” in the context of Claim 17. The prior arts of record either alone or in combination fails to teach or suggest the above quoted limitation of Claim 17. Therefore, Claim 17 is allowable over prior art. Regarding Claim 18, it recites “The processing system according to claim 16, wherein determining a measure of similarity between the template data and the further portion of the search data comprises: determining a second tensor having at least one channel by determining difference values between the template data and the further portion of search data, and writing the difference values to a channel in the second tensor; and perform a convolutional operation on the second tensor to obtain a measure of similarity between the template data and the further portion of search data” in the context of Claim 18. The prior arts of record either alone or in combination fails to teach or suggest the above quoted limitation of Claim 18. Therefore, Claim 18 is allowable over prior art. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to XIN SHENG whose telephone number is (571)272-5734. The examiner can normally be reached M-F 9:30AM-3:30PM 6:00PM-8:30PM. 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, Jason Chan can be reached at 5712723022. 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. /Xin Sheng/Primary Examiner, Art Unit 2619
Read full office action

Prosecution Timeline

Jul 25, 2024
Application Filed
Apr 02, 2026
Non-Final Rejection — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12603971
PROVIDING AWARENESS OF WHO CAN HEAR AUDIO IN A VIRTUAL CONFERENCE, AND APPLICATIONS THEREOF
2y 5m to grant Granted Apr 14, 2026
Patent 12602861
IMAGE PROCESSING METHOD, IMAGE PROCESSING DEVICE AND COMPUTER READABLE STORAGE MEDIUM
2y 5m to grant Granted Apr 14, 2026
Patent 12592030
INTERACTIVE THREE-DIMENSION AWARE TEXT-TO-IMAGE GENERATION
2y 5m to grant Granted Mar 31, 2026
Patent 12579920
ADAPTING A USER INTERFACE RESPONSIVE TO SCREEN SIZE ADJUSTMENT
2y 5m to grant Granted Mar 17, 2026
Patent 12555343
3D MODEL GENERATION USING MULTIMODAL GENERATIVE AI
2y 5m to grant Granted Feb 17, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
72%
Grant Probability
90%
With Interview (+17.3%)
2y 5m
Median Time to Grant
Low
PTA Risk
Based on 401 resolved cases by this examiner. Grant probability derived from career allow 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