CN112565749A - Video coding method, device and system and computer readable storage medium - Google Patents

Video coding method, device and system and computer readable storage medium Download PDF

Info

Publication number
CN112565749A
CN112565749A CN202011419569.3A CN202011419569A CN112565749A CN 112565749 A CN112565749 A CN 112565749A CN 202011419569 A CN202011419569 A CN 202011419569A CN 112565749 A CN112565749 A CN 112565749A
Authority
CN
China
Prior art keywords
pixel
string
current
pixel string
type
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011419569.3A
Other languages
Chinese (zh)
Other versions
CN112565749B (en
Inventor
陈秀丽
江东
方诚
林聚财
殷俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN202011419569.3A priority Critical patent/CN112565749B/en
Publication of CN112565749A publication Critical patent/CN112565749A/en
Priority to EP21900126.0A priority patent/EP4241446A4/en
Priority to PCT/CN2021/135660 priority patent/WO2022117104A1/en
Application granted granted Critical
Publication of CN112565749B publication Critical patent/CN112565749B/en
Priority to US18/327,874 priority patent/US20230319288A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The application discloses a video coding method, a device, a system and a computer readable storage medium, wherein the video coding method comprises the following steps: acquiring a current frequently-occurring pixel and a historical frequently-occurring pixel of a current block; constructing a frequent pixel list by using the current frequent pixel and the historical frequent pixel; predicting and classifying pixels in a current block by using a frequently-occurring pixel list to obtain the type of a current pixel string; rounding and complementing the current pixel string to obtain a current target pixel string so as to enable the string length of the current target pixel string to be a multiple of a preset length, wherein the type of the current pixel string is the same as that of the current target pixel string; and coding the current target pixel string by using the type of the current target pixel string and the frequently-occurring pixel list to obtain the code stream of the current block. According to the method and the device, the pixel strings with different string lengths are limited to be multiples of the preset length for coding, so that the complexity of hardware implementation is reduced, and the number of coded bits is reduced.

Description

Video coding method, device and system and computer readable storage medium
Technical Field
The present application relates to the field of video coding technologies, and in particular, to a video coding method, apparatus, system, and computer-readable storage medium.
Background
The video can be compressed by a video coding technology so as to reduce the data volume of the video, reduce the network bandwidth in the video transmission process and reduce the storage space. Generally, the video coding standard includes intra-frame prediction, inter-frame prediction, transformation, quantization, loop filtering, entropy coding, and other processes to achieve data compression.
The equivalent string level unit base vector string mode in the current SP prediction technology (string matching prediction technology) has the problems that: the string lengths of different pixel strings under the equivalent string-level unit base vector string mode are uncertain, and the variable string length is not beneficial to hardware implementation, so that the implementation complexity is greatly increased; in addition, different pixel strings are coded according to the actual string length, and the number of coded bits is large.
Disclosure of Invention
The application provides a video coding method, a video coding device, a video coding system and a computer readable storage medium.
In order to solve the above technical problem, a first technical solution provided by the present application is: there is provided a video encoding method including: acquiring a current frequently-occurring pixel and a historical frequently-occurring pixel of a current block; constructing a frequent pixel list by using the current frequent pixel and the historical frequent pixel; predicting and classifying the pixels in the current block by using the frequently-occurring pixel list to obtain the type of the current pixel string; rounding and complementing the current pixel string to obtain a current target pixel string so as to enable the string length of the current target pixel string to be a multiple of a preset length, wherein the type of the current pixel string is the same as that of the current target pixel string; and encoding the current target pixel string by using the type of the current target pixel string and the frequently-occurring pixel list to obtain the code stream of the current block.
In order to solve the above technical problem, a second technical solution provided by the present application is: the video coding device comprises a pixel acquisition module, a list construction module, a prediction classification module and a coding module; the pixel obtaining module is used for obtaining the current frequently-occurring pixel and the historical frequently-occurring pixel of the current block; the list construction module is used for constructing a frequently-occurring pixel list by using the current frequently-occurring pixel and the historical frequently-occurring pixel; the prediction classification module is used for performing prediction classification on the pixels in the current block by using the frequently-occurring pixel list to acquire the type of the current pixel string; the prediction classification module is further configured to round and complement the current pixel string to obtain a current target pixel string, so that the string length of the current target pixel string is a multiple of a preset length, where the type of the current pixel string is the same as the type of the current target pixel string; and the coding module is used for coding the current target pixel string by using the type of the current target pixel string and the frequently-occurring pixel list to obtain the code stream of the current block.
In order to solve the above technical problem, a third technical solution provided by the present application is: a video coding and decoding system is provided, which comprises a processor, and a memory connected with the processor, wherein the memory stores program instructions; the processor is configured to execute the program instructions stored by the memory to implement the video encoding method as described above.
In order to solve the above technical problem, a fourth technical solution provided by the present application is: there is provided a computer readable storage medium storing program instructions which, when executed, implement a video encoding method as described above.
According to the video coding method, the current frequently-occurring pixels and the historical frequently-occurring pixels of the current block are obtained; constructing a frequent pixel list by using the current frequent pixel and the historical frequent pixel; predicting and classifying pixels in a current block by using a frequently-occurring pixel list to obtain the type of a current pixel string; rounding and complementing the current pixel string to obtain a current target pixel string so as to enable the string length of the current target pixel string to be a multiple of a preset length, wherein the type of the current pixel string is the same as that of the current target pixel string; and coding the current target pixel string by using the type of the current target pixel string and the frequently-occurring pixel list to obtain the code stream of the current block. According to the method and the device, the pixel strings with different string lengths are limited to be multiples of the preset length for coding, so that the complexity of hardware implementation is reduced, and the number of coded bits is reduced.
Drawings
Fig. 1 is a schematic flowchart illustrating an embodiment of a video encoding method provided in the present application;
FIG. 2 is a schematic diagram of various types of pixel strings in the evs _ ubvs mode provided herein;
FIG. 3 is a schematic illustration of a horizontal arcuate scan pattern as provided herein;
FIG. 4 is a schematic diagram of the generation of a list of commonly occurring pixels provided herein;
fig. 5 is a schematic structural diagram of an embodiment of a video encoding apparatus provided in the present application;
FIG. 6 is a schematic block diagram of an embodiment of a video codec system of the present application;
fig. 7 is a schematic structural diagram of a computer-readable storage medium of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
The video codec standards are h.264/AVC, h.265/HEVC, h.266/VVC, VP8, VP9, AV1, AVs, etc., and the main purpose of the video codec is to compress the acquired video signals into data in different standard formats for transmission or storage. In order to apply the video coding technique to an actual scene, the rate control technique plays a crucial role in a video encoder, because it can adjust the target rate output by the encoder under the condition of limited communication bandwidth or storage space, thereby avoiding the condition that the coded video frame is too large or too small.
The present application will be described in detail with reference to the accompanying drawings and examples.
Referring to fig. 1, fig. 1 is a schematic flowchart illustrating a video encoding method according to an embodiment of the present disclosure.
The application provides a video coding method based on an existing equivalent string-level unit basis vector string (evs _ ubvs) mode, wherein a evs _ ubvs mode is a sub-mode under an SP prediction technology, and different from a common SP prediction mode, a evs _ ubvs mode predicts a pixel string by using a common pixel or a unit basis vector instead of a string vector. Thus, after prediction in the evs _ ubvs mode, the pixel string in the current block can be divided into the following two strings and unmatched pixels:
(1) equivalent value string (evs for short): a characteristic of such a pixel string is that all pixels in the pixel string take equal values, since all pixels in the pixel string are predicted using the same, commonly occurring pixel.
(2) Unit basis vector string (ubvs for short): because the current scanning mode for the current block only has horizontal arc scanning, the current unit base vector string refers to the pixel string predicted by the (0, -1) vector.
(3) Unmatched pixels (unmatched pixels): if a pixel does not belong to either evs or ubvs, it is an unmatched pixel.
As shown in fig. 2, fig. 2 is a schematic diagram of various types of pixel strings in evs _ ubvs mode provided by the present application. The first two pixel strings (pixel string a and pixel string B) in the current block are predicted by two commonly occurring pixels, namely index0 and index1, in the commonly occurring pixel list, wherein the two strings are evs; the first two pixels of the third row are evs with a string length of 2, and the last two pixels C and D are two unmatched pixels; the last row of pixel strings is an ubvs.
evs _ ubvs mode applies as follows: evs _ ubvs mode is only used for coding blocks with width and height greater than 4, and for pixel strings within a coding block that employs this mode, if evs strings are used, the frequent pixels that it references must be within the current coding block and the left-hand neighboring coding block; if it is a ubvs string, its reference string must be inside the current coding block.
Like the normal SP prediction mode, the evs _ ubvs mode only uses horizontal bow scan, and the total number of pixel strings and unmatched pixels in a coding block cannot exceed 1/4 of the total pixels of the coding block. In particular, please refer to fig. 3 for a horizontal bow scan manner described in the embodiments of the present disclosure.
In addition, to further simplify the hardware implementation, the following restrictions are made on the list of commonly occurring pixels built in the evs _ ubvs sub-mode: for the length of the current block common pixel list, the length of an encoding block of 8 x 8 is not more than 10, and the lengths of encoding blocks of other sizes are not more than 15; the length of the historical list of commonly occurring pixels does not exceed 28.
The video encoding method of the embodiments of the present disclosure can be used not only for SCC (screen content, mainly computer-generated images) scenes but also for natural image scenes and mixed scenes (SCC + natural images).
The video coding method of the embodiment of the disclosure includes the following specific steps:
step S11: and acquiring the current commonly-occurring pixel and the historical commonly-occurring pixel of the current block.
Step S12: a list of current frequent pixels is constructed using the current frequent pixels and the historical frequent pixels.
In the embodiment of the present disclosure, the video encoding apparatus first obtains the history current pixel from the history current pixel list (PrevSrb) and fills the current pixel list with the history current pixel, and the specific process is as follows:
(1) for each pixel in the current block, traversing each history frequently-occurring pixel in the history frequently-occurring pixel list, calculating the difference value between each history frequently-occurring pixel and the current pixel in the current block, and selecting the history frequently-occurring pixel with the smallest absolute value of the difference value as the best history frequently-occurring pixel of the current pixel.
(2) When the difference value between the current pixel and the corresponding optimal historical frequently-occurring pixel is smaller than a preset threshold value i _ errorlimitt, the historical frequently-occurring pixel meets the condition of adding the frequently-occurring pixel list, and is determined to be hit once. It should be noted that a common pixel may be hit by multiple pixel values in the current block, and the video coding apparatus needs to record the number of times each common pixel is hit.
(3) And (3) repeating the steps (1) and (2) for each pixel in the current block, sorting the historical frequent pixels from large to small according to the hit times after all the pixels are traversed, and storing the sorted historical frequent pixels in a frequent pixel list. Wherein these frequent pixels taken from the history frequent pixel list are referred to as reused frequent pixels.
Then, the video encoding device obtains a new current frequently-occurring pixel in the current block, and fills the current frequently-occurring pixel into a temporary list p _ list _ sort, wherein the current frequently-occurring pixel in the embodiment of the disclosure is obtained by a clustering method, that is, pixels with similar pixel values in the current block are clustered into a class, and an average value of all pixels in each class is used as a representative pixel of the current class, and the specific process is as follows:
(1) for each pixel in the current block, traversing each frequently-occurring pixel in the frequently-occurring pixel list, calculating the difference value between each frequently-occurring pixel and the current pixel, and selecting the frequently-occurring pixel with the minimum difference value as the best frequently-occurring pixel.
(2) And when the difference value between the current pixel and the best frequently-occurring pixel is greater than the threshold value i _ errorlimit, indicating that the current pixel is a new frequently-occurring pixel.
(3) If the current pixel is a new frequently-occurring pixel, the current pixel needs to be classified, and the classification method comprises the following steps: a SAD (Sum of Absolute Difference) value calculation is performed using the current pixel and the representative pixel of each class, and the class having the smallest SAD value is the class to which the current pixel is most likely to belong.
(4) Calculating a difference value between the current pixel and the representative pixel which is most probably attributed to the class, if the difference value is less than or equal to a threshold value i _ errorlimitt, attributing the current pixel value to the class, and updating the representative pixel; otherwise, if the difference value is larger than the threshold value i _ errorlimitt, the current pixel is taken as a new type.
(5) After all the pixels in the current block are clustered, all the classes are traversed, the classes are sorted according to the number of the pixels in the classes from most to least, and the sorted classes are stored in an independent list p _ list _ sort.
Further, the video encoding apparatus merges the history frequent pixels and the current frequent pixels into the frequent pixel list, and the specific process is as follows: averaging and rounding all pixels of each type in the independent list p _ list _ sort, adding the pixels as new current commonly-existing pixels to the tail of the commonly-existing pixel list, wherein duplication checking operation is needed during adding, and adding the pixels if the same pixels exist.
Finally, the video coding device performs SSE fine selection and then sorting on the complete frequently-occurring pixel list. The specific process is as follows:
(1) setting a new threshold i _ errorlimit _ sqr 3 i _ errorlimit
(2) For each pixel in the current block, traversing each current pixel in the current pixel list, calculating the difference value (SSE, Sum of Squared Error, Sum of Squared differences) between each current pixel and the current pixel, and selecting the current pixel with the smallest difference value as the best current pixel.
(3) All pixels within the current block are re-clustered. If the difference value of the best pixel corresponding to a certain current pixel is greater than the threshold value i _ error _ sqr, a rdcost (Rate Distortion optimization) for directly encoding the current pixel needs to be calculated, and if the rdcost is less than the difference value corresponding to the best pixel, the current pixel is an unmatched pixel, and the encoding of the current pixel is directly performed, so that the encoding bit cost is saved.
(4) If the current pixel is not an unmatched pixel, the current pixel needs to be placed in the class corresponding to the best current pixel and stored in the temporary list srb _ pred _ samples.
(5) Finally, the srb _ pred _ samples list is traversed, all pixels in each class in the list are averaged to be used as the final constant pixel value of the class, the constant pixel list is filled from the beginning in the sequence in the srb _ pred _ samples list, and the filling process needs to be repeated.
(6) After the pixels in the srb _ pred _ samples list are filled into the current position in the current pixel list each time, each pixel in the current block is traversed, and the sum of squares of differences between each pixel and the current added current pixel is calculated.
(7) And (3) setting that m effective common pixels exist at present in the common pixel list, calculating difference values of the current common pixel and the previous m pixels in the historical common pixel list for each common pixel in the common pixel list, and sequencing the historical common pixels according to the difference values from small to large.
(8) And traversing each pixel in the current block for the maximum 4 history frequently-occurring pixels in the history list after the sorting is finished, solving the sum of squares of the difference values, comparing the sum of squares of the difference values with the sum of squares of the difference values in the step (6), and if the sum of squares of the difference values is smaller than the sum of squares of the difference values in the step (6), updating the history frequently-occurring pixel with the minimum sum of squares of the difference values to the current position of the current frequently-occurring pixel list.
Through the steps, all the frequently-occurring pixels in the frequently-occurring pixel list are basically determined, and the video coding device further adjusts and sorts the frequently-occurring pixel list to ensure that the historical frequently-occurring pixels are arranged in front of the current frequently-occurring pixels. The sequence inside all the historical frequently-occurring pixels is kept unchanged, and the sequence inside all the current frequently-occurring pixels is also kept unchanged.
Step S13: and predicting and classifying the pixels in the current block by using the frequently-occurring pixel list to obtain the type of the current pixel string.
In the embodiment of the present disclosure, the video encoding apparatus performs prediction classification on the pixels in the current block, that is, performs string prediction, and divides all the pixels in the current block into an equivalent string, a unit base vector string, and an unmatched pixel, and the specific process is as follows:
the video coding device firstly matches the commonly occurring pixels of each pixel in the current block, and if the cost of coding the commonly occurring pixels after the commonly occurring pixels are matched is greater than the cost of directly coding the original pixel value of the pixels, the pixels are set as the unmatched pixels. For each pixel of the current block, traversing each frequently-occurring pixel in the frequently-occurring pixel list, calculating the difference value between each frequently-occurring pixel and the current pixel, and selecting the frequently-occurring pixel with the minimum difference value as the best frequently-occurring pixel of the current pixel.
If the difference value between the best frequently-occurring pixel and the current pixel is greater than the threshold value i _ errorlimit, the rdcost for directly coding the current pixel needs to be calculated, and if the rdcost is smaller than the difference value corresponding to the best frequently-occurring pixel, it is indicated that the difference between the current pixel and all frequently-occurring pixels is larger, and the bit cost is saved when the current pixel is directly coded. The current pixel is an unmatched pixel, and the predicted value of the current pixel is the pixel itself; otherwise, the predicted value of the current pixel is the best current pixel value.
After the video coding device determines the frequently-occurring pixels of each pixel and the matching types of each pixel, traversing each pixel in the current block according to an arch scanning sequence:
and if the initial position pixel is an unmatched pixel, the current pixel string is an unmatched pixel string, and the length and cost of the corresponding string are obtained.
Otherwise, if the initial position pixel is the matched pixel, the current pixel string is set as the equivalent string, and whether the frequently-occurring pixel of the next pixel is the same as the frequently-occurring pixel of the initial position pixel is judged. If the pixel length is the same as the current pixel string, adding 1 to the current pixel string length, and continuing to process the next pixel. Otherwise, finishing the type judgment of the current pixel string, and acquiring the cost and the string length of the current pixel string.
And further judging whether the current pixel string is a unit base vector string ubvs, if the processed pixel position is greater than or equal to the width of the current block and the string type of the previous pixel string is not the unit base vector string ubvs, entering the judgment of the unit base vector string ubvs:
if the frequently-occurring pixel of the pixel at the starting position of the current pixel string is equal to the frequently-occurring pixel at the above, whether the frequently-occurring pixel of the next pixel is the same as the frequently-occurring pixel at the above the current pixel string is further judged, accumulation is carried out until the frequently-occurring pixel of a certain pixel is different from the frequently-occurring pixel at the above the certain pixel, the number of the frequently-occurring pixels which are the same is recorded as the length of the unit base vector string ubvs, and the total cost is counted.
After prediction in the above manner, the video encoding device calculates the average cost value of each pixel, and selects a prediction method having a smaller cost value.
The embodiment of the present disclosure further provides an updating mechanism of the current pixel list, where the updating mechanism means that after a current block is encoded in evs _ ubvs mode, a current pixel in the current pixel list corresponding to the current block needs to be updated into the historical current pixel list PrevSrb. The overall rule is: and (4) putting the current pixel in the current pixel list of the current block which is coded completely in front of the PrevSrb, moving the original current pixel in the PrevSrb backwards, and simultaneously performing a duplication checking operation.
The specific updating process can be briefly divided into the following 3 steps:
(1) its duplicate current pixel (i.e., reused current pixel) with the current list of current pixels is deleted from the PrevSrb.
(2) And sequentially inserting the current pixels in the current constant pixel list into the top of the PrevSrb according to the sequence.
(3) If the number of elements of the PrevSrb list after insertion exceeds the maximum length 28, the last exceeding part of the PrevSrb list is removed.
For example, referring to fig. 4, index0 and index1 in Srb are reused regular pixels, which are duplicated with index0 and index3 in PrevSrb, respectively. Srb, index2 and index3 are new commonly occurring pixels.
Step S14: and rounding and complementing the current pixel string to obtain a current target pixel string so as to enable the string length of the current target pixel string to be a multiple of a preset length, wherein the type of the current pixel string is the same as that of the current target pixel string.
The embodiment of the disclosure further provides an evs _ ubvs prediction technology-based encoding method, which mainly adjusts the string length of a pixel string and encodes according to the string length of a specified multiple, so that the complexity of hardware implementation can be greatly reduced.
To facilitate hardware implementation, the video encoding apparatus limits pixel strings of different string lengths to a multiple of a preset length M (M > 1) for encoding. The embodiment of the present disclosure provides the following three methods for rounding and complementing a pixel string to obtain a current target pixel string with a string length that is a multiple of M, specifically:
A. and if the length of the current pixel string is not a multiple of M, rounding up the current pixel string to complement the current pixel string to a multiple of M to form a current target pixel string, wherein the type of the complemented pixel is modified to be the type of the current pixel string.
The steps of rounding up and complementing the current pixel string are as follows:
starting from the top left pixel position of the current block, each pixel is traversed in an arcuate scan order:
(1) judging whether the type of the current pixel block is a matching string or an unmatched string:
(a) if the initial position pixel is an unmatched pixel, the type of the current pixel string is set as the unmatched pixel string, whether the next pixel is the unmatched pixel or not is continuously judged until a matched pixel is judged, and at the moment, whether the string length of the current pixel string is a multiple of M or not is judged. If so, recording the length srb _ length of the unmatched pixel string, and entering the step (2); otherwise, the matched pixel is set as the unmatched pixel, and the step (a) is continued.
(b) If the initial position pixel is a matched pixel, the type of the current pixel string is firstly set as an equivalent string, the normally-occurring pixel of the initial position pixel is recorded as PixelA, whether the normally-occurring pixel of the next pixel is equal to the PixelA or not is continuously judged until the normally-occurring pixel of one pixel is judged to be not equal to the PixelA, and at the moment, whether the string length of the current pixel string is a multiple of M or not is judged. If yes, recording the total number of pixels with the same common pixels as the length srb _ length of the equivalent string, and entering the step (2); otherwise, the normally occurring pixel of the pixel is set as PixelA, and the step (b) is continued.
(2) Judging a unit basis vector string ubvs: if the processed pixel position is larger than or equal to the width of the current block and the type of the previous pixel string is not the unit basis vector string ubvs, entering the judgment of the ubvs string:
(a) if the current pixel at the current starting position is equal to the current pixel at the above, further judging whether the current pixel at the next pixel position is the same as the current pixel at the above the above-mentioned pixels, and accumulating until the current pixel at a certain position is different from the current pixel at the above the above-mentioned pixels, and judging whether the string length is a multiple of M at this moment. If so, recording the same number of pixels at the moment as the length of the ubvs string, counting the total distortion, and entering the step (3), otherwise, directly setting the normally-occurring pixel of the pixel as the normally-occurring pixel at the above position, and continuing the step (a).
(b) Otherwise, it cannot become a unit basis vector string ubvs, with a string length of 0.
And if the string length of the ubvs is larger than 0, calculating the coding bit number corresponding to the ubvs.
(3) Finally confirming the type of the current pixel string:
if the string length of the ubvs is greater than 0, calculating whether the average cost of each pixel in the ubvs is smaller than or equal to the average cost of each pixel in the equivalent string or the unmatched string; if the pixel string is smaller than the threshold value, the type of the current pixel string is set to be ubvs, otherwise, the current pixel string is an equivalent string or an unmatched string.
Corresponding to the above scheme a, the embodiment of the present disclosure relates to syntax modification of the evs _ ubvs actual encoding process as follows:
Figure BDA0002819340630000101
Figure BDA0002819340630000111
B. if the string length of the current pixel string is not a multiple of M, different processing modes are adopted for different types of strings:
(1) for unmatched pixel strings:
the starting position is judged to be an unmatched pixel until a matched pixel is met, and at the moment, whether the length of the current pixel string is a multiple of M or not is judged. If yes, recording the string length srb _ length of the current pixel string; otherwise, the matched pixel is set as unmatched, and the step (1) is continued.
(2) For an equivalent string:
the judged initial position is an equivalent string
(a) If the pixel is not equal to the pixel PixelA, then judging whether the length of the string is a multiple of M. If so, the total number of pixels equal to the number of the pixels in the normal state is recorded as the length srb _ length of the equivalent string.
(b) Otherwise, the current string length is rounded down, noted (srb _ length-srb _ length% 4), and starting the inverse arcuate scan from the current position will set the remaining pixels that are less than a multiple of 4 (srb _ length% 4) as the unmatched pixels and the commonly occurring pixels as their original pixels. Continuing to process the next pixel until the multiple of 4 is met, judging whether the next pixel is an unmatched pixel, and if not, ending; otherwise, whether the subsequent pixel is an unmatched string is continuously judged.
(3) For a string of unit basis vectors:
the judged initial position is a unit base vector string
(a) If the constant pixel at a certain position is different from the constant pixel at the above position, judging whether the string length is a multiple of M. If so, the length srb _ above _ length of the ubvs string is recorded for the same number of pixels at that time, and the total distortion is counted to complete the string length check.
(b) Otherwise, rounding the string length of the current pixel string downwards, recording as (srb _ above _ length-srb _ above _ length% 4), starting inverse arc scanning from the current position, setting the remaining pixels (srb _ above _ length% 4) which are less than the multiple of M as unmatched pixels, setting the commonly-occurring pixels as the original pixels of the commonly-occurring pixels, continuing to process the next pixel until the multiple of 4 is met, judging whether the next pixel is the unmatched pixel, and if not, ending; otherwise, whether the subsequent pixel is an unmatched string is continuously judged.
It should be noted that, corresponding to the above scheme B, the syntax modification related to the evs _ ubvs actual encoding process in the embodiment of the present disclosure is the same as the syntax modification of the above scheme a, and is not described herein again.
C. If the length of the current pixel string is not a multiple of M, the current string is rounded down to be a multiple of M, redundant pixels and subsequent pixels form a pixel string with a fixed length of M times, and the pixels in the pixel string with the fixed length are still encoded according to the original type or part of the original type.
In the specific evs _ ubvs prediction process, if the string length of the current pixel string is not a multiple of M, the string length is rounded down, the redundant pixels less than M complement M with the subsequent pixels to form a mixed type string, the string length of the pixel string is fixed to M and belongs to one of unmatched strings, each pixel of the string except for the ubvs type is stored and coded according to the actual type, and the ubvs type pixels are coded according to unmatch pixels. Different processing modes are adopted for different types of the current pixel strings:
(1) for unmatched pixel strings:
(a) the starting position is judged to be an unmatched pixel until a matched pixel is met, and at the moment, whether the length of the current pixel string is a multiple of M or not is judged. If yes, recording the string length srb _ length of the current pixel string; (b) otherwise, the current string length is rounded down, noted as (srb _ length-srb _ length% 4), and the inverse arcuate scan from the current position sets the remaining pixels less than a multiple of M (srb _ length% 4) as blend-type pixels and continues processing the next pixel until the fixed length of M is satisfied, recording the match-type for each pixel.
(2) For an equivalent string:
the judged initial position is an equivalent string
(a) If the current pixel is not equal to the pixel PixelA at the initial position until the current pixel is encountered, judging whether the string length of the current pixel string is a multiple of M, and if so, recording the total number of pixels with equal current pixels as the length srb _ length of the equivalent string.
(b) Otherwise, the string length of the current pixel string is rounded down and recorded as (srb _ length-srb _ length% 4), and the inverse arcuate scan from the current position sets the remaining pixels less than a multiple of M (srb _ length% 4) as blend-type pixels and continues processing the next pixel until the fixed length of M is satisfied, recording the match type for each pixel.
(3) For a string of unit basis vectors:
the judged initial position is a unit base vector string
(a) If the normal pixel at a certain position is different from the normal pixel at the above position, judging whether the string length is a multiple of M, if so, recording the same pixel number at this time as the length srb _ above _ length of the ubvs string, counting the total distortion, and finishing the string length confirmation.
(b) Otherwise, the current string length is noted as (srb _ above _ length-srb _ above _ length% 4), and the inverse arcuate scan from the current position sets the remaining pixels that are less than a multiple of M (srb _ above _ length% 4) as blend-type pixels and continues processing the next pixel until the fixed length is satisfied as M, recording the match type for each pixel, noting that the ubvs pixels are encoded as unmatched pixel types in the blend-type string.
It should be noted that, corresponding to the above scheme C, the syntax modification of the evs _ ubvs actual encoding process involving the unmatched string, the equivalent string, and the ubvs string in the embodiment of the present disclosure is the same as the syntax modification of the above scheme a, and is not described herein again.
Further, in the scheme C, if the pixel string is unmatched, a related syntax is required to be set to further determine the mixed string:
(a) the mixed string belongs to an unmatched string, a syntax is required to be transmitted for distinguishing the mixed string from a common unmatched string, and the type isc _ mixed _ pixel _ str _ present _ flag is determined as the string type.
(b) If isc _ mixed _ pixel _ str _ present _ flag is 1, the string does not need to be transmitted long, fixed to 4, 4 pixels, each pixel has a matching flag, match _ flag [ i ], i is 0,1,2, 3: if match [ i ] is 1, the pixel is an equivalent string pixel, and only pv _ address needs to be transmitted; if match [ i ] is 0, then for an unmatched pixel, Y, U and a V component need to be transmitted.
(c) Otherwise if isc _ mixed _ pixel _ str _ present _ flag is 0, encode in the original unmatched way, encode the unmatched string length, and Y, U and V components for each pixel.
D. The mixed string in scheme C can be treated as an independent string type, and an isc _ mixed _ pixel _ str _ present _ flag needs to be added for each string to distinguish the current mixed string type.
Step S15: and coding the current target pixel string by using the type of the current target pixel string and the frequently-occurring pixel list to obtain the code stream of the current block.
The video encoding method of the disclosed embodiment further sets the relevant syntax elements.
First a syntax element isc _ cu _ evs _ ubvs _ submode _ flag needs to be transmitted to indicate whether evs _ ubvs mode or normal SP mode is finally selected for prediction.
The transport syntax is then needed to distinguish between evs strings, unmatched pixels, or ubvs strings. Firstly transmitting a syntax element isc _ evs _ present _ flag at a coding block level to represent whether an equivalent string exists in the current block; the syntax isc _ unamatted _ pixel _ str _ present _ flag is transmitted, which indicates whether there is an unmatched pixel in the current coding unit.
At each string level, if evs strings are used, it is necessary to transmit the index of the evs string corresponding to the current pixel in the Srb list and the string length, which relates to the syntax pixel _ duration _ count _ minus1, and if a new current pixel is used, it is also necessary to transmit the value of the new current pixel.
If it is an ubvs string, it is only necessary to represent the number of consecutive evs strings or unmatched strings by one syntax, if it is 0, it represents that the string is neither evs nor unmatched pixels, i.e. ubvs, and to transmit the string length of ubvs, which relates to the syntax str _ length _ minus1[ i ].
If there is an unmatched pixel, the pixel value of the pixel needs to be transmitted, along with information on the number of consecutive unmatched pixels, and the string length relates to the syntax sc _ unadapted _ pixel _ num _ minus1 and the unadapted _ pixel _ max _ length _ minus 1.
The above statements relating to the lengths of the different strings are as follows:
Figure BDA0002819340630000141
Figure BDA0002819340630000151
in order for the decoding side to construct Srb the list, the encoding side needs to transmit three values: num _ of _ reused _ pv, num _ of _ new _ pv, prev _ pv _ not _ reused _ run. Extracting the number of the frequently-occurring pixels in the history frequently-occurring pixel list by the num _ of _ reused _ pv current block; prev _ pv _ not _ reused _ run represents that when the history frequently-occurring pixel list is scanned from the beginning, one history frequently-occurring pixel can be encountered every several indexes, and the decoding end can take the history frequently-occurring pixel out to be placed in the frequently-occurring pixel list; num _ of _ new _ pv represents the number of new commonly occurring pixels in the current block.
When encoding a string evs corresponding to index of a current pixel, a differential encoding method is adopted. That is, the index of the current evs string is not directly transmitted, but is to be subtracted from the index of the previous evs string, and the difference is transmitted. If the difference is less than 0, num _ of _ reused _ pv and the number of new current pixels already coded need to be added to ensure that a non-negative number is transmitted.
The video coding device of the embodiment of the disclosure obtains the current frequently-occurring pixel and the historical frequently-occurring pixel of the current block; constructing a frequent pixel list by using the current frequent pixel and the historical frequent pixel; predicting and classifying pixels in a current block by using a frequently-occurring pixel list to obtain the type of a current pixel string; rounding and complementing the current pixel string to obtain a current target pixel string so as to enable the string length of the current target pixel string to be a multiple of a preset length, wherein the type of the current pixel string is the same as that of the current target pixel string; and coding the current target pixel string by using the type of the current target pixel string and the frequently-occurring pixel list to obtain the code stream of the current block. The pixel strings with different string lengths are limited to be multiples of the preset length for coding, so that the complexity of hardware implementation is reduced; furthermore, the lengths of different pixel strings are all multiples of M, and the length of each pixel string only needs to be divided by the value of M during actual coding, so that the number of coded bits can be effectively reduced.
The above embodiments are only one of the common cases of the present application and do not limit the technical scope of the present application, so that any minor modifications, equivalent changes or modifications made to the above contents according to the essence of the present application still fall within the technical scope of the present application.
Referring to fig. 5, fig. 5 is a schematic structural diagram of an embodiment of a video encoding apparatus provided in the present application. The video encoding apparatus 50 includes a pixel obtaining module 51, a list constructing module 52, a prediction classifying module 53, and an encoding module 54.
The pixel obtaining module 51 is configured to obtain a current frequently-occurring pixel and a history frequently-occurring pixel of the current block.
A list construction module 52 for constructing a list of the current frequent pixels using the current frequent pixels and the historical frequent pixels.
A prediction classification module 53, configured to perform prediction classification on pixels in the current block by using the frequently-occurring pixel list, and obtain a type of the current pixel string; and the current pixel string is further used for rounding and complementing the current pixel string to obtain a current target pixel string, so that the string length of the current target pixel string is a multiple of a preset length, wherein the type of the current pixel string is the same as that of the current target pixel string.
And the encoding module 54 is configured to encode the current target pixel string by using the type of the current target pixel string and the frequent pixel list to obtain a code stream of the current block.
Please refer to fig. 6, which is a schematic structural diagram of a video encoding and decoding system according to an embodiment of the present application. The video codec system comprises a memory 62 and a processor 61 connected to each other.
The memory 62 is used to store program instructions implementing the video encoding method of any of the above.
The processor 61 is operative to execute program instructions stored in the memory 62.
The processor 61 may also be referred to as a CPU (Central Processing Unit). The processor 61 may be an integrated circuit chip having signal processing capabilities. The processor 61 may also be a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The storage 62 may be a memory bank, a TF card, etc., and may store all information in the string matching prediction apparatus, including the input raw data, the computer program, the intermediate operation results, and the final operation results. It stores and retrieves information based on the location specified by the controller. With the memory, the string matching prediction device has a memory function, and normal operation can be guaranteed. The memory of the string matching prediction device can be classified into a main memory (internal memory) and an auxiliary memory (external memory) according to the use, and also into an external memory and an internal memory. The external memory is usually a magnetic medium, an optical disk, or the like, and can store information for a long period of time. The memory refers to a storage component on the main board, which is used for storing data and programs currently being executed, but is only used for temporarily storing the programs and the data, and the data is lost when the power is turned off or the power is cut off.
In the several embodiments provided in the present application, it should be understood that the disclosed method and apparatus may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, a division of a module or a unit is merely a logical division, and an actual implementation may have another division, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
Units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be substantially implemented or contributed to by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a system server, a network device, or the like) or a processor (processor) to execute all or part of the steps of the method of the embodiments of the present application.
Please refer to fig. 7, which is a schematic structural diagram of a computer-readable storage medium according to the present application. The storage medium of the present application stores a program file 71 capable of implementing all the above-mentioned video encoding methods, wherein the program file 71 may be stored in the storage medium in the form of a software product, and includes several instructions to enable a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor (processor) to execute all or part of the steps of the methods according to the embodiments of the present application. The aforementioned storage device includes: various media capable of storing program codes, such as a usb disk, a mobile hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, or terminal devices, such as a computer, a server, a mobile phone, and a tablet.
The above embodiments are merely examples and are not intended to limit the scope of the present disclosure, and all modifications, equivalents, and flow charts using the contents of the specification and drawings of the present disclosure or those directly or indirectly applied to other related technical fields are intended to be included in the scope of the present disclosure.

Claims (10)

1. A video encoding method, the video encoding method comprising:
acquiring a current frequently-occurring pixel and a historical frequently-occurring pixel of a current block;
constructing a frequent pixel list by using the current frequent pixel and the historical frequent pixel;
predicting and classifying the pixels in the current block by using the frequently-occurring pixel list to obtain the type of the current pixel string;
rounding and complementing the current pixel string to obtain a current target pixel string so as to enable the string length of the current target pixel string to be a multiple of a preset length, wherein the type of the current pixel string is the same as that of the current target pixel string;
and encoding the current target pixel string by using the type of the current target pixel string and the frequently-occurring pixel list to obtain the code stream of the current block.
2. The video encoding method of claim 1,
the step of rounding and complementing the current pixel string to obtain the current target pixel string comprises the following steps:
rounding up the current pixel string to complement to obtain the current target pixel string;
modifying the type of the complemented pixel to the type of the current pixel string.
3. The video coding method of claim 2,
the step of rounding and complementing the current pixel string to obtain the current target pixel string comprises the following steps:
under the condition that the type of the current pixel string is an unmatched pixel string, modifying the type of subsequent matched pixels into unmatched pixels, and forming a new pixel string with the current pixel string until the string length of the new pixel string reaches a multiple of the preset length, so as to obtain the current target pixel string;
setting the type of the current pixel string as an equivalent string and recording a frequently-occurring pixel of the current pixel string under the condition that the type of the current pixel string is a matched pixel string; and setting the frequently-occurring pixel of the subsequent pixel as the frequently-occurring pixel of the current pixel string, and forming a new pixel string together with the current pixel string until the string length of the new pixel string reaches the multiple of the preset length, thereby obtaining the current target pixel string.
4. The video coding method of claim 3,
after the step of rounding and complementing the current pixel string to obtain the current target pixel string, the video encoding method further includes:
calculating the pixel average cost of coding when the type of the current target pixel string is an equivalent string or an unmatched pixel string and the pixel average cost of coding when a unit base vector string is adopted;
and setting the type of the current target pixel string according to the type corresponding to the minimum pixel average cost.
5. The video encoding method of claim 1,
the step of rounding and complementing the current pixel string to obtain the current target pixel string comprises the following steps:
under the condition that the type of the current pixel string is an unmatched pixel string, rounding up the current pixel string to complement, and modifying the type of the complemented pixel into an unmatched pixel to obtain the current target pixel string;
and under the condition that the type of the current pixel string is the matched pixel string, rounding the current pixel string downwards, and modifying the types of redundant pixels into unmatched pixels to obtain the current target pixel string.
6. The video encoding method of claim 1,
the step of rounding and complementing the current pixel string to obtain the current target pixel string comprises the following steps:
rounding the current pixel string downwards and complementing to obtain the current target pixel string;
the type of the redundant pixels is modified to be unmatched pixels.
7. The video encoding method of claim 1,
the step of rounding and complementing the current pixel string to obtain the current target pixel string comprises the following steps:
rounding the current pixel string downwards to obtain the current target pixel string;
and forming a subsequent pixel string with the string length of a preset length by the redundant pixels and the subsequent pixels, wherein the type in the subsequent pixel string is an unmatched pixel string or a string type different from the current target pixel string, and the pixels of the subsequent pixel string are all encoded according to the original type or part of the original type.
8. A video coding device is characterized by comprising a pixel acquisition module, a list construction module, a prediction classification module and a coding module;
the pixel obtaining module is used for obtaining the current frequently-occurring pixel and the historical frequently-occurring pixel of the current block;
the list construction module is used for constructing a frequently-occurring pixel list by using the current frequently-occurring pixel and the historical frequently-occurring pixel;
the prediction classification module is used for performing prediction classification on the pixels in the current block by using the frequently-occurring pixel list to acquire the type of the current pixel string;
the prediction classification module is further configured to round and complement the current pixel string to obtain a current target pixel string, so that the string length of the current target pixel string is a multiple of a preset length, where the type of the current pixel string is the same as the type of the current target pixel string;
and the coding module is used for coding the current target pixel string by using the type of the current target pixel string and the frequently-occurring pixel list to obtain the code stream of the current block.
9. A video codec system comprising a processor, a memory coupled to the processor, wherein,
the memory stores program instructions;
the processor is configured to execute the program instructions stored by the memory to implement the video encoding method of any of claims 1-7.
10. A computer-readable storage medium, characterized in that the storage medium stores program instructions that, when executed, implement the video encoding method of any of claims 1-7.
CN202011419569.3A 2020-12-06 2020-12-06 Video coding method, device and system and computer readable storage medium Active CN112565749B (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202011419569.3A CN112565749B (en) 2020-12-06 2020-12-06 Video coding method, device and system and computer readable storage medium
EP21900126.0A EP4241446A4 (en) 2020-12-06 2021-12-06 Systems and methods for video processing
PCT/CN2021/135660 WO2022117104A1 (en) 2020-12-06 2021-12-06 Systems and methods for video processing
US18/327,874 US20230319288A1 (en) 2020-12-06 2023-06-01 Systems and methods for video processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011419569.3A CN112565749B (en) 2020-12-06 2020-12-06 Video coding method, device and system and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN112565749A true CN112565749A (en) 2021-03-26
CN112565749B CN112565749B (en) 2022-08-09

Family

ID=75059327

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011419569.3A Active CN112565749B (en) 2020-12-06 2020-12-06 Video coding method, device and system and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN112565749B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113347437A (en) * 2021-04-15 2021-09-03 浙江大华技术股份有限公司 Encoding method, encoder, decoder and storage medium based on string prediction
WO2021239160A1 (en) * 2020-05-26 2021-12-02 腾讯科技(深圳)有限公司 Video decoding method, video coding method, electronic device, and storage medium
WO2022117104A1 (en) * 2020-12-06 2022-06-09 Zhejiang Dahua Technology Co., Ltd. Systems and methods for video processing

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104378644A (en) * 2013-08-16 2015-02-25 上海天荷电子信息有限公司 Fixed-width variable-length pixel sample value string matching strengthened image compression method and device
CN104853209A (en) * 2014-02-16 2015-08-19 同济大学 Image coding and decoding method and device
CN107071450A (en) * 2016-02-10 2017-08-18 同济大学 Coding, coding/decoding method and the device of data compression
US20180160141A1 (en) * 2014-06-19 2018-06-07 Vid Scale Inc. Methods and systems for intra block copy coding with block vector derivation
US20190182490A1 (en) * 2014-10-01 2019-06-13 Kt Corporation Method and apparatus for processing video signal
CN110087090A (en) * 2019-05-20 2019-08-02 绍兴文理学院 Using data encoding, the coding/decoding method of mixing String matching and intra prediction
CN111614359A (en) * 2020-06-02 2020-09-01 同济大学 Data encoding method and decoding method using point prediction and common position array
CN111866512A (en) * 2020-07-29 2020-10-30 腾讯科技(深圳)有限公司 Video decoding method, video encoding method, video decoding apparatus, video encoding apparatus, and storage medium

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104378644A (en) * 2013-08-16 2015-02-25 上海天荷电子信息有限公司 Fixed-width variable-length pixel sample value string matching strengthened image compression method and device
CN104853209A (en) * 2014-02-16 2015-08-19 同济大学 Image coding and decoding method and device
US20180160141A1 (en) * 2014-06-19 2018-06-07 Vid Scale Inc. Methods and systems for intra block copy coding with block vector derivation
US20190182490A1 (en) * 2014-10-01 2019-06-13 Kt Corporation Method and apparatus for processing video signal
CN107071450A (en) * 2016-02-10 2017-08-18 同济大学 Coding, coding/decoding method and the device of data compression
CN110087090A (en) * 2019-05-20 2019-08-02 绍兴文理学院 Using data encoding, the coding/decoding method of mixing String matching and intra prediction
CN111614359A (en) * 2020-06-02 2020-09-01 同济大学 Data encoding method and decoding method using point prediction and common position array
CN111866512A (en) * 2020-07-29 2020-10-30 腾讯科技(深圳)有限公司 Video decoding method, video encoding method, video decoding apparatus, video encoding apparatus, and storage medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021239160A1 (en) * 2020-05-26 2021-12-02 腾讯科技(深圳)有限公司 Video decoding method, video coding method, electronic device, and storage medium
WO2022117104A1 (en) * 2020-12-06 2022-06-09 Zhejiang Dahua Technology Co., Ltd. Systems and methods for video processing
CN113347437A (en) * 2021-04-15 2021-09-03 浙江大华技术股份有限公司 Encoding method, encoder, decoder and storage medium based on string prediction
CN113347437B (en) * 2021-04-15 2022-09-06 浙江大华技术股份有限公司 Encoding method, encoder, decoder and storage medium based on string prediction

Also Published As

Publication number Publication date
CN112565749B (en) 2022-08-09

Similar Documents

Publication Publication Date Title
CN112565749B (en) Video coding method, device and system and computer readable storage medium
CN106231214B (en) High-speed CMOS sensor image approximate lossless compression method based on adjustable macro block
KR102492116B1 (en) Method and Apparatus for Reconciling Multiple Sign Bit Hiding and Residual Sign Prediction
WO2015096822A1 (en) Image coding and decoding methods and devices
US8873625B2 (en) Enhanced compression in representing non-frame-edge blocks of image frames
CN110087083B (en) Method for selecting intra chroma prediction mode, image processing apparatus, and storage apparatus
CN112352431B (en) Data encoding method, data decoding method, data encoding equipment, data decoding equipment and storage medium
CN112738511B (en) Fast mode decision method and device combined with video analysis
US20230308645A1 (en) Intra-frame prediction methods, encoder, decoder and storage medium
CN115955569A (en) Monitoring video data transmission method for animal quarantine center
CN112702599A (en) VVC intra-frame rapid coding method based on deep learning
CN111131828A (en) Image compression method and device
CN116668710A (en) Color image transmission method, system, device and storage medium
CN112565748B (en) Video coding method, device and system and computer readable storage medium
CN107682699B (en) A kind of nearly Lossless Image Compression method
US11006133B2 (en) Image compression technique
CN108024111B (en) Frame type judgment method and device
CN112995661B (en) Image encoding method and apparatus, electronic device, and storage medium
CN113099269B (en) String matching prediction method, encoding and decoding method, related equipment and device
CN113395516B (en) Intra-frame prediction method and device, and computer readable storage medium
CN112165619A (en) Method for compressed storage of surveillance video
CN114339305B (en) Virtual desktop image processing method and related device
US20230055561A1 (en) Decorrelation transform for a color filter array pattern image
JPH07111595A (en) Image encoder
CN117880516A (en) Block dividing method, block dividing apparatus, device, and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant