METHODS AND EQUIPMENT FOR DETERMINING SIGNALS, STORAGE MEDIA, AND ELECTRONIC DEVICES
Patent Information
- Authority / Receiving Office
- VN · VN
- Patent Type
- Applications
- Current Assignee / Owner
- ZTE CORP
- Filing Date
- 2024-04-30
- Publication Date
- 2026-06-15
AI Technical Summary
The problem is that the technical signal used by the first prediction mode cannot be determined in the IBC merge prediction mode.
By determining the prediction information of the first prediction mode, and when the prediction information comes from the second prediction mode, the technical signal used in the first prediction mode is determined according to the technical signal adopted in the second prediction mode.
The problem of not being able to determine the technical signal used in the first prediction mode in the IBC merge prediction mode is solved, and the technical signal used in the first prediction mode can be determined also in the IBC merge prediction mode.
Smart Images

Figure VN1202603447_0
Abstract
Description
Signal determination method, device, storage medium and electronic device
[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on September 28, 2023, with application number 202311291483.0 and invention name “Signal determination method, device, storage medium and electronic device”, the entire contents of which are incorporated by reference in this disclosure. Technical Field
[0002] The present disclosure relates to the field of communications, and in particular, to a method, device, storage medium, and electronic device for determining a signal. Background Art
[0003] Currently, the two technologies in the intra block copy (IBC) mode, local illumination compensation (LIC) and IBC filter (FIBC), both obtain prediction blocks by transforming or filtering the IBC candidate blocks. In the IBC merge mode, the activation of LIC and FIBC does not require signaling transmission. Instead, they are obtained from the candidates in the merge list. That is, when the LIC or FIBC of the candidate selected in the merge list is activated, the LIC or FIBC of the current coding unit is also activated.
[0004] When constructing the IBC merge list, candidate motion information is sequentially scanned from spatially adjacent blocks, non-adjacent blocks, and historical blocks. When an intra-template match prediction (ITMP) block is detected, its block vector (BV) and other motion information are also considered as candidates for the IBC merge list. When the current coding unit selects the motion information of an ITMP block for prediction, filtering technologies such as LIC or FIBC are forcibly disabled, resulting in the inability to receive LIC and FIBC signals.
[0005] Regarding the related technology, there is currently no effective solution to the problem that the signal of the technology adopted by the first prediction mode cannot be determined in the IBC merge prediction mode.
[0006] Therefore, it is necessary to improve the related technology to overcome the above-mentioned defects in the related technology.
[0007] Summary of the Invention
[0008] The embodiments of the present disclosure provide a method, device, storage medium, and electronic device for determining a signal, so as to at least solve the problem that the signal of the technology adopted by the first prediction mode cannot be determined in the IBC merge prediction mode.
[0009] According to one aspect of an embodiment of the present disclosure, a method for determining a signal is provided, comprising: determining prediction information of a first prediction mode; and when it is determined that the prediction information comes from a second prediction mode, determining a signal of the technology adopted by the first prediction mode based on a signal of the technology adopted by the second prediction mode.
[0010] In an exemplary embodiment, after determining prediction information of the first prediction mode, the method further includes: when it is determined that the prediction information does not come from the second prediction mode, determining that signals of some technologies of the first prediction mode are the same as signals of the same technology in the prediction information.
[0011] In an exemplary embodiment, after determining the signal of the technology adopted by the first prediction mode based on the signal of the technology adopted by the second prediction mode, or determining that the signal of part of the technology of the first prediction mode is the same as the signal of the same technology in the prediction information, the method further includes: determining whether to turn on the relevant prediction processing technology based on the signal of the technology adopted by the determined first prediction mode; and if it is determined to be turned on, using the relevant prediction processing technology for the target reference block.
[0012] In an exemplary embodiment, the signal of the technology adopted by the first prediction mode is determined based on the signal of the technology adopted by the second prediction mode, including: when the first prediction mode is the IBC mode and the second prediction mode is the ITMP mode, the FIBC of the current coding unit is turned on when the linear model filter (Filter Linear Model, FLM) of the candidate ITMP is turned on, and when the FLM of the candidate ITMP is turned off, the FIBC of the current coding unit is turned off, so as to obtain the signal of the technology adopted by the first prediction mode.
[0013] In an exemplary embodiment, determining the signal of the technology adopted by the first prediction mode based on the signal of the technology adopted by the second prediction mode includes: when the first prediction mode is the IBC mode and the second prediction mode is the ITMP mode, turning on the LIC of the current coding unit when the TMP-LIC of the candidate ITMP is turned on, and turning off the LIC of the current coding unit when the TMP-LIC of the candidate ITMP is turned off, so as to obtain the signal of the technology adopted by the first prediction mode.
[0014] In an exemplary embodiment, determining prediction information of a first prediction mode includes: determining a coding unit to be encoded or a decoding unit to be decoded; and determining prediction information of the first prediction mode according to the coding unit or the decoding unit.
[0015] In an exemplary embodiment, determining prediction information of the first prediction mode according to the encoding unit or decoding unit includes: determining a candidate set corresponding to the encoding unit or decoding unit; and traversing the candidate set to obtain prediction information of the first prediction mode.
[0016] According to another aspect of an embodiment of the present disclosure, a signal determination device is also provided, including: a first determination module, configured to determine prediction information of a first prediction mode; a second determination module, configured to determine the signal of the technology adopted by the first prediction mode based on the signal of the technology adopted by the second prediction mode when it is determined that the prediction information comes from the second prediction mode.
[0017] According to another aspect of the embodiments of the present disclosure, a computer-readable storage medium is provided, in which a computer program is stored. The computer program is configured to execute the above-mentioned signal determination method when running.
[0018] According to another aspect of an embodiment of the present disclosure, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the signal determination method through the computer program.
[0019] Through the present disclosure, when it is determined that the prediction information determined by the first prediction mode comes from the second prediction mode, the signal of the technology adopted by the first prediction mode can be determined based on the signal of the technology adopted by the second prediction mode, thereby solving the technical problem that the signal of the technology adopted by the first prediction mode cannot be determined in the IBC merged prediction mode, and thus achieving the technical effect that the signal of the technology adopted by the first prediction mode can also be determined in the IBC merged prediction mode. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] The drawings described herein are used to provide a further understanding of the present disclosure and constitute a part of the present disclosure. The exemplary embodiments of the present disclosure and their descriptions are used to explain the present disclosure and do not constitute an improper limitation of the present disclosure. In the drawings:
[0021] FIG1 is a hardware structure block diagram of a computer terminal of a signal determination method according to an embodiment of the present disclosure;
[0022] FIG2 is a flow chart (I) of a method for determining a signal according to an embodiment of the present disclosure;
[0023] FIG3 is a schematic diagram of a hybrid coding framework according to an embodiment of the present disclosure;
[0024] FIG4 is a flowchart (II) of a method for determining a signal according to an embodiment of the present disclosure;
[0025] FIG5 is a flowchart (III) of a method for determining a signal according to an embodiment of the present disclosure;
[0026] FIG6 is a flowchart (four) of a method for determining a signal according to an embodiment of the present disclosure;
[0027] FIG7 is a flowchart (V) of a method for determining a signal according to an embodiment of the present disclosure;
[0028] FIG8 is a flowchart (VI) of a method for determining a signal according to an embodiment of the present disclosure;
[0029] FIG9 is a structural block diagram of a signal determination apparatus according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0030] In order to enable those skilled in the art to better understand the solutions of the present disclosure, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the embodiments described are only part of the embodiments of the present disclosure, not all of the embodiments. Based on the embodiments of the present disclosure, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of the present disclosure.
[0031] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the numbers used in this way can be interchanged where appropriate, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0032] The method embodiments provided in the embodiments of the present disclosure can be executed in a computer terminal or a similar computing device. Taking running on a computer terminal as an example, FIG1 is a hardware structure block diagram of a computer terminal of the signal determination method of the embodiment of the present disclosure. As shown in FIG1 , the computer terminal may include one or more (only one is shown in FIG1 ) processors 102 (the processor 102 may include but is not limited to a microprocessor (Microprocessor Unit, referred to as MPU) or a programmable logic device (Programmable logic device, referred to as PLD)) and a memory 104 for storing data. In an exemplary embodiment, the above-mentioned computer terminal may also include a transmission device 106 and an input and output device 108 for communication functions. It can be understood by those skilled in the art that the structure shown in FIG1 is only for illustration and does not limit the structure of the above-mentioned computer terminal. For example, the computer terminal may also include more or fewer components than those shown in FIG1 , or have a different configuration with the same functions as those shown in FIG1 or more functions than those shown in FIG1 .
[0033] The memory 104 can be used to store computer programs, for example, software programs and modules of application software, such as the computer program corresponding to the signal determination method in the embodiment of the present disclosure. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, that is, implementing the above-mentioned method. The memory 104 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include a memory remotely located relative to the processor 102, and these remote memories may be connected to the computer terminal via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0034] The transmission device 106 is used to receive or transmit data via a network. A specific example of the aforementioned network may include a wireless network provided by a computer terminal's communications provider. In one embodiment, the transmission device 106 includes a network interface controller (NIC), which can be connected to other network devices via a base station to enable communication with the Internet. In another embodiment, the transmission device 106 may be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0035] FIG2 is a flow chart (I) of a method for determining a signal according to an embodiment of the present disclosure, which can be applied to the above-mentioned computer terminal. As shown in FIG2 , the steps of the method include:
[0036] Step S202: Determine prediction information of the first prediction mode.
[0037] Step S204 : When it is determined that the prediction information comes from the second prediction mode, determine the signal of the technology adopted by the first prediction mode according to the signal of the technology adopted by the second prediction mode.
[0038] The embodiment of the present disclosure determines the prediction information of the first prediction mode; and when it is determined that the prediction information comes from the second prediction mode, determines the signal of the technology adopted by the first prediction mode based on the signal of the technology adopted by the second prediction mode, thereby solving the technical problem that the signal of the technology adopted by the first prediction mode cannot be determined in the IBC merged prediction mode, thereby achieving the technical effect that the signal of the technology adopted by the first prediction mode can also be determined in the IBC merged prediction mode.
[0039] It should be noted that the signal in the embodiment of the present disclosure may represent information such as an identifier, a switch, a symbol, a flag, etc., and the embodiment of the present disclosure is not limited to this.
[0040] In an exemplary embodiment, after executing the above step S202 to determine the prediction information of the first prediction mode, the method further includes: when it is determined that the prediction information does not come from the second prediction mode, determining that the signal of some technologies of the first prediction mode is the same as the signal of the same technology in the prediction information.
[0041] Optionally, in the above embodiment, the first prediction mode includes at least an IBC mode, wherein the IBC mode includes an IBC merge mode and an IBC Advanced Motion Vector Prediction (AMVP) mode.
[0042] In an exemplary embodiment, after completing the above-mentioned step S204 to determine the signal of the technology adopted by the first prediction mode based on the signal of the technology adopted by the second prediction mode, or after completing the above-mentioned determination that the signal of part of the technology of the first prediction mode is identical to the signal of the same technology in the prediction information, the method further includes: determining whether to turn on the relevant prediction processing technology based on the signal of the technology adopted by the determined first prediction mode; and if it is determined to be turned on, using the relevant prediction processing technology for the target reference block.
[0043] Optionally, in the above embodiment, the related prediction processing technology includes at least: LIC technology and FIBC technology, which is not limited in the embodiment of the present disclosure.
[0044] In an exemplary embodiment, the implementation process of determining the signal of the technology adopted by the first prediction mode based on the signal of the technology adopted by the second prediction mode in the above-mentioned step S204 specifically includes: when the first prediction mode is the IBC mode and the second prediction mode is the ITMP mode, the FIBC of the current coding unit is turned on when the FLM of the candidate ITMP is turned on, and the FIBC of the current coding unit is turned off when the FLM of the candidate ITMP is turned off, so as to obtain the signal of the technology adopted by the first prediction mode.
[0045] In an exemplary embodiment, determining the signal of the technology adopted by the first prediction mode based on the signal of the technology adopted by the second prediction mode in the above-mentioned step S204 can also be implemented in the following manner, specifically including: when the first prediction mode is the IBC mode and the second prediction mode is the ITMP mode, when the TMP-LIC of the candidate ITMP is turned on, the LIC of the current coding unit is turned on, and when the TMP-LIC of the candidate ITMP (a technology similar to the LIC used for the TMP block) is turned off, the LIC of the current coding unit is turned off, so as to obtain the signal of the technology adopted by the first prediction mode.
[0046] In an exemplary embodiment, the implementation process of determining the prediction information of the first prediction mode in the above-mentioned step S202 specifically includes the following steps: step S11 determines the encoding unit to be encoded or the decoding unit to be decoded; step S12 determines the prediction information of the first prediction mode based on the encoding unit or the decoding unit.
[0047] In an exemplary embodiment, the specific process of executing the above-mentioned step S12 to determine the prediction information of the first prediction mode according to the encoding unit or decoding unit includes: determining a candidate set corresponding to the encoding unit or decoding unit; traversing the candidate set to obtain the prediction information of the first prediction mode.
[0048] Optionally, in the above embodiment, after traversing the candidate set, the method further includes: selecting a candidate with the smallest encoding cost as the motion information of the current coding unit, and encoding the candidate index and other related information into the bitstream.
[0049] Next, the signal determination method will be further described in conjunction with the following embodiments.
[0050] The implementation of this embodiment is based on a hybrid coding framework. FIG3 is a schematic diagram of the hybrid coding framework according to the embodiment of the present disclosure. The hybrid coding framework is a new generation video coding standard H.266 / VVC coding framework, which specifically includes modules such as intra-frame prediction, inter-frame prediction, transformation, quantization, loop filtering, and entropy coding. Specifically, as shown in FIG3:
[0051] The overall framework process of the encoding end includes:
[0052] The input video is divided into frames and then block partitioning is performed. Specifically, the frames are first divided into multiple Coding Tree Units (CTUs). Each CTU can be divided into four Coding Units (CUs) of the same size using a quadtree, or recursively divided into CUs of different sizes using a Multiple Type Trees (MTT), i.e., a binary tree or ternary tree structure.
[0053] After completing the above block division, the divided blocks need to be sent to the intra-frame prediction module or the inter-frame prediction module for predictive coding. Among them, the intra-frame prediction module is mainly configured to remove the spatial correlation of the image, using the encoded reconstructed block information to predict the current pixel block to remove spatial redundancy; the inter-frame prediction module is mainly configured to remove the temporal correlation of the image, using the encoded image as the reference image of the current frame to obtain the motion information of each block, thereby removing temporal redundancy.
[0054] Optionally, the encoding process also includes subtracting the predicted value obtained by the predictive coding from the original block to obtain a residual value, and then transforming and quantizing the residual to remove frequency domain correlation and perform lossy compression on the data. Transform coding can transform the image from a spatial domain signal to the frequency domain, concentrating energy in low-frequency areas. The quantization module can reduce the dynamic range of the image coding.
[0055] It should be noted that all coding parameters and residuals need to be entropy-coded to form a binary stream for storage or transmission. The output data of the entropy coding module is the compressed code stream of the original video.
[0056] Furthermore, the predicted value and the residual after inverse quantization and inverse transformation can be added to obtain a block reconstruction value, and finally a reconstructed image is formed.
[0057] Optionally, the reconstructed image is filtered through a loop filter and stored in an image cache for use as a reference image in the future. The loop filtering technologies in H.266 / VVC include Luma Mapping with Chroma Scaling (LMCS), Deblocking Filter (DBF), Sample Adaptive Offset (SAO), and Adaptive Loop Filter (ALF). LMCS improves compression efficiency by reallocating codewords across information within the dynamic range; DBF is set to reduce blocking artifacts; SAO is set to improve ringing artifacts; and ALF can reduce decoding errors.
[0058] The overall framework process of the decoding end includes:
[0059] The prediction mode is obtained by parsing the code stream to obtain the prediction value, the residual obtained by code stream parsing is inversely transformed and dequantized, the prediction value and the residual after inverse quantization and inverse transformation are added to obtain the block reconstruction value, and finally a reconstructed image is formed. The reconstructed image is filtered by the loop filter and stored in the image cache as a reference image in the future.
[0060] In an optional embodiment, the second prediction mode includes an ITMP mode. ITMP is an intra-frame prediction technology. FIG4 is a flowchart (II) of a method for determining a signal according to an embodiment of the present disclosure. FIG4 shows the prediction steps of the ITMP mode. The specific steps are as follows:
[0061] Step S402: Construct an ITMP candidate list.
[0062] Optionally, during the execution of step S402, a plurality of reference block candidates arranged in ascending order of template cost are first searched within the search range of the reconstruction area of the current frame, and a candidate list is constructed. The template refers to an L-shaped reconstructed pixel region above or to the left of the coding unit or reference block, or above and to the left. The template cost is the sum of absolute difference (SAD) and / or sum of absolute values (SATD) after Hadamard transformation between the template of the coding unit and the template of the reference block.
[0063] It should be noted that in the candidate list, each candidate has a block vector BV, which is the position offset from the upper left corner of the coding unit to the upper left corner of the candidate reference block. The BV and other related information such as prediction processing technology in the candidate are collectively referred to as motion information below.
[0064] Step S404: Determine whether the current coding unit selects multi-candidate prediction or single-candidate prediction. If multi-candidate prediction is selected, execute step S406; otherwise, select single-candidate prediction and execute step S408.
[0065] Step S406: perform multi-candidate prediction, output the predicted block of the current coding unit, and end the prediction process.
[0066] Step S408: Select a candidate from the candidate list, obtain motion information, and obtain a reference block.
[0067] Step S410: Determine whether to use the FLM technology. If the FLM technology is used, execute step S412; otherwise, execute step S414.
[0068] Step S412: Perform filtering processing on the reference block using the FLM technology, and execute step S418.
[0069] Step S414: Determine whether to use the fractional precision BV to refine the candidate BV. If yes, execute step S416; otherwise, execute step S418.
[0070] Step S416: Refine the fractional accuracy of the candidate BVs, select a BV with better fractional accuracy, and obtain the reference block pointed to by the BV.
[0071] Step S418: Obtain a prediction block for the current coding unit using the reference block, and end the prediction process.
[0072] It should be noted that in the hybrid coding framework, the ITMP technology at the encoding end will encode signals of related technologies into the bitstream, such as the FLM signal, which is used to indicate whether FLM is enabled or disabled. At the decoding end, after parsing the bitstream to obtain the mode of the current coding unit, if it belongs to ITMP mode, it will further parse the signal to determine whether a single candidate is used. If a single candidate is used, the candidate index will be further parsed to identify the index position selected in the candidate list. After obtaining the corresponding candidate, the FLM signal will be further parsed from the bitstream to indicate whether FLM technology is enabled.
[0073] In an optional embodiment, the first prediction mode includes an IBC mode. IBC is an intra-frame prediction technology that specifically includes two modes: an IBC merge mode and an IBC AMVP mode. FIG5 is a flowchart (III) of a method for determining a signal according to an embodiment of the present disclosure. FIG4 shows the prediction steps of the IBC merge mode. The specific steps are as follows:
[0074] Step S502: Construct a merge candidate list.
[0075] Candidates mainly come from spatially adjacent IBC blocks, spatially non-adjacent IBC blocks, historical IBC blocks, and default candidates. When a spatially adjacent block or non-adjacent block belongs to an ITMP coding block, the motion information of the ITMP block is also added to the candidate list as a candidate.
[0076] Step S504: Select a candidate from the candidate list to obtain corresponding motion information and corresponding reference block.
[0077] Step S506: Determine whether the motion information comes from the ITMP mode coding block. If yes, execute step S508; if not, execute step S510.
[0078] Step S508: The LIC signal and the FIBC signal of the current coding unit are both forcibly set to 0. Execute step S512.
[0079] Step S510: The LIC signal and the FIBC signal of the current coding unit are equal to the candidate LIC signal and the FICB signal respectively.
[0080] Step S512: Determine whether the LIC technology is enabled (ie, determine whether the LIC signal is equal to 1). If yes, execute step S514; otherwise, execute step S516.
[0081] Step S514: Apply the LIC technology to the reference block and execute step S520.
[0082] Step S516: Determine whether the FIBC technology is turned on (i.e., determine whether the FIBC signal is equal to 1). If so, execute step S518; otherwise, execute step S520.
[0083] Step S518: Apply FIBC technology to the reference block and proceed to step S520.
[0084] Step S520: Obtain a prediction block using the reference block, and end the prediction process.
[0085] Among them, it should be noted that, in the encoding end of the hybrid coding framework, when the coding unit selects the IBC merge mode encoding, the signal of the IBC merge mode will be encoded into the code stream, and the index of the selected candidate in the merge candidate list will be further encoded. The signals of LIC and FIBC technologies are obtained through the index pointing to the candidate LIC and FIBC signals, and will not be encoded into the code stream. In particular, when the candidate comes from the ITMP block, the signals of LIC and FIBC will be forced to 0, that is, the LIC and FIBC technologies will be turned off. In the decoding end of the hybrid coding framework, after parsing the coding mode and candidate index in the code stream, the signal determination behavior consistent with the encoding end will be performed.
[0086] In an optional embodiment, the first prediction mode is mode 1 and the second prediction mode is mode 2. When mode 1 selects information from mode 2 as prediction information, signal control of some technologies in mode 1 can be obtained from information of other technologies with similar principles or purposes in mode 2. FIG6 is a flowchart (four) of the signal determination method according to an embodiment of the present disclosure, and the specific steps are shown in FIG6:
[0087] Step S602: Determine prediction information of mode 1.
[0088] There are many ways to determine the prediction information. For example, at the encoding end, the final prediction information is obtained through rate-distortion optimization, while at the decoding end, the prediction information of mode 1 can be obtained by parsing the bitstream information.
[0089] Step S604: Determine whether the prediction information comes from mode 2; if so, execute step S606; if not, execute step S608.
[0090] Step S606: The signals of some technologies in Mode 1 are determined by the signals of other prediction processing technologies in Mode 2, and then step S610 is executed.
[0091] Step S608: The signals of some technologies of Mode 1 are determined by predicting the signals of the same technology in the information.
[0092] Step S610: Determine whether the relevant technology is enabled according to the signal of the technology in Mode 1; if enabled, execute step S612; otherwise, execute step S614.
[0093] Step S612: Applying mode 1 correlation prediction processing technology to the input.
[0094] Step S614: perform subsequent prediction processing.
[0095] Optionally, the method of the above embodiment can be implemented in a hybrid coding framework to obtain a video encoding method. The video encoding method can be applied to a device or application for encoding a video. When the coding unit belongs to the IBC merge mode, when selecting motion information from the candidate ITMP block for prediction, the FIBC or LIC signal of the coding unit will determine the signal of other prediction processing technologies in the ITMP block. Figure 7 is a flowchart (V) of the signal determination method according to an embodiment of the present disclosure. The specific steps are shown in Figure 7:
[0096] Step S702: Construct a merge candidate list.
[0097] Candidates mainly come from spatially adjacent IBC blocks, spatially non-adjacent IBC blocks, historical IBC blocks, and default candidates. When a spatially adjacent block or non-adjacent block belongs to an ITMP coding block, the motion information of the ITMP block is also added to the candidate list as a candidate.
[0098] Step S704: traverse the candidate list, select candidates in sequence, and obtain motion information corresponding to the candidates.
[0099] Step S706: Determine whether the motion information comes from the ITMP mode coding block. If yes, execute step S708; if not, execute step S710.
[0100] Step S708: Determine the prediction processing technology signal in the ITMP block using the LIC signal or the FIBC signal of the current coding unit, and then proceed to step S712.
[0101] In the above step S708, there are multiple implementations for determining the signals of other prediction processing technologies in the ITMP block using the LIC signal and the FIBC signal of the current coding unit, including but not limited to the following:
[0102] The signal of the current coding unit FIBC determines the signal of the FLM in the ITMP block, that is, when the FLM of the candidate ITMP is turned on, the FIBC of the current coding unit is turned on, and when the FLM of the candidate ITMP is turned off, the FIBC of the current coding unit is turned off;
[0103] And / or, the signal of the LIC of the current coding unit determines the signal of the TMP-LIC in the ITMP block, that is, when the TMP-LIC of the candidate ITMP is turned on, the LIC of the current coding unit is turned on, and when the TMP-LIC of the candidate ITMP is turned off, the LIC of the current coding unit is turned off.
[0104] Step S710: The LIC signal and the FIBC signal of the current coding unit are equal to the candidate LIC signal and the FIBC signal respectively.
[0105] Step S712: Obtain a reference block using the candidate BV.
[0106] Step S714: Determine whether the LIC technology is enabled. If yes, execute step S716; otherwise, execute step S718.
[0107] Step S716: Apply LIC technology to the reference block and proceed to step S722.
[0108] Step S718: Determine whether the FIBC technology is enabled. If yes, execute step S720; otherwise, execute step S722.
[0109] Step S720: Apply FIBC technology to the reference block. Execute step S722.
[0110] Step S722: Obtain a prediction block using the reference block and calculate the coding cost of the current candidate.
[0111] Step S724: Determine whether the candidate list has been traversed. If so, execute step S726; otherwise, return to step S704.
[0112] Step S726: Select the candidate with the minimum encoding cost as the motion information of the current coding unit to predict the coding unit.
[0113] Step S728: Encode the candidate index and other related information into the bitstream.
[0114] It should be noted that additional high-level syntax elements may be added to any one or more of the video parameter set (VPS), sequence parameter set (SPS), picture parameter set (PPS), adaptive parameter set (APS), slice header (SH), picture header (PH), or supplemental enhancement information (SEI) to indicate whether the above-mentioned signal determination method is enabled. If the above-mentioned syntax elements exist, they need to be transmitted to the decoder in the bitstream.
[0115] In an optional embodiment, a video decoding method corresponding to the video encoding method in the above embodiment is also provided, and the video decoding method can be applied to a device or application for decoding a video. When parsing the relevant syntax in the code stream, when the coding unit belongs to the IBC merge mode, the corresponding list index is parsed, and when the motion information from the candidate ITMP block is selected for prediction, the signal of the FIBC or LIC of the coding unit will determine the signal of other prediction processing technologies in the ITMP block. Figure 8 is a flowchart (six) of the signal determination method according to the embodiment of the present disclosure, and the specific steps are shown in Figure 8:
[0116] Step S802: Construct a merge candidate list.
[0117] Candidates mainly come from spatially adjacent IBC blocks, spatially non-adjacent IBC blocks, historical IBC blocks, and default candidates. When a spatially adjacent block or non-adjacent block belongs to an ITMP coding block, the motion information of the ITMP is also added to the candidate list as a candidate.
[0118] Step S804: Parse the code stream to obtain candidate indexes.
[0119] Step S806: Select a corresponding candidate in the merge candidate list to obtain motion information of the candidate.
[0120] Step S808: Determine whether the motion information comes from the ITMP mode coding block. If yes, execute step S810; if not, execute step S812.
[0121] Step S810: Determine the signals of other prediction processing technologies in the ITMP block based on the LIC signal and the FIBC signal of the current coding unit, and then proceed to step S814.
[0122] It should be noted that, in the above step S810, there are multiple implementations for determining the control of the LIC or FIBC for the coding unit based on the activation status of the FLM of the ITMP block, including:
[0123] The signal of FLM in the ITMP block is determined by the signal of the current FIBC, that is, when the FLM of the candidate ITMP is enabled, the FIBC of the current coding unit is turned on, and when the FLM of the candidate ITMP is turned off, the FIBC of the current coding unit is turned off;
[0124] And / or, the signal of the TMP-LIC in the ITMP block is determined by the signal of the current LIC, that is, when the TMP-LIC of the candidate ITMP is enabled, the LIC of the current coding unit is turned on, and when the TMP-LIC of the candidate ITMP is disabled, the LIC of the current coding unit is disabled.
[0125] Step S812: The LIC signal and the FIBC signal of the current coding unit are equal to the candidate LIC signal and the FIBC signal respectively.
[0126] Step S814: Obtain a reference block using the candidate BV.
[0127] Step S816: Determine whether the LIC technology is enabled. If yes, execute step S818; otherwise, execute step S820.
[0128] Step S818: Apply LIC technology to the reference block and proceed to step S824.
[0129] Step S820: Determine whether the FIBC technology is enabled. If yes, execute step S822; otherwise, execute step S824.
[0130] Step S822: Apply FIBC technology to the reference block. Execute step S824.
[0131] Step S824: Obtain a prediction block using the reference block.
[0132] It should be noted that if there are syntax elements in any one or more parameter sets in VPS, SPS, PPS, APS, SH, or SEI, the method for determining whether to enable the above-mentioned signal needs to first parse the above-mentioned syntax elements and choose whether to determine the signal based on the syntax elements.
[0133] In this embodiment, a signal determination device is also provided, which is used to implement the above-mentioned embodiments and preferred embodiments. Details already described are omitted for clarity. As used below, the term "module" may refer to a combination of software and / or hardware that implements a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, implementation using hardware, or a combination of software and hardware, is also possible and contemplated.
[0134] FIG9 is a block diagram of a signal determination device according to an embodiment of the present disclosure. As shown in FIG9 , the signal determination device includes:
[0135] A first determining module 92 is configured to determine prediction information of a first prediction mode;
[0136] The second determination module 94 is configured to determine the signal of the technology adopted by the first prediction mode according to the signal of the technology adopted by the second prediction mode when it is determined that the prediction information comes from the second prediction mode.
[0137] In an exemplary embodiment, the first determination module 92 is further configured to: when it is determined that the prediction information does not come from the second prediction mode, determine that the signal of the partial technology of the first prediction mode is the same as the signal of the same technology in the prediction information.
[0138] In an exemplary embodiment, the second determination module 94 is further configured to: determine whether to enable the relevant prediction processing technology according to a signal of the technology adopted by the determined first prediction mode; and if enabled, use the relevant prediction processing technology on the target reference block.
[0139] In an exemplary embodiment, the above-mentioned second determination module 94 is also configured to: when the first prediction mode is the IBC mode and the second prediction mode is the ITMP mode, turn on the FIBC of the current coding unit when the FLM of the candidate ITMP is turned on, and turn off the FIBC of the current coding unit when the FLM of the candidate ITMP is turned off, so as to determine the signal of the technology adopted by the first prediction mode.
[0140] In an exemplary embodiment, the second determination module 94 is further configured to, when the first prediction mode is the IBC mode and the second prediction mode is the ITMP mode, enable the LIC of the current coding unit when the TMP-LIC of the candidate ITMP is enabled, and disable the LIC of the current coding unit when the TMP-LIC of the candidate ITMP is disabled, so as to obtain a signal of the technology adopted by the first prediction mode.
[0141] In an exemplary embodiment, the above-mentioned first determination module 92 includes: a first determination unit, configured to determine the encoding unit to be encoded or the decoding unit to be decoded; and a second determination unit, configured to determine the prediction information of the first prediction mode based on the encoding unit or the decoding unit.
[0142] In an exemplary embodiment, the above-mentioned second determination unit is further configured to: determine the prediction information of the first prediction mode based on the encoding unit or the decoding unit, including: determining the candidate set corresponding to the encoding unit or the decoding unit; traversing the candidate set to obtain the prediction information of the first prediction mode.
[0143] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present disclosure, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a readable storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods of the various embodiments of the present disclosure.
[0144] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk.
[0145] For specific examples in this embodiment, reference may be made to the examples described in the above embodiments and exemplary implementation modes, and this embodiment will not be described in detail here.
[0146] An embodiment of the present disclosure further provides an electronic device, including a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to perform the steps in any of the above method embodiments.
[0147] Optionally, in this embodiment, the processor may be configured to execute the following steps through a computer program:
[0148] S1, determining prediction information of a first prediction mode.
[0149] S2: When it is determined that the prediction information comes from the second prediction mode, determine the signal of the technology adopted by the first prediction mode according to the signal of the technology adopted by the second prediction mode.
[0150] In an exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.
[0151] Optionally, in this embodiment, the electronic device may also be configured to execute steps S1 and S2 via a computer program.
[0152] For specific examples in this embodiment, reference may be made to the examples described in the above embodiments and exemplary implementation modes, and this embodiment will not be described in detail here.
[0153] Obviously, those skilled in the art should understand that the modules or steps of the present disclosure described above can be implemented using a general-purpose computing device, they can be concentrated on a single computing device, or distributed across a network composed of multiple computing devices, they can be implemented using program code executable by the computing device, and thus, they can be stored in a storage device and executed by the computing device, and in some cases, the steps shown or described can be performed in a different order than herein, or they can be fabricated into separate integrated circuit modules, or multiple modules or steps can be fabricated into a single integrated circuit module for implementation. Thus, the present disclosure is not limited to any particular combination of hardware and software.
[0154] The foregoing description is merely a preferred embodiment of the present disclosure and is not intended to limit the present disclosure. Those skilled in the art will readily appreciate that various modifications and variations of the present disclosure are possible. Any modifications, equivalent substitutions, or improvements made within the principles of the present disclosure shall be included within the scope of protection of the present disclosure.
Claims
1. A method for determining a signal, comprising: Determining prediction information of a first prediction mode; In a case where it is determined that the prediction information comes from the second prediction mode, a signal of the technique adopted by the first prediction mode is determined according to a signal of the technique adopted by the second prediction mode.
2. The method for determining a signal according to claim 1, wherein: After determining the prediction information of the first prediction mode, the method further includes: In a case where it is determined that the prediction information does not come from the second prediction mode, it is determined that the signal of the partial technology of the first prediction mode is the same as the signal of the same technology in the prediction information.
3. The method for determining a signal according to claim 2, wherein: After determining the signal of the technology used by the first prediction mode according to the signal of the technology used by the second prediction mode, or determining that the signal of part of the technology of the first prediction mode is the same as the signal of the same technology in the prediction information, the method further includes: Determining whether to start the relevant prediction processing technology according to the signal of the technology adopted by the determined first prediction mode; When it is determined to be turned on, the correlation prediction processing technology is used for the target reference block.
4. The method for determining a signal according to claim 1, wherein: Determining the signal of the technology adopted by the first prediction mode according to the signal of the technology adopted by the second prediction mode includes: When the first prediction mode is the IBC mode and the second prediction mode is the ITMP mode, the signal of the technology adopted by the first prediction mode is obtained by turning on the FIBC of the current coding unit when the FLM of the candidate ITMP is turned on, and turning off the FIBC of the current coding unit when the FLM of the candidate ITMP is turned off.
5. The method for determining a signal according to claim 1, wherein: Determining the signal of the technology adopted by the first prediction mode according to the signal of the technology adopted by the second prediction mode includes: When the first prediction mode is the IBC mode and the second prediction mode is the ITMP mode, the LIC of the current coding unit is turned on when the TMP-LIC of the candidate ITMP is turned on, and the LIC of the current coding unit is turned off when the TMP-LIC of the candidate ITMP is turned off, so as to obtain a signal of the technology adopted by the first prediction mode.
6. The method for determining a signal according to claim 1, wherein: Determining prediction information of a first prediction mode includes: Determining a coding unit to be encoded or a decoding unit to be decoded; Prediction information of the first prediction mode is determined according to the encoding unit or the decoding unit.
7. The method for determining a signal according to claim 6, wherein: Determining prediction information of the first prediction mode according to the encoding unit or the decoding unit includes: Determine a candidate set corresponding to the encoding unit or the decoding unit; The candidate set is traversed to obtain prediction information of the first prediction mode.
8. A signal determination device, comprising: A first determination module, configured to determine prediction information of a first prediction mode; The second determination module is configured to determine the signal of the technology adopted by the first prediction mode according to the signal of the technology adopted by the second prediction mode when it is determined that the prediction information comes from the second prediction mode.
9. A computer-readable storage medium, wherein a computer program is stored in the storage medium, wherein: The computer program is arranged to execute the method as claimed in any one of claims 1 to 7 when executed.
10. An electronic device comprising a memory and a processor, wherein the memory stores a computer program, and the processor is configured to execute the method according to any one of claims 1 to 7 through the computer program.