WO2017007250A1 - 파노라믹 비디오의 왜곡보정 방법 및 장치 - Google Patents
파노라믹 비디오의 왜곡보정 방법 및 장치 Download PDFInfo
- Publication number
- WO2017007250A1 WO2017007250A1 PCT/KR2016/007352 KR2016007352W WO2017007250A1 WO 2017007250 A1 WO2017007250 A1 WO 2017007250A1 KR 2016007352 W KR2016007352 W KR 2016007352W WO 2017007250 A1 WO2017007250 A1 WO 2017007250A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- panoramic
- warping
- segment
- camera
- input image
- 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.)
- Ceased
Links
Images
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/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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using 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/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/89—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
Definitions
- the present invention relates to a method and apparatus for correcting distortion of a panoramic video.
- High efficiency image compression techniques can be used to solve these problems caused by high resolution and high quality image data.
- An inter-screen prediction technique for predicting pixel values included in the current picture from a picture before or after the current picture using an image compression technique an intra prediction technique for predicting pixel values included in a current picture using pixel information in the current picture
- the panoramic video encoding method divides an input image into a plurality of segments, determines whether each of the divided segments is a warped region, and determines a panorama of the input image. Based on the Mick format, dewarping is performed on the segment determined as the warping region, and the segment on which the dewarping is performed is encoded.
- whether or not the warping region is determined is based on at least one of the number of vertices of the warping mesh in the segment or the shape of the warping mesh.
- the panoramic format may be a warping type or an image distortion pattern of the input image.
- the dewarping may include determining the panoramic format based on camera identification information regarding the input image. .
- the camera identification information may be information signaled to identify a type or a camera characteristic of a camera photographing the input image.
- the performing of the dewarping may include determining a camera type for capturing the input image based on the camera identification information, and corresponding to the determined camera type. Extracting the panoramic format from the pre-defined table information.
- the table information is configured in a panoramic format available for each camera type.
- the segment includes a plurality of LCU (largest coding unit) rows, the segment is de-warped in parallel in units of the LCU row, within the LCU row It is characterized in that the de-wapping sequentially in LCU unit according to the pre-defined scan order.
- LCU largest coding unit
- a panoramic video encoding apparatus comprises: a warping region determiner for dividing an input image into a plurality of segments and determining whether each of the divided segments is a warped region; And a dewarping processing unit for dewarping the segment determined as the warping region and an encoding unit for encoding the dewarping segment.
- the warping region determiner determines whether the warping region is based on at least one of the number of vertices of the warping meshes belonging to the segment or the shape of the warping mesh. It features.
- the panoramic format may be a warping type or an image distortion pattern of the input image.
- the dewarping processing unit may determine the panoramic format based on camera identification information regarding the input image.
- the camera identification information may be information signaled to identify a type or a camera characteristic of a camera photographing the input image.
- the dewarping processing unit determines a camera type of photographing the input image based on the camera identification information, and the panoramic corresponding to the determined camera type. Extract the format from the pre-defined table information.
- the table information is configured in a panoramic format available for each camera type.
- the segment includes a plurality of LCU (largest coding unit) rows, and the dewarping processing unit is configured to parallelly decode the LCU row units included in the segment.
- the ping is performed, but in the LCU row, dewapping is sequentially performed in LCU units according to a pre-defined scan order.
- the panoramic video encoding system determines whether each of the plurality of segments constituting the panoramic video is a warped region, and based on the panoramic format for the panoramic video.
- the database server determines a panoramic format to be used for dewapping the panoramic video based on camera identification information about the panoramic video. And transmitting the determined panoramic format to the panoramic image processing server.
- the database server determines a camera type for capturing the panoramic video based on the camera identification information, and a panoramic format corresponding to the determined camera type. Is extracted from the pre-stored table information.
- the table information is configured in a panoramic format available for each camera type.
- the computing load of the distortion correction can be reduced, and high resolution panoramic video processing is possible in a terminal having a relatively low computing power.
- the hybrid method of server-client distortion correction is a clouding process of distortion correction, which enables general panoramic playback service regardless of the type of panoramic camera as well as the terminal specification.
- FIG. 1 illustrates a process of reconstructing an image of a user's view based on a de-warping process as an embodiment to which the present invention is applied.
- FIG. 2 illustrates a parallel processing based dewapping processing method according to an embodiment to which the present invention is applied.
- FIG. 3 illustrates a method for determining whether a warping area is provided in segments according to an embodiment to which the present invention is applied.
- FIG. 4 illustrates a schematic configuration of a panoramic image processing server 100 as an embodiment to which the present invention is applied.
- FIG. 5 is a block diagram schematically illustrating an encoder 400 according to an embodiment of the present invention.
- FIG. 6 illustrates a system for performing dewapping based on computing power as an embodiment to which the present invention is applied.
- FIG. 7 illustrates a method of performing selective dewapping between the panoramic image processing server 100 and the terminal 10 based on the performance of the terminal as an embodiment to which the present invention is applied.
- FIG. 8 is a diagram illustrating a process of performing dewarping on a warped image based on partitioning of a quadtree structure according to an embodiment to which the present invention is applied.
- FIG. 9 illustrates a method of dividing a segment into quadtree structures according to an embodiment to which the present invention is applied.
- FIG. 10 illustrates a type of a panoramic format as an embodiment to which the present invention is applied.
- the panoramic video encoding method divides an input image into a plurality of segments, determines whether each of the divided segments is a warped region, and determines a panorama of the input image. Based on the Mick format, dewarping is performed on the segment determined as the warping region, and the segment on which the dewarping is performed is encoded.
- whether or not the warping region is determined is based on at least one of the number of vertices of the warping mesh in the segment or the shape of the warping mesh.
- the panoramic format may be a warping type or an image distortion pattern of the input image.
- the dewarping may include determining the panoramic format based on camera identification information regarding the input image. .
- the camera identification information may be information signaled to identify a type or a camera characteristic of a camera photographing the input image.
- the performing of the dewarping may include determining a camera type for capturing the input image based on the camera identification information, and corresponding to the determined camera type. Extracting the panoramic format from the pre-defined table information.
- the table information is configured in a panoramic format available for each camera type.
- the segment includes a plurality of LCU (largest coding unit) rows, the segment is de-warped in parallel in units of the LCU row, within the LCU row It is characterized in that the de-wapping sequentially in LCU unit according to the pre-defined scan order.
- LCU largest coding unit
- a panoramic video encoding apparatus comprises: a warping region determiner for dividing an input image into a plurality of segments and determining whether each of the divided segments is a warped region; And a dewarping processing unit for dewarping the segment determined as the warping region and an encoding unit for encoding the dewarping segment.
- the warping region determiner determines whether the warping region is based on at least one of the number of vertices of the warping meshes belonging to the segment or the shape of the warping mesh. It features.
- the panoramic format may be a warping type or an image distortion pattern of the input image.
- the dewarping processing unit may determine the panoramic format based on camera identification information regarding the input image.
- the camera identification information may be information signaled to identify a type or a camera characteristic of a camera photographing the input image.
- the dewarping processing unit determines a camera type of photographing the input image based on the camera identification information, and the panoramic corresponding to the determined camera type. Extract the format from the pre-defined table information.
- the table information is configured in a panoramic format available for each camera type.
- the segment includes a plurality of LCU (largest coding unit) rows, and the dewarping processing unit is configured to parallelly decode the LCU row units included in the segment.
- the ping is performed, but in the LCU row, dewapping is sequentially performed in LCU units according to a pre-defined scan order.
- the panoramic video encoding system determines whether each of the plurality of segments constituting the panoramic video is a warped region, and based on the panoramic format for the panoramic video.
- the database server determines a panoramic format to be used for dewapping the panoramic video based on camera identification information about the panoramic video. And transmitting the determined panoramic format to the panoramic image processing server.
- the database server determines a camera type for capturing the panoramic video based on the camera identification information, and a panoramic format corresponding to the determined camera type. Is extracted from the pre-stored table information.
- the table information is configured in a panoramic format available for each camera type.
- first and second may be used to describe various configurations, but the configurations are not limited by the terms. The terms are used to distinguish one configuration from another.
- first configuration may be referred to as the second configuration, and similarly, the second configuration may also be referred to as the first configuration.
- each component shown in the embodiments of the present invention are independently shown to represent different characteristic functions, and do not mean that each component is made of separate hardware or one software component unit.
- each component is listed as a component for convenience of description, and at least two of the components may form one component, or one component may be divided into a plurality of components to perform a function.
- the integrated and separated embodiments of each component are also included in the scope of the present invention without departing from the spirit of the present invention.
- the components may not be essential components for performing essential functions in the present invention, but may be optional components for improving performance.
- the present invention can be implemented including only the components essential for implementing the essentials of the present invention except for the components used for improving performance, and the structure including only the essential components except for the optional components used for improving performance. Also included in the scope of the present invention.
- FIG. 1 illustrates a process of reconstructing an image of a user's view based on a de-warping process as an embodiment to which the present invention is applied.
- the panoramic video captured by the camera may have a distorted shape as shown in FIG. 1.
- the distorted panorama video will be called a warped image.
- a warping mesh corresponding to the warped image may be determined.
- the warping mesh may be determined based on the type of camera, the format of the panoramic format, the camera parameters, and the like.
- the camera parameters may include intrinsic camera parameters and non-native camera parameters, and the intrinsic camera parameters may include focal length, aspect ratio, and pub. It may include a (principal point) and the like, the non-unique camera parameters may include the location information of the camera in the world coordinate system.
- Grid warping may be performed by performing a warping of the warping mesh on a rectangular video screen to generate a grid warped image.
- the grid warped image may include a region having distorted image information, and the image of the user's view may be restored by correcting the distorted image information.
- correcting the distorted image information will be referred to as de-warping.
- the reconstructed image may be divided into predetermined units (slice, tile, coding block, prediction block, transform block, etc.), and a bitstream may be generated through prediction, transform, quantization, and entropy encoding.
- FIG. 2 illustrates a parallel processing based dewapping processing method according to an embodiment to which the present invention is applied.
- an input image may be divided into a plurality of segments (S200).
- the segment may mean a predetermined unit defined for parallel processing of the input image.
- the segment may mean a slice, a slice segment, or a tile.
- Parallel processing in the present invention means that any one segment of the plurality of segments is encoded without dependency on another segment. That is, one segment is encoded independently without referring to coding information used for encoding the other segment.
- the segment of the present invention may mean a basic unit (eg, coding unit) for processing the input image.
- the number of segments constituting the input image may be determined for optimal coding efficiency.
- the input image may be divided into a plurality of segments based on at least one of the determined number of segments and the size of each segment.
- the warping area means an area in which a dewarping process is required. That is, when at least one coding block having distorted image information is included in the segment, the segment may be determined as a warping region.
- the warping area is determined in consideration of the number of vertices of the warping mesh included in the segment, the shape, the size of the warping mesh, etc. This will be described in detail with reference to FIG. 3.
- dewarping may be performed on the segment (S220).
- the segment includes a plurality of largest coding units (LCUs), and may be sequentially de-warped in units of LCUs according to a pre-defined scan order (eg, raster scan).
- LCUs largest coding units
- the current LCU in the LCU row may perform the dewarping after the dewarping is performed on the LCUs located on the left, top, and top-left sides.
- segments corresponding to the warping regions may be de-warped in parallel or independently of each other.
- the corresponding segment may be de-warped based on the panoramic format.
- the panoramic format may mean a warping type or an image distortion pattern that may occur in the input image.
- the input image may have a unique panoramic format based on the type of the camera photographing the input image or a unique characteristic of the camera.
- table information defining a mapping relationship or correlation between the camera type and the panoramic format may be used. That is, the camera type photographing the input image may be classified and determined, and the panoramic format corresponding to the determined camera type may be extracted from the table information.
- the camera type of the input image may be determined based on camera identification information.
- the camera identification information may refer to information encoded to identify the type of camera or property of the camera that captured the panoramic video.
- the camera identification information may include at least one of a camera serial number or a camera parameter.
- the camera parameter may include an intrinsic camera parameter or an intrinsic camera parameter as described above, and the intrinsic camera parameter may include a focal length and an aspect ratio. (aspect ratio), a principal point, and the like, and the non-unique camera parameter may include location information of the camera in the world coordinate system.
- the camera identification information may be signaled through the bitstream together with the input image. If the corresponding segment is determined as the non-wapping region in operation S210, the segment may skip the dewarping process.
- an input image may be reconstructed by combining a dewarped region and a non-wapping region determined in operation S210, and encoding may be performed on the reconstructed input image (S230).
- a bitstream may be generated by performing prediction, transform, quantization, and entropy encoding on the reconstructed input image, which will be described in detail with reference to FIG. 5.
- FIG. 3 illustrates a method for determining whether a warping area is provided in segments according to an embodiment to which the present invention is applied.
- the segment is a warping area.
- the number of vertices of the warping mesh can be determined by comparing the predetermined first threshold.
- the first threshold means the minimum number of vertices for which skipping of the dewarping is allowed, which may be fixedly used in advance, and is set variably in consideration of an external environment variable such as a user or a camera. May be
- the segment may be determined as a warping area, and if the number of vertices of the warping mesh is four or more, it is determined as a non-wapping area to skip dewarping. can do.
- the segment is a warping area. This is because the closer the shape of the warping mesh to the square, the less the distortion.
- the shape of the warping mesh may be considered to be close to a square.
- d1, d2, z1, z2 may be determined as in the following equation.
- Whether the corresponding segment is a warping region in consideration of whether the difference between d1 and d2 is less than a second threshold (first condition) and / or whether the difference between z1 and z2 is less than a third threshold (second condition).
- the second threshold and the third threshold mean a maximum allowable value in which the dewarping is skipped, and a predetermined value may be fixedly used, and external environment variables (such as a panoramic video format, a user, a camera, and the like) may be used. It may be determined variably in consideration of.
- the segment is determined to be a non-warping region and dewarping for that segment. Can be skipped.
- the difference between d1 and d2 is greater than the second threshold, or when the difference between z1 and z2 is greater than the third threshold, the corresponding segment is determined as a warping region, and dewarping is performed on the segment. Can be.
- the corresponding segment is a warping area.
- it may be determined by comparing the number of vertices of the warping mesh with a predetermined first threshold. If the number of vertices of the warping mesh is smaller than the first threshold, the corresponding segment may be determined as a warping region. If the number of vertices of the warping mesh is larger than the first threshold, the segment is determined again in consideration of the shape of the warping mesh. can do.
- the corresponding segment when the difference between d1 and d2 is less than a second threshold and the difference between z1 and z2 is less than a third threshold, the corresponding segment is determined as a non-wapping region, and dewarping for that segment. Can be skipped.
- the difference between d1 and d2 is greater than the second threshold or the difference between z1 and z2 is greater than the third threshold, the corresponding segment may be determined as a warping region.
- FIG. 3 a method of determining whether the warping area is a segment is described, but is not limited thereto. For example, it may be further determined whether the warping area is a smaller unit than the segment unit, which will be described in detail with reference to FIGS. 8 to 9.
- FIG. 4 illustrates a schematic configuration of a panoramic image processing server 100 as an embodiment to which the present invention is applied.
- the panoramic image processing sub 100 of the present invention may include a warping region determiner 200, a dewarping processor 300, and an encoder 400.
- the warping area determiner 200 may divide the input image into a plurality of segments and determine whether the corresponding segment is a warping area for each segment.
- the segment may mean a predetermined unit defined for parallel processing of the input image.
- the segment may mean a slice, a slice segment, or a tile.
- Parallel processing in the present invention means that any one segment of the plurality of segments is encoded without dependency on another segment. That is, one segment is encoded independently without referring to coding information used for encoding the other segment.
- the warping region determiner 200 may determine the number of segments constituting the input image for optimal encoding efficiency. In addition, it is possible to determine whether each segment has the same size, and if each segment does not have the same size, the size of each segment can be determined.
- the input image may be divided into a plurality of segments based on at least one of the determined number of segments and the size of each segment.
- the warping area means an area in which a dewarping process is required. That is, when at least one coding block having distorted image information is included in the segment, the segment may be determined as a warping region.
- the warping area determiner 200 determines whether the corresponding segment corresponds to the warping area in consideration of the number of vertices of the warping mesh included in each segment, the shape and size of the warping mesh, etc. As you have seen, the detailed description will be omitted here.
- the dewarping processing unit 300 may perform dewarping on the corresponding segment.
- the dewarping may be performed on the segment determined as the warping region based on the panoramic format of the panoramic video.
- the panoramic format may mean a warping mesh or a warping type used in the received panoramic video, or a pattern of image distortion that may occur in an image of the panoramic video.
- FIG. 10 illustrates a type of a panoramic format as an embodiment to which the present invention is applied. Referring to FIG. 10, a cylindrical format, an isquirectangular format, and a fish are shown. Various types such as an eye format, a fishator format, a rectilinear, a sinusoidal format, and the like may be used as the panoramic format.
- the panoramic video may have a unique / universal panoramic format based on the type of camera or a unique characteristic of the camera photographing the video.
- the panoramic format related to the panoramic video may be selectively used.
- an external database server connected to the panoramic image processing server 100 and a wired or wireless network may be used.
- the database server may store one or more panoramic formats available for dewapping the panoramic video.
- the database server may store table information defining a mapping relationship or correlation between a camera type and a panoramic format, as shown in Table 1 below.
- the table information defines a corresponding panoramic format for each camera type. That is, when the camera type is 1, the cylindrical format of the cylindrical format (cylindrical format) is used, when the camera type is 2, the panoramic format of the fisheye format (fisheye) may be used. However, as shown in Table 1, one panoramic format may be mapped for each camera type, and a plurality of panoramic formats may be mapped for each camera type. As described above, the database of the distortion information of the camera for the panoramic video can be used to adaptively use the distortion information for the various types of panoramic video.
- the camera type means an index for identifying a camera that captured the panoramic video
- the database server may use the camera identification information to determine the camera type of the received panoramic video.
- the camera identification information may be received through the bitstream together with the panoramic video.
- the camera identification information may be signaled by being included in a video parameter set, a sequence parameter set, or the like, or may be signaled through an SEI message.
- the camera identification information may refer to information encoded to identify a type of a camera or a property of a camera photographing the panoramic video.
- the camera identification information may include at least one of a camera serial number or a camera parameter.
- the camera parameter may include an intrinsic camera parameter or an intrinsic camera parameter as described above, and the intrinsic camera parameter may include a focal length and an aspect ratio. (aspect ratio), a principal point, and the like, and the non-unique camera parameter may include location information of the camera in the world coordinate system.
- the database server may classify / determine a camera type related to the panoramic video based on the camera identification information, and extract a panoramic format corresponding to the determined camera type from the pre-stored table information.
- the table information is not limited to being stored in an external database server, and may be pre-stored in a database included in the panoramic image processing server 100.
- the panoramic image processing server 100 may request the database server for a panoramic format corresponding to the received panoramic video, In response to a request of the processing server 100, the database server may determine the panoramic format used for dewapping the panoramic video through the above-described process, and transmit it to the panoramic image processing server 100. have.
- the dewarping processing unit 300 of the panoramic image processing server 100 may perform dewarping on a corresponding segment based on the panoramic format determined by the database server.
- the dewarped segment includes a plurality of largest coding units (LCUs), and the dewarping processing unit 300 sequentially demultiplexes the LCU units according to a pre-defined scan order (for example, raster scan). Warping can be performed.
- LCUs largest coding units
- the dewarping processing unit 300 sequentially demultiplexes the LCU units according to a pre-defined scan order (for example, raster scan). Warping can be performed.
- the dewarping processing unit 300 may perform dewarping in parallel in units of LCU rows by dividing the corresponding segment into a plurality of LCU rows.
- the current LCU in the LCU row may perform the dewarping after the dewarping is performed on the LCUs located on the left, top, and top-left sides.
- the dewarping processor 300 may dewarp segments corresponding to the warping regions in parallel or independently of each other. Meanwhile, when the segment is determined as the non-wapping region in the warping region determiner 200, the segment may not be transmitted to the dewarping processing unit 300 but may be transmitted to the encoding unit 400 and encoded.
- the encoder 400 reconstructs the input image by combining the dewarped region output from the dewarping processor 300 and the non-warping region output from the warping region determiner 200, and reconstructs the input image. Coding may be performed on the That is, a bitstream may be generated by performing prediction, transform, quantization, and entropy encoding on the reconstructed input image, which will be described in detail with reference to FIG. 5.
- FIG. 5 is a block diagram schematically illustrating an encoder 400 according to an embodiment of the present invention.
- the encoder 400 includes a splitter 410, a predictor 420, a transformer 430, a quantizer 440, a reordering unit 450, an entropy encoder 460, and an inverse quantization unit. 470, an inverse transform unit 480, a filter unit 490, and a memory 495.
- the encoding unit may be implemented by the video encoding method described in the following embodiments of the present invention, but operations in some components may not be performed to reduce the complexity of the encoding unit or for fast real time encoding.
- some limited number of methods are used without selecting the optimal intra intra coding method using all intra prediction modes in order to perform encoding in real time.
- a method of selecting one intra prediction mode among them as a final intra prediction mode using the intra prediction mode of the image may be used.
- the unit of a block processed by the encoder may be a coding unit for encoding, a prediction unit for prediction, or a transformation unit for transformation.
- a coding unit may be represented by a term such as a coding unit (CU), a prediction unit is a prediction unit (PU), and a transformation unit is a transform unit (TU).
- the splitter 410 divides the input image into a combination of a plurality of coding blocks, a prediction block, and a transform block, and combines one of the coding blocks, the prediction block, and the transform block with a predetermined reference (for example, a cost function). Select to split the input image.
- a recursive tree structure such as a quad tree structure may be used to divide a coding unit from an input image.
- the meaning of the coding block may be used not only as a block for encoding but also as a block for decoding.
- the prediction block may be a unit for performing prediction such as intra prediction or inter prediction.
- the block for performing intra prediction may be a block having a square shape such as 2N ⁇ 2N or N ⁇ N.
- As a block for performing inter prediction there is a prediction block partitioning method using Asymmetric Motion Partitioning (AMP), which is a square form such as 2Nx2N and NxN, or a rectangular form or asymmetric form such as 2NxN and Nx2N.
- AMP Asymmetric Motion Partitioning
- the transform unit 415 may change the method of performing the transform.
- the prediction unit 420 of the encoding unit 400 may include an intra prediction unit 421 for performing intra prediction and an inter prediction unit 422 for performing inter prediction. Can be.
- the prediction unit 420 may determine whether to use inter prediction or intra prediction on the prediction block.
- the process of determining the intra prediction mode in units of prediction blocks and performing the intra prediction based on the determined intra prediction mode may be performed in units of transform blocks.
- the residual value (residual block) between the generated prediction block and the original block may be input to the transformer 430.
- prediction mode information and motion information used for prediction may be encoded by the entropy encoder 430 together with the residual value and transmitted to the decoder.
- the prediction block 420 may be used to encode the original block as it is and transmit it to the decoder without performing prediction.
- PCM Pulse Coded Modulation
- the intra prediction unit 421 may generate an intra prediction block based on reference pixels present around the current block (the block to be predicted).
- the intra prediction mode may have a directional prediction mode using a reference pixel according to a prediction direction and a non-directional mode without considering the prediction direction.
- the mode for predicting luma information and the mode for predicting color difference information may be different.
- an intra prediction mode in which luma information is predicted or predicted luma information may be used. If a reference pixel is not available, the unusable reference pixel may be replaced with another pixel, and a prediction block may be generated using the reference pixel.
- the prediction block may include a plurality of transform blocks. If the prediction block has the same size as the transform block when the intra prediction is performed, pixels present on the left side of the prediction block, pixels present on the upper left side, and top Intra-prediction of the prediction block may be performed based on the pixels present in the. However, when the prediction block is different from the size of the transform block when the intra prediction is performed, and a plurality of transform blocks are included in the prediction block, intra prediction is performed by using neighboring pixels adjacent to the transform block as reference pixels. Can be done.
- the neighboring pixel adjacent to the transform block may include at least one of the neighboring pixel adjacent to the prediction block and the pixels already decoded in the prediction block.
- the intra prediction method may generate a prediction block after applying a mode dependent intra smoothing (MDIS) filter to a reference pixel according to the intra prediction mode.
- MDIS mode dependent intra smoothing
- the type of MDIS filter applied to the reference pixel may be different.
- the MDIS filter is an additional filter applied to the predicted block in the picture by performing the intra prediction and may be used to reduce the residual present in the predicted block in the picture generated after performing the prediction with the reference pixel.
- filtering on a reference pixel and some columns included in the predicted block in the screen may perform different filtering according to the direction of the intra prediction mode.
- the inter prediction unit 422 may perform prediction by referring to information of blocks included in at least one of a previous picture or a subsequent picture of the current picture.
- the inter prediction unit 422 may include a reference picture interpolator, a motion predictor, and a motion compensator.
- the reference picture interpolator may receive reference picture information from the memory 495 and generate pixel information of an integer pixel or less in the reference picture.
- a DCT-based 8-tap interpolation filter having different filter coefficients may be used to generate pixel information of integer pixels or less in units of 1/4 pixels.
- a DCT-based interpolation filter having different filter coefficients may be used to generate pixel information of an integer pixel or less in units of 1/8 pixels.
- the inter prediction unit 422 may perform motion prediction based on the reference picture interpolated by the reference picture interpolation unit.
- various methods such as a full search-based block matching algorithm (FBMA), a three step search (TSS), and a new three-step search algorithm (NTS) may be used.
- the motion vector may have a motion vector value of 1/2 or 1/4 pixel units based on the interpolated pixels.
- the inter prediction units 122 and 127 may perform prediction on the current block by applying one inter prediction method among various inter prediction methods.
- various methods such as a skip method, a merge method, and a motion vector predictor (MVP), may be used as the inter prediction method.
- MVP motion vector predictor
- motion information that is, information such as a reference index, a motion vector, and a residual signal
- motion information is entropy coded and transmitted to a decoder. Since the residual signal is not generated when the skip mode is applied, the conversion and quantization processes for the residual signal may be omitted.
- a residual block including residual information that is a difference between the predicted block generated by the predictor 420 and the reconstructed block of the predicted block is generated, and the residual block is input to the transformer 430.
- the transform unit 430 may transform the residual block using a transform method such as a discrete cosine transform (DCT) or a discrete sine transform (DST). Whether DCT or DST is applied to transform the residual block may be determined based on intra prediction mode information of the prediction block used to generate the residual block and size information of the prediction block. That is, the transformation unit 430 may apply the transformation method differently according to the size of the prediction block and the prediction method.
- a transform method such as a discrete cosine transform (DCT) or a discrete sine transform (DST).
- the quantizer 440 may quantize the values transformed by the transformer 430 into the frequency domain.
- the quantization coefficient may change depending on the block or the importance of the image.
- the value calculated by the quantization unit 440 may be provided to the inverse quantization unit 470 and the reordering unit 450.
- the reordering unit 450 may reorder coefficient values with respect to the quantized residual value.
- the reordering unit 450 may change the two-dimensional block shape coefficients into a one-dimensional vector form through a coefficient scanning method.
- the realignment unit 450 may scan DC coefficients to coefficients in the high frequency region by using a Zig-Zag scan method and change them into one-dimensional vectors.
- a vertical scan method for scanning two-dimensional block shape coefficients in a column direction, not a zig-zag scan method, and a horizontal scan method for scanning two-dimensional block shape coefficients in a row direction Can be used. That is, according to the size of the transform block and the intra prediction mode, it is possible to determine which scan method among zigzag-scan, vertical scan and horizontal scan is used.
- the entropy encoder 460 may perform entropy encoding based on the values calculated by the reordering unit 450. Entropy encoding may use various encoding methods such as, for example, Exponential Golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC).
- Entropy encoding may use various encoding methods such as, for example, Exponential Golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC).
- the entropy encoding unit 460 is a residual coefficient coefficient information and block type information, prediction mode information, partition unit information, prediction block information and transmission unit information, motion information from the reordering unit 450 and the prediction unit 420, Entropy encoding may be performed based on a predetermined encoding method by receiving various information such as reference frame information, interpolation information of a block, and filtering information. In addition, the entropy encoder 460 may entropy encode a coefficient value of a coding unit input from the reordering unit 450.
- the entropy encoder 460 may encode the intra prediction mode information of the current block by performing binarization on the intra prediction mode information.
- the entropy encoder 460 may include a codeword mapping unit for performing such a binarization operation, and may perform binarization differently according to the size of a prediction block for performing intra prediction.
- the codeword mapping unit may be adaptively generated or stored in advance through a binarization operation.
- the entropy encoder 460 may express prediction mode information in the current screen using the codenum mapping unit for performing codenum mapping and the codeword mapping unit for performing codeword mapping. In the codenum mapping unit and the codeword mapping unit, a codenum mapping table and a codeword mapping table may be generated or stored.
- the inverse quantizer 470 and the inverse transformer 480 inverse quantize the quantized values in the quantizer 440 and inversely transform the transformed values in the transformer 430.
- the residual value generated by the inverse quantization unit 470 and the inverse transform unit 480 is combined with the prediction block predicted by the motion estimation unit, the motion compensator, and the intra prediction unit included in the prediction unit 420 to restore the block. You can create a Reconstructed Block.
- the filter unit 490 may include at least one of a deblocking filter and an offset correction unit.
- the deblocking filter may remove block distortion caused by boundaries between blocks in the reconstructed picture.
- it may be determined whether to apply a deblocking filter to the current block based on the pixels included in several columns or rows included in the block.
- a strong filter or a weak filter may be applied according to the required deblocking filtering strength.
- horizontal filtering and vertical filtering may be performed in parallel when vertical filtering and horizontal filtering are performed.
- the offset correction unit may correct the offset with respect to the original image on a pixel-by-pixel basis for the deblocking image.
- the pixels included in the image are divided into predetermined areas, and then, the area to be offset is determined and the offset is applied to the corresponding area, or the offset is applied considering the edge information of each pixel. Can be used.
- the filter unit 490 may apply only the deblocking filter or both the deblocking filter and the offset correction without applying both the deblocking filter and the offset correction.
- the memory 495 may store the reconstructed block or picture calculated by the filter unit 490, and the stored reconstructed block or picture may be provided to the predictor 420 when performing inter prediction.
- FIG. 6 illustrates a system for performing dewapping based on computing power as an embodiment to which the present invention is applied.
- the terminal 10 may request service port information regarding the panoramic VOD from the management server 20 (S600).
- the management server 20 may transfer service port information to the terminal 10 and request computing power information of the terminal 10 (S605).
- the terminal 10 may transmit the computing power information to the management server 20 (S610).
- the management server 20 may determine whether the terminal 10 processes the dewarping of the input image based on the computing power information received from the terminal 10 (S615).
- the management server 20 may request a panoramic video from the VOD server 30 (S620).
- the VOD server 30 may request a panoramic format from the DB server 40 (S625), the DB server 40 requests from the VOD server 30 In response, the panoramic format may be transmitted to the VOD server 30 (S630). The VOD server 30 may transmit the panoramic video stream corresponding to the panoramic format received from the DB server 40 to the terminal 10 (S635).
- the terminal 10 may decode the received panoramic video stream to reconstruct the warped image, de-warp the encoded video stream, and then re-encode the received video.
- the terminal 10 may include a warping region determiner 200, a dewarping processor 300, and an encoder 400 in the same manner as the panoramic image processing server 100, which is illustrated in FIG. 4. In detail, we will omit the detailed description here.
- the management server 20 may request the panoramic video from the VOD server 30 (S640). .
- the VOD server 30 may request a panoramic format from the DB server 40 (S645), the DB server 40 requests from the VOD server 30 In response, the panoramic format may be transmitted to the VOD server 30 (S650).
- the VOD server 30 may transmit the panoramic video stream corresponding to the panoramic format received from the DB server 40 to the panoramic image processing server 100 (S655).
- the panoramic image processing server 100 may decode the received panoramic video stream to generate a warped image and perform dewarping on the warped image.
- the panoramic image processing server 100 may generate a distortion-corrected panoramic video stream by encoding the dewarped image.
- a method of performing the dewapping in the panoramic image processing server 100 has been described in detail with reference to FIG. 4, and a detailed description thereof will be omitted.
- the panoramic video stream generated by the panoramic image processing server 100 may be transmitted to the terminal 10 (S660).
- the terminal 10 may decode the received panoramic video stream to restore an image without distorted image information.
- FIG. 7 illustrates a method of performing selective dewapping between the panoramic image processing server 100 and the terminal 10 based on the performance of the terminal as an embodiment to which the present invention is applied.
- the distortion degree of each segment may be different according to the overall field of video (FOV) viewed by each user.
- FOV overall field of video
- the warping region of the panoramic video may be determined differently according to the overall field of video (FOV) viewed by each user.
- FOV overall field of video
- the panoramic image processing server 100 performs the dewarping for the warping area, and the non-warping area does not go through the panoramic image processing server 100. Or can be sent to the terminal.
- the dewarped region is transmitted to the terminal, and the dewarped region and the non-warping region may be combined and encoded.
- both the warping area and the non-warping area are transmitted to the terminal, and the terminal may perform the dewarping on the warping area. Similarly, the terminal may reconstruct the input image by combining the dewarped region and the non-wapping region and then encode the input image.
- FIG. 8 is a diagram illustrating a process of performing dewarping on a warped image based on partitioning of a quadtree structure according to an embodiment to which the present invention is applied.
- the current segment When the current segment is determined as the warping region, the current segment may be divided into a quadtree structure, and it may be determined whether the current segment is the warping region according to the method of FIG. 3 for each partition constituting the current segment.
- the division of the quadtree structure is for accurately detecting the position of the warping region in the current segment.
- the division of the quadtree structure of the present invention will be described with reference to FIG. 9.
- the current segment is determined as the non-wapping region, this means that distorted image information does not exist in the current segment, and thus the quadtree structure is not partitioned.
- the current segment may be divided into four partitions (that is, partitions 0 to 3) through partitioning of the quadtree structure. For each of the four partitions, it may additionally be determined whether it is a warping area according to the method of FIG. 3. At least one of the four partitions may be determined as a warping area. For example, partition 0 may be determined as a warping area, and the remaining partitions, that is, partitions 1 to 3, may be determined as non-wapping areas. In this case, the partition 0 determined as the warping area may be additionally divided into a quadtree structure, and it may be determined whether the partition is a warping area for each partition (hereinafter, referred to as a sub-partition) constituting the partition 0.
- partition 0 may be determined as a warping area
- partition 0 determined as the warping area may be additionally divided into a quadtree structure, and it may be determined whether the partition is a warping area for each partition (hereinafter, referred to as a sub-partition) constitu
- the split depth or the split level is increased and at the same time the part of the panoramic image is increased.
- the division of the quadtree structure may be limited to being performed within a predetermined division depth range and / or within a predetermined block size range.
- the predetermined division depth may mean the maximum value of the division depth
- the predetermined block size may mean the minimum size of a block that allows division.
- the predetermined segmentation depth and the block size may be pre-configured in the panoramic image processing server, or may be variably determined by user designation.
- FIG. 9 illustrates a method of dividing a segment into quadtree structures according to an embodiment to which the present invention is applied.
- the segment 900 has a division level of 0 and is a warping area.
- the segment 900 may be divided into partition 0, partition 1, partition 2, and partition 3.
- the partition level is increased to 1 for each partition, and it may be determined whether the partition is a warping area for each partition.
- partition 0 may be divided into four sub-partitions a to d as shown in FIG. 9. Partition 1 and partition 2 are determined as non-wapping areas and are not further divided.
- the partition 3 is determined to be a warping area, as shown in FIG. 9, the partition 3 is divided into four sub-partitions, and the value of the partition level for each sub-partition is increased to two. Then, for each of the four sub-partitions, it can be determined whether it is a warping area.
- the sub-partitions g, i and m included in partition 3 are determined as non-warping regions and are not further divided.
- a sub-partition composed of blocks h to k is determined as a warping region, and is divided into four blocks h to k, and the value of the block level for each block is increased to three. If the maximum value of the pre-set partitioning level is 3 or if the block size of four blocks h to k corresponds to the minimum size of a block that is allowed to be divided, it is a warping area for each of the blocks h to k. It may not decide whether or not, or may no longer perform the division of the quadtree structure.
- the quadtree structure may be divided into a warping region and a non-warping region.
- the present invention can be used for panoramic video encoding / decoding.
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)
Abstract
본 발명에 따른 파노라믹 비디오 부호화 방법은 입력 영상을 복수의 세그먼트로 분할하고, 분할된 복수의 세그먼트 각각에 대해서 와핑 영역(warped region)인지 여부를 결정하며, 입력 영상에 관한 파노라믹 포맷에 기초하여 와핑 영역에 해당하는 세그먼트에 대해서 디와핑을 수행하고, 상기 디와핑이 수행된 세그먼트를 부호화하는 것을 특징으로 한다.
Description
본 발명은 파노라믹 비디오의 왜곡보정 방법 및 장치에 관한 것이다.
최근 HD(High Definition) 영상 및 UHD(Ultra High Definition) 영상과 같은 고해상도, 고품질의 영상에 대한 수요가 다양한 응용 분야에서 증가하고 있다. 영상 데이터가 고해상도, 고품질이 될수록 기존의 영상 데이터에 비해 상대적으로 데이터량이 증가하기 때문에 기존의 유무선 광대역 회선과 같은 매체를 이용하여 영상 데이터를 전송하거나 기존의 저장 매체를 이용해 저장하는 경우, 전송 비용과 저장 비용이 증가하게 된다. 영상 데이터가 고해상도, 고품질화 됨에 따라 발생하는 이러한 문제들을 해결하기 위해서는 고효율의 영상 압축 기술들이 활용될 수 있다.
영상 압축 기술로 현재 픽쳐의 이전 또는 이후 픽쳐로부터 현재 픽쳐에 포함된 화소값을 예측하는 화면 간 예측 기술, 현재 픽쳐 내의 화소 정보를 이용하여 현재 픽쳐에 포함된 화소값을 예측하는 화면 내 예측 기술, 출현 빈도가 높은 값에 짧은 부호를 할당하고 출현 빈도가 낮은 값에 긴 부호를 할당하는 엔트로피 부호화 기술 등 다양한 기술이 존재하고 이러한 영상 압축 기술을 이용해 영상 데이터를 효과적으로 압축하여 전송 또는 저장할 수 있다.
한편, 고해상도 영상에 대한 수요가 증가함과 함께, 새로운 영상 서비스로서 입체 영상 컨텐츠에 대한 수요도 함께 증가하고 있다. 고해상도 및 초고해상도의 입체 영상 콘텐츠를 효과적으로 제공하기 위한 비디오 압축 기술에 대하여 논의가 진행되고 있다.
왜곡보정의 컴퓨팅 부하를 낮추고 파노라믹 카메라형태의 다양성에 따른 범용적 단말 서비스의 어려움을 극복하고자 한다.
범용적인 파노라믹 재생 서비스를 위하여 각 파노라믹 카메라의 왜곡정보를 DB화 하여 화면 왜곡보정 과정에서의 클라우드화 처리과정을 통해 다양한 포맷 형태의 파노라믹 비디오를 처리 가능하게 하고자 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법은, 입력 영상을 복수의 세그먼트로 분할하고, 상기 분할된 복수의 세그먼트 각각에 대해서 와핑 영역(warped region)인지 여부를 결정하며, 상기 입력 영상에 관한 파노라믹 포맷에 기초하여, 상기 와핑 영역으로 결정된 세그먼트에 대해서 디와핑을 수행하고, 상기 디와핑이 수행된 세그먼트를 부호화하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 와핑 영역인지 여부는 상기 세그먼트 내에 속한 와핑 메쉬의 꼭지점의 개수 또는 상기 와핑 메쉬의 모양 중 적어도 하나에 기초하여 결정되는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 파노라믹 포맷은 상기 입력 영상에 관한 와핑 타입 또는 영상 왜곡도 패턴을 의미하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 디와핑을 수행하는 단계는, 상기 입력 영상에 관한 카메라 식별 정보에 기초하여 상기 파노라믹 포맷을 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 카메라 식별 정보는 상기 입력 영상을 촬영한 카메라의 종류 또는 카메라 특성을 식별하기 위해 시그날링되는 정보를 의미하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 디와핑을 수행하는 단계는, 상기 카메라 식별 정보에 기초하여 상기 입력 영상을 촬영한 카메라 타입을 결정하고, 상기 결정된 카메라 타입에 대응하는 상기 파노라믹 포맷을 기-정의된 테이블 정보로부터 추출하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 테이블 정보는 카메라 타입 별로 이용 가능한 파노라믹 포맷으로 구성되는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 세그먼트는 복수의 LCU(largest coding unit) 행을 포함하고, 상기 세그먼트는 상기 LCU 행 단위로 병렬적으로 디와핑되며, 상기 LCU 행 내에서는 기-정의된 스캔 순서에 따라 LCU 단위로 순차적으로 디와핑되는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치는, 입력 영상을 복수의 세그먼트로 분할하고, 상기 분할된 복수의 세그먼트 각각에 대해서 와핑 영역(warped region)인지 여부를 결정하는 와핑 영역 결정부, 상기 입력 영상에 관한 파노라믹 포맷에 기초하여, 상기 와핑 영역으로 결정된 세그먼트에 대해서 디와핑을 수행하는 디와핑 처리부 및 상기 디와핑이 수행된 세그먼트를 부호화하는 인코딩부를 포함하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 와핑 영역 결정부는, 상기 세그먼트 내에 속한 와핑 메쉬의 꼭지점의 개수 또는 상기 와핑 메쉬의 모양 중 적어도 하나에 기초하여 상기 와핑 영역인지 여부를 결정하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 파노라믹 포맷은 상기 입력 영상에 관한 와핑 타입 또는 영상 왜곡도 패턴을 의미하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 디와핑 처리부는, 상기 입력 영상에 관한 카메라 식별 정보에 기초하여 상기 파노라믹 포맷을 결정하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 카메라 식별 정보는 상기 입력 영상을 촬영한 카메라의 종류 또는 카메라 특성을 식별하기 위해 시그날링되는 정보를 의미하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 디와핑 처리부는, 상기 카메라 식별 정보에 기초하여 상기 입력 영상을 촬영한 카메라 타입을 결정하고, 상기 결정된 카메라 타입에 대응하는 상기 파노라믹 포맷을 기-정의된 테이블 정보로부터 추출하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 테이블 정보는 카메라 타입 별로 이용 가능한 파노라믹 포맷으로 구성되는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 세그먼트는 복수의 LCU(largest coding unit) 행을 포함하고, 상기 디와핑 처리부는 상기 세그먼트에 포함되는 상기 LCU 행 단위로 병렬적으로 디와핑을 수행하되, 상기 LCU 행 내에서는 기-정의된 스캔 순서에 따라 LCU 단위로 순차적으로 디와핑이 수행되는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 시스템은, 파노라믹 비디오를 구성하는 복수의 세그먼트 각각에 대해서 와핑 영역(warped region)인지 여부를 결정하고, 상기 파노라믹 비디오에 관한 파노라믹 포맷에 기초하여 상기 와핑 영역으로 결정된 세그먼트에 대해서 디와핑을 수행하며, 상기 디와핑이 수행된 세그먼트를 부호화하는 파노라믹 영상 처리 서버와 상기 파노라믹 비디오에 대응하는 파노라믹 포맷을 결정하는 데이터베이스 서버를 포함하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 시스템에 있어서, 상기 데이터베이스 서버는, 상기 파노라믹 비디오에 관한 카메라 식별 정보에 기초하여 상기 파노라믹 비디오의 디와핑에 이용되는 파노라믹 포맷을 결정하고, 상기 결정된 파노라믹 포맷을 상기 파노라믹 영상 처리 서버로 전송하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 시스템에 있어서, 상기 데이터베이스 서버는, 상기 카메라 식별 정보에 기초하여 상기 파노라믹 비디오를 촬영한 카메라 타입을 결정하고, 상기 결정된 카메라 타입에 대응하는 파노라믹 포맷을 기-저장된 테이블 정보로부터 추출하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 시스템에 있어서, 상기 테이블 정보는 카메라 타입 별로 이용 가능한 파노라믹 포맷으로 구성되는 것을 특징으로 한다.
입력 영상을 소정의 세그먼트 단위로 분할하여 왜곡 보정을 처리함으로써, 왜곡 보정의 컴퓨팅 부하를 낮출 수 있고, 상대적으로 컴퓨팅 파워가 낮은 단말기에서 고해상도 파노라믹 동영상 처리가 가능하다.
서버-클라이언트의 왜곡 보정의 하이브리드 방식은 왜곡 보정의 클라우드화 처리로 단말 사양뿐만 아니라 파노라믹 카메라 종류에 상관없이 범용적인 파노라믹 재생서비스가 가능하다.
도 1은 본 발명이 적용되는 일실시예로서, 디와핑(de-warping) 처리에 기반하여 사용자 시점의 영상을 복원하는 과정을 도시한 것이다.
도 2는 본 발명이 적용되는 일실시예로서, 병렬 처리 기반의 디와핑 처리 방법을 도시한 것이다.
도 3은 본 발명이 적용되는 일실시예로서, 세그먼트 단위로 와핑 영역인지 여부를 결정하는 방법을 도시한 것이다.
도 4는 본 발명이 적용되는 일실시예로서, 파노라믹 영상 처리 서버(100)의 개략적인 구성을 도시한 것이다.
도 5는 본 발명의 일 실시예에 따른 인코딩부(400)를 개략적으로 도시한 블록도이다.
도 6은 본 발명이 적용되는 일실시예로서, 컴퓨팅 파워에 기반하여 디와핑을 수행하는 시스템을 도시한 것이다.
도 7은 본 발명이 적용되는 일실시예로서, 단말기의 성능에 기반한 파노라믹 영상 처리 서버(100)와 단말기(10) 간의 선택적인 디와핑 수행 방법을 도시한 것이다.
도 8은 본 발명이 적용되는 일실시예로서, 쿼드트리 구조의 파티션닝에 기반하여 와핑된 영상에 대해 디와핑을 수행하는 과정을 도시한 것이다.
도 9는 본 발명이 적용되는 일실시예로서, 세그먼트를 쿼드트리 구조로 분할하는 방법을 도시한 것이다.
도 10은 본 발명이 적용되는 일실시예로서, 파노라믹 포맷의 종류를 도시한 것이다.
본 발명에 따른 파노라믹 비디오 부호화 방법은, 입력 영상을 복수의 세그먼트로 분할하고, 상기 분할된 복수의 세그먼트 각각에 대해서 와핑 영역(warped region)인지 여부를 결정하며, 상기 입력 영상에 관한 파노라믹 포맷에 기초하여, 상기 와핑 영역으로 결정된 세그먼트에 대해서 디와핑을 수행하고, 상기 디와핑이 수행된 세그먼트를 부호화하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 와핑 영역인지 여부는 상기 세그먼트 내에 속한 와핑 메쉬의 꼭지점의 개수 또는 상기 와핑 메쉬의 모양 중 적어도 하나에 기초하여 결정되는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 파노라믹 포맷은 상기 입력 영상에 관한 와핑 타입 또는 영상 왜곡도 패턴을 의미하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 디와핑을 수행하는 단계는, 상기 입력 영상에 관한 카메라 식별 정보에 기초하여 상기 파노라믹 포맷을 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 카메라 식별 정보는 상기 입력 영상을 촬영한 카메라의 종류 또는 카메라 특성을 식별하기 위해 시그날링되는 정보를 의미하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 디와핑을 수행하는 단계는, 상기 카메라 식별 정보에 기초하여 상기 입력 영상을 촬영한 카메라 타입을 결정하고, 상기 결정된 카메라 타입에 대응하는 상기 파노라믹 포맷을 기-정의된 테이블 정보로부터 추출하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 테이블 정보는 카메라 타입 별로 이용 가능한 파노라믹 포맷으로 구성되는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 방법에 있어서, 상기 세그먼트는 복수의 LCU(largest coding unit) 행을 포함하고, 상기 세그먼트는 상기 LCU 행 단위로 병렬적으로 디와핑되며, 상기 LCU 행 내에서는 기-정의된 스캔 순서에 따라 LCU 단위로 순차적으로 디와핑되는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치는, 입력 영상을 복수의 세그먼트로 분할하고, 상기 분할된 복수의 세그먼트 각각에 대해서 와핑 영역(warped region)인지 여부를 결정하는 와핑 영역 결정부, 상기 입력 영상에 관한 파노라믹 포맷에 기초하여, 상기 와핑 영역으로 결정된 세그먼트에 대해서 디와핑을 수행하는 디와핑 처리부 및 상기 디와핑이 수행된 세그먼트를 부호화하는 인코딩부를 포함하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 와핑 영역 결정부는, 상기 세그먼트 내에 속한 와핑 메쉬의 꼭지점의 개수 또는 상기 와핑 메쉬의 모양 중 적어도 하나에 기초하여 상기 와핑 영역인지 여부를 결정하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 파노라믹 포맷은 상기 입력 영상에 관한 와핑 타입 또는 영상 왜곡도 패턴을 의미하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 디와핑 처리부는, 상기 입력 영상에 관한 카메라 식별 정보에 기초하여 상기 파노라믹 포맷을 결정하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 카메라 식별 정보는 상기 입력 영상을 촬영한 카메라의 종류 또는 카메라 특성을 식별하기 위해 시그날링되는 정보를 의미하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 디와핑 처리부는, 상기 카메라 식별 정보에 기초하여 상기 입력 영상을 촬영한 카메라 타입을 결정하고, 상기 결정된 카메라 타입에 대응하는 상기 파노라믹 포맷을 기-정의된 테이블 정보로부터 추출하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 테이블 정보는 카메라 타입 별로 이용 가능한 파노라믹 포맷으로 구성되는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 장치에 있어서, 상기 세그먼트는 복수의 LCU(largest coding unit) 행을 포함하고, 상기 디와핑 처리부는 상기 세그먼트에 포함되는 상기 LCU 행 단위로 병렬적으로 디와핑을 수행하되, 상기 LCU 행 내에서는 기-정의된 스캔 순서에 따라 LCU 단위로 순차적으로 디와핑이 수행되는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 시스템은, 파노라믹 비디오를 구성하는 복수의 세그먼트 각각에 대해서 와핑 영역(warped region)인지 여부를 결정하고, 상기 파노라믹 비디오에 관한 파노라믹 포맷에 기초하여 상기 와핑 영역으로 결정된 세그먼트에 대해서 디와핑을 수행하며, 상기 디와핑이 수행된 세그먼트를 부호화하는 파노라믹 영상 처리 서버와 상기 파노라믹 비디오에 대응하는 파노라믹 포맷을 결정하는 데이터베이스 서버를 포함하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 시스템에 있어서, 상기 데이터베이스 서버는, 상기 파노라믹 비디오에 관한 카메라 식별 정보에 기초하여 상기 파노라믹 비디오의 디와핑에 이용되는 파노라믹 포맷을 결정하고, 상기 결정된 파노라믹 포맷을 상기 파노라믹 영상 처리 서버로 전송하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 시스템에 있어서, 상기 데이터베이스 서버는, 상기 카메라 식별 정보에 기초하여 상기 파노라믹 비디오를 촬영한 카메라 타입을 결정하고, 상기 결정된 카메라 타입에 대응하는 파노라믹 포맷을 기-저장된 테이블 정보로부터 추출하는 것을 특징으로 한다.
본 발명에 따른 파노라믹 비디오 부호화 시스템에 있어서, 상기 테이블 정보는 카메라 타입 별로 이용 가능한 파노라믹 포맷으로 구성되는 것을 특징으로 한다.
이하 첨부된 도면을 참조로 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
본 명세서에서 어떤 구성 요소가 다른 구성 요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있는 것을 의미할 수도 있고, 중간에 다른 구성 요소가 존재하는 것을 의미할 수도 있다. 아울러, 본 명세서에서 특정 구성을 “포함”한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다.
제1, 제2 등의 용어는 다양한 구성들을 설명하는데 사용될 수 있지만, 상기 구성들은 상기 용어에 의해 한정되지 않는다. 상기 용어들은 하나의 구성을 다른 구성으로부터 구별하는 목적으로 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성은 제2 구성으로 명명될 수 있고, 유사하게 제2 구성도 제1 구성으로 명명될 수 있다.
또한, 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성 단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 하나의 구성부를 이루거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있다. 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리 범위에 포함된다.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.
도 1은 본 발명이 적용되는 일실시예로서, 디와핑(de-warping) 처리에 기반하여 사용자 시점의 영상을 복원하는 과정을 도시한 것이다.
카메라에 의해 촬영된 파노라믹 비디오는 도 1과 같이 왜곡된 형태를 가질 수 있다. 이하 왜곡된 형태의 파노라미 비디오를 와핑된 영상(warped image)라 부르기로 한다.
와핑된 영상에 대응하는 와핑 메쉬(warping mesh)를 결정할 수 있다. 와핑 메쉬는 카메라의 종류, 파노라믹 포맷 형태, 카메라 파라미터 등에 기초하여 결정될 수 있다. 여기서, 카메라 파라미터에는 고유의 카메라 파라미터 (intrinsic camera parameter) 및 비고유의 카메라 파라미터 (extrinsic camera parameter)가 있을 수 있고, 고유의 카메라 파라미터는 초점 거리(focal length), 가로세로비(aspect ratio), 주점(principal point) 등을 포함할 수 있고, 비고유의 카메라 파라미터는 세계 좌표계에서의 카메라의 위치정보 등을 포함할 수 있다.
와핑 메쉬를 직사각형 형태의 비디오 화면에 맞게 그리드 와핑(grid warping)을 수행하여 그리드 와핑된 영상을 생성할 수 있다.
그리드 와핑된 영상은 왜곡된 영상 정보를 가진 영역을 포함할 수 있으며, 이러한 왜곡된 영상 정보를 보정하여 사용자 시점의 영상을 복원할 수 있다. 이하, 왜곡된 영상 정보를 보정하는 것을 디와핑(de-warping)이라 부르기로 한다.
복원된 영상을 소정의 단위(슬라이스, 타일, 코딩 블록, 예측 블록, 변환 블록 등)로 분할하고, 예측, 변환, 양자화, 엔트로피 부호화를 통해 비트스트림을 생성할 수 있다.
도 2는 본 발명이 적용되는 일실시예로서, 병렬 처리 기반의 디와핑 처리 방법을 도시한 것이다.
도 2를 참조하면, 입력 영상을 복수의 세그먼트로 분할할 수 있다(S200).
여기서, 세그먼트는 입력 영상의 병렬 처리를 위해 정의된 소정의 단위를 의미할 수 있다. 예를 들어, 상기 세그먼트는 슬라이스, 슬라이스 세그먼트 또는 타일(tile)을 의미할 수 있다. 본 발명에서 병렬 처리라 함은 복수의 세그먼트 중 어느 하나의 세그먼트는 다른 하나의 세그먼트에 디펜던시(dependency) 없이 부호화됨을 의미한다. 즉, 어느 하나의 세그먼트는 다른 하나의 세그먼트를 부호화하기 위해 이용되는 코딩 정보를 참조하지 아니하고 독립적으로 부호화됨을 의미한다. 또는, 본 발명의 세그먼트는 입력 영상을 처리하기 위한 기본 단위(예를 들어, 코딩 유닛)를 의미할 수도 있다.
나아가, 최적의 부호화 효율을 위해 입력 영상을 구성하는 세그먼트의 개수를 결정할 수 있다. 또한, 각 세그먼트가 동일한 크기를 가지는지를 결정하고, 만일 각 세그먼트가 동일한 크기를 가지지 않는 경우에는 각 세그먼트의 크기를 결정할 수 있다. 상기 결정된 세그먼트의 개수와 각 세그먼트의 크기 중 적어도 하나에 기초하여 입력 영상을 복수의 세그먼트로 분할할 수 있다.
도 2를 참조하면, 각 세그먼트 별로 해당 세그먼트가 와핑 영역인지 여부를 결정할 수 있다(S210).
여기서, 와핑 영역이라 함은 디와핑 처리가 요구되는 영역을 의미한다. 즉, 해당 세그먼트에 왜곡된 영상 정보를 가진 코딩 블록이 적어도 하나가 포함된 경우, 해당 세그먼트는 와핑 영역으로 결정될 수 있다.
본 발명에서 와핑 영역인지 여부는 해당 세그먼트에 포함된 와핑 메쉬의 꼭지점의 개수, 와핑 메쉬의 모양, 크기 등을 고려하여 결정되며, 이는 도 3을 참조하여 자세히 살펴 보도록 한다.
해당 세그먼트가 와핑 영역으로 결정된 경우, 해당 세그먼트에 대해 디와핑을 수행할 수 있다(S220).
구체적으로, 해당 세그먼트는 복수의 LCU(largest coding unit)을 포함하며, 기-정의된 스캔 순서(예를 들어, raster scan)에 따라 LCU 단위로 순차적으로 디와핑을 수행할 수 있다.
또한, 해당 세그먼트를 복수의 LCU 행으로 분할함으로써, LCU 행 단위로 병렬적으로 디와핑을 수행할 수도 있다. 이러한 병렬적 처리를 위해 LCU 행 내의 현재 LCU는 좌측, 상단, 상단-좌측에 위치하는 LCU에 대해서 디와핑이 수행된 이후 디와핑을 수행할 수 있다.
하나의 입력 영상에 복수의 와핑 영역이 존재하는 경우, 와핑 영역에 해당하는 세그먼트들은 서로 병렬적으로 또는 독립적으로 디와핑을 수행할 수도 있다.
한편, 입력 영상 내 현재 세그먼트가 와핑 영역으로 결정된 경우, 파노라믹 포맷에 기초하여 해당 세그먼트에 대해 디와핑을 수행할 수 있다. 여기서, 파노라믹 포맷은 입력 영상에서 발생 가능한 와핑 타입 또는 영상 왜곡도 패턴을 의미할 수 있다. 입력 영상을 촬영한 카메라의 종류 또는 카메라 고유의 특성에 기반하여 입력 영상은 고유의 파노라믹 포맷을 가질 수 있다. 입력 영상에 관한 파노라믹 포맷을 결정하기 위해 카메라 타입과 파노라믹 포맷 간의 매핑 관계 또는 상관 관계를 정의한 테이블 정보가 이용될 수 있다. 즉, 입력 영상을 촬영한 카메라 타입을 분류/결정하고, 결정된 카메라 타입에 대응하는 파노라믹 포맷을 상기 테이블 정보로부터 추출할 수 있다.
한편, 입력 영상에 관한 카메라 타입은 카메라 식별 정보에 기초하여 결정될 수 있다. 여기서, 카메라 식별 정보는 파노라믹 비디오를 촬영한 카메라의 종류 또는 카메라의 속성을 식별하기 위해 부호화된 정보를 의미할 수 있다. 예를 들어, 카메라 식별 정보는 카메라의 시리얼 번호 또는 카메라 파라미터 중 적어도 하나를 포함할 수 있다. 여기서, 카메라 파라미터는 상술한 바와 같이, 고유의 카메라 파라미터 (intrinsic camera parameter) 또는 비고유의 카메라 파라미터 (extrinsic camera parameter)를 포함할 수 있고, 고유의 카메라 파라미터는 초점 거리(focal length), 가로세로비(aspect ratio), 주점(principal point) 등을 포함하고, 비고유의 카메라 파라미터는 세계 좌표계에서의 카메라의 위치정보 등을 포함할 수 있다. 카메라 식별 정보는 입력 영상과 함께 비트스트림을 통해 시그날링될 수 있다. 만일, S210 단계에서 해당 세그먼트가 비-와핑 영역으로 결정된 경우, 해당 세그먼트는 디와핑 처리를 스킵할 수 있다.
도 2를 참조하면, S220 단계에서 디와핑된 영역과 S210 단계에서 결정된 비-와핑 영역을 조합하여 입력 영상을 재구성하고, 재구성된 입력 영상에 대해서 부호화를 수행할 수 있다(S230).
구체적으로, 재구성된 입력 영상에 대해서 예측, 변환, 양자화, 엔트로피 부호화를 수행하여 비트스트림을 생성할 수 있으며, 이에 대해서는 도 5에서 자세히 살펴 보도록 한다.
도 3은 본 발명이 적용되는 일실시예로서, 세그먼트 단위로 와핑 영역인지 여부를 결정하는 방법을 도시한 것이다.
1. 와핑 메쉬의 꼭지점의 개수
세그먼트 내에 속한 와핑 메쉬의 꼭지점의 개수에 기초하여 해당 세그먼트가 와핑 영역인지 여부를 결정할 수 있다. 와핑 메쉬의 꼭지점의 개수와 소정의 제1 임계치를 비교하여 결정할 수 있다. 여기서, 제1 임계치는 디와핑의 스킵이 허용되는 꼭지점의 최소 개수를 의미하는 것으로, 이는 기-설정된 값이 고정적으로 이용될 수도 있고, 사용자 또는 카메라 등과 같은 외부 환경 변수를 고려하여 가변적으로 설정될 수도 있다.
예를 들어, 와핑 메쉬의 꼭지점의 개수가 4개 미만인 경우, 해당 세그먼트는 와핑 영역으로 결정될 수 있고, 와핑 메쉬의 꼭지점의 개수가 4개 이상인 경우, 비-와핑 영역으로 결정되어 디와핑을 스킵할 수 있다.
2. 와핑 메쉬의 모양
세그먼트 내에 속한 와핑 메쉬의 모양에 기초하여 해당 세그먼트가 와핑 영역인지 여부를 결정할 수 있다. 이는 와핑 메쉬의 모양이 정방형에 가까울수록 왜곡도가 적다고 판단할 수 있기 때문이다.
도 3을 참조하면, d1=d2이고 z1=z2인 경우, 와핑 메쉬의 모양이 정방형에 가까운 것으로 볼 수 있다. 여기서, d1, d2, z1, z2는 아래 수학식과 같이 결정될 수 있다.
상기 d1과 d2의 차이값이 제2 임계치보다 작은지 여부(제 1조건) 및/또는 z1와 z2의 차이값이 제3 임계치보다 작은지 여부(제2 조건)를 고려하여 해당 세그먼트이 와핑 영역인지를 결정할 수 있다. 여기서, 제2 임계치 및 제3 임계치는 디와핑이 스킵되는 최대 허용치를 의미하는 것으로서, 기-설정된 값이 고정적으로 이용될 수도 있고, 외부 환경 변수(파노라믹 비디오 포맷, 사용자, 카메라 등)를 고려하여 가변적으로 결정될 수도 있다.
예를 들어, 상기 d1과 d2의 차이값이 제2 임계치보다 작고, z1와 z2의 차이값이 제3 임계치보다 작은 경우, 해당 세그먼트는 비-와핑 영역으로 결정되고, 해당 세그먼트에 대해 디와핑을 스킵할 수 있다. 반대로, 상기 d1과 d2의 차이값이 제2 임계치보다 크거나, z1와 z2의 차이값이 제3 임계치보다 큰 경우, 해당 세그먼트는 와핑 영역으로 결정되고, 해당 세그먼트에 대해 디와핑을 수행할 수 있다.
3. 와핑 메쉬의 꼭지점의 개수 및 모양
상술한 와핑 메쉬의 꼭지점의 개수와 와핑 메쉬의 모양을 모두 고려하여 해당 세그먼트가 와핑 영역인지를 결정할 수도 있다.
구체적으로, 와핑 메쉬의 꼭지점의 개수와 소정의 제1 임계치를 비교하여 결정할 수 있다. 와핑 메쉬의 꼭지점의 개수가 제1 임계치보다 작은 경우, 해당 세그먼트는 와핑 영역으로 결정될 수 있고, 와핑 메쉬의 꼭지점의 개수가 제1 임계치보다 큰 경우, 와핑 메쉬의 모양을 고려하여 와핑 영역인지를 재결정할 수 있다.
도 3에서, 상기 d1과 d2의 차이값이 제2 임계치보다 작고, z1와 z2의 차이값이 제3 임계치보다 작은 경우, 해당 세그먼트는 비-와핑 영역으로 결정되고, 해당 세그먼트에 대해 디와핑을 스킵할 수 있다. 반대로, 상기 d1과 d2의 차이값이 제2 임계치보다 크거나, z1와 z2의 차이값이 제3 임계치보다 큰 경우, 해당 세그먼트는 와핑 영역으로 결정될 수 있다.
도 3에서는 세그먼트 단위로 와핑 영역인지를 여부를 결정하는 방법에 대해서 살펴보았으나, 이에 한정되지 아니한다. 예를 들어, 세그먼트 단위보다 작은 단위로 와핑 영역인지를 여부를 더 결정할 수도 있으며, 이에 대해서는 도 8 내지 도 9를 참조하여 자세히 살펴 보기로 한다.
도 4는 본 발명이 적용되는 일실시예로서, 파노라믹 영상 처리 서버(100)의 개략적인 구성을 도시한 것이다.
본 발명의 파노라믹 영상 처리 서브(100)는 와핑 영역 결정부(200), 디와핑 처리부(300)와 인코딩부(400)를 포함할 수 있다.
와핑 영역 결정부(200)는 입력 영상을 복수의 세그먼트로 분할하고, 각 세그먼트 별로 해당 세그먼트가 와핑 영역인지 여부를 결정할 수 있다.
여기서, 세그먼트는 입력 영상의 병렬 처리를 위해 정의된 소정의 단위를 의미할 수 있다. 예를 들어, 상기 세그먼트는 슬라이스, 슬라이스 세그먼트 또는 타일(tile)을 의미할 수 있다. 본 발명에서 병렬 처리라 함은 복수의 세그먼트 중 어느 하나의 세그먼트는 다른 하나의 세그먼트에 디펜던시(dependency) 없이 부호화됨을 의미한다. 즉, 어느 하나의 세그먼트는 다른 하나의 세그먼트를 부호화하기 위해 이용되는 코딩 정보를 참조하지 아니하고 독립적으로 부호화됨을 의미한다.
나아가, 와핑 영역 결정부(200)는 최적의 부호화 효율을 위해 입력 영상을 구성하는 세그먼트의 개수를 결정할 수 있다. 또한, 각 세그먼트가 동일한 크기를 가지는지를 결정하고, 만일 각 세그먼트가 동일한 크기를 가지지 않는 경우에는 각 세그먼트의 크기를 결정할 수 있다. 상기 결정된 세그먼트의 개수와 각 세그먼트의 크기 중 적어도 하나에 기초하여 입력 영상을 복수의 세그먼트로 분할할 수 있다.
본 실시예에서 와핑 영역이라 함은 디와핑 처리가 요구되는 영역을 의미한다. 즉, 해당 세그먼트에 왜곡된 영상 정보를 가진 코딩 블록이 적어도 하나가 포함된 경우, 해당 세그먼트는 와핑 영역으로 결정될 수 있다. 또한, 와핑 영역 결정부(200)는 각 세그먼트에 포함된 와핑 메쉬의 꼭지점의 개수, 와핑 메쉬의 모양, 크기 등을 고려하여 해당 세그먼트가 와핑 영역에 해당하는지 여부를 결정하며, 이는 도 3에서 자세히 살펴 보았는바, 여기서 자세한 설명은 생략하기로 한다.
디와핑 처리부(300)는 해당 세그먼트가 와핑 영역으로 결정된 경우, 해당 세그먼트에 대해 디와핑을 수행할 수 있다.
구체적으로, 파노라믹 비디오에 관한 파노라믹 포맷에 기초하여 와핑 영역으로 결정된 세그먼트에 대해서 디와핑을 수행할 수 있다. 여기서, 파노라믹 포맷은 수신된 파노라믹 비디오에서 사용되는 와핑 메쉬 또는 와핑 타입을 의미할 수도 있고, 파노라믹 비디오의 영상에서 발생 가능한 영상 왜곡도 패턴을 의미할 수도 있다. 예를 들어, 도 10은 본 발명이 적용되는 일실시예로서, 파노라믹 포맷의 종류를 도시한 것으로서, 도 10을 참조하면, 원통형 포맷(cylindrical format), 등장방형 포맷(equirectangular format), 피시아이 포맷(fisheye), 메르카토르 포맷(Mercator format), 직선 포맷(rectilinear), 정현곡선 포맷(sinusoidal) 등 다양한 종류가 파노라믹 포맷으로 이용될 수 있다.
파노라믹 비디오는 이를 촬영한 카메라의 종류 또는 카메라 고유의 특성에 기반하여 고유의/범용의 파노라믹 포맷을 가질 수 있다. 상술한 다양한 파노라믹 포맷 중에서 상기 파노라믹 비디오에 관한 파노라믹 포맷을 선택적으로 이용할 수 있다. 이를 위해 파노라믹 영상 처리 서버(100)와 유무선 네트워크로 연결된 외부의 데이터베이스 서버가 이용될 수 있다.
상기 데이터베이스 서버는 파노라믹 비디오의 디와핑을 위해 이용 가능한 하나 또는 그 이상의 파노라믹 포맷을 저장할 수 있다. 예를 들어, 상기 데이터베이스 서버는 다음 표 1과 같이 카메라 타입과 파노라믹 포맷 간의 매핑 관계 또는 상관 관계를 정의한 테이블 정보를 저장할 수 있다.
표 1
| 카메라 타입 | 파노라믹 포맷 |
| 1 | 원통형 포맷(cylindrical format) |
| 2 | 피시아이 포맷(fisheye) |
| 3 | 정현곡선 포맷(sinusoidal) |
표 1을 참조하면, 상기 테이블 정보는 카메라 타입 별로 대응하는 파노라믹 포맷을 정의하고 있다. 즉, 카메라 타입이 1인 경우, 원통형 포맷(cylindrical format)의 파노라믹 포맷이 이용되고, 카메라 타입이 2인 경우, 피시아이 포맷(fisheye)의 파노라믹 포맷이 이용될 수 있다. 다만, 표 1과 같이 카메라 타입 별로 하나의 파노라믹 포맷이 매핑될 수도 있고, 카메라 타입 별로 복수의 파노라믹 포맷이 매핑될 수 있음은 물론이다. 이와 같이, 파노라믹 비디오를 위한 카메라의 왜곡 정보를 데이터베이스화함으로써, 다양한 형태의 파노라믹 비디오에 대해서 적응적으로 왜곡 정보를 사용할 수 있다.
상기 카메라 타입은 파노라믹 비디오를 촬영한 카메라를 식별하는 인덱스를 의미하는 것으로서, 상기 데이터베이스 서버는 수신된 파노라믹 비디오의 카메라 타입을 결정하기 위해 카메라 식별 정보를 이용할 수 있다. 상기 카메라 식별 정보는 파노라믹 비디오와 함께 비트스트림을 통해 수신될 수 있다. 예를 들어, 카메라 식별 정보는 비디오 파라미터 세트, 시퀀스 파라미터 세트 등에 포함되어 시그날링될 수도 있고, SEI message를 통해서 시그날링될 수도 있다.
상기 카메라 식별 정보는 파노라믹 비디오를 촬영한 카메라의 종류 또는 카메라의 속성을 식별하기 위해 부호화된 정보를 의미할 수 있다. 예를 들어, 카메라 식별 정보는 카메라의 시리얼 번호 또는 카메라 파라미터 중 적어도 하나를 포함할 수 있다. 여기서, 카메라 파라미터는 상술한 바와 같이, 고유의 카메라 파라미터 (intrinsic camera parameter) 또는 비고유의 카메라 파라미터 (extrinsic camera parameter)를 포함할 수 있고, 고유의 카메라 파라미터는 초점 거리(focal length), 가로세로비(aspect ratio), 주점(principal point) 등을 포함하고, 비고유의 카메라 파라미터는 세계 좌표계에서의 카메라의 위치정보 등을 포함할 수 있다.
상기 데이터베이스 서버는 상기 카메라 식별 정보에 기초하여 파노라믹 비디오와 관련된 카메라 타입을 분류/결정하고, 결정된 카메라 타입에 대응하는 파노라믹 포맷을 기-저장된 테이블 정보로부터 추출할 수 있다. 다만, 상기 테이블 정보는 외부의 데이터베이스 서버에 저장된 것에 한정되지 아니하며, 파노라믹 영상 처리 서버(100)에 포함된 데이터베이스에 기-저장된 것일 수도 있다.
파노라믹 영상 처리 서버(100)는 파노라믹 비디오에 대해서 디와핑이 요구되는 경우, 수신된 파노라믹 비디오에 대응하는 파노라믹 포맷을 상기 데이터베이스 서버에 요청할 수 있고, 파노라믹 영상 처리 서버(100)의 요청에 대응하여 상기 데이터베이스 서버는 상술한 과정을 통해서 파노라믹 비디오의 디와핑에 이용되는 파노라믹 포맷을 결정하여 이를 파노라믹 영상 처리 서버(100)에 전달할 수 있다. 파노라믹 영상 처리 서버(100)의 디와핑 처리부(300)는 상기 데이터베이스 서버에서 결정된 파노라믹 포맷에 기초하여 해당 세그먼트에 대해 디와핑을 수행할 수 있다.
한편, 디와핑되는 세그먼트는 복수의 LCU(largest coding unit)을 포함하며, 디와핑 처리부(300)는 기-정의된 스캔 순서(예를 들어, raster scan)에 따라 LCU 단위로 순차적으로 디와핑을 수행할 수 있다.
또한, 디와핑 처리부(300)는 해당 세그먼트를 복수의 LCU 행으로 분할함으로써, LCU 행 단위로 병렬적으로 디와핑을 수행할 수도 있다. 이러한 병렬적 처리를 위해 LCU 행 내의 현재 LCU는 좌측, 상단, 상단-좌측에 위치하는 LCU에 대해서 디와핑이 수행된 이후 디와핑을 수행할 수 있다.
하나의 입력 영상에 복수의 와핑 영역이 존재하는 경우, 디와핑 처리부(300)는 와핑 영역에 해당하는 세그먼트들은 서로 병렬적으로 또는 독립적으로 디와핑을 수행할 수도 있다. 한편, 와핑 영역 결정부(200)에서 해당 세그먼트가 비-와핑 영역으로 결정된 경우, 해당 세그먼트는 디와핑 처리부(300)로 전달되지 아니하고, 인코딩부(400)로 전송되어 부호화될 수 있다.
인코딩부(400)는 디와핑 처리부(300)에서 출력되는 디와핑된 영역과 와핑 영역 결정부(200)에서 출력되는 비-와핑 영역을 조합하여 입력 영상을 재구성하고, 재구성된 입력 영상에 대해서 부호화를 수행할 수 있다. 즉, 재구성된 입력 영상에 대해서 예측, 변환, 양자화, 엔트로피 부호화를 수행하여 비트스트림을 생성할 수 있으며, 이하 도 5에서 자세히 살펴 보도록 한다.
도 5는 본 발명의 일 실시예에 따른 인코딩부(400)를 개략적으로 도시한 블록도이다.
본 발명에 따른 인코딩부(400)는 분할부(410), 예측부(420), 변환부(430), 양자화부(440), 재정렬부(450), 엔트로피 부호화부(460), 역양자화부(470), 역변환부(480), 필터부(490) 및 메모리(495)를 포함할 수 있다.
인코딩부는 이하의 본 발명의 실시예에서 설명하는 영상 부호화 방법에 의해 구현될 수 있으나, 일부의 구성부에서의 동작은 인코딩부의 복잡도를 낮추기 위해 또는 빠른 실시간 부호화를 위해 수행되지 않을 수 있다. 예를 들어, 예측부에서 화면 내 예측을 수행함에 있어서, 실시간으로 부호화를 수행하기 위해 모든 화면 내 예측 모드 방법을 사용하여 최적의 화면 내 부호화 방법을 선택하는 방법을 사용하지 않고 일부의 제한적인 개수의 화면 내 예측 모드를 사용하여 그 중에서 하나의 화면 내 예측 모드를 최종 화면 내 예측 모드로 선택하는 방법이 사용될 수 있다. 또 다른 예로 화면 내 예측 또는 화면 간 예측을 수행함에 있어 사용되는 예측 블록의 형태를 제한적으로 사용하도록 하는 것도 가능하다.
인코딩부에서 처리되는 블록의 단위는 부호화를 수행하는 부호화 단위, 예측을 수행하는 예측 단위, 변환을 수행하는 변환 단위가 될 수 있다. 부호화 단위는 CU(Coding Unit), 예측 단위는 PU(Prediction Unit), 변환 단위는 TU(Transform Unit)라는 용어로 표현될 수 있다.
분할부(410)에서는 입력 영상을 복수의 부호화 블록, 예측 블록 및 변환 블록의 조합으로 분할하고 소정의 기준(예를 들어, 비용 함수)으로 그 중 하나의 부호화 블록, 예측 블록 및 변환 블록의 조합을 선택하여 입력 영상을 분할할 수 있다. 예를 들어, 입력 영상에서 부호화 단위를 분할하기 위해서는 쿼드 트리 구조(QuadTree Structure)와 같은 재귀적인 트리 구조를 사용할 수 있다. 이하, 본 발명의 실시예에서는 부호화 블록의 의미를 부호화를 하는 블록이라는 의미뿐만 아니라 복호화를 수행하는 블록이라는 의미로도 사용할 수 있다.
예측 블록은 화면 내 예측 또는 화면 간 예측과 같은 예측을 수행하는 단위가 될 수 있다. 화면 내 예측을 수행하는 블록은 2Nx2N, NxN과 같은 정사각형 형태의 블록일 수 있다. 화면 간 예측을 수행하는 블록으로는 2Nx2N, NxN과 같은 정사각형의 형태 또는 2NxN, Nx2N과 같은 직사각형의 형태 또는 비대칭 형태인 AMP (Asymmetric Motion Partitioning)를 사용한 예측 블록 분할 방법이 있다. 예측 블록의 형태에 따라 변환부(415)에서는 변환을 수행하는 방법이 달라질 수 있다.
인코딩부(400)의 예측부(420)는 화면 내 예측(intra prediction)을 수행하는 화면 내 예측부(421)와 화면 간 예측(inter prediction)을 수행하는 화면 간 예측부(422)를 포함할 수 있다.
예측부(420)는 예측 블록에 대해 화면 간 예측을 사용할 것인지 또는 화면 내 예측을 수행할 것인지를 결정할 수 있다. 화면 내 예측을 수행함에 있어서 예측 블록 단위로 화면 내 예측 모드를 결정하고, 결정된 화면 내 예측 모드에 기초하여 화면 내 예측을 수행하는 과정은 변환 블록 단위로 수행될 수도 있다. 생성된 예측 블록과 원본 블록 사이의 잔차값(잔차 블록)은 변환부(430)로 입력될 수 있다. 또한, 예측을 위해 사용한 예측 모드 정보, 움직임 정보 등은 잔차값과 함께 엔트로피 부호화부(430)에서 부호화되어 디코더에 전달될 수 있다.
PCM(Pulse Coded Modulation) 부호화 모드를 사용할 경우, 예측부(420)를 통해 예측을 수행하지 않고, 원본 블록을 그대로 부호화하여 디코더에 전송하는 것도 가능하다.
화면 내 예측부(421)에서는 현재 블록(예측 대상이 되는 블록)의 주변에 존재하는 참조 픽셀을 기초로 화면 내 예측된 블록을 생성할 수 있다. 화면 내 예측 방법에서 화면 내 예측 모드는 참조 픽셀을 예측 방향에 따라 사용하는 방향성 예측 모드와 예측 방향을 고려하지 않는 비방향성 모드를 가질 수 있다. 루마 정보를 예측하기 위한 모드와 색차 정보를 예측하기 위한 모드는 종류가 상이할 수 있다. 색차 정보를 예측하기 위해 루마 정보를 예측한 화면 내 예측 모드 또는 예측된 루마 정보를 활용할 수 있다. 만약, 참조 픽셀이 가용하지 않는 경우, 가용하지 않은 참조 픽셀을 다른 픽셀로 대체하고, 이를 사용하여 예측 블록을 생성할 수 있다.
예측 블록은 복수개의 변환 블록을 포함할 수 있는데, 화면 내 예측을 수행 시 예측 블록의 크기와 변환 블록의 크기가 동일할 경우, 예측 블록의 좌측에 존재하는 픽셀, 좌측 상단에 존재하는 픽셀, 상단에 존재하는 픽셀을 기초로 예측 블록에 대한 화면 내 예측을 수행할 수 있다. 하지만, 화면 내 예측을 수행 시 예측 블록의 크기와 변환 블록의 크기가 상이하여 예측 블록의 내부에 복수의 변환 블록이 포함되는 경우, 변환 블록에 인접한 주변 픽셀을 참조 픽셀로 이용하여 화면 내 예측을 수행할 수 있다. 여기서, 변환 블록에 인접한 주변 픽셀은 예측 블록에 인접한 주변 픽셀과 예측 블록 내에 이미 복호화된 픽셀 중 적어도 하나를 포함할 수 있다.
화면 내 예측 방법은 화면 내 예측 모드에 따라 참조 화소에 MDIS(Mode Dependent Intra Smoothing) 필터를 적용한 후 예측 블록을 생성할 수 있다. 참조 픽셀에 적용되는 MDIS 필터의 종류는 상이할 수 있다. MDIS 필터는 화면 내 예측이 수행되어 화면 내 예측된 블록에 적용되는 추가의 필터로서 참조 픽셀과 예측을 수행 후 생성된 화면 내 예측된 블록에 존재하는 잔차를 줄이는데 사용될 수 있다. MDIS 필터링을 수행함에 있어 참조 픽셀과 화면 내 예측된 블록에 포함된 일부 열에 대한 필터링은 화면 내 예측 모드의 방향성에 따라 다른 필터링을 수행할 수 있다.
화면 간 예측부(422)는 현재 픽쳐의 이전 픽쳐 또는 이후 픽쳐 중 적어도 하나의 픽쳐에 포함된 블록의 정보를 참조하여 예측을 수행할 수 있다. 화면 간 예측부(422)에는 참조 픽쳐 보간부, 움직임 예측부, 움직임 보상부가 포함될 수 있다.
참조 픽쳐 보간부에서는 메모리(495)로부터 참조 픽쳐 정보를 제공받고 참조 픽쳐에서 정수 화소 이하의 화소 정보를 생성할 수 있다. 루마 화소의 경우, 1/4 화소 단위로 정수 화소 이하의 화소 정보를 생성하기 위해 필터 계수를 달리하는 DCT 기반의 8탭 보간 필터(DCT-based Interpolation Filter)가 사용될 수 있다. 색차 신호의 경우 1/8 화소 단위로 정수 화소 이하의 화소 정보를 생성하기 위해 필터 계수를 달리하는 DCT 기반의 4탭 보간 필터(DCT-based Interpolation Filter)가 사용될 수 있다.
화면 간 예측부(422)는 참조 픽쳐 보간부에 의해 보간된 참조 픽쳐를 기초로 움직임 예측을 수행할 수 있다. 움직임 벡터를 산출하기 위한 방법으로 FBMA(Full search-based Block Matching Algorithm), TSS(Three Step Search), NTS(New Three-Step Search Algorithm) 등 다양한 방법이 사용될 수 있다. 움직임 벡터는 보간된 화소를 기초로 1/2 또는 1/4 화소 단위의 움직임 벡터 값을 가질 수 있다. 화면 간 예측부(122, 127)에서는 여러 가지 화면 간 예측 방법 중 하나의 화면 간 예측 방법을 적용하여 현재 블록에 대한 예측을 수행할 수 있다.
화면 간 예측 방법으로는 예를 들어, 스킵(Skip) 방법, 머지(Merge) 방법, MVP(Motion Vector Predictor)를 이용하는 방법 등 다양한 방법이 사용될 수 있다.
화면 간 예측에 있어서 움직임 정보 즉, 참조 인덱스, 움직임 벡터, 레지듀얼 신호 등의 정보는 엔트로피 부호화되어 디코더에 전달된다. 스킵 모드가 적용되는 경우에는 잔차 신호가 생성되지 아니하므로, 잔차 신호에 대한 변환 및 양자화 과정이 생략될 수 있다.
예측부(420)에서 생성된 예측 블록과 예측 블록의 복원 블록과 차이 값인 잔차값(Residual) 정보를 포함하는 잔차 블록이 생성되며, 잔차 블록은 변환부(430)에 입력된다.
변환부(430)에서는 잔차 블록을 DCT(Discrete Cosine Transform) 또는 DST(Discrete Sine Transform)와 같은 변환 방법을 사용하여 변환시킬 수 있다. 잔차 블록을 변환하기 위해 DCT를 적용할지 DST를 적용할지는 잔차 블록을 생성하기 위해 사용된 예측 블록의 화면 내 예측 모드 정보 및 예측 블록의 크기 정보를 기초로 결정할 수 있다. 즉, 변환부(430)에서는 예측 블록의 크기 및 예측 방법에 따라 변환 방법을 다르게 적용할 수 있다.
양자화부(440)는 변환부(430)에서 주파수 영역으로 변환된 값들을 양자화할 수 있다. 블록에 따라 또는 영상의 중요도에 따라 양자화 계수는 변할 수 있다. 양자화부(440)에서 산출된 값은 역양자화부(470)와 재정렬부(450)에 제공될 수 있다.
재정렬부(450)는 양자화된 잔차 값에 대해 계수 값의 재정렬을 수행할 수 있다. 재정렬부(450)는 계수 스캐닝(Coefficient Scanning) 방법을 통해 2차원의 블록 형태 계수를 1차원의 벡터 형태로 변경할 수 있다. 예를 들어, 재정렬부(450)에서는 지그-재그 스캔(Zig-Zag Scan)방법을 이용하여 DC 계수부터 고주파수 영역의 계수까지 스캔하여 1차원 벡터 형태로 변경시킬 수 있다. 변환 블록의 크기 및 화면 내 예측 모드에 따라 지그-재그 스캔 방법이 아닌 2차원의 블록 형태 계수를 열 방향으로 스캔하는 수직 스캔 방법, 2차원의 블록 형태 계수를 행 방향으로 스캔하는 수평 스캔 방법이 사용될 수 있다. 즉, 변환 블록의 크기 및 화면 내 예측 모드에 따라 지그-재그 스캔, 수직 방향 스캔 및 수평 방향 스캔 중 어떠한 스캔 방법이 사용될지 여부를 결정할 수 있다.
엔트로피 부호화부(460)는 재정렬부(450)에 의해 산출된 값들을 기초로 엔트피 부호화를 수행할 수 있다. 엔트로피 부호화는 예를 들어, 지수 골롬(Exponential Golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)와 같은 다양한 부호화 방법을 사용할 수 있다.
엔트로피 부호화부(460)는 재정렬부(450) 및 예측부(420)로부터 부호화 블록의 잔차값 계수 정보 및 블록 타입 정보, 예측 모드 정보, 분할 단위 정보, 예측 블록 정보 및 전송 단위 정보, 움직임 정보, 참조 프레임 정보, 블록의 보간 정보, 필터링 정보 등 다양한 정보를 제공받아 소정의 부호화 방법을 기초로 엔트로피 부호화를 수행할 수 있다. 또한, 엔트로피 부호화부(460)에서는 재정렬부(450)에서 입력된 부호화 단위의 계수값을 엔트로피 부호화할 수 있다.
엔트로피 부호화부(460)에서는 화면 내 예측 모드 정보에 대한 이진화를 수행하여 현재 블록의 화면 내 예측 모드 정보를 부호화할 수 있다. 엔트로피 부호화부(460)에는 이러한 이진화 동작을 수행하기 위한 코드워드 매핑부가 포함될 수 있고, 화면 내 예측을 수행하는 예측 블록의 크기에 따라 이진화를 다르게 수행할 수 있다. 코드워드 매핑부에서는 코드워드 매핑 테이블이 이진화 동작을 통해 적응적으로 생성되거나 미리 저장되어 있을 수 있다. 또 다른 실시예로 엔트로피 부호화부(460)에서 코드넘 매핑을 수행하는 코드넘 매핑부와 코드워드 매핑을 수행하는 코드워드 매핑부를 이용하여 현재 화면 내 예측 모드 정보를 표현할 수 있다. 코드넘 매핑부와 코드워드 매핑부에서는 코드넘 매핑 테이블과 코드워드 매핑 테이블이 생성되거나 저장되어 있을 수 있다.
역양자화부(470) 및 역변환부(480)에서는 양자화부(440)에서 양자화된 값들을 역양자화하고 변환부(430)에서 변환된 값들을 역변환 한다. 역양자화부(470) 및 역변환부(480)에서 생성된 잔차값(Residual)은 예측부(420)에 포함된 움직임 추정부, 움직임 보상부 및 화면 내 예측부를 통해서 예측된 예측 블록과 합쳐져 복원 블록(Reconstructed Block)을 생성할 수 있다.
필터부(490)는 디블록킹 필터, 오프셋 보정부 중 적어도 하나를 포함할 수 있다.
디블록킹 필터는 복원된 픽쳐에서 블록간의 경계로 인해 생긴 블록 왜곡을 제거할 수 있다. 디블록킹을 수행할지 여부를 판단하기 위해 블록에 포함된 몇 개의 열 또는 행에 포함된 픽셀을 기초로 현재 블록에 디블록킹 필터 적용할지 여부를 판단할 수 있다. 블록에 디블록킹 필터를 적용하는 경우 필요한 디블록킹 필터링 강도에 따라 강한 필터(Strong Filter) 또는 약한 필터(Weak Filter)를 적용할 수 있다. 또한, 디블록킹 필터를 적용함에 있어 수직 필터링 및 수평 필터링을 수행시 수평 방향 필터링 및 수직 방향 필터링이 병행처리가 되도록 할 수 있다.
오프셋 보정부는 디블록킹을 수행한 영상에 대해 픽셀 단위로 원본 영상과의 오프셋을 보정할 수 있다. 특정 픽쳐에 대한 오프셋 보정을 수행하기 위해 영상에 포함된 픽셀을 일정 영역으로 구분한 후 오프셋을 수행할 영역을 결정하고 해당 영역에 오프셋을 적용하는 방법 또는 각 픽셀의 에지 정보를 고려하여 오프셋을 적용하는 방법을 사용할 수 있다.
필터부(490)는 디블록킹 필터, 오프셋 보정을 모두 적용하지 않고 디블록킹 필터만 적용하거나 디블록킹 필터와 오프셋 보정을 둘 다 적용할 수도 있다.
메모리(495)는 필터부(490)를 통해 산출된 복원 블록 또는 픽쳐를 저장할 수 있고, 저장된 복원 블록 또는 픽쳐는 화면 간 예측을 수행 시 예측부(420)에 제공될 수 있다.
도 6은 본 발명이 적용되는 일실시예로서, 컴퓨팅 파워에 기반하여 디와핑을 수행하는 시스템을 도시한 것이다.
도 6을 참조하면, 단말기(10)는 관리 서버(20)에 파노라믹 VOD에 관한 서비스 포트 정보를 요청할 수 있다(S600).
관리 서버(20)는 단말기(10)로부터 서비스 포트 정보의 요청이 있는 경우, 해당 단말기(10)에 서비스 포트 정보를 전달하고, 단말기(10)의 컴퓨팅 파워 정보를 요청할 수 있다(S605).
상기 관리 서버(20)의 요청에 대응하여 단말기(10)는 컴퓨팅 파워 정보를 관리 서버(20)에 전달할 수 있다(S610).
관리 서버(20)는 단말기(10)로부터 수신된 컴퓨팅 파워 정보에 기반하여 입력 영상에 대한 디와핑을 단말기(10)에서 처리할지 여부를 결정할 수 있다(S615).
만일, 입력 영상에 대한 디와핑을 단말기(10)에서 처리하는 것으로 결정된 경우, 상기 관리 서버(20)는 VOD 서버(30)에 파노라믹 비디오를 요청할 수 있다(S620).
상기 관리 서버(20)의 요청이 있는 경우, VOD 서버(30)는 DB 서버(40)에 파노라믹 포맷을 요청할 수 있고(S625), 상기 DB 서버(40)는 VOD 서버(30)의 요청에 대응하여 파노라믹 포맷을 VOD 서버(30)에 전달할 수 있다(S630). VOD 서버(30)는 DB 서버(40)로부터 수신한 파노라믹 포맷에 대응하는 파노라믹 비디오 스트림을 단말기(10)로 전송할 수 있다(S635).
상기 단말기(10)는 수신된 파노라믹 비디오 스트림을 복호화하여 와핑된 영상을 복원하고, 이에 대해서 디와핑을 수행한 후 이를 다시 인코딩할 수 있다. 이를 위해 상기 단말기(10)는 파노라믹 영상 처리 서버(100)와 동일하게 와핑 영역 결정부(200), 디와핑 처리부(300)와 인코딩부(400)를 포함할 수 있으며, 이는 도 4에서 자세히 살펴 보았는바, 여기서 자세한 설명은 생략하기로 한다.
만일, 입력 영상에 대한 디와핑을 파노라믹 영상 처리 서버(100)에서 처리하는 것으로 결정된 경우, 상기 관리 서버(20)는 VOD 서버(30)에 파노라믹 비디오를 요청할 수 있다(S640).
상기 관리 서버(20)의 요청이 있는 경우, VOD 서버(30)는 DB 서버(40)에 파노라믹 포맷을 요청할 수 있고(S645), 상기 DB 서버(40)는 VOD 서버(30)의 요청에 대응하여 파노라믹 포맷을 VOD 서버(30)에 전달할 수 있다(S650). VOD 서버(30)는 DB 서버(40)로부터 수신한 파노라믹 포맷에 대응하는 파노라믹 비디오 스트림을 파노라믹 영상 처리 서버(100)로 전송할 수 있다(S655).
파노라믹 영상 처리 서버(100)는 수신된 파노라믹 비디오 스트림을 디코딩하여 와핑된 영상을 생성하고, 와핑된 영상에 대해 디와핑을 수행할 수 있다. 파노라믹 영상 처리 서버(100)는 디와핑된 영상을 인코딩하여 왜곡 보정된 파노라믹 비디오 스트림을 생성할 수 있다. 파노라믹 영상 처리 서버(100)에서 디와핑을 수행하는 방법은 도 4에서 자세히 살펴 보았는바, 여기서 자세한 설명은 생략하기로 한다.
파노라믹 영상 처리 서버(100)에서 생성된 파노라믹 비디오 스트림은 단말기(10)로 전송될 수 있다(S660). 해당 단말기(10)는 수신된 파노라믹 비디오 스트림을 디코딩하여 왜곡된 영상 정보가 없는 영상을 복원할 수 있다.
도 7은 본 발명이 적용되는 일실시예로서, 단말기의 성능에 기반한 파노라믹 영상 처리 서버(100)와 단말기(10) 간의 선택적인 디와핑 수행 방법을 도시한 것이다.
하나의 영상을 서로 다른 사용자(user A, user B)가 보는 경우에, 각 사용자가 보는 전체 FOV(field of video)에 따라 각 세그먼트의 왜곡 정도가 상이할 수 있다.
도 7을 참조하면, 각 사용자가 보는 전체 FOV(field of video)에 따라 파노라믹 비디오의 와핑 영역이 상이하게 결정될 수 있다. 이때 각 사용자의 단말기의 성능에 고려하여 와핑 영역에 대한 디와핑을 파노라믹 영상 처리 서버(100)에서 수행할지, 아니면 해당 단말기에서 수행할지를 결정할 수 있다.
예를 들어, user A의 단말기 성능이 낮은 경우, 파노라믹 영상 처리 서버(100)에서 와핑 영역에 대한 디와핑을 수행하고, 비-와핑 영역은 파노라믹 영상 처리 서버(100)를 거치지 아니하고 단말기로 전송될 수 있다. 파노라믹 영상 처리 서버(100)에서 디와핑된 영역은 단말기로 전송되며, 디와핑된 영역과 비-와핑 영역은 조합되어 부호화될 수 있다.
한편, user B의 단말기 성능이 높은 경우, 와핑 영역과 비-와핑 영역 모두 단말기로 전송되고, 단말기는 와핑 영역에 대해서 디와핑을 수행할 수 있다. 마찬가지로, 단말기는 디와핑된 영역과 비-와핑 영역을 조합하여 입력 영상을 재구성한 후, 이를 부호화할 수 있다.
도 8은 본 발명이 적용되는 일실시예로서, 쿼드트리 구조의 파티션닝에 기반하여 와핑된 영상에 대해 디와핑을 수행하는 과정을 도시한 것이다.
현재 세그먼트에 속한 와핑 메쉬의 꼭지점의 개수 또는 와핑 메쉬의 모양 중 적어도 하나에 기초하여 현재 세그먼트가 와핑 영역인지를 결정할 수 있다. 이는 도 3을 참조하여 자세히 살펴 보았는바, 여기서 자세한 설명은 생략하기로 한다.
현재 세그먼트가 와핑 영역으로 결정된 경우, 현재 세그먼트를 쿼드트리 구조로 분할하고, 현재 세그먼트를 구성하는 각각의 파티션에 대해서 도 3의 방법에 따라 와핑 영역인지를 결정할 수 있다. 여기서, 쿼드트리 구조의 분할은 현재 세그먼트 내에서 와핑 영역의 위치를 정확히 검출하기 위한 것이다. 본 발명의 쿼드트리 구조의 분할에 대해서는 도 9를 참조하여 살펴 보기로 한다. 반면, 현재 세그먼트가 비-와핑 영역으로 결정된 경우, 이는 현재 세그먼트에는 왜곡된 영상 정보가 존재하지 않음을 의미하므로, 쿼드트리 구조의 분할을 수행하지 않는다.
구체적으로, 쿼드트리 구조의 분할을 통해 현재 세그먼트는 4개의 파티션(즉, 파티션0 내지 파티션3)으로 분할될 수 있다. 상기 4개의 파티션 각각에 대해서 도 3의 방법에 따라 와핑 영역인지를 추가적으로 결정할 수 있다. 상기 4개의 파티션 중 적어도 하나는 와핑 영역으로 결정될 수 있다. 예를 들어, 파티션0은 와핑 영역으로 결정될 수 있고, 나머지 파티션 즉, 파티션1 내지 파티션3은 비-와핑 영역으로 결정될 수 있다. 이 경우, 와핑 영역으로 결정된 파티션0에 대해서 추가적으로 쿼드트리 구조로 분할을 수행하고, 파티션0를 구성하는 각각의 파티션(이하, 서브-파티션이라 함)에 대해서 와핑 영역인지 여부를 결정할 수 있다.
이와 같이, 파노라믹 영상의 일부 영역(예를 들어, 세그먼트, 파티션, 서브-파티션 등)이 와핑 영역으로 결정된 경우, 분할 뎁스(split depth) 또는 분할 레벨(split level)를 증가시키고 동시에 일부 영역을 사분할함으로써 파노라믹 영상에 존재하는 와핑 영역의 위치를 정확히 검출할 수 있다. 다만, 쿼드트리 구조의 분할은 소정의 분할 뎁스 범위 내에서 및/또는 소정의 블록 크기 범위 내에서 수행되는 것으로 제한될 수 있다. 여기서, 소정의 분할 뎁스는 분할 뎁스의 최대값을 의미할 수 있고, 소정의 블록 크기는 분할이 허용되는 블록의 최소 크기를 의미할 수 있다. 소정의 분할 뎁스와 블록 크기는 파노라믹 영상 처리 서버에 기-설정된 것일 수도 있고, 사용자 지정에 의해 가변적으로 결정될 수도 있다.
도 9는 본 발명이 적용되는 일실시예로서, 세그먼트를 쿼드트리 구조로 분할하는 방법을 도시한 것이다.
도 9에서 세그먼트(900)는 분할 레벨의 값이 0이고, 와핑 영역인 것으로 가정한다. 상기 세그먼트(900)는 파티션0, 파티션1, 파티션2 및 파티션3으로 분할될 수 있다. 이 경우, 각 파티션 별로 분할 레벨의 값은 1로 증가되고, 각각의 파티션에 대해서 해당 파티션이 와핑 영역인지 여부를 결정할 수 있다.
만일, 파티션0가 와핑 영역으로 결정된 경우, 도 9에 도시된 바와 같이 파티션0는 4개의 서브-파티션 a 내지 d로 분할될 수 있다. 파티션1과 파티션2는 비-와핑 영역으로 결정된 경우로서, 추가적으로 분할되지 아니한다.
한편, 파티션3은 와핑 영역으로 결정된 경우로서, 도 9에 도시된 바와 같이 파티션3은 4개의 서브-파티션으로 분할되고, 각각의 서브-파티션에 대한 분할 레벨의 값은 2로 증가된다. 그런 다음, 4개의 서브-파티션 각각에 대해서 와핑 영역인지 여부를 결정할 수 있다.
파티션3에 포함된 서브-파티션 g, i 및 m은 비-와핑 영역으로 결정된 경우로서, 추가적으로 분할되지 아니한다. 반면, 블록 h 내지 k로 구성된 서브-파티션은 와핑 영역으로 결정된 경우로서, 상기 4개의 블록 h 내지 k로 분할되고, 각각의 블록에 대한 블록 레벨의 값은 3으로 증가된다. 만일, 기-설정된 분할 레벨의 최대값이 3인 경우이거나, 4개의 블록 h 내지 k의 블록 크기가 분할이 허용되는 블록의 최소 크기에 해당하는 경우, 상기 블록 h 내지 k 각각에 대해서 와핑 영역인지 여부를 결정하지 않을 수 있고, 또는 쿼드트리 구조의 분할을 더 이상 수행하지 않을 수 있다.
이와 같이 쿼드트리 구조의 분할을 통해 파노라믹 영상을 와핑 영역과 비-와핑 영역으로 구분할 수 있다.
본 발명은 파노라믹 비디오 부호화/복호화에 이용될 수 있다.
Claims (15)
- 입력 영상을 복수의 세그먼트로 분할하는 단계; 여기서, 상기 세그먼트는 상기 입력 영상의 병렬 처리를 위해 정의된 소정의 단위를 의미함,상기 분할된 복수의 세그먼트 각각에 대해서 와핑 영역(warped region)인지 여부를 결정하는 단계; 여기서, 상기 와핑 영역은 디와핑(de-warping) 처리가 요구되는 영역을 의미함,상기 입력 영상에 관한 파노라믹 포맷에 기초하여, 상기 와핑 영역으로 결정된 세그먼트에 대해서 디와핑을 수행하는 단계; 및상기 디와핑이 수행된 세그먼트를 부호화하는 단계를 포함하는 파노라믹 비디오 부호화 방법.
- 제1항에 있어서,상기 와핑 영역인지 여부는 상기 세그먼트 내에 속한 와핑 메쉬의 꼭지점의 개수 또는 상기 와핑 메쉬의 모양 중 적어도 하나에 기초하여 결정되는 것을 특징으로 하는 파노라믹 비디오 부호화 방법.
- 제1항에 있어서,상기 파노라믹 포맷은 상기 입력 영상에 관한 와핑 타입 또는 영상 왜곡도 패턴을 의미하는 것을 특징으로 하는 파노라믹 비디오 부호화 방법.
- 제3항에 있어서, 상기 디와핑을 수행하는 단계는,상기 입력 영상에 관한 카메라 식별 정보에 기초하여 상기 파노라믹 포맷을 결정하는 단계를 포함하고,상기 카메라 식별 정보는 상기 입력 영상을 촬영한 카메라의 종류 또는 카메라 특성을 식별하기 위해 시그날링되는 정보를 의미하는 것을 특징으로 하는 파노라믹 비디오 부호화 방법.
- 제3항에 있어서, 상기 디와핑을 수행하는 단계는,상기 카메라 식별 정보에 기초하여 상기 입력 영상에 관련된 카메라 타입을 결정하는 단계; 및상기 결정된 카메라 타입에 대응하는 상기 파노라믹 포맷을 기-정의된 테이블 정보로부터 추출하는 단계를 포함하되,상기 테이블 정보는 카메라 타입 별로 이용 가능한 하나 또는 그 이상의 파노라믹 포맷으로 구성되는 것을 특징으로 하는 파노라믹 비디오 부호화 방법.
- 제1항에 있어서,상기 세그먼트는 복수의 LCU(largest coding unit) 행을 포함하고,상기 세그먼트는 상기 LCU 행 단위로 병렬적으로 디와핑되며,상기 LCU 행 내에서는 기-정의된 스캔 순서에 따라 LCU 단위로 순차적으로 디와핑되는 것을 특징으로 하는 파노라믹 비디오 부호화 방법.
- 입력 영상을 복수의 세그먼트로 분할하고, 상기 분할된 복수의 세그먼트 각각에 대해서 와핑 영역(warped region)인지 여부를 결정하는 와핑 영역 결정부; 여기서, 상기 세그먼트는 상기 입력 영상의 병렬 처리를 위해 정의된 소정의 단위를 의미하고, 상기 와핑 영역은 디와핑(de-warping) 처리가 요구되는 영역을 의미함,상기 입력 영상에 관한 파노라믹 포맷에 기초하여, 상기 와핑 영역으로 결정된 세그먼트에 대해서 디와핑을 수행하는 디와핑 처리부; 및상기 디와핑이 수행된 세그먼트를 부호화하는 인코딩부를 포함하는 파노라믹 비디오 부호화 장치.
- 제7항에 있어서, 상기 와핑 영역 결정부는,상기 세그먼트 내에 속한 와핑 메쉬의 꼭지점의 개수 또는 상기 와핑 메쉬의 모양 중 적어도 하나에 기초하여 상기 와핑 영역인지 여부를 결정하는 것을 특징으로 하는 파노라믹 비디오 부호화 장치.
- 제7항에 있어서,상기 파노라믹 포맷은 상기 입력 영상에 관한 와핑 타입 또는 영상 왜곡도 패턴을 의미하는 것을 특징으로 하는 파노라믹 비디오 부호화 장치.
- 제9항에 있어서, 상기 디와핑 처리부는,상기 입력 영상에 관한 카메라 식별 정보에 기초하여 상기 파노라믹 포맷을 결정하고,상기 카메라 식별 정보는 상기 입력 영상을 촬영한 카메라의 종류 또는 카메라 특성을 식별하기 위해 시그날링되는 정보를 의미하는 것을 특징으로 하는 파노라믹 비디오 부호화 장치.
- 제9항에 있어서, 상기 디와핑 처리부는,상기 카메라 식별 정보에 기초하여 상기 입력 영상에 관련된 카메라 타입을 결정하고, 상기 결정된 카메라 타입에 대응하는 상기 파노라믹 포맷을 기-정의된 테이블 정보로부터 추출하되,상기 테이블 정보는 카메라 타입 별로 이용 가능한 하나 또는 그 이상의 파노라믹 포맷으로 구성되는 것을 특징으로 하는 파노라믹 비디오 부호화 장치.
- 제7항에 있어서,상기 세그먼트는 복수의 LCU(largest coding unit) 행을 포함하고,상기 디와핑 처리부는 상기 세그먼트에 포함되는 상기 LCU 행 단위로 병렬적으로 디와핑을 수행하되,상기 LCU 행 내에서는 기-정의된 스캔 순서에 따라 LCU 단위로 순차적으로 디와핑이 수행되는 것을 특징으로 하는 파노라믹 비디오 부호화 장치.
- 파노라믹 비디오를 구성하는 복수의 세그먼트 각각에 대해서 와핑 영역(warped region)인지 여부를 결정하고, 상기 파노라믹 비디오에 관한 파노라믹 포맷에 기초하여 상기 와핑 영역으로 결정된 세그먼트에 대해서 디와핑을 수행하며, 상기 디와핑이 수행된 세그먼트를 부호화하는 파노라믹 영상 처리 서버; 여기서, 상기 세그먼트는 상기 입력 영상의 병렬 처리를 위해 정의된 소정의 단위를 의미하고, 상기 와핑 영역은 디와핑(de-warping) 처리가 요구되는 영역을 의미함,상기 파노라믹 비디오에 대응하는 파노라믹 포맷을 결정하는 데이터베이스 서버를 포함하는 파노라믹 비디오 부호화 시스템.
- 제13항에 있어서, 상기 데이터베이스 서버는,상기 파노라믹 비디오에 관한 카메라 식별 정보에 기초하여 상기 파노라믹 비디오의 디와핑에 이용되는 파노라믹 포맷을 결정하고, 상기 결정된 파노라믹 포맷을 상기 파노라믹 영상 처리 서버로 전송하는 파노라믹 비디오 부호화 시스템.
- 제14항에 있어서, 상기 데이터베이스 서버는,상기 카메라 식별 정보에 기초하여 상기 파노라믹 비디오를 촬영한 카메라 타입을 결정하고, 상기 결정된 카메라 타입에 대응하는 파노라믹 포맷을 기-저장된 테이블 정보로부터 추출하되,상기 테이블 정보는 카메라 타입 별로 이용 가능한 파노라믹 포맷으로 구성되는 것을 특징으로 하는 파노라믹 비디오 부호화 시스템.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US15/742,403 US20180220156A1 (en) | 2015-07-08 | 2016-07-07 | Method and device for correcting distortion of panoramic video |
Applications Claiming Priority (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR10-2015-0097007 | 2015-07-08 | ||
| KR20150097007 | 2015-07-08 | ||
| KR10-2015-0129819 | 2015-09-14 | ||
| KR1020150129819A KR20170007069A (ko) | 2015-07-08 | 2015-09-14 | 파노라믹 비디오의 왜곡보정 방법 및 장치 |
| KR10-2015-0138631 | 2015-10-01 | ||
| KR1020150138631A KR102493934B1 (ko) | 2015-07-08 | 2015-10-01 | 파노라믹 비디오의 왜곡보정 방법 및 장치 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2017007250A1 true WO2017007250A1 (ko) | 2017-01-12 |
Family
ID=57685269
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/KR2016/007352 Ceased WO2017007250A1 (ko) | 2015-07-08 | 2016-07-07 | 파노라믹 비디오의 왜곡보정 방법 및 장치 |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2017007250A1 (ko) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100546639B1 (ko) * | 2003-01-09 | 2006-01-26 | 엘지전자 주식회사 | 영상 왜곡 보정 장치 |
| KR20110090083A (ko) * | 2010-02-02 | 2011-08-10 | 삼성전자주식회사 | 디지털 촬영 장치 및 이의 영상 왜곡 보정 방법 |
| KR20110138410A (ko) * | 2009-04-14 | 2011-12-27 | 배 시스템즈 인포메이션 앤드 일렉트로닉 시스템즈 인티크레이션, 인크. | 차량 장착용 촬상 시스템 및 촬상 방법 |
| JP2014049831A (ja) * | 2012-08-30 | 2014-03-17 | Xacti Corp | 撮像装置 |
| US20150131924A1 (en) * | 2013-11-13 | 2015-05-14 | Microsoft Corporation | Creation of Rectangular Images from Input Images |
-
2016
- 2016-07-07 WO PCT/KR2016/007352 patent/WO2017007250A1/ko not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100546639B1 (ko) * | 2003-01-09 | 2006-01-26 | 엘지전자 주식회사 | 영상 왜곡 보정 장치 |
| KR20110138410A (ko) * | 2009-04-14 | 2011-12-27 | 배 시스템즈 인포메이션 앤드 일렉트로닉 시스템즈 인티크레이션, 인크. | 차량 장착용 촬상 시스템 및 촬상 방법 |
| KR20110090083A (ko) * | 2010-02-02 | 2011-08-10 | 삼성전자주식회사 | 디지털 촬영 장치 및 이의 영상 왜곡 보정 방법 |
| JP2014049831A (ja) * | 2012-08-30 | 2014-03-17 | Xacti Corp | 撮像装置 |
| US20150131924A1 (en) * | 2013-11-13 | 2015-05-14 | Microsoft Corporation | Creation of Rectangular Images from Input Images |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2020071830A1 (ko) | 히스토리 기반 움직임 정보를 이용한 영상 코딩 방법 및 그 장치 | |
| WO2020071829A1 (ko) | 히스토리 기반 영상 코딩 방법 및 그 장치 | |
| WO2019240448A1 (ko) | 성분 간 참조 기반의 비디오 신호 처리 방법 및 장치 | |
| WO2018044088A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2017039256A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2017034331A1 (ko) | 영상 코딩 시스템에서 크로마 샘플 인트라 예측 방법 및 장치 | |
| WO2013154366A1 (ko) | 블록 정보에 따른 변환 방법 및 이러한 방법을 사용하는 장치 | |
| WO2017014412A1 (ko) | 비디오 코딩 시스템에서 인트라 예측 방법 및 장치 | |
| WO2017061671A1 (ko) | 영상 코딩 시스템에서 적응적 변환에 기반한 영상 코딩 방법 및 장치 | |
| WO2020185047A1 (ko) | 인트라 예측을 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 | |
| WO2021015537A1 (ko) | 팔레트 모드의 적용 여부에 따라 크로마 성분 예측 정보를 시그널링 하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 | |
| WO2021137597A1 (ko) | Ols에 대한 dpb 파라미터를 사용하는 영상 디코딩 방법 및 그 장치 | |
| WO2016114583A1 (ko) | 비디오 신호 처리 방법 및 장치 | |
| WO2020235960A1 (ko) | Bdpcm 에 대한 영상 디코딩 방법 및 그 장치 | |
| WO2020180100A1 (ko) | 인트라 블록 코딩 기반 비디오 또는 영상 코딩 | |
| WO2020141928A1 (ko) | 영상 코딩 시스템에서 mmvd 에 따른 예측에 기반한 영상 디코딩 방법 및 장치 | |
| WO2020141856A1 (ko) | 영상 코딩 시스템에서 레지듀얼 정보를 사용하는 영상 디코딩 방법 및 그 장치 | |
| WO2020141885A1 (ko) | 디블록킹 필터링을 사용하는 영상 코딩 방법 및 장치 | |
| WO2016178485A1 (ko) | 영상 코딩 시스템에서 코딩 유닛 처리 방법 및 장치 | |
| WO2021060801A1 (ko) | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 | |
| WO2020256506A1 (ko) | 다중 참조 라인 인트라 예측을 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 | |
| WO2020180043A1 (ko) | Lmcs에 기반한 영상 코딩 방법 및 그 장치 | |
| WO2020004879A1 (ko) | 영상 코딩 시스템에서 복수의 주변 블록들을 사용하는 인터 예측에 따른 영상 디코딩 방법 및 장치 | |
| WO2021091256A1 (ko) | 영상/비디오 코딩 방법 및 장치 | |
| WO2020130629A1 (ko) | 다중 참조 라인 인트라 예측에 기반한 영상 코딩 방법 및 그 장치 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16821656 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 15742403 Country of ref document: US |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 16821656 Country of ref document: EP Kind code of ref document: A1 |