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 .
Status of Claims
Claims 1-20 are pending and examined herein.
Claims 1, 3-5, 7, 8, 10-12, 14, 15, and 17-19 are rejected under 35 U.S.C. 102 .
Claims 2, 6, 9, 13, 16, and 20 are rejected under 35 U.S.C. 103.
Response to Arguments
Applicant's arguments filed 01/22/2026 have been fully considered but they are not persuasive.
Applicant argues, see pages 7-10, "Even so, the cited aspects of Du fail to anticipate "determining by the first processor, a first gradient value" that "represents a change of the input data... based on a change in the configuration setting." To be sure, neither the training/online encoding phases nor the CPU/GPU aspects of Du explicitly disclose such a first processor that "determine[s]... a first gradient value," much less the cited
H
i
-
L
i
1
metric as cited by the Office Action."
Examiner respectfully disagrees. As stated in the previous office action, "The processor of the edge device is interpreted as the first processor." Additionally, “
H
i
-
L
i
1
is interpreted as the first gradient value, as it represents a change of the input data
L
from previously received input data
H
based on the configuration of encoding quality.” The processor of the edge device (first processor) performs the calculation of the first gradient value. For clarification, this is supported by Fig. 3, where the accuracy gradient, which includes the first gradient,
H
i
-
L
i
1
, is stated as performed by the camera processor (edge device).
Applicant further argues "Additionally, the cited metric is not a "gradient value" that "represents a change of the input data... based on a change in the configuration setting.""
Examiner respectfully disagrees. Du states on page 4 in regards to the equation including the first gradient value,
H
i
-
L
i
1
, "i, L, and H denote a pixel within B, the low-quality encoded frame, and the high-quality encoded frame, respectively." Therefore,
H
i
and
L
i
are the input data.
H
i
-
L
i
1
therefore measures a change in the input data. As the two configuration settings, low-quality and high-quality, are also represented by
H
i
, which is the high-quality encoded frame, and
L
i
, which is the low-quality encoded frame, the first gradient represents a change of the input data based on a change in the configuration setting.
Applicant further argues "Similarly, Du is silent with respect to "causing an edge server... to determine, using a neural network by a second processor, a second gradient value" that "indicates a change of inference data based on the change of the input data." Rather, similar to the purported “first gradient value,” Du makes no indication that the
∂
A
c
c
(
D
X
;
D
H
)
∂
X
i
metric is generated by a second, different processor."
Examiner respectfully disagrees. Du states on page 4 in reagrds to the equation including the second gradient value,
∂
A
c
c
(
D
X
;
D
H
)
∂
X
i
, that “
D
denotes the server-side DNN inference function,
A
c
c
(
D
X
;
D
H
)
is the accuracy of inference result on X (i.e., its similarity with the inference result on the high-end quality frame
D
(
H
)
), and
⋅
1
is the L1-norm.” Therefore, as at least part of the second gradient value is performed on the server, including
D
, the second gradient is generated by a second, different processor (the server-side processor).
Therefore, as Du teaches each limitation in the independent claims challenged by Applicant, the dependent claims are also not allowable. See 35 U.S.C. 102 and 35 U.S.C. 103 rejections below.
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.
Claim(s) 1, 3-5, 7, 8, 10-12, 14, 15, and 17-19 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Du (“AccMPEG: Optimizing Video Encoding for Video Analytics”, 2022).
Du was made available by the applicant through the IDS.
Regarding claim 1, Du teaches
A method for updating configuration setting associated with capturing content using an Internet-of-Things (IoT) device, including a first processor, of a plurality of IoT devices as at least a part of edge computing system, the method comprising: (Page 4 states "In this section, we present AccMPEG, a new video encoding algorithm that uses a cheap camera-side model to decide which regions should be encoded in higher quality." The encoding quality is interpreted as the configuration setting. The camera is interpreted as the IoT device as it is a separate device connected to the server. Page 2 states "Using videos of three different genres, three typical vision tasks (object detection, semantic segmentation, and keypoint detection), and five recent off-the-shelf vision DNNs, we show that on two types of edge devices (one CPU or a Jetson Nano) AccMPEG can reduce the inference delay by 10-43% without hurting accuracy compared to various state-of-the-art baselines." The server and the edge devices are interpreted as the edge computing system. The processor of the edge device is interpreted as the first processor. The video captured by the edge devices is interpreted as the captured content.)
receiving, based on a configuration value associated with a configuration setting of the IoT device, input data; (Page 4 states "Figure 3 depicts the workflow of AccMPEG. When a video frame arrives, AccMPEG first feeds it through a cheap quality selector model, called AccModel, to obtain a macroblock-level quality selection—which macroblocks (16x16 blocks, which many modern video codecs (Wiegand et al., 2003) use as the basic encoding unit) should be encoded in high quality and which should be in low quality. The camera then encodes the video frames according to the quality selection and sends the encoded video to the server for the final DNN inference." The capturing and encoding of the video is interpreted as receiving input data, which is associated with the configuration value of the encoding quality.)
determining, by the first processor, a first gradient value, wherein the first gradient value represents a change of the input data from previously received input data based on a change in the configuration setting for capturing content using the IoT device; (Page 4 states "The key idea to address these challenges of is AccModel to obtain the Accuracy Gradient (hereinafter AccGrad) of each macroblock, which measures how much the encoding quality at the macroblock can affect the DNN inference accuracy. Mathematically, the AccGrad of macroblock
B
in a given frame is defined as:
A
c
c
G
r
a
d
B
=
∑
t
∈
B
∂
A
c
c
(
D
X
;
D
H
)
∂
X
i
X
=
L
1
⋅
H
i
-
L
i
1
, where
i
, L, and H denote a pixel within
B
, the low-quality encoded frame, and the high-quality encoded frame, respectively.
D
denotes the server-side DNN inference function,
A
c
c
(
D
X
;
D
H
)
is the accuracy of inference result on X (i.e., its similarity with the inference result on the high-end quality frame
D
(
H
)
), and
⋅
1
is the L1-norm.”
H
i
-
L
i
1
is interpreted as the first gradient value, as it represents a change of the input data
L
from previously received input data
H
based on the configuration of encoding quality.)
causing an edge server of the edge computing system to determine, using a neural network by a second processor, a second gradient value, wherein the second gradient value indicates a change of inference data based on the change of the input data, wherein the first processor and the second processor are distinct; (Page 7 states "In contrast, AccMPEG calculates the AccGrads on each training image first (using Equation 1), which requires only one forward and backward propagation of D on the high-quality version of the image." As stated above,
A
c
c
(
D
X
;
D
H
)
, a part of Equation 1, is the accuracy of inference result based on X, equal to the input data
L
. Thus,
∂
A
c
c
(
D
X
;
D
H
)
∂
X
i
is interpreted as the second gradient value. Page 7 states "To fairly compare the encoding delay of different methods, we benchmark the encoding delay on one Intel Xeon Silver 4100 CPU and run the encoding of AccMPEG and baselines everytime the camera reads 10 frames for its current video chunk (we also benchmark the performance of AccMPEG on baselines on Jetson Nano, a cheap GPU device (with one 128-core Maxwell GPU, one Quad-core ARM A57 CPU and 4GB memory (ChameleonHardware, 2021)))7 provided in the Chameleon testbed (Keahey et al., 2020)). We use openVINO to accelerate8 all camera-side DNNs on CPUs." Page 9 states "We train --AccModel offline on the server with 8 GeForce RTX 2080 SUPER GPU. In the online encoding phase, we run the decoding on Intel Xeon Silver 4100 CPU and run the inference on GeForce RTX 2080 SUPER GPU." Therefore, the first camera-side encoding/AccGrad calculation is done on a different processor than the server-side DNN training and inference.)
updating, based at least on a combination of the first gradient value and the second gradient value, the configuration value associated with the configuration setting for adjusting an input operation of the IoT device, wherein the combination of the first gradient value and the second gradient value represents an anticipated change of inference data over a change in the configuration value associated with the configuration setting of the IoT device, and wherein the updating results in improving inferencing of the input data by adjusting the configuration setting of the IoT device; and (Equation 1, the calculation of AccGrad, combines the first gradient and the second gradient value, “
A
c
c
G
r
a
d
B
=
∑
t
∈
B
∂
A
c
c
(
D
X
;
D
H
)
∂
X
i
X
=
L
1
⋅
H
i
-
L
i
1
”. Page 4 states "The key idea to address these challenges of AccModel is to obtain the Accuracy Gradient (hereinafter AccGrad) of each macroblock, which measures how much the encoding quality at the macroblock can affect the DNN inference accuracy." Therefore, the combination represents an anticipated change of the inference data accuract over the change in the configuration value (high/low encoding quality). Page 6 states "Given macroblock-level AccGrad of a frame, AccMPEG then uses a threshold to determine which macroblocks should be in high quality—all blocks B with
A
c
c
G
r
a
d
B
≥
α
will be encoded in high quality." Therefore, the determination of high/low quality is interpreted as the updating. Page 11 states "In this work, we present AccMPEG, a new video codec for video analytics that improves the tradeoffs between inference accuracy and compression efficiency for a variety of computer vision tasks. It does so by treating any vision DNN as a differentiable black box and infers the accuracy gradients to identify where in the frame the DNN’s inference result is highly sensitive to the encoding quality level and thus needs to be encoded with high quality." Thus, the updating improves the inference pipeline by adjusting the configuration.)
receiving, based on the updated configuration value using the IoT device, subsequent input data. (Page 6 states "We further reduce AccModel’s compute overhead by running it once every k frames and using its output to encode the next k frames (by default, k = 10). Empirically, it significantly reduces the camera-side overhead (Figure 9) without much impact on accuracy." The next time AccModel is run, it will receive the next k frames based on the encoding quality, which are interpreted as the subsequent input data.)
Regarding claim 3, the rejection of claim 1 is incorporated herein. Du teaches
wherein the first gradient value includes an input-configuration gradient, wherein the input-configuration gradient indicates a degree of change in the input data based on updating the configuration value. (Page 4 states "The key idea to address these challenges of is AccModel to obtain the Accuracy Gradient (hereinafter AccGrad) of each macroblock, which measures how much the encoding quality at the macroblock can affect the DNN inference accuracy. Mathematically, the AccGrad of macroblock
B
in a given frame is defined as:
A
c
c
G
r
a
d
B
=
∑
t
∈
B
∂
A
c
c
(
D
X
;
D
H
)
∂
X
i
X
=
L
1
⋅
H
i
-
L
i
1
, where
i
, L, and H denote a pixel within
B
, the low-quality encoded frame, and the high-quality encoded frame, respectively.
D
denotes the server-side DNN inference function,
A
c
c
(
D
X
;
D
H
)
is the accuracy of inference result on X (i.e., its similarity with the inference result on the high-end quality frame
D
(
H
)
), and
⋅
1
is the L1-norm.”
H
i
-
L
i
1
is interpreted as the first gradient value and the input-configuration gradient, as it indicates a degree of change of the input data
L
from previously received input data
H
based on updating the configuration of encoding quality. A difference between values indicates a change in the input data, and the L1-norm indicates a degree of change.)
Regarding claim 4, the rejection of claim 1 is incorporated herein. Du teaches
wherein the second gradient value includes an inference-input gradient, wherein the inference-input gradient indicates a degree of change in confidence scores associated with inferencing the input data as the input data changes, and wherein the inference-input gradient is based on a saliency associated with the neural network. (Page 4 states "The key idea to address these challenges of is AccModel to obtain the Accuracy Gradient (hereinafter AccGrad) of each macroblock, which measures how much the encoding quality at the macroblock can affect the DNN inference accuracy. Mathematically, the AccGrad of macroblock
B
in a given frame is defined as:
A
c
c
G
r
a
d
B
=
∑
t
∈
B
∂
A
c
c
(
D
X
;
D
H
)
∂
X
i
X
=
L
1
⋅
H
i
-
L
i
1
, where
i
, L, and H denote a pixel within
B
, the low-quality encoded frame, and the high-quality encoded frame, respectively.
D
denotes the server-side DNN inference function,
A
c
c
(
D
X
;
D
H
)
is the accuracy of inference result on X (i.e., its similarity with the inference result on the high-end quality frame
D
(
H
)
), and
⋅
1
is the L1-norm.” Thus,
∂
A
c
c
(
D
X
;
D
H
)
∂
X
i
is interpreted as the second gradient value and the inference-input gradient. A measure of accuracy is a confidence score associated with inferencing the input data. Page 5 states "In contrast, AccGrad by definition can capture such fine distinctions among macroblocks. For instance, the macro blocks surrounding the car’s bounding box (Figure 4(a)) will have high values in Equation 1, because
A
c
c
(
D
X
;
D
H
)
will have a high derivative with respect to the pixels in these macroblocks.” As
A
c
c
D
X
;
D
H
is high when there are distinctions among the macroblock, it is based on a saliency associated with the neural network.)
Regarding claim 5, the rejection of claim 1 is incorporated herein. Du teaches
wherein the combination of the first gradient value and the second gradient value represents an inference-configuration gradient, wherein the inference-configuration gradient indicates a degree of change in confidence scores associated with inferencing the input data based on updating the configuration value. (Page 4 states "The key idea to address these challenges of is AccModel to obtain the Accuracy Gradient (hereinafter AccGrad) of each macroblock, which measures how much the encoding quality at the macroblock can affect the DNN inference accuracy. Mathematically, the AccGrad of macroblock
B
in a given frame is defined as:
A
c
c
G
r
a
d
B
=
∑
t
∈
B
∂
A
c
c
(
D
X
;
D
H
)
∂
X
i
X
=
L
1
⋅
H
i
-
L
i
1
, where
i
, L, and H denote a pixel within
B
, the low-quality encoded frame, and the high-quality encoded frame, respectively.
D
denotes the server-side DNN inference function,
A
c
c
(
D
X
;
D
H
)
is the accuracy of inference result on X (i.e., its similarity with the inference result on the high-end quality frame
D
(
H
)
), and
⋅
1
is the L1-norm.” AccGrad is interpreted as the inference-configuration gradient, as it measures the degree of change to which updating the encoding quality (configuration value) affects inference accuracy, which is a confidence score associated with inferencing the input data.)
Regarding claim 7, the rejection of claim 1 is incorporated herein. Du teaches
receiving, based on the updated configuration value associated with the configuration setting for operating the IoT device, the subsequent input data; and (Page 6 states "We further reduce AccModel’s compute overhead by running it once every k frames and using its output to encode the next k frames (by default, k = 10). Empirically, it significantly reduces the camera-side overhead (Figure 9) without much impact on accuracy." The next time AccModel is run, it will receive the next k frames based on the encoding quality, which are interpreted as the subsequent input data.)
updating, based at least on a combination including a subsequent change in configuration values and a subsequent change in inferencing the subsequent input data, the configuration value of the configuration setting for further operating the IoT device. (Page 6 states "We further reduce AccModel’s compute overhead by running it once every k frames and using its output to encode the next k frames (by default, k = 10). Empirically, it significantly reduces the camera-side overhead (Figure 9) without much impact on accuracy." AccModel is therefore run again with new data, meaning that AccGrad is again obtained for the subsequent data. As AccGrad is based on the inference data, obtaining a different AccGrad value means that the inferencing of subsequent input data has changed. Page 6 states "Given macroblock-level AccGrad of a frame, AccMPEG then uses a threshold to determine which macroblocks should be in high quality—all blocks B with
A
c
c
G
r
a
d
B
≥
α
will be encoded in high quality." Therefore, when the AccGrad values change above/below the threshold, the configuration of encoding quality will also change, which will be used for the next k frames of the IoT camera.)
Regarding claim 8, Du teaches
A system for capturing content using an Internet-of-Things (IoT) device, including a first processor, of a plurality of IoT devices in an edge computing system, the system comprising: (Page 4 states "In this section, we present AccMPEG, a new video encoding algorithm that uses a cheap camera-side model to decide which regions should be encoded in higher quality." The encoding quality is interpreted as the configuration setting. The camera is interpreted as the IoT device as it is a separate device connected to the server. Page 2 states "Using videos of three different genres, three typical vision tasks (object detection, semantic segmentation, and keypoint detection), and five recent off-the-shelf vision DNNs, we show that on two types of edge devices (one CPU or a Jetson Nano) AccMPEG can reduce the inference delay by 10-43% without hurting accuracy compared to various state-of-the-art baselines." The server and the edge devices are interpreted as the edge computing system. The processor of the edge device is interpreted as the first processor. The video captured by the edge devices is interpreted as the captured content.)
a memory; (One of ordinary skill in the art would realize that using a processor requires using a memory, and as this system includes using a processor, a memory must also be present.)
and the first processor configured to execute a method comprising: (Fig. 3 shows that the method is performed on the camera, which is the edge device that uses the processor to perform the steps of the method.)
The remainder of claim 8 recites substantially similar subject matter to claim 1 and is rejected with the same rationale, mutatis mutandis.
Claims 10 and 11 recite substantially similar subject matter to claims 3 and 4 respectively and are rejected with the same rationale, mutatis mutandis.
Regarding claim 12, the rejection of claim 8 is incorporated herein.
wherein the combination of the first gradient value and the second gradient value represents an inference-configuration gradient for adjusting the configuration value of the configuration setting for input operation of the IoT device, wherein the inference-configuration gradient indicates a degree of change in confidence scores associated with inferencing the input data based on updating the configuration value changes. (Page 4 states "The key idea to address these challenges of is AccModel to obtain the Accuracy Gradient (hereinafter AccGrad) of each macroblock, which measures how much the encoding quality at the macroblock can affect the DNN inference accuracy. Mathematically, the AccGrad of macroblock
B
in a given frame is defined as:
A
c
c
G
r
a
d
B
=
∑
t
∈
B
∂
A
c
c
(
D
X
;
D
H
)
∂
X
i
X
=
L
1
⋅
H
i
-
L
i
1
, where
i
, L, and H denote a pixel within
B
, the low-quality encoded frame, and the high-quality encoded frame, respectively.
D
denotes the server-side DNN inference function,
A
c
c
(
D
X
;
D
H
)
is the accuracy of inference result on X (i.e., its similarity with the inference result on the high-end quality frame
D
(
H
)
), and
⋅
1
is the L1-norm.” AccGrad is interpreted as the inference-configuration gradient, as it measures the degree of change to which updating the encoding quality (configuration value) affects inference accuracy, which is a confidence score associated with inferencing the input data. Page 6 states "Given macroblock-level AccGrad of a frame, AccMPEG then uses a threshold to determine which macroblocks should be in high quality—all blocks B with
A
c
c
G
r
a
d
B
≥
α
will be encoded in high quality." Therefore, AccGrad is used for adjusting the configuration value.)
Claim 14 recites substantially similar subject matter to claim 7 and is rejected with the same rationale, mutatis mutandis.
Regarding claim 15, Du teaches
An Internet-of-Things (IoT) device of a plurality of IoT devices in edge computing connected to an edge server, the IoT device comprising: (Page 4 states "In this section, we present AccMPEG, a new video encoding algorithm that uses a cheap camera-side model to decide which regions should be encoded in higher quality." The abstract states "AccMPEG provides a suite of techniques that, given a new server-side DNN, can quickly create a cheap model to infer the accuracy gradient on any new frame in near realtime." The encoding quality is interpreted as the configuration setting. The camera is interpreted as the IoT device as it is a separate device connected to the server. Page 2 states "Using videos of three different genres, three typical vision tasks (object detection, semantic segmentation, and keypoint detection), and five recent off-the-shelf vision DNNs, we show that on two types of edge devices (one CPU or a Jetson Nano) AccMPEG can reduce the inference delay by 10-43% without hurting accuracy compared to various state-of-the-art baselines." The server and the edge devices are interpreted as the edge computing system. The processor of the edge device is interpreted as the first processor. The video captured by the edge devices is interpreted as the captured content.)
a memory; and (One of ordinary skill in the art would realize that using a processor requires using a memory, and as this system includes using a processor, a memory must also be present.)
a first processor configured to execute a method comprising: (Fig. 3 shows that the method is performed on the camera, which is the edge device that uses the processor to perform the steps of the method.)
The remainder of claim 15 recites substantially similar subject matter to claim 1 and is rejected with the same rationale, mutatis mutandis.
Claims 17-19 recite substantially similar subject matter to claims 3-5 respectively and are rejected with the same rationale, mutatis mutandis.
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.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claim(s) 2, 9, and 16 is/are rejected under 35 U.S.C. 103 as being unpatentable over Du (“AccMPEG: Optimizing Video Encoding for Video Analytics”, 2022) as applied to claim 1 above, and further in view of Adib (“Where does edge computing work with 5G?”).
Regarding claim 2, the rejection of claim 1 is incorporated herein. Du teaches
wherein the second processor includes a graphical processing unit associated with a data analytic pipeline of a Multi-access Edge Computing in a … telecommunication network, (Page 3 states "Figure 2. Illustration of video encoding as part of the video analytics pipelines for three example tasks." The components involved in the video analytics pipeline are interpreted as the multi-access edge computing system. "We assume there are 5 video streams sharing a network link with 2.5Mbps bandwidth upload speed (the average upload speed of Sprint LTE connection (OpenSignal, 2018)) and 100ms latency (Wang et al., 2019a)." One of ordinary skill would realize that the server, which uses the second processor, would also be connected to the network link.) and wherein the second processor is distinct from the first processor. (Page 7 states "To fairly compare the encoding delay of different methods, we benchmark the encoding delay on one Intel Xeon Silver 4100 CPU and run the encoding of AccMPEG and baselines everytime the camera reads 10 frames for its current video chunk (we also benchmark the performance of AccMPEG on baselines on Jetson Nano, a cheap GPU device (with one 128-core Maxwell GPU, one Quad-core ARM A57 CPU and 4GB memory (ChameleonHardware, 2021)))7 provided in the Chameleon testbed (Keahey et al., 2020)). We use openVINO to accelerate8 all camera-side DNNs on CPUs." Page 9 states "We train --AccModel offline on the server with 8 GeForce RTX 2080 SUPER GPU. In the online encoding phase, we run the decoding on Intel Xeon Silver 4100 CPU and run the inference on GeForce RTX 2080 SUPER GPU." Therefore, the first camera-side encoding/AccGrad calculation is done on a different processor than the server-side DNN training and inference.)
Du does not appear to explicitly teach
[Multi-access Edge Computing in a] 5g [telecommunication network]
However, Adib—directed to analogous art—teaches
[Multi-access Edge Computing in a] 5g [telecommunication network] (Page 6, Figure 4 shows a multi-access edge computing system, operating in a 5g telecommunication network.)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Du and Adib, because as Adib states on page 5, "To achieve ultra-low latency, necessary for further out use cases like autonomous drones or remote telesurgery, the combination of SG and edge computing will be necessary. This means both a bigger. faster pipe in conjunction with a shorter distance for the data to travel."
Claims 9 and 16 recite substantially similar subject matter to claim 2 and are rejected with the same rationale, mutatis mutandis.
Claim(s) 6, 13, and 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Du (“AccMPEG: Optimizing Video Encoding for Video Analytics”, 2022) as applied to claim 1 above, and further in view of Zhang (“Adaptive Configuration Selection and Bandwidth Allocation for Edge-based Video Analytics”, 2021).
Regarding claim 6, the rejection of claim 1 is incorporated herein. Du does not appear to explicitly teach
wherein the configuration value is associated with an image resolution for capturing content by the IoT device.
However, Zhang—directed to analogous art—teaches
wherein the configuration value is associated with an image resolution for capturing content by the IoT device. (Page 2 states "We formalize the joint configuration selection and bandwidth allocation problem, for optimizing the trade-off between accuracy and energy cost, under a long-term latency constraint. The insight behind our problem is adapting video streams to bandwidth variation and intrinsic dynamics of their contents." Page 3 states "In this subsection, we provide the analytics accuracy models, which captures the relationship between model selection (i.e., resolution) or bandwidth allocation (i.e., frame rate) and accuracy." The video stream is interpreted as the IoT device, and the resolution of the input frames produced by the IoT device is interpreted as the image resolution.)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the present application to combine the teachings of Du and Zhang because, as Zhang states on page 3, "It has been well studied in [29] that a CNN can be compressed to a smaller size at the expense of accuracy. Such techniques include removing some expensive convolutional layers and reducing input image resolution. Thus in our design, a CNN with a lower input image resolution has a faster processing speed (i.e., smaller
s
i
) and needs less computational resources (i.e., smaller
c
i
)."
Claims 13 and 20 recite substantially similar subject matter to claim 6 and are rejected with the same rationale, mutatis mutandis.
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JESSICA THUY PHAM whose telephone number is (571)272-2605. The examiner can normally be reached Monday - Friday, 9 A.M. - 5:00 P.M..
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, Li Zhen can be reached at (571) 272-3768. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/J.T.P./Examiner, Art Unit 2121
/Li B. Zhen/Supervisory Patent Examiner, Art Unit 2121