Prosecution Insights
Last updated: August 17, 2026
Application No. 18/991,302

MULTI-LAYER SPARSE CONTENT HANDLING FOR SPLIT AR/MR

Non-Final OA §102§103§112
Filed
Dec 20, 2024
Examiner
VELAZQUEZ VALENCI, AMELIA NMN
Art Unit
2612
Tech Center
2600 — Communications
Assignee
Qualcomm Incorporated
OA Round
1 (Non-Final)
0%
Grant Probability
At Risk
1-2
OA Rounds
5m
Est. Remaining
0%
With Interview

Examiner Intelligence

Grants only 0% of cases
0%
Career Allowance Rate
0 granted / 1 resolved
-62.0% vs TC avg
Minimal +0% lift
Without
With
+0.0%
Interview Lift
resolved cases with interview
Fast prosecutor
2y 1m
Avg Prosecution
15 currently pending
Career history
13
Total Applications
across all art units

Statute-Specific Performance

§101
12.2%
-27.8% vs TC avg
§103
55.1%
+15.1% vs TC avg
§102
18.4%
-21.6% vs TC avg
§112
14.3%
-25.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 1 resolved cases

Office Action

§102 §103 §112
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 . 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. Information Disclosure Statement The IDS dated 04/30/2026 has been considered and placed in the application file. 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. Claims 9, 14, 16, and 18-19 are 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 9 recites, “wherein to generate the atlas, the processor is configured to perform at least one of: generate an alpha atlas based on alpha channel values associated with the atlas; or stitch the atlas together with the alpha atlas; wherein to encode the atlas in the first encoding session, the processor is configured to: encode the atlas in the first encoding session with the alpha atlas, or to encode the atlas in the first encoding session and encode the alpha atlas in a second encoding session”. Here it is unclear to which of the three limitations the preamble refers to when it states “at least one of”. There is also no mention of an “alpha atlas” in claim 1 so, it is unclear whether to separate the third limitation from the first limitation. Therefore, the scope of the claim is indefinite. Claim 14 recites, “wherein at least one of: each bounding box comprises minimum dimensions by which a corresponding virtual object is respectively bounded, or each bounding box comprises dimensions of a minimum value by which the corresponding virtual object is respectively bounded plus an increased margin value; wherein the merger of the set of sparse layers that includes the sparse content is based on a smallest overall area for an arrangement of the set of bounding boxes; or wherein, for a subset of the set of sparse layers, the set of bounding boxes comprises an outer bounding box that bounds two or more virtual objects in the set of virtual objects, wherein the outer bounding box is based on a set of overlapping bounding boxes respectively associated with the two or more virtual objects in a sparse layer of the subset”. Here it is unclear to which of the limitations the preamble refers to when it states “at least one of”. Therefore, the scope of the claim is indefinite. Claim 16 recites, “wherein the encoded atlas comprises an encoded set of metadata, wherein the encoded set of metadata includes at least one of: an indication of a number of the set of sparse layers; sparse layer information comprising at least one of a first position, an orientation, an order of composition, or a set of plane parameters for warping for each of the set of sparse layers; a margin added to bounding boxes; a number of bounding boxes that respectively surround virtual objects represented by the encoded atlas; or bounding box information comprising at least one of a corresponding sparse layer index, a corresponding input layer index, an original position associated with an input layer, or a second position in the encoded atlas; wherein the processor is further configured to: decode the encoded set of metadata in a different decoding session than the first decoding session to obtain a decoded of metadata; wherein to output the set of sparse layers, the processor is configured to output the decoded set of metadata”. Here it is unclear to which of the limitations the preamble refers to when it states “at least one of”. Therefore, the scope of the claim is indefinite. Claim 18 recites, “wherein to output the set of sparse layers as the representation of the image content, the processor is configured to perform at least one of: compose the set of sparse layers, by a pixel shader of a compositor, individually or as a group to generate a composed layer; provide, for a display panel, the composed layer; or store, in the memory, the composed layer”. Here it is unclear to which of the limitations the preamble refers to when it states “at least one of”. This is because the first limitation mentions “a composed layer” then is separated by an “or” after the second limitation but the third limitation mentions “the composed layer” suggesting that it should be grouped with the first limitation and not separated. However, this is still unclear and therefore the scope of the claim is indefinite. Claim 19 is rejected by virtue of dependency. Claim Rejections - 35 USC § 102 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 the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention. Claims 1-4, 7, 10-14, 16, and 20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by US Patent Application Publication US 20210358219 A1, (Melkote Krishnaprasad et al.) (hereinafter “Melkote”). Regarding claim 1, Melkote teaches an apparatus for display processing, comprising: (Melkote “[0007] In an aspect of the disclosure, a method, a computer - readable medium, and an apparatus are provided. The apparatus may be a client device, a central processing unit (CPU), a graphics processing unit (GPU) , or any apparatus that can perform graphics or computer processing . The apparatus can generate the rendered content in the frame…”) a memory; and a processor coupled to the memory and, based on information stored in the memory, the processor is configured to: (Melkote “[0027] …The device 104 may include one or more components configured to perform one or more techniques of this disclosure . In the example shown , the device 104 may include a processing unit 120 , a content encoder / decoder 122 , and a system memory 124. In some aspects, the device 104 can include a number of optional components , e.g. , a communication interface 126 , a transceiver 132 , a receiver 128 , a transmitter 130 , a display processor 127 , and one or more displays 131…”) generate an atlas of a set of sparse layers based on a merger of each of the set of sparse layers that include sparse content, wherein the set of sparse layers is associated with image content; (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame. As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”) encode the atlas in a first encoding session; and output the encoded atlas as an encoded representation of the image content (Melkote “[0052] …the server 310 includes an encoder 316 that is generate configured to encode media content before transmitting the encoded content to the client device 330. In one aspect, the encoder 316 can be an H.264 or HEVC encoder for example . Thus , in the exemplary aspect , the encoder 316 receives the compact atlas 320 that is generated by the atlas manager 314 and encodes and streams ( e.g. , as bit stream 324 ) this encoded content to the client 330. In general, it is noted that encoder 316 can be implemented as content encoder / decoder 122…the bit stream 324 can be transmitted to the client device 330 using communication interface 126…”) Regarding claim 2, Melkote teaches wherein to generate the atlas, the processor is configured to: (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0027] …The device 104 may include one or more components configured to perform one or more techniques of this disclosure . In the example shown , the device 104 may include a processing unit 120 , a content encoder / decoder 122 , and a system memory 124. In some aspects, the device 104 can include a number of optional components , e.g. , a communication interface 126 , a transceiver 132 , a receiver 128 , a transmitter 130 , a display processor 127 , and one or more displays 131…”) bound, for each virtual object in each sparse layer of the set of sparse layers, a virtual object with a bounding box, of a set of bounding boxes, that surrounds the virtual object; (Melkote “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”; “[0064] …the bounding boxes 540 are fed to bounding box mapper 514 and APR plane parameter compute engine 516. The bounding box mapper 514 is configured to generate patch information 322A as described above, which provides information regarding the location and / or size of the rendered content bound in each box…”) wherein the atlas comprises the set of bounding boxes and associated virtual objects (Melkote “[0062] …the rendered eye-buffer 504 is fed to bounding box extractor 512 that may be configured to analyze eye-buffer 504 to produce bounding boxes that contain the rendered virtual content in the scene. This can be based on connected component analysis to determine closed contours in the eye - buffer 504 that fully contain a rendered object. Each bounding box 540 can generally be considered a bounding perimeter for each patch of active content in the rendered AR content…”; “[0063] …both unity and unreal may provide application program interfaces ( APIs ) to query bounding boxes for actors in the scene. Thus, such closed contours can be determined by merging bounding boxes with object overlaps. The produced bounding boxes 540 may be mapped to patches on the real estate of the atlas 320 such that a tight packing into the atlas real estate may be achieved . This may include scaling the content within the bounding boxes to achieve efficient packing…”) Regarding claim 3, Melkote teaches wherein each bounding box comprises minimum dimensions by which a corresponding virtual object is respectively bounded; (Melkote “[0062] …the rendered eye-buffer 504 is fed to bounding box extractor 512 that may be configured to analyze eye-buffer 504 to produce bounding boxes that contain the rendered virtual content in the scene. This can be based on connected component analysis to determine closed contours in the eye - buffer 504 that fully contain a rendered object. Each bounding box 540 can generally be considered a bounding perimeter for each patch of active content in the rendered AR content…”; “[0063] …both unity and unreal may provide application program interfaces ( APIs ) to query bounding boxes for actors in the scene. Thus, such closed contours can be determined by merging bounding boxes with object overlaps. The produced bounding boxes 540 may be mapped to patches on the real estate of the atlas 320 such that a tight packing into the atlas real estate may be achieved . This may include scaling the content within the bounding boxes to achieve efficient packing…”; “[0080] At 808, the apparatus may determine a size of each of the one or more bounding boxes based on the calculated amount of user motion . In some aspects , the size of each of the one or more patches may correspond to a size of each of the one or more bounding boxes 540. Also, the size of each of the one or more patches may be determined based on a target bit - rate in one aspect.”) wherein to generate the atlas, the processor is configured to: (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0027] …The device 104 may include one or more components configured to perform one or more techniques of this disclosure . In the example shown , the device 104 may include a processing unit 120 , a content encoder / decoder 122 , and a system memory 124. In some aspects, the device 104 can include a number of optional components , e.g. , a communication interface 126 , a transceiver 132 , a receiver 128 , a transmitter 130 , a display processor 127 , and one or more displays 131…”) increase, for each virtual object in each sparse layer of the set of sparse layers, the minimum dimensions for a corresponding bounding box, to adjusted minimum dimensions, by a margin value (Melkote “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”; “[0064] …the bounding boxes 540 are fed to bounding box mapper 514 and APR plane parameter compute engine 516. The bounding box mapper 514 is configured to generate patch information 322A as described above, which provides information regarding the location and / or size of the rendered content bound in each box. The patch information 322A is provided to client device 330 as metadata as described above. Moreover, the atlas generator 518 is configured to generate the compact atlas 320 as described above using both the bounding boxes 540 and the patch information 322A based on the received eye - buffer 504. Yet further , the APR plane parameter compute engine 516 is configured to determine the warp metadata 322B ( e.g. , head pose , depth of each active part , and / or three dimensional locations of the active portion ) of the rendered AR content in each frame based on the depth - buffer 506 and for each bounding box 540…”; “[0069] …Aspects of the present disclosure can assign a global scaling factor a and for each bounding box k and a per - layer scale factor Sko The per - box scale factor may depend on the distance of the content in the box from the user location, perceptual importance , or location in the eye - buffer 318 , where it may be relative to the fovea , or content complexity . Given the variance ox of a layer, the present disclosure can assume a rate per layer of R = B log ( 0,2 / D ) , where ß is a tunable constant . Aspects of the present disclosure can also solve for q , such that pla’s ? h_w_Rx ) sRfarger , so that D is minimal…”) Regarding claim 4, Melkote teaches wherein the merger of the set of sparse layers that includes the sparse content is based on a smallest overall area for an arrangement of the set of bounding boxes (Melkote “[0062] …the rendered eye-buffer 504 is fed to bounding box extractor 512 that may be configured to analyze eye-buffer 504 to produce bounding boxes that contain the rendered virtual content in the scene. This can be based on connected component analysis to determine closed contours in the eye - buffer 504 that fully contain a rendered object. Each bounding box 540 can generally be considered a bounding perimeter for each patch of active content in the rendered AR content…”; “[0063] …both unity and unreal may provide application program interfaces ( APIs ) to query bounding boxes for actors in the scene. Thus, such closed contours can be determined by merging bounding boxes with object overlaps. The produced bounding boxes 540 may be mapped to patches on the real estate of the atlas 320 such that a tight packing into the atlas real estate may be achieved . This may include scaling the content within the bounding boxes to achieve efficient packing…”; “[0080] At 808, the apparatus may determine a size of each of the one or more bounding boxes based on the calculated amount of user motion . In some aspects , the size of each of the one or more patches may correspond to a size of each of the one or more bounding boxes 540. Also, the size of each of the one or more patches may be determined based on a target bit - rate in one aspect.”; “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”; “[0058] …As part of the time - warp process, the appropriate portions of the atlas 320 may be warped differently and placed into the correct area of the display…”) Regarding claim 7, Melkote teaches wherein the atlas comprises a set of metadata, wherein the set of metadata includes at least one of: (Melkote “[0053] …the atlas manager 314 is further configured to generate metadata 322 that that informs the client 330 of the mapping of locations between the rendered eye - buffer 318 and the atlas 320 having the same content, which can include patch information, for example, of the sparse AR content. In other words, the metadata 322 will include patch information 322A that can be processed by the client device 330 to determine the respective positions of each active portion of the eye - buffer 318 used to generate atlas 320. Additional metadata can include warping meta data 322B , such as a head pose , depth of each active part , or three dimensional locations of the active portion , may also be sent as part of the stream . In general, the metadata 322 can be transmitted with the bit stream 324 of the encoded atlas 320 or as a separate stream to client 330.”) an indication of a number of the set of sparse layers; (Melkote “[0026] …A display processing unit may read the graphical content , such as one or more frames from the buffer , and perform one or more display processing techniques thereon to generate display content . For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame As another example , a display processing unit may be configured to compose , blend , or otherwise combine two or more layers together into a single frame . A display processing unit may be configured to perform scaling , e.g. , upscaling or downscaling , on a frame . In some examples , a frame may refer to a layer . In other examples , a frame may refer to two or more layers that have already been blended together to form the frame , i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”) sparse layer information comprising at least one of a first position, an orientation, an order of composition, or a set of plane parameters for warping for each of the set of sparse layers; (Melkote “[0007] …The apparatus can also determine the location of each of the one or more patches for the sparse AR content in the received atlas based on patch metadata received from a server that generates the atlas. The apparatus can also receive warping metadata associated with the one or more patches in the atlas and to render the AR content based on the warping metadata…”; “[0064] …the APR plane parameter compute engine 516 is configured to determine the warp metadata 322B ( e.g. , head pose , depth of each active part , and / or three dimensional locations of the active portion ) of the rendered AR content in each frame based on the depth - buffer 506 and for each bounding box 540. The APR plane parameter compute engine 516 then outputs this information as warp metadata 322B , which is transmitted to client device 330…”) a margin added to bounding boxes; (Melkote “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0064] …the bounding boxes 540 are fed to bounding box mapper 514 and APR plane parameter compute engine 516. The bounding box mapper 514 is configured to generate patch information 322A as described above, which provides information regarding the location and / or size of the rendered content bound in each box. The patch information 322A is provided to client device 330 as metadata as described above. Moreover, the atlas generator 518 is configured to generate the compact atlas 320 as described above using both the bounding boxes 540 and the patch information 322A based on the received eye - buffer 504. Yet further , the APR plane parameter compute engine 516 is configured to determine the warp metadata 322B ( e.g. , head pose , depth of each active part , and / or three dimensional locations of the active portion ) of the rendered AR content in each frame based on the depth - buffer 506 and for each bounding box 540…”; “[0069] …Aspects of the present disclosure can assign a global scaling factor a and for each bounding box k and a per - layer scale factor Sko The per - box scale factor may depend on the distance of the content in the box from the user location, perceptual importance , or location in the eye - buffer 318 , where it may be relative to the fovea , or content complexity . Given the variance ox of a layer, the present disclosure can assume a rate per layer of R = B log ( 0,2 / D ) , where ß is a tunable constant . Aspects of the present disclosure can also solve for q , such that pla’s ? h_w_Rx ) sRfarger , so that D is minimal…”) a number of bounding boxes that respectively surround virtual objects represented by the atlas; (Melkote “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”; “[0064] …the bounding boxes 540 are fed to bounding box mapper 514 and APR plane parameter compute engine 516. The bounding box mapper 514 is configured to generate patch information 322A as described above, which provides information regarding the location and / or size of the rendered content bound in each box…”; “[0062] …the rendered eye-buffer 504 is fed to bounding box extractor 512 that may be configured to analyze eye-buffer 504 to produce bounding boxes that contain the rendered virtual content in the scene. This can be based on connected component analysis to determine closed contours in the eye - buffer 504 that fully contain a rendered object. Each bounding box 540 can generally be considered a bounding perimeter for each patch of active content in the rendered AR content…”; “[0063] …both unity and unreal may provide application program interfaces (APIs) to query bounding boxes for actors in the scene. Thus, such closed contours can be determined by merging bounding boxes with object overlaps. The produced bounding boxes 540 may be mapped to patches on the real estate of the atlas 320 such that a tight packing into the atlas real estate may be achieved. This may include scaling the content within the bounding boxes to achieve efficient packing…”) or bounding box information comprising at least one of a corresponding sparse layer index, a corresponding input layer index, an original position associated with an input layer, or a second position in the atlas Regarding claim 10, Melkote teaches wherein to encode the atlas in the first encoding session, the processor is configured to encode the atlas as a single frame; or wherein a first number of encoding sessions comprising the first encoding session is less than a second number of the set of sparse layers (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”; “[0077] …the present disclosure may include a hardware encoder or decoder module that combines traditional compression and atlas management into a single operation…”; “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0027] …The device 104 may include one or more components configured to perform one or more techniques of this disclosure . In the example shown , the device 104 may include a processing unit 120 , a content encoder / decoder 122 , and a system memory 124. In some aspects, the device 104 can include a number of optional components , e.g. , a communication interface 126 , a transceiver 132 , a receiver 128 , a transmitter 130 , a display processor 127 , and one or more displays 131…”) Regarding claim 11, Melkote teaches wherein to output the encoded atlas as the encoded representation of the image content, the processor is configured to perform at least one of: (Melkote “[0052] …the server 310 includes an encoder 316 that is generate configured to encode media content before transmitting the encoded content to the client device 330. In one aspect, the encoder 316 can be an H.264 or HEVC encoder for example . Thus, in the exemplary aspect , the encoder 316 receives the compact atlas 320 that is generated by the atlas manager 314 and encodes and streams ( e.g. , as bit stream 324 ) this encoded content to the client 330. In general, it is noted that encoder 316 can be implemented as content encoder / decoder 122…the bit stream 324 can be transmitted to the client device 330 using communication interface 126…”) provide, for a display panel, the encoded atlas as the encoded representation of the image content; or store, in the memory, the encoded atlas as the encoded representation of the image content (Melkote “[0026] …a graphics processing unit may output graphical content, such as a frame, to a buffer (which may be referred to as a framebuffer). A display processing unit may read the graphical content, such as one or more frames from the buffer, and perform one or more display processing techniques thereon to generate display content. For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame. As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g. upscaling or downscaling , on a frame . In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”) Regarding claim 12, Melkote teaches an apparatus for display processing, comprising: a memory; and a processor coupled to the memory and, based on information stored in the memory, the processor is configured to: (Melkote “[0026] …a graphics processing unit may output graphical content, such as a frame, to a buffer (which may be referred to as a framebuffer). A display processing unit may read the graphical content, such as one or more frames from the buffer, and perform one or more display processing techniques thereon to generate display content. For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame. As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g. upscaling or downscaling , on a frame . In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”; “[0028] The processing unit 120 may include an internal memory 121. The processing unit 120 may be configured to perform graphics processing, such as in a graphics processing pipeline 107. The content encoder / decoder 122 may include an internal memory 123. In some examples, the device 104 may include display processor, such as the display processor 127, to perform one or more display processing techniques on one or more frames generated by the processing unit 120 before presentment by the one or more displays 131…”; “[0029-0032]”) receive an encoded atlas of a set of sparse layers based on a merger of each of the set of sparse layers that include sparse content, wherein the set of sparse layers is associated with image content; (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”; “[0052] …the server 310 includes an encoder 316 that is generate configured to encode media content before transmitting the encoded content to the client device 330. In one aspect, the encoder 316 can be an H.264 or HEVC encoder for example . Thus , in the exemplary aspect , the encoder 316 receives the compact atlas 320 that is generated by the atlas manager 314 and encodes and streams ( e.g. , as bit stream 324 ) this encoded content to the client 330. In general, it is noted that encoder 316 can be implemented as content encoder / decoder 122…the bit stream 324 can be transmitted to the client device 330 using communication interface 126…”) decode the encoded atlas in a first decoding session to obtain the set of sparse layers; and (Melkote Fig. 8, “[0036] …The determination component 198 can also be configured to decode the atlas including the one or more patches and to warp the one or more patches in the decoded atlas based on one or more bounding boxes in a client eye – buffer…”; “[0055] …the client 330 includes similar components as the server 310 , but is configured to perform the opposite job of the server , e.g. , demultiplexing the decoded atlas 320 into an eye - buffer 318 based on the received metadata . More particularly, the client 330 includes decoder 336 , which can similar be an H.264 or HEVC encoder , that is configured to decode the received bit stream 324. In general, it is noted that decoder 336 can be implemented as content encoder / decoder 122…”; “[0077] …the present disclosure may include a hardware encoder or decoder module that combines traditional compression and atlas management into a single operation…”; “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”) output the set of sparse layers as a representation of the image content (Melkote “[0026] …a graphics processing unit may output graphical content, such as a frame, to a buffer (which may be referred to as a framebuffer). A display processing unit may read the graphical content, such as one or more frames from the buffer, and perform one or more display processing techniques thereon to generate display content. For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame. As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g. upscaling or downscaling , on a frame . In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”) Regarding claim 13, Melkote teaches wherein the encoded atlas includes a set of virtual objects associated with the set of sparse layers; (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”) wherein each virtual object in each sparse layer of the set of sparse layers is bound by a bounding box, of a set of bounding boxes, that surrounds the virtual object (Melkote “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”; “[0064] …the bounding boxes 540 are fed to bounding box mapper 514 and APR plane parameter compute engine 516. The bounding box mapper 514 is configured to generate patch information 322A as described above, which provides information regarding the location and / or size of the rendered content bound in each box…”) Regarding claim 14, Melkote teaches wherein at least one of: each bounding box comprises minimum dimensions by which a corresponding virtual object is respectively bounded, or each bounding box comprises dimensions of a minimum value by which the corresponding virtual object is respectively bounded plus an increased margin value; (Melkote “[0062] …the rendered eye-buffer 504 is fed to bounding box extractor 512 that may be configured to analyze eye-buffer 504 to produce bounding boxes that contain the rendered virtual content in the scene. This can be based on connected component analysis to determine closed contours in the eye - buffer 504 that fully contain a rendered object. Each bounding box 540 can generally be considered a bounding perimeter for each patch of active content in the rendered AR content…”; “[0063] …both unity and unreal may provide application program interfaces ( APIs ) to query bounding boxes for actors in the scene. Thus, such closed contours can be determined by merging bounding boxes with object overlaps. The produced bounding boxes 540 may be mapped to patches on the real estate of the atlas 320 such that a tight packing into the atlas real estate may be achieved . This may include scaling the content within the bounding boxes to achieve efficient packing…”; “[0080] At 808, the apparatus may determine a size of each of the one or more bounding boxes based on the calculated amount of user motion . In some aspects , the size of each of the one or more patches may correspond to a size of each of the one or more bounding boxes 540. Also, the size of each of the one or more patches may be determined based on a target bit - rate in one aspect.”) wherein the merger of the set of sparse layers that includes the sparse content is based on a smallest overall area for an arrangement of the set of bounding boxes; or wherein, for a subset of the set of sparse layers, the set of bounding boxes comprises an outer bounding box that bounds two or more virtual objects in the set of virtual objects, wherein the outer bounding box is based on a set of overlapping bounding boxes respectively associated with the two or more virtual objects in a sparse layer of the subset (Melkote “[0063] …both unity and unreal may provide application program interfaces ( APIs ) to query bounding boxes for actors in the scene. Thus, such closed contours can be determined by merging bounding boxes with object overlaps. The produced bounding boxes 540 may be mapped to patches on the real estate of the atlas 320 such that a tight packing into the atlas real estate may be achieved . This may include scaling the content within the bounding boxes to achieve efficient packing…”; “[0080] At 808, the apparatus may determine a size of each of the one or more bounding boxes based on the calculated amount of user motion . In some aspects , the size of each of the one or more patches may correspond to a size of each of the one or more bounding boxes 540. Also, the size of each of the one or more patches may be determined based on a target bit - rate in one aspect.”) Regarding claim 16, Melkote teaches wherein the encoded atlas comprises an encoded set of metadata, wherein the encoded set of metadata includes at least one of: (Melkote “[0053] …the atlas manager 314 is further configured to generate metadata 322 that that informs the client 330 of the mapping of locations between the rendered eye - buffer 318 and the atlas 320 having the same content, which can include patch information, for example, of the sparse AR content. In other words, the metadata 322 will include patch information 322A that can be processed by the client device 330 to determine the respective positions of each active portion of the eye - buffer 318 used to generate atlas 320. Additional metadata can include warping meta data 322B , such as a head pose , depth of each active part , or three dimensional locations of the active portion , may also be sent as part of the stream . In general, the metadata 322 can be transmitted with the bit stream 324 of the encoded atlas 320 or as a separate stream to client 330.”) an indication of a number of the set of sparse layers; (Melkote “[0026] …A display processing unit may read the graphical content , such as one or more frames from the buffer , and perform one or more display processing techniques thereon to generate display content . For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame As another example , a display processing unit may be configured to compose , blend , or otherwise combine two or more layers together into a single frame . A display processing unit may be configured to perform scaling , e.g. , upscaling or downscaling , on a frame . In some examples , a frame may refer to a layer . In other examples , a frame may refer to two or more layers that have already been blended together to form the frame , i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”) sparse layer information comprising at least one of a first position, an orientation, an order of composition, or a set of plane parameters for warping for each of the set of sparse layers; (Melkote “[0007] …The apparatus can also determine the location of each of the one or more patches for the sparse AR content in the received atlas based on patch metadata received from a server that generates the atlas. The apparatus can also receive warping metadata associated with the one or more patches in the atlas and to render the AR content based on the warping metadata…”; “[0064] …the APR plane parameter compute engine 516 is configured to determine the warp metadata 322B ( e.g. , head pose , depth of each active part , and / or three dimensional locations of the active portion ) of the rendered AR content in each frame based on the depth - buffer 506 and for each bounding box 540. The APR plane parameter compute engine 516 then outputs this information as warp metadata 322B , which is transmitted to client device 330…”) a margin added to bounding boxes; (Melkote “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0064] …the bounding boxes 540 are fed to bounding box mapper 514 and APR plane parameter compute engine 516. The bounding box mapper 514 is configured to generate patch information 322A as described above, which provides information regarding the location and / or size of the rendered content bound in each box. The patch information 322A is provided to client device 330 as metadata as described above. Moreover, the atlas generator 518 is configured to generate the compact atlas 320 as described above using both the bounding boxes 540 and the patch information 322A based on the received eye - buffer 504. Yet further , the APR plane parameter compute engine 516 is configured to determine the warp metadata 322B ( e.g. , head pose , depth of each active part , and / or three dimensional locations of the active portion ) of the rendered AR content in each frame based on the depth - buffer 506 and for each bounding box 540…”; “[0069] …Aspects of the present disclosure can assign a global scaling factor a and for each bounding box k and a per - layer scale factor Sko The per - box scale factor may depend on the distance of the content in the box from the user location, perceptual importance , or location in the eye - buffer 318 , where it may be relative to the fovea , or content complexity . Given the variance ox of a layer, the present disclosure can assume a rate per layer of R = B log ( 0,2 / D ) , where ß is a tunable constant . Aspects of the present disclosure can also solve for q , such that pla’s ? h_w_Rx ) sRfarger , so that D is minimal…”) a number of bounding boxes that respectively surround virtual objects represented by the encoded atlas; (Melkote “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”; “[0064] …the bounding boxes 540 are fed to bounding box mapper 514 and APR plane parameter compute engine 516. The bounding box mapper 514 is configured to generate patch information 322A as described above, which provides information regarding the location and / or size of the rendered content bound in each box…”; “[0062] …the rendered eye-buffer 504 is fed to bounding box extractor 512 that may be configured to analyze eye-buffer 504 to produce bounding boxes that contain the rendered virtual content in the scene. This can be based on connected component analysis to determine closed contours in the eye - buffer 504 that fully contain a rendered object. Each bounding box 540 can generally be considered a bounding perimeter for each patch of active content in the rendered AR content…”; “[0063] …both unity and unreal may provide application program interfaces (APIs) to query bounding boxes for actors in the scene. Thus, such closed contours can be determined by merging bounding boxes with object overlaps. The produced bounding boxes 540 may be mapped to patches on the real estate of the atlas 320 such that a tight packing into the atlas real estate may be achieved. This may include scaling the content within the bounding boxes to achieve efficient packing…”) or bounding box information comprising at least one of a corresponding sparse layer index, a corresponding input layer index, an original position associated with an input layer, or a second position in the encoded atlas; wherein the processor is further configured to: decode the encoded set of metadata in a different decoding session than the first decoding session to obtain a decoded of metadata; wherein to output the set of sparse layers, the processor is configured to output the decoded set of metadata Regarding claim 20, Melkote teaches a method of display processing, comprising: (Melkote “[0026] …a graphics processing unit may output graphical content, such as a frame, to a buffer (which may be referred to as a framebuffer). A display processing unit may read the graphical content, such as one or more frames from the buffer, and perform one or more display processing techniques thereon to generate display content. For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame. As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g. upscaling or downscaling , on a frame . In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”) generating an atlas of a set of sparse layers based on a merger of each of the set of sparse layers that include sparse content, wherein the set of sparse layers is associated with image content; (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”) encoding the atlas in a first encoding session; and outputting the encoded atlas as an encoded representation of the image content (Melkote “[0052] …the server 310 includes an encoder 316 that is generate configured to encode media content before transmitting the encoded content to the client device 330. In one aspect, the encoder 316 can be an H.264 or HEVC encoder for example . Thus , in the exemplary aspect , the encoder 316 receives the compact atlas 320 that is generated by the atlas manager 314 and encodes and streams ( e.g. , as bit stream 324 ) this encoded content to the client 330. In general, it is noted that encoder 316 can be implemented as content encoder / decoder 122…the bit stream 324 can be transmitted to the client device 330 using communication interface 126…”) Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. Claims 5, 18, and 19 are rejected under 35 U.S.C. 103 as being unpatentable and obvious over Melkote in view of US Patent Application Publication US 20170372519 A1, (Sathe). Regarding claim 5, Melkote teaches wherein to generate the atlas, the processor is configured to…wherein the atlas comprises… (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0027] …The device 104 may include one or more components configured to perform one or more techniques of this disclosure . In the example shown , the device 104 may include a processing unit 120 , a content encoder / decoder 122 , and a system memory 124. In some aspects, the device 104 can include a number of optional components , e.g. , a communication interface 126 , a transceiver 132 , a receiver 128 , a transmitter 130 , a display processor 127 , and one or more displays 131…”) bound, for a subset of the set of sparse layers comprising… (Melkote “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”) However, Melkote is silent about overlapping bounding boxes, a set of overlapping bounding boxes in each sparse layer of the subset with an outer bounding box, of a set of outer bounding boxes, that surrounds the set of overlapping bounding boxes…the set of outer bounding boxes and the associated virtual objects. Sathe teaches …overlapping bounding boxes, a set of overlapping bounding boxes in each sparse layer of the subset with an outer bounding box, of a set of outer bounding boxes, that surrounds the set of overlapping bounding boxes…the set of outer bounding boxes and the associated virtual objects (Sathe Fig. 17, “[0141] The tile rasterization interleave logic 1900, in one embodiment , can determine a third bounding box that is a union of a first bounding box and a second bounding box , as shown at 1902 . The first bounding box can be associated with a first primitive , while the second bound box can be associated with a second primitive.”; “[0126] …The extent of the overlap can be determined as the ratio of the area of intersection of the bounding boxes of the two triangles in screen space to the area of their union…”; “[0148] …2004…”) Melkote and Sathe are analogous art as both of them are related to obtaining or using images. Therefore, it would have been obvious for a person having ordinary skill in the art before the effective filing date of the claimed invention to have modified Melkote by overlapping bounding boxes, a set of overlapping bounding boxes in each sparse layer of the subset with an outer bounding box, of a set of outer bounding boxes, that surrounds the set of overlapping bounding boxes…the set of outer bounding boxes and the associated virtual objects as taught by Sathe and use that within Melkote’s atlas management of augmented reality content. The motivation for the above is for accurate virtual content organization in an atlas. Regarding claim 18, Melkote teaches wherein to output the set of sparse layers as the representation of the image content, the processor is configured to perform at least one of: …provide, for a display panel, the composed layer; or store, in the memory, the composed layer (Melkote “[0026] …a graphics processing unit may output graphical content, such as a frame, to a buffer (which may be referred to as a framebuffer). A display processing unit may read the graphical content, such as one or more frames from the buffer, and perform one or more display processing techniques thereon to generate display content. For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame. As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g. upscaling or downscaling , on a frame . In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”) However, Melkote is silent about composing the set of sparse layers, by a pixel shader of a compositor, individually or as a group to generate a composed layer. Sathe teaches compose the set of sparse layers, by a pixel shader of a compositor, individually or as a group to generate a composed layer; (Sathe “[0143] Having rasterized the tile or sub - tile regions against both primitives , the tile rasterization interleave logic 1900 can then process a covered region with a pixel shader for each covered primitive . The pixel shader can process both primitives for a region covered by both primitives, and can process a single primitive for a region covered by a single primitive. When the pixel shader processes a region covered by both primitives, the pixel shader will be processing two primitives that are different views of the same primitive, rather than processing two independent primitives.”; “[0066] …pixel processing ( e . g . , pixel shaders , fragment shaders ) and general - purpose processing ( e . g . , compute and media shaders)…”; “[0070] …Once a group of geometric objects has been processed and rasterized into pixel data , pixel processor logic ( e . g . , pixel shader logic , fragment shader logic , etc . )…”) Melkote and Sathe are analogous art as both of them are related to obtaining or using images. Therefore, it would have been obvious for a person having ordinary skill in the art before the effective filing date of the claimed invention to have modified Melkote by composing the set of sparse layers, by a pixel shader of a compositor, individually or as a group to generate a composed layer as taught by Sathe and use that within Melkote’s atlas management of augmented reality content. The motivation for the above is for accurate virtual content organization in an atlas. Regarding claim 19, Melkote teaches compose the set of sparse layers in association with a locally-generated layer associated with the compositor, wherein the locally-generated layer is included in the composed layer (Melkote “[0026] …a graphics processing unit may output graphical content, such as a frame, to a buffer (which may be referred to as a framebuffer). A display processing unit may read the graphical content, such as one or more frames from the buffer, and perform one or more display processing techniques thereon to generate display content. For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame. As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g. upscaling or downscaling , on a frame . In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”; “[0040] …FIG . 2, GPU 200 includes command processor ( CP ) 210 , draw call packets 212 , VFD 220 , VS 222 , vertex cache ( VPC ) 224 , triangle setup engine ( TSE ) 226 , rasterizer 2 ( RAS ) 228 , Z process engine ( ZPE ) 230 , pixel interpolator ( PI ) 232 , fragment shader ( FS ) 234 , render backend ( RB ) 236 , L2 cache ( UCHE ) 238…”) However, Melkote is silent about wherein to compose the set of sparse layers, by the pixel shader, individually or as the group, the processor is configured to. Sathe teaches wherein to compose the set of sparse layers, by the pixel shader, individually or as the group, the processor is configured to: (Sathe “[0143] Having rasterized the tile or sub - tile regions against both primitives, the tile rasterization interleave logic 1900 can then process a covered region with a pixel shader for each covered primitive . The pixel shader can process both primitives for a region covered by both primitives, and can process a single primitive for a region covered by a single primitive. When the pixel shader processes a region covered by both primitives, the pixel shader will be processing two primitives that are different views of the same primitive, rather than processing two independent primitives.”; “[0066] …pixel processing ( e . g . , pixel shaders , fragment shaders ) and general - purpose processing ( e . g . , compute and media shaders)…”; “[0070] …Once a group of geometric objects has been processed and rasterized into pixel data , pixel processor logic ( e . g . , pixel shader logic , fragment shader logic , etc . )…”) Melkote and Sathe are analogous art as both of them are related to obtaining or using images. Therefore, it would have been obvious for a person having ordinary skill in the art before the effective filing date of the claimed invention to have modified Melkote by wherein to compose the set of sparse layers, by the pixel shader, individually or as the group, the processor is configured to as taught by Sathe and use that within Melkote’s atlas management of augmented reality content. The motivation for the above is for accurate virtual content organization in an atlas. Claims 6, 8, and 15 are rejected under 35 U.S.C. 103 as being unpatentable and obvious over Melkote in view of US Patent Application Publication US 2021/0258590 A1, (Boyce et al.) (hereinafter “Boyce”). Regarding claim 6, Melkote teaches wherein the atlas comprises…wherein to generate the atlas, the processor is configured to…wherein the processor is further configured to: (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0027] …The device 104 may include one or more components configured to perform one or more techniques of this disclosure . In the example shown , the device 104 may include a processing unit 120 , a content encoder / decoder 122 , and a system memory 124. In some aspects, the device 104 can include a number of optional components , e.g. , a communication interface 126 , a transceiver 132 , a receiver 128 , a transmitter 130 , a display processor 127 , and one or more displays 131…”) wherein to output the encoded atlas, the processor is configured to output… (Melkote “[0052] …the server 310 includes an encoder 316 that is generate configured to encode media content before transmitting the encoded content to the client device 330. In one aspect, the encoder 316 can be an H.264 or HEVC encoder for example. Thus, in the exemplary aspect, the encoder 316 receives the compact atlas 320 that is generated by the atlas manager 314 and encodes and streams ( e.g. , as bit stream 324 ) this encoded content to the client 330. In general, it is noted that encoder 316 can be implemented as content encoder / decoder 122…the bit stream 324 can be transmitted to the client device 330 using communication interface 126…”) However, Melkote is silent about an occupancy map associated with virtual objects represented by the atlas; generate the occupancy map as a data structure representative of first pixels that correspond to the virtual objects mapped to a first value and second pixels that correspond to locations outside of the virtual objects mapped to a second value; encode the occupancy map in a different encoding session than the first encoding session…the encoded occupancy map. Boyce teaches …an occupancy map associated with virtual objects represented by the atlas; (Boyce “[0048] In MIV, patches are rectangular regions formed by mapping pixels from a view to an atlas. Individual pixel positions within a patch are considered to be active or not active, indicated using an occupancy map…”) generate the occupancy map as a data structure representative of first pixels that correspond to the virtual objects mapped to a first value and second pixels that correspond to locations outside of the virtual objects mapped to a second value; (Boyce “[0048] In MIV, patches are rectangular regions formed by mapping pixels from a view to an atlas. Individual pixel positions within a patch are considered to be active or not active, indicated using an occupancy map. The per pixel occupancy map data may be signaled embedded within the depth in MIV or encoded separately. This occupancy map information is used by the decoder system during the rendering process.”) encode the occupancy map in a different encoding session than the first encoding session…the encoded occupancy map (Boyce “[0048] …The per pixel occupancy map data may be signaled embedded within the depth in MIV or encoded separately. This occupancy map information is used by the decoder system during the rendering process.”) Melkote and Boyce are analogous art as both of them are related to obtaining or using images. Therefore, it would have been obvious for a person having ordinary skill in the art before the effective filing date of the claimed invention to have modified Melkote by an occupancy map associated with virtual objects represented by the atlas; generate the occupancy map as a data structure representative of first pixels that correspond to the virtual objects mapped to a first value and second pixels that correspond to locations outside of the virtual objects mapped to a second value; encode the occupancy map in a different encoding session than the first encoding session…the encoded occupancy map as taught by Boyce and use that within Melkote’s atlas management of augmented reality content. The motivation for the above is for using occupancy maps to enhance an atlas. Regarding claim 8, Melkote teaches wherein the set of sparse layers comprises…generate the set of metadata based on at least one of the set of sparse layers associated with the image content or the bounding boxes; (Melkote “[0071] …on the client side 330, the decoder 336 may receive the atlas bit stream 324 and decode it into the atlas pixel buffer. If there are packet losses, this can include concealment of patches in the current decoded atlas 320 using information from corresponding patches in the previous atlas frame. According to an aspect, patch correspondence between consecutive atlas frames may be maintained . New patches or bounding boxes may be explicitly marked in the metadata . Also, concealment can account for the effect of user orientation change on the object appearance in the eye - buffer. The concealed frame may then be used as a reference for decoding the next atlas 320 received from server 310. The current patch information ( e.g. , patch metadata 322A ) may then be used to demultiplex the atlas 320 into the eye - buffer 318.”) wherein to generate the atlas, the processor is configured to…wherein the processor is further configured to: (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0027] …The device 104 may include one or more components configured to perform one or more techniques of this disclosure . In the example shown , the device 104 may include a processing unit 120 , a content encoder / decoder 122 , and a system memory 124. In some aspects, the device 104 can include a number of optional components , e.g. , a communication interface 126 , a transceiver 132 , a receiver 128 , a transmitter 130 , a display processor 127 , and one or more displays 131…”) encode the set of metadata in a different encoding session than the first encoding session; wherein to output the encoded atlas, the processor is configured to output the encoded set of metadata (Melkote “[0052] …the server 310 includes an encoder 316 that is generate configured to encode media content before transmitting the encoded content to the client device 330. In one aspect, the encoder 316 can be an H.264 or HEVC encoder for example. Thus, in the exemplary aspect, the encoder 316 receives the compact atlas 320 that is generated by the atlas manager 314 and encodes and streams ( e.g. , as bit stream 324 ) this encoded content to the client 330. In general, it is noted that encoder 316 can be implemented as content encoder / decoder 122…the bit stream 324 can be transmitted to the client device 330 using communication interface 126…”; “[0053] …the atlas manager 314 is further configured to generate metadata 322 that that informs the client 330 of the mapping of locations between the rendered eye - buffer 318 and the atlas 320 having the same content, which can include patch information, for example, of the sparse AR content. In other words, the metadata 322 will include patch information 322A that can be processed by the client device 330 to determine the respective positions of each active portion of the eye - buffer 318 used to generate atlas 320. Additional metadata can include warping meta data 322B , such as a head pose , depth of each active part , or three dimensional locations of the active portion , may also be sent as part of the stream . In general, the metadata 322 can be transmitted with the bit stream 324 of the encoded atlas 320 or as a separate stream to client 330.”) However, Melkote is silent about a set of input layers associated with the image content. Boyce teaches …a set of input layers associated with the image content; (Boyce “[0044] …portions of input video 102 may be selected by immersive video encoder 300 (or encoder described herein) for coding using scalable video coding and other portions of input video 102 may be selected for coding using multiple description video coding. Such portions may be at any level ( e.g. , sequence , frame or picture , patch , block , etc. ) and may be any type of content or video channel ( e.g. , texture , depth , occupancy , etc. )…”) Melkote and Boyce are analogous art as both of them are related to obtaining or using images. Therefore, it would have been obvious for a person having ordinary skill in the art before the effective filing date of the claimed invention to have modified Melkote by a set of input layers associated with the image content as taught by Boyce and use that within Melkote’s atlas management of augmented reality content. The motivation for the above is for enhancing an atlas. Regarding claim 15, Melkote teaches wherein the encoded atlas comprises… (Melkote “[0052] …the server 310 includes an encoder 316 that is generate configured to encode media content before transmitting the encoded content to the client device 330. In one aspect, the encoder 316 can be an H.264 or HEVC encoder for example. Thus, in the exemplary aspect , the encoder 316 receives the compact atlas 320 that is generated by the atlas manager 314 and encodes and streams ( e.g. , as bit stream 324 ) this encoded content to the client 330. In general, it is noted that encoder 316 can be implemented as content encoder / decoder 122…the bit stream 324 can be transmitted to the client device 330 using communication interface 126…”) wherein the processor is configured further to…wherein to output the set of sparse layers, the processor is configured to output… (Melkote “[0026] …a graphics processing unit may output graphical content, such as a frame, to a buffer (which may be referred to as a framebuffer). A display processing unit may read the graphical content, such as one or more frames from the buffer, and perform one or more display processing techniques thereon to generate display content. For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame. As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g. upscaling or downscaling , on a frame . In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”) However, Melkote is silent about an encoded occupancy map associated with virtual objects represented by the encoded atlas, wherein the encoded occupancy map comprises a data structure representative of first pixels that correspond to the virtual objects mapped to a first value and second pixels that correspond to locations outside of the virtual objects mapped to a second value; decode the encoded occupancy map in a different decoding session than the first decoding session…the decoded occupancy map. Boyce teaches …an encoded occupancy map associated with virtual objects represented by the encoded atlas, (Boyce “[0048] In MIV, patches are rectangular regions formed by mapping pixels from a view to an atlas. Individual pixel positions within a patch are considered to be active or not active, indicated using an occupancy map…”) wherein the encoded occupancy map comprises a data structure representative of first pixels that correspond to the virtual objects mapped to a first value and second pixels that correspond to locations outside of the virtual objects mapped to a second value; (Boyce “[0048] In MIV, patches are rectangular regions formed by mapping pixels from a view to an atlas. Individual pixel positions within a patch are considered to be active or not active, indicated using an occupancy map. The per pixel occupancy map data may be signaled embedded within the depth in MIV or encoded separately. This occupancy map information is used by the decoder system during the rendering process.”) decode the encoded occupancy map in a different decoding session than the first decoding session…the decoded occupancy map (Boyce “[0036] The base layer picture is encoded via the base layer encoder of encoder system 101 , and locally decoded via the decoder of scalable encoder system 101…”; “[0038] At scalable decoder system 111 , the bitstream is received and demultiplexed , via a demultiplexer , into a base layer bitstream and one or more enhancement layer bit streams . The base layer bitstream and the enhancement layer bitstream ( s ) are decoded , via a base layer decoder and enhancement layer decoder ( s ) , respectively , and the decoded sample values of the base layer and enhancement layer ( s ) are added together , and the offset subtracted , to form the output sample value . Thereby, a reconstruction or reconstructed video 112 of the input provided at scalable encoder system 101 is generated at scalable decoder system 111 . Notably , scalable decoder system 111 can generate output video with only the base layer or with the base layer and one or more enhancement layers , but not without the base layer…”; “[0048] …This occupancy map information is used by the decoder system during the rendering process.”; “[0053] …bitstream 105 received at immersive video decoder 400 includes one or more first indicators indicating corresponding first portion ( s ) of the immersive video are coded using scalable video coding and one or more second indicators indicating corresponding second portion ( s ) of the immersive video are coded using multiple description coding Immersive video decoder 400 decodes such first portion ( s ) ( indicated as being coded using scalable video coding by the one or more first indicators ) using scalable video decoding techniques including determining pixel samples for each pixel location of the first portions in a base layer, determining pixel residuals for each pixel location of first portion in an enhancement layer, and summing the pixel samples and the pixel residuals to determine a final pixel value or sample for each pixel location…”) Melkote and Boyce are analogous art as both of them are related to obtaining or using images. Therefore, it would have been obvious for a person having ordinary skill in the art before the effective filing date of the claimed invention to have modified Melkote by an encoded occupancy map associated with virtual objects represented by the encoded atlas, wherein the encoded occupancy map comprises a data structure representative of first pixels that correspond to the virtual objects mapped to a first value and second pixels that correspond to locations outside of the virtual objects mapped to a second value; decode the encoded occupancy map in a different decoding session than the first decoding session…the decoded occupancy map as taught by Boyce and use that within Melkote’s atlas management of augmented reality content. The motivation for the above is for enhancing an atlas. Claims 9 and 17 are rejected under 35 U.S.C. 103 as being unpatentable and obvious over Melkote in view of US Patent Application Publication US 20080143737 A1, (Weybrew et al.) (hereinafter “Weybrew”). Regarding claim 9, Melkote teaches wherein to generate the atlas, the processor is configured to perform at least one of: (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0027] …The device 104 may include one or more components configured to perform one or more techniques of this disclosure . In the example shown , the device 104 may include a processing unit 120 , a content encoder / decoder 122 , and a system memory 124. In some aspects, the device 104 can include a number of optional components , e.g. , a communication interface 126 , a transceiver 132 , a receiver 128 , a transmitter 130 , a display processor 127 , and one or more displays 131…”) wherein to encode the atlas in the first encoding session, the processor is configured to: encode the atlas in the first encoding session with the alpha atlas, or to encode the atlas in the first encoding session and encode the alpha atlas in a second encoding session (Melkote “[0052] …the server 310 includes an encoder 316 that is generate configured to encode media content before transmitting the encoded content to the client device 330. In one aspect, the encoder 316 can be an H.264 or HEVC encoder for example. Thus, in the exemplary aspect , the encoder 316 receives the compact atlas 320 that is generated by the atlas manager 314 and encodes and streams ( e.g. , as bit stream 324 ) this encoded content to the client 330. In general, it is noted that encoder 316 can be implemented as content encoder / decoder 122…the bit stream 324 can be transmitted to the client device 330 using communication interface 126…”) However, Melkote is silent about generating an alpha atlas based on alpha channel values associated with the atlas; or stitch the atlas together with the alpha atlas. Weybrew teaches generate an alpha atlas based on alpha channel values associated with the atlas; or stitch the atlas together with the alpha atlas; (Weybrew “[0004] …content independent Surface transparency and the blending of the surfaces, including 3D surfaces, with the other content of a display using constant or per-pixel alpha to achieve partial transparency.”; “[0014] …For the purposes of this disclosure a transparency “level is defined as a constant alpha value, a per-pixel alpha value or a linear combination (i.e., multiplication) thereof. The selected transparency scheme and levels are stored in memory 150 for use by display processor 130. Examples of possible transparency schemes include constant alpha transparency and per-pixel alpha transparency…”; “[0016] …this transparency parameter may enable per-pixel blending of a rendered surface with the existing display contents using either the alpha channel of the rendered surface or a separate pre-stored or dynamically computed alpha map. In addition, this transparency parameter may enable per-pixel blending of a rendered surface with the existing display contents using either the alpha channel of the rendered Surface or a separate pre-stored or dynamically computed alpha map combined with a constant alpha value…”; “[0017] The degree or level to which pixels in a rendered surface are to be blended is stored in the alpha channel. The alpha channel accompanies the RGB values for each pixel. Typically, alpha channel values range from 0 (fully transparent) to 255 (fully opaque). However, any range or precision of alpha may be employed. A rendered Surface pixel that has an alpha of 0 will be fully transparent, and thus the color of the pixel in the background will be displayed and the color of the rendered surface pixel will not be seen. Conversely, a rendered surface pixel that has an alpha of 255 will be fully opaque and the pixel in the background image will not be seen. For alpha values in between 0 and 255, the color values of the rendered graphics pixels and the background image pixels are independently scaled and added together in a linear fashion.”; “[0028]”) Melkote and Weybrew are analogous art as both of them are related to modifying or using images. Therefore, it would have been obvious for a person having ordinary skill in the art before the effective filing date of the claimed invention to have modified Melkote by generating an alpha atlas based on alpha channel values associated with the atlas; or stitch the atlas together with the alpha atlas as taught by Weybrew and use that within Melkote’s atlas management of augmented reality content. The motivation for the above is for enhancing virtual content visibility. Regarding claim 17, Melkote teaches wherein the encoded atlas includes… (Melkote “[0052] …the server 310 includes an encoder 316 that is generate configured to encode media content before transmitting the encoded content to the client device 330. In one aspect, the encoder 316 can be an H.264 or HEVC encoder for example. Thus , in the exemplary aspect , the encoder 316 receives the compact atlas 320 that is generated by the atlas manager 314 and encodes and streams ( e.g. , as bit stream 324 ) this encoded content to the client 330. In general, it is noted that encoder 316 can be implemented as content encoder / decoder 122…the bit stream 324 can be transmitted to the client device 330 using communication interface 126…”) wherein to decode the encoded atlas in the first decoding session, the processor is configured to: decode the encoded atlas in the first decoding session…or decode the encoded atlas in the first decoding session and decode the encoded alpha atlas in a second decoding session to obtain the alpha atlas; (Melkote Fig. 8, “[0036] …The determination component 198 can also be configured to decode the atlas including the one or more patches and to warp the one or more patches in the decoded atlas based on one or more bounding boxes in a client eye – buffer…”; “[0055] …the client 330 includes similar components as the server 310 , but is configured to perform the opposite job of the server , e.g. , demultiplexing the decoded atlas 320 into an eye - buffer 318 based on the received metadata . More particularly, the client 330 includes decoder 336 , which can similar be an H.264 or HEVC encoder , that is configured to decode the received bit stream 324. In general, it is noted that decoder 336 can be implemented as content encoder / decoder 122…”; “[0077] …the present disclosure may include a hardware encoder or decoder module that combines traditional compression and atlas management into a single operation…”; “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0027] …The device 104 may include one or more components configured to perform one or more techniques of this disclosure . In the example shown , the device 104 may include a processing unit 120 , a content encoder / decoder 122 , and a system memory 124. In some aspects, the device 104 can include a number of optional components , e.g. , a communication interface 126 , a transceiver 132 , a receiver 128 , a transmitter 130 , a display processor 127 , and one or more displays 131…”) wherein to decode the encoded atlas in the first decoding session, the processor is configured to decode the encoded atlas as a single frame; or wherein a first number of decoding sessions comprising the first decoding session is less than a second number of the set of sparse layers (Melkote Fig. 3, “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0008] The apparatus can determine an eye - buffer that includes one or more bounding boxes associated with sparse AR content in a frame…”; “[0026] …For example, a display processing unit may be configured to perform composition on one or more rendered layers to generate a frame . As another example, a display processing unit may be configured to compose, blend, or otherwise combine two or more layers together into a single frame. A display processing unit may be configured to perform scaling, e.g., upscaling or downscaling, on a frame. In some examples, a frame may refer to a layer. In other examples, a frame may refer to two or more layers that have already been blended together to form the frame, i.e. , the frame includes two or more layers , and the frame that includes two or more layers may subsequently be blended.”; “[0077] …the present disclosure may include a hardware encoder or decoder module that combines traditional compression and atlas management into a single operation…”; “[0051] …The server 310 further includes an atlas manager 314 that is configured to collate together the eye - buffer 318 to generate a compact atlas 320. That is, the generated compact atlas contains only those portions of AR content required by the client device 330 for recreating and displaying the AR content…”; “[0027] …The device 104 may include one or more components configured to perform one or more techniques of this disclosure . In the example shown , the device 104 may include a processing unit 120 , a content encoder / decoder 122 , and a system memory 124. In some aspects, the device 104 can include a number of optional components , e.g. , a communication interface 126 , a transceiver 132 , a receiver 128 , a transmitter 130 , a display processor 127 , and one or more displays 131…”) However, Melkote is silent about an encoded alpha atlas, wherein an alpha atlas associated with the encoded alpha atlas is based on alpha channel values associated with the encoded atlas that is stitched together with, or separately encoded from, the encoded atlas…with the encoded alpha atlas to obtain the alpha atlas. Weybrew teaches …an encoded alpha atlas, wherein an alpha atlas associated with the encoded alpha atlas is based on alpha channel values associated with the encoded atlas that is stitched together with, or separately encoded from, the encoded atlas…with the encoded alpha atlas to obtain the alpha atlas… (Weybrew “[0004] …content independent Surface transparency and the blending of the surfaces, including 3D surfaces, with the other content of a display using constant or per-pixel alpha to achieve partial transparency.”; “[0014] …For the purposes of this disclosure a transparency “level is defined as a constant alpha value, a per-pixel alpha value or a linear combination (i.e., multiplication) thereof. The selected transparency scheme and levels are stored in memory 150 for use by display processor 130. Examples of possible transparency schemes include constant alpha transparency and per-pixel alpha transparency…”; “[0016] …this transparency parameter may enable per-pixel blending of a rendered surface with the existing display contents using either the alpha channel of the rendered surface or a separate pre-stored or dynamically computed alpha map. In addition, this transparency parameter may enable per-pixel blending of a rendered surface with the existing display contents using either the alpha channel of the rendered Surface or a separate pre-stored or dynamically computed alpha map combined with a constant alpha value…”; “[0017] The degree or level to which pixels in a rendered surface are to be blended is stored in the alpha channel. The alpha channel accompanies the RGB values for each pixel. Typically, alpha channel values range from 0 (fully transparent) to 255 (fully opaque). However, any range or precision of alpha may be employed. A rendered Surface pixel that has an alpha of 0 will be fully transparent, and thus the color of the pixel in the background will be displayed and the color of the rendered surface pixel will not be seen. Conversely, a rendered surface pixel that has an alpha of 255 will be fully opaque and the pixel in the background image will not be seen. For alpha values in between 0 and 255, the color values of the rendered graphics pixels and the background image pixels are independently scaled and added together in a linear fashion.”; “[0028]”) Melkote and Weybrew are analogous art as both of them are related to modifying or using images. Therefore, it would have been obvious for a person having ordinary skill in the art before the effective filing date of the claimed invention to have modified Melkote by an encoded alpha atlas, wherein an alpha atlas associated with the encoded alpha atlas is based on alpha channel values associated with the encoded atlas that is stitched together with, or separately encoded from, the encoded atlas…with the encoded alpha atlas to obtain the alpha atlas as taught by Weybrew and use that within Melkote’s atlas management of augmented reality content. The motivation for the above is for enhancing virtual content visibility. Pertinent Art The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. US Patent Application Publication US 2014/0176672 A1 (Lu et al.) discloses image depth maps and localized depth analysis using pixel attribute relative relationships US Patent US 11017566 B1 (Tourapis) discloses an encoder for compressing attribute information in image frames US Patent Application Publication US 20170347122 A1 (Chou) discloses occupied points of point cloud data US Patent Application Publication US 20100195716 A1 (Klein Gunnewiek et al.) discloses encoded occlusion data frames US Patent Application Publication US 20080007563 A1 (Aronson) discloses alpha values US Patent Application Publication US 2021/0321072 A1 (OH et al.) discloses alpha values and formatting US Patent Application Publication US 20090122068 A1 (Garritsen) discloses regulating system bandwidth. Keywords: pixel shader/texture unit, primitives (virtual objects) US Patent Application Publication US 20210005006 A1 (OH) discloses a bitstream of point cloud data with occupancy mapping and patching US Patent Application Publication US 20220377302 A1 (Fleureau et al.) discloses video encoding and decoding for an atlas with metadata Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to AMELIA VELAZQUEZ VALENCIA whose telephone number is (571)272-7418. The examiner can normally be reached M-F, 8:30AM-5:00PM. 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, Said A. Broome can be reached at (571) 272-2931. 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. /A.V.V/Examiner, Art Unit 2612 /Said Broome/Supervisory Patent Examiner, Art Unit 2612 Date: 06/30/2026
Read full office action

Prosecution Timeline

Dec 20, 2024
Application Filed
Jul 24, 2026
Non-Final Rejection mailed — §102, §103, §112 (current)

Strategy Recommendation AI-generated — please review before filing

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

Prosecution Projections

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

Sign in with your work email

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

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

Free tier: 3 strategy analyses per month