DETAILED ACTION
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 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.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103, which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-12 are rejected under 35 U.S.C. 103 as being unpatentable over US 20180268570 A1 (Budagavi), in view of US 7224729 B1 (Jiang) and in further view of US 20060050793 A1 (Wang).
Regarding Claims 1 and 5:
An image encoding apparatus (Budagavi: Figs. 1-3 a system configuration for point cloud and mesh compression; Figs. 5-8 further illustrate various encoder and decoder structures, and Figs. 13-14 illustrate processing flows), comprising: circuitry configured to divide octree data into a plurality of data groups, the octree data representing a three-dimensional structure that corresponds to an image, the plurality of groups corresponding to respective types of image data representing the three-dimensional structure, the types of image data representing the three-dimensional structure including geometry data and attribute data (Budagavi: par. 78-84, : "The input of the point cloud 502 enters the encoder 500 and is mapped by the decompose point cloud 504. In certain embodiments, the decompose point cloud is similar to a demultiplexer as it separates various features of the received input. For example, the decompose point cloud 504 can separate the geometry of the point cloud, and other attributes of the point cloud." ; “In certain embodiments, the auxiliary information generated by the auxiliary information generator 514 can be encoded by non-video-based encoding methods, such as octree.").
generate a divided bitstream by encoding the plurality of data groups into a respective plurality of bitstreams, wherein the plurality of bitstreams includes a geometry bitstream and an attribute bitstream corresponding to the geometry data and the attribute data respectively, and wherein each of the plurality of bitstreams including a bitstream-specific header (Budagavi: teaches encoding the divided data into respective geometry and attribute bitstreams; e.g., par. 101-102, The multiplexer 612 combines the X, Y, and Z geometry components (coordinates) and the R, G, and B color components into a single bitstream 614; par.116, "The geometry frame 706 represents a 2-D video picture containing the geometric attributes... video encoder 714 receives the 2-D video picture containing the geometric attributes and compresses the video... similarly, the color frame 708 represents a 2-D video picture containing the color attributes... video encoder 716 receives the 2-D video picture containing the color attributes and compresses the video..."):
Budagavi does not teach explicitly on generating bitstreams wherein each bitstream includes a bitstream-specific header. However, Wang teaches (Wang: e.g., par. 4-7 and 15, "The bitstream for each layer typically consists of a header and associated data").
It would have been obvious for one of ordinary skill in the art before the effective filling date of the claimed invention was made to modify Budagavi with generating bitstreams wherein each bitstream includes a bitstream-specific header as further taught by Wang. The advantage of doing so is to a picture header in the picture layer before the slices for improving the compression efficiency in video coding (Wang: Summary of Invention).
Budagavi does not teach explicitly on generate, for each of the plurality of bitstreams, a bitstream-specific separator, each of the bitstream-specific separators having a unique bit pattern that is related to a size of a respective bitstream. However, Jang teaches.
generate, for each of the plurality of bitstreams, a bitstream-specific separator, each of the bitstream-specific separators having a unique bit pattern that is related to a size of a respective bitstream (Jang: (41) "MO_start_code: This is a unique 16-bit code which is used for synchronization. The value of this code is always 0000 0000 0010 0000."; Wang teaches providing start codes (separators) related to the size and boundary of the structural layer parameters, e.g., Wang: par 16, "sequence_parameter_set_start_code... picture_parameter_set_start_code... slice_start_code", which delineate the structural sizes of the parameter sets; Wang: par. 39, "To support the two types of parameter set sub-routines… two unique start codes are used: sequence parameter set start code and picture parameter set start code. Each of these start codes must be different from any other start code, including the bitstream end code."); and
It would have been obvious for one of ordinary skill in the art before the effective filling date of the claimed invention was made to modify Budagavi with generate, for each of the plurality of bitstreams, a bitstream-specific separator, each of the bitstream-specific separators having a unique bit pattern that is related to a size of a respective bitstream as further taught by Jang. The advantage of doing so is to provide a mechanism to enable partial reconstruction before the entire bit stream is transmitted, and overcome inefficiency in that even when a very small portion of data is damaged by an error of a communications line caused upon transmission, the entire mesh data must be transmitted again (Jang: Background).
generate one bitstream by sequentially multiplexing all of the plurality of bitstreams, each of the plurality of bitstreams in the one bitstream being preceded by the respective bitstream-specific separator (Budagavi: teaches multiplexing the bitstreams, e.g., par. 116 "The multiplexer 722 combines the individually compressed frames to generate a bitstream 724."; Wang teaches sequentially multiplexing bitstreams preceded by separators (start codes), e.g., Wang: par. 4-7, "Each header of a slice or higher layer starts with a start code for resynchronization and identification. This structure... is called the start code based bitstream structure."),
wherein the geometry bitstream is further divided into a plurality of geometry sub-bitstreams, each of the plurality of geometry sub-bitstreams representing respective resolutions different from each other (Jang teaches dividing 3D mesh information into sub-bitstreams representing different resolutions (base vs. refinement layers), e.g., Jang Description (16): "The 3-D mesh object (MO) can be comprised of mesh object layers (MOLs) obtained by dividing information in the mesh into layers."; and Jang (44): "mol_id: This unsigned 8-bit integer indicates a unique identifier for the mesh object layer (MOL). A value of 0 indicates a base layer, and a value larger than 0 indicates a refinement layer."), and
wherein the attribute bitstream is further divided into a plurality of attribute sub-bitstreams including a respective attribute sub-bitstream-specific header, the plurality of attribute sub-bitstreams being preceded by the respective attribute sub-bitstream-specific separator, each attribute sub-bitstream-specific separator having a unique bit pattern that is related to a size of a respective attribute sub-bitstream (Budagavi teaches dividing the attribute bitstream into sub-bitstreams, e.g., par. 81, "In certain embodiments, the attributes frame 508 can include multiple frames. For example, the each individual attribute frame can indicate a color, normal, texture coordinates, material properties, intensity, and the like." Wang teaches placing specific headers and start code separators (unique bit patterns) in front of sub-bitstreams (slices/layers), Wang: e.g., par. 5, "The bitstream for each layer typically consists of a header and associated data. Each header of a slice or higher layer starts with a start code for resynchronization and identification").
Regarding Claims 2 and 6, Budagavi as modified further teaches:
The image encoding apparatus according to claim 1, wherein the plurality of the bitstreams includes a first bitstream and a second bitstream representing a first resolution and a second resolution, respectively, and the circuitry is configured to divide the first bitstream and the second bitstream on a basis of a corresponding data size of the first bitstream (Jang: Description (44), "A value of 0 indicates a base layer, and a value larger than 0 indicates a refinement layer."; (16): "independent mesh information is synthesized or divided according to the size of data to be coded and other characteristics, and the results are defined as MCOMs.", which illustrate dividing the bitstream based on resolution (base vs. refinement layer) and corresponding data size).
Regarding Claims 3 and 7, Budagavi as modified further teaches:
The image encoding apparatus according to claim 1, wherein each of the bitstream-specific separators further comprise position information indicating a position of a part of the three-dimensional structure of the octree data corresponding to the respective bitstream (Budagavi: e.g., par 154, "A bounding box is a box that is defined by the top left pixel and width and height of the bounding box... The syntax of unsigned short int attr_box_left;” can be used to indicate the top index of the top left portion of a bounding box." Wang teaches providing identification and position parameters directly following the start code (separator), e.g., Wang par. 15-17: "picture_parameter_set( ) { picture_parameter_set_start_code picture_parameter_set_id...", which teaches inserting position metadata (bounding boxes) into the bitstream for attribute mapping).
Regarding Claims 4 and 8, Budagavi as modified further teaches:
The image encoding apparatus according to claim 1, wherein the circuitry is configured to generate the plurality of bitstreams by converting the octree data into 2D data representing a two-dimensional structure, and dividing and encoding the 2D data on a basis of the two-dimensional structure (Budagavi: par. 39 and 94, "For example, the point cloud can be deconstructed and mapped onto a 2-D frame. The 2-D frame can be compressed using various video or image or both compression."; "mapping 604 maps the geometry and the color components of the point cloud to images that are then encoded using an image or video codec", which teaches converting the 3D data into 2D structures for encoding).
Regarding Claims 9 and 12, Budagavi as modified further teaches:
An image decoding apparatus comprising: circuitry configured to acquire one bitstream that has been formed by sequentially multiplexing a plurality of bitstreams, each of the plurality of bitstreams in the one bitstream including a bitstream-specific header and being preceded by a respective bitstream-specific separator, each of the bitstream-specific separators having a unique bit pattern that is related to a size of a respective bitstream (Budagavi teaches decoding a sequentially multiplexed bitstream, e.g., par 117, "The decoder 750 extracts the geometry and attribute values from the bitstream 724 by demultiplexer 752. The demultiplexer 752 splits the bitstream 724 into the four compressed frames." Jang teaches the separators and headers on the decoding side, Jang Description (19): "The compressed bit stream transmitted to the decoding unit 209 is classified into MOLs, and each MOL is again divided into mesh components (MCOMs) by the DMUX 205.");
based on the bitstream-specific separators, demultiplex the plurality of bitstreams into individual bit streams, the individual bit streams including a geometry bitstream and an attribute bitstream respectively corresponding to geometry data and attribute data of octree data that represents a three-dimensional structure that corresponds to an image (Budagavi teaches demultiplexing geometry and attribute data, e.g., par 108: "Decoder 650 extracts the geometry and attribute bitstreams from the bitstream 614 by demultiplexer 652."),
wherein the geometry bitstream is further divided into a plurality of geometry sub-bitstreams including a respective geometry sub-bitstream-specific header, each of the plurality of geometry sub-bitstreams representing respective resolutions different from each other, and wherein the attribute bitstream is further divided into a plurality of attribute sub-bitstreams including a respective attribute sub-bitstream-specific header, each of the plurality of attribute sub-bitstreams being preceded by the respective attribute sub-bitstream-specific separator, each attribute sub-bitstream-specific separator having a unique bit pattern that is related to a size of a respective attribute sub-bitstream, and wherein the demultiplexing includes demultiplexing based on the attribute sub-bitstream-specific separators; and decode the individual bit streams to reconstitute the image (Jang: (19), "The compressed bit stream transmitted to the decoding unit 209 is classified into MOLs, and each MOL is again divided into mesh components (MCOMs) by the DMUX 205... The decoded mesh components (MCOMs) are reconstructed by the 3-D data synthesizer 208 into a 3-D mesh 110.", which teaches demultiplexing based on resolution/layers and decoding them to reconstitute the original 3D object; Wang teaches decoding utilizing the headers and start codes (separators), e.g., Wang par 56, "In the receive side, as shown in FIG. 6, encoded pictures 802 received in a processor 810 are decoded to form uncompressed pictures... The decoder 80 also includes a software program 842 embedded in a ROM 840 for using the parameter sets and the picture header in the picture layer in the decoding process").
Regarding Claim 10, Budagavi as modified further teaches:
The image decoding apparatus according to claim 9, wherein the geometry bitstream and the attribute bitstream are each formed by converting the octree data representing the three-dimensional structure that corresponds to the image into 2D data representing a two-dimensional structure and by dividing corresponding parts of the 2D data on a basis of a divided bitstream data size (Budagavi: par. 92, "The reconstruction engine 560 reconstructs the three-dimensional shape of the point cloud based on the decompressed 2-D frames...", which teaches mapping to 2D frames, and Jang teaches dividing based on data size; Jang: (16), "independent mesh information is synthesized or divided according to the size of data to be coded").
Regarding Claim 11, Budagavi as modified further teaches:
The image decoding apparatus according to claim 9, wherein each bitstream-specific separator further comprises position information indicating a position of a respective bitstream in the one bitstream (Wang: par. 15-17, "picture_parameter_set( ) { picture_parameter_set_start_code picture_parameter_set_id...", which teaches embedding identifiers directly following the start code separators to indicate layer position/parameters).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ZHITONG CHEN whose telephone number is (571) 270-1936. The examiner can normally be reached on M-F 9:30am - 5pm.
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, Yuwen Pan can be reached on 571-272-7855. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/ZHITONG CHEN/
Primary Examiner, Art Unit 2649