WO2017007208A1 - 고 해상도 영상에서의 영상 추출 장치 및 방법 - Google Patents
고 해상도 영상에서의 영상 추출 장치 및 방법 Download PDFInfo
- Publication number
- WO2017007208A1 WO2017007208A1 PCT/KR2016/007209 KR2016007209W WO2017007208A1 WO 2017007208 A1 WO2017007208 A1 WO 2017007208A1 KR 2016007209 W KR2016007209 W KR 2016007209W WO 2017007208 A1 WO2017007208 A1 WO 2017007208A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- image
- information
- bit stream
- extracted
- tile
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
- H04N5/93—Regeneration of the television signal or of selected parts thereof
Definitions
- the present embodiment relates to a method and an apparatus capable of extracting some images from a high resolution image.
- UHD ultra high definition
- the resolution of display devices such as TVs for providing ultra high-definition service is increasing.
- mobile terminals have been introduced to the extent that they support QHD (Quad High Definition) resolution.
- the mobile terminal may support UHD contents, contents having a resolution higher than Full HD do not show a difference in image quality in the mobile terminal.
- the mobile terminal since the mobile terminal has a limitation on the screen size, there are limitations such as limiting the buffer size of the terminal and deterioration in image quality due to downsampling.
- Content with a constant resolution is generally provided to a mobile terminal by reducing the size of the bit rate or resolution using a real-time transcoder.
- reducing the size of the bit rate or resolution using a real-time transcoder there is a limit to reducing only the bit rate, and it is necessary to edit the image to adjust the resolution before transmission.
- a transcoding procedure occurs that requires decoding, editing, and re-encoding the received image. Due to the transcoding process, problems such as deterioration and delay may occur, thereby limiting the provision of content and increasing the cost of reprocessing the image.
- an object of the present invention is to provide an image selection / extraction apparatus, a service, and a method for providing a user's viewpoint at various angles, such as expanding a specific location.
- An image information analyzer for analyzing image code and header information from the second receiving unit and the entire bit stream received by the first receiving unit and the header information of the entire bit stream according to the image selection information received by the second receiving unit.
- an extraction bitstream generation unit configured to generate new header information by modifying and generating an extraction bitstream including an image code corresponding to the new header information and the image selection information.
- the method comprising: receiving the entire bit stream and the image selection information included in the header information information indicating that the information is composed of one or more tiles, and analyzing the image code and header information from the entire bit stream; Modifying the header information of the entire bit stream according to the image selection information to generate new header information; and generating an extracted bit stream including the new header information and an image code corresponding to the image selection information. It provides an image extraction method characterized in that.
- the receiving unit for receiving the content including the image and the image included in the content by analyzing the image, the size of the image or the terminal to receive the image to one or more tiles It provides a bit stream generating apparatus comprising an encoding unit for setting and encoding the size of the tile or the number of tiles in the picture to be configured.
- the communication unit for receiving at least one of the entire bit stream and the information about the entire bit stream included in the header information indicating that the information consisting of one or more tiles related to the entire bit stream
- An image extracting unit to generate and It provides an image extraction terminal apparatus comprising: a decoder for decoding (Decoding) the group extracted bitstream.
- the extracted portion may be enlarged and displayed. It works.
- the performance of the terminal in extracting a specific portion desired by the user from the UHD content or in controlling the traffic of the video according to the network environment, the performance of the terminal, by modifying the header without additional transcoding
- the performance of the terminal by modifying the header without additional transcoding
- FIG. 1A is a schematic diagram illustrating a state in which an image extracting apparatus according to an embodiment of the present invention is connected to user terminals through a network.
- FIG. 1 (b) is a schematic diagram illustrating a state in which an extract stream is delivered to user terminals through a network according to another embodiment of the present invention.
- FIG. 1 (c) is a schematic diagram illustrating a state in which an extract stream is delivered to user terminals via a network according to another embodiment of the present invention.
- FIG. 2 is a schematic diagram of a display image divided into a tile structure of three rows and three columns.
- FIG. 3 is a block diagram illustrating a configuration of an image extraction apparatus or an image extraction unit according to an embodiment of the present invention.
- FIG. 4 is a schematic diagram illustrating a structure of a NAL unit according to an embodiment of the present invention.
- FIG. 5 (a) is a block diagram showing the configuration of a terminal according to an embodiment of the present invention.
- FIG. 5 (b) is a block diagram showing the configuration of a terminal according to another embodiment of the present invention.
- FIG. 5 (c) is a block diagram showing the configuration of a terminal according to another embodiment of the present invention.
- FIG. 6 is a flowchart illustrating a method of extracting an image according to an embodiment of the present invention.
- FIG. 7 is a diagram illustrating a structure of media expression description information according to another embodiment of the present invention.
- FIG. 1A is a schematic diagram illustrating a state in which an image extracting apparatus according to an embodiment of the present invention is connected to user terminals through a network.
- the headend 110 encodes content stored in a camera, a real-time channel, or storage into a structure having a plurality of tiles, and uses the network 116 to extract the entire encoded image stream 118. To send).
- the head end 110 may include a receiver 112 and an encoder 114.
- the receiver 112 of the headend receives content stored in a camera, a real-time channel, and storage and transmits the content to the encoder.
- the encoder 114 of the headend encodes the entire bit stream and sets the size of the tile and the number of tiles in the picture at the time of encoding.
- the encoder 114 may appropriately set the number, size, and position of tiles in the picture according to the image / scene configuration, the image size, the terminal to be serviced, and the like. For example, when the entire stream has a resolution of 7680x4320, the encoder 114 extracts a tile area that can be viewed at a resolution of 3840x2160 in the 7680x4320 support screen so that the TV can smoothly watch a TV having a resolution of 3840x2160. After extracting the tile region, the encoder 114 may set the tile to 3840x2160 or encode several tiles having a smaller size in advance so that only the extracted region can be reproduced.
- the header information of the entire bit stream encoded by the encoder 114 includes information indicating that a plurality of tile structures are configured per display picture.
- the header information includes flag information indicating that a tile structure in a picture is used and information on the number of tiles and the number of tiles.
- FIG. 2 is a schematic diagram of a display image divided into a tile structure of three rows and three columns.
- the encoder 114 of the headend sets the number of tiles or the size of the tiles according to the image / scene configuration, the image size, the terminal to be serviced, and the like for one entire bit stream.
- one display screen may be set to three tiles horizontally and three tiles vertically. In each tile, the number of coding tree blocks (CTBs) that are coding units is determined.
- CTBs coding tree blocks
- the number of samples in the width direction of any one tile is the same as the number of samples in the width direction of a tile vertically adjacent thereto.
- the number of samples in the height direction of any one tile is equal to the number of samples in the height direction of a tile adjacent thereto.
- the number of samples in the horizontal direction of the tiles 210, 240, and 270 is set to be the same.
- the number of samples in the vertical direction in tiles 210, 220, and 230 is set to be the same. In this way, the tile structure of H.265 High Efficiency Video Coding (HEVC) can be applied.
- HEVC High Efficiency Video Coding
- the encoder 114 encodes the entire bit stream and grasps information about the entire bit stream.
- the information about the entire bit stream refers to information that can represent the entire bit stream.
- the concept also includes text representing scenes or objects that appear.
- the encoder 114 of the headend may transmit the tile position information on the region where the preset object is located as additional information to the encoded stream. Accordingly, the terminals 120 and 122 may track the movement of the preset object in which the motion exists in the image to select and view the preset object.
- the preset object may be set, for example, as a specific player, manager, cheerleader, or the like in an image related to a sporting event.
- the encoder 114 detects an area where a predetermined object is located in the image, and fits the size of the object so that the preset object can be extracted well in the image or maintains the shape of the tile to extract the tile well. You can set tiles of various sizes, such as setting a smaller size.
- the encoder 114 may mux the tile position information of the region to be extracted to the image extracting apparatus 118 with the entire video stream and transmit the same together.
- the size, number, etc. of the tiles may be preset for each resolution so that the corresponding region may be extracted according to the resolution of the terminal. For example, if the stream to be encoded in the headend to be delivered to the image extraction apparatus has a resolution of 3840x2160, while the terminal provides a resolution of 1920x1080, the encoder 114 is 1920x1080 or with a stream having a resolution of 3840x2160
- the tile size and the number information set to the following size can be delivered together as additional information.
- the image extracting apparatus 118 receives information about the entire bit stream and the entire bit stream from the headend 110 using the network 116, and transmits the information about the entire bit stream to the terminals 120 and 122. .
- the image extracting apparatus 118 may be included as some functions in the home gateway of the home.
- the image extracting apparatus 118 receives terminal information and image selection information from the terminals 120 and 122.
- the image selection information refers to information about a location of a specific object or a location of a specific object to which a movement is to be tracked in the image.
- the image selection information is obtained from input by a predetermined selection device such as a touch screen, a remote controller, a mouse, or a keyboard, or by identifying a location to which the user's eyes are directed to determine where the region of interest (ROI) is located. It can be obtained using an eye tracking device that can be identified.
- the information about the object position may be a coordinate position of the image or an object ID predefined through the UI.
- the image extracting apparatus 118 may determine the size of the splittable tile using the terminal information including the maximum resolution and the designated coordinates. That is, when the tile corresponding to the designated coordinates is the same as the supported resolution of the terminal, the image extracting apparatus 118 may select one corresponding tile.
- the image extracting apparatus 118 may determine a desired selection position by selecting the corresponding tile and the neighboring tiles together.
- the image extracting apparatus 118 may select and recombine only the corresponding tiles.
- the image extracting apparatus 118 extracts an image tile part corresponding to the image selection information from the entire bit stream using the image selection information.
- the image extracting apparatus 118 changes the header according to the size of the extracted image without additional transcoding, and then transmits the extracted image to the terminals 120 and 122. Detailed description thereof will be described with reference to FIG. 3.
- the terminals 120 and 122 receive information about the entire bit stream from the image extractor 118 and transmit the terminal information and the image selection information to the image extractor 120.
- the terminals 120 and 122 may be a personal computer (PC), a notebook computer, a tablet, a personal digital assistant (PDA), a game console, a portable multimedia player (PMP), or a PlayStation Portable.
- PDA personal digital assistant
- PMP portable multimedia player
- PlayStation Portable PlayStation Portable
- PSP PlayStation Portable
- a wireless communication terminal Wireless Communication Terminal
- Smart Phone Smart Phone
- TV a set-top box
- Set-Top Box set-Top Box
- the terminal information corresponds to information regarding which of the above-described user terminals.
- FIG. 1 (b) is a schematic diagram illustrating a state in which an extract stream is delivered to user terminals through a network according to another embodiment of the present invention.
- the head end 130 encodes the entire bit stream in a structure having a plurality of tiles, and transmits information about the entire bit stream to the terminals 148 and 150 using the streaming server 136.
- the headend 130 receives image selection information from the terminals 148 and 150 and generates an extraction bit stream for a predetermined region or object corresponding to the image selection information among all the bit streams.
- the headend 130 may include a receiver 132, an encoder 134, and a streaming server 136.
- the receiver 132 performs the same operation as the receiver 112 shown in FIG.
- the encoder 134 encodes the entire bit stream and sets the size of the tile and the number of tiles in the picture at the time of encoding.
- the encoder 134 may preset the size of the tile and the number of tiles in the picture according to the object configuration information in the scene, the critical region in the image, the performance of the terminal, and the network environment obtained by analyzing the image. Accordingly, the encoder 134 may enable a portion of the entire bit stream to be reproduced in the user terminal by using location information about a predetermined region or object.
- the encoder 134 divides the tile resolution into 3840x2160 or less in the 7680x4320 support screen so that the stream can be smoothly watched on a TV that provides a 3840x2160 resolution.
- the encoder 134 may be divided into a tile resolution of 3840x2160 or less so that an area desired by a user may be extracted based on the middle of a screen having a high importance or an important person in a scene.
- the encoder 134 extracts one or more tiles and sets the tiles to be viewed according to the TV resolution, and encodes the tiles together with the tile information.
- the encoder 114 encodes the entire bit stream and grasps information about the entire bit stream.
- the streaming server 136 transmits the information about the entire bit stream to the terminals 148 and 150, receives the terminal information and the image selection information, and transmits the information about the preset area or the object corresponding to the image selection information among the entire bit streams. Create an extraction bit stream.
- the streaming server 136 may include a communication unit 138, a location tracker 140, an image extractor 142, and a stream transmitter 144.
- the communication unit 138 receives information about the entire bit stream and the entire bit stream encoded from the encoder 134, and transmits the information about the entire bit stream to the terminals 148 and 150. In addition, the communication unit 138 receives terminal information and image selection information from the terminals 148 and 150.
- the location tracking unit 140 determines a tile to be extracted by mapping the terminal information received from the communication unit 138, the image selection information, and the tile structure constituting the image.
- the location tracking unit 140 may determine the size of the tile that can be divided according to the terminal information including the maximum resolution and the numerical coordinates. That is, when the tile corresponding to the digitized coordinates is the same as the supported resolution of the terminal, one tile may be selected. If the corresponding tile is smaller than the supported resolution of the terminal, the desired selection position may be determined by selecting the tile together with the neighboring tiles.
- the location tracking unit 140 selects only the tiles and extracts the tile information to be recombined when the viewer selects a plurality of specific areas (players, actors, directors, etc.) at the same time in the entire video or in several channels (eg The tile ID) to the image extraction unit 142.
- the image extractor 142 receives the entire stream from the communication unit 138 and tile information to be extracted from the location tracker 140.
- the image extractor 142 changes the header according to the size of the extracted image without additional transcoding, and then transfers the extracted image to the stream transmitter 144. A detailed description thereof will be described with reference to FIG. 3.
- the stream transmitter 144 receives the image extracted by the image extractor 142 and delivers the image to the terminal.
- a streaming method may be divided into a push method in which a streaming server transmits a stream to a terminal and a pull method in which a terminal requests a stream from the streaming server and takes the stream.
- the push method is a method in which a server transmits a packet by using a real time protocol (RTP), a user datagram protocol (UDP), etc., and transmits a packet regardless of a terminal and a network environment in an existing broadcasting system.
- RTP real time protocol
- UDP user datagram protocol
- Pull methods that a terminal requests a constant bit stream to a server include HLS (HTTP Live Streaming), MPEG-DASH (Dynamic Adaptive Streaming over HTTP), MPEG MMT (MPEG Media Transport), etc. As a result, it is mainly used in internet broadcasting services requiring traffic control.
- the streaming server delivers media presentation description (MPD) information to the terminal, and the terminal requests the bit stream by viewing the media presentation description information.
- the media representation description information is information including information on a bit stream requested by the terminal to the streaming server 136. A detailed structure thereof will be described with reference to FIG.
- the image selection information may be defined using media expression description information.
- the existing media representation description information uses ID, URL information, etc. of each stream as an adaptation set 730 or a representation 740.
- the media expression description information may separately define an ID and a URL corresponding to the specific object or region.
- the location of the object in the image / scene is determined by the location tracker 140 using various tracking techniques.
- FIG. 1 (c) is a schematic diagram illustrating a state in which an extract stream is delivered to user terminals via a network according to another embodiment of the present invention.
- Headend 160 performs the same operation as headend 110 shown in FIG.
- the terminals 168 and 172 include the image extracting apparatus 118 shown in FIG.
- the terminals 168 and 172 receive information about the entire bit stream and the entire bit stream from the headend 160 and receive image selection information from the user by using the information about the entire bit stream.
- Each of the image extracting apparatuses 170 and 174 included in the terminals 168 and 172 generates an extraction bit stream for a predetermined region or object corresponding to the image selection information among the entire bit streams.
- the terminals 168 and 172 display the extracted image by using the extracted bit stream. Description of the image extraction apparatus 170, 174 will be described with reference to FIG.
- FIG. 3 is a block diagram illustrating a configuration of an image extraction apparatus or an image extraction unit according to an embodiment of the present invention.
- the image extracting apparatus 118, 170, 174 or the image extracting unit 142 may include a receiver 310, an image information analyzer 320, and an extracted bitstream generator. 330 may be implemented.
- the receiver 310 receives the entire bit stream, the terminal information, and the image selection information.
- the receiver 310 may receive the entire bit stream from the headends 110 and 160 together with information about the region of the muxed preset object.
- the first receiver 313 may receive image selection information from the terminals 120 and 122, the location tracker 140, or the user input unit 550 in the terminal, and the second receiver 316 may receive the headend 110, 160 or the communication unit 138 may receive information about the entire bit stream or the area of the preset object muxed therewith.
- the first receiver 313 may receive information about the entire bit stream or the region of the preset object muxed thereto, and the second receiver 316 may receive image selection information.
- the receiver 310 may receive tile information to be extracted from the location tracker 140 as image selection information.
- the image information analyzer 320 receives the entire bit stream from the receiver 310 and analyzes the image information including the image code and header information from the entire bit stream.
- the entire bit stream is an image encoded, and the unit picture of the entire bit stream may consist of one or more slices, and each slice may be generated in a structure having one or more tiles.
- the slice and tile structure is a rectangular structure including a plurality of coding tree blocks (CTBs), and a data structure for encoding and decoding H.265 High Efficiency Video Coding (HEVC). to be.
- Each tile structure is in the form of a matrix of CTBs.
- one tile structure may be in the form of a 3 ⁇ 3 matrix of CTBs, but is not limited thereto, and may be a CTB matrix having various sizes.
- the image code refers to a network abstract layer (NAL) having an actual video coding stream (VCL).
- NAL network abstract layer
- VCL video coding layer
- the header information includes, for example, the number of slices, the number of tiles per slice, the size of each tile, and the pixel of the picture. It includes a non video coding layer (NVCL) including information such as the number of samples.
- the extraction bit stream generator 330 receives image selection information from the receiver 310 and generates an extraction bit stream according to the image selection information. Alternatively, the extraction bit stream generator 330 may identify tile information corresponding to information about a region of a preset object received from the receiver 310 and generate an extraction bit stream according to the identified tile information.
- the extraction bit stream generation unit 330 is to extract the header information included in the entire bit stream received from the image information analysis unit 320 according to the image selection information or the information on the region of the preset object. Extraction header information is generated by modifying the bitstream of the region.
- the extraction bit stream generator generates an extraction bit stream including the modified extraction header information, the image selection information, or the image code corresponding to the information about the region of the preset object.
- the header of the generated extraction bit stream includes information indicating the total size of the extracted image and how many tiles are included in the extracted image.
- the header of the extracted bit stream includes information on the size of the tile to be extracted and information on which of the plurality of slices in the display picture is the first slice.
- the header of the extracted bit stream may include information about the total number of tiles present in the extracted image, information about the size of the entire tile, and which of the plurality of slices in the display picture. Contains information about whether this is the first slice.
- FIG. 4 is a schematic diagram illustrating a structure of a NAL unit according to an embodiment of the present invention.
- the NAL unit includes a NAL header and a Raw Bytes Sequence Payload (RBSP).
- RBSP Raw Bytes Sequence Payload
- Non-VCL NAL unit is NAL (VPS) which means Video Parameter Set (VPS) NAL, NAL (SPS) which means Sequence Parameter Set (SPS) NAL, NAL (PPS) which means Picture Parameter Set (PPS) NAL And NAL (SEI), which stands for Supplemental Enhancement Information (SEI) NAL.
- VPS Video Parameter Set
- SPS Sequence Parameter Set
- PPS Picture Parameter Set
- SEI Supplemental Enhancement Information
- SEI Supplemental Enhancement Information
- SEI Supplemental Enhancement Information
- the extraction bit stream generation unit 330 modifies the information of the SPS and PPS of the NAL header, etc. and converts it into a tile structure, thereby extracting the extracted bit stream of the image.
- the VCL NAL unit may include a plurality of frames such as a first frame (Frame 1), a second frame (Frame 2), and the like. Each frame contains three consecutive NALs (VCLs).
- Tiles_enabled_flag which is information set in the PPS, is information indicating whether a tile structure exists in a picture.
- the size of each tile in the extracted bit stream is set by num_tile_columns_minus1, num_tile_rows_minus1, and uniform_spacing_flag.
- num_tile_columns_minus1 indicates the number of tiles in the extraction bit stream
- num_tile_rows_minus1 indicates the number of tiles in the extraction bit stream.
- the uniform_spacing_flag is information indicating whether the tiles have the same size.
- each size of the horizontal tile is set by column_width_minus1 [i]
- each size of the vertical tile is set by row_height_minus1 [i].
- loop_filter_across_tiles_enabled_flag 0
- the header information of the entire bit stream includes a padding portion in which the motion vector exceeds the image range in the extracted bit stream when the motion vector coding mode such as merge or merge skip is performed in the prediction unit.
- Information indicating that it cannot be referenced is included. Therefore, when the motion vector is calculated in a mode such as merge or merge skip, the motion information is prevented from being referred beyond the tile boundary to determine the motion vector candidate.
- the header information of the entire bit stream includes information indicating that the range of the motion estimation cannot exceed the padding portion in estimating the motion of the prediction unit.
- the header information of the entire bit stream includes a motion vector (Temporal motion vector) of another picture existing at the same position as the block of the prediction unit to be encoded. Information indicating that it cannot be referenced is included.
- Temporal motion vector Temporal motion vector
- the extraction bit stream generator 330 When the extraction bit stream generator 330 generates SPS, PPS, slice header information, etc. corresponding to the extraction bit stream, the following information is modified differently from the header information of the entire bit stream.
- the header information of the extracted bit stream is modified as follows.
- the pic_width_in_luma_samples and pic_height_in_luma_samples of the SPS are changed to the size of the single tile screen to be extracted and set to the horizontal size and the vertical size of the extracted image.
- tiles_enabled_flag indicating information on whether a tile structure exists in a picture is modified to 0 to indicate that there is no tile structure in the picture.
- first_slice_segment_in_pic_flag is set to 1
- first_slice_segment_in_pic_flag is set to 0.
- num_entry_point_offsets which means an offset of a tile in a slice, is set to 0 in all slice headers.
- the header information of the extracted bit stream is modified as follows.
- the pic_width_in_luma_samples and pic_height_in_luma_samples of the SPS are changed to the size of the entire tile screen to be extracted and set to the horizontal size and the vertical size of the extracted image.
- num_tile_columns_minus1 and num_tile_rows_minus1 are changed to match the number of vertical and transverse tiles in the extracted bit stream from the number of vertical and transverse tiles in the existing whole bit stream.
- first_slice_segment_in_pic_flag indicating whether only the first slice header is the first slice in the picture is included.
- first_slice_segment_in_pic_flag is set to 1 and first_slice_segment_in_pic_flag is set to 0 for the first slice in the extracted whole picture on the extraction bit stream.
- num_entry_point_offsets which means an offset of a tile in a slice, is set to zero.
- FIG. 5 (a) is a block diagram showing the configuration of a terminal according to an embodiment of the present invention.
- terminals 120 and 122 may be implemented to include a communication unit 510, a decoder 512, a display unit 514, and a user input unit 518. Can be.
- the communication unit 510 receives information about the entire bit stream from the image extraction apparatus.
- the display unit 514 displays information about the entire bit stream.
- the information about the entire bit stream may be a thumbnail image or video of the entire bit stream, may be some images or videos of the entire bit stream, and may be text representing the entire bit stream.
- the user input unit 518 receives an object or region to be selected for information about the entire bit stream displayed by the display unit from the user.
- the user input unit 518 receives a position of one or more specific objects for which the movement is to be tracked or one or more regions to be viewed from the user.
- the position tracking unit 545 digitizes the position information of one or more specific objects for which the movement is to be tracked or one or more region information to be watched by coordinates in the stream.
- the location tracking unit 520 tracks tile information corresponding to the location or area of the object according to the numerical information.
- the image selection information digitized by the position tracking unit 520 is transmitted to the communication unit.
- the user input unit 518 may be a predetermined selection device.
- the communication unit 510 receives image selection information from the user input unit 518 and transmits the image selection information to the image extraction apparatus. In addition, the communication unit 510 also transmits terminal information to the image extraction apparatus 118.
- the communication unit 510 receives the extraction bit stream from the image extraction apparatus 118, and the decoder 512 decodes the extraction bit stream received by the communication unit 510.
- the display unit 514 displays the decoded extracted bit stream.
- the renderer 516 included in the display unit 514 adjusts the size of some or all of the tiles included in the extracted bit stream according to the display information.
- the display information corresponds to information for making some tiles of the extracted bit stream larger and tiles of the remaining extracted bit stream small when the extracted bit stream includes a plurality of tiles.
- the renderer 516 may adjust the size of each tile of the extracted bit stream according to the display information.
- the display unit 514 displays the extracted bit stream scaled by the renderer 516.
- FIG. 5 (b) is a block diagram showing the configuration of a terminal according to another embodiment of the present invention.
- terminals 148 and 150 may be implemented to include a communication unit 530, a decoder 532, a display unit 534, and a user input unit 538. Can be.
- the communication unit 530 receives information about the entire bit stream from the streaming server 136.
- the display unit 514 displays information about the entire bit stream.
- the information about the entire bit stream may be a thumbnail image or video of the entire bit stream, may be some images or videos of the entire bit stream, and may be text representing the entire bit stream.
- the user input unit 518 receives an object or region to be selected for information about the entire bit stream displayed by the display unit from the user.
- the user input unit 518 may be selected for the location of one or more specific objects for which the movement is to be tracked or for one or more areas to be viewed. Unlike the user input unit 518 illustrated in FIG. 5A, the user input unit 518 only receives an object or region because the location tracking unit does not exist.
- the user input unit 538 creates the media expression description information of the object or region selected by the user.
- the communication unit 530 receives the media expression description information as the image selection information from the user input unit 538 and transmits it to the streaming server 136. In addition, the communication unit 530 also transmits the terminal information to the streaming server 136.
- the communication unit 530 accesses the buffer 168 of the streaming server 136 and obtains the extraction bit stream by requesting the stored extraction bit stream (Pull method).
- the decoder 532 decodes the obtained extraction bit stream, and the display unit 534 displays the decoded extraction bit stream.
- the renderer 536 included in the display unit adjusts the size of some or all of the tiles included in the extracted bit stream according to the display information.
- FIG. 5 (c) is a block diagram showing the configuration of a terminal according to another embodiment of the present invention.
- FIG. 5C illustrates a terminal in which the image extractors 170 and 174 are included as some devices in the terminal.
- the terminals 168 and 172 may include a communication unit 540, a decoder 542, a display unit 544, a user input unit 548, and an image extracting device ( 170, 174).
- the communication unit 540 receives information about the entire bit stream and the entire bit stream from the headend 160.
- the display unit 544 displays information about the entire bit stream.
- the information about the entire bit stream may be a thumbnail image or video of the entire bit stream, may be some images or videos of the entire bit stream, and may be text representing the entire bit stream.
- the user input unit 548 receives an object or region to be selected by the user with respect to the decoded bit stream displayed by the display unit 544.
- the user input unit 548 receives a location of one or more specific objects for which the movement is to be tracked or one or more areas to be viewed from the user.
- the position tracking unit 550 digitizes the position information of one or more specific objects for which the movement is to be tracked or the one or more region information to be viewed by coordinates in the stream.
- the location tracking unit 550 tracks tile information corresponding to the location or area of the object according to the numerical information.
- the image selection information digitized by the position tracking unit 550 is transferred to the image extracting apparatuses 170 and 174.
- the user input unit 518 may be a predetermined selection device.
- the image extractors 170 and 174 generate the extracted bit stream by receiving the image selection information from the user input unit 548 and the entire bit stream from the communication unit 540. Since a description thereof has been described with reference to FIG. 3, a detailed description thereof will be omitted.
- the decoder 542 decodes the obtained extraction bit stream, and the display unit 544 displays the decoded extraction bit stream.
- the renderer 546 included in the display adjusts the size of some or all of the tiles included in the extracted bit stream according to the display information received from the image extractors 170 and 174.
- FIG. 6 is a flowchart illustrating a method of extracting an image according to an embodiment of the present invention.
- the video selection information is received from the entire encoded bit stream and the terminal (S610).
- the image code and header information are analyzed from the entire encoded bit stream (S620).
- Extraction header information is generated by modifying the encoded header information of the entire bit stream to correspond to the bit stream of the region to be extracted according to the image selection information (S630).
- An extraction bit stream including the generated header information and the image code corresponding to the image selection information is generated (S640).
- FIG. 6 processes S610 to S640 are described as being sequentially executed, but this is merely illustrative of the technical idea of the exemplary embodiment of the present invention.
- a person of ordinary skill in the art to which an embodiment of the present invention belongs may execute the process described in FIG. 6 by changing the order described in FIG. 6 without departing from the essential characteristics of the embodiment of the present invention. Since the above processes may be variously modified and modified to be executed in parallel, FIG. 6 is not limited to the time series order.
- the processes shown in FIG. 6 may be implemented as computer readable codes on a computer readable recording medium.
- the computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. That is, the computer-readable recording medium may be a magnetic storage medium (for example, ROM, floppy disk, hard disk, etc.), an optical reading medium (for example, CD-ROM, DVD, etc.) and a carrier wave (for example, the Internet Storage medium).
- the computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
- FIG. 7 is a diagram illustrating a structure of media expression description information according to another embodiment of the present invention.
- Period 710 means a period for which media information is maintained.
- BaseURL 720 means a common URL of the stream to request.
- the adaptation set 730 is a set of variously encoded resources selected by the terminal. There must be at least one adaptation set 730 in period 710.
- Representation 740 represents an encoded version of one or more media streams.
- the Representation 740 is composed of one or more segments, and includes a SegmentBase 750, a SegmentList 770, a SegmentURL 780, and the like of each Segment constituting the Representation.
- the terminal may make a request to the streaming server using the adaptation set 730 or the representation 740 of the media expression description information.
- the terminal may request the streaming server 136 using the SegmentURL 780 in the media expression description information.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
다중 영상에서의 영상 추출 장치 및 방법을 개시한다. 본 실시예의 일 측면에 의하면, 사용자가 보유한 디바이스의 스크린 보다 큰 사이즈의 영상을 서비스 사업자가 별도의 변환 과정 없이 전달하는 경우, 기 정의된 영역의 영상을 사용자 디바이스에서 실시간으로 추출하여 디바이스의 디스플레이 화면에 맞게 디스플레이하거나, 기 정의된 영역의 영상을 해당 영상을 요청한 단말의 성능에 맞게 네트워크 게이트웨이 혹은 스트리밍 서버에서 실시간으로 추출하여 전달하거나, 사용자 단말을 통해 사용자가 네비게이션하여 선택한 위치를 전달받아 해당 영역의 영상을 추출하여 특정 위치의 확대 등 사용자의 시점을 다각도로 제공할 수 있는 영상 선택/추출 장치, 서비스 및 그 방법을 제공하는 데 일 목적이 있다.
Description
본 실시예는 고 해상도 영상에서 일부 영상을 추출할 수 있는 방법 및 장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
최근 UHD(Ultra High Definition) 컨텐츠의 수량이 점점 증가하고 있다. 또한 영상 컨텐츠의 해상도가 커짐에 따라 다양한 웨어러블 기기들을 이용하여 UHD 360 파노라마 등 원하는 영상의 일부를 확대하거나 전체를 볼 수 있도록 하는 다양한 시도가 이루어지고 있다.
이러한 UHD 서비스 확대에 따라 초고화질 서비스의 제공을 위한 TV 등의 디스플레이 장치의 해상도는 점점 커지고 있으나, 모바일 단말은 QHD(Quad High Definition)의 해상도를 지원하는 단말 정도가 출시되고 있다. 모바일 단말에서도 UHD 컨텐츠를 지원할 수 있으나, Full HD 이상의 해상도를 갖는 컨텐츠는 모바일 단말에서 차별적인 화질의 차이를 보이지 않는다. 또한, 모바일 단말은 스크린 크기에 제한이 있기 때문에, 큰 해상도의 영상을 재생함에 있어 단말의 버퍼 사이즈 제한, 다운 샘플링에 따른 화질 저하 등의 제약이 존재한다.
일정한 해상도의 컨텐츠는 일반적으로 실시간 트랜스코더를 이용하여 비트율 혹은 해상도의 크기를 줄여 모바일 단말로 제공된다. 그러나 원본 영상의 해상도가 클수록 비트율만 줄이기에는 한계가 있어, 전송 전 해상도 조정을 위한 영상 편집이 필요하다.
컨텐츠의 해상도가 커짐에 따라 컨텐츠를 그대로 재생할 수 없는 기존 legacy 단말(TV, 스마트폰, 패드, 모니터 등)들도 마찬가지로 트랜스코더를 이용하여 원본을 미리 편집한 컨텐츠를 제공받아야 한다.
전술한 경우, 제공받은 영상을 디코딩하고 편집하여 재 인코딩해야하는 트랜스코딩 절차가 발생한다. 트랜스코딩 절차에 의해 품질 저하 및 지연(Delay) 등의 문제가 생겨 컨텐츠의 제공이 제한적일 수 있으며, 영상의 재가공에 따른 비용이 증가할 수 있다.
또한, 헤드엔드(Headend)가 영상 재가공을 수행할 경우, 해상도가 커진 만큼 특정 부분의 재생에 대한 사용자 선택 권한도 제한된다. 따라서 원하는 영상을 선택하여 볼 수 있는 초고화질의 특징이 활용되기 어렵다는 단점이 있다.
본 실시예는, 사용자가 보유한 디바이스의 스크린 보다 큰 사이즈의 영상을 서비스 사업자가 별도의 변환 과정 없이 전달하는 경우, 기 정의된 영역의 영상을 사용자 디바이스에서 실시간으로 추출하여 디바이스의 디스플레이 화면에 맞게 디스플레이하거나, 기 정의된 영역의 영상을 해당 영상을 요청한 단말의 성능에 맞게 네트워크 게이트웨이 혹은 스트리밍 서버에서 실시간으로 추출하여 전달하거나, 사용자 단말을 통해 사용자가 네비게이션하여 선택한 위치를 전달받아 해당 영역의 영상을 추출하여 특정 위치의 확대 등 사용자의 시점을 다각도로 제공할 수 있는 영상 선택/추출 장치, 서비스 및 그 방법을 제공하는 데 일 목적이 있다.
본 실시예의 일 측면에 의하면, 하나 이상의 타일로 구성됨을 지시하는 정보가 헤더 정보에 포함된 전체 비트 스트림을 수신하는 제1 수신부와 사용자의 요청, 네트워크의 환경 또는 단말의 성능에 따른 영상 선택정보를 수신하는 제2 수신부와 상기 제1 수신부가 수신한 전체 비트 스트림으로부터 영상 코드 및 헤더 정보를 분석하는 영상정보 분석부 및 상기 전체 비트 스트림의 헤더 정보를 상기 제2 수신부가 수신한 영상 선택정보에 따라 수정하여 신규 헤더 정보를 생성하며, 상기 신규 헤더 정보와 상기 영상 선택정보에 대응하는 영상 코드를 포함하는 추출 비트 스트림을 생성하는 추출 비트스트림 생성부를 포함하는 것을 특징으로 하는 영상 추출장치를 제공한다.
본 실시예의 다른 측면에 의하면, 하나 이상의 타일로 구성됨을 지시하는 정보가 헤더 정보에 포함된 전체 비트 스트림 및 영상 선택정보를 수신하는 과정과 상기 전체 비트 스트림으로부터 영상 코드 및 헤더 정보를 분석하는 과정과 상기 전체 비트 스트림의 헤더 정보를 상기 영상 선택정보에 따라 수정하여 신규 헤더정보를 생성하는 과정 및 상기 신규 헤더정보와 상기 영상 선택정보에 대응하는 영상코드를 포함하는 추출 비트 스트림을 생성하는 과정을 포함하는 것을 특징으로 하는 영상 추출방법을 제공한다.
본 실시예의 다른 측면에 의하면, 영상을 포함하는 컨텐츠를 수신하는 수신부 및 상기 컨텐츠에 포함된 영상을 분석하여, 상기 영상의 구성, 상기 영상의 크기 또는 상기 영상을 수신할 단말에 따라 하나 이상의 타일로 구성되도록 상기 타일의 사이즈 또는 픽처 내의 타일의 개수를 설정하여 인코딩(Encoding)하는 부호화부를 포함하는 것을 특징으로 하는 비트 스트림 생성장치를 제공한다.
또한, 본 실시예의 다른 측면에 의하면, 하나 이상의 타일로 구성됨을 지시하는 정보가 헤더 정보에 포함된 전체 비트 스트림 및 상기 전체 비트 스트림에 관한 정보 중 적어도 하나를 수신하는 통신부와 상기 전체 비트 스트림에 관한 정보를 디스플레이하는 디스플레이부와 상기 디스플레이부가 디스플레이하는 전체 비트 스트림에 관한 정보 내에서 사용자가 선택하고자 하는 객체 또는 영역에 관한 정보인 영상 선택정보를 생성하는 사용자 입력부와 상기 전체 비트 스트림의 영상 코드 및 헤더 정보를 분석하여 상기 전체 비트 스트림의 헤더 정보를 상기 영상 선택정보에 따라 수정하여 신규 헤더 정보를 생성하며, 상기 신규 헤더 정보와 상기 영상 선택정보에 대응하는 타일의 영상 정보를 포함하는 추출 비트 스트림을 생성하는 영상 추출부 및 상기 추출 비트 스트림을 복호화(Decoding)하는 디코더를 포함하는 것을 특징으로 하는 영상추출 단말장치를 제공한다.
이상에서 설명한 바와 같이 본 실시예의 일 측면에 따르면, UHD 이상의 초 고화질 컨텐츠에서 사용자가 영상 내 시청을 원하는 부분을 네비게이션하여 선택하면 선택한 부분을 추출함으로써, 단말에서 추출된 영상을 확대하여 디스플레이할 수 있는 효과가 있다.
또한, 본 실시예의 일 측면에 따르면, UHD 이상의 컨텐츠에서 영상 내에서 사용자가 원하는 특정 부분을 추출하거나 네트워크 환경, 단말의 성능 등에 따라 영상의 트래픽을 제어함에 있어, 별도의 트랜스코딩 없이 헤더를 수정하여 영상의 일부를 추출하기 때문에, 트랜스코딩하는데 걸리는 시간에 의한 지연 및 영상품질의 저하 문제를 해결할 수 있으며, 댁 내에서 영상 내 일부를 선택하여 추출할 수 있으므로 사용자 선호도를 즉각적으로 반영할 수 있는 효과가 있다.
도 1(a)는 본 발명의 일 실시예에 따른 영상 추출장치가 네트워크를 통해 사용자 단말기들과 연결된 상태를 나타낸 개략도이다.
도 1(b)는 본 발명의 다른 일 실시예에 따른 추출 스트림이 네트워크를 통해 사용자 단말기들에 전달되는 상태를 나타낸 개략도이다.
도 1(c)는 본 발명의 또 다른 일 실시예에 따른 추출 스트림이 네트워크를 통해 사용자 단말기들에 전달되는 상태를 나타낸 개략도이다.
도 2는 3행 3열의 타일 구조로 분할된 디스플레이 영상의 개략도이다.
도 3은 본 발명의 일 실시예에 따른 영상 추출장치 또는 영상 추출부의 구성을 도시한 블럭도이다.
도 4는 본 발명의 일 실시예에 따른 NAL 유닛의 구조를 나타낸 개략도이다.
도 5(a)는 본 발명의 일 실시예에 따른 단말의 구성을 도시한 블럭도이다.
도 5(b)는 본 발명의 다른 일 실시예에 따른 단말의 구성을 도시한 블럭도이다.
도 5(c)는 본 발명의 또 다른 일 실시예에 따른 단말의 구성을 도시한 블럭도이다.
도 6은 본 발명의 일 실시예에 따른 영상의 추출방법을 나타낸 순서도이다.
도 7은 본 발명의 다른 일 실시예에 따른 미디어 표현 서술 정보의 구조를 도시한 도면이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 '포함', '구비'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 '…부', '모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 1(a)는 본 발명의 일 실시예에 따른 영상 추출장치가 네트워크를 통해 사용자 단말기들과 연결된 상태를 나타낸 개략도이다.
헤드엔드(Headend, 110)는 카메라, 실시간 채널 혹은 스토리지(Storage)에 저장된 컨텐츠를 복수의 타일을 갖는 구조로 부호화(Encoding)하고, 부호화된 전체 스트림을 네트워크(116)를 이용해 영상 추출장치(118)로 전송한다. 헤드엔드(110)는 수신부(112) 및 부호화부(114)를 포함하여 구성될 수 있다.
헤드엔드의 수신부(112)는 카메라, 실시간 채널, 스토리지에 저장된 컨텐츠를 수신하여 부호화부에 전달한다.
헤드엔드의 부호화부(114)는 전체 비트 스트림을 인코딩하며, 인코딩 시 타일의 사이즈와 픽처 내의 타일의 개수를 설정한다. 이때, 부호화부(114)는 영상/장면 구성, 영상 크기, 서비스될 단말 등에 따라 픽처 내의 타일의 개수, 크기 및 위치 등을 적절히 설정할 수 있다. 예를 들어, 전체 스트림이 7680x4320 해상도를 갖는 경우, 부호화부(114)는 3840x2160의 해상도를 제공하는 TV에서도 원활히 시청할 수 있도록 7680x4320 지원 화면 내에서 3840x2160의 해상도로 시청이 가능한 타일 영역을 추출한다. 부호화부(114)는 타일영역을 추출한 후, 추출된 영역만 재생할 수 있도록 인코딩 시 미리 타일을 3840x2160으로 설정하거나 그보다 작은 크기의 여러 타일을 설정하여 인코딩할 수 있다.
이에 따라, 부호화부(114)에 의해 부호화된 전체 비트 스트림의 헤더 정보에는 하나의 디스플레이 픽처당 복수의 타일 구조로 구성됨을 지시하는 정보가 포함된다. 또한, 헤더 정보에는 픽처 내 타일 구조가 쓰였음을 의미하는 플래그 정보와 타일의 가로 개수 및 세로 개수에 대한 정보가 포함된다.
도 2는 3행 3열의 타일 구조로 분할된 디스플레이 영상의 개략도이다.
전술한 바와 같이, 헤드엔드의 부호화부(114)는 하나의 전체 비트 스트림에 대해 영상/장면 구성, 영상 크기, 서비스될 단말 등에 따라 타일의 개수 또는 타일의 사이즈를 설정한다.
도 2의 경우와 같이 하나의 디스플레이 화면은 가로로 3개, 세로로 3개의 타일로 설정될 수 있으며, 각 타일에서는 부호화 단위인 CTB(Coding Tree Block)의 개수가 결정된다.
도 2를 참조하면, 어느 하나의 타일의 폭 방향의 샘플 개수는 그에 세로로 인접하는 타일의 폭 방향의 샘플 개수와 같다. 또한, 어느 하나의 타일의 높이 방향의 샘플 개수는 그에 가로로 인접하는 타일의 높이 방향의 샘플 개수와 같다.
예컨대, 타일 210, 240, 270의 가로 방향의 샘플 개수는 같도록 설정된다. 또한, 타일 210, 220, 230에서 세로 방향의 샘플 개수는 같도록 설정된다. 이와 같이 설정됨으로써 H.265 HEVC(High Efficiency Video Coding)의 타일 구조를 적용할 수 있다.
부호화부(114)는 전체 비트 스트림을 인코딩하며, 전체 비트 스트림에 관한 정보를 파악한다. 전체 비트 스트림에 관한 정보는 전체 비트 스트림을 표현할 수 있는 정보를 의미하는 것으로서, 전체 비트 스트림의 썸네일(Thumbnail) 이미지, 썸네일 비디오, 전체 비트 스트림 중 일부 이미지, 전체 비트 스트림 중 일부 영상 및 전체 비트 스트림의 장면 또는 등장하는 객체 등을 나타내는 텍스트도 포함하는 개념이다.
또한, 헤드엔드의 부호화부(114)는 기 설정된 객체가 위치하는 영역에 대한 타일 위치 정보를 인코딩된 스트림에 부가정보로 전달할 수 있다. 이에 따라, 단말(120, 122)이 영상 내에서 움직임이 존재하는 기 설정된 객체의 움직임을 트래킹(Tracking)하여 기 설정된 객체를 선택해 시청할 수 있도록 한다. 기 설정된 객체는, 예를 들어, 스포츠 경기에 관한 영상에서 특정 선수, 감독, 치어리더 등으로 설정될 수 있다. 부호화부(114)는 영상 내에서 기 설정된 객체가 위치하는 영역을 파악하고, 영상 내에서 기 설정된 객체가 잘 추출될 수 있도록 객체의 크기에 맞추거나 객체의 모양을 유지하여 잘 추출할 수 있도록 타일을 작게 설정하는 등 다양한 크기의 타일을 설정할 수 있다. 부호화부(114)는 추출할 영역의 타일 위치 정보를 영상 추출장치(118)로 전체 비디오 스트림과 먹싱(Muxing)하여 함께 전송할 수 있다. 이때, 기 설정된 객체가 위치하는 영역은 단말의 해상도에 따라 해당 영역이 추출될 수 있도록 해상도별로 타일의 크기, 개수 등이 기 설정되어 있을 수 있다. 예를 들어, 헤드엔드에서 인코딩되어 영상 추출장치로 전달될 스트림이 3840x2160의 해상도를 갖는 반면, 단말은 1920x1080의 해상도를 제공하는 경우, 부호화부(114)는 3840x2160의 해상도를 갖는 스트림과 함께 1920x1080 또는 그 이하의 크기로 설정된 타일 크기, 개수정보를 부가정보로 함께 전달할 수 있다.
영상 추출장치(118)는 헤드엔드(110)로부터 네트워크(116)를 이용하여 전체 비트 스트림과 전체 비트 스트림에 관한 정보를 수신하며, 단말(120, 122)로 전체 비트 스트림에 관한 정보를 전송한다. 영상 추출장치(118)는 댁내 홈게이트웨이 내 일부 기능으로 포함될 수 있다. 영상 추출장치(118)는 단말(120, 122)로부터 단말정보 및 영상 선택정보를 수신한다. 영상 선택정보란 영상 내에서 확대를 원하는 영역 또는 움직임의 트래킹을 원하는 특정 객체의 위치에 관한 정보를 의미한다. 영상 선택정보는 터치 스크린, 리모컨, 마우스, 키보드 등의 소정의 선택장치에 의한 입력으로부터 획득하거나, 사용자의 시선이 향하는 위치를 파악함으로써 사용자의 관심 영역(Region og Interest, ROI)이 어디인지 여부를 파악할 수 있는 아이 트래킹 장치(Eye Tracking Device) 등을 이용하여 획득할 수 있다. 예를 들어, 객체 위치에 관한 정보는 영상의 좌표 위치나 UI를 통해 미리 정의된 객체 ID 등이 될 수 있다. 영상 추출장치(118)는 최대 해상도 등을 포함하는 단말 정보와 지정된 좌표를 이용하여 분할 가능한 타일의 크기를 결정할 수 있다. 즉, 지정된 좌표에 해당되는 타일이 단말의 지원 해상도와 동일한 경우, 영상 추출장치(118)는 해당 타일 한 개를 선택할 수 있다. 해당 타일이 작게 설정이 되어 단말 내에 여러 개의 타일 선택이 가능한 경우, 영상 추출장치(118)는 해당 타일 및 그 주변의 타일을 같이 선택하여 원하는 선택 위치를 결정할 수 있다. 영상 추출장치(118)는 시청자가 전체 영상 혹은 여러 채널에서 특정 영역(선수, 배우, 감독 등)을 동시에 여러 개 선택하는 경우, 해당 타일만을 선정하여 추출 후 재조합도 가능하다. 영상 추출장치(118)는 영상 선택정보를 이용하여 전체 비트 스트림 중 영상 선택정보에 대응되는 영상 타일 부분을 추출한다. 영상 추출장치(118)는 별도의 트랜스 코딩 없이 추출된 영상의 크기에 맞춰 헤더를 변경한 후, 추출한 영상을 단말(120, 122)로 전송한다. 이에 대한 상세한 설명은 도 3을 참조하여 설명하기로 한다.
단말(120, 122)은 영상 추출장치(118)로부터 전체 비트 스트림에 관한 정보를 수신하며, 단말정보 및 영상 선택정보를 영상 추출장치(120)로 전송한다. 단말(120, 122)은 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 테블릿, 개인 휴대 단말기(PDA: Personal Digital Assistant), 게임 콘솔, 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블 (PSP: PlayStation Portable), 무선통신 단말기(Wireless Communication Terminal), 스마트폰(Smart Phone), TV, 셋탑박스(Set-Top Box), 미디어 플레이어 등과 같은 사용자 단말기일 수 있다. 단말정보는 단말이 전술한 사용자 단말기 중 어떤 단말기인지에 관한 정보에 해당한다.
도 1(b)는 본 발명의 다른 일 실시예에 따른 추출 스트림이 네트워크를 통해 사용자 단말기들에 전달되는 상태를 나타낸 개략도이다.
헤드엔드(130)는 복수의 타일을 갖는 구조로 전체 비트 스트림을 부호화(Encoding)하고, 스트리밍 서버(136)를 이용해 전체 비트 스트림에 관한 정보를 단말(148, 150)로 전송한다. 또한, 헤드엔드(130)는 단말(148, 150)로부터 영상 선택정보를 수신하고, 전체 비트 스트림 중 영상 선택정보에 대응되는 기 설정된 영역 또는 객체에 대한 추출 비트 스트림을 생성한다. 헤드엔드(130)는 수신부(132), 부호화부(134) 및 스트리밍 서버(136)를 포함하여 구성될 수 있다.
수신부(132)는 도 1(a)에 도시된 수신부(112)와 동일한 동작을 한다.
부호화부(134)는 전체 비트 스트림을 인코딩하며, 인코딩 시 타일의 사이즈와 픽처 내의 타일의 개수를 설정한다. 이때, 부호화부(134)는 영상을 분석하여 확보된 장면 내 객체 구성 정보, 영상 내 중요 영역, 단말의 성능 및 네트워크 환경에 따라 타일의 사이즈와 픽처 내의 타일의 개수 등을 미리 설정할 수 있다. 이에 따라, 부호화부(134)는 기 설정된 영역 또는 객체에 대한 위치 정보를 이용하여 전체 비트 스트림 중 일부분이 사용자 단말에서 재생될 수 있도록 할 수 있다. 예를 들어, 전체 스트림이 7680x4320 해상도를 갖는 경우, 부호화부(134)는 3840x2160의 해상도를 제공하는 TV에서도 원활히 시청할 수 있도록 7680x4320 지원 화면 내에서 3840x2160 이하의 타일 해상도로 나눈다. 특히, 부호화부(134)는 7680x4320 지원 화면 내에서 중요도가 높은 화면 한가운데 또는 장면 내 중요 인물 등을 중심으로 사용자가 원하는 영역이 추출될 수 있도록 3840x2160 이하의 타일 해상도로 나눌 수 있다. 이후, 부호화부(134)는 하나 이상의 타일을 추출하여 해당 TV 해상도에 맞게 시청할 수 있도록 타일을 설정하여 타일 정보와 함께 인코딩한다. 또한, 부호화부(114)는 전체 비트 스트림을 인코딩하며, 전체 비트 스트림에 관한 정보를 파악한다.
스트리밍 서버(136)는 전체 비트 스트림에 관한 정보를 단말(148, 150)로 전송하고, 단말정보와 영상 선택정보를 수신하며, 전체 비트 스트림 중 영상 선택정보에 대응되는 기 설정된 영역 또는 객체에 대한 추출 비트 스트림을 생성한다. 스트리밍 서버(136)는 통신부(138), 위치 추적부(140), 영상 추출부(142) 및 스트림 송신부(144)를 포함하여 구성될 수 있다.
통신부(138)는 부호화부(134)로부터 부호화된 전체 비트 스트림과 전체 비트 스트림에 관한 정보를 수신하며, 단말(148, 150)로 전체 비트 스트림에 관한 정보를 전송한다. 또한, 통신부(138)는 단말(148, 150)로부터 단말정보와 영상 선택정보를 수신한다.
위치 추적부(140)는 통신부(138)가 수신한 단말정보, 영상 선택정보와 영상을 구성하는 타일 구조를 매핑하여 추출할 타일을 결정한다. 위치 추적부(140)는 최대 해상도 등을 포함하는 단말 정보와 수치화한 좌표에 따라 분할 가능한 타일의 크기를 결정할 수 있다. 즉, 수치화한 좌표에 해당되는 타일이 단말의 지원 해상도와 동일한 경우, 해당 타일 한 개를 선택할 수 있다. 해당 타일이 단말의 지원 해상도보다 작은 경우, 해당 타일 및 그 주변의 타일을 같이 선택하여 원하는 선택 위치를 결정할 수 있다. 위치 추적부(140)는 시청자가 전체 영상 혹은 여러 채널에서 특정 영역(선수, 배우, 감독 등)을 동시에 여러 개 선택하는 경우 해당 타일만을 선정하여 추출 후 재조합할 수 있도록 추출해야 할 타일 정보(예: 타일 ID)를 영상 추출부(142)에게 전달한다.
영상 추출부(142)는 통신부(138)로부터 전체 스트림, 위치 추적부(140)로부터 추출해야 할 타일 정보를 수신한다. 영상 추출부(142)는 별도의 트랜스 코딩 없이 추출된 영상의 크기에 맞춰 헤더를 변경한 후, 추출한 영상을 스트림 송신부(144)에 전달한다. 이에 대한 구체적인 설명은 도 3을 참조하여 설명하기로 한다.
스트림 송신부(144)는 영상 추출부(142)에 의해 추출된 영상을 전달받아 단말에게 전달한다. 스트림을 전송하는 방법으로는 크게 스트리밍 서버가 단말에게 스트림을 전송하는 Push 방식과 HTTP 등을 이용해 단말이 스트리밍 서버로부터 스트림을 요청하여 가져가는 Pull 방식으로 나눌 수 있다. Push 방식은 RTP(Real Time Protocol), UDP(User Datagram Protocol) 등을 이용해 서버가 패킷을 전송하는 방식으로, 기존 방송 시스템에서 단말, 네트워크 환경에 상관없이 패킷을 전송하는 방식이다. 단말이 서버로 일정한 비트 스트림을 요청하는 Pull 방식은 HLS(HTTP Live Streaming), MPEG-DASH(Dynamic Adaptive Streaming over HTTP), MPEG MMT(MPEG Media Transport) 등이 있으며, Mobile IPTV 등 네트워크, 단말의 환경에 따라 트래픽 컨트롤이 필요한 인터넷 방송 서비스에서 주로 사용되고 있다. Pull 방식으로 스트림을 전송함에 있어서, 스트리밍 서버는 미디어 표현 서술(MPD: Media Presentation Description) 정보를 단말로 전달하고, 단말은 미디어 표현 서술 정보를 보고 비트 스트림을 요청(GET)한다. 미디어 표현 서술 정보는 단말이 스트리밍 서버(136)로 요청하는 비트 스트림에 대한 정보를 포함하는 정보로서, 이에 대한 구체적인 구조는 도 7을 참조하여 설명하기로 한다.
Pull 방식으로 서비스하는 경우, 영상 선택정보는 미디어 표현 서술 정보를 이용하여 정의될 수 있다. 하나의 컨텐츠에 대해 다양한 비트레이트로 인코딩된 스트림을 서술하기 위해, 기존의 미디어 표현 서술 정보는 개별 스트림의 아이디, URL 정보 등을 Adaptation Set(730) 또는 Representation(740)으로 사용하였다. 동일한 방식으로 특정 객체 또는 영역을 표현하기 위해, 미디어 표현 서술 정보에는 특정 객체 또는 영역에 해당되는 아이디와 URL이 따로 정의될 수 있다. 영상/장면 내 객체의 위치는 다양한 트래킹 기술을 이용하여 위치 추적부(140)에서 결정되며, 영상 추출부(142)가 추출될 타일 정보에 따라 특정 객체 또는 영역을 추출하면 스트림 전송부(144)는 특정 객체 또는 영역으로 정의된 Adaptation Set 내 SegmentURL로 추출되어 새로 생성된 추출 스트림을 전송한다.
도 1(c)는 본 발명의 또 다른 일 실시예에 따른 추출 스트림이 네트워크를 통해 사용자 단말기들에 전달되는 상태를 나타낸 개략도이다.
헤드엔드(160)는 도 1(a)에 도시된 헤드엔드(110)와 동일한 동작을 한다.
단말(168, 172)은 도 1(a)에 도시된 영상 추출장치(118)를 단말 내부에 일부 장치로서 포함하고 있다. 단말(168, 172)은 헤드엔드(160)로부터 전체 비트 스트림 및 전체 비트 스트림에 관한 정보를 수신하며, 전체 비트 스트림에 관한 정보를 이용하여 사용자로부터 영상 선택정보를 수신한다. 단말(168, 172) 내 포함된 각각 영상 추출장치(170, 174)는 전체 비트 스트림 중 영상 선택정보에 대응되는 기 설정된 영역 또는 객체에 대한 추출 비트 스트림을 생성한다. 단말(168, 172)은 추출 비트 스트림을 이용하여 추출한 영상을 디스플레이한다. 영상 추출장치(170, 174)에 대한 설명은 도 3을 참조하여 설명하기로 한다.
도 3은 본 발명의 일 실시예에 따른 영상 추출장치 또는 영상 추출부의 구성을 도시한 블럭도이다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 영상 추출장치(118, 170, 174) 또는 영상 추출부(142)는 수신부(310), 영상정보 분석부(320) 및 추출 비트스트림 생성부(330)를 포함하여 구현될 수 있다.
수신부(310)는 전체 비트 스트림, 단말정보 및 영상 선택정보를 수신한다. 이때, 수신부(310)는 헤드엔드(110, 160)로부터 전체 비트 스트림과 먹싱된 기 설정된 객체의 영역에 관한 정보를 함께 수신할 수 있다. 제1 수신부(313)는 단말(120, 122), 위치 추적부(140) 또는 단말 내 사용자 입력부(550)로부터 영상 선택정보를 수신할 수 있으며, 제2 수신부(316)는 헤드엔드(110, 160) 또는 통신부(138)로부터 전체 비트 스트림 또는 그와 먹싱된 기 설정된 객체의 영역에 관한 정보를 수신할 수 있다. 또는, 이와 반대로 제1 수신부(313)는 전체 비트 스트림 또는 그와 먹싱된 기 설정된 객체의 영역에 관한 정보를 수신할 수 있으며, 제2 수신부(316)는 영상 선택정보를 수신할 수 있다. 수신부(310)는 위치 추적부(140)로부터 추출해야 할 타일 정보를 영상 선택정보로서 수신할 수 있다.
영상정보 분석부(320)는 수신부(310)로부터 전체 비트 스트림을 전달받아 전체 비트 스트림으로부터 영상 코드 및 헤더 정보를 포함하는 영상정보를 분석한다. 전체 비트 스트림은 영상을 부호화한 것으로서, 전체 비트 스트림의 단위 픽처는 하나 또는 그 이상의 슬라이스로 구성되며 각 슬라이스는 하나 또는 그 이상의 타일을 갖는 구조로 생성될 수 있다.
슬라이스 및 타일 구조는 복수 개의 코딩 블록(CTB: Coding Tree Block)을 포함하는 직사각형 형태의 구조이고, H.265 HEVC(High Efficiency Video Coding)의 인코딩(Encoding)과 디코딩(Decoding)을 하기 위한 데이터 구조이다. 각 타일 구조는 CTB의 행렬(Matrix) 형태이다. 예를 들어, 어느 한 타일 구조는 CTB의 3×3 행렬 형태일 수 있으며, 이에 한정되지 않고 다양한 크기의 CTB 행렬일 수 있음은 물론이다.
영상 코드는 실제 비디오 코딩 스트림(VCL: Video Coding Layer)을 가지는 NAL(Network Abstract Layer)을 의미하며, 헤더 정보는, 예컨대, 슬라이스의 개수, 슬라이스 당 타일의 개수, 타일 각각의 크기, 픽처의 화소샘플의 갯수 등의 정보를 포함하는 NVCL(Non Video Coding layer)을 포함한다.
추출 비트 스트림 생성부(330)는 수신부(310)로부터 영상 선택정보를 수신하여, 영상 선택정보에 따라 추출 비트 스트림을 생성한다. 또는 추출 비트 스트림 생성부(330)는 수신부(310)로부터 수신된 기 설정된 객체의 영역에 관한 정보에 대응되는 타일정보를 식별하고, 식별된 타일정보에 따라 추출 비트 스트림을 생성할 수 있다.
보다 상세히 살펴보면, 추출 비트 스트림 생성부(330)는 영상정보 분석부(320)로부터 수신한 전체 비트 스트림에 포함된 헤더 정보를 영상 선택정보 또는 기 설정된 객체의 영역에 관한 정보에 따라 추출하고자 하는 타일 영역의 비트 스트림에 대응되도록 수정하여 추출 헤더 정보를 생성한다.
추출 비트 스트림 생성부는 수정된 추출 헤더정보와 영상 선택정보 또는 기 설정된 객체의 영역에 관한 정보에 대응되는 영상코드를 포함하는 추출 비트 스트림을 생성한다.
여기서, 생성된 추출 비트 스트림의 헤더에는 추출된 영상의 전체 사이즈와 추출된 영상이 몇 개의 타일로 구성되고 있는지 여부를 지시하는 정보를 포함한다. 추출된 영상이 하나의 타일로 구성되는 경우, 추출 비트 스트림의 헤더는 추출될 타일의 크기에 관한 정보 및 디스플레이 픽처 내에서 복수의 슬라이스 중 어떤 것이 첫 번째 슬라이스인지 여부에 관한 정보를 포함한다. 추출된 영상이 복수의 타일로 구성되는 경우, 추출 비트 스트림의 헤더는 추출된 영상 내에 존재하는 전체 타일의 개수에 관한 정보, 전체 타일의 크기에 관한 정보 및 디스플레이 픽처 내에서 복수의 슬라이스 중 어떤 것이 첫 번째 슬라이스인지 여부에 관한 정보를 포함한다.
도 4는 본 발명의 일 실시예에 따른 NAL 유닛의 구조를 나타낸 개략도이다.
참고로, 도 4에서의 화살표는 참조 관계를 나타낸다. 도 4를 참조하면, NAL 유닛은 NAL 헤더(header)와 RBSP(Raw Bytes Sequence Payload)로 구성된다.
인코딩된 영상의 전체 비트 스트림은 NAL(Network Abstract Layer)의 단위인 NAL 유닛(unit)에 전달된다. NAL 유닛의 NAL 헤더는 Non-VCL(Non-Video Coding Unit) NAL 유닛 및 VCL NAL 유닛으로 구성된다. Non-VCL NAL 유닛은 VPS(Video parameter Set) NAL을 의미하는 NAL(VPS), SPS(Sequence Parameter Set) NAL을 의미하는 NAL(SPS), PPS(Picture Parameter Set) NAL을 의미하는 NAL(PPS), 및 SEI (Supplemental Enhancement Information) NAL을 의미하는 NAL(SEI)로 구성된다. 특히, SPS는 인코딩 툴(tool)의 온/오프(ON/OFF) 정보를 포함하고, PPS는 타일과 관련된 정보를 포함한다.
단말의 사양에 맞추어 추출된 비트 스트림에 해당하는 영상이 처리되도록 하기 위하여, 추출 비트 스트림 생성부(330)는 NAL 헤더의 SPS와 PPS의 정보 등을 수정하여 타일구조로 변환함으로써 영상의 추출 비트 스트림을 생성한다.
VCL NAL 유닛은 제1 프레임(Frame 1), 제2 프레임(Frame 2) 등의 복수의 프레임을 포함할 수 있다. 각 프레임은 3개의 연속적인 NAL(VCL)을 포함한다.
추출 비트 스트림에서 타일에 관한 정보는 PPS에 설정된다. 예컨대. PPS에 설정되는 정보인 tiles_enabled_flag는 타일 구조가 픽처 내에 존재하는지 여부를 나타내는 정보이다.
추출 비트 스트림에서 각 타일의 크기는 num_tile_columns_minus1, num_tile_rows_minus1, uniform_spacing_flag에 의해 설정된다.
num_tile_columns_minus1는 추출 비트 스트림에서 타일의 가로 개수를 나타내며, num_tile_rows_minus1는 추출 비트 스트림에서 타일의 세로 개수를 나타낸다. uniform_spacing_flag는 타일의 크기가 모두 동일한지 여부를 나타내는 정보이다.
num_tile_columns_minus1와 num_tile_rows_minus1 정보를 참조하여 타일의 사이즈가 모두 동일한지를 확인할 수 있다. 타일의 크기가 동일하지 않은 경우, 가로 타일의 각 사이즈는 column_width_minus1[i]에 의해 설정되고, 세로 타일의 각 사이즈는 row_height_minus1[i]에 의해 설정된다.
한편, 전체 비트 스트림에서 추출 비트 스트림이 생성되는 데 있어, 몇 가지 제약 조건이 있다.
전체 비트 스트림의 인코딩 시, 전체 비트 스트림의 헤더 정보에는 슬라이스의 경계를 가로질러 루프 필터링이 수행될 수 없음을 지시하는 정보(예컨대, loop_filter_across_tiles_enabled_flag=0)가 포함된다. 이러한 한정조건 하에서 인코딩된 전체 비트 스트림에서 추출 비트 스트림이 생성되는 경우, 루프 필터링이 발생하지 않으므로 타일 경계에서 화질의 열화가 방지된다.
전체 비트 스트림의 인코딩 시, 전체 비트 스트림의 헤더 정보에는 예측 단위에서 머지(Merge), 머지스킵(Mergeskip) 등의 움직임벡터 코딩 모드인 경우, 움직임벡터가 추출 비트 스트림에서 영상의 범위를 넘는 패딩 부분을 참조할 수 없음을 지시하는 정보가 포함된다. 따라서 머지(Merge) 또는 머지스킵(Mergeskip) 등의 모드로 움직임 벡터가 산출되는 경우, 움직임벡터 후보로 결정하기 위하여 타일 경계를 넘어서 움직임 정보가 참조되는 것이 방지된다.
전체 비트 스트림의 인코딩 시, 전체 비트 스트림의 헤더 정보에는 예측 단위의 움직임을 추정함에 있어, 움직임 추정의 범위가 패딩 부분을 넘어갈 수 없음을 지시하는 정보가 포함된다. 추출 비트 스트림이 복호화되는 경우, 타일 경계를 넘어 움직임 예측을 하는 것이 방지된다.
또한, 전체 비트 스트림의 인코딩 시, 전체 비트 스트림의 헤더 정보에는 예측 단위에서 움직임 벡터를 부호화하는 경우, 현재 부호화하는 예측 단위의 블록과 동일한 위치에 존재하는 다른 픽처의 움직임 벡터(Temporal 움직임 벡터)를 참조할 수 없음을 지시하는 정보가 포함된다.
추출 비트 스트림 생성부(330)는 추출 비트 스트림에 대응되는 SPS, PPS, 슬라이스 헤더 정보 등을 생성함에 있어, 아래에 해당하는 정보들은 전체 비트 스트림의 헤더 정보들과는 다르게 수정된다.
먼저, 추출된 영상이 하나의 타일로만 구성된 경우를 살펴보면 추출 비트 스트림의 헤더 정보는 다음과 같이 수정된다.
SPS의 pic_width_in_luma_samples 및 pic_height_in_luma_samples는 추출될 단일 타일 화면의 사이즈로 변경되어, 추출 영상의 가로 사이즈 및 세로 사이즈로 설정된다.
PPS에서 타일구조가 픽처 내에 존재하는지 여부에 대한 정보를 나타내는 tiles_enabled_flag는 0으로 수정되어 픽처 내에 타일구조가 존재하지 않음을 알린다.
추출 비트 스트림의 추출 헤더정보에서 첫 번째 슬라이스의 경우, first_slice_segment_in_pic_flag은 1로 설정되고, 나머지 슬라이스에 대해서는 첫째 슬라이스가 아니라는 의미로 first_slice_segment_in_pic_flag은 0으로 설정된다. 또한, 모든 슬라이스 헤더에서 슬라이스 내의 타일의 오프셋을 의미하는 num_entry_point_offsets은 0으로 설정된다.
다음으로, 추출된 영상이 복수의 타일로 구성된 경우를 살펴보면 추출 비트 스트림의 헤더 정보는 다음과 같이 수정된다.
SPS의 pic_width_in_luma_samples 및 pic_height_in_luma_samples는 추출될 전체 타일 화면의 사이즈로 변경되어, 추출 영상의 가로 사이즈 및 세로 사이즈로 설정된다.
PPS에서 num_tile_columns_minus1 및 num_tile_rows_minus1는 기존의 전체 비트 스트림 내의 종축 및 횡축 방향 타일 개수에서 추출 비트 스트림 내의 종축 및 횡축 방향 타일 개수에 맞도록 변경된다.
추출 비트 스트림의 추출 헤더정보에서 첫 번째 슬라이스 헤더만이 픽처 내에서 첫째 슬라이스인지 여부를 나타내는 정보 first_slice_segment_in_pic_flag를 포함한다. 추출 비트 스트림의 추출 헤더정보에서 추출 비트 스트림 상의 추출된 전체 픽처 내의 첫 번째 슬라이스인 경우, first_slice_segment_in_pic_flag은 1로 설정되고, 나머지 슬라이스에 대해서는 첫째 슬라이스가 아니라는 의미로 first_slice_segment_in_pic_flag은 0으로 설정된다. 또한, 모든 슬라이스 헤더에는 슬라이스 내의 타일의 오프셋을 의미하는 num_entry_point_offsets은 0으로 설정된다.
도 5(a)는 본 발명의 일 실시예에 따른 단말의 구성을 도시한 블럭도이다.
도 5(a)를 참조하면, 본 발명의 일 실시예에 따른 단말(120, 122)은 통신부(510), 디코더(512), 디스플레이부(514) 및 사용자 입력부(518)를 포함하여 구현될 수 있다.
먼저, 통신부(510)는 영상 추출장치로부터 전체 비트 스트림에 관한 정보를 수신한다.
디스플레이부(514)는 전체 비트 스트림에 관한 정보를 디스플레이한다. 전체 비트 스트림에 관한 정보는 전체 비트 스트림의 썸네일 이미지 또는 비디오일 수 있고, 전체 비트 스트림 중 일부 이미지 또는 영상일 수 있으며, 전체 비트 스트림을 나타내는 텍스트일 수 있다.
사용자 입력부(518)는 사용자로부터 디스플레이부에 의해 디스플레이되는 전체 비트 스트림에 관한 정보에 대하여 선택하고자 하는 객체 또는 영역을 입력받는다. 사용자 입력부(518)는 움직임의 트래킹을 원하는 하나 이상의 특정 객체의 위치 또는 시청하고자 하는 하나 이상의 영역을 사용자로부터 입력받는다. 이때, 위치 추척부(545)는 움직임의 트래킹을 원하는 하나 이상의 특정 객체의 위치 정보 또는 시청하고자 하는 하나 이상의 영역 정보를 스트림 내의 좌표 등으로 수치화한다. 이와 같이 수치화한 정보에 따라 위치 추적부(520)는 객체의 위치 또는 영역에 해당하는 타일 정보를 추적한다. 이렇게 위치 추적부(520)에 의해 수치화된 영상 선택정보를 통신부로 전송한다. 이때, 사용자 입력부(518)는 소정의 선택장치일 수 있다.
통신부(510)는 사용자 입력부(518)로부터 영상 선택정보를 수신하여 이를 영상 추출장치로 전송한다. 이와 함께 통신부(510)는 영상 추출장치(118)로 단말정보도 전송한다.
통신부(510)는 영상 추출장치(118)로부터 추출 비트 스트림을 수신하며, 디코더(512)는 통신부(510)가 수신한 추출 비트 스트림을 복호화한다.
디스플레이부(514)는 복호화된 추출 비트 스트림을 디스플레이한다. 이때, 디스플레이부(514) 내에 포함된 랜더러(516)는 디스플레이 정보에 따라 추출 비트 스트림이 포함하는 복수의 타일 중 일부 또는 전부의 타일의 크기를 조정한다. 디스플레이 정보란 추출 비트 스트림이 복수의 타일로 구성되는 경우, 추출 비트 스트림의 일부 타일은 크게 보고, 나머지 추출 비트 스트림의 타일은 작게 보이도록 하는 정보에 해당한다. 랜더러(516)는 이러한 디스플레이 정보에 따라 추출 비트 스트림의 각 타일의 크기를 조정할 수 있다.
디스플레이부(514)는 랜더러(516)에 의해 크기가 조정된 추출 비트 스트림을 디스플레이한다.
도 5(b)는 본 발명의 다른 일 실시예에 따른 단말의 구성을 도시한 블럭도이다.
도 5(b)를 참조하면, 본 발명의 일 실시예에 따른 단말(148, 150)은 통신부(530), 디코더(532), 디스플레이부(534) 및 사용자 입력부(538)를 포함하여 구현될 수 있다.
통신부(530)는 스트리밍 서버(136)로부터 전체 비트 스트림에 관한 정보를 수신한다.
디스플레이부(514)는 전체 비트 스트림에 관한 정보를 디스플레이한다. 전체 비트 스트림에 관한 정보는 전체 비트 스트림의 썸네일 이미지 또는 비디오일 수 있고, 전체 비트 스트림 중 일부 이미지 또는 영상일 수 있으며, 전체 비트 스트림을 나타내는 텍스트일 수 있다.
사용자 입력부(518)는 사용자로부터 디스플레이부에 의해 디스플레이되는 전체 비트 스트림에 관한 정보에 대하여 선택하고자 하는 객체 또는 영역을 입력받는다. 사용자 입력부(518)는 움직임의 트래킹을 원하는 하나 이상의 특정 객체의 위치 또는 시청하고자 하는 하나 이상의 영역을 선택받는다. 사용자 입력부(518)는 도 5(a)에 도시된 사용자 입력부(518)와는 달리 위치 추적부가 존재하지 않기 때문에 객체 또는 영역을 선택받는데 그친다. 사용자 입력부(538)는 사용자로부터 선택받은 객체 또는 영역을 미디어 표현 서술정보로 작성한다.
통신부(530)는 영상 선택정보로서 미디어 표현 서술정보를 사용자 입력부(538)로부터 수신하여 이를 스트리밍 서버(136)로 전송한다. 이와 함께 통신부(530)는 스트리밍 서버(136)로 단말정보도 전송한다.
통신부(530)는 스트리밍 서버(136)의 버퍼(168)로 접근하여, 저장된 추출 비트 스트림을 요청(Pull 방식)함으로써 추출 비트 스트림을 획득한다.
디코더(532)는 획득한 추출 비트 스트림을 복호화하며, 디스플레이부(534)는 복호화된 추출 비트 스트림을 디스플레이한다. 이때, 디스플레이부 내에 포함된 랜더러(536)는 디스플레이 정보에 따라 추출 비트 스트림이 포함하는 복수의 타일 중 일부 또는 전부의 타일의 크기를 조정한다.
도 5(c)는 본 발명의 또 다른 일 실시예에 따른 단말의 구성을 도시한 블럭도이다. 도 5(c)는 영상 추출부(170, 174)가 단말 내부에 일부 장치로서 포함된 단말을 도시한다.
도 5(c)를 참조하면, 본 발명의 일 실시예에 따른 단말(168, 172)은 통신부(540), 디코더(542), 디스플레이부(544), 사용자 입력부(548) 및 영상 추출장치(170, 174)를 포함하여 구현될 수 있다.
먼저, 통신부(540)는 헤드엔드(160)로부터 전체 비트 스트림과 전체 비트 스트림에 관한 정보를 수신한다.
디스플레이부(544)는 전체 비트 스트림에 관한 정보를 디스플레이한다. 전체 비트 스트림에 관한 정보는 전체 비트 스트림의 썸네일 이미지 또는 비디오일 수 있고, 전체 비트 스트림 중 일부 이미지 또는 영상일 수 있으며, 전체 비트 스트림을 나타내는 텍스트일 수 있다.
사용자 입력부(548)는 디스플레이부(544)에 의해 디스플레이되는 복호화된 비트 스트림에 대하여 사용자로부터 선택하고자 하는 객체 또는 영역을 입력받는다. 사용자 입력부(548)는 움직임의 트래킹을 원하는 하나 이상의 특정 객체의 위치 또는 시청하고자 하는 하나 이상의 영역을 사용자로부터 입력받는다. 이때, 위치 추척부(550)는 움직임의 트래킹을 원하는 하나 이상의 특정 객체의 위치 정보 또는 시청하고자 하는 하나 이상의 영역 정보를 스트림 내의 좌표 등으로 수치화한다. 이와 같이 수치화한 정보에 따라 위치 추적부(550)는 객체의 위치 또는 영역에 해당하는 타일 정보를 추적한다. 이렇게 위치 추적부(550)에 의해 수치화된 영상 선택정보를 영상 추출장치(170, 174)로 전달한다. 이때, 사용자 입력부(518)는 소정의 선택장치일 수 있다.
영상 추출부(170, 174)는 사용자 입력부(548)로부터 영상 선택정보를, 통신부(540)로부터 전체 비트 스트림을 수신하여 추출 비트 스트림을 생성한다. 이에 관한 설명은 도 3을 참조하여 설명하였기 때문에 자세한 설명은 생략하기로 한다.
디코더(542)는 획득한 추출 비트 스트림을 복호화하며, 디스플레이부(544)는 복호화된 추출 비트 스트림을 디스플레이한다. 이때, 디스플레이부 내에 포함된 랜더러(546)는 영상 추출부(170, 174)로부터 수신한 디스플레이 정보에 따라 추출 비트 스트림이 포함하는 복수의 타일 중 일부 또는 전부의 타일의 크기를 조정한다.
도 6은 본 발명의 일 실시예에 따른 영상의 추출방법을 나타낸 순서도이다.
부호화된 전체 비트 스트림 및 단말로부터 영상 선택정보를 수신한다(S610).
부호화된 전체 비트 스트림으로부터 영상 코드 및 헤더 정보를 분석한다(S620).
부호화된 전체 비트 스트림의 헤더 정보를 영상 선택정보에 따라 추출하고자 하는 영역의 비트 스트림에 대응되도록 수정하여 추출 헤더 정보를 생성한다(S630).
생성한 헤더 정보와 영상 선택정보에 대응하는 영상 코드를 포함하는 추출 비트 스트림을 생성한다(S640).
도 6에서는 과정 S610 내지 과정 S640을 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 발명의 일 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것이다. 다시 말해, 본 발명의 일 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 일 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 6에 기재된 순서를 변경하여 실행하거나 과정 S610 내지 과정 S640 중 하나 이상의 과정을 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이므로, 도 6은 시계열적인 순서로 한정되는 것은 아니다.
한편, 도 6에 도시된 과정들은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 즉, 컴퓨터가 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
도 7은 본 발명의 다른 일 실시예에 따른 미디어 표현 서술 정보의 구조를 도시한 도면이다.
Period(710)는 미디어 정보가 유지되는 기간을 의미한다.
BaseURL(720)은 요청하고자 하는 스트림의 공통된 URL을 의미한다.
Adaptation Set(730)은 단말에 의해 선택되어 다양하게 인코딩된 리소스의 집합이다. Period(710)에는 최소한 하나의 Adaptation Set(730)이 존재해야 한다.
Representation(740)은 하나 이상의 미디어 스트림의 인코딩된 버전을 나타낸다. Representation(740)은 하나 이상의 Segment로 구성되며, Representation를 구성하는 각각의 Segment의 SegmentBase(750), SegmentList(770) 및 SegmentURL(780) 등을 포함한다.
단말은 기 설정된 영역이나 객체에 대해 확대하여 시청을 원하는 경우, 미디어 표현 서술 정보 중 Adaptation Set(730) 또는 Representation(740)을 이용하여 스트리밍 서버로 요청할 수 있다. 또는, 단말은 사용자가 특정 객체를 선택하거나 네크워크 또는 단말에 따라 트래픽의 제어가 필요한 경우, 미디어 표현 서술 정보 중 SegmentURL(780)을 이용하여 스트리밍 서버(136)로 요청할 수 있다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
CROSS-REFERENCE TO RELATED APPLICATION
본 특허출원은 2015년 07월 03일 한국에 출원한 특허출원번호 제 10-2015-0095470호 및 2016년 07월 04일 한국에 출원한 특허출원번호 제 10-2016-0084443호에 대해 미국 특허법 119(a)조(35 U.S.C § 119(a))에 따라 우선권을 주장하며, 그 모든 내용은 참고문헌으로 본 특허출원에 병합된다. 아울러, 본 특허출원은 미국 이외에 국가에 대해서도 위와 동일한 이유로 우선권을 주장하며 그 모든 내용은 참고문헌으로 본 특허출원에 병합된다.
Claims (12)
- 하나 이상의 타일로 구성됨을 지시하는 정보가 헤더 정보에 포함된 전체 비트 스트림을 수신하는 제1 수신부;사용자의 요청, 네트워크의 환경 또는 단말의 성능에 따른 영상 선택정보를 수신하는 제2 수신부;상기 제1 수신부가 수신한 전체 비트 스트림으로부터 영상 코드 및 헤더 정보를 분석하는 영상정보 분석부; 및상기 전체 비트 스트림의 헤더 정보를 상기 제2 수신부가 수신한 영상 선택정보에 따라 수정하여 신규 헤더 정보를 생성하며, 상기 신규 헤더 정보와 상기 영상 선택정보에 대응하는 영상 코드를 포함하는 추출 비트 스트림을 생성하는 추출 비트스트림 생성부를 포함하는 것을 특징으로 하는 영상 추출장치.
- 제1항에 있어서,상기 영상 선택정보는,상기 전체 비트 스트림을 생성하는 장치로부터 수신되거나, 상기 추출 비트 스트림을 수신하는 단말로부터 수신되는 것을 특징으로 하는 영상 추출장치.
- 제2항에 있어서,상기 영상 선택정보는,상기 전체 비트 스트림을 생성하는 장치로부터 수신되는 경우, 하나 이상의 기 설정된 객체가 위치하는 영역에 관한 정보인 것을 특징으로 하는 영상 추출장치.
- 제2항에 있어서,상기 추출 비트스트림 생성부는,상기 전체 비트 스트림의 헤더 정보를 상기 영상 선택정보에 따라 수정함에 있어, 상기 전체 비트 스트림의 헤더 내의 SPS(Sequence Parameter Set), PPS(Picture Parameter Set) 및 슬라이스 헤더 정보 중 적어도 하나를 수정하는 것을 특징으로 하는 영상 추출장치.
- 제4항에 있어서,상기 추출 비트스트림 생성부는,상기 영상 선택정보에 따라 상기 전체 비트 스트림의 헤더 정보 중 상기 SPS를 수정함에 있어, pic_width_in_luma_samples 및 pic_height_in_luma_samples를 추출될 타일의 화면 사이즈로 수정하는 것을 특징으로 하는 영상 추출장치.
- 제4항에 있어서,상기 추출 비트스트림 생성부는,상기 영상 선택정보에 따라 상기 전체 비트 스트림의 헤더 정보 중 상기 PPS를 수정함에 있어,상기 추출 영상이 하나의 타일로 구성되는 경우 tiles_enabled_flag를 0으로 수정하며, 상기 추출 영상이 복수의 타일로 구성되는 경우 num_tile_columns_minus1 및 num_tile_rows_minus1를 상기 추출 비트 스트림 내의 종축 및 횡축 방향 타일 개수에 맞도록 수정하는 것을 특징으로 하는 영상 추출장치.
- 제2항에 있어서,상기 영상 선택정보는,상기 추출 비트 스트림을 수신하는 단말로부터 수신되는 경우, 상기 전체 비트 스트림에 대응되는 전체 영상 내에서 확대를 원하는 하나 이상의 영역에 관한 정보 또는 움직임의 트래킹을 원하는 하나 이상의 특정 객체의 위치에 관한 정보 인 것을 특징으로 하는 영상 추출장치.
- 제1항에 있어서,상기 신규 헤더 정보는,상기 추출 영상이 하나의 타일로 구성되는 경우, 추출될 타일의 크기, 타일구조가 존재하는지 여부 및 첫 번째 슬라이스(Slice)가 어떤 것인지 여부를 나타내는 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 영상 추출장치.
- 제1항에 있어서,상기 신규 헤더 정보는,상기 추출 영상이 복수의 타일로 구성되는 경우, 추출될 전체 타일의 크기, 전체 타일의 개수 및 첫 번째 슬라이스(Slice)가 어떤 것인지 여부를 나타내는 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 영상 추출장치.
- 하나 이상의 타일로 구성됨을 지시하는 정보가 헤더 정보에 포함된 전체 비트 스트림 및 영상 선택정보를 수신하는 과정;상기 전체 비트 스트림으로부터 영상 코드 및 헤더 정보를 분석하는 과정;상기 전체 비트 스트림의 헤더 정보를 상기 영상 선택정보에 따라 수정하여 신규 헤더정보를 생성하는 과정; 및상기 신규 헤더정보와 상기 영상 선택정보에 대응하는 영상코드를 포함하는 추출 비트 스트림을 생성하는 과정을 포함하는 것을 특징으로 하는 영상 추출방법.
- 영상을 포함하는 컨텐츠를 수신하는 수신부; 및상기 컨텐츠에 포함된 영상을 분석하여, 상기 영상의 구성, 상기 영상의 크기 또는 상기 영상을 수신할 단말에 따라 하나 이상의 타일로 구성되도록 상기 타일의 사이즈 또는 픽처 내의 타일의 개수를 설정하여 인코딩(Encoding)하는 부호화부를 포함하는 것을 특징으로 하는 비트 스트림 생성장치.
- 하나 이상의 타일로 구성됨을 지시하는 정보가 헤더 정보에 포함된 전체 비트 스트림 및 상기 전체 비트 스트림에 관한 정보 중 적어도 하나를 수신하는 통신부;상기 전체 비트 스트림에 관한 정보를 디스플레이하는 디스플레이부;상기 디스플레이부가 디스플레이하는 전체 비트 스트림에 관한 정보 내에서 사용자가 선택하고자 하는 객체 또는 영역에 관한 정보인 영상 선택정보를 생성하는 사용자 입력부;상기 전체 비트 스트림의 영상 코드 및 헤더 정보를 분석하여 상기 전체 비트 스트림의 헤더 정보를 상기 영상 선택정보에 따라 수정하여 신규 헤더 정보를 생성하며, 상기 신규 헤더 정보와 상기 영상 선택정보에 대응하는 타일의 영상 정보를 포함하는 추출 비트 스트림을 생성하는 영상 추출부; 및상기 추출 비트 스트림을 복호화(Decoding)하는 디코더를 포함하는 것을 특징으로 하는 영상추출 단말장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/858,376 US10623816B2 (en) | 2015-07-03 | 2017-12-29 | Method and apparatus for extracting video from high resolution video |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20150095470 | 2015-07-03 | ||
KR10-2015-0095470 | 2015-07-03 | ||
KR10-2016-0084443 | 2016-07-04 | ||
KR1020160084443A KR102106103B1 (ko) | 2015-07-03 | 2016-07-04 | 고 해상도 영상에서의 영상 추출 장치 및 방법 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/858,376 Continuation US10623816B2 (en) | 2015-07-03 | 2017-12-29 | Method and apparatus for extracting video from high resolution video |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017007208A1 true WO2017007208A1 (ko) | 2017-01-12 |
Family
ID=57685377
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2016/007209 WO2017007208A1 (ko) | 2015-07-03 | 2016-07-04 | 고 해상도 영상에서의 영상 추출 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2017007208A1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101053161B1 (ko) * | 2009-07-22 | 2011-08-02 | 주식회사 엠씨넥스 | H.264/avc 압축 영역에서의 동영상 합성 방법 및 장치 |
KR101108888B1 (ko) * | 2010-04-16 | 2012-01-30 | (주)에이씨엠텍 | Iptv 가입자단 품질 측정 장치 및 방법 |
KR101446074B1 (ko) * | 2013-12-26 | 2014-10-06 | 연세대학교 산학협력단 | 영상 합성 방법, 장치 및 시스템 |
KR20150016020A (ko) * | 2013-08-02 | 2015-02-11 | 삼성전자주식회사 | 세제공급장치를 구비한 세탁기 및 그 제어방법 |
WO2015056941A1 (ko) * | 2013-10-14 | 2015-04-23 | 한국전자통신연구원 | 다계층 기반의 영상 부호화/복호화 방법 및 장치 |
-
2016
- 2016-07-04 WO PCT/KR2016/007209 patent/WO2017007208A1/ko active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101053161B1 (ko) * | 2009-07-22 | 2011-08-02 | 주식회사 엠씨넥스 | H.264/avc 압축 영역에서의 동영상 합성 방법 및 장치 |
KR101108888B1 (ko) * | 2010-04-16 | 2012-01-30 | (주)에이씨엠텍 | Iptv 가입자단 품질 측정 장치 및 방법 |
KR20150016020A (ko) * | 2013-08-02 | 2015-02-11 | 삼성전자주식회사 | 세제공급장치를 구비한 세탁기 및 그 제어방법 |
WO2015056941A1 (ko) * | 2013-10-14 | 2015-04-23 | 한국전자통신연구원 | 다계층 기반의 영상 부호화/복호화 방법 및 장치 |
KR101446074B1 (ko) * | 2013-12-26 | 2014-10-06 | 연세대학교 산학협력단 | 영상 합성 방법, 장치 및 시스템 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102106103B1 (ko) | 고 해상도 영상에서의 영상 추출 장치 및 방법 | |
KR102111436B1 (ko) | 다중 영상의 단일 비트 스트림 생성방법 및 생성장치 | |
US8087044B2 (en) | Methods, apparatus, and systems for managing the insertion of overlay content into a video signal | |
US7644425B2 (en) | Picture-in-picture mosaic | |
JP5089658B2 (ja) | 送信装置及び送信方法 | |
US7688889B2 (en) | Methods, apparatus, and systems for insertion of overlay content into a video signal with transrating capabilities | |
US11611760B2 (en) | Preserving image quality in temporally compressed video streams | |
WO2014054847A1 (en) | Content processing apparatus for processing high resolution content and content processing method thereof | |
WO2013154402A1 (en) | Receiving apparatus for receiving a plurality of signals through different paths and method for processing signals thereof | |
US11895352B2 (en) | System and method for operating a transmission network | |
WO2013154397A1 (en) | Transmitting system and receiving apparatus for providing hybrid service, and service providing method thereof | |
KR100606785B1 (ko) | 네트워크를 통한 원격 멀티미디어 서비스 제공시스템에서의 동영상 및 이미지 데이터의 동기화 방법 | |
WO2016129981A1 (ko) | 미디어 데이터를 송수신하는 방법 및 장치 | |
EP3041233A1 (en) | High frame rate-low frame rate transmission technique | |
WO2018186646A1 (ko) | 고화질 360도 vr 영상 처리 장치 및 방법 | |
WO2020013567A1 (ko) | 컨텐츠의 처리 방법 및 장치 | |
WO2019004783A1 (ko) | 다채널 영상을 위한 전송 시스템 및 이의 제어 방법, 다채널 영상 재생 방법 및 장치 | |
WO2017007208A1 (ko) | 고 해상도 영상에서의 영상 추출 장치 및 방법 | |
WO2018016879A1 (ko) | 360도 가상현실 방송 서비스 제공 방법 및 장치 | |
WO2015102462A1 (ko) | 다중 영상의 단일 비트 스트림 생성방법 및 생성장치 | |
WO2016108318A1 (ko) | 오류에 강인한 압축 영역에서의 영상 합성 방법, 장치 및 시스템 | |
WO2023128491A1 (ko) | 다채널 영상을 전송하기 위한 시스템의 동작 방법 및 이를 수행하는 시스템 | |
JP2017059886A (ja) | サムネイル提供装置、表示装置、サムネイル映像表示方法、及びプログラム | |
KR20220155823A (ko) | 영상을 제공하는 장치, 방법 및 미디어 재생 장치 | |
KR101827244B1 (ko) | Hd cctv 영상 감시 시스템 |
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: 16821614 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 16821614 Country of ref document: EP Kind code of ref document: A1 |