KR102165078B1 - 공간적으로 스케일러블한 비디오 코딩을 위한 적응적 업샘플링 - Google Patents

공간적으로 스케일러블한 비디오 코딩을 위한 적응적 업샘플링 Download PDF

Info

Publication number
KR102165078B1
KR102165078B1 KR1020147004291A KR20147004291A KR102165078B1 KR 102165078 B1 KR102165078 B1 KR 102165078B1 KR 1020147004291 A KR1020147004291 A KR 1020147004291A KR 20147004291 A KR20147004291 A KR 20147004291A KR 102165078 B1 KR102165078 B1 KR 102165078B1
Authority
KR
South Korea
Prior art keywords
elements
signal
quality level
metric
settings
Prior art date
Application number
KR1020147004291A
Other languages
English (en)
Other versions
KR20140070535A (ko
Inventor
루카 로사토
귀도 메아르디
Original Assignee
루카 로사토
귀도 메아르디
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 루카 로사토, 귀도 메아르디 filed Critical 루카 로사토
Publication of KR20140070535A publication Critical patent/KR20140070535A/ko
Application granted granted Critical
Publication of KR102165078B1 publication Critical patent/KR102165078B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/403Edge-driven scaling; Edge-based scaling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)
  • Television Systems (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

신호 프로세서가 제2 (상위) 품질 레벨에서의 신호의 렌디션의 다수의 엘리먼트들로 업샘플링하기 위해 제1 품질 레벨에서의 신호의 렌디션으로부터 엘리먼트를 선택한다. 신호 프로세서는 제1 품질 레벨에서의 신호의 렌디션에서 선택된 엘리먼트 주위의 엘리먼트들의 세팅들에 기초하여 메트릭을 생성한다. 메트릭은 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트와 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트 사이의 경계를 규정한다. 신호 프로세서는 제2 품질 레벨에서의 신호에서 다수의 엘리먼트들에 대한 세팅들을 계산하기 위해 메트릭을 활용한다. 선택된 엘리먼트에 관한 경계의 위치 및 배향은 선택된 엘리먼트 주위의 엘리먼트들의 세팅들에 의존한다.

Description

공간적으로 스케일러블한 비디오 코딩을 위한 적응적 업샘플링{ADAPTIVE UPSAMPLING FOR SPATIALLY SCALABLE VIDEO CODING}
CPU(중앙 처리 유닛) 효율은 신호의 인코딩 및 디코딩 모두 동안 문제가 된다. 최근 세대 프로세서들은 각 단일 칩 상에 수백 개까지의 단순 코어들을 가지며 점점 더 병렬되고 있다.
유감스럽게도, 본질적으로, 전통적인 MPEG(Moving Pictures Expert Group) 계열 코덱들은 구조적으로 비-병렬적이다. 이는, 전통적인 MPEG 계열 코덱들이 블록-기반이고, 효율적인 압축을 달성하기 위해 모든 블록들이 어떤 방식으로든 서로에 대해 의존하도록 형성되어야 하기 때문에, 각각의 이미지 블록이 순차적으로 인코딩되고 디코딩되어야만 한다는 점에 기인한다.
MPEG 코딩에 소위 "슬라이스(slices)"(기본적으로, 서로 옆에 놓이는 별개의 비디오들인 것처럼, 서로에 대해 독립적으로 취급되는 이미지의 조각들)의 도입에 의해, H.264 표준은 병렬로 조금의 스레드(thread)들(전형적으로 2개 또는 3개의 스레드들)의 프로세싱을 허용한다. 디-블로킹(de-blocking)(즉, 더욱 균일한 이미지를 생성하기 위해 블록들 사이의 전이부들(transitions)을 "평활화(smooth)하는" 필터)과 같은 중요한 알고리즘 엘리먼트들은 조건부 명령들로 채워진 전형적인 글로벌 동작들이며, 이들은 병렬 CPU들을 포함하는 애플리케이션들에 적합하지 않다.
오늘날의 CPU들 및 GPU들(Graphics Processing Units)은 통상적으로 매우 강력하며; 하나의 GPU는 정보의 병렬 프로세싱을 수행하기 위해 수백 개의 컴퓨팅 코어들(computing cores)을 포함할 수 있다. 현재의 기술을 이용하는 경우, 더 많은 부분의 이미지가 프로세싱을 위해 프로세서 캐시(processor cache)에 저장될 수 있다. 이미지들을 다수의 작은 블록들로 해체할 필요성은 ― 이는 MPEG가 창설될 때 영향력이 큰 요인(driving factor)이었는데, 그 시대의 프로세서들은 한번에 매우 작은 덩어리들의 비디오 데이터만을 다룰 수 있고 그리고 순차적으로만 다룰 수 있기 때문이다 ―, 더 이상 현대의 CPU들 및 GPU들에 적용되지 않는다. 따라서, 이용가능한 프로세싱 능력의 대부분은, 아티팩트들이 신호에 불필요하게 도입되는 것을 차단하면서, MPEG과 같은 유형들의 인코딩/디코딩을 구현할 때 사용되지 않을 수 있다.
또한, MPEG이 개발되었을 당시의 시대와 비교하면, 현대의 애플리케이션들은 통상적으로 훨씬 더 높은 선명도 비디오 인코딩과 훨씬 더 높은 전반적인 재생 품질을 요구한다. 고화질(HD), 고품질 비디오들에서, 낮은 디테일을 갖는 영역들(잠재적으로는 아웃 포커스(out of focus)까지도)과 매우 정교한 상세함을 갖는 구역들 사이에는 훨씬 더 큰 차이가 존재한다. 이는, 관련 주파수들의 범위가 훨씬 넓어지기 때문에, MPEG에서 사용되는 바와 같은 주파수-도메인 변환들을 사용하는 것이 이미지 프로세싱 및 재생에 훨씬 더 적합하지 않게 한다.
게다가, 더 높은 해상도 이미지들은 더 많은 양의 카메라 노이즈 및/또는 필름 그레인(film grain), 즉, 시청(viewing)과는 완전히 무관하지만 인코딩하기 위해 수많은 비트들을 요구할 수 있는 매우 상세한 고주파 픽셀 전이들을 포함한다.
결국, 종래의 코덱들은 코덱들은 의료 영상, 과학 영상 등과 같은 분야들에서 점점 더 중요해지고 있는 3D 또는 체적(volumetric) 이미징을 효율적으로 수행하기에 부적합하다.
오늘날 대부분의 타겟 디바이스들은 상이한 재생 해상도들 및 상이한 재생 품질을 지원한다. 확장성(scalability)을 위한 현재의 MPEG 표준인, 소위 SVC(Scalable Video Coding)는 업계에 우호적으로 수용되지 않았고 거의 채택되지 않은 것으로 나타나는데, 이는 너무 복잡하고 대역폭이 다소 비효율적인 것으로 간주되기 때문이다.
더욱이, 인코딩된 비디오들이 풍부하며; 즉, 콘텐츠 제공자는 통상적으로 각각의 특정 비디오 스트림에 대해 인코더 파라미터들을 커스터마이징하고 실험할 시간이 없다. 현재, 콘텐츠 제공자들은 비디오를 성공적으로 인코딩하기 위해 (인코딩을 수행하고 결과들의 품질을 검사할 때마다) 수많은 인코딩 파라미터들을 수동으로 수정해야만 하는 것을 싫어한다.
인코딩/디코딩을 위한 MPEG 표준들에 대한 대안으로서, 소위 이미지 피라미드들(image pyramids)이 인코딩/디코딩을 위해 사용되어 왔다. 예를 들어, 라플라시안 피라미드들(Laplacian pyramids)을 이용하면, 종래의 시스템들은 가우시안 필터들(Gausian filters)을 이용하여 낮은 해상도 이미지들을 생성하고, 그 후, 엄격하게 프로그래밍된 디코더를 통해서 낮은 해상도 레벨들로부터 다시 오리지널 레벨로 업샘플링함으로써 획득된 이미지들간의 차이들의 피라미드를 생성하였다.
종래의 라플라시안 피라미드 인코딩의 사용은 포기되었다. 이러한 변환들의 하나의 결점은, 저자들이 다운샘플링된 이미지 내에서의 왜곡들/결함들을 방지하려고 항상 노력했고, 그래서 그들은 항상, 자신의 어떠한 정보도 부가하지 않는 유일한 형태의 필터인, 가우시안 필터링을 사용했다는 것이다. 그러나, 가우시안 필터링이 갖는 극복할 수 없는 문제는, 가우시안 필터링이 블러링 효과(blurring effect)를 도입하기 때문에, 이에 의해 더 큰 해상도들로 다시 업스케일링할 때, 오리지널 이미지를 재현(reproduce)하기 위해 과도한 양의 이미지 보정 정보가 필요하게 된다는 것이다. 다시 말해, 종래의 필터들을 이용한 업샘플링은 재구성된 이미지에서 들쭉날쭉한(jagged) 또는 흐릿한(blurry) 에지들을 발생시킨다. 들쭉날죽한 또는 흐릿한 에지들은 상당한 양의 잔차 데이터를 사용하여 정정될 필요성이 있고, 이는 이러한 인코딩 기법의 상위 해상도 애플리케이션들에서의 사용에 바람직하지 않게 한다.
본원의 실시예들은 신호의 하위 해상도 랜디션(rendition)으로부터 업샘플링할 때 충분한 정확도로 신호를 재구성할 때 필요한 잔차 데이터의 양을 감소시키기 위한 종래의 시스템들 및 방법들과는 상이하다. 예를 들어, 본원의 실시예들은 업샘플링 동안 식별된 천이 영역을 선명(sharpen)하게 하고 "디블렌딩(deblend)"하기 위해 하나 이상의 상이한 업샘플링 동작들을 활용하는 고유한 방식들에 관한 것이다. 제안된 업샘플링 기법의 특정한 구성은, 업샘플링 동작이 상위 품질 레벨들의 더욱 정확한 재구성을 가능하게 하기 때문에 계층에서 연속적인 상위 품질 레벨들로 신호를 디코딩할 때 신호를 재구성하기 위해 필요한 데이터량을 감소시킨다.
더욱 구체적으로는, 본원의 일 실시예는 계층에서 상위 레벨 품질로 신호를 재구성하도록 구성된 신호 프로세서를 포함한다. 예를 들어, 신호 프로세서는 제2 (상위) 품질 레벨의 신호의 렌디션의 다수의 엘리먼트들로 업샘플링하기 위해 제1 품질 레벨의 신호의 렌디션으로부터 엘리먼트를 선택한다. 일 실시예에서, 신호 프로세서는 제1 품질 레벨의 신호의 렌디션에서 선택된 엘리먼트 주위의 엘리먼트들의 세팅들에 기초하여 신호의 각 엘리먼트에 대해 메트릭을 생성한다. 메트릭은 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트와 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트 사이의 경계를 정의한다. 선택된 엘리먼트에 관한 경계의 위치 및 배향은 선택된 엘리먼트 주위의 엘리먼트들의 세팅들에 의존한다. 신호 프로세서는 제2 품질 레벨에서의 신호에서 다수의 엘리먼트들에 대한 세팅들을 계산하기 위해 (경계를 정의하는) 생성된 메트릭을 활용한다. 그에 따라, 선택된 엘리먼트 주위의 엘리먼트들의 세팅들은 선택된 엘리먼트를 다수의 엘리먼트들로 어떻게 업샘플링하는지를 나타낸다.
실시예에 의존하여, 메트릭에 의해 정의된 경계는 선, 평면형 표면 등일 수 있다. 업샘플링된 신호는 2차원 이미지(예를 들어, 픽처들, 비디오 프레임들, 2D 모션 맵들 등), 3차원(예를 들어, 3D/체적 이미지들, 홀로그래픽 이미지들, CAT-스캔들, 의료/과학 이미지들, 3D 모션 맵들 등), 3차원 이상을 특징으로 하는 신호, 시간 기반 신호(예를 들어, 오디오 신호, 비디오 신호 등) 등일 수 있다. 특정한 신호 엘리먼트들에 할당된 세팅들은 상이한 컬러 평면들의 컬러들(예를 들어, RGB, YUV, HSV 등), 속성들(예를 들어, 밀도, 방사능, 조직 타입, 지형 타입, 온도, 이미지 특성들을 정의하는 파라미터들 등), (예를 들어, 카테시안 좌표, 극 좌표 등에서 표현되는) 모션 벡터들, 등을 나타낼 수 있다. 단순화를 위해, 본 명세서에 예시된 실시예들은 예를 들어, 픽처와 같은 세팅들의 2D 평면들(예를 들어, 적합한 컬러 공간에서 2D 이미지들)로서 디스플레이되는 이미지들을 종종 참조한다.
일 실시예에서, 신호 프로세서는 선택된 엘리먼트의 세팅이 업샘플링될 선택된 엘리먼트 주위의 엘리먼트들에 의해 정의된 범위내에 있다는 검출에 응답하여 메트릭을 생성한다. 범위내에 있다는 것은, 선택된 엘리먼트가 천이 영역 또는 에지상에 있다는 것을 나타낸다. 이러한 실시예에 따르고, 선택된 엘리먼트가 천이 영역상에 있는지를 테스트하기 위해, 신호 프로세서는 선택된 엘리먼트 주위의 엘리먼트의 제1 세트에서의 적어도 하나의 엘리먼트의 세팅들에 기초하여 제1 값을 생성한다. 신호 프로세서는 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트에서의 적어도 2개의 엘리먼트들의 세팅들에 기초하여 제2 값을 생성한다. 그 후, 신호 프로세서는 2개의 값들 중 더 큰 값이 범위의 상한을 정의하고 다른 값이 범위의 하한을 정의하는 범위를 생성한다. 상기 언급한 바와 같이, 선택된 엘리먼트의 세팅이 범위내에 있으면, 신호 프로세서는 선택된 엘리먼트가 천이 영역 또는 에지 상에 존재한다는 것을 가정한다.
추가의 실시예들에 따르면, 신호 프로세서는 선택된 엘리먼트를 다수의 엘리먼트들로 업샘플링하기 위한 기초로서 메트릭을 활용한다. 예를 들어, 신호 프로세서는 다수의 엘리먼트들(즉, 한 단계 높은 품질 레벨로 업샘플링된 엘리먼트들) 중에서 메트릭에 의해 정의된 경계와 교차하는 제1 엘리먼트를 식별한다. 제1 엘리먼트에 대해, 신호 프로세서는 제1 엘리먼트에 대한 세팅을 계산하기 위해 메트릭을 활용한다. 신호 프로세서는 엘리먼트들의 제1 세트에 할당된 세팅과 엘리먼트들의 제2 세트에 할당된 세팅 사이에서 제1 엘리먼트의 값을 설정한다.
추가로, 신호 프로세서는 다수의 엘리먼트들 중 메트릭에 의해 정의된 경계와 교차하지 않는 제2 엘리먼트를 식별한다. 제2 엘리먼트에 대해: 제2 엘리먼트 모두가 메트릭에 의해 정의된 경계와 엘리먼트들의 제1 세트(예를 들어, 범위 한계를 정의하는 엘리먼트들)의 사이에 존재한다는 검출에 응답하여, 신호 프로세서는 제2 엘리먼트를 엘리먼트들의 제1 세트에 할당된 세팅과 실질적으로 동일한 값으로 설정한다.
유사한 방식으로, 신호 프로세서는 다수의 엘리먼트들(한 단계 높은 품질 레벨에서의 업샘플링된 엘리먼트들)에서 잔류 엘리먼트들을 식별하고, 각 엘리먼트에 대한 세팅들을 계산하기 위해 메트릭을 활용한다.
또 다른 실시예들에서, 신호 프로세서는 엘리먼트를 업샘플링하기 위해 각각의 메트릭을 사용할지 또는 엘리먼트를 업샘플링하기 위해 대안의 업샘플링 옵션을 사용할지 결정하기 위해 제1 품질 레벨의 신호의 렌디션에서의 다수의 엘리먼트들 각각에 테스트를 적용한다. 예를 들어, 신호 프로세서는 각각의 엘리먼트에 제1 타입의 업샘플링 동작(예를 들어, 본 명세서에 논의한 바와 같은 메트릭을 사용하는 업샘플링 동작 타입)을 할당하거나, 각각의 엘리먼트에 제2 타입의 업샘플링 동작(생성된 메트릭을 사용하지 않는 업샘플링 동작 타입)을 할당하도록 구성될 수 있다. 상기 언급한 바와 같이, 샘플링하기 위해 생성된 메트릭을 사용할지 또는 대안의 업샘플링 동작을 사용할지 결정하는 테스트는 선택된 각각의 엘리먼트의 세팅이 선택된 각각의 엘리먼트 주위의 엘리먼트들의 각각의 제1 세트의 세팅들 및 선택된 각각의 엘리먼트 주위의 엘리먼트들의 각각의 제2 세트의 세팅들에 의해 정의된 범위내에 있는지를 결정하는 것을 포함할 수 있다.
일 실시예에서, 신호 프로세서는, 테스트에서 선택된 엘리먼트의 각각의 세팅이 각각의 엘리먼트에 대해 생성된 범위내에 있는 경우, 각각의 엘리먼트들을 업샘플링하기 위해 제1 타입의 업샘플링 동작을 할당한다. 신호 프로세서는, 테스트에서 선택된 엘리먼트의 각각의 세팅이 각각의 엘리먼트에 대해 생성된 범위 밖에 있는 경우, 각각의 엘리먼트들을 업샘플링하기 위해 제2 타입의 업샘플링 동작을 할당한다.
이들 및 다른 실시예들의 변형들이 아래에 더욱 상세히 논의된다.
상기 언급한 바와 같이, 본원의 실시예들은 본 명세서에 개시된 임의의 또는 모든 방법 동작들을 수행하고 그리고/또는 지원하기 위한 하나 이상의 컴퓨터화된 디바이스들, 라우터들, 네트워크, 워크스테이션들, 핸드헬드 또는 랩탑 컴퓨터들 등의 구성을 포함할 수 있다는 것에 유의한다. 다시 말해, 하나 이상의 컴퓨터화된 디바이스들 또는 프로세서들은 상이한 실시예들을 수행하기 위해 본 명세서에 설명한 바와 같이 동작하도록 프로그래밍되고 그리고/또는 구성될 수 있다.
상기 논의한 바와 같은 업샘플링 이외에, 본원의 또 다른 실시예는 상기 요약하고 아래에 상세히 개시된 단계들 및 동작을 수행하기 위한 소프트웨어 프로그램들을 포함한다. 하나의 이러한 실시예들은 프로세서 및 대응하는 메모리를 갖는 컴퓨터화된 디바이스에서 수행될 때, 프로세서로 하여금 본 명세서에 개시된 임의의 동작들을 프로그래밍하고 그리고/또는 수행하게 하는, 컴퓨터 프로그램 로직, 명령들 등이 인코딩되어 있는 컴퓨터 판독가능한 하드웨어 스토리지 리소스(즉, 비일시적 컴퓨터 판독가능한 매체)를 포함한다. 이러한 장치들은 광학 매체(예를 들어, CD-ROM), 플로피 또는 하드 디스크 또는 하나 이상의 ROM 또는 RAM 또는 PROM 칩들에서의 펌웨어 또는 마이크로코드와 같은 다른 매체와 같은 컴퓨터 판독가능한 매체상에 배열되거나 인코딩된 소프트웨어, 코드, 및/또는 다른 데이터(예를 들어, 데이터 구조들) 또는 응용 주문형 집적 회로(ASIC)로서 제공될 수 있다. 소프트웨어 또는 펌웨어 또는 다른 이러한 구성들은 컴퓨터화된 디바이스로 하여금 본 명세서에 설명된 기법들을 수행하게 하도록 컴퓨터화된 디바이스상에 설치될 수 있다.
그에 따라, 본 개시물의 하나의 특정한 실시예는 신호 프로세싱 동작들을 지원하는 명령들이 저장된 컴퓨터 판독가능한 하드웨어 저장 매체를 포함하는 컴퓨터 프로그램 제품에 관한 것이다. 예를 들어, 일 실시예에서, 각각의 컴퓨터 디바이스의 프로세서에 의해 수행될 때, 명령들은 프로세서로 하여금: 제2의 상위 레벨 품질의 신호의 렌디션의 다수의 엘리먼트들로 업샘플링하기 위해 제1 품질 레벨의 신호의 렌디션으로부터 엘리먼트를 선택하게 하고; 제1 품질 레벨의 신호의 렌디션에서 선택된 엘리먼트 주위의 엘리먼트들의 세팅들에 기초하여 메트릭을 생성하게 하며 ― 메트릭은 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트와 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트 사이의 경계를 정의함 ―, 그리고 제2 품질 레벨의 신호에서의 다수의 엘리먼트들에 대한 세팅들을 계산하기 위해 메트릭을 활용하게 한다.
단계들의 순서는 명확화를 위해 추가되었다. 이들 단계들은 임의의 적합한 순서로 수행될 수 있다.
본 개시물의 다른 실시예들은 상기 요약되고 아래에 상세히 개시되는 임의의 방법 실시예들의 단계들 및 동작들을 수행하기 위해 소프트웨어 프로그램, 펌웨어 및/또는 각각의 하드웨어를 포함한다.
또한, 본 명세서에 논의하는 바와 같은 시스템, 방법, 장치, 컴퓨터 판독가능한 저장 매체상의 명령들 등이 소프트웨어 프로그램으로서, 소프트웨어, 펌웨어, 및/또는 하드웨어의 하이브리드로서, 또는 예컨대 프로세서 내의, 또는 동작 시스템 내의 또는 소프트웨어 애플리케이션 내의 하드웨어 단독으로서 등으로, 엄격하게 실시될 수 있다는 것이 이해될 것이다.
상기 논의한 바와 같이, 본원의 기법들은 신호들을 인코딩하는 소프트웨어, 펌웨어, 및/또는 하드웨어 애플리케이션들에서 사용에 매우 적합하다. 그러나, 본원의 실시예들이 이러한 애플리케이션들에서의 사용에 제한되지 않으며, 본 명세서에서 논의되는 기법들이 다른 애플리케이션들에 또한 매우 적합하다는 것을 이해해야 한다.
추가로, 본원의 상이한 특징들, 기법들, 구성들 등 각각이 본 개시물의 상이한 곳들에서 논의될 수도 있지만, 개념들 각각이 서로 독립적으로 또는 서로 조합하여 실행될 수 있는 것으로 의도된다. 그에 따라, 본 명세서에 설명한 바와 같은 하나 이상의 본 발명들, 실시예들 등은 다수의 상이한 방식들로 실시될 수 있고 고려될 수 있다.
또한, 본원의 실시예들의 이러한 예비 논의는 본 개시물 또는 청구하는 발명(들)의 모든 실시예 및/또는 점증적인 신규한 양태를 특정하지 않는다는 것에 유의한다. 대신에, 이러한 간략한 설명은 종래의 기법들을 넘는 일반 실시예들 및 신규성의 대응하는 포인트들을 단지 제공한다. 발명(들)의 추가의 상세사항들 및/또는 가능한 관점들(치환들)에 대해, 독자는 아래에 더 논의되는 바와 같은 본 개시물의 상세한 설명부 및 대응하는 도면들에 주위를 기울인다.
본 발명의 상술한 목적 및 다른 목적, 특징들, 및 이점들은 동일한 참조 부호가 상이한 도면들 전반에 걸쳐 동일한 부분을 지칭하는 첨부한 도면들에 예시된 바와 같은, 본원의 바람직한 실시예들의 아래의 더욱 특정한 설명으로부터 명백할 것이다. 도면들은 실척대로 도시되는 것은 아니며, 대신에 실시예들, 원리들, 개념들 등을 예시할 때 강조가 표시된다.
도 1은 본원의 실시예들에 따라 메트릭을 사용하여 선택된 엘리먼트를 다수의 엘리먼트들로 업샘플링하는 것을 예시하는 예시도이다.
도 2는 본원의 실시예들에 따라 선택된 엘리먼트를 한 단계 높은 품질 레벨의 다수의 엘리먼트들로 업샘플링하기 위한 세팅들을 계산하기 위해 제1 품질 레벨에서의 선택된 엘리먼트에 대해 생성된 메트릭의 사용을 예시하는 예시도이다.
도 3은 본원의 실시예들에 따라 대안적인 업샘플링 옵션을 사용하여 선택된 엘리먼트를 다수의 엘리먼트들로 업샘플링하는 것을 예시하는 예시도이다.
도 4는 본원의 실시예들에 따라 제1 품질 레벨의 신호의 다수의 엘리먼트들 각각을 선택하고 제2 품질 레벨의 신호의 다수의 엘리먼트들로 업샘플링하는 동작을 예시하는 예시도이다. 동작은 반복적으로 또는 병렬 처리로 실행될 수 있다.
도 5는 본원의 실시예들에 따라 신호의 렌디션을 상위 품질 레벨로 업샘플링하기 위한 상이한 타입들의 업샘플링 동작들의 할당 및 사용을 예시하는 예시도이다.
도 6은 본원의 실시예들에 따라 신호의 렌디션을 상위 품질 레벨로 업샘플링하기 위한 상이한 타입들의 업샘플링 동작들의 할당 및 사용을 예시하는 예시도이다.
도 7은 본원의 실시예에 따라 메트릭들을 생성하는 상이한 구성들을 예시하는 예시도이다.
도 8은 본원의 실시예에 따라 제1 구성에 대한 메트릭의 생성을 예시하는 예시도이다.
도 9는 본원의 실시예에 따라 제2 구성에 대한 메트릭의 생성을 예시하는 예시도이다.
도 10은 본원의 실시예들에 따라 신호의 엘리먼트들을 업샘플링하기 위해 생성된 메트릭을 사용한 결과를 예시하는 예시도이다.
도 11은 본원의 실시예에 따라 컴퓨터 코드, 펌웨어, 소프트웨어, 애플리케이션들, 로직 등을 실행하는 예시적인 컴퓨터 아키텍처를 예시하는 도면이다.
도 12는 본원의 실시예에 따라 메트릭 업샘플을 생성하고 활용하는 방법을 예시하는 예시적인 플로우차트이다.
도 1은 본원의 실시예들에 따라 메트릭을 사용하여 다수의 엘리먼트들로의 선택된 엘리먼트의 업샘플링을 예시하는 예시도이다.
도시되어 있는 바와 같이, 품질 레벨(#1)에서의 신호(115-1)의 렌디션은 엘리먼트들(X1, B1, C1, A1, G1, Y3, K1, Y1, Y2, 등)을 포함하는 다수의 엘리먼트들을 포함한다. 신호(115-1)의 렌디션에서의 엘리먼트들 각각에는 각각의 엘리먼트에 대한 세팅을 나타내는 값이 할당된다.
이러한 예에서, 신호(115-1)의 렌디션은 원래의 신호의 하위 레벨 품질 렌디션을 나타낸다. 신호 프로세서(140)는 품질 레벨(#1)에서의 G1과 같은 선택된 엘리먼트를 품질 레벨(#2)(예를 들어, 상위 품질 레벨)에서의 신호의 렌디션에서의 엘리먼트들(U1, U2, U3, 및 U4)과 같은 다수의 엘리먼트들로 업샘플링한다. 신호(115-1)의 렌디션에서의 엘리먼트들 각각은 다수의 엘리먼트들의 각각의 세트로 업샘플링될 수 있다.
일 실시예에서, 신호(115-1)의 렌디션은 하위 품질 레벨로 다운샘플링된 원래의 신호의 썸네일 표현과 유사하다. 하위 품질 레벨에서의 신호(115-1)의 렌디션은 원래의 신호의 더욱 상세한 미세한 속성들을 아니지만 원래의 신호의 개략(coarse) 속성들을 캡처한다. 상세한 미세한 속성들은 상위 품질 레벨들에서의 신호의 렌디션에서 나타난다.
신호(115-1)의 렌디션과 연관된 값들은 임의의 적합한 타입의 데이터의 정보를 표현할 수 있다. 비제한적인 예로서, 신호(115)는 각각의 이미지에서의 다수의 신호 엘리먼트들(예를 들어, 펠(pel)/면 엘리먼트들, 픽셀들/픽처 엘리먼트들, 복셀들/체적 픽처 엘리먼트들 등) 각각의 세팅들을 나타내는 이미지 데이터, 심볼들 등일 수 있다. 이미지는 2차원(예를 들어, 픽처들, 비디오 프레임들, 2D 모션 맵들 등), 3차원(예를 들어, 3D/체적 이미지들, 홀로그래픽 이미지들, CAT-스캔들, 의료/과학 이미지들, 3D 모션 맵들 등), 또는 심지어 3차원 이상의 특징일 수 있다. 이러한 실시예에 따르면, 신호 엘리먼트들의 세팅들은 디바이스상에서 재생을 위해 원래의 신호를 어떻게 재구성할지를 나타낸다.
신호에서의 각 엘리먼트는 컬러와 같은 세팅을 정의할 수 있다. 이러한 실시예들에 따르면, 신호 데이터에서의 엘리먼트의 컬러 컴포넌트는 YUV, RGB, HSV 등과 같은 적합한 컬러 공간 표준에 따라 인코딩된다.
추가의 실시예에서, X1, B1, C1, A1, G1, Y3, K1, Y1, Y2 등과 연관된 세팅들의 조합은 제1 품질 레벨에서의 이미지(예를 들어, 다중 차원 이미지)의 부분을 정의한다. 신호 프로세서(140)는 품질 레벨(#1)(예를 들어, 하위 품질 레벨)에서의 신호(115-1)의 렌디션을 품질 레벨(#2)(예를 들어, 상위 품질 레벨)에서의 신호의 각각의 렌디션으로 업샘플링하도록 구성된다.
이러한 예에서, 신호 프로세서(140)가 상위 품질 레벨의 다수의 엘리먼트들로의 업샘플링을 위해 엘리먼트(G1)를 선택하는 것으로 가정한다. 언급한 바와 같이, 이러한 실시예에 따르면, 신호 프로세서(140)는 신호(115-1)의 렌디션에서의 선택된 엘리먼트(G1)를 제2 품질 레벨에서의 다수의 엘리먼트들(U1, U2, U3, 및 U4)로 업샘플링한다. 아래에 논의하는 바와 같이, 적합하면, 업샘플링은 생성된 메트릭(125)을 사용하여 달성될 수 있다. 신호 프로세서(140)는 메트릭(125)의 사용이 선택된 엘리먼트를 업샘플링하는데 적합하지 않은 것으로 여겨지면 대안적인 업샘플링 옵션을 사용하여 선택된 엘리먼트를 업샘플링하도록 구성된다.
도시된 바와 같이, 한 단계 높은 품질 레벨(예를 들어, 상위 해상도 이미지)로의 업샘플링을 용이하게 하기 위해, 본원의 일 실시예는 다수의 엘리먼트들(U1, U2, U3, 및 U4)로의 선택된 엘리먼트(G1)에 대한 메트릭(125)을 생성하는 것을 포함한다. 실시예 및 신호의 차원성에 의존하여, 메트릭(125)은 테스트하의 선택된 엘리먼트 주위의 이미지 엘리먼트들 사이의 경계를 정의하는 선, 표면 등일 수 있다.
신호(115-1)의 렌디션이 2차원 이미지일 때, 메트릭(125)에 의해 정의된 경계는 실질적으로, 신호의 부분상에 놓인 선이다. 본원에서 더 논의되는 바와 같이, 신호 프로세서(140)는 한 단계 높은 품질 레벨에서의 신호의 렌디션에서 엘리먼트들(U1, U2, U3, 및 U4)와 같은 다수의 이미지 엘리먼트들에 대한 세팅들(예를 들어, 크기들)을 계산하기 위한 기초로서 선(예를 들어, 경계)을 사용한다.
상기 언급한 바와 같이, 선택된 엘리먼트를 업샘플링하기 위한 메트릭(125)의 생성 및 사용은 조건적일 수 있다. 예를 들어, 본원에서 논의하는 바와 같은 메트릭(125)을 생성하고 사용하는 방법은 업샘플링된 선택된 엘리먼트가 업샘플링된 신호의 렌디션내의 천이 영역에서 또는 그 근처에 존재한다는 것이 상당히 확실하게 알려진 환경에서 사용될 수 있다.
테스트에서 선택된 엘리먼트 및/또는 선택된 엘리먼트 주위에 존재하는 엘리먼트들의 세팅들은 각각의 엘리먼트가 경계 영역상에 또는 그 근처에 존재하는지의 표시를 제공할 수 있다. 즉, 테스트에서 선택된 엘리먼트 주위의 엘리먼트들의 세팅들이, 선택된 엘리먼트들이 천이 영역상에 또는 그 근처에 존재한다는 것을 나타내는 경우에, 신호 프로세서(140)는 신호의 업샘플링된 렌디션의 세팅들을 계산하기 위해 생성된 메트릭(125)을 사용한다. 신호 프로세서(140)는 주위의 엘리먼트들의 세팅들이 업샘플링될 선택된 엘리먼트가 천이 영역에 존재하지 않거나 그 근처가 아니라는 것을 나타내는 경우에 하나의 품질 레벨로부터 다음의 품질 레벨로 업샘플링하기 위해 대안의 샘플링 기법(예를 들어, 생성된 메트릭(125)의 사용 이외)을 사용할 수도 있다.
메트릭(125)이 선택된 엘리먼트를 한 단계 높은 품질 레벨의 다수의 엘리먼트들로 바람직하게 업샘플링하기 위해 생성되고 사용될 수 있는지를 결정하는 테스트는 선택된 엘리먼트 주위의 다른 엘리먼트들과 연관된 세팅들의 크기들에 관하여 선택된 엘리먼트에 연관된 세팅들의 크기에 기초할 수 있다.
일 실시예에 따르면, 신호 프로세서(140)는 테스트에서 선택된 엘리먼트가 범위내의 세팅을 갖는다는 검출에 응답하여 각각의 메트릭(125)을 생성한다. 범위의 하한은 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트의 세팅들에 의해 정의될 수 있다. 범위의 상한은 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트의 세팅들에 의해 정의될 수 있다.
따라서, 일반적으로, 신호 프로세서(140)는 선택된 엘리먼트와 연관된 세팅이 선택된 엘리먼트 주위의 다른 엘리먼트들의 세팅들에 의해 정의된 범위내에 있는 경우에 선택된 엘리먼트를 업샘플링하기 위해 메트릭(125)을 생성하고 사용하도록 구성될 수 있다.
일 실시예에 따르면, 에지를 테스트하고 식별하는 범위를 생성하기 위해, 신호 프로세서(140)는, 적어도 엘리먼트들의 제1 세트 및 엘리먼트들의 제2 세트를 식별하기 위해 선택된 엘리먼트 주위의 엘리먼트들의 세팅들을 초기에 분석한다. 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트 및 엘리먼트들의 제2 세트는 제1 세트와 제2 세트 사이에 배치된 선택된 엘리먼트에 관하여 서로 반대, 대각 등으로 배치될 수 있다. 세트들 각각은 하나 이상의 엘리먼트들을 포함할 수 있다.
신호 프로세서(140)는 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트에서의 적어도 하나의 엘리먼트들의 세팅들에 기초하여 제1 값을 생성한다. 신호 프로세서(140)는 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트에서의 적어도 2개의 엘리먼트들의 세팅들에 기초하여 제2 값을 생성한다. 신호 프로세서(140)는 2개의 값들 중 더 큰 값이 범위의 상한을 정의하고 다른 값이 범위의 하한을 정의하는 범위를 생성한다. 선택된 엘리먼트의 세팅이 주위의 엘리먼트들의 범위내에 있다면, 선택된 엘리먼트는 에지 또는 천이 영역상에 있을 가능성이 있다.
신호 프로세서(140)가 테스트된 그룹들 사이에 배치된 선택된 엘리먼트가 천이 영역내에 존재하는지 여부를 결정하기 위해 선택된 엘리먼트 주위의 하나 이상의 주위의 엘리먼트들의 상이한 그룹들을 (주위의 엘리먼트들에 대해 가능한 구성들의 세트와 또한 비교하여) 테스트할 수 있다는 것에 유의한다. 엘리먼트 그룹들의 특정한 선택들은 선택된 엘리먼트가 상기 언급한 바와 같이 천이 영역에 존재하지 않는다는 표시를 제공할 수도 있다. 이러한 실시예에서, 업샘플링하는데 메트릭이 사용되지 않을 수도 있다. 상기 언급한 바와 같이, 신호 프로세서(140)는, 주위의 엘리먼트들의 세팅들이 가능한 구성들의 세트의 적어도 하나와의 (신뢰도의 적절한 임계값들내에서) 테스트를 충족시키기고 선택된 엘리먼트의 세팅이 주위의 엘리먼트들의 세팅들에 의해 정의된 범위에 있는 경우에 선택된 엘리먼트가 천이 영역내에 있다고 추정하도록 구성될 수 있다.
더욱 특정한 예로서, 선택된 엘리먼트(G1)의 크기(예를 들어, 세팅, 값 등)가 이웃 엘리먼트들의 다수의 그룹들의 후보 세트에 의해 정의된 범위내에 있다는 검출에 응답하여, 신호 프로세서(140)는 선택된 엘리먼트가 천이 영역 근처에 존재하여 천이를 정의하기 위한 기초로서 주위의 엘리먼트들의 각각의 세팅들에 기초하여 메트릭(125)을 생성한다는 것을 가정한다. 언급하고 아래에 더욱 상세히 논의하는 바와 같이, 메트릭은 엘리먼트들(U1, U2, U3, 및 U4)에 할당하기 위한 세팅들을 식별하는 기초로서 작용할 수 있다.
이러한 예에서, 선택된 엘리먼트 주위의 하나 이상의 엘리먼트들의 제1 세트에서의 각 엘리먼트(예를 들어, 엘리먼트(X1))가 대략 100의 값으로 설정된다고 가정되고(예를 들어, 엘리먼트(X1)=100 가정), 선택된 엘리먼트 주위의 하나 이상의 엘리먼트들의 제2 세트에서의 각 엘리먼트(예를 들어, Y1, Y2, 및 Y3)가 대략 0의 값으로 설정된다고 가정된다(예를 들어, 엘리먼트(Y1) = 0.1, Y2 = 0, 및 Y3 = 0.3으로 가정). 이러한 경우에서, 신호 프로세서(140)는 범위의 하한을 0으로 설정하고 범위의 상한을 100으로 설정한다. 또한, 이러한 예에서, 선택된 엘리먼트(G1)는 37의 할당값을 갖는다고 가정한다. 선택된 엘리먼트(G1)의 값이 한계 범위들(0과 100) 사이에 있기 때문에, 신호 프로세서(140)는 선택된 엘리먼트(G1)가 천이 영역상에 또는 그 근처에 존재하고 선택된 엘리먼트가 각각의 메트릭(125)의 사용을 통해 업샘플링될 수 있다는 것을 가정한다. 이러한 경우에서, 각각의 메트릭(125)은 엘리먼트(G1)를 제2 품질 레벨에서의 엘리먼트들(U1, U2, U3, 및 U4)로 업샘플링하기 위해 바람직하게 사용될 수 있다.
신호 프로세서(140)는 주위의 엘리먼트들의 세팅들에 기초하여 메트릭(125)을 생성한다. 메트릭(125)은 경계를 정의한다. 본원에서 나중에 더욱 상세히 논의하는 바와 같이, 선택된 엘리먼트에 관한 경계의 위치 및 배향은 선택된 엘리먼트 주위의 엘리먼트들의 세팅들의 크기들에 의존한다. 일 실시예에서, 선형 보간 기법들(또는 임의의 다른 적합한 측정 기법)이 각각의 경계를 정의하는 메트릭(125)의 위치 및 배향을 식별하기 위해 사용될 수 있다. 선형 보간을 사용하는 추가의 상세사항들이 본원에서 나중에 더욱 상세히 논의될 것이다.
이전에 논의한 바와 같이, 본원의 실시예들은 볼륨을 표현하는 신호의 프로세싱으로 확장될 수 있다는 것에 다시 유의한다. 이러한 실시예에 따르면, 선택된 엘리먼트의 세팅들, 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트, 및 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트의 조합이 제1 품질 레벨에서의 체적 이미지의 부분을 정의한다. 이러한 경우에서, 메트릭(125)은 제1 품질 레벨에서의 체적 이미지의 부분에서의 표면 경계를 정의한다. 신호 프로세서(140)는 제2 품질 레벨에서의 신호에서 다수의 체적 이미지 엘리먼트들에 대한 세팅들을 계산하기 위해 (상기 논의한 바와 유사한 방식으로) 메트릭(125)을 사용한다. 신호 프로세서(140)는 선택된 엘리먼트의 크기가 범위, 즉, 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트의 세팅들에 의해 정의된 범위의 하한, 볼륨에서의 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트의 세팅들에 의해 정의된 범위의 상한내에 있다는 검출에 응답하여 메트릭(125)(예를 들어, 표면 경계)을 생성할 수 있다.
2차원 경우에 대해 상기 논의한 바와 유사한 방식으로, 신호 프로세서(140)는 선택된 엘리먼트가 볼륨에서의 천이 영역내에 있는지 식별하기 위해 (볼륨에서) 주위의 엘리먼트들의 상이한 그룹들을 테스트하도록 구성될 수 있다.
차원수에 관계없이, 신호 프로세서(140)가 다른 상위 품질 레벨들로 신호의 렌디션을 업샘플링하고 재생하기 위해 다수의 상위 품질 레벨들 각각에서의 신호의 렌디션들에서 엘리먼트들에 대한 메트릭들을 반복적으로 생성할 수 있다는 것에 더 유의한다. 예를 들어, 적절한 경우에, 신호 프로세서(140)는 선택된 엘리먼트를 품질 레벨(#3)의 다수의 엘리먼트들로 업샘플링하기 위해 품질 레벨(#2)에서 선택된 엘리먼트에 대해 생성된 메트릭을 활용할 수 있고, 신호 프로세서(140)는 선택된 엘리먼트를 품질 레벨(#4)의 다수의 엘리먼트들로 업샘플링하기 위해 품질 레벨(#3)에서 선택된 엘리먼트에 대해 생성된 메트릭을 활용할 수 있는 식이다.
일 실시예에서, 신호 프로세서(140)는 최상위 품질 레벨에서의 원래의 신호의 렌디션을 재구성하기 위해 연속적으로 상위 품질 레벨로 업샘플링을 반복한다. 신호의 생성된 렌디션은 동일한 해상도일 수도 있고 원래의 신호와 동일하거나 거의 동일할 수도 있다.
본원에 논의된 바와 같은 기법들이 사용될 수 있는 인코더 시스템의 예에서, 신호 프로세서(140)는 어느 업샘플링 옵션(예를 들어, 메트릭/디블렌딩 필터의 사용 또는 대안의 업샘플링 옵션들의 사용)이 각 품질 레벨에서의 각 엘리먼트에 대해 적합한지를 테스트하고 결정하도록 구성될 수 있다.
멀티-스케일 계승 기반(inheritance-based) 인코딩 루프에서, 신호는 제1 품질 레벨의 신호의 렌디션으로 계층에서 연속적으로 다운샘플링된다. 멀티-스케일 인코딩 루프에서의 이용가능한 업샘플링 동작들 중에서 메트릭(125)("디블렌딩 필터")의 구현은 하위 품질 레벨의 신호의 렌디션에 기초하여, 계층에서의 상위 품질 레벨의 신호의 렌디션을 재구성하기 위해 필요한 잔차 데이터량을 감소시킬 수 있다.
본원에 논의된 바와 같은 메트릭 또는 대안의 업샘플링 옵션들을 사용하는 업샘플링의 기법들이 사용될 수 있는 디코더 시스템의 일례에서, 신호 프로세서(140)는 각 품질 레벨의 각 엘리먼트를 업샘플링하기 위해 사용되는 적절한 업샘플링 동작(예를 들어, 메트릭/디블렌딩 필터 또는 대안의 업샘플링 옵션들의 사용)을 테스트하고 결정하도록 구성될 수 있다. 또 다른 실시예에서, 인코딩 사이트에서 이루어진 결정이 디코더에 전송되고 디코더에 의해 복제될 수 있어서, 약간 더 높은 송신 대역폭을 감소된 디코딩 복잡성으로 교환한다.
디코더는, 신호(115-1)의 렌디션에서 엘리먼트를 선택하고, (적용가능한 경우) 메트릭(125)을 생성하고, 하위 품질 레벨의 신호의 렌디션에 기초하여, 상위 품질 레벨의 신호의 렌디션을 재구성하기 위해 멀티-스케일 디코더 루프에서 활용하는 단계들을 구현하도록 구성될 수 있다. 대안의 업샘플링 동작 대신에 메트릭의 생성 및 사용이 제2 품질 레벨의 신호의 렌디션을 재구성하기 위해 업샘플링 이후에 필요한 잔차 데이터량을 감소시키거나 변경할 수 있다.
도 2는 본원의 실시예들에 따라 선택된 엘리먼트를 한 단계 높은 품질 레벨의 다수의 엘리먼트들로 업샘플링하기 위한 세팅들을 계산하기 위해 제1 품질 레벨에서 선택된 엘리먼트에 대해 생성된 메트릭의 사용을 예시하는 예시도이다.
이전에 논의한 일 실시예에 따르면, 신호 프로세서(140)는 엘리먼트(G1)를 엘리먼트들(U1, U2, U3, 및 U4)로 업샘플링하기 위해 메트릭을 사용한다. 엘리먼트(G1)를 한 단계 높은 품질 레벨의 (예를 들어, 2×2의 스케일 팩터(scale factor)에 기초한) 4개의 엘리먼트들로 업샘플링하는 것이 단지 비제한적인 예로서 도시되어 있고, 업샘플링은 하나의 품질 레벨로부터 한 단계 높은 품질 레벨로의 임의의 적합한 스케일링 업(scaling up)을 포함할 수 있다는 것에 유의한다.
이러한 예에서, 주위의 엘리먼트들의 제1 세트(예를 들어, 엘리먼트(X1)=100 가정) 및 제2 세트(예를 들어, 엘리먼트(Y1)=0.1, Y2=0, 및 Y3=0.3 가정)에 대한 신호 프로세서(140) 설정 범위 한계들은 각각 0 및 100이라는 것을 가정한다. 이러한 경우에서, 범위의 하한은 0이고 범위의 상한은 100이다. 이러한 예에서, 선택된 엘리먼트(G1)는 37의 할당값을 갖는다고 가정한다.
신호 프로세서(140)는 메트릭(125)에 기초하여 엘리먼트들(U1, U2, U3, 및 U4)에 대한 값들을 생성한다. 예를 들어, 메트릭(125)에 기초하여 U1, U2, U3, 및 U4 각각에 대한 세팅들을 생성하기 위해, 신호 프로세서(140)는 엘리먼트들(U1, U2, U3, 및 U4) 중 어느 것이 메트릭(125)에 의해 교차되는지를 먼저 식별한다.
이러한 예에서, 신호 프로세서(140)는 메트릭(125)이 (엘리먼트들(U1, U2, U3, 및 U4) 중에서) 엘리먼트들(U1, U2, 및 U3)과 교차한다는 것을 식별한다. 엘리먼트들(U1, U2, 및 U3) 각각에 대해, 교차의 검출에 응답하여, 신호 프로세서(140)는 각각의 세팅을 계산하기 위해 메트릭(125)을 활용한다. 신호 프로세서(140)는 엘리먼트들(예를 들어, X)의 제1 세트에 할당된 세팅(예를 들어, 100)과 엘리먼트들(예를 들어, Y)의 제2 세트에 할당된 세팅(예를 들어, 0) 사이에서 이들 엘리먼트들(U1, U2, 및 U3) 각각에 대한 값들을 설정한다.
이러한 예에서, 신호 프로세서(140)는 메트릭(125)이 (엘리먼트들(U1, U2, U3, 및 U4) 중에서) 엘리먼트(U4)와 교차하지 않는다는 것을 식별한다. 엘리먼트(U4) 모두가 메트릭(125)에 의해 정의된 경계와 엘리먼트들(예를 들어, Y 엘리먼트들)의 제1 세트 사이에 존재한다는 검출에 응답하여, 신호 프로세서(140)는 엘리먼트(U4)를 0과 실질적으로 동일한 값으로 설정한다. 이것은 엘리먼트들의 제2 세트에 할당된 세팅이다.
신호 프로세서(140)가 다른 특정한 엘리먼트가 메트릭(125)에 의해 정의된 경계와 엘리먼트들(예를 들어, X 엘리먼트들)의 제1 세트 사이에 존재한다는 것을 검출한 경우에, 신호 프로세서(140)는 특정한 엘리먼트를 엘리먼트들의 제1 세트에 할당된 세팅과 실질적으로 동일한 값(예를 들어, 100)으로 설정한다는 것에 유의한다. 그러나, 이것은 이러한 예시적인 경우에서 발생하지 않지만, 테스트하의 다른 엘리먼트들에 대해 발생할 수도 있다는 것에 유의한다.
신호 프로세서(140)가 메트릭(125)에 의해 정의된 경계가 제2 품질 레벨의 신호의 엘리먼트들(U1, U2, 및 U3) 각각과 교차한다는 것을 검출하는 것을 상기한다. 도 2에 도시되어 있는 바와 같은 추가 실시예들에 따르면, 각 엘리먼트에 대해, 신호 프로세서는 ⅰ) 각각의 엘리먼트가 메트릭(125)에 의해 정의된 경계와 엘리먼트들(예를 들어, X 엘리먼트)의 제1 세트 사이에 얼마나 많이 존재하는지를 나타내는 제1 값, 및 ⅱ) 각각의 엘리먼트가 메트릭(125)에 의해 정의된 경계와 엘리먼트들(예를 들어, Y 엘리먼트들)의 제2 세트 사이에 얼마나 많이 존재하는지를 나타내는 제2 값을 계산한다. 신호 프로세서는 범위(예를 들어, 0 내지 100) 및 제1 값 대 제2 값의 비율 또는 가중치에 기초하여 각각의 교차된 엘리먼트에 대한 세팅을 계산한다.
범위(예를 들어, 0 내지 100)의 하한이 엘리먼트들의 제2 세트의 세팅들에 의해 정의되고 범위(예를 들어, 0 내지 100)의 상한이 엘리먼트들의 제1 세트의 세팅들에 의해 정의된다는 것을 상기한다. 이러한 예에서, 엘리먼트(U1)와 연관된 면적의 83%가 메트릭(125)에 의해 정의된 경계와 엘리먼트들(Y)의 제2 세트 사이에 존재한다는 것을 가정한다. 엘리먼트(U1)와 연관된 면적의 17%가 메트릭(125)에 의해 정의된 경계와 엘리먼트들(X)의 제1 세트 사이에 존재한다는 것을 더 가정한다. 이들 값들에 기초하여, 신호 프로세서(140)는 엘리먼트(U1)를 83의 값으로 설정한다. 예를 들어, 신호 프로세서(140)는 이러한 값을 생성하기 위해 아래의 방정식을 활용한다.
U(i) = 범위 상한 - PV1(i) * (범위 상한 - 범위 하한)
여기서, PV1(i) = 경계와 하한 사이에 있는 업샘플링 엘리먼트(i)(예를 들어, 엘리먼트들(U1, U2, 및 U3) 중 하나)의 퍼센티지,
또는
U(i) = 범위 하한 + PV2(i) * (범위 상한 - 범위 하한)
여기서, PV2(i) = 경계와 상한 사이에 있는 업샘플링 엘리먼트(i)의 퍼센티지.
상기 방정식들 및 상기 논의한 바와 같은 가중화를 사용하여, 신호 프로세서(140)는 엘리먼트(U2)=6을 설정한다. 예를 들어, 엘리먼트(U2)와 연관된 면적의 6%가 메트릭(125)에 의해 정의된 경계와 엘리먼트들(X)의 제1 세트 사이에 존재한다는 것을 가정한다. 엘리먼트(U2)와 연관된 면적의 94%가 메트릭(125)에 의해 정의된 경계와 엘리먼트들(Y)의 제2 세트 사이에 존재한다는 것을 더 가정한다. 이들 값들 및 상기 방정식에 기초하여, 신호 프로세서(140)는 엘리먼트(U2)를 6의 값으로 설정한다.
상기 방정식들을 사용하여, 신호 프로세서(140)는 엘리먼트(U3)=23을 설정한다. 예를 들어, 엘리먼트(U3)와 연관된 면적의 23%가 메트릭(125)에 의해 정의된 경계와 엘리먼트들(X)의 제1 세트 사이에 존재한다는 것을 가정한다. 엘리먼트(U3)와 연관된 면적의 77%가 메트릭(125)에 의해 정의된 경계와 엘리먼트들(Y)의 제2 세트 사이에 존재한다는 것을 더 가정한다. 이들 값들 및 상기 방정식에 기초하여, 신호 프로세서(140)는 엘리먼트(U3)를 23의 값으로 설정한다.
엘리먼트(U4)와 연관된 면적 모두가 메트릭(125)에 의해 정의된 경계와 엘리먼트들의 제2 세트 사이에 존재한다. 이러한 경우에서, 신호 프로세서는 엘리먼트(U4)에 Y 엘리먼트들(예를 들어, 엘리먼트들의 제2 세트)과 연관된 세팅들과 실질적으로 등가인 값을 할당한다. 즉, 신호 프로세서(140)는 U4=0을 설정한다.
이전에 언급한 바와 같이, 신호의 렌디션은 엘리먼트들의 볼륨을 나타낼 수 있다. 이러한 실시예에 따르면, 신호 프로세서(140)는 체적 엘리먼트들에 대해 상기 논의한 바와 동일한 단계들을 실행한다.
예를 들어, 신호 프로세서(140)는 메트릭(125)에 의해 정의된 표면 경계가 제2 품질 레벨의 체적 이미지에서의 다수의 이미지 엘리먼트들의 특정한 체적 엘리먼트와 교차한다는 것을 검출하도록 구성될 수 있다. 특정한 체적 엘리먼트에 대해, 신호 프로세서(140)는 ⅰ) 특정한 체적 엘리먼트가 표면 경계와 엘리먼트들의 제1 세트 사이에 얼마나 많이 존재하는지를 나타내는 제1 값, 및 ⅱ) 특정한 체적 엘리먼트가 표면 경계와 엘리먼트들의 제2 세트 사이에 얼마나 많이 존재하는지를 나타내는 제2 값을 계산한다. 그 후, 신호 프로세서(140)는 제1 값과 제2 값의 크기들에 기초하여 범위내의 특정한 체적 엘리먼트에 대한 세팅을 계산한다.
도 3은 본원의 실시예들에 따라 대안적인 업샘플링 옵션을 사용한 다수의 엘리먼트들로의 선택된 엘리먼트의 업샘플링을 예시하는 예시도이다. 이러한 예에서, 신호 프로세서(140)가 선택된 엘리먼트(Y3)를 상위 품질 레벨에서의 다수의 엘리먼트들로 업샘플링하기 위해 각각의 메트릭을 생성할 수 없다는 것을 가정한다.
더욱 구체적으로는, 선택된 엘리먼트(Y3)에는, 선택된 엘리먼트 주위의 인근 엘리먼트들의 2 이상의 세트들에 의해 정의된 범위내에 있는 세팅이 할당되지 않았다는 것을 가정한다. 신호 프로세서(140)는 주위의 엘리먼트 그룹들의 상이한 가능한 축방향의 대향하는 세트들을 테스트하고 소진(exhaust)한 이후에 이러한 조건을 식별한다. 이러한 조건의 검출에 응답하여, 신호 프로세서(140)는 선택된 엘리먼트가 주위의 명확한 경계 또는 천이 영역에 있지 않다는 것을 추정하여, 다수의 엘리먼트들(V1, V2, V3, 및 V4)로 엘리먼트(Y3)를 업샘플링하기 위해 대안의 업샘플링 옵션을 사용한다.
도 4는 본원의 실시예들에 따라 제1 품질 레벨의 신호의 다수의 엘리먼트들 각각을 제2 품질 레벨의 신호의 엘리먼트들로 업샘플링하는 동작을 예시하는 예시도이다. 도시되어 있는 바와 같이, 신호 프로세서(140)는 생성된 메트릭의 사용이 각각의 엘리먼트에 대한 업샘플링을 수행하기에 적합한지 식별하기 위해 품질 레벨(#1)의 신호(115-1)의 렌디션에서 다수의 엘리먼트들 각각을 테스트한다. 신호 프로세서(140)는 제1 품질 레벨의 신호의 렌디션에서 다음의 선택된 엘리먼트 주위의 엘리먼트들의 세팅들에 기초하여 각각의 메트릭을 조건적으로 생성한다.
일례로서, 신호 프로세서(140)는 제1 타입의 업샘플링 동작(예를 들어, 생성된 메트릭을 사용하는 동작)을 각각의 엘리먼트에 할당할지 또는 대안의 제2 타입의 업샘플링 동작(예를 들어, 메트릭을 활용하지 않는 동작)을 디코딩을 위해 각각의 엘리먼트에 할당할지를 결정하기 위해 제1 품질 레벨의 신호의 렌디션에서의 다수의 각각의 엘리먼트들 각각에 테스트를 적용한다.
각 엘리먼트의 테스트는 선택된 각각의 엘리먼트의 세팅이 상기 논의한 바와 같은 범위내에 있는지를 결정하는 것을 포함할 수 있다. 신호 프로세서(140)는 각각의 엘리먼트의 각각의 세팅이 각각의 엘리먼트에 대해 생성된 범위내에 있는 경우 각각의 엘리먼트들을 업샘플링하기 위해 제1 타입의 업샘플링 동작을 할당한다. 신호 프로세서(140)는 각각의 엘리먼트의 각각의 세팅이 각각의 엘리먼트에 대해 생성된 범위 외부에 있는 경우 각각의 엘리먼트들을 업샘플링하기 위해 제2 타입의 업샘플링 동작을 할당한다. 따라, 신호의 주어진 품질 레벨에서 상이한 엘리먼트들에 상이한 업샘플링 동작들이 할당될 수 있다.
도 5는 본원의 실시예들에 따라 신호의 렌디션을 상위 품질 레벨로 업샘플링하기 위한 업샘플링 동작들의 상이한 타입들의 할당 및 사용을 예시하는 예시도이다. 엘리먼트들(G1, Y3, 및 B2)이, 맵(510)에서의 엘리먼트들이 신호(115-1)의 렌디션에서 엘리먼트들에 어떻게 대응하는지를 나타내기 위해 맵(510)에서 라벨링된다는 것에 유의한다.
이전에 논의한 바와 같이, 신호 프로세서(140)는 선택된 엘리먼트에 대해 각각의 메트릭(125)에 기초하여 업샘플링하거나 대안의 업샘플링 동작을 사용하는 것(예를 들어, 다른 업샘플링 및 바이큐빅(bicubic) 필터 및/또는 불선명(unsharp) 마스킹 필터와 같은 이미지 프로세싱 접근방식들을 사용하는 것)이 유익한지를 테스트하도록 구성될 수 있다. 테스트의 결과들에 기초하여, 맵(510)에서의 엘리먼트들은 품질 레벨(#1)의 신호(115-1)의 렌디션에서 대응하는 엘리먼트들이 생성된 메트릭(예를 들어, M으로 라벨링됨) 또는 대안의 방법(예를 들어, O로 라벨링됨)을 사용하여 품질 레벨(#1)로부터 품질 레벨(#2)로 업샘플링되는지를 나타낸다.
제한하지 않는 예로서, 문자 M으로 마킹된 맵(510)에서의 영역들은 천이들 또는 에지들이 각각의 이미지에서 발생하는 위치를 나타낼 수 있다. 속성들은 하위 품질 레벨에서의 각각의 이미지의 개략(coarse) 속성들(예를 들어, 아웃라인)을 나타낸다.
도 6은 본원의 실시예들에 따라 신호의 렌디션을 상위 품질 레벨로 업샘플링하기 위한 상이한 타입들의 업샘플링 동작들의 할당 및 사용을 예시하는 예시도이다. 엘리먼트들(U1, U2, U3, U4, V1, V2, V3, 및 V4)이, 맵(610)에서의 엘리먼트들이 제2 품질 레벨에서의 신호의 렌디션에서 엘리먼트들에 어떻게 대응하는지를 나타내기 위해 맵(610)에서 라벨링된다는 것에 유의한다.
이전에 논의한 바와 같이, 신호 프로세서(140)는 선택된 엘리먼트에 대해 각각의 메트릭에 기초하여 업샘플링하거나 대안의 업샘플링 동작을 사용하는 것(예를 들어, 다른 업샘플링 및 바이큐빅 필터 및/또는 불선명 마스킹 필터와 같은 이미지 프로세싱 접근방식들을 사용하는 것)이 적절한지를 테스트하도록 구성될 수 있다. 테스트의 결과들에 기초하여, 맵(610)에서의 엘리먼트들은 대응하는 엘리먼트가 생성된 메트릭(예를 들어, M으로 라벨링됨) 또는 대안의 방법(예를 들어, 라벨링되지 않음)을 사용하여 품질 레벨(#2)로부터 품질 레벨(#3)로 업샘플링되는지를 나타낸다.
제한하지 않는 예로서, 문자 M으로 마킹된 맵(610)에서의 영역들은 천이들이 각각의 이미지에서 발생하는 위치를 나타낼 수 있다. 천이들은 하위 품질 레벨에서의 각각의 이미지의 개략 속성들(예를 들어, 아웃라인)을 나타낸다. 이러한 예에서, 신호(115-1)의 렌디션은 적어도 하나의 수직 오브젝트를 포함하는 더욱 상세한 이미지를 나타낸다. 특정한 천이들(M으로 라벨링됨)이 이미지의 새로운 영역들에서 검출되었다. 새로운 천이들은 상위 해상도 이미지에서 이제 검출가능한 추가의 오브젝들의 존재를 나타낼 수 있다.
에지 재구성 필터(예를 들어, 디블렌딩 업샘플링 필터)
도 7은 본원의 실시예에 따라 메트릭들을 생성하는 2개의 상이한 구성들을 예시하는 예시도이다. 이들 2개의 구성들이 비제한적인 예로서 도시되고 임의의 수의 구성들이 일 품질 레벨로부터 다음의 품질 레벨로 특정한 엘리먼트를 업샘플링하는 모델로서 사용될 수 있는 것에 유의한다.
상기 논의한 바와 같이, 디코더가 상위 품질 레벨로 다시 업샘플링할 때, 일 품질 레벨로부터 다른 품질 레벨로 신호를 업샘플링하기 위해 인코더가 생성해야 하는 잔차 데이터의 엔트로피를 감소시키기 위해 원래 신호를 재구성하는데 "인텔리전트(intelligent)" 필터를 레버러지(leverage)하는 것이 종종 바람직하다.
비디오 데이터에서의 이미지들(예를 들어, 프레임들을 갖는 동영상들)의 큰 부분이 매우 선명한 경계들/천이들 또는 매우 점진적/블러링된 천이들을 포함한다는 것을 고려한다. 하위 해상도 신호에서 직선 에지 또는 선명한 경계들/천이들을 업샘플링할 때 재그된 또는 블러링된 재구성을 회피하기 위해, 본원의 실시예들은 (메트릭을 생성하지 않고 업샘플링하지 않는) 불선명 마스킹 및 (업샘플링하기 위해 메트릭을 생성하는) 디블렌딩 필터를 포함하는, 적어도 2개의 타입들의 이미지 프로세싱 및 업샘플링 동작들의 사용을 포함할 수 있다.
불선명 마스킹 필터
불선명 마스킹(unsharp masking)은 천이들을 강화시키는 일반적인 필터링 기법이다. 이는 업샘플링 이후 선명한 천이를 재생성하는 능력을 갖지 못한다. 그러나, 적용될 때. 이는 천이들을 더 가파르게(steeper) 만든다. 이것은 특히, 천이가 처음에 선명하지 않은 경우에, 신호의 렌디션에 아티팩트들을 도입할 수도 있다. 따라서, 불선명 마스킹 필터는 임계값 이상에서만 통상적으로 사용된다. 예를 들어, 매우 점진적인 천이들에 대해, 임계값 아래에서, 필터는 사용되지 않는다.
본원의 일 실시예에 따르면, 불선명 마스킹 필터를 사용할지의 임계값은 각 품질 레벨에 대한 인코더에 의해 결정될 수 있다. 필터를 사용하기로 한 결정은 잔차 데이터량을 글로벌하게 최소화하기 위해 선택된 제어 이미지 존(zone)들에 대해 무시될 수 있다.
디블렌딩 필터
본원에 논의하는 바와 같은 소위 디블렌딩 필터(deblending filter)는 신호에서의 상이한 품질 레벨에서 에지들을 복원(예를 들어, 업샘플링)하기 위한 커스텀 필터이다. 디블렌딩 필터는 이전에 논의된 바와 같이 업샘플링된 하나 이상의 엘리먼트들 각각에 대한 생성된 메트릭(125)의 사용을 포함할 수 있다.
일 실시예에서, 디블렌딩 필터는 업샘플링 이전에 사용되고, 하위 레벨 이미지 경우의 (2차원 신호의 비제한적인 경우에서, 엘리먼트들의 3×3 영역과 같은) 상대적으로 작은 부분들에 대해 사용된다. 그러나, 이러한 실시예는 단지 비제한적인 예로서 도시되고 본원에 논의되는 바와 같은 개념들은 신호의 임의의 사이징된(sized) 부분(예를 들어, 4×4, 5×5 등)에 적용될 수 있다는 것에 유의한다.
또한, 이전에 논의한 바와 같이, 일 실시예는 품질 레벨(n-1)로부터 품질 레벨(n)로 업샘플링하는 것을 포함한다. 메트릭의 사용은, 선택된 부분에 엘리먼트들의 단지 2개의 상이한 값들만이 일반적으로 존재하고, 이들 사이의 천이/경계가 직선, 곡선, 평면 등과 같은 적합한 경계로 근사될 수 있다는 가정에 기초한다.
알고리즘 및 각각의 메트릭이 업샘플링을 달성하기 위해 특정한 엘리먼트에 적용될 수 없을 때, 본원의 실시예들은 신호 엘리먼트의 상위 해상도 렌디션에 대해, 다른 디폴트 업샘플링 동작들/필터들(예를 들어, 바이큐빅 필터 동작 플러스(plus) 불선명 마스킹 필터)로 업샘플링함으로써 획득된 다수의 엘리먼트들을 사용하는 것을 포함한다.
일 품질 레벨로부터 다음의 품질 레벨로 업샘플링하기 위해 알고리즘(그리고 본원에 논의한 바와 같은 메트릭의 생성)이 업샘플링된 신호에서 엘리먼트들의 상당히 낮은 퍼센티지(예를 들어, 10%)에 대해 통상적으로 사용된다는 것에 유의한다. 언급한 바와 같이, 신호의 하위 품질 레벨들에서의 신호 엘리먼트들은 통상적으로 "개략" 이미지 정보를 포함한다. 메트릭이 다음의 품질 레벨로 업샘플링하기 위해 사용될 수 있는 엘리먼트들은 통상적으로, 신호에서의 선명한 경계들에 대한 아티팩트들이 매우 바람직하지 않게 되는 경향이 있기 때문에 매우 중요한 엘리먼트이다. 이 엘리먼트들은 또한, 상위 품질 레벨을 재구성할 때, 종래의 방법들 및 필터들에 따라 업샘플링되는 경우에, 큰 잔차 데이터량이 하위 품질 레벨의 업샘플링된 렌디션을 정정하기 위해 필요한 영역들이다. 언급한 바와 같이, 메트릭(125)을 사용하는 업샘플링은, 동작이 일 품질 레벨로부터 다음의 품질 레벨로 신호의 렌디션을 지능적으로 업샘플링할 때 잔차 데이터량을 감소시킨다.
본원의 일 실시예는, 에지를 나타내는 이상적인 경계의 각도에 기초하여, 테스트하의 영역이 천이 또는 에지를 포함하는지를 결정하기 위해 메트릭이 바람직하게 사용될 수 있는 적어도 2개의 메인 모델 경우들이 존재한다는 것을 인식한다. 테스트하의 영역은 선택된 엘리먼트 및 대응하는 이웃 엘리먼트들이 메트릭이 일 품질 레벨로부터 다음의 품질 레벨로 업샘플링하기 위해 사용될 수 있는 천이 또는 에지를 정의하는지를 체크하는 총 8개의 상이한 모델 경우들(각 배향에 대해 2개)을 생성하기 위해 회전되거나 플립될 수 있다. 테스트하의 선택된 엘리먼트 주위의 엘리먼트들의 상이한 조합들을 테스트하는 것은 하나가 우연히 존재하는 경우에 천이가 식별될 수 있다는 것을 보장한다.
도 7에 도시되어 있는 바와 같이, 테스트하의 부분들에서 X 및 Y로서 마킹된 엘리먼트들에 대한 2개의 가능한 세팅들이 주어진 품질 레벨에 대해 소정의 범위/임계값내에 있는 것으로 식별되는 경우에(예를 들어, 거의 동일한 제1 값으로 설정된 엘리먼트들(X)의 그룹이 존재하고 거의 동일한 제2 값으로 설정된 엘리먼트들(Y)의 그룹이 존재하는 경우에), 본원의 실시예들은 엘리먼트를 업샘플링하기 위해 상기 논의한 바와 같은 메트릭(125)을 생성하고 활용하는 것을 포함한다. 그렇지 않으면, 대안의 업샘플링 동작이 사용된다. 이들 2개의 경우들이 후술된다.
도 8은 본원의 실시예들에 따라 제1 구성에 대한 메트릭을 생성하는 것을 예시하는 예시도이다(체크할 특정한 조건은, 2개의 범위 극단값들(extremes) 중 하나, 예를 들어, Y가 코너들 중 하나, 예를 들어, 하부-우측 코너에 적어도 3회 나타나고, 다른 극단값이 반대 코너에 적어도 1회 나타난다).
언급한 바와 같이, X 및 Y로 마킹된 엘리먼트들에 대한 값들은 이들이 임계 범위내에 있다는 것을 보장하기 위해 테스트된다. 다른 엘리먼트들은 X와 Y의 블렌드인 값들을 포함할 가능성이 있는데, 이는 이들이 값(X)을 갖는 엘리먼트들의 면적 전체(area full)를 값(Y)을 갖는 엘리먼트들의 면적 전체로부터 분리하는 선명한 경계의 다운샘플링 필터링으로부터 기인될 가능성이 있기 때문이다. 상기 논의한 바와 같이, 일 실시예에 따르면, 각 엘리먼트의 특정한 값은 그들의 면적 중 얼마나 많은 면적이 식별하고자 하는 이상적인 직선의 좌측 또는 우측상에 있는지에 의존할 수 있다. 특히, 직선을 식별할 수 있는 방식은 2개의 파라미터들: α 및 β를 계산함에 의해서이다.
이러한 구성에서, (1x1 단위로 각 엘리먼트의 치수를 정규화한) α ≥ 1/2 및 0 ≤ β ≤ 1을 가정할 수 있다. 이것이 이런 경우가 아니면, 테스트하의 엘리먼트들의 3×3 블록을 단지 플립하거나 회전시킬 수 있다.
도 8의 테스트하의 엘리먼트들로부터 알 수 있는 바와 같이, 재구성하기 원하는 라인의 각도가 (B+C), (D+E) 및 (G+H)에서 찾을 값들에 영향을 미친다. 임의의 경우에서, 이들 값들은 2X와 2Y 사이의 어딘가에 있지만, 라인이 있는 위치 및 그 경사에 따라, 이들은 2X에 더 근접하거나 2Y에 더 근접할 수 있다. 3×3 블록에서의 엘리먼트들의 값들이 선형 필터링의 일부 종류로 다운샘플링하는 것으로부터 발생한다는 것을 가정하면, "선형 보간"(또는 "LERP")로서 공지된 동작을 레버리징할 수 있다. 이 동작은 매우 효율적이고 다음에 따라 작용한다.
Figure 112014016324814-pct00001
실제로, 이 동작은, 업샘플링된 레벨(훨씬 더 높은 해상도)에 있었던 것처럼, (B+C)의 값을 획득하기 위해 사용될 수 있다: 파라미터 m으로서 사다리꼴의 높이를 사용하여, 2Y의 값(화이트인 엘리먼트들 양자)으로 2X의 값(X가 상기 이미지에 도시된 그레이의 음영이라는 것을 가정하면 그레이의 엘리먼트들 양자)이 선형적으로 보간될 수 있다. (B+C)의 경우에서, 펠들(pels)은 1 면(side)을 갖기 때문에, m이 (1+α-β)와 동일하다는 것을 확인하는 것은 용이하다.
그 결과로서, 2개의 변수들(α 및 β)을 풀 수 있는 2개의 선형 방정식들을 갖는다(엘리먼트들(A, B, C, D, E, F, G, H, I) 및 범위 극단값들(X, Y)이 모두 널리 알려진 양들이라는 것에 유의한다).
Figure 112014016324814-pct00002
따라서, 본원의 실시예들은 상기 방정식들의 해를 구함(solving)으로써 α 및 β의 값들을 계산하고/추정하는 것을 포함한다. 이 값들을 통해, 업샘플링된 레벨에서 복제할 이상적인 직선이 일 품질 레벨로부터 다음 품질로 업샘플링할 때 바람직하지 못한 흐릿한(blurred) 계단 현상들의 생성을 회피하기 위해 사용될 수 있다. 특히, β가 클 때 추정을 향상시키기 위해, 본원의 실시예는 필요하다면 (D+G)에 대한 추가의 방정식을 포함할 수 있다.
도 9는 본원의 실시예들에 따라 제2 구성에 대한 메트릭을 생성하는 것을 예시하는 예시도이다(체크할 특정한 조건은, 2개의 범위 극단값들 중 하나, 예를 들어, Y가 하나의 코너를 포함하는 일측 상에, 예를 들어, 하부-우측 코너를 포함하는 우측상에 적어도 2회 나타나고, 다른 극단값이 반대 코너를 포함하는 반대측상에 적어도 2회 나타난다).
이러한 구성에 따르면, α ≥ 1/2 및 0 ≤ β ≤ 1이라는 것이 가정된다(다시, 이 경우가 아니면, 3×3 블록은 플립되거나 회전될 수 있다). 다시, α 및 β의 값들을 추정하는 것을 도울 수 있는 3개의 방정식들을 가져서, 직선을 재구성한다.
Figure 112014016324814-pct00003
다시, 또한 여기서, α 및 β의 추정치들을 더 개선하는 것을 도울 수 있는 2개의 미지수들을 갖는 3개의 방정식들을 갖는다.
이전에 논의한 바와 같이, 디블렌딩 필터링 업샘플링 알고리즘은 2 보다 많은 차원(예를 들어, 3D 이미지들, 홀로그래픽 이미지들 등)을 갖는 신호들에 대한 사용을 위해 확장될 수 있다.
도 10은 본원의 실시예들에 따라 신호의 엘리먼트들을 상위 품질 레벨로 업샘플링하기 위해 메트릭(1025)을 활용한 결과들을 예시하는 예시도이다. 도시되어 있는 바와 같이, 신호 프로세서(140)는 이전에 논의한 바와 같은 방식으로 메트릭(1025)을 생성하기 위해 단계(A)에 알고리즘을 활용한다. 메트릭(1025)에 기초하여, 신호 프로세서(140)는 신호(1010-1)의 렌디션을 신호(1010-2)의 렌디션으로 업샘플링한다. 메트릭(1025)의 사용이 업샘플링 동안 경계 정의 메트릭(1025)의 무결성을 어떻게 보전하는지 유의한다.
도 11은 본원의 실시예들에 따른 컴퓨터 프로세싱을 제공하는 컴퓨터 시스템(800)의 예시적인 블록도이다.
컴퓨터 시스템(800)은, 스위치, 라우터, 서버, 클라이언트로서 동작하는, 네트워크 디바이스, 프로세싱 디바이스, 네트워크 단말, 콘솔, 휴대용 컴퓨팅 디바이스, 워크스테이션, 인코딩 디바이스, 플레이백 디바이스, 텔레비전, 프로세싱 회로, 개인 컴퓨터 등과 같은 컴퓨터화된 디바이스일 수 있거나 이를 포함할 수 있다..
아래의 논의는 이전에 논의한 바와 같은 신호 프로세서(140)와 연관된 기능을 어떻게 수행하는지 나타내는 기본 실시예를 제공한다는 것에 유의한다. 그러나, 본원에 설명한 바와 같은 동작들을 수행하는 실제 구성은 각각의 애플리케이션에 의존하여 변할 수 있다는 것에 유의해야 한다.
도시되어 있는 바와 같이, 본 예의 컴퓨터 시스템(800)은, 디지털 정보가 저장되고 검색될 수 있는 비일시적 타입의 매체와 같은 컴퓨터 판독가능한 저장 매체(812), 컴퓨터 판독가능한 하드웨어 저장 매체 등을 커플링하는 인터커넥트(interconnect)(811)를 포함한다. 컴퓨터 시스템(800)은 프로세서(813), I/O 인터페이스(814), 및 통신 인터페이스(817)를 더 포함할 수 있다.
I/O 인터페이스(814)는 저장소(repository)(180), 및 만약 존재한다면, 디스플레이 스크린, 키보드, 컴퓨터 마우스 등과 같은 주변 디바이스들(816)에 접속을 제공한다.
컴퓨터 판독가능한 저장 매체(812)(예를 들어, 하드웨어 저장 매체)는 메모리, 광학 스토리지, 하드 드라이브, 플로피 디스크 등과 같은 임의의 적합한 디바이스 및/또는 하드웨어일 수 있다. 컴퓨터 판독가능한 저장 매체는 신호 프로세서(140)와 연관된 명령들을 저장하기 위한 비일시적 저장 매체일 수 있다. 명령들은 본원에 논의한 바와 같은 임의의 동작들을 수행하기 위해 신호 프로세서(140)와 같은 각각의 리소스에 의해 실행된다.
통신 인터페이스(817)는 컴퓨터 시스템(800)이 원격 소스들로부터 정보를 검색하기 위해 네트워크(190)를 통해 통신할 수 있게 하고 다른 컴퓨터들, 스위치들, 클라이언트들, 서버들 등과 통신할 수 있게 한다. I/O 인터페이스(814)는 또한 프로세서(813)가 저장소(180)로부터 저장된 정보를 검색할 수 있게 하거나 그 저장된 정보의 검색을 시도할 수 있게 한다.
도시되어 있는 바와 같이, 컴퓨터 판독가능한 저장 매체(812)는 신호 프로세서 프로세스(440-2)와 같이 프로세서(813)에 의해 실행된 신호 프로세서 애플리케이션(140-1)으로 인코딩될 수 있다.
컴퓨터 시스템(800) 또는 인코더(140)가 데이터 및/또는 로직 명령들을 저장하는 컴퓨터 판독가능한 저장 매체(812)(예를 들어, 하드웨어 저장 매체, 비일시적 저장 매체 등)를 포함하도록 구현될 수 있다는 것에 유의한다.
컴퓨터 시스템(800)은 이러한 명령들을 실행하고 본원에 논의한 바와 같은 동작들을 수행하기 위한 프로세서(813)를 포함할 수 있다. 그에 따라, 실행될 때, 신호 프로세서 애플리케이션(140-1)과 연관된 코드가 본원에 논의한 바와 같은 프로세싱 기능을 지원할 수 있다. 언급한 바와 같이, 신호 프로세서(140)는 인코딩 및/또는 디코딩을 지원하도록 구성될 수 있다.
일 실시예의 동작 동안, 프로세서(813)는 컴퓨터 판독가능한 저장 매체(812)에 저장된 신호 프로세서 애플리케이션(140-1)의 명령들을 론치(launch)하고, 구동하고, 실행하고, 해석하거나 그렇지 않으면 수행하기 위해 인터커넥트(811)의 사용을 통해 컴퓨터 판독가능한 저장 매체(812)에 액세스한다. 신호 프로세서 애플리케이션(140-1)의 실행은 프로세서(813)의 프로세싱 기능을 생성한다. 다시 말해, 프로세서(813)와 연관된 인코더 프로세스(440-2)는 컴퓨터 시스템(800)에서 프로세서(813)내에서 또는 그 상에서 신호 프로세서 애플리케이션(140-1)을 실행하는 하나 이상의 양태들을 나타낸다.
당업자는 컴퓨터 시스템(800)이 신호 프로세서 애플리케이션(140-1)을 실행하기 위해 하드웨어 프로세싱 리소스들의 할당 및 사용을 제어하는 운영 시스템과 같은 다른 프로세스들 및/또는 소프트웨어 및 하드웨어 컴포넌트들을 포함할 수 있다는 것을 이해할 것이다.
상이한 실시예들에 따르면, 컴퓨터 시스템은 개인 컴퓨터 시스템, 데스크탑 컴퓨터, 랩탑, 노트북, 넷북 컴퓨터, 메인프레임 컴퓨터 시스템, 핸드헬드 컴퓨터, 워크스테이션, 네트워크 컴퓨터, 애플리케이션 서버, 스토리지 디바이스, 카메라, 셋탑 박스, 모바일 디바이스, 비디오 게임 콘솔, 핸드헬드 비디오 게임 디바이스와 같은 소비자 전자 디바이스, 스위치, 모뎀, 라우터와 같은 주변 디바이스, 또는 일반적으로 임의의 타입의 컴퓨팅 또는 전자 디바이스를 포함하는 임의의 다양한 타입의 디바이스들일 수도 있지만 이에 제한되지 않는다는 것에 유의한다.
도 12는 본원의 실시예에 따라 메트릭 업샘플을 생성하고 활용하는 방법을 예시하는 예시적인 플로우차트(1200)이다.
단계(1210)에서, 신호 프로세서(140)는 제1 품질 레벨의 신호(115-1)의 렌디션으로부터 제2 상위 품질 레벨의 신호(115-1)의 렌디션의 다수의 엘리먼트들로 업샘플링하기 위한 엘리먼트를 선택한다.
단계(1220)에서, 신호 프로세서(140)는 제1 품질 레벨의 신호의 렌디션에서 선택된 엘리먼트 주위의 엘리먼트들의 세팅들에 기초하여 메트릭(125)을 생성한다. 메트릭(125)은 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트와 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트 사이의 경계를 정의한다.
단계(1230)에서, 신호 프로세서(140)는 제2 품질 레벨의 신호에서의 다수의 엘리먼트들에 대한 세팅들을 계산하기 위해 메트릭(125)을 활용한다.
서브-단계(1240)에서, 신호 프로세서(140)는 메트릭에 의해 정의된 경계가 제2 품질 레벨에서의 신호에서 다수의 이미지 엘리먼트들 중 특정한 엘리먼트와 교차한다는 것을 검출한다.
서브-단계(1250)에서, 특정한 엘리먼트에 대해, 신호 프로세서(140)는 ⅰ) 특정한 엘리먼트가 경계와 엘리먼트들의 제1 세트 사이에 얼마나 많이 존재하는지를 나타내는 제1 값, 및 ⅱ) 특정한 엘리먼트가 경계와 엘리먼트들의 제2 세트 사이에 얼마나 많이 존재하는지를 나타내는 제2 값을 계산한다.
서브-단계(1260)에서, 신호 프로세서(140)는 제1 값 및 제2 값에 기초하여 특정한 엘리먼트에 대한 세팅을 계산한다.
본원의 기법들이 신호들을 프로세싱하고 재구성하는데 사용하기에 매우 적합하다는 것에 다시 유의한다. 그러나, 본원의 실시예들이 이러한 애플리케이션들에서의 사용에 제한되지 않으며, 본원에서 논의되는 기법들이 다른 애플리케이션들에 또한 매우 적합하다는 것을 이해해야 한다.
본원에 설명한 설명에 기초하여, 다수의 특정한 상세사항들은 청구물의 완전한 이해를 제공하기 위해 설명되었다. 그러나, 청구물이 이들 특정한 상세사항들 없이 실시될 수도 있다는 것을 당업자는 이해할 것이다. 다른 경우들에서, 당업자에게 공지되어 있는 방법들, 장치들, 시스템들 등은 청구물을 모호하게 하지 않기 위해 상세히 설명하지 않는다. 상세한 설명의 일부 부분들은 컴퓨터 메모리와 같은 컴퓨팅 시스템 메모리내에 저장된 데이터 비트들 또는 이진 디지털 신호들에 대한 동작들의 알고리즘들 또는 심볼 표현들에 관하여 제공되었다. 이들 알고리즘적 설명들 또는 표현들은 다른 당업자에게 작업의 본질을 전달하기 위해 데이터 프로세싱 분야의 당업자에 의해 사용된 기법들의 예들이다. 본원에 일반적으로 설명한 바와 같은 알고리즘은 동작들의 일관된 시퀀스 또는 원하는 결과를 초래하는 유사한 프로세싱인 것으로 고려된다. 이러한 맥락에서, 동작들 또는 프로세싱은 물리량들의 물리적 조작을 수반한다. 통상적으로, 반드시는 아니더라도, 이러한 양들은 저장되고, 전달되고, 결합되고, 비교되거나 그렇지 않으면 조작될 수 있는 전기 또는 자기 신호들의 형태를 취할 수도 있다. 이러한 신호들을 비트들, 데이터, 값들, 엘리먼트들, 심볼들, 문자들, 용어들, 수들, 부호들 등으로서 지칭하는 것이 주로 공통 사용으로 인해 때때로 편리하다는 것이 입증되었다. 그러나, 이들 및 유사한 용어들 중 모두가 적절한 물리적 양들과 연관되고 단지 편리한 라벨들이라는 것을 이해해야 한다. 구체적으로 다르게 언급하지 않으면, 아래의 논의로부터 명백한 바와 같이, 본원 전반적으로, "프로세싱하는", "컴퓨팅하는", "계산하는", "결정하는" 등과 같은 용어들을 활용하는 논의들은 메모리들, 레지스터들, 또는 다른 정보 스토리지 디바이스들, 송신 디바이스들, 또는 컴퓨팅 플랫폼의 디스플레이 디바이스들내에서 물리적 전자 또는 자기 양들로서 표현된 데이터를 조작하거나 변환하는 컴퓨터 또는 유사한 전자 컴퓨팅 디바이스와 같은 컴퓨팅 플랫폼의 액션들 또는 프로세스들을 지칭한다.
본 발명이 본 발명의 바람직한 실시예들을 참조하여 구체적으로 도시되고 설명되었지만, 형태 및 상세사항들에서의 다양한 변경들이 첨부한 청구항들에 의해 정의된 바와 같은 본 출원의 사상 및 범위를 벗어나지 않고 그 안에서 이루어질 수도 있다는 것을 당업자는 이해할 것이다. 이러한 변형들은 본 출원의 범위에 의해 커버되도록 의도된다. 이와 같이, 본 출원의 실시예들의 상술한 설명은 제한하는 것으로 의도되지 않는다. 오히려, 본 발명에 대한 임의의 제한들은 아래의 청구항들에 제공된다.

Claims (19)

  1. 계층에서 상위 품질 레벨로 신호를 디코딩하는 방법으로서,
    주어진 품질 레벨에서의 신호의 각각의 렌디션(rendition)은 복수의 엘리먼트들을 포함하고, 각각의 엘리먼트는 주어진 위치에서의 신호의 샘플에 대응하며, 각각의 엘리먼트는 적어도 하나의 세팅에 의해 특징화되며, 상기 방법은,
    제1 품질 레벨의 상기 신호의 렌디션으로부터, 제2 품질 레벨의 상기 신호의 렌디션의 다수의 엘리먼트들로 업샘플링하기 위한 엘리먼트를 선택하는 단계 ― 상기 제2 품질 레벨은 상기 제1 품질 레벨보다 높음 ―;
    상기 제1 품질 레벨의 상기 신호의 렌디션에서 선택된 엘리먼트 주위의 엘리먼트들의 세팅들에 기초하여 메트릭(metric)을 생성하는 단계 ― 상기 메트릭은 상기 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트와 상기 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트 사이의 경계를 규정함 ―;
    상기 메트릭을 사용하여 상기 제2 품질 레벨의 상기 신호의 렌디션에서의 상기 다수의 엘리먼트들을 세부 부분들(subdivisions)로 분할하는 단계; 및
    상기 메트릭에 의해 규정된 상기 다수의 엘리먼트들의 상기 세부 부분들을 활용하여 상기 제2 품질 레벨의 상기 신호에서의 상기 다수의 엘리먼트들에 대한 세팅들을 계산하는 단계
    를 포함하는,
    신호를 디코딩하는 방법.
  2. 제1항에 있어서,
    상기 선택된 엘리먼트의 세팅이 상기 엘리먼트들의 제1 세트의 세팅들에 의해 규정되는 하한 및 상기 엘리먼트들의 제2 세트의 세팅들에 의해 규정되는 상한을 갖는 범위 내에 있다는 검출에 응답하여 상기 메트릭을 생성하는 단계를 더 포함하는,
    신호를 디코딩하는 방법.
  3. 제1항에 있어서,
    상기 메트릭에 의해 규정된 상기 다수의 엘리먼트들의 상기 세부 부분들을 활용하여 상기 제2 품질 레벨의 상기 신호에서의 상기 다수의 엘리먼트들에 대한 세팅들을 계산하는 단계는,
    상기 다수의 엘리먼트들 중에서, 상기 메트릭에 의해 규정된 경계와 교차하는 제1 엘리먼트를 식별하는 단계;
    상기 제1 엘리먼트에 대해:
    상기 메트릭을 활용하여 상기 제1 엘리먼트에 대한 세팅을 계산하는 단계 ― 상기 세팅은 상기 엘리먼트들의 제1 세트에 할당된 세팅과 상기 엘리먼트들의 제2 세트에 할당된 세팅 사이의 값임 ―;
    상기 다수의 엘리먼트들 중에서 상기 메트릭에 의해 규정된 경계와 교차하지 않는 제2 엘리먼트를 식별하는 단계;
    상기 제2 엘리먼트에 대해:
    상기 제2 엘리먼트의 전부가 상기 메트릭에 의해 규정된 경계와 상기 엘리먼트들의 제1 세트 사이에 존재한다는 검출에 응답하여, 상기 제2 엘리먼트를 상기 엘리먼트들의 제1 세트에 할당된 세팅과 동일한 값으로 설정하는 단계; 및
    상기 제2 엘리먼트의 전부가 상기 메트릭에 의해 규정된 경계와 상기 엘리먼트들의 제2 세트 사이에 존재한다는 검출에 응답하여, 상기 제2 엘리먼트를 상기 엘리먼트들의 제2 세트에 할당된 세팅과 동일한 값으로 설정하는 단계
    를 포함하는,
    신호를 디코딩하는 방법.
  4. 제1항에 있어서,
    상기 선택된 엘리먼트, 상기 엘리먼트들의 제1 세트, 및 상기 엘리먼트들의 제2 세트는, 상기 제1 품질 레벨에서의 이미지의 일부를 규정하고,
    상기 경계는 상기 제1 품질 레벨에서의 상기 이미지의 상기 일부 위에 놓인 선(line) 경계에 대응하고, 상기 선 경계는 상기 제2 품질 레벨에서의 상기 신호에서 다수의 이미지 엘리먼트들에 대한 세팅들을 계산하기 위해 사용되는,
    신호를 디코딩하는 방법.
  5. 제4항에 있어서,
    상기 선택된 엘리먼트의 세팅이, 상기 엘리먼트들의 제1 세트의 세팅들에 의해 규정되는 하한 및 상기 엘리먼트들의 제2 세트의 세팅들에 의해 규정되는 상한을 갖는 범위 내에 있다는 검출에 응답하여 상기 메트릭을 생성하는 단계를 더 포함하는,
    신호를 디코딩하는 방법.
  6. 제1항에 있어서,
    상기 메트릭에 의해 규정된 상기 다수의 엘리먼트들의 상기 세부 부분들을 활용하여 상기 제2 품질 레벨의 상기 신호에서의 상기 다수의 엘리먼트들에 대한 세팅들을 계산하는 단계는,
    상기 메트릭에 의해 규정된 경계가 상기 제2 품질 레벨의 신호에서 다수의 이미지 엘리먼트들 중 특정한 엘리먼트와 교차한다는 것을 검출하는 단계;
    상기 특정한 엘리먼트에 대해, ⅰ) 상기 경계와 상기 엘리먼트들의 제1 세트 사이에 존재하는 상기 특정한 엘리먼트의 퍼센티지에 대응하는 제1 값, 및 ⅱ) 상기 경계와 상기 엘리먼트들의 제2 세트 사이에 존재하는 상기 특정한 엘리먼트의 퍼센티지에 대응하는 제2 값을 계산하는 단계; 및
    상기 제1 값 및 상기 제2 값에 기초하여, 상기 엘리먼트들의 제1 세트의 세팅들에 의해 규정되는 하한 및 상기 엘리먼트들의 제2 세트의 세팅들에 의해 규정되는 상한을 갖는 범위 내에서 상기 특정한 엘리먼트에 대한 세팅을 계산하는 단계
    를 포함하는,
    신호를 디코딩하는 방법.
  7. 제1항에 있어서,
    상기 선택된 엘리먼트, 상기 엘리먼트들의 제1 세트, 및 상기 엘리먼트들의 제2 세트는, 상기 제1 품질 레벨에서의 체적 이미지(volumetric image)의 일부를 규정하고,
    상기 메트릭은 상기 제1 품질 레벨에서의 상기 체적 이미지의 일부에서 표면 경계를 규정하고, 상기 메트릭은 상기 제2 품질 레벨에서의 상기 신호에서 다수의 체적 이미지 엘리먼트들에 대한 세팅들을 계산하기 위해 사용되는,
    신호를 디코딩하는 방법.
  8. 제7항에 있어서,
    상기 선택된 엘리먼트의 세팅이, 상기 엘리먼트들의 제1 세트의 세팅들에 의해 규정되는 하한 및 상기 엘리먼트들의 제2 세트의 세팅들에 의해 규정되는 상한을 갖는 범위 내에 있다는 검출에 응답하여 상기 메트릭을 생성하는 단계를 더 포함하는,
    신호를 디코딩하는 방법.
  9. 제8항에 있어서,
    상기 메트릭에 의해 규정된 상기 다수의 엘리먼트들의 상기 세부 부분들을 활용하여 상기 제2 품질 레벨의 상기 신호에서의 상기 다수의 엘리먼트들에 대한 세팅들을 계산하는 단계는,
    상기 메트릭에 의해 규정된 상기 표면 경계가 상기 제2 품질 레벨에서의 상기 체적 이미지에서 상기 다수의 이미지 엘리먼트들 중 특정한 체적 엘리먼트와 교차한다는 것을 검출하는 단계;
    상기 특정한 체적 엘리먼트에 대해, ⅰ) 상기 표면 경계와 상기 엘리먼트들의 제1 세트 사이에 존재하는 상기 특정한 체적 엘리먼트의 퍼센티지에 대응하는 제1 값, 및 ⅱ) 상기 표면 경계와 상기 엘리먼트들의 제2 세트 사이에 존재하는 상기 특정한 체적 엘리먼트의 퍼센티지에 대응하는 제2 값을 계산하는 단계; 및
    제1 양 및 제2 양의 세팅들에 기초하여 범위내에서 상기 특정한 체적 엘리먼트에 대한 세팅을 계산하는 단계
    를 포함하는,
    신호를 디코딩하는 방법.
  10. 제1항에 있어서,
    상기 제1 품질 레벨의 상기 신호의 렌디션에서 다수의 엘리먼트들 각각에 대해,
    업샘플링하기 위한 다음 엘리먼트를 상기 제1 품질 레벨의 상기 신호의 렌디션으로부터 선택하는 단계; 및
    상기 제1 품질 레벨의 상기 신호의 렌디션에서 선택된 다음 엘리먼트 주위의 엘리먼트들의 세팅들에 기초하여 각각의 메트릭을 조건적으로 생성하는 단계 ― 상기 각각의 메트릭은 상기 선택된 다음 엘리먼트 주위의 엘리먼트들의 제1 세트와 상기 선택된 다음 엘리먼트 주위의 엘리먼트들의 제2 세트 사이의 경계를 나타냄 ―;
    를 반복하는 단계를 더 포함하는,
    신호를 디코딩하는 방법.
  11. 제1항에 있어서,
    상기 엘리먼트들의 제1 세트 및 상기 엘리먼트들의 제2 세트를 선택하기 위해 상기 선택된 엘리먼트 주위의 상기 엘리먼트들의 세팅들을 분석하는 단계;
    상기 선택된 엘리먼트 주위의 상기 엘리먼트들의 제1 세트에서의 적어도 하나의 엘리먼트들의 세팅들에 기초하여 제1 값을 생성하는 단계;
    상기 선택된 엘리먼트 주위의 상기 엘리먼트들의 제2 세트에서의 적어도 2개의 엘리먼트들의 세팅들에 기초하여 제2 값을 생성하는 단계;
    상기 제1 값이 범위의 상한을 규정하고 상기 제2 값이 상기 범위의 하한을 규정하는 범위를 생성하는 단계; 및
    상기 제2 품질 레벨의 상기 신호에서 상기 다수의 이미지 엘리먼트들에 대한 세팅들을 생성하기 위해 상기 메트릭 및 범위를 활용하는 단계
    를 더 포함하는,
    신호를 디코딩하는 방법.
  12. 제11항에 있어서,
    상기 메트릭을 생성하는 단계는 상기 선택된 엘리먼트의 세팅이 상기 범위내에 있다는 검출에 응답하여 발생하는,
    신호를 디코딩하는 방법.
  13. 제1항에 있어서,
    상기 신호가 상기 제1 품질 레벨의 상기 신호의 렌디션으로 상기 계층에서 연속적으로 다운샘플링되는 멀티-스케일 인코딩 루프에서, 상기 선택하는 단계, 상기 생성하는 단계, 및 상기 활용하는 단계를 반복적으로 구현하는 단계를 더 포함하고,
    상기 멀티-스케일 인코딩 루프에서, 상기 선택하는 단계, 상기 생성하는 단계, 및 상기 활용하는 단계를 반복적으로 구현하는 것은, 업샘플링 동작 옵션들을 테스트하고, 하위 품질 레벨에서의 상기 신호의 렌디션을 상기 계층에서 상위 품질 레벨에서의 상기 신호의 렌디션으로 업샘플링하기 위해 필요한 잔차 데이터량을 감소시키기 위해 사용되는,
    신호를 디코딩하는 방법.
  14. 제1항에 있어서,
    하위 품질 레벨의 상기 신호의 렌디션이 상위 품질 레벨의 상기 신호의 렌디션으로 업샘플링되는 멀티-스케일 디코더 루프에서, 상기 선택하는 단계, 상기 생성하는 단계, 및 상기 활용하는 단계를 구현하는 단계를 더 포함하고,
    대안의 업샘플링 동작들 대신에 상기 선택하는 단계, 상기 생성하는 단계, 및 상기 활용하는 단계를 구현하는 것은, 제2 품질 레벨의 상기 신호의 렌디션을 재구성하기 위해 상기 업샘플링 이후에 필요한 잔차 데이터량을 감소시키거나 변경하는,
    신호를 디코딩하는 방법.
  15. 제1항에 있어서,
    상기 선택하는 단계, 상기 생성하는 단계, 및 상기 활용하는 단계는 제1 타입의 업샘플링 동작으로서 구현되고, 상기 방법은,
    디코딩을 위해 상기 제1 타입의 업샘플링 동작을 상기 각각의 엘리먼트에 할당할지 또는 제2 타입의 업샘플링 동작을 상기 각각의 엘리먼트에 할당할지를 결정하기 위해, 상기 제1 품질 레벨의 상기 신호의 렌디션에서의 다수의 엘리먼트들 각각에 테스트를 적용하는 단계 ― 상기 테스트는 선택된 각각의 엘리먼트의 세팅이 상기 선택된 각각의 엘리먼트 주위의 엘리먼트들의 각각의 제1 세트의 세팅들 및 상기 선택된 각각의 엘리먼트 주위의 엘리먼트들의 각각의 제2 세트의 세팅들에 의해 규정된 범위내에 있는지 결정하는 것을 포함하고, 상기 각각의 선택된 엘리먼트는 상기 엘리먼트들의 상기 각각의 제1 세트와 상기 엘리먼트들의 상기 각각의 제2 세트 사이에 배치됨 ―;
    상기 각각의 엘리먼트의 각각의 세팅이 상기 각각의 엘리먼트에 대해 생성된 상기 범위내에 있는 상기 각각의 엘리먼트들을 업샘플링하기 위해 상기 제1 타입의 업샘플링 동작을 할당하는 단계; 및
    상기 각각의 엘리먼트의 각각의 세팅이 상기 각각의 엘리먼트에 대해 생성된 상기 범위 외부에 있는 상기 각각의 엘리먼트들을 업샘플링하기 위해 상기 제2 타입의 업샘플링 동작을 할당하는 단계
    를 더 포함하는,
    신호를 디코딩하는 방법.
  16. 제1항에 있어서,
    상기 선택된 엘리먼트에 관한 상기 경계의 위치 및 배향은 상기 선택된 엘리먼트 주위의 엘리먼트들의 세팅들에 의존하는,
    신호를 디코딩하는 방법.
  17. 계층(hierarchy)에서 연속적으로 상위 품질 레벨들로 신호를 재구성하는 방법으로서,
    제1 세트의 데이터를 디코딩하는 단계;
    디코딩된 제1 세트의 데이터를 활용하여 상기 신호를 제1 품질 레벨에 따라 재구성하는 단계;
    제2 품질 레벨의 상기 신호의 제1 렌디션을 재구성하기 위해 상기 제1 품질 레벨로 재구성된 신호에 업샘플링 동작을 적용하는 단계 ― 상기 제2 품질 레벨은 상기 제1 품질 레벨보다 높고, 상기 업샘플링 동작을 적용하는 단계는, 각각의 엘리먼트에 대해 제1 타입의 업샘플링 동작을 할당할지 또는 각각의 엘리먼트에 제2 타입의 업샘플링 동작을 할당할지를 결정하기 위해, 상기 제1 품질 레벨의 상기 신호의 렌디션에서의 다수의 각각의 엘리먼트들 각각에 테스트를 적용하는 단계를 포함함 ―;
    제2 세트의 데이터를 디코딩하는 단계;
    잔차 데이터를 재구성하기 위해 디코딩된 제2 세트의 데이터를 활용하는 단계; 및
    상기 제2 품질 레벨의 상기 신호의 제1 렌디션과 상기 잔차 데이터를 결합하여, 상기 제2 품질 레벨의 상기 신호의 제2 렌디션을 생성하는 단계
    를 포함하고,
    상기 제1 타입의 업샘플링 동작은,
    상기 제1 품질 레벨의 상기 신호의 일부에서 경계를 식별하고,
    상기 경계를 사용하여 상기 제2 품질 레벨의 상기 신호의 제1 렌디션에서의 다수의 엘리먼트들을 세부 부분들(subdivisions)로 분할하고; 그리고
    상기 경계에 의해 규정된 상기 다수의 엘리먼트들의 상기 세부 부분들을 활용하여 상기 제2 품질 레벨로 업샘플링된 엘리먼트 값들을 생성하는 것
    을 포함하는,
    신호를 재구성하는 방법.
  18. 명령들이 저장되어 있는 컴퓨터 판독가능한 저장 하드웨어로서,
    상기 명령들은 프로세싱 디바이스에 의해 수행될 때, 상기 프로세싱 디바이스로 하여금,
    제1 품질 레벨에서의 신호의 렌디션으로부터, 제2 품질 레벨의 신호의 렌디션의 다수의 엘리먼트들로 업샘플링하기 위한 엘리먼트를 선택하는 동작 ― 상기 제2 품질 레벨은 상기 제1 품질 레벨 보다 높음 ―;
    상기 제1 품질 레벨의 상기 신호의 렌디션에서 선택된 엘리먼트 주위의 엘리먼트들의 세팅들에 기초하여 메트릭을 생성하는 동작 ― 상기 메트릭은 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트와 상기 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트 사이의 경계를 규정함 ―;
    상기 메트릭을 사용하여 상기 제2 품질 레벨의 상기 신호의 렌디션에서의 상기 다수의 엘리먼트들을 세부 부분들(subdivisions)로 분할하는 동작; 및
    상기 메트릭에 의해 규정된 상기 다수의 엘리먼트들의 상기 세부 부분들을 활용하여 상기 제2 품질 레벨의 상기 신호에서의 상기 다수의 엘리먼트들에 대한 세팅들을 계산하는 동작
    을 수행하게 하는,
    컴퓨터 판독가능한 저장 하드웨어.
  19. 컴퓨터 시스템으로서,
    프로세서;
    상기 프로세서에 의해 실행되는 애플리케이션과 연관된 명령들을 저장하는 메모리 유닛; 및
    상기 프로세서와 상기 메모리 유닛을 커플링하여, 상기 컴퓨터 시스템으로 하여금 상기 애플리케이션을 실행하여,
    제1 품질 레벨에서의 신호의 렌디션으로부터, 제2 품질 레벨의 신호의 렌디션의 다수의 엘리먼트들로 업샘플링하기 위한 엘리먼트를 선택하는 동작 ― 상기 제2 품질 레벨은 상기 제1 품질 레벨 보다 높음 ―;
    상기 제1 품질 레벨의 상기 신호의 렌디션에서 선택된 엘리먼트 주위의 엘리먼트들의 세팅들에 기초하여 메트릭을 생성하는 동작 ― 상기 메트릭은 선택된 엘리먼트 주위의 엘리먼트들의 제1 세트와 상기 선택된 엘리먼트 주위의 엘리먼트들의 제2 세트 사이의 경계를 규정함 ―;
    상기 메트릭을 사용하여 상기 제2 품질 레벨의 상기 신호의 렌디션에서의 상기 다수의 엘리먼트들을 세부 부분들(subdivisions)로 분할하는 동작; 및
    상기 메트릭에 의해 규정된 상기 다수의 엘리먼트들의 상기 세부 부분들을 활용하여 상기 제2 품질 레벨의 상기 신호에서의 상기 다수의 엘리먼트들에 대한 세팅들을 계산하는 동작
    을 수행할 수 있게 하는, 인터커넥트(interconnect)
    를 포함하는,
    컴퓨터 시스템.
KR1020147004291A 2011-07-21 2012-07-20 공간적으로 스케일러블한 비디오 코딩을 위한 적응적 업샘플링 KR102165078B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/188,220 2011-07-21
US13/188,220 US9129411B2 (en) 2011-07-21 2011-07-21 Upsampling in a tiered signal quality hierarchy
PCT/IB2012/053724 WO2013011494A1 (en) 2011-07-21 2012-07-20 Adaptive upsampling for spatially scalable video coding

Publications (2)

Publication Number Publication Date
KR20140070535A KR20140070535A (ko) 2014-06-10
KR102165078B1 true KR102165078B1 (ko) 2020-10-14

Family

ID=46801599

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147004291A KR102165078B1 (ko) 2011-07-21 2012-07-20 공간적으로 스케일러블한 비디오 코딩을 위한 적응적 업샘플링

Country Status (7)

Country Link
US (1) US9129411B2 (ko)
EP (1) EP2735159A1 (ko)
JP (1) JP6137699B2 (ko)
KR (1) KR102165078B1 (ko)
CN (1) CN103931181B (ko)
CA (1) CA2842439A1 (ko)
WO (1) WO2013011494A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107750456B (zh) 2015-04-13 2022-02-11 V-诺瓦国际有限公司 利用依赖于复杂性信息的一个信号的数据速率目标对多个信号进行编码
US9799102B2 (en) * 2015-12-02 2017-10-24 Adobe Systems Incorporated Smoothing images using machine learning
GB2553556B (en) * 2016-09-08 2022-06-29 V Nova Int Ltd Data processing apparatuses, methods, computer programs and computer-readable media
EP3721624A1 (en) 2017-12-06 2020-10-14 V-Nova International Limited Methods and apparatuses for hierarchically encoding and decoding a bytestream
EP3496403A1 (en) 2017-12-06 2019-06-12 V-Nova International Limited Hierarchical data structure
GB2618721B (en) 2019-03-20 2024-03-13 V Nova Int Ltd Low complexity enhancement video coding
WO2021005349A1 (en) 2019-07-05 2021-01-14 V-Nova International Ltd Quantization of residuals in video coding
JP7455533B2 (ja) 2019-09-05 2024-03-26 Tdk株式会社 音響デバイス
GB2598701B (en) 2020-05-25 2023-01-25 V Nova Int Ltd Wireless data communication system and method

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6229578B1 (en) * 1997-12-08 2001-05-08 Intel Corporation Edge-detection based noise removal algorithm
US6950469B2 (en) * 2001-09-17 2005-09-27 Nokia Corporation Method for sub-pixel value interpolation
KR100703788B1 (ko) * 2005-06-10 2007-04-06 삼성전자주식회사 스무딩 예측을 이용한 다계층 기반의 비디오 인코딩 방법,디코딩 방법, 비디오 인코더 및 비디오 디코더
EP2160037A3 (en) * 2006-06-23 2010-11-17 Imax Corporation Methods and systems for converting 2D motion pictures for stereoscopic 3D exhibition
US8199812B2 (en) * 2007-01-09 2012-06-12 Qualcomm Incorporated Adaptive upsampling for scalable video coding
US20100013920A1 (en) * 2008-07-21 2010-01-21 Safeview, Inc. Surveillance imaging with upsampling
US20120051432A1 (en) * 2010-08-26 2012-03-01 Samsung Electronics Co., Ltd Method and apparatus for a video codec with low complexity encoding

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
C. Segall, et al. Spatial Scalability Within the H.264/AVC Scalable Video Coding Extension. IEEE Trans. on CSVT. Sep. 2007, Vol.17, No.9, pp.1121-1135*
H. Li, et al. A fast content-dependent interpolation approach via adaptive filtering. IEEE 10th Workshop on Multimedia Signal Processing. Oct. 2008, pp.530-534*
M. Beermann. Non-linear up-sampling for spatial scalability. JVT of ISO/IEC MPEG and ITU-T VCEG. JVT-T020. Jul. 12, 2006, pp.1-7
W-J. Han. Smoothed reference prediction for single-loop decoding. JVT of ISO/IEC MPEG and ITU-T VCEG. JVT-P085. Jul. 20, 2005, pp.1-11

Also Published As

Publication number Publication date
JP6137699B2 (ja) 2017-05-31
CA2842439A1 (en) 2013-01-24
WO2013011494A1 (en) 2013-01-24
CN103931181B (zh) 2017-09-22
EP2735159A1 (en) 2014-05-28
JP2014521275A (ja) 2014-08-25
US9129411B2 (en) 2015-09-08
CN103931181A (zh) 2014-07-16
KR20140070535A (ko) 2014-06-10
US20130294544A1 (en) 2013-11-07

Similar Documents

Publication Publication Date Title
KR102165078B1 (ko) 공간적으로 스케일러블한 비디오 코딩을 위한 적응적 업샘플링
US11595653B2 (en) Processing of motion information in multidimensional signals through motion zones and auxiliary information through auxiliary zones
KR102165147B1 (ko) 계층형 신호 디코딩 및 신호 복원
US8711943B2 (en) Signal processing and tiered signal encoding
US8977065B2 (en) Inheritance in a tiered signal quality hierarchy
WO2022237899A1 (en) Method, device, and medium for video processing
EP3195202A1 (en) System and method for restoration of dynamic range of images and video

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant