Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Rejections - 35 USC § 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 1-20 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.
Claims 1, 8, and 15 recited the limitation “…to-be-processed image ….”, however “to-be-processed image” is not something previously known in the art and is not well described in the claims. Therefore, the claims 1-20 are indefinite and are rejected under 35 U.S.C. 112(b) or pre-AIA 35 U.S.C. 112, second paragraph.
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.
Claim(s) 1, 8, 15 is/are rejected under 35 U.S.C. 103 as being unpatentable over Huang et al. (CN 109190533) in view of Stitch et al. (US 20230360321).
Regarding claim 1:
A data transmission method (Huang [Pg 11 Par 4] acquiring the first image and the process of the second image, specifically as follows: the second original image of the first original image and the second camera of first imaging head 862 collecting 864 collecting will be transmitted to the image processor 866, then by the image processor 866, the first original image and the second original image to the camera calibration module 844.),
applied to a virtual reality device (Stitch [0081] In other words, the computing device of FIG. 8 is merely illustrative. Distinction is not made between such categories as “workstation,” “server,” “laptop,” “desktop,” “tablet,” “client device,” “mobile device,” “hand-held device,” “game console,” “electronic control unit (ECU),” “virtual reality system,” and/or other device or system types, as all are contemplated within the scope of the computing device of FIG. 8.),
wherein the virtual reality device comprises an application layer (Huang [Pg 11 Par 2] As shown in FIG. 8, the software framework comprises an application layer 80),
a service layer (Huang [Pg 11 Par 2] FIG. 8 is a software framework diagram in one embodiment of the image processing method. As shown in FIG. 8, the software framework comprises an application layer 80, a hardware abstraction layer (Hardware Abstraction Layer (HAL) 82, kernel (Kernel) layer 84 and hardware (Hardware) layer 86. wherein the application 80 comprises an application program 802. hardware abstraction layer 82 comprises interface 822, image synchronization module 824, an image algorithm module 826 and application algorithm module 828. kernel 84 comprises a camera driver 842, a camera calibration module 844 and camera synchronization chart module 846. hardware layer 862 comprises a first camera 862, a second camera 864 and image processor (Image Signal Processor, ISP) 866.),
a hardware abstraction layer (Huang [Pg 11 Par 2] a hardware abstraction layer (Hardware Abstraction Layer (HAL) 82),
and a kernel (Huang [Pg 11 Par 2] kernel (Kernel) layer 84 and hardware (Hardware) layer 86. … kernel 84 comprises a camera driver 842, a camera calibration module 844 and camera synchronization chart module 846. hardware layer 862 comprises a first camera 862, a second camera 864 and image processor (Image Signal Processor, ISP) 866.),
and the data transmission method comprises: sending, by the application layer, an image processing request to the hardware abstraction layer through the service layer, wherein the image processing request comprises a to-be-processed image and a first handle corresponding to the to-be-processed image (Huang [Pg 11 Par 4] acquiring the first image and the process of the second image, specifically as follows: the second original image of the first original image and the second camera of first imaging head 862 collecting 864 collecting will be transmitted to the image processor 866, then by the image processor 866, the first original image and the second original image to the camera calibration module 844. camera calibration module 844 will the first original image and second original image for alignment processing, then the first original image and the second original image after being aligned to the hardware abstraction layer 82. hardware abstraction layer 82 of image synchronization module 824 will collect the first original image of the first moment in time and the second moment in time of collecting a second raw image, the first original image and the second original image is acquired at the same time. if it is, it will by image algorithm module 826 calculates to obtain the first image according to the first original image, and calculating the second according to the original image to obtain the second image. processing the first image and the second image by applying the algorithm module 828 to pack, then the packed after processing of the first image and the second image through the interface 822 to the application program 802. The application program 802 after obtaining the first image and the second image, it is possible according to the first image and the second image for three-dimensional modeling processing.);
determining, by the hardware abstraction layer, a second handle corresponding to the first handle, and establishing a mapping relationship among the first handle, the to-be-processed image, and the second handle (Stitch [Claim 5] The method of claim 1, further comprising providing, using the first processing unit, one or more pointers to the second processing unit, the one or more pointers corresponding to one or more portions of the shader binding table in the memory of the second processing unit, wherein the second processing unit uses the one or more pointers to perform the one or more operations to render the image.);
sending, by the hardware abstraction layer, the mapping relationship to the kernel (Stitch [Claim 5] The method of claim 1, further comprising providing, using the first processing unit, one or more pointers to the second processing unit, the one or more pointers corresponding to one or more portions of the shader binding table in the memory of the second processing unit, wherein the second processing unit uses the one or more pointers to perform the one or more operations to render the image.);
and after the kernel completes processing of the to-be-processed image, sending, by the kernel, first notification data to the application layer based on the first handle, and sending second notification data to the hardware abstraction layer based on the second handle, wherein the first notification data is used to notify the application layer that the processing of the to-be-processed image is completed, and the second notification data is used to notify the hardware abstraction layer that the processing of the to-be-processed image is completed (Huang [Pg 13 Par 5] the image processing apparatus into each module only for illustration, in other embodiments, the image processing apparatus can be divided into different modules according to the need so as to complete all or part of functions of the image processing device.).
Before the effective filing date of the claimed invention, it would have been obvious to a person having ordinary skill in the art to combine the teachings of Huang with Stitch. Having multiple pointers pointing to something that can be spread out between different hardware layers, as in Stitch, would benefit the Huang teachings by allowing for ways to have each layer not have to pass an image down, but rather pass down different handles or pointers to that image. Additionally, this is the application of a known technique, passing pointers instead of images, to yield predictable results.
Regarding claim 8:
An electronic device, comprising at least one processor and a memory, wherein the memory stores a computer-executable instruction (Huang [Pg 2 Par 12] The invention claims an electronic device, comprising a memory and a processor, the memory storing a computer program, the computer program when executed by the processor, cause the processor to perform the following steps.);
and the at least one processor executes the computer-executable instruction stored in the memory, such that the at least one processor executes steps of: sending, by an application layer of the device, an image processing request to a hardware abstraction layer of the device through a service layer of the device, wherein the image processing request comprises a to-be-processed image and a first handle corresponding to the to-be-processed image (Huang [Pg 11 Par 4] acquiring the first image and the process of the second image, specifically as follows: the second original image of the first original image and the second camera of first imaging head 862 collecting 864 collecting will be transmitted to the image processor 866, then by the image processor 866, the first original image and the second original image to the camera calibration module 844. camera calibration module 844 will the first original image and second original image for alignment processing, then the first original image and the second original image after being aligned to the hardware abstraction layer 82. hardware abstraction layer 82 of image synchronization module 824 will collect the first original image of the first moment in time and the second moment in time of collecting a second raw image, the first original image and the second original image is acquired at the same time. if it is, it will by image algorithm module 826 calculates to obtain the first image according to the first original image, and calculating the second according to the original image to obtain the second image. processing the first image and the second image by applying the algorithm module 828 to pack, then the packed after processing of the first image and the second image through the interface 822 to the application program 802. The application program 802 after obtaining the first image and the second image, it is possible according to the first image and the second image for three-dimensional modeling processing.);
determining, by the hardware abstraction layer, a second handle corresponding to the first handle, and establishing a mapping relationship among the first handle, the to-be-processed image, and the second handle (Stitch [Claim 5] The method of claim 1, further comprising providing, using the first processing unit, one or more pointers to the second processing unit, the one or more pointers corresponding to one or more portions of the shader binding table in the memory of the second processing unit, wherein the second processing unit uses the one or more pointers to perform the one or more operations to render the image.);
sending, by the hardware abstraction layer, the mapping relationship to a kernel of the device (Stitch [Claim 5] The method of claim 1, further comprising providing, using the first processing unit, one or more pointers to the second processing unit, the one or more pointers corresponding to one or more portions of the shader binding table in the memory of the second processing unit, wherein the second processing unit uses the one or more pointers to perform the one or more operations to render the image.);
and after the kernel completes processing of the to-be-processed image, sending, by the kernel, first notification data to the application layer based on the first handle, and sending second notification data to the hardware abstraction layer based on the second handle, wherein the first notification data is used to notify the application layer that the processing of the to-be-processed image is completed, and the second notification data is used to notify the hardware abstraction layer that the processing of the to-be-processed image is completed (Huang [Pg 13 Par 5] the image processing apparatus into each module only for illustration, in other embodiments, the image processing apparatus can be divided into different modules according to the need so as to complete all or part of functions of the image processing device.).
Before the effective filing date of the claimed invention, it would have been obvious to a person having ordinary skill in the art to combine the teachings of Huang with Stitch. Having multiple pointers pointing to something that can be spread out between different hardware layers, as in Stitch, would benefit the Huang teachings by allowing for ways to have each layer not have to pass an image down, but rather pass down different handles or pointers to that image. Additionally, this is the application of a known technique, passing pointers instead of images, to yield predictable results.
Regarding claim 15:
A non-transitory computer-readable storage medium storing a computer-executable instruction (Huang [Pg 2 Par 17] A computer readable storage medium on which a computer program is stored, wherein the computer program when executed by a processor implement the following step:), wherein a processor executes the computer-executable instruction to execute steps of:
sending, by an application layer of a virtual reality device, an image processing request to a hardware abstraction layer of the virtual reality device through a service layer of the virtual reality device, wherein the image processing request comprises a to-be-processed image and a first handle corresponding to the to-be-processed image (Huang [Pg 11 Par 4] acquiring the first image and the process of the second image, specifically as follows: the second original image of the first original image and the second camera of first imaging head 862 collecting 864 collecting will be transmitted to the image processor 866, then by the image processor 866, the first original image and the second original image to the camera calibration module 844. camera calibration module 844 will the first original image and second original image for alignment processing, then the first original image and the second original image after being aligned to the hardware abstraction layer 82. hardware abstraction layer 82 of image synchronization module 824 will collect the first original image of the first moment in time and the second moment in time of collecting a second raw image, the first original image and the second original image is acquired at the same time. if it is, it will by image algorithm module 826 calculates to obtain the first image according to the first original image, and calculating the second according to the original image to obtain the second image. processing the first image and the second image by applying the algorithm module 828 to pack, then the packed after processing of the first image and the second image through the interface 822 to the application program 802. The application program 802 after obtaining the first image and the second image, it is possible according to the first image and the second image for three-dimensional modeling processing.);
determining, by the hardware abstraction layer, a second handle corresponding to the first handle, and establishing a mapping relationship among the first handle, the to-be-processed image, and the second handle (Stitch [Claim 5] The method of claim 1, further comprising providing, using the first processing unit, one or more pointers to the second processing unit, the one or more pointers corresponding to one or more portions of the shader binding table in the memory of the second processing unit, wherein the second processing unit uses the one or more pointers to perform the one or more operations to render the image.);
sending, by the hardware abstraction layer, the mapping relationship to a kernel of the virtual reality device (Stitch [Claim 5] The method of claim 1, further comprising providing, using the first processing unit, one or more pointers to the second processing unit, the one or more pointers corresponding to one or more portions of the shader binding table in the memory of the second processing unit, wherein the second processing unit uses the one or more pointers to perform the one or more operations to render the image.);
and after the kernel completes processing of the to-be-processed image, sending, by the kernel, first notification data to the application layer based on the first handle, and sending second notification data to the hardware abstraction layer based on the second handle, wherein the first notification data is used to notify the application layer that the processing of the to-be-processed image is completed, and the second notification data is used to notify the hardware abstraction layer that the processing of the to-be-processed image is completed (Huang [Pg 13 Par 5] the image processing apparatus into each module only for illustration, in other embodiments, the image processing apparatus can be divided into different modules according to the need so as to complete all or part of functions of the image processing device.).
Before the effective filing date of the claimed invention, it would have been obvious to a person having ordinary skill in the art to combine the teachings of Huang with Stitch. Having multiple pointers pointing to something that can be spread out between different hardware layers, as in Stitch, would benefit the Huang teachings by allowing for ways to have each layer not have to pass an image down, but rather pass down different handles or pointers to that image. Additionally, this is the application of a known technique, passing pointers instead of images, to yield predictable results.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to DENIS VASILIY MINKO whose telephone number is (571)270-5226. The examiner can normally be reached Monday-Thursday 8:30-6:00 EST.
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 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.
/DENIS VASILIY MINKO/Examiner, Art Unit 2612
/Said Broome/Supervisory Patent Examiner, Art Unit 2612