WO2014007450A1 - 깊이 영상 처리 장치 및 방법 - Google Patents
깊이 영상 처리 장치 및 방법 Download PDFInfo
- Publication number
- WO2014007450A1 WO2014007450A1 PCT/KR2013/001357 KR2013001357W WO2014007450A1 WO 2014007450 A1 WO2014007450 A1 WO 2014007450A1 KR 2013001357 W KR2013001357 W KR 2013001357W WO 2014007450 A1 WO2014007450 A1 WO 2014007450A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- pixel
- sub
- depth image
- area
- local area
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/194—Segmentation; Edge detection involving foreground-background segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20021—Dividing image into blocks, subimages or windows
Definitions
- the following embodiments are directed to an apparatus and method for processing a depth image and to an apparatus and method for processing a current pixel of a depth image by dividing a local region of the depth image into a plurality of sub-regions.
- the conventional 3D image information transmitting apparatus encodes the depth image by converting the depth image to a low resolution in order to increase encoding efficiency.
- the high frequency component of the information of the depth image may be damaged, thereby lowering the reliability of the depth image.
- blurring may occur in a boundary region of an object included in the image.
- An apparatus for processing a depth image may include: an area setting unit configured to set a local area including at least one peripheral pixel based on a current pixel of a depth image; An area divider dividing the local area into a plurality of sub areas; A representative value determination unit determining a representative value of each sub area based on a pixel value of a peripheral pixel included in each of the sub areas; And a pixel processor configured to process the current pixel using a representative value of the subregion including the current pixel among the subregions.
- the area divider of the depth image processing apparatus may divide the local area into a plurality of sub areas by applying an area pattern indicating a divided form of the local area.
- An area divider of the depth image processing apparatus may determine a representative value of a subregion using pixel values of surrounding pixels included in a local area, and compare pixel values of the peripheral pixels with a representative value of the subregion.
- the local area can be divided into a plurality of sub areas.
- the representative value determiner of the depth image processing apparatus may update the representative value of the sub area by using pixel values of neighboring pixels belonging to the divided sub area.
- An area divider of the depth image processing apparatus divides a horizontal local area including peripheral pixels positioned in a horizontal direction of the current pixel in a local area into sub-regions, and extracts peripheral pixels located in a vertical direction of the current pixel. It is possible to divide a vertical local area into a sub area.
- the depth image processing apparatus may further include a region combiner configured to combine the divided sub regions when the difference between the representative values of each of the divided sub regions is less than or equal to a threshold value.
- the pixel processor of the image processing apparatus may process the current pixel by using the representative value of the combined sub-region.
- the depth image processing apparatus may further include a region setting unit configured to set a local area including original pixels of at least one depth image based on upsampling pixels required for upsampling a depth image; An area divider dividing the local area into a plurality of sub areas; A representative value determination unit determining a representative value of each of the sub areas based on a pixel value of an original pixel included in each of the plurality of sub areas; And a pixel value determiner configured to determine a pixel value of the upsampling pixel by using a representative value of a sub region including the upsampling pixel.
- a depth image processing method may include: setting a local area including at least one peripheral pixel based on a current pixel of a depth image; Dividing a local area into a plurality of sub areas; Determining a representative value of each subregion based on a pixel value of a peripheral pixel included in each of the subregions; And processing the current pixel by using the representative value of the subregion including the current pixel among the subregions.
- a depth image processing method may include: setting a local area including original pixels of at least one depth image based on upsampling pixels required for upsampling a depth image; Dividing the local area into a plurality of sub areas; Determining a representative value of each of the sub areas based on a pixel value of an original pixel included in each of the plurality of sub areas; And determining a pixel value of the upsampling pixel by using a representative value of a sub region including the upsampling pixel.
- FIG. 1 is a diagram illustrating an operation of a depth image processing apparatus according to an exemplary embodiment.
- FIG. 2 is a diagram illustrating a structure of a depth image processing apparatus according to an exemplary embodiment.
- 3 is an example of a process of dividing a local area into a sub area in a depth image, according to an exemplary embodiment.
- FIG. 4 is an example of a region pattern applied to a local region in one embodiment.
- FIG. 5 illustrates an example of a process of dividing a local area by comparing pixel values of neighboring pixels with a representative value of a sub area, according to an exemplary embodiment.
- FIG. 6 is an example of a method of processing a current pixel using an M ⁇ M sized local area in one embodiment.
- FIG. 7 is an example of a method of processing a current pixel using a horizontal local area and a vertical local area in one embodiment.
- FIG. 8 is an example of an image synthesizing apparatus including a depth image processing apparatus according to an exemplary embodiment.
- FIG. 9 is a diagram illustrating an operation of a depth image processing apparatus, according to an exemplary embodiment.
- FIG. 10 is a diagram illustrating a structure of a depth image processing apparatus according to an exemplary embodiment.
- 11 is an example of a process of upsampling a low resolution depth image according to an embodiment.
- FIG. 12 illustrates a depth image processing method according to an exemplary embodiment.
- FIG. 13 is a diagram illustrating a local region partitioning method according to an embodiment.
- FIG. 14 is a diagram illustrating a local region partitioning method using statistical characteristics in an embodiment.
- 15 illustrates a method of resetting a subregion using statistical characteristics in an embodiment.
- 16 is a diagram illustrating a local area partitioning method using a horizontal local area and a vertical local area according to an embodiment.
- FIG. 17 is a diagram illustrating a depth image processing method according to an exemplary embodiment.
- FIG. 1 is a diagram illustrating an operation of a depth image processing apparatus according to an exemplary embodiment.
- the depth image used in the 3D image or another image may be converted to a lower resolution than the color image and transmitted in order to improve transmission efficiency.
- the up-sampling apparatus 110 may upsample the received low resolution depth image into the high resolution depth image.
- depth information included in the depth image may be distorted during the upsampling process. Therefore, as illustrated in FIG. 1, the depth image processing apparatus 100 may process the upsampled depth image to increase the precision of the high resolution depth image.
- the depth image processing apparatus 100 may set a local area around the current pixel, which is a pixel to be processed in the depth image, and divide the local area into a plurality of sub-areas to process the current pixel. Can be. Therefore, when the depth image processing apparatus 100 processes the current pixel adjacent to the boundary of the object, the depth image processing apparatus 100 may minimize the influence of the pixel value of the current pixel on the pixel value of the peripheral pixel included in the background.
- the shape of the sub region may correspond to the shape of the boundary of the object. That is, as the depth image processing apparatus 100 precisely divides the sub region, the depth image processing apparatus 100 may output a high resolution depth image that accurately represents the boundary of the object.
- FIG. 2 is a diagram illustrating a structure of a depth image processing apparatus according to an exemplary embodiment.
- the depth image processing apparatus 100 includes an area setting unit 110, an area divider 220, a representative value determiner 230, an area combiner 240, and a pixel processor 250. can do.
- the area setting unit 210 may set a local area including at least one peripheral pixel based on the current pixel of the depth image.
- the local area may be a block of size N ⁇ M.
- the area divider 220 may divide the local area set by the area setter 210 into a plurality of sub areas.
- the area dividing unit 220 may preset the area patterns of the sub areas, and may divide the local area into a plurality of sub areas by applying the set area pattern.
- the region pattern may be a pattern indicating a divided form of the local region.
- the shape of the region pattern will be described in detail with reference to FIG. 4.
- the area dividing unit 220 may divide the local area into a plurality of sub areas based on pixel values of neighboring pixels included in the M ⁇ M size local area.
- the region dividing unit 220 may divide the local region into sub regions having an arbitrary shape by using pixel statistical characteristics of the local region.
- the region dividing unit 220 may divide the local region into arbitrary sub regions, and allow the representative value determining unit 230 to determine the representative values of each sub region.
- the region dividing unit 220 may determine the sub-region to which the neighboring pixel belongs by comparing pixel values of each of the peripheral pixels with representative values of the sub-region. In this case, the peripheral pixels included in each of the sub areas may be changed. Therefore, the representative value determiner 230 may determine the representative value again in consideration of the peripheral pixel newly added to the sub area and the peripheral pixel deleted from the sub area.
- the region dividing unit 220 may repeat the process until the representative values of the sub regions converge, or may repeat the process a predetermined number of times.
- the region dividing unit 220 determines a representative value of the sub area using pixel values of the peripheral pixels included in the local area, and compares the pixel values of the peripheral pixels with the representative value of the sub area to determine a plurality of local areas. It can also be divided into sub-regions of.
- the region dividing unit 220 may select at least two or more peripheral pixels among the peripheral pixels, and determine pixel values of the selected peripheral pixels as the representative value of the sub-region including the selected peripheral pixels.
- the area dividing unit 220 may divide the local area into a plurality of sub areas by comparing a pixel value of each of the peripheral pixels with representative values of the sub area to determine a sub area to which the peripheral pixel belongs.
- the area divider 220 divides the horizontal local area of 1 ⁇ M size including the current pixel into a plurality of subregions, and divides the vertical local area of M ⁇ 1 size including the current pixel into a plurality of subregions. Can be divided into
- the representative value determiner 230 may determine the representative value of each sub area based on the pixel value of the peripheral pixel included in each of the sub areas.
- the representative value of the sub region may be an average value of pixel values of the peripheral pixels included in the sub region, an arithmetic mean calculation result of the peripheral pixels included in the sub region, and Gaussian filtering of the peripheral pixels included in the sub region.
- the representative value determiner 230 may update the representative value of the sub area by using pixel values of neighboring pixels belonging to the sub area divided by the area divider 220. For example, when the region dividing unit 220 repeats the process of dividing the local region, the representative value determiner 230 deletes the neighboring pixels newly added to the sub region and the sub region in the process of dividing the local region. The representative value may be determined again in consideration of the neighboring pixels. In this case, the representative value determiner 230 may update the representative value of the sub-region determined again to the representative value of the sub-region.
- the region combiner 240 may combine the sub-regions divided by the region divider 220 when the difference between the representative values of the sub-regions divided by the region divider 220 is equal to or less than a threshold.
- the area combining unit 240 may prevent the area dividing unit 220 from repeating the process of dividing the local area into the sub areas unnecessarily by combining the sub areas. have.
- the threshold may be determined according to the filtering performance of the depth image processing apparatus 100. For example, when the threshold value is large, the case where the region combiner 240 merges the sub regions may increase. In this case, the increase in the case where the sub-regions are integrated means that the case where the shape of the boundary of the object is precisely represented by using the sub-regions decreases, so that the precision of the high-resolution depth image output by the depth image processing apparatus 100 is increased. May decrease. On the other hand, when the threshold value is small, the case where the region combiner 240 integrates the sub regions may be reduced.
- decreasing the case where the sub-regions are integrated means that the sub-regions are divided into separate sub-regions even if the difference between the sub-regions is small. Therefore, the time for the depth image processing apparatus 100 to process the high resolution depth image may increase.
- the user may determine the filtering performance of the depth image processing apparatus 100 by determining the threshold value in consideration of the processing time and the precision of the depth image processing apparatus 100.
- the pixel processor 250 may process the current pixel using a representative value of a subregion including the current pixel among the subregions. For example, the pixel processor 250 may replace the pixel value of the current pixel with a representative value of the sub area including the current pixel among the sub areas.
- the pixel processor 250 may process the current pixel using the representative value of the combined sub region.
- 3 is an example of a process of dividing a local area into a sub area in a depth image, according to an exemplary embodiment.
- the area setting unit 210 may set the local area 300 in a depth image including an object.
- the area divider 220 may divide the local area 300 into a sub area 310 corresponding to the inside of the object and a sub area 320 corresponding to the background.
- the representative value determiner 230 may determine the representative values of the sub region 310 and the sub region 320.
- the region dividing unit 220 may perform a difference between the representative value of the sub-region 310 and the pixel values of all the peripheral pixels included in the local region, and the representative value of the sub-region 320 and all the peripheral pixels included in the local region.
- the difference between the pixel values of can be calculated.
- the area divider 220 may calculate a difference between the representative values and the neighboring pixel values by using a distance measure method such as an absolute difference.
- the region dividing unit 220 selects a sub region to include the peripheral pixel according to a difference between the representative value of the sub region 310 and the pixel value of the peripheral pixel and the difference between the representative value of the sub region 320 and the pixel value of the peripheral pixel. You can reset it. For example, if the difference between the pixel value of the peripheral pixel and the representative value of the sub-region 310 is less than the difference between the pixel value of the peripheral pixel and the representative value of the sub-region 320, the region dividing unit 220 may display the corresponding peripheral pixel. May be set as the sub region 310.
- the region dividing unit 220 selects the peripheral pixel.
- the sub area 320 may be set.
- the region dividing unit 220 repeats the process until the representative values of the sub region 310 and the sub region 320 converge to a specific value or the process of resetting the sub region including the surrounding pixels is repeated a predetermined number of times. Can be done.
- the pixel processor 250 may process the current pixel by using the representative value of the subregion including the current pixel among the subregions. For example, the pixel processor 250 may replace the pixel value of the pixel 311 with the representative value of the sub region 310, and replace the pixel value of the pixel 321 with the representative value of the sub region 320. .
- FIG. 4 is an example of a region pattern applied to a local region in one embodiment.
- the area divider 220 may preset the area patterns 400 of the sub areas as illustrated in FIG. 4.
- the area 410 indicated by the dotted line in FIG. 4 may be pixels around the local area remaining without being divided into the area pattern 400.
- each of the region patterns 400 preset by the region dividing unit 220 overlap each other. It can have a defined area. For example, an area pattern 401 indicating a subregion located below the local area divided horizontally and an area pattern 402 representing the right side of the sub area vertically divided local area have a lower right side of the local area. May be included in duplicate.
- the area dividing unit 220 measures the flatness of the peripheral pixels corresponding to each of the area patterns 400, the distance measurement between the current pixel and the peripheral pixels corresponding to each of the area patterns 400 in the local area, and the area.
- the area pattern 400 to be applied to the local area may be selected using at least one of statistical characteristics of neighboring pixels corresponding to each of the patterns 400.
- the representative value determiner 230 determines a representative value of neighboring pixels corresponding to the region pattern selected by the region divider 220, and the pixel processor 250 replaces the determined representative value with the pixel value of the current pixel.
- the sub area 310 may be similar to the area pattern 403 or the area pattern 404 and may be different from the area pattern 401. Therefore, when the current pixel is the pixel 311 and the local area is the same as the local area 300 of FIG. 3, the area divider 220 uses the area pattern 403 or the area pattern 404 to select the local area. Can be divided
- the region dividing unit 220 may reduce the number and time of operations required to divide the local region into a plurality of sub regions by dividing the local region using the region pattern 400.
- FIG. 5 illustrates an example of a process of dividing a local area by comparing pixel values of neighboring pixels with a representative value of a sub area, according to an exemplary embodiment.
- 5 is an example of a process in which the area divider 220 divides a local area into two sub areas.
- the region dividing unit 220 may identify the pixel 501 having the largest pixel value and the pixel 502 having the smallest pixel value among the surrounding pixels included in the local area.
- the representative value determiner 230 may set the pixel value of the pixel 501 as the representative value of the first sub-region, and determine the pixel value of the pixel 502 as the representative value of the second sub-region.
- the region dividing unit 220 may calculate a difference between the representative value of the first sub-region and the representative value of the second sub-region and all peripheral pixel values included in the local region.
- the area dividing unit 220 may calculate a difference between the representative value of the first sub-area, the representative value of the second sub-area, and all peripheral pixel values included in the local area by using an equation satisfying the condition of Equation 1. Can be.
- x may be one of the representative value of the first sub-region and the representative value of the second sub-region
- y may be one of all peripheral pixel values included in the local area.
- the region dividing unit 220 may determine the peripheral pixels included in the sub-region based on the calculated difference between the representative value of the first sub-region and the representative value of the second sub-region and all peripheral pixel values included in the local region. have. For example, when the difference between the pixel value of the peripheral pixel 510 and the representative value of the first sub-region is greater than the difference between the pixel value of the peripheral pixel 510 and the representative value of the second sub-region, the area divider 220 The second sub region 520 may be configured to include the neighboring pixels 510. In addition, the region dividing unit 220 may set the first sub-region 530 to include the remaining pixels except for the neighboring pixel 510 among the neighboring pixels included in the local area.
- the representative value determiner 230 determines the average value of the pixel values of the neighboring pixels included in the first sub-region 530 as a new representative value of the first sub-region 530, and the second sub-region 520. ) May be determined as the new representative value of the second sub-region 520.
- the area divider 220 may represent the representative value of the first subregion and the second subregion until the representative value of the first subregion 530 and the representative value of the second subregion 520 converge to a predetermined value.
- the process of dividing the local area may be repeated by calculating a difference between the representative value of and all peripheral pixel values included in the local area.
- FIG. 6 is an example of a method of processing a current pixel using an M ⁇ M sized local area in one embodiment.
- FIG. 6 illustrates an example of a process in which the area divider 220 divides the local area into two sub-areas when the local area is a block of size M ⁇ M.
- the area divider 220 may divide a local area into a first sub area 610 and a second sub area 620.
- the region dividing unit 220 may segment the local region using an image segmentation algorithm such as K-mean and a mean shift algorithm.
- the representative value determiner 230 may determine the representative values of the first sub-region 610 and the second sub-region 620. In this case, when the difference between the representative value of the first sub-region 610 and the representative value of the second sub-region 620 is less than the threshold value, the area combining unit 240 may have the first sub-region 610 and the second sub-region. Regions 620 may be combined.
- the pixel processor 250 may replace the representative value of the first sub-region 610 including the current pixel 630 with the pixel value of the current pixel 630.
- FIG. 7 is an example of a method of processing a current pixel using a horizontal local area and a vertical local area in one embodiment.
- FIG. 7 illustrates an example of a process of processing a current pixel using a horizontal local area having a size of 1 ⁇ M including a current pixel and a vertical local area having a size of M ⁇ 1 including a current pixel.
- the local area setting unit 210 may set a horizontal local area 711 having a size of 1 ⁇ M.
- the area divider 220 may divide the horizontal local area 711 into the first sub area 712 and the second sub area 713.
- the representative value determiner 230 may determine the representative values of the first sub-region 712 and the second sub-region 713.
- the area combining unit 240 may have the first sub-region 712 and the second sub-region. Regions 713 may be combined.
- the pixel processor 250 may replace the representative value of the first sub-region 712 including the current pixel 714 with the pixel value of the current pixel 714.
- the depth image processing apparatus 100 may apply the process to all rows of the depth image and store the result processed according to the process in a temporary buffer.
- the local area setting unit 210 may set a vertical local area 721 having an M ⁇ 1 size in the depth image stored in the temporary buffer.
- the area divider 220 may divide the vertical local area 721 into the first sub area 722 and the second sub area 723.
- the pixel values of the peripheral pixels included in the current pixel 724, the first sub-region 722, and the peripheral pixels included in the second sub-region 723 are representative of the sub-regions included in the horizontal local area 711. It may be a value replaced with a value.
- the representative value determiner 230 may determine the representative values of the first sub-region 722 and the second sub-region 723. In this case, when the difference between the representative value of the first sub-region 722 and the representative value of the second sub-region 723 is less than the threshold value, the area combining unit 240 may have the first sub-region 722 and the second sub-region. Regions 723 may be combined.
- the pixel processor 250 may replace the representative value of the first sub region 722 including the current pixel 724 with the pixel value of the current pixel 724.
- the depth image processing apparatus 100 replaces the process of setting the vertical local region 721 with replacing the representative value of the sub region including the current pixel 724 with the pixel value of the current pixel 724.
- a high resolution depth image may be output by applying to a column.
- the depth image processing apparatus 100 sets and processes a vertical local area in the current pixel and the neighboring pixels processed using the horizontal local area, thereby processing pixel values considering both columns and rows including the current pixel. Can be processed with pixel values.
- FIG. 8 is an example of an image synthesizing apparatus including a depth image processing apparatus according to an exemplary embodiment.
- an image synthesizing apparatus may include a first upsampling apparatus 810, a first depth image processing apparatus 820, a second upsampling apparatus 830, and a second depth image processing apparatus 840. And the virtual view image synthesizing apparatus 850.
- the first upsampling apparatus 810 may upsample the resolution of the first depth image according to the resolution of the first color image.
- the first color image and the first depth image may be a left view color image and a left view depth image, respectively.
- the first depth image processing apparatus 820 sets a local region around the current pixel in the high resolution depth image upsampled by the first upsampling apparatus 810, and divides the current region by dividing the local region into a plurality of sub-regions. By processing, when the current pixel adjacent to the boundary of the object is processed, the influence of the surrounding pixels included in the background can be minimized.
- the second upsampling apparatus 830 may upsample the resolution of the twenty-first depth image according to the resolution of the second color image.
- the second color image and the second depth image may be a right view color image and a right view depth image, respectively.
- the second depth image processing apparatus 840 sets a local region around the current pixel in the high-resolution depth image upsampled by the second upsampling apparatus 810, and divides the current region by dividing the local region into a plurality of sub-regions. By processing, when the current pixel adjacent to the boundary of the object is processed, the influence of the surrounding pixels included in the background can be minimized.
- the virtual view image synthesizing apparatus 850 includes a first depth image processed by the first depth image processing apparatus 820 and a second depth image processed by the second depth image processing apparatus 840, a first color image, and a second image.
- the virtual view color image may be synthesized using the color image.
- FIG. 9 is a diagram illustrating an operation of a depth image processing apparatus, according to an exemplary embodiment.
- the depth image processing apparatus may process the depth image while upsampling the low resolution depth image into the high resolution depth image to increase the precision of the high resolution depth image.
- the depth image processing apparatus 900 sets a local area around an upsampling pixel to be added between original pixels included in the low resolution depth image, and processes the upsampling pixel by dividing the local area into a plurality of sub-areas. can do. Accordingly, when the depth image processing apparatus 100 adds upsampling pixels adjacent to the boundary of the object, the depth image processing apparatus 100 may minimize that the pixel values of the upsampling pixels to be added are affected by the pixel values of the original pixels included in the background.
- FIG. 10 is a diagram illustrating a structure of a depth image processing apparatus according to an exemplary embodiment.
- the depth image processing apparatus 900 includes an area setting unit 1010, an area divider 1020, a representative value determiner 1030, an area combiner 1040, and a pixel value determiner 1050. And a pixel adder 1060.
- the area setting unit 1010 may set a local area including original pixels of at least one depth image based on the upsampling pixels required for upsampling the depth image.
- the original pixel may be a pixel included in the low resolution depth image
- the upsampling pixel may be a pixel added between the original pixels in the process of upsampling the low resolution depth image into the high resolution depth image.
- the area divider 1020 may divide the local area set by the area setter 1010 into a plurality of sub areas.
- the representative value determiner 1030 may determine the representative value of each of the sub areas based on the pixel value of the original pixel included in each of the plurality of sub areas divided by the area divider 1020.
- the pixel value determiner 1050 may determine the pixel value of the upsampling pixel using the representative value of the sub region including the upsampling pixel.
- the area dividing unit 1020 may preset area patterns of the sub areas, and divide the local area into a plurality of sub areas by applying the set area pattern.
- the area divider 1020 may divide the local area into a plurality of sub areas based on pixel values of original pixels included in the M ⁇ M size local area.
- the region dividing unit 1020 may divide the local region into sub regions having an arbitrary shape by using pixel statistical characteristics of the local region.
- the region dividing unit 1020 may select at least two or more original pixels among the original pixels, and determine pixel values of the selected original pixels as representative values of the sub-region including the selected original pixels. Next, the area dividing unit 1020 may divide the local area into a plurality of sub areas by comparing a pixel value of each of the original pixels with representative values of the sub area to determine a sub area to which the original pixel belongs.
- the representative value determiner 1030 may determine the representative value of each sub area based on the pixel value of the original pixel included in each of the sub areas.
- the representative value of the sub region may be an average value of pixel values of original pixels included in the sub region, or a value that may represent pixel values of original pixels included in the sub region.
- the representative value determiner 1030 may update the representative value of the sub area using the pixel values of the original pixels belonging to the sub area divided by the area divider 1020. For example, when the area divider 1020 repeats the process of dividing the local area, the representative value determiner 1030 deletes the original pixel and the sub area newly added to the sub area in the process of dividing the local area. The representative value may be determined again in consideration of the original pixel. In this case, the representative value determiner 1030 may update the representative value of the sub-region determined again to the representative value of the sub-region.
- the region combiner 1040 may combine the sub-regions divided by the region divider 1020 when the difference between the representative values of each of the sub-regions divided by the region divider 1020 is equal to or less than a threshold value.
- the pixel value determiner 1050 may determine the pixel value of the up-sampling pixel by using the representative value of the sub-region including the up-sampling pixel among the sub-regions. For example, the pixel processor 1050 may determine the pixel value of the upsampling pixel as the representative value of the subregion including the upsampling pixel among the subregions.
- the pixel processor 1050 may determine the pixel value of the up-sampling pixel based on the representative value of the combined sub region.
- the pixel adding unit 1060 may add upsampling pixels between the original pixels in which the pixel value determining unit 1050 determines the pixel values.
- 11 is an example of a process of upsampling a low resolution depth image according to an embodiment.
- the area setting unit 1010 may set a local area including the original pixel 1111, the original pixel 1112, the original pixel 1121, and the original pixel 1122 based on the upsampling pixel to be added.
- the area divider 1020 may divide the local area into the first sub area 1110 and the second sub area 1120.
- the difference between the pixel value of the original pixel 1111 and the pixel value of the original pixel 1112 and the difference between the pixel value of the original pixel 1121 and the pixel value of the original pixel 1122 may be equal to or less than a threshold.
- the pixel value of the original pixel 1111 and the pixel value of the original pixel 1112 may be the same, and the pixel value of the original pixel 1121 and the pixel value of the original pixel 1122 may be the same.
- the representative value determiner 1030 may determine the representative values of the first sub-region 610 and the second sub-region 620. In this case, the representative value determiner 1030 determines the average value of the pixel value of the original pixel 1111 and the pixel value of the original pixel 1112 as the representative value of the first sub-region 1110, and determines the representative value of the original pixel 1121. An average value of the pixel value and the pixel value of the original pixel 1122 may be determined as a representative value of the second sub-region 1120.
- the area combining unit 1040 may have the first sub-region 1110 and the second sub-region. Regions 1120 may be combined.
- the pixel value determiner 1050 may determine the representative value of the sub region including the upsampling pixel as the pixel value of the upsampling pixel.
- the pixel value determiner 1050 may convert the pixel value of the upsampling pixel 1113 to the pixel value of the original pixel 1111 and the original. The average value of the pixel values of the pixels 1112 may be determined.
- the pixel value determiner 1050 uses the pixel value of the upsampling pixel 1123 as the pixel value of the original pixel 1121 and the original pixel. The average value of the pixel value 1112 can be determined.
- the pixel adding unit 1060 may add upsampling pixels between the original pixels in which the pixel value determining unit 1050 determines the pixel values.
- FIG. 12 illustrates a depth image processing method according to an exemplary embodiment.
- the area setting unit 210 may set a local area including at least one peripheral pixel based on the current pixel of the depth image.
- the region dividing unit 220 may divide the local region set in operation 1210 into a plurality of sub regions.
- the representative value determiner 230 may determine the representative values of the sub-regions divided in operation 1220. In this case, the representative value determiner 230 may determine, as a representative value of the sub region, an average value of pixel values of the peripheral pixels included in the sub region or a value that can represent the pixel values of the peripheral pixels included in the sub region. .
- the region combiner 240 may determine whether a difference between the representative values of each of the sub-regions determined in operation 1230 is equal to or less than a threshold value. If the difference between the representative values of each of the sub-regions is equal to or less than a threshold value, in operation 1250, the region combiner 240 may combine the sub-regions divided by the region divider 220.
- the pixel processor 250 may process the current pixel using the representative value of the subregion including the current pixel among the subregions. For example, the pixel processor 250 may replace the pixel value of the current pixel with a representative value of a sub region including the current pixel. In addition, when the operation 1250 is performed, the pixel processor 250 may replace the pixel value of the current pixel with the representative value of the sub-region combined in the operation 1250.
- steps 1310 to 1360 of FIG. 13 may correspond to steps 1220 to 1130 of FIG. 12.
- the area divider 220 may determine whether to divide the local area into a plurality of sub areas by applying a preset area pattern.
- the region divider 220 selects at least one region pattern from among region patterns as illustrated in FIG. 4, and divides the local region into a plurality of sub regions by applying the selected region pattern. can do.
- the area divider 220 may divide the local area into a plurality of sub areas by using statistical characteristics of the local area. A process of dividing the local area into a plurality of sub areas by using the statistical characteristics of the local area will be described in detail with reference to FIG. 14.
- the representative value determiner 230 may determine the representative values of the sub-regions divided in operation 1320 or 1330.
- the area divider 220 may determine whether the number of resetting of the sub area is greater than the preset number of repetitions.
- the number of times of resetting the sub region may be the number of times 1360 is executed, and the initial value may be zero.
- the number of repetitions may be a number of times that step 1360 should be performed in order for the representative values of the sub-regions to converge to a specific value.
- the area dividing unit 220 may determine that the representative values of the sub areas converge to a specific value and terminate the local area dividing.
- the area divider 220 may reconfigure the neighboring pixels included in the sub area by using statistical characteristics of the local area. The resetting of the sub region will be described in detail with reference to FIG. 15.
- steps 1410 to 1430 of FIG. 14 may be included in step 1330 of FIG. 13.
- the area divider 220 may set a representative value of the sub area by using the surrounding pixels.
- the region dividing unit 220 may select at least two or more peripheral pixels among the peripheral pixels, and determine pixel values of the selected peripheral pixels as the representative value of the sub-region including the selected peripheral pixels.
- the region dividing unit 220 may compare pixel values of each of the peripheral pixels with representative values of the sub-region set in operation 1410, and group the peripheral pixels according to the comparison result.
- the region divider 220 may divide the local region into a plurality of sub-regions by using the peripheral pixels grouped in operation 1420.
- the region dividing unit 220 may divide the local region by setting the peripheral pixels grouped in operation 1420 as one sub region.
- steps 1510 to 1540 of FIG. 15 may be included in step 1360 of FIG. 13.
- the area divider 220 may determine a difference between the representative value of the first sub-region and the pixel values of the peripheral pixels determined in operation 1340, and the difference between the representative value of the second sub-region and the pixel values of the peripheral pixels. Can be calculated
- the region dividing unit 220 determines that the difference between the representative value of the first sub-region and the pixel values of the neighboring pixels calculated in operation 1510 is the difference between the representative value of the second sub-region and the pixel value of the peripheral pixels. You can check whether there is less.
- the area divider 220 is configured to generate the peripheral value.
- the first subregion may be reset to include the pixel in the first subregion.
- the region dividing unit 220 at step 1540 may be reset to include the neighboring pixel in the second subregion.
- steps 1610 to 1670 of FIG. 16 may correspond to steps 1220 to 1130 of FIG. 12.
- the local area setting unit 210 may set a horizontal local area having a size of 1 ⁇ M.
- the region dividing unit 220 may divide the horizontal local region set in operation 1610 into a plurality of sub regions.
- the representative value determiner 230 may determine the representative values of the sub-regions divided in operation 1620. In this case, when the difference in the representative value of the determined sub-regions is smaller than the threshold value, the region combiner 240 may combine the sub-regions.
- the pixel processor 250 may replace the representative value of the sub region including the current pixel among the representative values of the sub region determined in operation 1630 with the pixel value of the current pixel.
- the depth image processing apparatus 100 may apply steps 1610 to 1640 to all rows of the depth image, and store the pixel values of the replaced current pixels in the temporary buffer according to the application result. .
- the local area setting unit 210 sets a vertical local area of size M ⁇ 1 in the depth image stored in the temporary buffer, and the area divider 220 divides the vertical local area into a plurality of sub areas. can do.
- the pixel values of the current pixel and the neighboring pixels may be values processed in operation 1640.
- the representative value determiner 230 may determine the representative values of the sub-regions divided in operation 1650. In this case, when the difference in the representative value of the determined sub-regions is smaller than the threshold value, the region combiner 240 may combine the sub-regions.
- the pixel processor 250 may replace the representative value of the sub region including the current pixel among the representative values of the sub region determined in operation 1660 with the pixel value of the current pixel.
- the depth image processing apparatus 100 may output the high resolution depth image by applying steps 1650 to 1670 to all columns of the depth image.
- the horizontal local area is used before the vertical local area, but the order may be changed.
- the depth image processing apparatus 100 performs steps 1650 to 1670 first and applies them to all columns of the depth image, and temporarily applies the pixel values of the replaced current pixels according to the application result. Can be stored in Next, the depth image processing apparatus 100 may output the high resolution depth image by applying steps 1610 to 1640 to all rows of the depth image.
- FIG. 17 is a diagram illustrating a depth image processing method according to an exemplary embodiment.
- the area setting unit 1010 may set a local area including at least one original pixel centering on upsampling pixels to be added between the original pixels of the depth image.
- the region divider 1020 may divide the local region set in operation 1710 into a plurality of sub regions.
- the representative value determiner 1030 may determine the representative values of the sub-regions divided in operation 1720. In this case, the representative value determiner 1030 may determine, as a representative value of the sub region, an average value of pixel values of the peripheral pixels included in the sub region or a value that can represent the pixel values of the peripheral pixels included in the sub region. .
- the region combiner 1040 may determine whether a difference between the representative values of each of the sub-regions determined in operation 1730 is equal to or less than a threshold value. If the difference between the representative values of each of the sub-regions is equal to or less than a threshold value, in operation 1750, the region combiner 1040 may combine the sub-regions divided by the region divider 1020.
- the pixel value determiner 1050 may determine the pixel value of the upsampling pixel by using the representative value of the subregion including the upsampling pixel among the subregions. For example, the pixel value determiner 10750 may determine the pixel value of the upsampling pixel as the representative value of the sub region including the current pixel. In addition, when the operation 1750 is performed, the pixel processor 1050 may determine the pixel value of the upsampling pixel as the representative value of the sub-regions combined in operation 1750.
- the pixel adding unit 1060 may add upsampling pixels between the original pixels according to the pixel value determined in operation 1760.
- the method according to the embodiment may be embodied in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium.
- the computer readable medium may include program instructions, data files, data structures, etc. alone or in combination.
- the program instructions recorded on the media may be those specially designed and constructed for the purposes of the embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts.
- Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks.
- Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.
- the hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
Abstract
깊이 영상의 로컬 영역을 복수의 서브 영역들로 분할하여 깊이 영상의 현재 화소를 처리하는 깊이 영상 처리 장치 및 방법이 개시된다. 깊이 영상 처리 장치는 깊이 영상의 현재 화소를 중심으로 적어도 하나의 주변 화소를 포함하는 로컬 영역을 설정하는 영역 설정부; 로컬 영역을 복수의 서브 영역으로 분할하는 영역 분할부; 서브 영역들 각각에 포함된 주변 화소의 화소값에 기초하여 서브 영역 각각의 대표값을 결정하는 대표값 결정부; 및 서브 영역들 중 현재 화소를 포함하는 서브 영역의 대표값을 이용하여 상기 현재 화소를 처리하는 화소 처리부를 포함할 수 있다.
Description
이하의 일실시예들은 깊이 영상 처리 장치 및 방법에 관한 것으로 깊이 영상의 로컬 영역을 복수의 서브 영역들로 분할하여 깊이 영상의 현재 화소를 처리하는 장치 및 방법에 관한 것이다.
3차원 영상을 생성하기 위해서는 깊이 영상과 컬러 영상이 필요하다. 그러나, 깊이 영상의 화질보다는 컬러 영상의 화질이 중요시 되므로 종래의 3차원 영상 정보 전송 장치는 부호화 효율을 높이기 위하여 깊이 영상을 저해상도로 변환하여 부호화하였다.
그러나, 전송할 정보량을 감소시키기 위하여 깊이 영상의 해상도를 감소시키는 경우, 깊이 영상의 정보 중에서 고주파 성분이 손상되어 깊이 영상의 신뢰도가 낮아질 수 있다. 이때, 신뢰도가 낮은 깊이 영상을 사용하여 3차원 영상을 합성하면, 영상에 포함된 오브젝트의 경계 영역에 블러링(blurring) 현상이 발생할 수 있다는 문제가 있었다.
따라서, 저해상도 깊이 영상을 고해상도 깊이 영상으로 업샘플링할 경우, 고해상도 깊이 영상의 신뢰도를 높이는 깊이 영상 처리 방법이 요구된다.
일실시예에 따른 깊이 영상 처리 장치는 깊이 영상의 현재 화소를 중심으로 적어도 하나의 주변 화소를 포함하는 로컬 영역을 설정하는 영역 설정부; 로컬 영역을 복수의 서브 영역으로 분할하는 영역 분할부; 서브 영역들 각각에 포함된 주변 화소의 화소값에 기초하여 서브 영역 각각의 대표값을 결정하는 대표값 결정부; 및 서브 영역들 중 현재 화소를 포함하는 서브 영역의 대표값을 이용하여 상기 현재 화소를 처리하는 화소 처리부를 포함할 수 있다.
일실시예에 따른 깊이 영상 처리 장치의 영역 분할부는 로컬 영역의 분할 형태를 나타내는 영역 패턴을 적용하여 로컬 영역을 복수의 서브 영역으로 분할할 수 있다.
일실시예에 따른 깊이 영상 처리 장치의 영역 분할부는 로컬 영역에 포함된 주변 화소들의 화소값들을 이용하여 서브 영역의 대표값을 결정하고, 상기 주변 화소들의 화소값들과 서브 영역의 대표값을 비교하여 로컬 영역을 복수의 서브 영역으로 분할할 수 있다.
일실시예에 따른 깊이 영상 처리 장치의 대표값 결정부는 분할된 서브 영역에 속하는 주변 화소들의 화소값을 이용하여 서브 영역의 대표값을 업데이트할 수 있다.
일실시예에 따른 깊이 영상 처리 장치의 영역 분할부는 로컬 영역에서 상기 현재 화소의 수평 방향에 위치한 주변 화소들을 포함하는 수평 로컬 영역을 서브 영역으로 분할하고, 상기 현재 화소의 수직 방향에 위치한 주변 화소들을 포함하는 수직 로컬 영역을 서브 영역으로 분할할 수 있다.
일실시예에 따른 깊이 영상 처리 장치는 상기 분할된 서브 영역들 각각의 대표값들 간의 차이가 임계값 이하인 경우, 상기 분할된 서브 영역들을 결합하는 영역 결합부를 더 포함하고, 일실시예에 따른 깊이 영상 처리 장치의 화소 처리부는 상기 결합된 서브 영역의 대표값을 이용하여 현재 화소를 처리할 수 있다.
일실시예에 따른 깊이 영상 처리 장치는 깊이 영상을 업샘플링할 때 필요한 업샘플링 화소를 중심으로 적어도 하나의 깊이 영상의 원본 화소들을 포함하는 로컬 영역을 설정하는 영역 설정부; 상기 로컬 영역을 복수의 서브 영역들로 분할하는 영역 분할부; 상기 복수의 서브 영역들 각각 포함된 원본 화소의 화소값에 기초하여 서브 영역들 각각의 대표값을 결정하는 대표값 결정부; 및 상기 업샘플링 화소를 포함하는 서브 영역의 대표값을 이용하여 상기 업샘플링 화소의 화소값을 결정하는 화소값 결정부를 포함할 수 있다.
일실시예에 따른 깊이 영상 처리 방법은 깊이 영상의 현재 화소를 중심으로 적어도 하나의 주변 화소를 포함하는 로컬 영역을 설정하는 단계; 로컬 영역을 복수의 서브 영역으로 분할하는 단계; 서브 영역들 각각에 포함된 주변 화소의 화소값에 기초하여 서브 영역 각각의 대표값을 결정하는 단계; 및 서브 영역들 중 현재 화소를 포함하는 서브 영역의 대표값을 이용하여 상기 현재 화소를 처리하는 단계를 포함할 수 있다.
일실시예에 따른 깊이 영상 처리 방법은 깊이 영상을 업샘플링할 때 필요한 업샘플링 화소를 중심으로 적어도 하나의 깊이 영상의 원본 화소들을 포함하는 로컬 영역을 설정하는 단계; 상기 로컬 영역을 복수의 서브 영역들로 분할하는 단계; 상기 복수의 서브 영역들 각각에 포함된 원본 화소의 화소값에 기초하여 서브 영역들 각각의 대표값을 결정하는 단계; 및 상기 업샘플링 화소를 포함하는 서브 영역의 대표값을 이용하여 상기 업샘플링 화소의 화소값을 결정하는 단계를 포함할 수 있다.
도 1은 일실시예에 따른 깊이 영상 처리 장치의 동작을 도시한 도면이다.
도 2는 일실시예에 따른 깊이 영상 처리 장치의 구조를 도시한 도면이다.
도 3은 일실시예에 따라 깊이 영상에서 로컬 영역을 서브 영역으로 분할하는 과정의 일례이다.
도 4는 일실시예에서 로컬 영역에 적용하는 영역 패턴의 일례이다.
도 5는 일실시예에서 주변 화소들의 화소값들과 서브 영역의 대표값을 비교하여 로컬 영역을 분할하는 과정의 일례이다.
도 6은 일실시예에서 M x M 크기의 로컬 영역을 이용하여 현재 화소를 처리하는 방법의 일례이다.
도 7은 일실시예에서 수평 로컬 영역과 수직 로컬 영역을 이용하여 현재 화소를 처리하는 방법의 일례이다.
도 8은 일실시예에서 따른 깊이 영상 처리 장치를 포함하는 영상 합성 장치의 일례이다.
도 9는 일실시예에 따른 깊이 영상 처리 장치의 동작을 도시한 도면이다.
도 10은 일실시예에 따른 깊이 영상 처리 장치의 구조를 도시한 도면이다.
도 11은 일실시예에 따라 저해상도 깊이 영상을 업샘플링하는 과정의 일례이다.
도 12는 일실시예에 따른 깊이 영상 처리 방법을 도시한 도면이다.
도 13은 일실시예에 따른 로컬 영역 분할 방법을 도시한 도면이다.
도 14는 일실시예에서 통계적 특성을 이용한 로컬 영역 분할 방법을 도시한 도면이다.
도 15는 일실시예에서 통계적 특성을 이용한 서브 영역 재설정 방법을 도시한 도면이다.
도 16은 일실시예에서 수평 로컬 영역과 수직 로컬 영역을 이용한 로컬 영역 분할 방법을 도시한 도면이다.
도 17은 일실시예에 따른 깊이 영상 처리 방법을 도시한 도면이다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 일실시예에 따른 깊이 영상 처리 장치의 동작을 도시한 도면이다.
3차원 영상이나 다른 영상에서 사용하는 깊이 영상은 전송 효율을 높이기 위하여 컬러 영상보다 저해상도로 변환하여 전송할 수 있다.
이때, 업샘플링(up-sampling) 장치(110)는 수신한 저해상도 깊이 영상을 고해상도 깊이 영상으로 업샘플링할 수 있다. 그러나, 업샘플링 과정에서 깊이 영상에 포함된 깊이 정보가 왜곡될 수 있다. 따라서, 도 1에 도시된 바와 같이 깊이 영상 처리 장치(100)가 업샘플링된 깊이 영상을 처리함으로써, 고해상도 깊이 영상의 정밀도를 높일 수 있다.
구체적으로 깊이 영상 처리 장치(100)는 도 3에 도시된 바와 같이 깊이 영상에서 처리할 화소인 현재 화소를 중심으로 로컬 영역을 설정하고, 로컬 영역을 복수의 서브 영역으로 분할하여 현재 화소를 처리할 수 있다. 따라서, 깊이 영상 처리 장치(100)는 객체의 경계에 인접한 현재 화소를 처리할 경우, 현재 화소의 화소값이 배경에 포함된 주변 화소의 화소값에 영향 받는 것을 최소화할 수 있다.
이때, 서브 영역의 형태는 객체의 경계의 형태에 대응할 수 있다. 즉, 깊이 영상 처리 장치(100)가 서브 영역을 정밀하게 분할할수록 객체의 경계를 정밀하게 나타내는 고해상도 깊이 영상을 출력할 수 있다.
일실시예에 따른 깊이 영상 처리 장치(100)의 상세 구성 및 동작은 이하 도 2를 참조하여 상세히 설명한다.
도 2는 일실시예에 따른 깊이 영상 처리 장치의 구조를 도시한 도면이다.
도 2를 참고하면, 깊이 영상 처리 장치(100)는 영역 설정부(110), 영역 분할부(220), 대표값 결정부(230), 영역 결합부(240) 및 화소 처리부(250)를 포함할 수 있다.
영역 설정부(210)는 깊이 영상의 현재 화소를 중심으로 적어도 하나의 주변 화소를 포함하는 로컬 영역을 설정할 수 있다. 이때, 로컬 영역은 N x M 크기의 블록일 수 있다.
영역 분할부(220)는 영역 설정부(210)가 설정한 로컬 영역을 복수의 서브 영역으로 분할할 수 있다.
이때, 영역 분할부(220)는 서브 영역들의 영역 패턴을 미리 설정하고, 설정된 영역 패턴을 적용하여 로컬 영역을 복수의 서브 영역으로 분할할 수 있다. 이때, 영역 패턴은 로컬 영역의 분할 형태를 나타내는 패턴일 수 있다. 또한, 영역 패턴의 형태는 이하 도 4를 참조하여 상세히 설명한다.
이때, 영역 분할부(220)는 M x M 크기의 로컬 영역에 포함된 주변 화소들의 화소값들을 기초로 로컬 영역을 복수의 서브 영역으로 분할할 수 있다. 예를 들어, 영역 분할부(220)는 로컬 영역의 화소 통계적 특성을 이용하여 로컬 영역을 임의의 형태를 가진 서브 영역들로 분할할 수 있다.
구체적으로 영역 분할부(220)는 로컬 영역을 임의의 서브 영역들로 분할하고, 대표값 결정부(230)가 각 서브 영역의 대표 값들을 결정하도록 할 수 있다. 다음으로 영역 분할부(220)는 주변 화소들 각각의 화소값과 서브 영역의 대표 값들을 비교하여 주변 화소가 속할 서브 영역을 결정할 수 있다. 이때, 서브 영역 각각에 포함되는 주변 화소는 변경될 수 있다. 따라서, 대표값 결정부(230)는 서브 영역에 새로 추가된 주변 화소 및 서브 영역에서 삭제된 주변 화소를 고려하여 대표값을 다시 결정할 수 있다. 마지막으로 영역 분할부(220)는 상기 과정을 서브 영역들의 대표값들이 수렴할 때까지 반복하거나, 상기 과정을 일정 횟수 반복할 수 있다.
M x M 크기의 로컬 영역을 분할하는 방법은 이하 도 6을 참조하여 상세히 설명한다.
그리고, 영역 분할부(220)는 로컬 영역에 포함된 주변 화소들의 화소값들을 이용하여 서브 영역의 대표값을 결정하고, 주변 화소들의 화소값들과 서브 영역의 대표값을 비교하여 로컬 영역을 복수의 서브 영역으로 분할할 수도 있다.
구체적으로 영역 분할부(220)는 주변 화소들 중에서 적어도 두 개 이상의 주변 화소를 선택하고, 선택한 주변 화소들의 화소값들을 선택한 주변 화소들을 포함하는 서브 영역의 대표값으로 결정할 수 있다. 다음으로, 영역 분할부(220)는 주변 화소들 각각의 화소값과 서브 영역의 대표 값들을 비교하여 주변 화소가 속할 서브 영역을 결정함으로써, 로컬 영역을 복수의 서브 영역으로 분할할 수도 있다.
주변 화소들의 화소값들과 서브 영역의 대표값을 비교하여 로컬 영역을 분할하는 방법은 이하 도 5를 참조하여 상세히 설명한다.
또한, 영역 분할부(220)는 현재 화소를 포함하는 1 x M 크기의 수평 로컬 영역을 복수의 서브 영역들로 분할하고, 현재 화소를 포함하는 M x 1 크기의 수직 로컬 영역을 복수의 서브 영역들로 분할할 수 있다.
수평 로컬 영역과 수직 로컬 영역을 이용하여 현재 화소를 처리하는 방법은 이하 도 7을 참조하여 상세히 설명한다.
대표값 결정부(230)는 서브 영역들 각각에 포함된 주변 화소의 화소값에 기초하여 서브 영역 각각의 대표값을 결정할 수 있다. 이때, 서브 영역의 대표값은 서브 영역에 포함된 주변 화소들의 화소값들의 평균값, 서브 영역에 포함된 주변 화소들의 산술 평균 계산 결과값, 서브 영역에 포함된 주변 화소들의 가우시안 필터링(Gaussian filtering) 결과값, 및 서브 영역에 포함된 주변 화소들의 로우 패스 필터링(low pass filtering) 결과값, 및 또는 서브 영역에 포함된 주변 화소들의 화소값들을 대표할 수 있는 값일 수 있다.
또한 대표값 결정부(230)는 영역 분할부(220)가 분할한 서브 영역에 속하는 주변 화소들의 화소값을 이용하여 서브 영역의 대표값을 업데이트할 수 있다. 예를 들어, 영역 분할부(220)가 로컬 영역을 분할하는 과정을 반복하는 경우, 대표값 결정부(230)는 로컬 영역을 분할하는 과정에서 서브 영역에 새로 추가된 주변 화소 및 서브 영역에서 삭제된 주변 화소를 고려하여 대표값을 다시 결정할 수 있다. 이때, 대표값 결정부(230)는 다시 결정한 서브 영역의 대표값을 서브 영역의 대표값으로 업데이트할 수 있다.
영역 결합부(240)는 영역 분할부(220)가 분할한 서브 영역들 각각의 대표값들 간의 차이가 임계값 이하인 경우, 영역 분할부(220)가 분할한 서브 영역들을 결합할 수 있다.
예를 들어, 서브 영역들의 대표값들이 유사한 경우, 로컬 영역을 복수의 서브 영역으로 분할하여 현재 화소를 처리한 결과와 분할하지 않은 로컬 영역으로 현재 화소를 처리한 결과가 유사할 수 있다. 따라서, 영역 결합부(240)는 서브 영역들의 대표값들이 유사한 경우, 서브 영역들을 결합함으로써, 영역 분할부(220)가 불필요하게 로컬 영역을 서브 영역으로 분할하는 과정을 수회 반복하는 것을 방지할 수 있다.
이때, 임계값은 깊이 영상 처리 장치(100)의 필터링 성능에 따라 결정될 수 있다. 예를 들어 임계값이 클 경우, 영역 결합부(240)가 서브 영역들을 통합하는 경우가 증가할 수 있다. 이때, 서브 영역이 통합되는 경우가 증가한다는 것은 서브 영역을 이용하여 객체의 경계의 형태를 정밀하게 나타내는 경우가 감소한다는 것을 의미하므로, 깊이 영상 처리 장치(100)가 출력하는 고해상도 깊이 영상의 정밀도가 감소할 수 있다. 반면, 임계값이 작을 경우, 영역 결합부(240)가 서브 영역들을 통합하는 경우가 감소할 수 있다. 이때, 서브 영역이 통합되는 경우가 감소한다는 것은 서브 영역 간의 차이가 작더라도 별도의 서브 영역으로 분할한다는 것을 의미하므로, 연산 과정이 증가할 수 있다. 따라서, 깊이 영상 처리 장치(100)가 고해상도 깊이 영상을 처리하는 시간이 증가할 수 있다.
따라서, 사용자는 깊이 영상 처리 장치(100)의 처리 시간과 정밀도를 고려하여 임계값을 결정함으로써, 깊이 영상 처리 장치(100)의 필터링 성능을 결정할 수 있다.
화소 처리부(250)는 서브 영역들 중 현재 화소를 포함하는 서브 영역의 대표값을 이용하여 상기 현재 화소를 처리할 수 있다. 예를 들어 화소 처리부(250)는 현재 화소의 화소값을 서브 영역들 중 현재 화소를 포함하는 서브 영역의 대표값으로 대치할 수 있다.
또한, 영역 결합부(240)가 서브 영역들을 결합한 경우, 화소 처리부(250)는 결합된 서브 영역의 대표값을 이용하여 현재 화소를 처리할 수 있다.
도 3은 일실시예에 따라 깊이 영상에서 로컬 영역을 서브 영역으로 분할하는 과정의 일례이다.
영역 설정부(210)는 도 3에 도시된 바와 같이 객체가 포함된 깊이 영상에서 로컬 영역(300)을 설정할 수 있다.
다음으로 영역 분할부(220)는 로컬 영역(300)을 객체 내부에 대응하는 서브 영역(310)과 배경에 대응하는 서브 영역(320)으로 분할할 수 있다.
그리고, 대표값 결정부(230)는 서브 영역(310)과 서브 영역(320)의 대표값을 결정할 수 있다.
그 다음으로 영역 분할부(220)는 서브 영역(310)의 대표값과 로컬 영역에 포함된 모든 주변 화소의 화소값 간의 차이 및 서브 영역(320)의 대표값과 로컬 영역에 포함된 모든 주변 화소의 화소값 간의 차이를 계산할 수 있다. 이때, 영역 분할부(220)는 절대차(absolute difference)와 같은 거리 측정(distance measure) 방법을 이용하여 대표값들과 주변 화소값 간의 차이를 계산할 수 있다.
그리고 영역 분할부(220)는 서브 영역(310)의 대표값과 주변 화소의 화소값 간의 차이 및 서브 영역(320)의 대표값과 주변 화소의 화소값 간의 차이에 따라 주변 화소가 포함될 서브 영역을 재설정할 수 있다. 예를 들어 주변 화소의 화소값과 서브 영역(310)의 대표값 간의 차이가 주변 화소의 화소값과 서브 영역(320)의 대표값 간의 차이보다 적은 경우, 영역 분할부(220)는 해당 주변 화소를 서브 영역(310)로 설정할 수 있다. 또한, 주변 화소의 화소값과 서브 영역(310)의 대표값 간의 차이가 주변 화소의 화소값과 서브 영역(320)의 대표값 간의 차이보다 큰 경우, 영역 분할부(220)는 해당 주변 화소를 서브 영역(320)로 설정할 수 있다.
그리고, 영역 분할부(220)는 서브 영역(310)과 서브 영역(320)의 대표값이 특정값에 수렴하거나, 주변 화소가 포함될 서브 영역을 재설정하는 과정이 일정 횟수 반복할 때까지 상기 과정을 수행할 수 있다.
마지막으로 화소 처리부(250)는 서브 영역들 중 현재 화소를 포함하는 서브 영역의 대표값을 이용하여 현재 화소를 처리할 수 있다. 예를 들어 화소 처리부(250)는 화소(311)의 화소값을 서브 영역(310)의 대표값으로 대치하고, 화소(321)의 화소값을 서브 영역(320)의 대표값으로 대치할 수 있다.
도 4는 일실시예에서 로컬 영역에 적용하는 영역 패턴의 일례이다.
로컬 영역에 영역 패턴을 적용하여 로컬 영역을 서브 영역들로 분할 하는 경우, 영역 분할부(220)는 도 4에 도시된 바와 같이 서브 영역들의 영역 패턴(400)들을 미리 설정할 수 있다. 이때, 도 4에서 점선으로 표시된 영역(410)은 영역 패턴(400)들을 로컬 영역에 적용한 경우 영역 패턴(400)으로 분할되지 않고 남은 로컬 영역의 주변 화소들일 수 있다.
또한, 영역 분할부(220)는 영역 패턴(400)들 중에서 로컬 영역에 대응하는 영역 패턴(400)을 선택하므로, 영역 분할부(220)가 미리 설정하는 영역 패턴(400)들 각각은 서로 중복된 영역을 가질 수 있다. 예를 들어 로컬 영역을 수평으로 분할한 서브 영역 중 아래쪽에 위치한 서브 영역을 나타내는 영역 패턴(401)과 로컬 영역을 수직으로 분할한 서브 영역 중 오른쪽을 나타내는 영역 패턴(402)은 로컬 영역의 오른쪽 하단을 중복하여 포함할 수 있다.
그리고, 영역 분할부(220)는 로컬 영역에서 영역 패턴(400)들 각각에 대응하는 주변 화소들의 평탄도, 현재 화소와 영역 패턴(400)들 각각에 대응하는 주변 화소들 간의 거리 측정, 및 영역 패턴(400)들 각각에 대응하는 주변 화소들의 통계적 특성 중 적어도 하나를 이용하여 로컬 영역에 적용할 영역 패턴(400)을 선택할 수 있다.
이때, 대표값 결정부(230)는 영역 분할부(220)가 선택한 영역 패턴에 대응하는 주변 화소들의 대표값을 결정하고, 화소 처리부(250)는 결정한 대표값을 현재 화소의 화소값으로 대치할 수 있다. 예를 들어 로컬 영역이 도 3의 로컬 영역(300)과 같은 경우, 서브 영역(310)은 영역 패턴(403), 또는 영역 패턴(404)와 유사하며 영역 패턴(401)과 상이할 수 있다. 따라서, 현재 화소가 화소(311)이고 로컬 영역이 도 3의 로컬 영역(300)과 같은 경우, 영역 분할부(220)는 영역 패턴(403), 또는 영역 패턴(404)을 이용하여 로컬 영역을 분할할 수 있다.
일실시예에 따른 영역 분할부(220)는 영역 패턴(400)을 이용하여 로컬 영역을 분할함으로써, 로컬 영역을 복수의 서브 영역으로 분할하기 위하여 필요한 연산의 회수와 시간을 감소시킬 수 있다.
도 5는 일실시예에서 주변 화소들의 화소값들과 서브 영역의 대표값을 비교하여 로컬 영역을 분할하는 과정의 일례이다.
도 5는 영역 분할부(220)가 로컬 영역을 2개의 서브 영역으로 분할하는 과정의 일례이다.
먼저 영역 분할부(220)는 로컬 영역에 포함된 주변 화소 중에서 화소값이 가장 큰 화소(501)와 화소값이 가장 작은 화소(502)를 식별할 수 있다.
다음으로 대표값 결정부(230)는 화소(501)의 화소값을 제1 서브 영역의 대표값으로 설정하고, 화소(502)의 화소값을 제2 서브 영역의 대표값으로 결정할 수 있다.
그 다음으로 영역 분할부(220)는 제1 서브 영역의 대표값 및 제2 서브 영역의 대표값과 로컬 영역에 포함된 모든 주변 화소값 간의 차이를 계산할 수 있다. 이때, 영역 분할부(220)는 수학식 1의 조건을 만족시키는 수식을 이용하여 제1 서브 영역의 대표값 및 제2 서브 영역의 대표값과 로컬 영역에 포함된 모든 주변 화소값 간의 차이를 계산할 수 있다.
[수학식 1]
d(x, y) >= 0
d(x, y) = 0 if and only if x = y
d(x, y) = d(y, x)
d(x, z) <= d(x, y) + d(y, z)
이때, x는 제1 서브 영역의 대표값 및 제2 서브 영역의 대표값 중 하나이고, y는 로컬 영역에 포함된 모든 주변 화소값들 중 하나일 수 있다.
그리고, 영역 분할부(220)는 계산한 제1 서브 영역의 대표값 및 제2 서브 영역의 대표값과 로컬 영역에 포함된 모든 주변 화소값 간의 차이에 따라 서브 영역이 포함하는 주변 화소를 결정할 수 있다. 예를 들어 주변 화소(510)의 화소값과 제1 서브 영역의 대표값 간의 차이가 주변 화소(510)의 화소값과 제2 서브 영역의 대표값 간의 차이보다 큰 경우, 영역 분할부(220)는 제2 서브 영역(520)이 주변 화소(510)를 포함하도록 설정할 수 있다. 또한, 영역 분할부(220)는 제1 서브 영역(530)이 로컬 영역에 포함된 주변 화소들 중에서 주변 화소(510)를 제외한 나머지 주변 화소들을 포함하도록 설정할 수 있다.
다음으로, 대표값 결정부(230)는 제1 서브 영역(530)에 포함된 주변 화소들의 화소값의 평균값을 제1 서브 영역(530)의 새로운 대표값으로 결정하고, 제2 서브 영역(520)에 포함된 주변 화소들의 화소값의 평균값을 제2 서브 영역(520)의 새로운 대표값으로 결정할 수 있다.
마지막으로 영역 분할부(220)는 제1 서브 영역(530)의 대표값과 제2 서브 영역(520)의 대표값이 일정값으로 수렴할 때까지 제1 서브 영역의 대표값 및 제2 서브 영역의 대표값과 로컬 영역에 포함된 모든 주변 화소값 간의 차이를 계산하여 로컬 영역을 분할하는 과정을 반복할 수 있다.
도 6은 일실시예에서 M x M 크기의 로컬 영역을 이용하여 현재 화소를 처리하는 방법의 일례이다.
도 6은 로컬 영역이 M x M 크기의 블록인 경우, 영역 분할부(220)가 로컬 영역을 2개의 서브 영역으로 분할하는 과정의 일례이다.
먼저 영역 분할부(220)는 로컬 영역을 제1 서브 영역(610)과 제2 서브 영역(620)로 분할할 수 있다. 이때, 영역 분할부(220)는 K-mean, Mean shift algorithm과 같은 image segmentation알고리즘을 이용하여 로컬 영역을 분할할 수 있다.
다음으로, 대표값 결정부(230)는 제1 서브 영역(610)과 제2 서브 영역(620)의 대표값을 결정할 수 있다. 이때, 제1 서브 영역(610)의 대표값과 제2 서브 영역(620)의 대표값의 차이가 임계값보다 적은 경우, 영역 결합부(240)가 제1 서브 영역(610)과 제2 서브 영역(620)을 결합할 수 있다.
그리고, 화소 처리부(250)는 현재 화소(630)가 포함된 제1 서브 영역(610)의 대표값을 현재 화소(630)의 화소값으로 대치할 수 있다.
도 7은 일실시예에서 수평 로컬 영역과 수직 로컬 영역을 이용하여 현재 화소를 처리하는 방법의 일례이다.
도 7은 현재 화소를 포함하는 1 x M 크기의 수평 로컬 영역과 현재 화소를 포함하는 M x 1 크기의 수직 로컬 영역을 이용하여 현재 화소를 처리하는 과정의 일례이다.
먼저 로컬 영역 설정부(210)는 도 7에 도시된 바와 같이 1 x M 크기의 수평 로컬 영역(711)을 설정할 수 있다.
다음으로 영역 분할부(220)는 수평 로컬 영역(711)을 제1 서브 영역(712)과 제2 서브 영역(713)로 분할할 수 있다.
그 다음으로 대표값 결정부(230)는 제1 서브 영역(712)과 제2 서브 영역(713)의 대표값을 결정할 수 있다. 이때, 제1 서브 영역(712)의 대표값과 제2 서브 영역(713)의 대표값의 차이가 임계값보다 적은 경우, 영역 결합부(240)가 제1 서브 영역(712)과 제2 서브 영역(713)을 결합할 수 있다.
그리고, 화소 처리부(250)는 현재 화소(714)가 포함된 제1 서브 영역(712)의 대표값을 현재 화소(714)의 화소값으로 대치할 수 있다.
깊이 영상 처리 장치(100)는 도 7에 도시된 바와 같이 상기 과정을 깊이 영상의 모든 열(row)에 적용하고, 상기 과정에 따라 처리된 결과를 임시 버퍼에 저장할 수 있다.
그리고 로컬 영역 설정부(210)는 임시 버퍼에 저장된 깊이 영상에 M x 1 크기의 수직 로컬 영역(721)을 설정할 수 있다.
다음으로 영역 분할부(220)는 수직 로컬 영역(721)을 제1 서브 영역(722)과 제2 서브 영역(723)로 분할할 수 있다. 이때, 현재 화소(724)와 제1 서브 영역(722)에 포함된 주변 화소 및 제2 서브 영역(723)에 포함된 주변 화소의 화소값은 수평 로컬 영역(711)에 포함된 서브 영역의 대표값으로 대치된 값일 수 있다.
그 다음으로 대표값 결정부(230)는 제1 서브 영역(722)과 제2 서브 영역(723)의 대표값을 결정할 수 있다. 이때, 제1 서브 영역(722)의 대표값과 제2 서브 영역(723)의 대표값의 차이가 임계값보다 적은 경우, 영역 결합부(240)가 제1 서브 영역(722)과 제2 서브 영역(723)을 결합할 수 있다.
그리고, 화소 처리부(250)는 현재 화소(724)가 포함된 제1 서브 영역(722)의 대표값을 현재 화소(724)의 화소값으로 대치할 수 있다.
깊이 영상 처리 장치(100)는 수직 로컬 영역(721)을 설정하는 과정부터 현재 화소(724)가 포함된 서브 영역의 대표값을 현재 화소(724)의 화소값으로 대치하는 과정을 깊이 영상의 모든 행(column)에 적용하여 고해상도 깊이 영상을 출력할 수 있다.
이때, 깊이 영상 처리 장치(100)는 수평 로컬 영역을 이용하여 처리한 현재 화소와 주변 화소들에 수직 로컬 영역을 설정하여 처리함으로써, 현재 화소가 포함된 열과 행을 모두 고려한 화소값을 현재 화소의 화소값으로 처리할 수 있다.
도 8은 일실시예에서 따른 깊이 영상 처리 장치를 포함하는 영상 합성 장치의 일례이다.
도 8을 참조하면 일실시예에서 따른 영상 합성 장치는 제1 업샘플링 장치(810), 제1 깊이 영상 처리 장치(820), 제2 업샘플링 장치(830), 제2 깊이 영상 처리 장치(840), 및 가상 시점 영상 합성 장치(850)를 포함할 수 있다.
제1 업샘플링 장치(810)는 제1 컬러 영상의 해상도에 따라 제1 깊이 영상의 해상도를 업샘플링할 수 있다. 이때, 제1 컬러 영상과 제1 깊이 영상은 각각 좌시점 컬러 영상과 좌시점 깊이 영상일 수 있다.
제1 깊이 영상 처리 장치(820)는 제1 업샘플링 장치(810)가 업샘플링한 고해상도 깊이 영상에서 현재 화소를 중심으로 로컬 영역을 설정하고, 로컬 영역을 복수의 서브 영역으로 분할하여 현재 화소를 처리함으로써, 객체의 경계에 인접한 현재 화소를 처리할 경우, 배경에 포함된 주변 화소의 영향을 최소화할 수 있다.
제2 업샘플링 장치(830)는 제2 컬러 영상의 해상도에 따라 제21 깊이 영상의 해상도를 업샘플링할 수 있다. 이때, 제2 컬러 영상과 제2 깊이 영상은 각각 우시점 컬러 영상과 우시점 깊이 영상일 수 있다.
제2 깊이 영상 처리 장치(840)는 제2 업샘플링 장치(810)가 업샘플링한 고해상도 깊이 영상에서 현재 화소를 중심으로 로컬 영역을 설정하고, 로컬 영역을 복수의 서브 영역으로 분할하여 현재 화소를 처리함으로써, 객체의 경계에 인접한 현재 화소를 처리할 경우, 배경에 포함된 주변 화소의 영향을 최소화할 수 있다.
가상 시점 영상 합성 장치(850)는 제1 깊이 영상 처리 장치(820)가 처리한 제1 깊이 영상과 제2 깊이 영상 처리 장치(840)가 처리한 제2 깊이 영상, 제1 컬러 영상 및 제2 컬러 영상을 이용하여 가상 시점 컬러 영상을 합성할 수 있다.
도 9는 일실시예에 따른 깊이 영상 처리 장치의 동작을 도시한 도면이다.
일실시예에 따른 깊이 영상 처리 장치는 도 9에 도시된 바와 같이 저해상도 깊이 영상을 고해상도 깊이 영상으로 업샘플링하면서 깊이 영상을 처리하여 고해상도 깊이 영상의 정밀도를 높일 수도 있다.
구체적으로 깊이 영상 처리 장치(900)는 저해상도 깊이 영상에 포함된 원본 화소들 사이에 추가할 업샘플링 화소를 중심으로 로컬 영역을 설정하고, 로컬 영역을 복수의 서브 영역으로 분할하여 업샘플링 화소를 처리할 수 있다. 따라서, 깊이 영상 처리 장치(100)는 객체의 경계에 인접한 업샘플링 화소를 추가할 경우, 추가하는 업샘플링 화소의 화소값이 배경에 포함된 원본 화소의 화소값에 영향 받은 것을 최소화할 수 있다.
도 10은 일실시예에 따른 깊이 영상 처리 장치의 구조를 도시한 도면이다.
도 10을 참고하면, 깊이 영상 처리 장치(900)는 영역 설정부(1010), 영역 분할부(1020), 대표값 결정부(1030), 영역 결합부(1040), 화소값 결정부(1050) 및 화소 추가부(1060)를 포함할 수 있다.
영역 설정부(1010)는 깊이 영상을 업샘플링할 때 필요한 업샘플링 화소를 중심으로 적어도 하나의 깊이 영상의 원본 화소들을 포함하는 로컬 영역을 설정할 수 있다. 이때, 원본 화소는 저해상도 깊이 영상에 포함된 화소이고, 업샘플링 화소는 저해상도 깊이 영상을 고해상도 깊이 영상으로 업샘플링하는 과정에서 원본 화소들 사이에 추가하는 화소일 수 있다.
영역 분할부(1020)는 영역 설정부(1010)가 설정한 로컬 영역을 복수의 서브 영역들로 분할할 수 있다.
대표값 결정부(1030)는 영역 분할부(1020)가 분할한 복수의 서브 영역들 각각에 포함된 원본 화소의 화소값에 기초하여 서브 영역들 각각의 대표값을 결정할 수 있다.
화소값 결정부(1050)는 업샘플링 화소를 포함하는 서브 영역의 대표값을 이용하여 업샘플링 화소의 화소값을 결정할 수 있다.
이때, 영역 분할부(1020)는 서브 영역들의 영역 패턴을 미리 설정하고, 설정된 영역 패턴을 적용하여 로컬 영역을 복수의 서브 영역으로 분할할 수 있다.
또한, 영역 분할부(1020)는 M x M 크기의 로컬 영역에 포함된 원본 화소들의 화소값들을 기초로 로컬 영역을 복수의 서브 영역으로 분할할 수 있다. 예를 들어, 영역 분할부(1020)는 로컬 영역의 화소 통계적 특성을 이용하여 로컬 영역을 임의의 형태를 가진 서브 영역들로 분할할 수 있다.
그리고, 영역 분할부(1020)는 원본 화소들 중에서 적어도 두 개 이상의 원본 화소를 선택하고, 선택한 원본 화소들의 화소값들을 선택한 원본 화소들을 포함하는 서브 영역의 대표값으로 결정할 수 있다. 다음으로, 영역 분할부(1020)는 원본 화소들 각각의 화소값과 서브 영역의 대표 값들을 비교하여 원본 화소가 속할 서브 영역을 결정함으로써, 로컬 영역을 복수의 서브 영역으로 분할할 수도 있다.
대표값 결정부(1030)는 서브 영역들 각각에 포함된 원본 화소의 화소값에 기초하여 서브 영역 각각의 대표값을 결정할 수 있다. 이때, 서브 영역의 대표값은 서브 영역에 포함된 원본 화소들의 화소값들의 평균값, 또는 서브 영역에 포함된 원본 화소들의 화소값들을 대표할 수 있는 값일 수 있다.
또한, 대표값 결정부(1030)는 영역 분할부(1020)가 분할한 서브 영역에 속하는 원본 화소들의 화소값을 이용하여 서브 영역의 대표값을 업데이트할 수 있다. 예를 들어, 영역 분할부(1020)가 로컬 영역을 분할하는 과정을 반복하는 경우, 대표값 결정부(1030)는 로컬 영역을 분할하는 과정에서 서브 영역에 새로 추가된 원본 화소 및 서브 영역에서 삭제된 원본 화소를 고려하여 대표값을 다시 결정할 수 있다. 이때, 대표값 결정부(1030)는 다시 결정한 서브 영역의 대표값을 서브 영역의 대표값으로 업데이트할 수 있다.
영역 결합부(1040)는 영역 분할부(1020)가 분할한 서브 영역들 각각의 대표값들 간의 차이가 임계값 이하인 경우, 영역 분할부(1020)가 분할한 서브 영역들을 결합할 수 있다.
화소값 결정부(1050)는 서브 영역들 중 업샘플링 화소를 포함하는 서브 영역의 대표값을 이용하여 업샘플링 화소의 화소값을 결정할 수 있다. 예를 들어 화소 처리부(1050)는 업샘플링 화소의 화소값을 서브 영역들 중 업샘플링 화소를 포함하는 서브 영역의 대표값으로 결정할 수 있다.
또한, 영역 결합부(1040)가 서브 영역들을 결합한 경우, 화소 처리부(1050)는 결합된 서브 영역의 대표값을 업샘플링 화소의 화소값을 결정할 수 있다.
화소 추가부(1060)는 화소값 결정부(1050)가 화소값을 결정한 업샘플링 화소를 원본 화소들 사이에 추가할 수 있다.
도 11은 일실시예에 따라 저해상도 깊이 영상을 업샘플링하는 과정의 일례이다.
먼저 영역 설정부(1010)는 추가하고자 하는 업샘플링 화소를 중심으로 원본 화소(1111), 원본 화소(1112), 원본 화소(1121) 및 원본 화소(1122)가 포함된 로컬 영역을 설정할 수 있다.
다음으로 영역 분할부(1020)는 로컬 영역을 제1 서브 영역(1110)과 제2 서브 영역(1120)로 분할할 수 있다. 이때, 원본 화소(1111)의 화소값과 원본 화소(1112)의 화소값 간의 차이 및 원본 화소(1121)의 화소값과 원본 화소(1122)의 화소값 간의 차이는 임계값 이하일 수 있다. 또한, 원본 화소(1111)의 화소값과 원본 화소(1112)의 화소값이 동일하고, 원본 화소(1121)의 화소값과 원본 화소(1122)의 화소값이 동일할 수도 있다.
그 다음으로, 대표값 결정부(1030)는 제1 서브 영역(610)과 제2 서브 영역(620)의 대표값을 결정할 수 있다. 이때, 대표값 결정부(1030)는 원본 화소(1111)의 화소값과 원본 화소(1112)의 화소값의 평균값을 제1 서브 영역(1110)의 대표값으로 결정하고, 원본 화소(1121)의 화소값과 원본 화소(1122)의 화소값의 평균값을 제2 서브 영역(1120)의 대표값으로 결정할 수 있다.
이때, 제1 서브 영역(1110)의 대표값과 제2 서브 영역(1120)의 대표값의 차이가 임계값보다 적은 경우, 영역 결합부(1040)가 제1 서브 영역(1110)과 제2 서브 영역(1120)을 결합할 수 있다.
그리고, 화소값 결정부(1050)는 업샘플링 화소가 포함된 서브 영역의 대표값을 업샘플링 화소의 화소값으로 결정할 수 있다.
예를 들어 업샘플링 화소(1113)가 제1 서브 영역(1010)에 포함된 경우, 화소값 결정부(1050)는 업샘플링 화소(1113)의 화소값을 원본 화소(1111)의 화소값과 원본 화소(1112)의 화소값의 평균값으로 결정할 수 있다. 또한, 업샘플링 화소(1123)가 제2 서브 영역(1020)에 포함된 경우, 화소값 결정부(1050)는 업샘플링 화소(1123)의 화소값을 원본 화소(1121)의 화소값과 원본 화소(1122)의 화소값의 평균값으로 결정할 수 있다.
마지막으로 화소 추가부(1060)는 화소값 결정부(1050)가 화소값을 결정한 업샘플링 화소를 원본 화소들 사이에 추가할 수 있다.
도 12는 일실시예에 따른 깊이 영상 처리 방법을 도시한 도면이다.
단계(1210)에서 영역 설정부(210)는 깊이 영상의 현재 화소를 중심으로 적어도 하나의 주변 화소를 포함하는 로컬 영역을 설정할 수 있다.
단계(1220)에서 영역 분할부(220)는 단계(1210)에서 설정한 로컬 영역을 복수의 서브 영역들로 분할할 수 있다.
단계(1230)에서 대표값 결정부(230)는 단계(1220)에서 분할한 서브 영역들의 대표값을 결정할 수 있다. 이때, 대표값 결정부(230)는 서브 영역에 포함된 주변 화소들의 화소값들의 평균값, 또는 서브 영역에 포함된 주변 화소들의 화소값들을 대표할 수 있는 값을 서브 영역의 대표값으로 결정할 수 있다.
단계(1240)에서 영역 결합부(240)는 단계(1230)에서 결정한 서브 영역들 각각의 대표값들 간의 차이가 임계값 이하인지 여부를 확인할 수 있다. 그리고, 서브 영역들 각각의 대표값들 간의 차이가 임계값 이하인 경우, 단계(1250)에서 영역 결합부(240)는 영역 분할부(220)가 분할한 서브 영역들을 결합할 수 있다.
단계(1260)에서 화소 처리부(250)는 서브 영역들 중 현재 화소를 포함하는 서브 영역의 대표값을 이용하여 현재 화소를 처리할 수 있다. 예를 들어 화소 처리부(250)는 현재 화소의 화소값을 현재 화소를 포함하는 서브 영역의 대표값으로 대치할 수 있다. 또한, 단계(1250)을 수행한 경우, 화소 처리부(250)는 현재 화소의 화소값을 단계(1250)에서 결합된 서브 영역의 대표값으로 대치할 수 있다.
도 13은 일실시예에 따른 로컬 영역 분할 방법을 도시한 도면이다. 이때, 도 13의 단계(1310)내지 단계(1360)은 도 12의 단계(1220) 내지 단계(1130)에 대응할 수 있다.
단계(1310)에서 영역 분할부(220)는 미리 설정된 영역 패턴을 적용하여 로컬 영역을 복수의 서브 영역으로 분할할 것인지 확인할 수 있다.
영역 패턴을 적용하는 경우, 단계(1320)에서 영역 분할부(220)는 도 4와 같은 영역 패턴 중에서 적어도 하나의 영역 패턴을 선택하고, 선택한 영역 패턴을 적용하여 로컬 영역을 복수의 서브 영역으로 분할할 수 있다.
영역 패턴을 적용하지 않는 경우, 단계(1330)에서 영역 분할부(220)는 로컬 영역의 통계적 특성을 이용하여 로컬 영역을 복수의 서브 영역으로 분할할 수 있다. 로컬 영역의 통계적 특성을 이용하여 로컬 영역을 복수의 서브 영역으로 분할하는 과정은 이하 도 14를 참조하여 상세히 설명한다.
단계(1340)에서 대표값 결정부(230)는 단계(1320), 또는 단계(1330)에서 분할한 서브 영역들의 대표값을 결정할 수 있다.
단계(1350)에서 영역 분할부(220)는 서브 영역 재설정 횟수가 기 설정된 반복 횟수보다 많은지 여부를 확인할 수 있다. 이때, 서브 영역 재설정 횟수는 단계(1360)이 실행된 횟수이며, 초기값은 0일 수 있다. 또한, 반복 횟수는 통계적으로 서브 영역들의 대표값이 특정값에 수렴하기 위하여 단계(1360)이 수행되어야 하는 횟수일 수 있다. 그리고, 서브 영역 재설정 횟수가 기 설정된 반복 횟수보다 많은 경우, 영역 분할부(220)는 서브 영역들의 대표값이 특정값에 수렴하는 것으로 판단하여 로컬 영역 분할을 종료할 수 있다.
단계(1360)에서 영역 분할부(220)는 로컬 영역의 통계적 특성을 이용하여 서브 영역에 포함되는 주변 화소들을 재설정할 수 있다. 서브 영역을 재설정하는 과정은 이하 도 15를 참조하여 상세히 설명한다.
도 14는 일실시예에서 통계적 특성을 이용한 로컬 영역 분할 방법을 도시한 도면이다. 이때, 도 14의 단계(1410)내지 단계(1430)은 도 13의 단계(1330)에 포함될 수 있다.
단계(1410)에서 영역 분할부(220)는 주변 화소를 이용하여 서브 영역의 대표값을 설정할 수 있다. 구체적으로 영역 분할부(220)는 주변 화소들 중에서 적어도 두 개 이상의 주변 화소를 선택하고, 선택한 주변 화소들의 화소값들을 선택한 주변 화소들을 포함하는 서브 영역의 대표값으로 결정할 수 있다.
단계(1420)에서 영역 분할부(220)는 주변 화소들 각각의 화소값과 단계(1410)에서 설정한 서브 영역의 대표 값들을 비교하고, 비교 결과에 따라 주변 화소들을 그룹화할 수 있다.
단계(1430)에서 영역 분할부(220)는 단계(1420)에서 그룹화한 주변 화소들을 이용하여 로컬 영역을 복수의 서브 영역으로 분할할 수도 있다. 구체적으로 영역 분할부(220)는 단계(1420)에서 그룹화한 주변 화소들을 각각 하나의 서브 영역으로 설정하여 로컬 영역을 분할할 수 있다.
도 15는 일실시예에서 통계적 특성을 이용한 서브 영역 재설정 방법을 도시한 도면이다. 이때, 도 15의 단계(1510) 내지 단계(1540)은 도 13의 단계(1360)에 포함될 수 있다.
단계(1510)에서 영역 분할부(220)는 단계(1340)에서 결정된 제1 서브 영역의 대표값과 주변 화소들의 화소값 간의 차이 및 제2 서브 영역의 대표값과 주변 화소들의 화소값 간의 차이를 계산할 수 있다.
단계(1520)에서 영역 분할부(220)는 단계(1510)에서 계산한 제1 서브 영역의 대표값과 주변 화소들의 화소값 간의 차이가 제2 서브 영역의 대표값과 주변 화소들의 화소값 간의 차이 보다 적은지 여부를 확인할 수 있다.
이때, 제1 서브 영역의 대표값과 주변 화소들의 화소값 간의 차이가 제2 서브 영역의 대표값과 주변 화소들의 화소값 간의 차이 보다 적은 경우, 단계(1530)에서 영역 분할부(220)는 주변 화소가 제1 서브 영역에 포함되도록 제1 서브 영역을 재설정할 수 있다.
또한, 제1 서브 영역의 대표값과 주변 화소들의 화소값 간의 차이가 제2 서브 영역의 대표값과 주변 화소들의 화소값 간의 차이 보다 적지 않은 경우, 단계(1540)에서 영역 분할부(220)는 주변 화소가 제2 서브 영역에 포함되도록 제2 서브 영역을 재설정할 수 있다.
도 16은 일실시예에서 수평 로컬 영역과 수직 로컬 영역을 이용한 로컬 영역 분할 방법을 도시한 도면이다. 이때, 도 16의 단계(1610) 내지 단계(1670)은 도 12의 단계(1220) 내지 단계(1130)에 대응할 수 있다.
단계(1610)에서 로컬 영역 설정부(210)는 1 x M 크기의 수평 로컬 영역을 설정할 수 있다.
단계(1620)에서 영역 분할부(220)는 단계(1610)에서 설정한 수평 로컬 영역을 복수의 서브 영역들로 분할할 수 있다.
단계(1630)에서 대표값 결정부(230)는 단계(1620)에서 분할한 서브 영역들의 대표값을 결정할 수 있다. 이때, 결정된 서브 영역들의 대표값의 차이가 임계값보다 적은 경우, 영역 결합부(240)가 서브 영역들을 결합할 수 있다.
단계(1640)에서 화소 처리부(250)는 단계(1630)에서 결정된 서브 영역의 대표값들 중에서 현재 화소가 포함된 서브 영역의 대표값을 현재 화소의 화소값으로 대치할 수 있다. 이때, 깊이 영상 처리 장치(100)는 단계(1610) 내지 단계(1640)을 깊이 영상의 모든 열(row)에 적용하고, 적용 결과에 따라 대치된 현재 화소의 화소값을 임시 버퍼에 저장할 수 있다.
단계(1650)에서 로컬 영역 설정부(210)는 임시 버퍼에 저장된 깊이 영상에 M x 1 크기의 수직 로컬 영역을 설정하고, 영역 분할부(220)는 수직 로컬 영역을 복수의 서브 영역들로 분할할 수 있다. 이때, 현재 화소와 주변 화소들의 화소값은 단계(1640)에서 처리된 값일 수 있다.
단계(1660)에서 대표값 결정부(230)는 단계(1650)에서 분할된 서브 영역들의 대표값을 결정할 수 있다. 이때, 결정된 서브 영역들의 대표값의 차이가 임계값보다 적은 경우, 영역 결합부(240)가 서브 영역들을 결합할 수 있다.
단계(1670)에서 화소 처리부(250)는 단계(1660)에서 결정된 서브 영역의 대표값들 중에서 현재 화소가 포함된 서브 영역의 대표값을 현재 화소의 화소값으로 대치할 수 있다. 이때, 깊이 영상 처리 장치(100)는 단계(1650) 내지 단계(1670)을 깊이 영상의 모든 행(column)에 적용하여 고해상도 깊이 영상을 출력할 수 있다.
그리고, 도 16에서는 수평 로컬 영역을 수직 로컬 영역보다 먼저 사용하였으나 순서는 변경될 수 있다. 예를 들어 깊이 영상 처리 장치(100)는 단계(1650) 내지 단계(1670)을 먼저 수행하여 깊이 영상의 모든 행(column)에 적용하고, 적용 결과에 따라 대치된 현재 화소의 화소값을 임시 버퍼에 저장할 수 있다. 다음으로 깊이 영상 처리 장치(100)는 단계(1610) 내지 단계(1640)을 깊이 영상의 모든 열(row)에 적용하여 고해상도 깊이 영상을 출력할 수도 있다.
도 17은 일실시예에 따른 깊이 영상 처리 방법을 도시한 도면이다.
단계(1710)에서 영역 설정부(1010)는 깊이 영상의 원본 화소 사이에 추가할 업샘플링 화소를 중심으로 적어도 하나의 원본 화소를 포함하는 로컬 영역을 설정할 수 있다.
단계(1720)에서 영역 분할부(1020)는 단계(1710)에서 설정한 로컬 영역을 복수의 서브 영역들로 분할할 수 있다.
단계(1730)에서 대표값 결정부(1030)는 단계(1720)에서 분할한 서브 영역들의 대표값을 결정할 수 있다. 이때, 대표값 결정부(1030)는 서브 영역에 포함된 주변 화소들의 화소값들의 평균값, 또는 서브 영역에 포함된 주변 화소들의 화소값들을 대표할 수 있는 값을 서브 영역의 대표값으로 결정할 수 있다.
단계(1740)에서 영역 결합부(1040)는 단계(1730)에서 결정한 서브 영역들 각각의 대표값들 간의 차이가 임계값 이하인지 여부를 확인할 수 있다. 그리고, 서브 영역들 각각의 대표값들 간의 차이가 임계값 이하인 경우, 단계(1750)에서 영역 결합부(1040)는 영역 분할부(1020)가 분할한 서브 영역들을 결합할 수 있다.
단계(1760)에서 화소값 결정부(1050)는 서브 영역들 중 업샘플링 화소를 포함하는 서브 영역의 대표값을 이용하여 업샘플링 화소의 화소값을 결정할 수 있다. 예를 들어 화소값 결정부(10750)는 업샘플링 화소의 화소값을 현재 화소를 포함하는 서브 영역의 대표값으로 결정할 수 있다. 또한, 단계(1750)을 수행한 경우, 화소 처리부(1050)는 업샘플링 화소의 화소값을 단계(1750)에서 결합된 서브 영역의 대표값으로 결정할 수 있다.
단계(1770)에서 화소 추가부(1060)는 단계(1760)에서 결정한 화소값에 따라 업샘플링 화소를 원본 화소들 사이에 추가할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (25)
- 깊이 영상의 현재 화소를 중심으로 적어도 하나의 주변 화소를 포함하는 로컬 영역을 설정하는 영역 설정부;로컬 영역을 복수의 서브 영역으로 분할하는 영역 분할부;서브 영역들 각각에 포함된 주변 화소의 화소값에 기초하여 서브 영역 각각의 대표값을 결정하는 대표값 결정부; 및서브 영역들 중 현재 화소를 포함하는 서브 영역의 대표값을 이용하여 상기 현재 화소를 처리하는 화소 처리부를 포함하는 깊이 영상 처리 장치.
- 제1항에 있어서,상기 영역 분할부는,로컬 영역의 분할 형태를 나타내는 영역 패턴을 적용하여 로컬 영역을 복수의 서브 영역으로 분할하는 깊이 영상 처리 장치.
- 제1항에 있어서,상기 영역 분할부는,로컬 영역에 포함된 주변 화소들의 화소값들을 기초로 로컬 영역을 복수의 서브 영역으로 분할하는 깊이 영상 처리 장치.
- 제1항에 있어서,상기 영역 분할부는,로컬 영역에 포함된 주변 화소들의 화소값들을 이용하여 서브 영역의 대표값을 결정하고, 상기 주변 화소들의 화소값들과 서브 영역의 대표값을 비교하여 로컬 영역을 복수의 서브 영역으로 분할하는 깊이 영상 처리 장치.
- 제4항에 있어서,상기 대표값 결정부는,분할된 서브 영역에 속하는 주변 화소들의 화소값을 이용하여 서브 영역의 대표값을 업데이트하는 깊이 영상 처리 장치.
- 제1항에 있어서,상기 영역 분할부는,로컬 영역에서 상기 현재 화소의 수평 방향에 위치한 주변 화소들을 포함하는 수평 로컬 영역을 서브 영역으로 분할하고, 상기 현재 화소의 수직 방향에 위치한 주변 화소들을 포함하는 수직 로컬 영역을 서브 영역으로 분할하는 깊이 영상 처리 장치.
- 제1항에 있어서,상기 분할된 서브 영역들 각각의 대표값들 간의 차이가 임계값 이하인 경우, 상기 분할된 서브 영역들을 결합하는 영역 결합부를 더 포함하고,상기 화소 처리부는,상기 결합된 서브 영역의 대표값을 이용하여 현재 화소를 처리하는 깊이 영상 처리 장치.
- 깊이 영상을 업샘플링할 때 필요한 업샘플링 화소를 중심으로 적어도 하나의 깊이 영상의 원본 화소들을 포함하는 로컬 영역을 설정하는 영역 설정부;상기 로컬 영역을 복수의 서브 영역들로 분할하는 영역 분할부;상기 복수의 서브 영역들 각각에 포함된 원본 화소의 화소값에 기초하여 서브 영역들 각각의 대표값을 결정하는 대표값 결정부; 및상기 업샘플링 화소를 포함하는 서브 영역의 대표값을 이용하여 상기 업샘플링 화소의 화소값을 결정하는 화소값 결정부를 포함하는 깊이 영상 처리 장치.
- 제8항에 있어서,상기 영역 분할부는,로컬 영역의 분할 형태를 나타내는 영역 패턴을 적용하여 로컬 영역을 복수의 서브 영역으로 분할하는 깊이 영상 처리 장치.
- 제8항에 있어서,상기 영역 분할부는,로컬 영역에 포함된 원본 화소들의 화소값들을 이용하여 서브 영역의 대표값을 결정하고, 상기 원본 화소들의 화소값들과 서브 영역의 대표값을 비교하여 로컬 영역을 복수의 서브 영역으로 분할하는 깊이 영상 처리 장치.
- 제10항에 있어서,상기 대표값 결정부는,분할된 서브 영역에 속하는 원본 화소들의 화소값을 이용하여 서브 영역의 대표값을 업데이트하는 깊이 영상 처리 장치.
- 제8항에 있어서,상기 분할된 서브 영역들 각각의 대표값들 간의 차이가 임계값 이하인 경우, 상기 분할된 서브 영역들을 결합하는 영역 결합부를 더 포함하고,상기 화소값 결정부는,상기 결합된 서브 영역의 대표값을 이용하여 업샘플링 화소의 화소값을 결정하는 깊이 영상 처리 장치.
- 깊이 영상의 현재 화소를 중심으로 적어도 하나의 주변 화소를 포함하는 로컬 영역을 설정하는 단계;로컬 영역을 복수의 서브 영역으로 분할하는 단계;서브 영역들 각각에 포함된 주변 화소의 화소값에 기초하여 서브 영역 각각의 대표값을 결정하는 단계; 및서브 영역들 중 현재 화소를 포함하는 서브 영역의 대표값을 이용하여 상기 현재 화소를 처리하는 단계를 포함하는 깊이 영상 처리 방법.
- 제13항에 있어서,상기 분할하는 단계는,로컬 영역의 분할 형태를 나타내는 영역 패턴을 적용하여 로컬 영역을 복수의 서브 영역으로 분할하는 깊이 영상 처리 방법.
- 제13항에 있어서,상기 분할하는 단계는,로컬 영역에 포함된 주변 화소들의 화소값들을 기초로 로컬 영역을 복수의 서브 영역으로 분할하는 깊이 영상 처리 방법.
- 제13항에 있어서,상기 분할하는 단계는,로컬 영역에 포함된 주변 화소들의 화소값들을 이용하여 서브 영역의 대표값을 결정하고, 상기 주변 화소들의 화소값들과 서브 영역의 대표값을 비교하여 로컬 영역을 복수의 서브 영역으로 분할하는 깊이 영상 처리 방법.
- 제16항에 있어서,상기 대표값을 결정하는 단계는,분할된 서브 영역에 속하는 주변 화소들의 화소값을 이용하여 서브 영역의 대표값을 업데이트하는 깊이 영상 처리 방법.
- 제13항에 있어서,상기 분할하는 단계는,로컬 영역에서 상기 현재 화소의 수평 방향에 위치한 주변 화소들을 포함하는 수평 로컬 영역을 서브 영역으로 분할하고, 상기 현재 화소의 수직 방향에 위치한 주변 화소들을 포함하는 수직 로컬 영역을 서브 영역으로 분할하는 깊이 영상 처리 방법.
- 제13항에 있어서,상기 분할된 서브 영역들 각각의 대표값들 간의 차이가 임계값 이하인 경우, 상기 분할된 서브 영역들을 결합하는 단계를 더 포함하고,상기 현재 화소를 처리하는 단계는,상기 결합된 서브 영역의 대표값을 이용하여 현재 화소를 처리하는 깊이 영상 처리 방법.
- 깊이 영상을 업샘플링할 때 필요한 업샘플링 화소를 중심으로 적어도 하나의 깊이 영상의 원본 화소들을 포함하는 로컬 영역을 설정하는 단계;상기 로컬 영역을 복수의 서브 영역들로 분할하는 단계;상기 복수의 서브 영역들 각각에 포함된 원본 화소의 화소값에 기초하여 서브 영역들 각각의 대표값을 결정하는 단계; 및상기 업샘플링 화소를 포함하는 서브 영역의 대표값을 이용하여 상기 업샘플링 화소의 화소값을 결정하는 단계를 포함하는 깊이 영상 처리 방법.
- 제20항에 있어서,상기 분할하는 단계는,로컬 영역의 분할 형태를 나타내는 영역 패턴을 적용하여 로컬 영역을 복수의 서브 영역으로 분할하는 깊이 영상 처리 방법.
- 제20항에 있어서,상기 분할하는 단계는,로컬 영역에 포함된 원본 화소들의 화소값들을 이용하여 서브 영역의 대표값을 결정하고, 상기 원본 화소들의 화소값들과 서브 영역의 대표값을 비교하여 로컬 영역을 복수의 서브 영역으로 분할하는 깊이 영상 처리 방법.
- 제22항에 있어서,상기 대표값 결정부는,분할된 서브 영역에 속하는 원본 화소들의 화소값을 이용하여 서브 영역의 대표값을 업데이트하는 깊이 영상 처리 방법.
- 제20항에 있어서,상기 분할된 서브 영역들 각각의 대표값들 간의 차이가 임계값 이하인 경우, 상기 분할된 서브 영역들을 결합하는 단계를 더 포함하고,상기 업샘플링 화소의 화소값을 결정하는 단계는,상기 결합된 서브 영역의 대표값을 이용하여 업샘플링 화소의 화소값을 결정하는 깊이 영상 처리 방법.
- 제13항 내지 제24항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록된 컴퓨터에서 판독 할 수 있는 기록 매체.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261668555P | 2012-07-06 | 2012-07-06 | |
US61/668,555 | 2012-07-06 | ||
KR10-2012-0145138 | 2012-12-13 | ||
KR1020120145138A KR20140006695A (ko) | 2012-07-06 | 2012-12-13 | 깊이 영상 처리 장치 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014007450A1 true WO2014007450A1 (ko) | 2014-01-09 |
Family
ID=49882182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2013/001357 WO2014007450A1 (ko) | 2012-07-06 | 2013-02-21 | 깊이 영상 처리 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2014007450A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016104990A1 (ko) * | 2014-12-23 | 2016-06-30 | 삼성전자 주식회사 | 컨텐츠 제공 장치, 디스플레이 장치 및 그 제어 방법 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090004265A (ko) * | 2007-07-06 | 2009-01-12 | (주)플렛디스 | 실시간 입체 콘텐츠 제공시스템 및 제공방법 |
WO2011033668A1 (ja) * | 2009-09-18 | 2011-03-24 | 株式会社 東芝 | 視差画像生成装置 |
WO2011046607A2 (en) * | 2009-10-14 | 2011-04-21 | Thomson Licensing | Filtering and edge encoding |
US20110285813A1 (en) * | 2009-01-27 | 2011-11-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Depth and Video Co-Processing |
KR20120065093A (ko) * | 2010-12-10 | 2012-06-20 | 광주과학기술원 | 깊이 지도 생성 방법 및 장치 |
-
2013
- 2013-02-21 WO PCT/KR2013/001357 patent/WO2014007450A1/ko active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090004265A (ko) * | 2007-07-06 | 2009-01-12 | (주)플렛디스 | 실시간 입체 콘텐츠 제공시스템 및 제공방법 |
US20110285813A1 (en) * | 2009-01-27 | 2011-11-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Depth and Video Co-Processing |
WO2011033668A1 (ja) * | 2009-09-18 | 2011-03-24 | 株式会社 東芝 | 視差画像生成装置 |
WO2011046607A2 (en) * | 2009-10-14 | 2011-04-21 | Thomson Licensing | Filtering and edge encoding |
KR20120065093A (ko) * | 2010-12-10 | 2012-06-20 | 광주과학기술원 | 깊이 지도 생성 방법 및 장치 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016104990A1 (ko) * | 2014-12-23 | 2016-06-30 | 삼성전자 주식회사 | 컨텐츠 제공 장치, 디스플레이 장치 및 그 제어 방법 |
US10638131B2 (en) | 2014-12-23 | 2020-04-28 | Samsung Electronics Co., Ltd. | Content providing apparatus, display apparatus, and control method therefor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017164441A1 (ko) | 비디오 코딩 시스템에서 인터 예측 방법 및 장치 | |
WO2019240448A1 (ko) | 성분 간 참조 기반의 비디오 신호 처리 방법 및 장치 | |
WO2014200313A1 (ko) | 움직임 정보를 획득하기 위한 방법 | |
WO2014003421A1 (ko) | 비디오 부호화 및 복호화를 위한 방법 | |
WO2020062616A1 (zh) | 显示面板的伽马值调节方法、装置及显示设备 | |
WO2020130496A1 (en) | Display apparatus and control method thereof | |
WO2018048171A1 (en) | Image processing apparatus and recording medium | |
WO2012096459A2 (en) | Method and apparatus for removing image blocking artifact by using transformation coefficient | |
WO2023282614A1 (ko) | 텍스처 영상 생성 방법 및 장치 | |
WO2016056856A1 (ko) | 무결성 검증 데이터 생성 방법 및 시스템 | |
WO2021029646A1 (ko) | 하이 레벨 영상 분할과 영상 부호화/복호화 방법 및 장치 | |
EP3665646A1 (en) | Method and apparatus for processing image and computer program product thereof | |
WO2018097677A1 (en) | Image processing apparatus, image processing method, and computer-readable recording medium thereof | |
WO2014189236A1 (ko) | 무손실 이미지 압축 및 복원 방법과 이를 수행하는 장치 | |
WO2019132548A1 (en) | Method and apparatus for processing image and computer program product thereof | |
WO2014007450A1 (ko) | 깊이 영상 처리 장치 및 방법 | |
WO2020135022A1 (zh) | 显示面板的画面优化方法、装置及计算机可读存储介质 | |
WO2019135524A1 (ko) | 그래디언트의 적응적 가중에 기반한 에지 위치 결정 장치 및 방법 | |
WO2015088284A1 (ko) | 비디오 부호화 및 복호화에서의 픽셀 프로세싱 방법 및 장치 | |
WO2019027280A1 (en) | METHOD AND APPARATUS FOR MOTION ESTIMATING FOR A PLURALITY OF FRAMES | |
WO2023042989A1 (ko) | 데이터 스케일을 고려한 덧셈 연산 방법 및 이를 위한 하드웨어 가속기, 이를 이용한 컴퓨팅 장치 | |
WO2023038219A1 (ko) | 이미지를 선명화하는 전자 장치 및 그 동작 방법 | |
WO2019240450A1 (ko) | 잔차 계수 부호화/복호화 방법 및 장치 | |
WO2022250372A1 (ko) | Ai에 기반한 프레임 보간 방법 및 장치 | |
WO2021040251A1 (en) | Intra prediction method and device using the same, encoding and decoding method and device using the same based on intra prediction |
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: 13813928 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: 13813928 Country of ref document: EP Kind code of ref document: A1 |