3D point cloud enhancement with multiple measurements

By utilizing point cloud data and quantizer shift information of multiple measurement results, effective processing and compression of unorganized 3D point cloud data is achieved, and data quality and compression efficiency problems in dynamic scenarios and high capture frequency are solved, improving the quality of data in the environment and the data is of great importance. The quality and accuracy of point cloud data are achieved.

CN115136602BActive Publication Date: 2025-02-25交互数字 VC +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202180016033.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-02-06
Filing Date
2021-02-05
Publication Date
2025-02-25
Estimated Expiration
2041-02-05

AI Technical Summary

Technical Problem

The prior art is difficult to efficiently process and compress unorganized 3D point cloud data, especially in dynamic scenarios and high capture frequencies.

Method used

By obtaining point cloud data of multiple measurement results and refining it with quantizer shift information, denoising and de-quantizing the point cloud data is realized. The specific method includes adding a quantizer shift on the encoder side and combining relevant observations on the decoder side to enhance the reconstruction quality of point cloud data.

Benefits of technology

Improve the quality and accuracy of 3D point cloud data, especially in dynamic scenes and high capture frequency, achieving higher experience quality and more effective compression.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115136602B_ABST
    Figure CN115136602B_ABST
Patent Text Reader

Abstract

Systems and methods are described for refining first point cloud data using at least second point cloud data and one or more sets of quantizer shifts. An exemplary point cloud decoding method includes: obtaining data representing at least a first point cloud and a second point cloud; obtaining information identifying at least a first set of quantizer shifts associated with the first point cloud; and obtaining refined point cloud data based on at least the first point cloud, the first set of quantizer shifts, and the second point cloud. Obtaining the refined point cloud data may include performing a subtraction based on at least the first set of quantizer shifts. Corresponding encoding systems and methods are also described.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application is a non-provisional filing of U.S. Provisional Patent Application No. 62 / 970,956, filed on February 6, 2020, entitled “3D Point Cloud Enhancement with Multiple Measurements,” and claims the benefit of that U.S. Provisional Patent Application under 35 U.S.C. §119(e), which is incorporated herein by reference in its entirety. Background Art

[0003] The present disclosure relates to the field of point cloud processing and compression. The field relates to the analysis, interpolation and representation of point cloud signals.

[0004] As a discrete representation of a continuous surface in 3D space, point clouds can be classified into categories including: organized point clouds, such as those collected by a camera-like 3D sensor or a 3D laser scanner and arranged on a grid; and unorganized point clouds, such as point clouds scanned from multiple viewpoints and subsequently fused together due to their complex structure, resulting in loss of index ordering. Organized point clouds can be easier to process because the underlying grid implies natural spatial connectivity that can reflect the sensed order. In contrast, processing of unorganized point clouds can be more challenging. This is due to the fact that unorganized point clouds are different from 1D voice data or 2D images associated with regular dot matrices. Instead, they tend to be sparsely and irregularly scattered in 3D space; this makes it difficult for traditional lattice-based algorithms to process 3D point clouds. For example, the convolution operator is well defined on regular dot matrices, but cannot be directly applied to 3D point clouds.

[0005] In addition, point clouds can represent sequential representations of the same scene containing multiple moving objects. Compared to static point clouds captured from static scenes or static objects, they are called dynamic point clouds. Dynamic point clouds can be organized into frames, where different frames are captured at different times.

[0006] Point clouds can be used for various purposes, such as representing objects of cultural heritage, where an object like a statue or a building is scanned in 3D in order to share the spatial configuration of the object without sending or visiting the object. Also, this is a way to ensure that knowledge of the object is preserved in cases where it may be destroyed; for example, a temple after an earthquake. Such point clouds are usually static, colored, and tend to include a large number of points.

[0007] Another use case is in topographic maps and cartography, where 3D representations are used and maps are not limited to flat surfaces and can include topographic relief. Google Maps is now a good example of a 3D map, but it typically uses a mesh rather than a point cloud. However, a point cloud can be a suitable data format for a 3D map, and such point clouds are typically static, colored, and often include a large number of points.

[0008] The automotive industry and autonomous vehicle technology are also areas where point clouds can be used. Autonomous vehicles should be able to "probe" their environment to take good driving decisions based on the actual conditions in their immediate vicinity. Typical sensors such as LiDAR produce dynamic point clouds that are used by the decision engine. These point clouds are not intended to be seen by humans, and they are usually small, not necessarily in color, and dynamic with a high capture frequency. The point cloud can have other properties such as reflectivity provided by LiDAR, as this property is a good indicator of the material of the sensed object and can help in making decisions.

[0009] Virtual reality and immersive worlds are gaining more and more attention. Such technologies try to immerse the viewer in the environment around them, rather than just looking at a virtual world in front of them like a standard TV. There are several levels of immersion, depending on the degree of freedom the viewer has in the environment. Point clouds are a good format candidate for distributing virtual reality (or VR) worlds. They can be static or dynamic and are usually of average size, such as no more than millions of points at a time.

[0010] It is desirable to be able to distribute dynamic point clouds to end users at reasonable bitrate consumption while maintaining an acceptable (or preferably very good) quality of experience. Efficient compression of these dynamic point clouds can help make distribution chains for immersive worlds practical. Summary of the invention

[0011] According to some embodiments, a point cloud decoding method includes: obtaining data representing at least a first point cloud and a second point cloud; obtaining information identifying at least a first set of quantizer shifts associated with the first point cloud; and obtaining refined point cloud data based on at least the first point cloud, the first set of quantizer shifts, and the second point cloud.

[0012] According to some embodiments, a point cloud decoder device includes a processor configured to perform at least the following operations: obtain data representing at least a first point cloud and a second point cloud; obtain information identifying at least a first set of quantizer shifts associated with the first point cloud; and obtain refined point cloud data based on at least the first point cloud, the first set of quantizer shifts, and the second point cloud.

[0013] In some embodiments, obtaining the refined point cloud data includes performing a subtraction based on at least a first set of quantizer shifts.

[0014] Some embodiments further include obtaining information identifying a second set of quantizer shifts associated with the second point cloud, the second set of quantizer shifts being different from the first set of quantizer shifts; wherein obtaining the refined point cloud data is also based on the second set of quantizer shifts. In some such embodiments, obtaining the refined point cloud data includes performing a subtraction based on at least the first set of quantizer shifts and the second set of quantizer shifts.

[0015] In some embodiments, the first point cloud represents a left view of the scene and the second point cloud represents a right view of the scene.

[0016] In some embodiments, the first point cloud and the second point cloud are frames associated with different times.

[0017] In some embodiments, the first set of quantizer shifts includes at least a first shift associated with a first point in the first point cloud and a different second shift associated with a second point in the first point cloud.

[0018] In some embodiments, the data representing the first point cloud includes a first parameter (y having a first quantization range 1 ), indicating that the data of the second point cloud includes a second parameter (y having a second quantization range 2 ), and wherein obtaining the refined point cloud data includes obtaining a first parameter (y 1 ) and the second parameter (y 2 ) The third parameter in the quantization range of both

[0019] In some embodiments, based on the first point cloud (y l ) and the second point cloud (y r ) to obtain refined point cloud data (x l ) includes the first point cloud (x) selected for refinement l ) to substantially maximize the product of factors including one or more of the following factors:

[0020] Given the refined first point cloud (x l )’s first point cloud (y l ) l |x l ),

[0021] Given the second refined point cloud (x r ) is the estimated value g(x l )’s second point cloud (y r ) r |g(x l )), where the estimated value g(x l ) Based on the first refined point cloud (x l ),

[0022] The first refined point cloud data (x l ) of the prior probability Pr(x l ),and

[0023] The second refined point cloud (x r ) is the estimated value g(x l ) of the prior probability Pr(g(x l )).

[0024] According to some embodiments, a point cloud encoding method includes: obtaining data representing at least a first point cloud and a second point cloud; quantizing the first point cloud and the second point cloud, wherein the quantized point cloud data includes adding at least a first set of quantizer shifts to the first point cloud data; and encoding the quantized first point cloud and the second point cloud in a bitstream.

[0025] According to some embodiments, a point cloud encoding device includes a processor configured to perform at least the following operations: obtain data representing at least a first point cloud and a second point cloud; quantize the first point cloud and the second point cloud, wherein the quantized point cloud data includes adding at least a first set of quantizer shifts to the first point cloud data; and encode the quantized first point cloud and second point cloud in a bitstream.

[0026] Some embodiments further include encoding information indicative of the first set of quantizer shifts in the bitstream.

[0027] In some embodiments, quantizing the first point cloud and the second point cloud further includes adding a second set of quantizer shifts to the second point cloud, and further includes encoding information indicating the second set of quantizer shifts in the bitstream.

[0028] In some embodiments, the first point cloud represents a left view of the scene and the second point cloud represents a right view of the scene.

[0029] In one exemplary embodiment, the method includes: receiving initial first point cloud data (y l ) and at least the initial second point cloud data (y r ); and select the first refined point cloud data (x l ) to substantially maximize the product of factors, wherein the factors include at least: given the refined first point cloud data (x l )’s initial first point cloud data (y l ) l |x l ); Given the refined second point cloud data (x r ) is the estimated value g(x l )’s initial second point cloud data (y r ) r |g(xl )), where the estimated value g(x l ) Based on the refined first point cloud data x l ; The refined first point cloud data (x l ) of the prior probability Pr(x l ); and the refined second point cloud data (x r ) is the estimated value g(x l ) of the prior probability Pr(g(x l )).

[0030] Some embodiments further include, in selecting the refined first point cloud data (x l ) is then subtracted from the refined first point cloud data by the quantizer shift δ l .

[0031] In some embodiments, the process of iteratively selecting the refined first point cloud data (x l ).

[0032] In some embodiments, the refined first point cloud data (x l ) to substantially maximize the product of the factors including selecting the first point cloud data (x l ) to substantially minimize the sum of the negative logarithms of the factors. The selection of the first point cloud data (x) for refinement may be performed using a gradient descent method. l ) to essentially minimize the sum of the negative logarithms of the factors.

[0033] In some embodiments, given the refined first point cloud data (x l )’s initial first point cloud data (y l ) l |x l ) is composed of the initial first point cloud data (y l ) and the refined first point cloud data (x l ) is represented by a linear function of the difference between them.

[0034] In some embodiments, the refined second point cloud data (x r ) is the estimated value g(x l ) is the refined second point cloud data (x r ) is a linear function of .

[0035] In some embodiments, given the refined second point cloud data (x r ) is the estimated value g(x l )’s initial second point cloud data (y r ) r |g(x l ))From the initial second point cloud data (y r) and the refined second point cloud data (x r ) is the estimated value g(x l ) is represented by a linear function of the difference between them.

[0036] In some embodiments, the refined first point cloud data (x l ) of the prior probability Pr(x l )Depend on Indicates that L l is the graph Laplacian matrix.

[0037] In some embodiments, the refined second point cloud data (x r ) is the estimated value g(x l ) of the prior probability Pr(g(x l )) is given by exp(-g(x l ) T L r g(x l ) / σ 2 ) indicates that L r is the graph Laplacian matrix.

[0038] Some embodiments further include receiving the first point cloud data and at least the second point cloud data; and using at least the second point cloud data to refine the first point cloud data. Some such embodiments further include, after refining the first point cloud data, subtracting a quantizer shift from the refined first point cloud data. In some embodiments, the quantizer shift is a predetermined quantizer shift.

[0039] In some embodiments, the encoding method includes: receiving initial first point cloud data and at least initial second point cloud data; adding a first set of quantizer shifts δ to the first point cloud data; 1 The method is to process the initial first point cloud data and the initial second point cloud data; and encode the processed first point cloud data and the second point cloud data.

[0040] In some embodiments, processing the initial first point cloud data and the initial second point cloud data further includes adding a second set of quantizer shifts δ to the second point cloud data. 2 The first group of quantizers is shifted by δ 1 Can be different from the second set of quantizer shift δ 2 .

[0041] In some embodiments, the encoding method further comprises providing for identifying (i) a first set of quantizer shifts δ 1 or (ii) the second set of quantizers is shifted by δ 2 The information of at least one of the first point cloud data and the encoded second point cloud data.

[0042] In some embodiments, the decoding method includes: receiving encoded first point cloud data and at least encoded second point cloud data; receiving at least identifying a first set of quantizer shifts δ 1 decoding the first point cloud data and at least the second point cloud data; using the decoded second point cloud data to refine the decoded first point cloud data; and subtracting the first set of quantizer shifts δ from the first point cloud data 1 .

[0043] In some embodiments, any of the systems or methods described herein can be used to refine depth data in a format other than a point cloud format. For example, the systems and methods described herein can be used to refine depth data (e.g., depth data xl, xr) in RGB-D or other depth map formats.

[0044] Some embodiments of the apparatus include a processor configured to perform at least one or more of the methods described herein.

[0045] Some embodiments of the apparatus include a processor and a computer readable medium storing instructions operable to perform at least one or more of the methods described herein. The computer readable medium may be a non-transitory computer readable medium.

[0046] Some embodiments include a computer readable medium storing point cloud data encoded using one or more of the methods described herein. The medium may be a non-transitory computer readable medium. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] Figure 1A is a system diagram illustrating an exemplary communication system in which one or more disclosed embodiments may be implemented.

[0048] Figure 1B is shown in accordance with the embodiment which can be Figure 1A A system diagram of an exemplary wireless transmit / receive unit (WTRU) for use within a communication system is shown.

[0049] Figure 2A is a schematic diagram providing an example of thinning point cloud data from two independent measurements of the same point.

[0050] Figure 2B is a schematic diagram showing that when two camera views form a stereo turret, depth refinement cannot be achieved if the quantization bins are well aligned.

[0051] Figure 3 is a schematic diagram showing that shifted quantization bins may be used to achieve depth refinement when two camera views form a stereo turret, according to some embodiments.

[0052] Figure 4 is a schematic diagram illustrating that, in the same observation, refinement may be achieved for highly correlated measurements when a shift is introduced to the quantization bins of a single measurement, according to some embodiments.

[0053] Figure 5 An example of a camera system used in some embodiments is shown.

[0054] Figure 6 An example of a linear approximation using a Gaussian distribution is shown.

[0055] Figure 7 is a block diagram of an exemplary encoder for point cloud compression used in some embodiments.

[0056] Figure 8 is a block diagram of a decoder using joint refinement, according to some embodiments.

[0057] Fig. 9 is a block diagram of a decoder when refinement is not applied according to some embodiments.

[0058] Fig.10 is a block diagram illustrating components of a refinement module of a decoder according to some embodiments.

[0059] Fig.11 is a block diagram of a video encoder used in some implementations.

[0060] Fig.12 is a block diagram of a video decoder used in some implementations.

[0061] Fig.13 is a block diagram of an example of a system in which various aspects and embodiments may be implemented.

[0062] Fig.14 is a flowchart of an exemplary point cloud encoding method according to some embodiments.

[0063] Fig.15 is a flowchart of an exemplary point cloud decoding method according to some embodiments.

[0064] Example Network for Implementing Embodiments

[0065] Figure 1A1 is a schematic diagram illustrating an exemplary communication system 100 in which one or more disclosed embodiments may be implemented. The communication system 100 may be a multiple access system that provides content such as voice, data, video, messaging, broadcast, etc. to multiple wireless users. The communication system 100 may enable multiple wireless users to access such content through sharing of system resources (including wireless bandwidth). For example, the communication system 100 may employ one or more channel access methods such as code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA), orthogonal FDMA (OFDMA), single carrier FDMA (SC-FDMA), zero tail unique word DFT spread OFDM (ZT UW DTS-s OFDM), unique word OFDM (UW-OFDM), resource block filtered OFDM, filter bank multi-carrier (FBMC), etc.

[0066] like Figure 1A As shown, the communication system 100 may include wireless transmit / receive units (WTRUs) 102a, 102b, 102c, 102d, RAN 104, CN 106, public switched telephone network (PSTN) 108, Internet 110 and other networks 112, but it should be understood that the disclosed embodiments contemplate any number of WTRUs, base stations, networks, and / or network elements. Each of the WTRUs 102a, 102b, 102c, 102d may be any type of device configured to operate and / or communicate in a wireless environment. By way of example, the WTRUs 102a, 102b, 102c, 102d (any of which may be referred to as a “station” and / or “STA”) may be configured to transmit and / or receive wireless signals and may include a user equipment (UE), a mobile station, a fixed or mobile subscriber unit, a subscription-based unit, a pager, a cellular phone, a personal digital assistant (PDA), a smart phone, a laptop, a netbook, a personal computer, a wireless sensor, a hotspot or Mi-Fi device, an Internet of Things (IoT) device, a watch or other wearable device, a head-mounted display (HMD), a vehicle, a drone, medical devices and applications (e.g., remote surgery), industrial devices and applications (e.g., robots and / or other wireless devices operating in an industrial and / or automated process chain environment), a consumer electronic device, a device operating on a commercial and / or industrial wireless network, etc. Any of the WTRUs 102a, 102b, 102c, and 102d may be interchangeably referred to as a UE.

[0067] The communication system 100 may also include a base station 114a and / or a base station 114b. Each of the base stations 114a, 114b may be any type of device that is configured to wirelessly interface with at least one of the WTRUs 102a, 102b, 102c, 102d to facilitate access to one or more communication networks, such as the CN 106, the Internet 110, and / or other networks 112. By way of example, the base stations 114a, 114b may be a base transceiver station (BTS), a Node B, an eNode B, a Home Node B, a Home eNode B, a gNB, an NR Node B, a site controller, an access point (AP), a wireless router, and the like. While the base stations 114a, 114b are each depicted as a single element, it should be appreciated that the base stations 114a, 114b may include any number of interconnected base stations and / or network elements.

[0068] The base station 114a may be part of the RAN 104, which may also include other base stations and / or network elements (not shown), such as a base station controller (BSC), a radio network controller (RNC), a relay node, etc. The base station 114a and / or the base station 114b may be configured to transmit and / or receive wireless signals on one or more carrier frequencies, which may be referred to as cells (not shown). These frequencies may be in a licensed spectrum, an unlicensed spectrum, or a combination of licensed and unlicensed spectrum. A cell may provide coverage of wireless services to a specific geographic area, which may be relatively fixed or may change over time. The cell may be further divided into cell sectors. For example, a cell associated with the base station 114a may be divided into three sectors. Therefore, in one embodiment, the base station 114a may include three transceivers, one transceiver for each sector of the cell. In one embodiment, the base station 114a may employ multiple-input multiple-output (MIMO) technology and may utilize multiple transceivers for each sector of the cell. For example, beamforming may be used to transmit and / or receive signals in a desired spatial direction.

[0069] The base stations 114a, 114b may communicate with one or more of the WTRUs 102a, 102b, 102c, 102d over an air interface 116, which may be any suitable wireless communication link (e.g., radio frequency (RF), microwave, centimeter wave, micrometer wave, infrared (IR), ultraviolet (UV), visible light, etc.). The air interface 116 may be established using any suitable radio access technology (RAT).

[0070] More specifically, as noted above, the communication system 100 may be a multiple access system and may employ one or more channel access schemes such as CDMA, TDMA, FDMA, OFDMA, SC-FDMA, etc. For example, the base station 114a in the RAN 104 and the WTRUs 102a, 102b, 102c may implement a radio technology such as Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access (UTRA), which may use Wideband CDMA (WCDMA) to establish the air interface 115 / 116 / 117. WCDMA may include communication protocols such as High Speed ​​Packet Access (HSPA) and / or Evolved HSPA (HSPA+). HSPA may include High Speed ​​Downlink (DL) Packet Access (HSDPA) and / or High Speed ​​UL Packet Access (HSUPA).

[0071] In one embodiment, the base station 114a and the WTRUs 102a, 102b, 102c may implement a radio technology such as Evolved UMTS Terrestrial Radio Access (E-UTRA), which may establish the air interface 116 using Long Term Evolution (LTE) and / or Advanced LTE (LTE-A) and / or Advanced LTE Pro (LTE-A Pro).

[0072] In one embodiment, the base station 114a and the WTRUs 102a, 102b, 102c may implement a radio technology such as NR radio access, which may establish the air interface 116 using New Radio (NR).

[0073] In an embodiment, the base station 114a and the WTRUs 102a, 102b, 102c may implement multiple radio access technologies. For example, the base station 114a and the WTRUs 102a, 102b, 102c may implement LTE radio access and NR radio access together, for example using the dual connectivity (DC) principle. Thus, the air interface used by the WTRUs 102a, 102b, 102c may be characterized by multiple types of radio access technologies and / or transmissions sent to / from multiple types of base stations (e.g., eNBs and gNBs).

[0074] In other embodiments, the base station 114a and the WTRUs 102a, 102b, 102c may implement radio technologies such as IEEE 802.11 (Wireless Fidelity (WiFi)), IEEE 802.16 (Worldwide Interoperability for Microwave Access (WiMAX)), CDMA2000, CDMA20001X, CDMA2000 EV-DO, Interim Standard 2000 (IS-2000), Interim Standard 95 (IS-95), Interim Standard 856 (IS-856), Global System for Mobile Communications (GSM), Enhanced Data Rates for GSM Evolution (EDGE), GSM EDGE (GERAN), etc.

[0075] Figure 1A The base station 114b in the may be, for example, a wireless router, a Home NodeB, a Home eNodeB, or an access point, and may utilize any suitable RAT to facilitate wireless connectivity in local areas such as commercial venues, homes, vehicles, campuses, industrial facilities, sky corridors (e.g., for use by drones), roads, and the like. In an embodiment, the base station 114b and the WTRUs 102c, 102d may implement radio technologies such as IEEE 802.11 to establish a wireless local area network (WLAN). In an embodiment, the base station 114b and the WTRUs 102c, 102d may implement radio technologies such as IEEE 802.15 to establish a wireless personal area network (WPAN). In yet another embodiment, the base station 114b and the WTRUs 102c, 102d may utilize a cellular-based RAT (e.g., WCDMA, CDMA2000, GSM, LTE, LTE-A, LTE-A Pro, NR, etc.) to establish a picocell or a femtocell. As Figure 1A As shown, the base station 114 b may have a direct connection to the Internet 110. Thus, the base station 114 b may not need to access the Internet 110 via the CN 106.

[0076] The RAN 104 may be in communication with the CN 106, which may be any type of network configured to provide voice, data, applications, and / or Voice over Internet Protocol (VoIP) services to one or more of the WTRUs 102a, 102b, 102c, 102d. The data may have different quality of service (QoS) requirements, such as different throughput requirements, delay requirements, error tolerance requirements, reliability requirements, data throughput requirements, mobility requirements, etc. The CN 106 may provide call control, billing services, mobile location-based services, pre-paid calling, Internet connectivity, video distribution, etc., and / or perform high-level security functions, such as user authentication. Although not described in detail in the specification, the CN 106 may be configured to provide voice, data, applications, and / or Voice over Internet Protocol (VoIP) services to one or more of the WTRUs 102a, 102b, 102c, 102d. Figure 1AAlthough not shown in the figure, it will be appreciated that the RAN 104 and / or the CN 106 may be in direct or indirect communication with other RANs that employ the same RAT as the RAN 104 or a different RAT. For example, in addition to being connected to the RAN 104, which may utilize NR radio technology, the CN 106 may also be in communication with another RAN (not shown) that employs GSM, UMTS, CDMA 2000, WiMAX, E-UTRA, or WiFi radio technology.

[0077] The CN 106 may also act as a gateway for the WTRUs 102a, 102b, 102c, 102d to access the PSTN 108, the Internet 110, and / or other networks 112. The PSTN 108 may include a circuit-switched telephone network that provides plain old telephone service (POTS). The Internet 110 may include a global system of interconnected computer networks and devices that use common communication protocols, such as the Transmission Control Protocol (TCP), the User Datagram Protocol (UDP), and / or the Internet Protocol (IP) in the TCP / IP Internet protocol suite. The networks 112 may include wired and / or wireless communication networks owned and / or operated by other service providers. For example, the networks 112 may include another CN connected to one or more RANs, which may employ the same RAT as the RAN 104 or a different RAT.

[0078] Some or all of the WTRUs 102a, 102b, 102c, 102d in the communication system 100 may include multi-mode capabilities (e.g., the WTRUs 102a, 102b, 102c, 102d may include multiple transceivers for communicating with different wireless networks via different wireless links). Figure 1A The illustrated WTRU 102c may be configured to communicate with the base station 114a, which may employ a cellular-based radio technology, and with the base station 114b, which may employ an IEEE 802 radio technology.

[0079] Figure 1B is a system diagram illustrating an exemplary WTRU 102. Figure 1B As shown, the WTRU 102 may include, among other things, a processor 118, a transceiver 120, a transmit / receive element 122, a speaker / microphone 124, a keypad 126, a display / touchpad 128, non-removable memory 130, removable memory 132, a power source 134, a global positioning system (GPS) chipset 136, and / or other peripherals 138. It will be appreciated that the WTRU 102 may include any subcombination of the foregoing elements while remaining consistent with an embodiment.

[0080] The processor 118 may be a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors associated with a DSP core, a controller, a microcontroller, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) circuit, any other type of integrated circuit (IC), a state machine, etc. The processor 118 may perform signal coding, data processing, power control, input / output processing, and / or any other functions that enable the WTRU 102 to operate in a wireless environment. The processor 118 may be coupled to the transceiver 120, which may be coupled to the transmit / receive element 122. Although Figure 1B The processor 118 and the transceiver 120 are depicted as separate components, but it is understood that the processor 118 and the transceiver 120 may be integrated together in an electronic package or chip.

[0081] Transmit / receive element 122 can be configured to transmit signals to or receive signals from a base station (e.g., base station 114a) via air interface 116. For example, in one embodiment, transmit / receive element 122 can be an antenna configured to transmit and / or receive RF signals. In one embodiment, transmit / receive element 122 can be a transmitter / detector configured to transmit and / or receive, for example, IR, UV or visible light signals. In another embodiment, transmit / receive element 122 can be configured to transmit and / or receive both RF and light signals. It should be understood that transmit / receive element 122 can be configured to transmit and / or receive any combination of wireless signals.

[0082] Although the transmit / receive element 122 is Figure 1B 1 as a single element, the WTRU 102 may include any number of transmit / receive elements 122. More specifically, the WTRU 102 may employ MIMO technology. Thus, in one embodiment, the WTRU 102 may include two or more transmit / receive elements 122 (e.g., multiple antennas) for transmitting and receiving wireless signals over the air interface 116.

[0083] The transceiver 120 may be configured to modulate signals to be transmitted by the transmit / receive element 122 and to demodulate signals received by the transmit / receive element 122. As noted above, the WTRU 102 may have multi-mode capabilities. For example, the transceiver 120 may include multiple transceivers to enable the WTRU 102 to communicate via multiple RATs, such as NR and IEEE 802.11.

[0084] The processor 118 of the WTRU 102 may be coupled to a speaker / microphone 124, a keypad 126, and / or a display / touchpad 128 (e.g., a liquid crystal display (LCD) display unit or an organic light emitting diode (OLED) display unit) and may receive user input data therefrom. The processor 118 may also output user data to the speaker / microphone 124, the keypad 126, and / or the display / touchpad 128. In addition, the processor 118 may access information from and store data in any type of suitable memory, such as a non-removable memory 130 and / or a removable memory 132. The non-removable memory 130 may include a random access memory (RAM), a read-only memory (ROM), a hard disk, or any other type of memory storage device. The removable memory 132 may include a subscriber identity module (SIM) card, a memory stick, a secure digital (SD) memory card, and the like. In other embodiments, the processor 118 may access information from and store data in a memory that is not physically located on the WTRU 102, such as on a server or a home computer (not shown).

[0085] The processor 118 may receive power from the power source 134, and may be configured to distribute and / or control power to other components in the WTRU 102. The power source 134 may be any suitable device for powering the WTRU 102. For example, the power source 134 may include one or more dry cell batteries (e.g., nickel-cadmium (NiCd), nickel-zinc (NiZn), nickel-metal hydride (NiMH), lithium-ion (Li-ion), etc.), solar cells, fuel cells, etc.

[0086] The processor 118 may also be coupled to the GPS chipset 136, which may be configured to provide location information (e.g., longitude and latitude) regarding the current location of the WTRU 102. In addition to or in lieu of the information from the GPS chipset 136, the WTRU 102 may receive location information from a base station (e.g., base stations 114a, 114b) over the air interface 116 and / or determine its location based on the timing of signals received from two or more nearby base stations. It will be appreciated that the WTRU 102 may acquire location information by any suitable location-determination method while remaining consistent with an embodiment.

[0087] The processor 118 may also be coupled to other peripherals 138, which may include one or more software modules and / or hardware modules that provide additional features, functionality, and / or wired or wireless connectivity. For example, the peripherals 138 may include an accelerometer, an electronic compass, a satellite transceiver, a digital camera (for photos and / or video), a universal serial bus (USB) port, a vibration device, a television transceiver, a hands-free headset, module, a frequency modulation (FM) radio unit, a digital music player, a media player, a video game player module, an Internet browser, a virtual reality and / or augmented reality (VR / AR) device, an activity tracker, etc. The peripheral device 138 may include one or more sensors, which may be one or more of the following: a gyroscope, an accelerometer, a Hall effect sensor, a magnetometer, an orientation sensor, a proximity sensor, a temperature sensor, a time sensor; a geolocation sensor; an altimeter, a light sensor, a touch sensor, a magnetometer, a barometer, a gesture sensor, a biometric sensor, and / or a humidity sensor.

[0088] The WTRU 102 may include a full-duplex radio for which transmission and reception of some or all signals (e.g., associated with specific subframes for UL (e.g., for transmission) and downlink (e.g., for reception)) may be concurrent and / or simultaneous. The full-duplex radio may include an interference management unit for reducing and / or substantially eliminating self-interference via hardware (e.g., choke) or via signal processing performed by a processor (e.g., a separate processor (not shown) or via the processor 118). In one embodiment, the WTRU 102 may include a half-duplex radio for which transmission and reception of some or all signals (e.g., associated with specific subframes for UL (e.g., for transmission) or downlink (e.g., for reception)) may be concurrent and / or simultaneous.

[0089] Although the WTRU Figure 1A to Figure 1B Although described as wireless terminals, it is contemplated that in certain representative embodiments, such terminals may (eg, temporarily or permanently) use a wired communications interface with a communications network.

[0090] In a representative embodiment, the other network 112 may be a WLAN.

[0091] Given that Figure 1A to Figure 1B As described above, one or more or all of the functions described herein with reference to one or more of the following may be performed by one or more emulation devices (not shown): the WTRUs 102a-102d, the base stations 114a-114b, and / or any other devices described herein. The emulation devices may be one or more devices configured to emulate one or more or all of the functions described herein. For example, the emulation devices may be used to test other devices and / or simulate network and / or WTRU functions.

[0092] The simulation device may be designed to implement one or more tests of other devices in a laboratory environment and / or an operator network environment. For example, the one or more simulation devices may perform one or more or all functions while being fully or partially implemented and / or deployed as part of a wired and / or wireless communication network in order to test other devices within the communication network. The one or more simulation devices may perform one or more functions or all functions while being temporarily implemented / deployed as part of a wired and / or wireless communication network. The simulation device may be directly coupled to another device for testing purposes and / or may use over-the-air wireless communications to perform testing.

[0093] The one or more simulation devices may perform one or more (including all) functions without being implemented / deployed as part of a wired and / or wireless communication network. For example, the simulation device may be used in a test scenario in a test lab and / or a non-deployed (e.g., testing) wired and / or wireless communication network to implement testing of one or more components. The one or more simulation devices may be test equipment. Direct RF coupling and / or wireless communication via RF circuits (e.g., which may include one or more antennas) may be used by the simulation device to transmit and / or receive data. DETAILED DESCRIPTION

[0094] 3D point cloud data may represent samples on the surface of an object or scene. When collecting / processing dynamic point clouds, data samples of the same object often appear in different observations that are strongly correlated through 2D to 3D projections. In other words, there are multiple measurements of the same 3D scene in the overlapping regions between different observations, e.g. Figure 2B Given the information that the measurements are highly correlated, even measurements that occur in the same observation can be considered different measurements of the same object, e.g. Figure 4 The exemplary embodiments operate to exploit correlations between different observations in a point cloud to improve the quality of the point cloud.

[0095] Some embodiments jointly perform denoising and dequantization of 3D point cloud data via correlated measurements from multiple observations. Not only the quantized observations, but also the noise-corrupted observations of each measurement can be considered as encoded quantization bins for reconstruction performance. Some embodiments intentionally shift the quantization bins applied to the noise-corrupted point cloud data. By doing so, when considering the correlation of multiple observations, this can further narrow the reasonable range of measurements compared to the case where the quantization bins are strictly aligned.

[0096] The exemplary embodiments are not limited to point cloud data obtained from any particular type of depth sensor. Various different depth sensors ranging from low-end sensors (such as time-of-flight (ToF) sensors and structured light sensors) to high-end sensors (such as lidar, laser scanners, etc.) or synthetic data using computer graphics are data sources that can be used in various embodiments.

[0097] In some embodiments, the systems and methods disclosed herein are used to enhance the quality of 3D point clouds during acquisition using a depth sensor. In other embodiments, the systems and methods herein are applied to point cloud compression (PCC). In some existing PCC methods, the current frame to be processed can be compressed using one or more reference frames. In some embodiments, the reference frame also uses information from the current frame to enhance its own reconstruction, so that the point cloud frames can refer to each other for reconstruction. On the encoder side, it is possible to intentionally shift the quantization bin applied to the point cloud data; while on the decoder side, multiple related observations can be combined to enhance the point cloud data, resulting in a higher precision reconstruction. The systems and methods as described herein have various PCC-based use cases. Some embodiments operate to improve the accuracy of point cloud data encoded using inter-frame coding or intra-frame coding. Some embodiments are applied when any specific coding structure (e.g., octree) is used at the encoder. If transform coding is used for encoding point cloud video, some embodiments operate directly in the transform domain to provide higher precision.

[0098] Although depth sensors are now lightweight and common, the measurements obtained are often rough in accuracy and can be corrupted by noise. However, when capturing 3D data (particularly sequences of 3D data in a particular scene), the same (or highly related) scene (or object) may have been captured multiple times. In other words, different observations of substantially the same object may have been made. Therefore, exemplary embodiments use different observations of the same object in the depth measurements of point cloud data to jointly improve the accuracy of the observations, which may be corrupted by noise and subject to quantization errors. Such techniques may be applied to point cloud compression in some embodiments.

[0099] Overview of Exemplary Embodiments

[0100] Exemplary embodiments use different observations in point cloud data to jointly improve the quality of measurement results. Figure 2A The depth of a point P is measured by two different observations (observation 1 and observation 2). The observations here can be views measured by a depth sensor during acquisition, or they can be frames in a point cloud sequence in the case of point cloud compression. In this example, the measurements are assumed to be noise-free to simplify the description. The measurements are quantized by two quantizers Q 1 and Q 2quantized so as to be represented by a certain number of bits. Quantization results in two different uncertainty ranges. Assuming the camera pose is known (or can be estimated from the acquired point cloud data or other means), the intersection of these two uncertainty ranges can be considered, resulting in a narrower uncertainty range and, in turn, a higher accuracy. The exemplary embodiments are not limited to only two observations: similar reasoning can be applied when three or more observations or measurements are made on the same object.

[0101] When two cameras are used to measure a scene, they can be arranged in a stereo turret, e.g. Figure 2B As shown in . In this case, when the quantizer has aligned quantization bins, taking the intersection of the uncertainty ranges does not lead to higher accuracy. To address this issue, some embodiments provide the option of shifting the quantization bins, such as Figure 3 This can reduce the uncertainty range as shown.

[0102] Some embodiments do not employ multiple observations. Figure 4 An embodiment is shown in which only one observation is made. In this case, assuming that the two points A and B being measured are highly correlated, with very similar measurements, an embodiment operating on shifting quantization bins can be applied to these two points separately. Thus, when taking the intersection of the two uncertainty ranges, depth accuracy can be improved.

[0103] An exemplary embodiment may employ lossy point cloud compression. On the encoder side, the point cloud data (either in its original spatial domain or in a transform domain) is quantized, where the quantization bins are intentionally shifted, and the quantized signal is then encoded. Information indicating the shift of the quantizer is available to both the encoder and the decoder. For example, the encoder may signal the shift to the decoder. On the decoder side, point cloud data measuring the same scene may be processed by taking into account the quantizer shift. Examples of the application of such techniques for point cloud compression are described in the "Point Cloud Compression" section below.

[0104] Point cloud enhancement via multiple observations

[0105] An embodiment of enhancing 3D point cloud data using inaccurate depth measurements from two camera views is described below. The exemplary embodiment utilizes convex optimization. Although the example is described with respect to measurements from two camera views, it should be noted that the techniques described are also applicable to embodiments using three or more views in other embodiments.

[0106] Because the 2D projections from the same 3D object onto the two image planes are correlated maps of each other, the exemplary embodiments operate to improve the quality of the reconstructed 3D points by optimizing the likelihood and priors of the two views simultaneously. Mathematically, the signal and noise correlation in a pixel row can be modeled using a graph that is constructed using data from the previous row via a constrained l 1 norm minimization. It is possible to formulate the maximum a posteriori (MAP) problem, which, after appropriate linear approximation, yields an unconstrained convex differentiable objective that can be solved using the fast gradient method (FGM).

[0107] Stereo Capture System

[0108] An exemplary embodiment uses data collected from a camera system where the same 3D object is observed by two depth cameras from different viewpoints; specifically, there is an overlapping field of view (FoV) from the two cameras such that there are at least two observations of the same 2D object surface. Figure 5 A camera system as used in some embodiments is shown. Each depth camera returns as output a depth map of size H×W and limited precision: each pixel is a noise-corrupted observation of the physical distance between the camera and the perceived 3D object, quantized into a B-bit representation.

[0109] Consider a case where two captured depth maps are rectified so that pixels in row i in the left view correspond to different pixels in the same row i in the right view. The correction process may be performed as a preprocessing step before performing point cloud enhancement. Examples of correction techniques that may be employed in some embodiments include those described in one or more of the following publications: C. Loop and Z. Zhang, "Computing rectifying homographies for stereovision," Proceedings, 1999 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (Cat. No. PR00149), Vol. 1, pp. 125–131, IEEE, 1999; Y.-S. Kang and Y.-S. Ho, "An efficient image rectification method for parallel multi-camera arrangement," IEEE transactions on Consumer Electronics, 57(3): 1041–1048, 2011; and Zhengyou Zhang, "A flexible new technique for camera calibration," IEEE Transactions on pattern analysis and machine intelligence, 22, 2000.

[0110] The exemplary embodiments are not limited to using any specific camera pose. For more complex cases other than stereo turrets, the measured depth map and multi-view geometry can still be used to find the view-to-view mapping relationship.

[0111] Exemplary Image Formation Model

[0112] In some embodiments, a 3D object is recorded by two rectified depth maps (left and right) captured by two different cameras. (Other embodiments may be implemented by extrapolating the techniques described in this example, such as processing data collected from more than two cameras.) l ∈R N (y r ∈R N ) represents the observed depth pixel row i in the left (right) view. Figure 5 (To simplify notation, index i is not in y l ,yr ) The observed pixel y l ,y r Represents each basic truth signal x l ,x r (Quantization occurs when the input measurement is mapped to a B-bit representation.) Observe that y l With the ground truth signal x l The relationship between can be expressed by the following formation model:

[0113]

[0114] where Q∈R + is the quantization parameter, and n l ∈R N is zero-mean additive noise. The term δ l ∈R N is added to x l A predefined vector of . l Add to x l This is equivalent to shifting the quantization bin by -δ l This shift allows active intervention in ongoing measurements, which can provide better opportunities to use the obtained measurement results for enhancements, such as Figure 3 As shown. l Can be absorbed into x l Therefore, we ignore δ in the following derivation. l , because we understand that l The same formation process can be applied to the right camera measurement result y r Given an observation Y = {y l ,y r}, the exemplary embodiment operates to estimate the ground truth value X={x l ,x r}. This estimate is expressed as express.

[0115] View to View Mapping

[0116] Corrected left view x l and right view x r The pixel rows i of x are projected from the same 3D object onto two different camera planes and are therefore correlated. Consider the use case where there is no occlusion when projecting the 3D object onto two camera views. A 1D warping process can be performed to make x l and x rThe warping process may be a warping process as described in one or more of the following publications: D. Scharstein and R. Szeliski, “High-accuracy stereo depth maps using structured light,” 2003IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2003, Proceedings, vol. 1, pp. I–I, IEEE, 2003; and J. Jin, A. Wang, Y. Zhao, C. Lin, and B. Zeng, “Region-aware 3-D warping for DIBR. IEEE Transactions on Multimedia, 18(6):953–966, 2016. For the j-th pixel x in the left view, l,j , its horizontal position in the right view after projection is s(j,x l,j )for

[0117] s(j,x l,j )=jd(x l,j )

[0118]

[0119] where d is the (non-integer) disparity, f is the camera focal length, and D is the baseline representing the distance between the left and right views. Note that s is the left pixel position j and the value x l,j Function of both.

[0120] Assuming the surface of the object is smooth, given the left pixel x l In the case of right pixel x r Interpolation

[0121] x r =Wx l =g(x l ) (3)W∈R N×N is a ij Specifically, x r,i With x l,j The weight ω between ij Can be modeled as

[0122]

[0123] In this example, if x l,j The projection position s(j,x l,j) and x r The distance between the target pixel positions i in is small, so the weight ω ij Larger.

[0124] Formula (4) can be simplified by using the normalization constant

[0125]

[0126] Combined with (2), (4) can be rewritten as

[0127]

[0128] Since g(x l ) is differentiable, so the first-order Taylor series expansion can be defined as approximately To obtain a linear approximation, is the first estimate. Therefore,

[0129]

[0130] in is g(x l )exist The first-order derivative at , and is a constant vector.

[0131] Likelihood Term and Signal Prior

[0132] The exemplary embodiment uses zero mean additive noise n l ∈R N We operate under the assumption of a joint Gaussian distribution, where n l The probability density function (PDF) of

[0133]

[0134] where P is a positive definite (PD) precision matrix, and is the noise variance. Given an observation y l , the likelihood term Pr(y l |x l )for

[0135]

[0136] The region R in which the integral (8) is performed l for

[0137]

[0138] It is related to y l,i In this example, assume that the noise term n l and nr Is independent.

[0139] The integration of the joint Gaussian PDF in (8) is nontrivial. However, Pr(n l ) can be in region R l The upper approximation is an affine function

[0140]

[0141] where a∈R N and b∈R are given by (7) l -x l The constant calculated by the Taylor series expansion at . For the purpose of illustration, Figure 6 A one-dimensional example is shown in . Formula (8) can then be expressed as

[0142]

[0143] With the likelihood term in linear form, let us now turn to the signal before formulating the MAP problem. It has been observed that the depth map is piecewise smooth (PWS). Assume that the previous K rows have been reconstructed and the next pixel row i follows a similar image structure. In this example, we choose to use a graph Laplacian regularizer as the signal prior, for example using the technique described in Gene Cheung, Enrico Magli, Yuichi Tanaka, and Michael K Ng, “Graph spectral image processing”, Proceedings of the IEEE, 106(5):907–930, 2018. The use of the Laplacian regularizer makes the signal x l With respect to a certain graph G (with L l The assumption that the associated graph Laplacian matrix of ) should be smooth takes effect, so that the term is small. In this example, the left row x l The prior can be expressed as

[0144]

[0145] In this example, the construction of the graph G is not limited. It can be based on the previously reconstructed results or the currently corrupted measurement results y l to construct an appropriate graph. Other embodiments may use other techniques to determine the prior Pr(x l In some such embodiments, Pr(x l ) value increases with x l The smoothness of the image increases with increasing levels of smoothness (or piecewise smoothness), where one or more different techniques may be used to represent the smoothness.

[0146] Maximum A Posteriori (MAP) Formula

[0147] In some embodiments, the MAP problem is formulated as follows to obtain the estimated value

[0148]

[0149] In (15), g(x l ) replace x r , and split the first term in (16) because the left noise n l and right noise n r Is independent.

[0150] For the sake of optimization, we minimize the negative logarithm of (17):

[0151]

[0152] Formula (19) is an unconstrained convex differentiable objective; it can be solved using the gradient descent method. When applying the above formula (19), there is no need to restrict the choice of the Laplacian matrix and the method of estimating the noise parameters. After solving (19), the estimated value can be obtained from Subtract the quantizer shift δ from l In some embodiments, the vector Can be used as an estimate In other embodiments, the estimated value may be obtained by performing the above method while reversing the subscripts l and r.

[0153] In some embodiments, more than two measurements may be used to perform refinement. For example, some embodiments may employ a set of K measurements (e.g., from K different camera positions). A set of functions g may be defined i (·) so that according to the formula x i =g i (x 1 ) will be from the reference view x 1 The measurement result of x is mapped to any other measurement result x i (i≥2). In some embodiments, the refined point cloud data may be generated according to Formula 20

[0154]

[0155] In some embodiments, equation (20) can be formulated using a first-order approximation according to the process shown in equations (17), (18), and (19), resulting in an unconstrained convex optimization problem that can be efficiently solved.

[0156] Point cloud compression

[0157] Using the systems and methods described above, exemplary embodiments are used to improve the accuracy of 3D point cloud data during acquisition. Additional embodiments employ such systems and methods when performing lossy point cloud compression (PCC).

[0158] In PCC, quantization is usually performed. Quantization of PCC has a similar effect to the quantization performed during acquisition. As noted above, the operation of shifting the quantization bins is similar to adding a pre-designed amount to the point cloud signal being encoded.

[0159] Figure 7 is a functional block diagram of an exemplary point cloud encoder. Figure 7 middle, represents n frames of point cloud data to be encoded. The data can be in its original spatial domain or in a transformed domain. Module Q represents the quantizer, while E represents the encoder module, which may include entropy coding or other post-processing steps such as channel coding. can be predefined and added to the point cloud data before quantization. Similar to shifting the quantization bin of Q The addition of can be called a quantization shift. is known to both the encoder and the decoder, similar to the quantization table. The output of the encoder is represented as

[0160] At the decoder side, after receiving the encoded point cloud Afterwards, the user can be provided with usage details ( Figure 8 ) or without refinement ( Fig. 9 ) option to decode it. Fig. 9 shows the case where no refinement is applied. In this case, the encoded point cloud Initially by applying the inverse operation of E (denoted as E -1 ) to decode. Then use Q -1 It is dequantized. After that, due to the quantization shift during encoding is added to the point cloud signal, and thus these quantization shifts are subtracted to obtain the final decoded signal In this decoding implementation, although there is no gain in accuracy, the computational cost is relatively low.

[0161] like Figure 8 As shown, when refinement is applied in the decoding stage, Originally by E. -1 Decode. After that, Related frames within (and / or In some embodiments, additional side information (SI), such as camera parameters and quantization shift, is also used. The SI here may be provided using any of a variety of different techniques or in a variety of different syntax elements, such as in a sequence parameter set, a picture parameter set, or a supplemental enhancement information message. The application of the quantization shift and any side information is determined by Figure 8 The module R in is represented by , and its output can be the final decoded point cloud Module R can use the MAP formula to refine the pixel row x l and x r , as shown in (19), which takes into account the effects of both noise and quantization.

[0162] In some embodiments, the Fig.10 The components shown are implemented Figure 8 A module R performs identification of related signals. The module is operable to identify related frames or related regions in the input point cloud data. An example is view mapping in a stereo camera as described above. This step can utilize additional side information such as camera parameters and pose information. Fig.10 Another module shown may perform joint precision enhancement. Precision enhancement may include combining quantization shift and related observations in the point cloud data to generate a more accurate depth measurement. This step can be performed based on different procedures, such as optimization using equation (19), or joint filtering of the point cloud data, among other possibilities.

[0163] In some cases, the quantization shift δ i can be set to zero. In this case, refinement R( Figure 8 ) can still provide higher-precision depth measurements. For example, Figure 2A For an example where the two camera viewpoints are not parallel, the accuracy can be improved by taking the intersection of the uncertainty ranges of the two measurements.

[0164] In some embodiments, encoding and decoding of point cloud data may be performed as follows. A first parameter x is obtained for a point in a first point cloud. 1 , and obtain the second parameter x for the point in the second point cloud 2 For example, the parameter x 1 and x 2 can be depth values, or they can be other types of values ​​(for example, representing horizontal or vertical position). 1 and x 2are related, e.g., they may represent the same or nearby points on the surface of an object using values ​​captured by the same or different cameras at the same or different times.

[0165] In some embodiments, these parameters x 1 and x 2 By including the addition of a quantizer shift δ 1 and δ 2 The method is quantized to the value y 1 and 2 For example, when the quantization step size is 1, the parameter x 1 and x 2 It can be quantified as follows:

[0166] y 1 =round(x 1 +δ 1 )

[0167] y 2 =round(x 2 +δ 2 )

[0168] Quantization step sizes other than 1 may be used, and need not be the same for both parameters. In some implementations, one of the shifts (δ 1 or δ 2 ) may be zero. In some embodiments, the same shift δ 1 can be applied to all points in the first point cloud with the same shift δ 2 may be applied to all points in the second point cloud; in other embodiments, different quantizer shifts may be used for different points within the point cloud (or for different parameters).

[0169] Once the quantized point cloud parameters y have been obtained 1 and 2 , they can be encoded into, for example, a bit stream for storage and / or transmission to a decoder. In some embodiments, the quantizer shift δ 1 and δ 2 can also be encoded into the bitstream. In some embodiments, the quantizer shift δ 1 and δ 2 It may be provided separately to the decoder, for example in one or more Supplemental Enhancement Information messages.

[0170] According to some embodiments, the point cloud parameters y are obtained at the decoder 1 and 2 and the quantizer shift δ 1 and δ 2 For example, the parameter y 1 and 2Can be received in encoded form and decodable by a decoder.

[0171] Given the information provided to the decoder, the following upper and lower limits can be assumed to apply to the shifted parameters (x 1 +δ 1 ) and (x 2 +δ 2 ):

[0172]

[0173]

[0174] where appropriate adjustments are made according to different quantization techniques (e.g., quantization step sizes other than 1). Using quantization shift-based subtraction, the following upper and lower limits apply to the original parameter x 1 and x 2 :

[0175]

[0176]

[0177] The first quantization range may correspond to, for example, Figure 3 or Figure 4 The "y 1 range”, and the second quantization range may correspond to, for example, “y 2 In some embodiments, by selecting point cloud data in areas where these ranges overlap (e.g., parameter ) to obtain refined point cloud data. Such an area may correspond to, for example, Figure 3 or Figure 4 The "refined ranges" are shown. Depending on which range is higher, the overlapping ranges are

[0178]

[0179] or

[0180]

[0181] In some embodiments, the selection of the refined point cloud parameter x may be performed such that the parameter x falls within the overlap range (within y 1 and 2 The midpoint of the overlapping range is obtained by using quantization shift-based subtraction. In some embodiments, the refined parameters can be chosen to be equal to the midpoint, so that

[0182]

[0183] In some embodiments, the decoder may refine the received point cloud data using one or more of a variety of techniques, including but not limited to the maximum a priori (MAP) refinement described above.

[0184] Fig.14 An exemplary decoding method is shown. In the exemplary decoding method, data representing at least a first point cloud and a second point cloud is obtained (1402). Information identifying at least a first set of quantizer shifts associated with the first point cloud is obtained (1404). In the first set of quantizer shifts, the shifts can be the same for different points or different parameters, or can be different for different points or different parameters. Refined point cloud data is obtained based on the first point cloud and the second point cloud (1406), wherein obtaining the refined point cloud data includes performing a subtraction based on at least the first set of quantizer shifts.

[0185] Fig.15 An exemplary encoding method is shown. In the exemplary encoding method, data representing at least a first point cloud and a second point cloud are obtained (1502). The first point cloud and the second point cloud are quantized by a method including adding a first set of quantizer shifts to the first point cloud (1504). The quantized first point cloud and the second point cloud and information indicating the first set of quantizer shifts are encoded in a bitstream (1506).

[0186] Example Applications

[0187] Various embodiments using PCC include the following.

[0188] Some embodiments are used together with inter-frame coding. When encoding a frame from a point cloud video using other frames, some embodiments jointly consider quantization shift and other auxiliary frames before or after the current frame that have observed the same scene. Information from other frames can be used to improve reconstruction accuracy at the decoder.

[0189] Some embodiments are used together with intra-coding. When frames from point cloud video are encoded separately, some embodiments take into account the introduced quantization shift and highly correlated areas in the same point cloud frame to increase the accuracy of reconstruction.

[0190] Some embodiments are used with octree-based point cloud compression. When octree is used as the coding structure for the point cloud, the exemplary embodiments operate to actively construct different tree roots with small quantization shifts. The decoder can then perform reconstruction and optimization regardless of whether the frame is encoded as inter or intra.

[0191] Some embodiments are used with transform coding.When transform coding is used and quantization is applied to the transform coefficients, some embodiments operate to perform precision enhancement in the transform domain where the transform coefficients are to be optimized.

[0192] Additional Implementations and Information

[0193] In some embodiments, the point cloud decoding method includes: receiving initial first point cloud data (y l ) and at least initial second point cloud data (yr); and selecting the refined first point cloud data (x l ) to substantially maximize the product of factors including one or more of the following: Given the refined first point cloud data (x l )’s initial first point cloud data (y l ) l |x l ); Given the refined second point cloud data (x r ) is the estimated value g(x l )’s initial second point cloud data (y r ) r |g(x l )), where the estimated value g(x l ) Based on the refined first point cloud data (x l ); The refined first point cloud data (x l ) of the prior probability Pr(x l ); and the refined second point cloud data (x r ) is the estimated value g(x l ) of the prior probability Pr(g(x l )).

[0194] Some such embodiments include, in selecting the refined first point cloud data (x l ) is then subtracted from the refined first point cloud data by the quantizer shift δ l .

[0195] In some embodiments, the process of iteratively selecting the refined first point cloud data (x l ).

[0196] In some embodiments, the refined first point cloud data (x l ) to substantially maximize the product of the factors including selecting the first point cloud data (x l ) to essentially minimize the sum of the negative logarithms of the factors.

[0197] In some embodiments, the selection of the refined first point cloud data (x l ) to essentially minimize the sum of the negative logarithms of the factors.

[0198] In some embodiments, given the refined first point cloud data (x l)’s initial first point cloud data (y l ) l |x l ) is composed of the initial first point cloud data (y l ) and the refined first point cloud data (x l ) is represented by a linear function of the difference between them.

[0199] In some embodiments, the refined second point cloud data (x r ) is the estimated value g(x l ) is the refined second point cloud data (x r ) is a linear function of .

[0200] In some embodiments, given the refined second point cloud data (x r ) is the estimated value g(x l )’s initial second point cloud data (y r ) r |g(x l ))From the initial second point cloud data (y r ) and the refined second point cloud data (x r ) is the estimated value g(x l ) is represented by a linear function of the difference between them.

[0201] In some embodiments, the refined first point cloud data (x l ) of the prior probability Pr(x l )Depend on Indicates that L l is the graph Laplacian matrix.

[0202] In some embodiments, the refined second point cloud data (x r ) is the estimated value g(x l ) of the prior probability Pr(g(x l )) is given by exp(-g(x l ) T L r g(x l ) / σ 2 ) indicates that L r is the graph Laplacian matrix.

[0203] A method according to some embodiments includes: receiving first point cloud data and at least second point cloud data; and refining the first point cloud data using at least the second point cloud data.

[0204] Some such embodiments further include, after thinning the first point cloud data, subtracting a quantizer shift from the thinned first point cloud data. In some embodiments, the quantizer shift is a predetermined quantizer shift.

[0205] The encoding method according to some embodiments includes: receiving initial first point cloud data and at least initial second point cloud data; adding a first set of quantizer shifts δ to the first point cloud data; 1 The method is to process the initial first point cloud data and the initial second point cloud data; and encode the processed first point cloud data and the second point cloud data.

[0206] In some embodiments, processing the initial first point cloud data and the initial second point cloud data further includes adding a second set of quantizer shifts δ to the second point cloud data. 2 .

[0207] In some embodiments, the first set of quantizers is shifted by δ 1 Different from the second group of quantizer shift δ 2 .

[0208] Some embodiments further include providing for identifying (i) a first set of quantizer shifts δ 1 or (ii) the second set of quantizers is shifted by δ 2 The information of at least one of the first point cloud data and the encoded second point cloud data.

[0209] A decoding method according to some embodiments includes receiving encoded first point cloud data and at least encoded second point cloud data; receiving at least identifying a first set of quantizer shifts δ 1 decoding the first point cloud data and at least the second point cloud data; using the decoded second point cloud data to refine the decoded first point cloud data; and subtracting the first set of quantizer shifts δ from the first point cloud data 1 .

[0210] An apparatus according to some embodiments includes a processor configured to perform at least a method according to any of the processes described herein.

[0211] The apparatus according to some embodiments includes a processor and a computer readable medium storing instructions for performing at least a method according to any of the processes described herein. In some such embodiments, the computer readable medium is a non-transitory computer readable medium.

[0212] Some embodiments include a computer readable medium storing point cloud data encoded using any of the methods described herein. In some such embodiments, the computer readable medium is a non-transitory computer readable medium.

[0213] This specification describes various aspects, including tools, features, embodiments, models, methods, etc. Many of these aspects are described in detail, and at least individual characteristics are shown, usually in a manner that may sound limited. However, this is for the purpose of describing clearly, and does not limit the scope of the present disclosure or those aspects. In fact, all different aspects can be combined and interchanged to provide further aspects. In addition, these aspects can also be combined and interchanged with aspects described in previous submissions.

[0214] The aspects described and contemplated in this disclosure may be implemented in many different forms. Fig.11 , Fig.12 and Fig.13 Some embodiments are provided, but other embodiments are contemplated, and Fig.11 , Fig.12 and Fig.13 The discussion of does not limit the breadth of the embodiments. At least one of these aspects generally relates to video encoding and decoding, and at least one other aspect generally relates to transmitting a generated or encoded bitstream. These and other aspects can be implemented as methods, apparatus, a computer-readable storage medium having stored thereon instructions for encoding or decoding video data according to any of the methods, and / or a computer-readable storage medium having stored thereon a bitstream generated according to any of the methods.

[0215] In this disclosure, the terms "reconstructed" and "decoded" are used interchangeably, the terms "pixel" and "sample" are used interchangeably, and the terms "image", "picture" and "frame" are used interchangeably. Usually, but not necessarily, the term "reconstructed" is used at the encoding end, while "decoded" is used at the decoding end.

[0216] Various methods are described herein, and each method includes one or more steps or actions for implementing the method. Unless the correct operation method requires a specific order of steps or actions, the order and / or purposes of specific steps and / or actions can be modified or combined. In addition, terms such as "first", "second" etc. can be used for various embodiments to modify elements, components, steps, operations, etc., such as "first decoding" and "second decoding". Unless specifically required, the use of such terms does not imply the ordering of the modification operation. Therefore, in this example, the first decoding does not need to be performed before the second decoding, and can, for example, occur before, during or in an overlapping time period of the second decoding.

[0217] Various methods and other aspects described in the present disclosure may be used to modify modules (e.g., intra-frame prediction, entropy encoding and / or decoding modules (160, 360, 145, 330)) of the video encoder 100 and decoder 200, such as Fig.11 and Fig.12In addition, aspects of the present invention are not limited to VVC or HEVC, and may be applied, for example, to other standards and recommendations (whether pre-existing or developed in the future) and extensions of any such standards and recommendations (including VVC and HEVC). Unless otherwise specified or technically excluded, the aspects described in this disclosure may be used alone or in combination.

[0218] Various numerical values ​​are used in the present disclosure. The specific values ​​are for illustrative purposes, and the aspects are not limited to these specific values.

[0219] Fig.11 An encoder 200 is shown. Variations of this encoder 200 are contemplated, but for clarity, the following describes the encoder 200 without describing all contemplated variations.

[0220] Prior to encoding, the video sequence may undergo pre-encoding processing (204), such as applying a color transform to an input color picture (e.g., conversion from RGB 4:4:4 to YCbCr 4:2:0), or performing a remapping of input picture components to obtain a signal distribution that is more resilient to compression (e.g., using histogram equalization of one of the color components). Metadata may be associated with the pre-processing and appended to the bitstream.

[0221] In encoder 200, a picture is encoded by encoder elements as described below. The picture to be encoded is partitioned (206) and processed in units such as CUs. Each unit is encoded, for example, using intra mode or inter mode. When a unit is encoded in intra mode, it performs intra prediction (208). In inter mode, motion estimation and compensation (210) are performed. The encoder decides (214) which of intra mode or inter mode is used to encode the unit, and indicates the intra / inter decision by, for example, a prediction mode flag. The prediction residual is calculated, for example, by subtracting (216) the predicted block from the original image block.

[0222] The prediction residual is then transformed (218) and quantized (220). The quantized transform coefficients, along with motion vectors and other syntax elements, are entropy encoded (232) to output a bitstream. The encoder may skip the transform and apply quantization directly to the untransformed residual signal. The encoder may bypass both the transform and quantization, in which case the residual is encoded directly without applying the transform or quantization process.

[0223] The encoder decodes the coded block to provide a reference for further prediction. The quantized transform coefficients are dequantized (222) and inverse transformed (224) to decode the prediction residual. The decoded prediction residual and the prediction block are combined (226) to reconstruct the image block. A loop filter (228) is applied to the reconstructed picture to perform, for example, deblocking / SAO (sample adaptive offset) filtering to reduce coding artifacts. The filtered image is stored in a reference picture buffer (212).

[0224] Fig.12 2 shows a block diagram of a video decoder 250. In the decoder 250, the bitstream is decoded by decoder elements as described below. The video decoder 250 generally performs the same operations as described above. Fig.11 The encoding process described above is the reverse of the decoding process. Encoder 200 also typically performs video decoding as part of encoding the video data.

[0225] Specifically, the input to the decoder includes a video bitstream, which may be generated by the video encoder 200. The bitstream is first entropy decoded (254) to obtain transform coefficients, motion vectors and other encoded information. Picture partition information indicates how the picture is partitioned. Therefore, the decoder can divide (256) the picture according to the decoded picture partition information. The transform coefficients are dequantized (262) and inverse transformed (264) to decode the prediction residual. The decoded prediction residual and the prediction block are combined (266) to reconstruct the image block. The prediction block can be obtained (271) from intra-frame prediction (258) or motion compensated prediction (i.e., inter-frame prediction) (260). A loop filter (268) is applied to the reconstructed image. The filtered image is stored in a reference picture buffer (270).

[0226] The decoded picture may also undergo post-decoding processing (274), such as an inverse color transform (e.g., a transform from YCbCr 4:2:0 to RGB 4:4:4) or an inverse remapping that performs the inverse of the remapping performed in the pre-encoding process (204). The post-decoding processing may use metadata derived in the pre-encoding process and signaled in the bitstream.

[0227] Fig.13It is a block diagram of an example of a system in which various aspects and embodiments are implemented. System 1000 may be embodied as a device including various components described below, and is configured to perform one or more aspects described in this document. Examples of such devices include, but are not limited to, various electronic devices, such as personal computers, laptop computers, smart phones, tablet computers, digital multimedia set-top boxes, digital television receivers, personal video recording systems, connected home appliances and servers. The elements of system 1000 may be embodied in a single integrated circuit (IC), multiple ICs and / or discrete components individually or in combination. For example, in at least one embodiment, the processing and encoder / decoder elements of system 1000 are distributed on multiple ICs and / or discrete components. In various embodiments, system 1000 is coupled to one or more other systems or other electronic devices via, for example, a communication bus or by a dedicated input and / or output port communication. In various embodiments, system 1000 is configured to implement one or more aspects described in this document.

[0228] The system 1000 includes at least one processor 1010 configured to execute instructions loaded therein for implementing, for example, various aspects described in this document. The processor 1010 may include embedded memory, input-output interfaces, and various other circuits known in the art. The system 1000 includes at least one memory 1020 (e.g., a volatile memory device and / or a non-volatile memory device). The system 1000 includes a storage device 1040, which may include a non-volatile memory and / or a volatile memory, including but not limited to an electrically erasable programmable read-only memory (EEPROM), a read-only memory (ROM), a programmable read-only memory (PROM), a random access memory (RAM), a dynamic random access memory (DRAM), a static random access memory (SRAM), a flash memory, a magnetic disk drive, and / or an optical disk drive. As a non-limiting example, the storage device 1040 may include an internal storage device, an attached storage device (including removable and non-removable storage devices), and / or a network-accessible storage device.

[0229] The system 1000 includes an encoder / decoder module 1030, which is configured to process data, for example, to provide encoded video or decoded video, and the encoder / decoder module 1030 may include its own processor and memory. The encoder / decoder module 1030 represents a module that can be included in a device to perform encoding and / or decoding functions. As is well known, a device may include one or both of an encoding module and a decoding module. In addition, the encoder / decoder module 1030 may be implemented as an independent element of the system 1000, or may be combined in the processor 1010 as a combination of hardware and software known to those skilled in the art.

[0230] Program code to be loaded onto the processor 1010 or the encoder / decoder 1030 to perform various aspects described in this document may be stored in the storage device 1040 and subsequently loaded onto the memory 1020 for execution by the processor 1010. According to various embodiments, one or more of the processor 1010, the memory 1020, the storage device 1040, and the encoder / decoder module 1030 may store one or more of the various items during the execution of the processes described in this document. Such stored items may include, but are not limited to, input video, decoded video or partially decoded video, bitstreams, matrices, variables, and intermediate or final results of processing equations, formulas, operations, and operation logic.

[0231] In some embodiments, memory internal to the processor 1010 and / or encoder / decoder module 1030 is used to store instructions and provide working memory for processing required during encoding or decoding. However, in other embodiments, memory external to the processing device (e.g., the processing device may be the processor 1010 or the encoder / decoder module 1030) is used for one or more of these functions. The external memory may be memory 1020 and / or storage device 1040, such as dynamic volatile memory and / or non-volatile flash memory. In several embodiments, the external non-volatile flash memory is used to store, for example, the operating system of the television. In at least one embodiment, a fast external dynamic volatile memory such as RAM is used as working memory for video encoding and decoding operations, such as MPEG-2 (MPEG refers to Moving Picture Experts Group, MPEG-2 is also known as ISO / IEC 13818, and 13818-1 is also known as H.222, 13818-2 is also known as H.262), HEVC (HEVC refers to High Efficiency Video Coding, also known as H.265 and MPEG-H Part 2), or VVC (Versatile Video Coding, a new standard developed by the Joint Video Experts Team (JVET)).

[0232] Inputs to the elements of system 1000 may be provided through various input devices as shown in block 1130. Such input devices include, but are not limited to: (i) a radio frequency (RF) section that receives an RF signal transmitted over the air, for example, by a broadcaster; (ii) a component (COMP) input terminal (or a set of COMP input terminals); (iii) a universal serial bus (USB) input terminal; and / or (iv) a high-definition multimedia interface (HDMI) input terminal. Fig.10 Other examples not shown include composite video.

[0233] In various embodiments, the input device of block 1130 has associated corresponding input processing elements as known in the art. For example, the RF section may be associated with elements suitable for: (i) selecting a desired frequency (also referred to as selecting a signal, or band limiting a signal to a frequency band), (ii) down-converting the selected signal, (iii) again band-limiting to a narrower frequency band to select a signal frequency band that may be referred to as a channel in certain embodiments, (iv) demodulating the down-converted and band-limited signal, (v) performing error correction, and (vi) demultiplexing to select a desired packet stream. The RF section of various embodiments includes one or more elements for performing these functions, such as a frequency selector, a signal selector, a band limiter, a channel selector, a filter, a down-converter, a demodulator, an error corrector, and a demultiplexer. The RF section may include a tuner that performs various of these functions, including, for example, down-converting a received signal to a lower frequency (e.g., an intermediate frequency or near baseband frequency) or to baseband. In a set-top box embodiment, the RF part and its associated input processing element receive the RF signal transmitted by wired (for example, cable) medium, and perform frequency selection by filtering, down-conversion and filtering to required frequency band again.Various embodiments rearrange the order of above-mentioned (and other) elements, remove some elements in these elements, and / or add other elements of similar or different functions.Adding element can include inserting element between existing element, for example, inserting amplifier and analog-to-digital converter.In various embodiments, the RF part comprises antenna.

[0234] In addition, the USB and / or HDMI terminals may include corresponding interface processors for connecting the system 1000 to other electronic devices across the USB and / or HDMI connections. It should be understood that various aspects of input processing (e.g., Reed-Solomon error correction) may be implemented as needed, for example, in a separate input processing IC or in the processor 1010. Similarly, aspects of USB or HDMI interface processing may be implemented as needed, in a separate interface IC or in the processor 1010. The demodulated stream, error correction stream, and demultiplexed stream are provided to various processing elements, including, for example, the processor 1010 and the encoder / decoder 1030, which operate in conjunction with the memory and storage elements to process the data stream as needed for presentation on the output device.

[0235] The various components of system 1000 may be disposed within an integrated housing. Within the integrated housing, the various components may be interconnected and data may be transmitted between the components using a suitable connection arrangement 1140 (e.g., an internal bus known in the art, including an inter-IC (I2C) bus, wiring, and a printed circuit board).

[0236] The system 1000 includes a communication interface 1050 capable of communicating with other devices via a communication channel 1060. The communication interface 1050 may include, but is not limited to, a transceiver configured to transmit and receive data through the communication channel 1060. The communication interface 1050 may include, but is not limited to, a modem or a network card, and the communication channel 1060 may be implemented, for example, within a wired and / or wireless medium.

[0237] In various embodiments, a wireless network such as a Wi-Fi network, for example IEEE 802.11 (IEEE refers to the Institute of Electrical and Electronics Engineers) is used to transmit data streams or otherwise provide it to the system 1000. The Wi-Fi signals of these embodiments are received by a communication channel 1060 and a communication interface 1050 suitable for Wi-Fi communication. The communication channel 1060 of these embodiments is usually connected to an access point or a router, which provides access to an external network including the Internet, for allowing streaming applications and other cloud communications. Other embodiments use a set-top box that transmits data through an HDMI connection of an input block 1130 to provide streaming data to the system 1000. Still other embodiments use the RF connection of an input block 1130 to provide streaming data to the system 1000. As described above, various embodiments provide data in a non-streaming manner. In addition, various embodiments use wireless networks other than Wi-Fi, such as cellular networks or Bluetooth networks.

[0238] System 1000 can provide output signals to various output devices, including display 1100, speaker 1110 and other peripheral devices 1120. Display 1100 of various embodiments includes one or more of, for example, a touch screen display, an organic light emitting diode (OLED) display, a curved display and / or a foldable display. Display 1100 can be used for a television, a tablet, a notebook, a cellular phone (mobile phone) or other devices. Display 1100 can also be integrated with other components (for example, as in a smart phone), or it can be separate (for example, an external monitor of a laptop). In various examples of embodiments, other peripheral devices 1120 include one or more of an independent digital video disc (or digital versatile disc, both terms are DVR), a disc player, a stereo system and / or a lighting system. Various embodiments use one or more peripheral devices 1120 that provide functions based on the output of system 1000. For example, a disc player performs the function of playing the output of system 1000.

[0239] In various embodiments, control signals are transmitted between the system 1000 and the display 1100, speaker 1110, or other peripheral device 1120 using signaling such as AV.Link, consumer electronics control (CEC), or other communication protocols that enable device-to-device control with or without user intervention. Output devices may be communicatively coupled to the system 1000 via dedicated connections through respective interfaces 1070, 1080, and 1090. Alternatively, output devices may be connected to the system 1000 via communication interface 1050 using communication channel 1060. The display 1100 and speaker 1110 may be integrated into a single unit with other components of the system 1000 in an electronic device such as a television. In various embodiments, the display interface 1070 includes a display driver, such as, for example, a timing controller (T Con) chip.

[0240] Alternatively, if the RF portion of input 1130 is part of a separate set-top box, the display 1100 and speaker 1110 are optionally separate from one or more of the other components. In various embodiments where the display 1100 and speaker 1110 are external components, the output signal may be provided via a dedicated output connection (including, for example, an HDMI port, a USB port, or a COMP output).

[0241] These embodiments may be performed by the processor 1010 or by computer software implemented by hardware or by a combination of hardware and software. As a non-limiting example, these embodiments may be implemented by one or more integrated circuits. As a non-limiting example, the memory 1020 may be of any type suitable for the technical environment and may be implemented using any appropriate data storage technology, such as an optical memory device, a magnetic memory device, a semiconductor-based memory device, a fixed memory, and a removable memory. As a non-limiting example, the processor 1010 may be of any type suitable for the technical environment and may include one or more of a microprocessor, a general-purpose computer, a special-purpose computer, and a processor based on a multi-core architecture.

[0242] Various implementations participate in decoding. As used in this disclosure, "decoding" may encompass, for example, all or part of a process performed on a received coded sequence to produce a final output suitable for display. In various embodiments, such processes include one or more processes typically performed by a decoder, such as entropy decoding, inverse quantization, inverse transform, and differential decoding. In various embodiments, such processes also include or alternatively include processes performed by a decoder of various implementations described in this disclosure, such as thinning the point cloud data and / or applying or removing a quantizer shift from the point cloud data.

[0243] As a further example, in an embodiment, "decoding" refers only to entropy decoding, in another embodiment, "decoding" refers only to differential decoding, and in yet another embodiment, "decoding" refers to a combination of entropy decoding and differential decoding. Whether the phrase "decoding process" refers specifically to a subset of operations or broadly to a broader decoding process will be clear based on the context of the specific description, and is believed to be well understood by those skilled in the art.

[0244] Various implementations participate in encoding. In a manner similar to the discussion above regarding "decoding", "encoding" as used in the present disclosure may encompass, for example, all or part of a process performed on an input video sequence to produce an encoded bitstream. In various embodiments, such processes include one or more processes typically performed by an encoder, such as partitioning, differential encoding, transforms, quantization, and entropy encoding. In various embodiments, such processes also include or alternatively include processes performed by encoders of various implementations described in the present disclosure, such as thinning point cloud data and / or applying or removing quantizer shifts from point cloud data.

[0245] As a further example, in an embodiment, "encoding" refers only to entropy encoding, in another embodiment, "encoding" refers only to differential encoding, and in yet another embodiment, "encoding" refers to a combination of differential encoding and entropy encoding. Whether the phrase "encoding process" refers specifically to a subset of operations or broadly to a broader encoding process will be clear based on the context of the specific description, and is believed to be well understood by those skilled in the art.

[0246] It should be noted that syntax elements such as sequence parameter set, picture parameter set or supplemental enhancement information message as used herein are descriptive terms. Therefore, they do not exclude the use of other syntax element names.

[0247] When the figures are presented as flow charts, it should be understood that they also provide block diagrams of corresponding devices. Similarly, when the figures are presented as block diagrams, it should be understood that they also provide flow charts of corresponding methods / processes.

[0248] Implementations and aspects described herein may be implemented, for example, in a method or process, an apparatus, a software program, a data stream, or a signal. Even if discussed only in the context of a single form of implementation (e.g., discussed only as a method), the implementation of the features discussed may also be implemented in other forms (e.g., an apparatus or program). An apparatus may be implemented, for example, in appropriate hardware, software, and firmware. A method may be implemented, for example, in a processor, which generally refers to a processing device,

[0249] The processing device includes, for example, a computer, a microprocessor, an integrated circuit or a programmable logic device. The processor also includes a communication device, such as, for example, a computer, a cell phone, a portable / personal digital assistant ("PDA"), and other devices that facilitate information communication between end users.

[0250] Reference to "one embodiment" or "an embodiment" or "one implementation" or "an implementation" and other variations thereof means that a particular feature, structure, characteristic, etc. described in connection with the embodiment is included in at least one embodiment. Thus, the appearances of the phrases "in one embodiment" or "in an embodiment" or "in one implementation" or "in an implementation" and any other variations thereof in various places throughout this disclosure are not necessarily all referring to the same embodiment.

[0251] Additionally, the present disclosure may refer to “determining” various pieces of information. Determining information may include, for example, one or more of estimating the information, calculating the information, predicting the information, or retrieving the information from a memory.

[0252] Additionally, the present disclosure may refer to "accessing" various pieces of information. Accessing information may include, for example, one or more of receiving information, retrieving information (e.g., from memory), storing information, moving information, copying information, calculating information, determining information, predicting information, or estimating information.

[0253] Furthermore, the present disclosure may refer to "receiving" various pieces of information. Like "accessing," receiving is intended to be a broad term. Receiving information may include, for example, one or more of accessing information or retrieving information (e.g., from a memory). Furthermore, "receiving" generally involves in one way or another during operations such as, for example, storing information, processing information, transmitting information, moving information, copying information, erasing information, calculating information, determining information, predicting information, or estimating information.

[0254] It should be understood that, for example, in the case of "A / B," "A and / or B," and "at least one of A and B," the use of any of the following " / ," "and / or," and "at least one of" is intended to encompass selecting only the first listed option (A), or only the second listed option (B), or both options (A and B). As a further example, in the case of "A, B, and / or C" and "at least one of A, B, and C," such phrases are intended to encompass selecting only the first listed option (A), or only the second listed option (B), or only the third listed option (C), or only the first listed option and the second listed option (A and B), or only the first listed option and the third listed option (A and C), or only the second listed option and the third listed option (B and C), or all three options (A and B and C). This can be extended to as many items as listed, as will be apparent to one of ordinary skill in this and related arts.

[0255] Moreover, as used herein, the word "signaling" refers to (among other things) indicating something to a corresponding decoder. For example, in some embodiments, the encoder signals a specific quantization bin shift or shift set. Thus, in one embodiment, the same parameters are used on both the encoder side and the decoder side. Therefore, for example, the encoder can transmit (explicit signaling) specific parameters to the decoder so that the decoder can use the same specific parameters. On the contrary, if the decoder already has specific parameters and others, signaling can be used without transmitting (implicit signaling) to simply allow the decoder to know and select specific parameters. By avoiding transmitting any actual function, bit savings are achieved in various embodiments. It should be understood that signaling can be implemented in various ways. For example, in various embodiments, one or more syntax elements, tags, etc. are used to signal information to the corresponding decoder. Although the verb form of the word "signal" is mentioned above, the word "signal" can also be used as a noun in this article.

[0256] It will be apparent to one of ordinary skill in the art that a specific implementation may generate various signals formatted to carry, for example, storable or transmittable information. The information may include, for example, instructions for performing a method or data generated by one of the specific implementations. For example, a signal may be formatted to carry a bit stream of the embodiment. Such signals may be formatted, for example, as electromagnetic waves (e.g., using a radio frequency portion of a spectrum) or as baseband signals. Formatting may include, for example, encoding a data stream and modulating a carrier with the encoded data stream. The information carried by the signal may be, for example, analog or digital information. It is known that the signal may be transmitted over a variety of different wired or wireless links. The signal may be stored on a processor readable medium.

[0257] We have described multiple implementations. Features of these implementations may be provided individually or in any combination in various claim categories and types. In addition, implementations may include one or more of the following features, devices, or aspects, individually or in any combination, across various claim categories and types: implementations include: a bitstream or signal including one or more of the described syntax elements or variations thereof; a bitstream or signal including syntax conveying information generated according to any of the described implementations; creating and / or transmitting and / or receiving and / or decoding a bitstream or signal including one or more of the described syntax elements or variations thereof; creating and / or transmitting and / or receiving and / or decoding according to any of the described implementations; and a method, process, apparatus, medium storing instructions, medium storing data, or signal according to any of the described implementations.

[0258] It should be noted that the various hardware elements of one or more embodiments in the described embodiments are referred to as "modules" that perform (e.g., execute, implement, etc.) the various functions described herein in conjunction with the corresponding modules. As used herein, modules include hardware that a technician in the relevant field considers suitable for a given specific implementation (e.g., one or more processors, one or more microprocessors, one or more microcontrollers, one or more microchips, one or more application-specific integrated circuits (ASICs), one or more field programmable gate arrays (FPGAs), one or more memory devices). Each of the modules described may also include executable instructions for performing one or more functions described as being performed by the corresponding module, and it should be noted that these instructions may take the form of or include the following instructions: hardware (i.e., hard-wired) instructions, firmware instructions, software instructions, etc., and may be stored in any suitable one or more non-transitory computer-readable media (such as commonly referred to as RAM, ROM, etc.).

[0259] Although features and elements are described above in particular combinations, it will be understood by one of ordinary skill in the art that each feature or element may be used alone or in any combination with the other features and elements. In addition, the methods described herein may be implemented in a computer program, software, or firmware incorporated in a computer-readable medium for execution by a computer or processor. Examples of computer-readable storage media include, but are not limited to, read-only memory (ROM), random access memory (RAM), registers, cache memory, semiconductor memory devices, magnetic media (such as built-in hard disks and removable disks), magneto-optical media, and optical media (such as CD-ROM disks and digital versatile disks (DVDs). A processor associated with software may be used to implement a radio frequency transceiver for a WTRU, UE, terminal, base station, RNC, or any host computer.

Claims

1. A point cloud decoding method, the point cloud decoding method comprising: obtaining data representing at least a first point cloud and a second point cloud, the first point cloud representing a first observation of a scene and the second point cloud representing a second observation of the scene, wherein the data representing the first point cloud comprises first parameters having a first quantization range and the data representing the second point cloud comprises second parameters having a second quantization range different from the first quantization range; obtaining information identifying at least a first set of quantizer shifts associated with the first point cloud; and Refined point cloud data is obtained based on at least the first point cloud, the first set of quantizer shifts, and the second point cloud, wherein obtaining the refined point cloud data includes obtaining a third parameter in the quantization range of both the first parameter and the second parameter. 2 . The method of claim 1 , wherein obtaining the refined point cloud data comprises performing a subtraction based at least on the first set of quantizer shifts.

3. The method according to claim 1, further comprising: obtaining information identifying a second set of quantizer shifts associated with the second point cloud, the second set of quantizer shifts being different from the first set of quantizer shifts; The obtaining of the refined point cloud data is further based on the second set of quantizer shifts. 4 . The method of claim 3 , wherein obtaining the refined point cloud data comprises performing a subtraction based on at least the first set of quantizer shifts and the second set of quantizer shifts. 5 . The method of claim 1 , wherein the first point cloud represents a left view of a scene and the second point cloud represents a right view of the scene. The method of claim 1 , wherein the first point cloud and the second point cloud are frames associated with different times. 7 . The method of claim 1 , wherein the first set of quantizer shifts comprises at least a first shift associated with a first point in the first point cloud and a different second shift associated with a second point in the first point cloud.

8. The method according to claim 1, wherein obtaining the refined point cloud data comprises: By selecting the first point cloud to be refined (x l ) to substantially maximize the product of factors including one or more of the following factors, based on the first point cloud (y l ) and the second point cloud (y r ) to obtain the refined point cloud data (x l ): Given the refined first point cloud (x l ) of the first point cloud (y l ) l |x l ), Given the second refined point cloud (x r ) is the estimated value g(x l ) of the second point cloud (y r ) r |g(x l )), where the estimated value g(x l ) Based on the refined first point cloud (x l ), The refined first point cloud data (x l ) of the prior probability Pr(x l ),and The second refined point cloud (x r ) of the estimated value g(x l ) of the prior probability Pr(g(x l )).

9. A point cloud decoder device, the point cloud decoder device comprising a processor, the processor configured to at least perform: obtaining data representing at least a first point cloud and a second point cloud, the first point cloud representing a first observation of a scene and the second point cloud representing a second observation of the scene, wherein the data representing the first point cloud comprises first parameters having a first quantization range and the data representing the second point cloud comprises second parameters having a second quantization range different from the first quantization range; obtaining information identifying at least a first set of quantizer shifts associated with the first point cloud; and Refined point cloud data is obtained based on at least the first point cloud, the first set of quantizer shifts, and the second point cloud, wherein obtaining the refined point cloud data includes obtaining a third parameter in the quantization range of both the first parameter and the second parameter. 10 . The apparatus of claim 9 , wherein obtaining the refined point cloud data comprises performing a subtraction based at least on the first set of quantizer shifts.

11. The device according to claim 9, further comprising: obtaining information identifying a second set of quantizer shifts associated with the second point cloud, the second set of quantizer shifts being different from the first set of quantizer shifts; The obtaining of the refined point cloud data is further based on the second set of quantizer shifts. 12 . The apparatus of claim 11 , wherein obtaining the refined point cloud data comprises performing a subtraction based on at least the first set of quantizer shifts and the second set of quantizer shifts.

13. The apparatus of claim 9, wherein the first point cloud represents a left view of a scene and the second point cloud represents a right view of the scene.

14. The apparatus of claim 9, wherein the first point cloud and the second point cloud are frames associated with different times.

15. The apparatus of claim 9, wherein the first set of quantizer shifts comprises at least a first shift associated with a first point in the first point cloud and a different second shift associated with a second point in the first point cloud.

16. The apparatus according to claim 9, wherein obtaining the refined point cloud data comprises: By selecting the first point cloud (x l ) to substantially maximize the product of factors including one or more of the following factors, based on the first point cloud (y l ) and the second point cloud (y r ) to obtain the refined point cloud data (x l ): Given the refined first point cloud (x l ) of the first point cloud (y l ) l |x l ), Given the second refined point cloud (x r ) is the estimated value g(x l ) of the second point cloud (y r ) r |g(x l )), where the estimated value g(x l ) Based on the refined first point cloud (x l ), The refined first point cloud data (x l ) of the prior probability Pr(x l ),and The second refined point cloud (x r ) of the estimated value g(x l ) of the prior probability Pr(g(x l )).

17. A point cloud encoding method, the point cloud encoding method comprising: obtaining data representing at least a first point cloud and a second point cloud, the first point cloud representing a first observation of a scene and the second point cloud representing a second observation of the scene; quantizing the first point cloud and the second point cloud, wherein the data representing the first point cloud comprises first parameters having a first quantization range and the data representing the second point cloud comprises second parameters having a second quantization range, wherein quantizing the point cloud data comprises adding at least a first set of quantizer shifts to the first point cloud data such that the first quantization range and the second quantization range do not completely overlap, and wherein the first parameter and the second parameter together encode a third parameter, the third parameter being within the quantization range of both the first parameter and the second parameter; as well as The quantized first point cloud and the second point cloud are encoded in a bitstream.

18. The method of claim 17, further comprising encoding information indicative of the first set of quantizer shifts in the bitstream.

19. The method of claim 17, wherein quantizing the first point cloud and the second point cloud comprises adding a second set of quantizer shifts to the second point cloud, and further comprising encoding information indicating the second set of quantizer shifts in the bitstream.

20. The method of claim 17, wherein the first point cloud represents a left view of a scene and the second point cloud represents a right view of the scene.

21. The method of claim 17, wherein the first point cloud and the second point cloud are frames associated with different times.

22. A point cloud encoding device, the point cloud encoding device comprising a processor, the processor being configured to at least perform: obtaining data representing at least a first point cloud and a second point cloud, the first point cloud representing a first observation of a scene and the second point cloud representing a second observation of the scene; quantizing the first point cloud and the second point cloud, wherein the data representing the first point cloud comprises first parameters having a first quantization range and the data representing the second point cloud comprises second parameters having a second quantization range, wherein quantizing the point cloud data comprises adding at least a first set of quantizer shifts to the first point cloud data such that the first quantization range and the second quantization range do not completely overlap, and wherein the first parameter and the second parameter together encode a third parameter, the third parameter being within the quantization range of both the first parameter and the second parameter; and The quantized first point cloud and the second point cloud are encoded in a bitstream.

23. The apparatus of claim 22, further comprising encoding in the bitstream information indicating the first set of quantizer shifts.

24. The apparatus of claim 22, wherein quantizing the first point cloud and the second point cloud comprises adding a second set of quantizer shifts to the second point cloud, and further comprising encoding information indicating the second set of quantizer shifts in the bitstream.

25. The apparatus of claim 22, wherein the first point cloud represents a left view of a scene and the second point cloud represents a right view of the scene.

26. The apparatus of claim 22, wherein the first point cloud and the second point cloud are frames associated with different times.

Citation Information

Patent Citations

  • Point cloud geometry compression

    WO2019050931A1