EP2559241A1 - Verfahren zum deblocking-filtern - Google Patents
Verfahren zum deblocking-filternInfo
- Publication number
- EP2559241A1 EP2559241A1 EP10717047A EP10717047A EP2559241A1 EP 2559241 A1 EP2559241 A1 EP 2559241A1 EP 10717047 A EP10717047 A EP 10717047A EP 10717047 A EP10717047 A EP 10717047A EP 2559241 A1 EP2559241 A1 EP 2559241A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- blocks
- macroblock
- block
- filtering
- pixels
- 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.)
- Pending
Links
- 238000001914 filtration Methods 0.000 title claims abstract description 104
- 238000000034 method Methods 0.000 title claims abstract description 39
- 239000011159 matrix material Substances 0.000 claims abstract description 33
- 238000004422 calculation algorithm Methods 0.000 claims description 17
- 230000003068 static effect Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 6
- 238000011156 evaluation Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 6
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
- H04N19/436—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
Definitions
- the invention further relates to a deblocking filter, with which such a method can be carried out, and to a computer program with a filter algorithm for carrying out such a method.
- Video compression method according to the standard H.264 is used for example for:
- High Definition Television with video data storage on High Definition Digital Versatile Disc (HD DVD) and Blu-ray Disc,
- - mobile devices such as mobile phones, personal digital assistants (PDAs), portable game consoles and MP3 players capable of playing videos,
- video data is encoded at a transmitter, transmitted in coded form to a receiver, and decoded at the receiver.
- the standards used are therefore also referred to as codecs, a combination of the English words "code” and "decode”.
- deblocking filters that filter the encoded video frames in a post-processing step.
- the deblocking filter is used to increase the perceived image quality, with visually perceptible transitions between adjacent blocks, as well
- Block artifacts which may form between adjacent blocks, are smoothed by filtering pixels stored in the blocks of each video frame.
- filtering is understood to mean deblocking filtering.
- Filtering a block is understood to mean filtering the pixels stored in that block, also called pixels.
- the blocks which adjoin one another in the horizontal direction and in the vertical direction and are present in a multiplicity of rows and columns, can be regarded as checkerboard-like fields in a Cartesian coordinate system
- Coordinate system according to the standard H.264 depends on filtered pixels of the blocks at the positions (x-l / y) and (x / y-1) of the Cartesian coordinate system.
- the blocks are grouped into macroblocks, each macroblock being formed of blocks arranged horizontally adjacent to one another in block rows and vertically adjacent to block columns of four blocks each. Under the filtering of a
- Macroblocks is understood to be the filtering of the pixels of the blocks of the macroblock stored in this macroblock.
- the filtering is carried out by means of a sequence of computation steps, which is also called an algorithm, wherein the computation steps usually take place within the framework of a filter program on a computer.
- a processor with normally a computation kernel which is also called “core”
- core a computation kernel
- processors with multiple compute cores also called “many-core processor” or “many-core system”
- processors with a variety of computing cores also called “multi-core processors” or “multi-core systems” are being developed, as the “Terascale” project or the “Larrabee” project by Intel show.
- Graphic processors called “Graphic Processor Units” (GPUs), for example, from NVidia, already today, they feature many-core processors that are increasingly being used for high-performance computing applications, also known as “high-performance computing” applications, because of their high computing power and easy programmability.
- Printers with several or many processing cores require full use of the available computing power Algorithms that can be parallelized In parallelized algorithms, a calculation step does not depend on the
- the problem with the implementation of the H.264 standard in many-core processors is the deblocking filter, in which a filtering of a macroblock is independent of another macroblock because of the dependence of the filtering of a block on the position (x / y) of filtered pixels the blocks at the positions (xl / y) and (x / y-1) is not provided.
- Graphics card that includes the GPU must be transferred and the cores of the GPU must be configured according to the algorithm "kernel” before beginning the computational steps. 2.
- Parallel algorithms “Kernels” can not be coordinated with each other or only with large delays, also called latencies.
- Another possibility of parallelizing the computational steps of the filtering consists in the filtering of the macroblocks without regard to the data dependency in filtering given according to the H.264 standard, whereby this type of filtering is referred to by the inventor as a naive filtering method.
- a filtered video frame is used to predict video frames following the filtered video frame. If adjacent macroblocks of this macroblock to be included for the filtering of a macroblock are not filtered, deviations result between such a filter result and the standard filter result. These deviations lead to pixel deviations between the filter result of the naive filter method and the standard filter result
- Pixel deviations are also referred to as a drift effect, the image quality of the decoded video frame significantly deteriorated compared to the image quality with standard filtering.
- the invention has for its object to provide a method for deblocking filtering, which avoids the disadvantages of the prior art.
- a method for deblocking filtering is to be provided in which the
- Computing power of processors with multiple cores can be used and this leads to a high image quality.
- each macroblock being formed of blocks adjacent to each other horizontally
- the blocks that make up the context area are unfiltered for deblocking filtering. Thereafter, the vertical edges and the horizontal edges of the blocks of the context area are filtered starting with the block element Kn of the second matrix K according to the coding standard for image information.
- the context area only comprises a frame of two single-line and two surrounding the macroblock to be filtered
- the coding standard for image information is the standard H.264.
- H.264 the standard for filtering measurements on test sequences yielded a probability of a pixel deviation of +/- 1 of less than 2x10 "6 as opposed to a value of approximately 3x10" J for the naive filtering method.
- pixel size deviations of greater than 1 occur with a probability less than 1 ⁇ 10 9
- the drift effect caused by these pixel deviations is common to many applications
- each block is formed of pixels to be filtered, which are arranged adjacent to each other horizontally in pixel lines and adjacent to each other vertically in pixel columns each having four pixels.
- pixels to be filtered are arranged adjacent to each other horizontally in pixel lines and adjacent to each other vertically in pixel columns each having four pixels.
- Pixels formed block corresponds to the standard H.264. Another number of pixels stored in a block is possible in principle.
- pixels of the blocks of the context area that do not correspond to the pixels of the blocks of the first macroblock are temporally filtered in front of the pixels of the blocks of the first macroblock. In this way, the filtering can be prefiltered with the blocks of the
- Context areas which do not correspond to the blocks of the macroblock to be filtered, are started.
- the pixels of the blocks of the first macroblock are now filtered using the filtered pixels of the blocks of the context area that do not correspond to the pixels of the blocks of the first macroblock.
- the pixels of these prefiltered blocks are available as input pixels for the filtering of the macroblock to be filtered.
- the prefiltered pixels themselves are made according to the standardized procedure with partially unfiltered
- Pixels outside of the macroblock to be filtered according to the naive filter method is achieved.
- pixels than the Pixels of the blocks of the context area that do not correspond to the pixels of the blocks of the first macroblock are used to filter the pixels of the blocks of the first macroblock. This reduces the amount of computation without sacrificing image quality.
- contiguous macroblocks that are commonly filtered form a macroblock area, wherein the filtering of one macroblock or macroblock area is independent of another macroblock or other macroblock area. For example, four or more neighbors
- Macroblocks are filtered together. Since the macroblocks are adjacent, the context blocks that comprise each of the macroblocks to be filtered overlap. Because of the only one-time filtering of the overlapping areas of the context blocks, the expenditure of computing power decreases in comparison to the case in which the
- Context blocks with the macroblocks to be filtered are each completely filtered.
- the context area additionally comprises 89 blocks to be filtered in the form of one
- the context area comprises in addition to the 64 blocks of the macroblocks to be filtered additionally 33 blocks each as the respective macroblock surrounding frame, in total therefore 132 blocks.
- the context area therefore comprises 43 blocks less than the one in the common filtering of the four macroblocks
- the number of macroblocks to be filtered together for the available processing power of the processor used depends on the number of available processor cores and the size of the available SRAM memory for the filtering.
- the filtering of different macroblocks and / or macroblock areas takes place parallel to one another and simultaneously.
- filtering can be done at high rates of up to a teraplope / second.
- the possible calculation rate in teraflop / second is not an immediate property of the filter algorithm, but of the processor used.
- a higher utilization of the processor used is achieved by the filter method according to the invention in comparison to the naive filter method, which leads to a higher computing rate in teraflop / second.
- a deblocking filter is also provided for filtering a macroblock according to a coding standard for image information stored in macroblocks arranged adjacent to one another horizontally in macroblock lines and adjacent vertically in macroblock columns, each macroblock being formed of blocks comprising adjoining each other horizontally in
- the deblocking filter includes a
- Evaluation unit for determining one of the blocks of a first to be filtered
- the deblocking filter additionally comprises a filter unit for filtering the horizontal edges and the vertical edges of the blocks of the context area with the block element ⁇ i of the second matrix K as a starting point for the filtering according to the coding standard for image information.
- the filter comprises a processor with different computing cores. With multiple cores can filter steps take place parallel to each other according to the above statements.
- the filter comprises a main memory and a random access memory (Static Random Access Memory).
- the main memory and the random access static memory may be arranged on a graphics card located in a computer.
- another memory with arbitrary access another main memory, or another electronic component may be present.
- different computing cores can each be assigned a main memory and a memory with arbitrary access.
- different macroblocks and / or different macroblock regions which may comprise filterable macroblocks, are filterable parallel to each other and at the same time in the filter. In this way, the computation time required to filter a macroblock can be reduced over filters filtering in series.
- a filter algorithm refers to an algorithm for filtering.
- the filter algorithm is determined by means of a
- Fig. 1 shows an arrangement of adjoining macroblocks, each macroblock being formed of blocks adjacent to each other horizontally
- Block rows and adjacent vertically arranged in block columns with four blocks
- Fig. 2 shows a block formed of pixels adjacent to each other horizontally in pixel lines and adjacent vertically in pixel columns are arranged with four pixels each, and
- FIG. 3 shows a context area for filtering a macroblock which, in addition to the macroblock to be filtered, comprises a frame of blocks surrounding the macroblock according to an embodiment of the invention.
- FIG. 1 shows an arrangement of nine macroblocks M1-M9, which are arranged adjacent to each other horizontally in three macroblock lines and adjacently vertically in three macroblock columns, as a section of an encoded one
- the macroblock Ml surrounded by the macroblocks M2, M3, M4, M5, M6, M7, M8, and M9 (hereinafter abbreviated by the notation M2-M9) is, like each macroblock, formed of blocks B adjacent to each other horizontally in block lines m and adjacent vertically in
- Equally designated block elements of different macroblocks M1, M2 are assigned different blocks.
- the macroblocks M1-M9 are bounded outwardly by thick horizontal and vertical edges.
- the macroblock M1 for example, has a horizontal edge 41 which delimits the macroblock M1 from the macroblock M3.
- the macroblock Ml has a horizontal edge 42, which the
- the macroblock M1 demarcated from the macroblock M8.
- the macroblock M1 has a vertical edge 43 which delimits the macroblock M1 from the macroblock M5 and a vertical edge 44 which delimits the macroblock M1 from the macroblock M6.
- the block with the block element Mi i is
- the block with the block element Mi ⁇ also has a vertical edge 14 as part of the vertical edge 43 for delimiting an adjacent block in the macroblock M5 and a vertical edge 15 in contrast to the block with the block element Mi 2.
- Block edges of the blocks B thus form a grid of lines shown in thin lines, to which the edges of the macroblocks M1-M9 shown in thick print are partially superimposed as superlattices.
- each block B is formed of picture elements P arranged adjacent to one another horizontally in pixel lines u and adjacent vertically in pixel columns v with four pixels each are.
- Each block comprises 4 x 4 pixels, with each macroblock of 4 x 4 blocks comprising 16 x 16 pixels.
- the vertical edges 14, 15 and the horizontal edges 18, 19 border the pixels P of
- Pixels of adjacent blocks for example the blocks with the block elements M
- the edges of each block and each macroblock thus delimit individual pixels P from one another, wherein an edge region comprises the totality of all pixels P arranged on one edge.
- the edge region of the edge 18 includes all the pixels P of the pixel line u and the pixels P of the pixel
- Pixel line u adjacent pixels P of the block B which is adjacent to the edge 18 of the block B with the block element Mn. Pixels of pixel lines that are farther from the edge 18 in a direction perpendicular to the edge 18 further than the pixel line u may also count toward the edge region of the edge 18.
- the edge region ie the number of pixels P arranged on the edge, which is smoothed by the deblocking filter in order to increase the perceived image quality, should in principle be determined by the degree of optical perception of the image
- Transition between adjacent blocks B judge. The more clearly the optical transition between adjacent blocks B is perceptible, the more pixels should be included in the edge region to be filtered.
- the number of pixels to be included in the edge area increases with increasing deblocking filter strength. It is possible to use all the pixels of a block to smooth an edge area. However, the selection of the number depends the pixel P arranged on the edge, which is smoothed by the deblocking filter to increase the perceived image quality, according to the one used
- FIG. 3 shows a context area K1 for filtering the macroblock M1, which, in addition to the macroblock M1 to be filtered, comprises a frame of 33 blocks surrounding the macroblock M1.
- the context area K1 has horizontal edges 51, 52 and vertical edges 53, 54 each formed of seven blocks. As shown for the block with the block element K 77 in Fig. 2, each block comprises 4 x 4
- the block with the block element K 33 corresponds to the block with the block element Mi and the block with the block element K 66 corresponds to the block with the block element MM.
- the context area K1 is formed by that around the
- Macroblock M1 is a frame of blocks with the block elements Kl 1, K12, K13,
- K14, K15, K16, K17, K21, K22, K23, K24, K25, K26, K27, K31, K32, K37, K41, K42, K47, K51, K52, K57, K61, K62, K67, K71, K72, K73, K74, K75, K76, and K77 is spanned.
- image data for these blocks the image data of the
- the image data of the unfiltered reconstructed image can be extracted from an image memory for the unfiltered image material.
- the frame of blocks B of the context area K1 spanned around the macroblock comprises only parts of the macroblocks M2-M9 (see FIG. 1). Those blocks B of the macroblocks M2-M9 and other macroblocks, not shown in FIG.
- the filtering of the vertical edges 1, 3 and the horizontal edges 2, 10 of the blocks B of the context area Kl starts with the block element Kn of the second matrix K according to a given coding standard for image information.
- a given coding standard for image information In the embodiment shown in Fig. 3, the default coding standard for
- the order of filtering steps for filtering the horizontal and vertical edges 1-29 in Fig. 3 corresponds to the sequence of numbers 1-29 for the reference numerals of the horizontal and vertical edges 1-29.
- the edges 1-29 each extend to the next perpendicular to the edge edge of the macroblock Ml. For example, when
- Filtering step 9 the vertical edge 9, which extends from the horizontal edge 41 of the macroblock Ml to the horizontal edge 42 of the macroblock Ml filtered.
- the vertical edges 3, 4, 5, 6 of the blocks of the block elements K13, K14, K15, K16, K23, K24, K25, K26, from which, among other blocks, the macroblock M3 is formed, are filtered.
- the horizontal edge 7 and the vertical edge 8 are the horizontal edges 10, 11, 12, 13 of the blocks of block elements K31, K41, K51, K61, K32, K42, K52, K62, from which (among other blocks) of Macroblock M5 is formed, filtered.
- the filter steps 14, 15, 16, 17 filter vertical edges of the blocks of the macroblock Ml to be filtered.
- the filtering of the context area K 1 with the macroblock M 1 ends with the filtering of the horizontal edge 29 of the macroblock M 1.
- the pixels P of the blocks B of the first macroblock M1 are filtered using the already filtered pixels P of the blocks B of the context area K1 which do not correspond to the pixels P of the blocks B of the first macroblock Ml.
- the filtered pixels P of the blocks B of the context area K1, which do not correspond to the pixels P of the blocks B of the first macroblock M1 are available as prefiltered input pixels for the filtering of the macroblock M1 to be filtered.
- the prefiltered pixels P themselves are processed according to the method of
- Standard H.264 filtered with partially unfiltered input pixels, wherein for filtering the prefiltered pixels P further pixels P of the blocks B in
- filtering the context area Kl results in a drift effect low by orders of magnitude for the pixels P of the macroblock Ml to be filtered, which can be achieved with unfiltered pixels P as input pixels for filtering the macroblock Ml according to the naive filter method is.
- H.264 standard for filtering the context range Kl measurements gave one
- Pixels P of the blocks B of the context area K1 which do not correspond to the pixels P of the Blocks B of the first macroblock Ml correspond to be used for filtering the pixels P of the blocks B of the first macroblock Ml.
- the computational effort is reduced without sacrificing the picture quality of the video frame encoded by the standard H.264 in macro blocks M1-M9 and blocks B.
- Adjacent macroblocks M2, M3, which are filtered together, may form a macroblock area, wherein filtering of one macroblock M1 or macroblock area may be done independently of another macroblock M4 or another macroblock area. For example, four or more adjacent macroblocks M1-M9 may be filtered together. Since the macroblocks M1-M9 are adjacent to each other, the context blocks Kl which overlap them
- the context area may be divided into two columns from the macroblocks Ml, M8; M6, M9 and two lines from the macroblocks Ml, M6; M8, M9 in addition to the 64 blocks of the macroblocks Ml, M6, M8, M9 to be filtered additionally comprise 89 blocks to be filtered as frames surrounding the macroblocks Ml, M6, M8, M9.
- the first of these additional 89 blocks to be filtered comprise the block elements M 33 , M 34 , M 3, M 44 of the matrix M of the macroblock M2.
- Macroblocks Ml, M6; M8, M9 has horizontal and vertical edges, each made up of 11 blocks.
- the context area K1 additionally comprises, in addition to the 64 blocks of the macroblocks M1, M6, M8, M9 to be filtered, 33 blocks each (49 blocks of each context area K1 minus 16 blocks of each macroblock M1, M6, M8, M9) as the respective macroblock Ml, M6, M8, M9 surrounding frame, in total so 132 blocks.
- the context area therefore comprises, in the case of the common filtering of the four macroblocks M1, M6, M8, M9 43 Blocks less than the independent filtering of the four macroblocks Ml, M6, M8, M9. Not only does the minority of 43 blocks need not be filtered, it also does not have to be from a main memory into a static memory
- SRAM Static Random Access Memory
- the number of macroblocks to be jointly filtered for optimal use of the available processing power of the processor used depends on the number of available processor cores and the size of the available SRAM memory.
- the filtering of different macroblocks M1, M2 or macroblock areas advantageously takes place parallel to each other and simultaneously. In this way, the computing power of modern processors with multiple cores can be exploited. If the parallel filtering of several macroblocks M1, M2 or macroblock ranges is carried out on a processor with different calculation cores, the filtering can take place with high computing rates of one teraflop / second or higher computing rates. To carry out the filtering of the
- Context area Kl can be provided a computer program that the
- Filtering algorithm for performing the filtering includes.
- Deblocking filters are used.
- the deblocking filter is provided for filtering a macro block M1-M9 to standard H.264 stored in macroblocks M1-M9 arranged adjacent to each other horizontally in macroblock lines and adjacent vertically in macroblock columns, each macroblock M1-M9 being made out
- the deblocking filter also comprises a filter unit for filtering the horizontal edges 1, 3 and the vertical edges 2, 10 of the blocks B of the context area Kl with the block element ⁇ ⁇ the second matrix K as
- the deblocking filter comprises a processor with different computing cores.
- the filter steps 1-29 can take place parallel to one another in accordance with the exemplary embodiment shown in FIG. 3 over a plurality of calculation cores.
- the deblocking filter may include a main memory and a static random access memory.
- the main memory and the random access static memory may be arranged on a graphics card located in a computer.
- the deblocking filter can be used to filter different macroblocks M1-M9 and / or different macroblock areas, which may contain filterable macroblocks M1-M9, in parallel and simultaneously. In this way, the computation time required to filter a macroblock M1-M9 can be reduced over filters filtering in series.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
Abstract
Description
Claims
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2010/002277 WO2011127941A1 (de) | 2010-04-14 | 2010-04-14 | Verfahren zum deblocking-filtern |
Publications (1)
Publication Number | Publication Date |
---|---|
EP2559241A1 true EP2559241A1 (de) | 2013-02-20 |
Family
ID=43229494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP10717047A Pending EP2559241A1 (de) | 2010-04-14 | 2010-04-14 | Verfahren zum deblocking-filtern |
Country Status (4)
Country | Link |
---|---|
US (2) | US9277246B2 (de) |
EP (1) | EP2559241A1 (de) |
CN (1) | CN102835104B (de) |
WO (1) | WO2011127941A1 (de) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2559241A1 (de) * | 2010-04-14 | 2013-02-20 | Siemens Enterprise Communications GmbH & Co. KG | Verfahren zum deblocking-filtern |
CN104641412B (zh) * | 2012-09-05 | 2018-05-25 | Ati科技无限责任公司 | 用于选择性显示刷新的方法和设备 |
US9510021B2 (en) * | 2013-05-24 | 2016-11-29 | Electronics And Telecommunications Research Institute | Method and apparatus for filtering pixel blocks |
CN104506867B (zh) * | 2014-12-01 | 2017-07-21 | 北京大学 | 采样点自适应偏移参数估计方法及装置 |
CN108921771B (zh) * | 2018-08-29 | 2021-11-26 | 郑州云海信息技术有限公司 | 一种反滤波方法、装置及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080298473A1 (en) * | 2007-06-01 | 2008-12-04 | Augusta Technology, Inc. | Methods for Parallel Deblocking of Macroblocks of a Compressed Media Frame |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080123750A1 (en) * | 2006-11-29 | 2008-05-29 | Michael Bronstein | Parallel deblocking filter for H.264 video codec |
US20080298472A1 (en) * | 2007-06-04 | 2008-12-04 | Texas Instruments Incorporated | Throughput Performance When Applying Deblocking Filters On Reconstructed Image Frames |
EP2559241A1 (de) * | 2010-04-14 | 2013-02-20 | Siemens Enterprise Communications GmbH & Co. KG | Verfahren zum deblocking-filtern |
PH12015501384A1 (en) * | 2010-12-07 | 2015-09-28 | Sony Corp | Image processing device and image processing method |
US9762906B2 (en) * | 2013-02-18 | 2017-09-12 | Mediatek Inc. | Method and apparatus for video decoding using multi-core processor |
-
2010
- 2010-04-14 EP EP10717047A patent/EP2559241A1/de active Pending
- 2010-04-14 WO PCT/EP2010/002277 patent/WO2011127941A1/de active Application Filing
- 2010-04-14 US US13/640,547 patent/US9277246B2/en active Active
- 2010-04-14 CN CN201080066150.2A patent/CN102835104B/zh not_active Expired - Fee Related
-
2016
- 2016-01-19 US US15/000,343 patent/US9544617B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080298473A1 (en) * | 2007-06-01 | 2008-12-04 | Augusta Technology, Inc. | Methods for Parallel Deblocking of Macroblocks of a Compressed Media Frame |
Non-Patent Citations (1)
Title |
---|
See also references of WO2011127941A1 * |
Also Published As
Publication number | Publication date |
---|---|
CN102835104B (zh) | 2016-04-13 |
US9277246B2 (en) | 2016-03-01 |
WO2011127941A1 (de) | 2011-10-20 |
US20130163680A1 (en) | 2013-06-27 |
US9544617B2 (en) | 2017-01-10 |
US20160142738A1 (en) | 2016-05-19 |
CN102835104A (zh) | 2012-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101847874B1 (ko) | 합성곱 신경망을 이용한 이미지 인식 방법 및 그 기록 매체 | |
US8295360B1 (en) | Method of efficiently implementing a MPEG-4 AVC deblocking filter on an array of parallel processors | |
EP2559241A1 (de) | Verfahren zum deblocking-filtern | |
DE102014015353A1 (de) | Dynamikkompression | |
DE102010053087A1 (de) | Auf bidirektionaler, lokaler und globaler Bewegungseinschätzung basierende Bildfrequenzumwandlung | |
DE102017113867A1 (de) | Kernprozesse für Blockoperationen an einem Bildprozessor mit einer zweidimensionalen Ausführungsbahnmatrix und einem zweidimensionalen Schieberegister | |
DE202017007520U1 (de) | Bewegungskompensation durch maschinelles Lernen | |
DE102015114162A1 (de) | Effiziente Interpolation | |
EP1605405B1 (de) | Verfahren zur Ermittlung von Bewegungsvektoren, die Bildbereichen eines Bildes zugeordnet sind | |
US10026013B2 (en) | Clustering method with a two-stage local binary pattern and an iterative image testing system thereof | |
EP1374559B1 (de) | Verfahren zur komprimierung und dekomprimierung von bilddaten | |
DE19509418A1 (de) | Verfahren und Schaltungsanordnung zur Unterabtastung bei Bewegungsschätzung | |
DE102011007644A1 (de) | Verfahren und Vorrichtung zur Bestimmung von zur Entzerrung eines Bildes geeigneten Werten und zur Entzerrung eines Bildes | |
DE102015103827B4 (de) | Fehlerverfolgung und Fehlerabschwächung für Videokompression auf Bewegungskompensationsbasis | |
CN111476743B (zh) | 一种基于分数阶微分的数字信号滤波与图像处理方法 | |
US11205252B2 (en) | Method and device for enhancing brightness and contrast of video image | |
EP2294825B1 (de) | Vorrichtung und verfahren zum codieren und decodieren einer mehrzahl von fliesskommawerten | |
DE102021131172A1 (de) | System und Verfahren zum Lokalisieren und Decodieren unlesbarer Datenmatrizen | |
CN108898121B (zh) | 一种图像特征的提取方法及*** | |
CN111259826A (zh) | 一种图像特征信息帧内快速划分方法、***及存储介质 | |
DE102014010598A1 (de) | Bildverarbeitungssystem | |
DE102008048257B4 (de) | Verfahren zur Detektion eines Blockrasters | |
DE19609860C1 (de) | Verfahren zur Bearbeitung von Bildpunkten eines Bildsegments durch einen Rechner | |
WO2021097771A1 (en) | Ics-frame transformation method and apparatus for cv analysis | |
DE10152612A1 (de) | Verfahren zur Komprimierung und Dekomprimierung von Bilddaten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20121019 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK SM TR |
|
DAX | Request for extension of the european patent (deleted) | ||
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: UNIFY GMBH & CO. KG |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: UNIFY GMBH & CO. KG |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
17Q | First examination report despatched |
Effective date: 20170413 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
APBK | Appeal reference recorded |
Free format text: ORIGINAL CODE: EPIDOSNREFNE |
|
APBN | Date of receipt of notice of appeal recorded |
Free format text: ORIGINAL CODE: EPIDOSNNOA2E |
|
RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: UNIFY GMBH & CO. KG |
|
APBR | Date of receipt of statement of grounds of appeal recorded |
Free format text: ORIGINAL CODE: EPIDOSNNOA3E |
|
APAV | Appeal reference deleted |
Free format text: ORIGINAL CODE: EPIDOSDREFNE |
|
APBT | Appeal procedure closed |
Free format text: ORIGINAL CODE: EPIDOSNNOA9E |