1 |
1
생성할 보간 프레임(Interpolated frame) 내의 현재 블록에 대한 특징점 기반 움직임 벡터 후보군을 생성하는 단계;상기 특징점 기반 움직임 벡터 후보군과 시-공간적 움직임 벡터 후보군을 결합하여 제1 움직임 벡터 후보군을 생성하는 단계;상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터들의 일관성을 검증하는 단계;일관성이 검증되면, 상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터를 이용하여 SBAD(Sum of Bi-directional Absolute Difference)를 산출하는 단계; 및산출된 SBAD가 최소화되는 움직임 벡터를 상기 현재 블록에 대한 움직임 벡터로 결정하는 단계를 포함하고,상기 특징점 기반 움직임 벡터 후보군을 생성하는 단계는,상기 보간 프레임과 시간적으로 인접한, 현재 프레임 및 이전 프레임에서 특징점을 검출하는 단계를 포함하되, 상기 특징점은, 상기 현재 프레임 또는 상기 이전 프레임을 대상으로 소정 크기의 검출 영역에 포함된 복수의 후보 화소들 중 어느 하나의 후보 화소를 임계값과 비교하여 검출하고,상기 임계값은, 상기 복수의 후보 화소들의 평균 화소값 및 상기 검출된 후보 화소의 화소값 사이의 차분값으로 정의되는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
2 |
2
청구항 1에서,상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터를 이용하여 SBAD(Sum of Bi-directional Absolute Difference)를 산출하는 단계는,상기 제1 움직임 벡터 후보군에 대한 중앙값 움직임 벡터를 획득하고, 획득된 중앙값 움직임 벡터에 업데이트 벡터 상수를 더하여 업데이트 움직임 벡터를 획득하는 단계; 및상기 중앙값 움직임 벡터와 상기 업데이트 움직임 벡터를 이용하여 SBAD(Sum of Bi-directional Absolute Difference)를 산출하는 단계를 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
3 |
3
청구항 1에서,상기 특징점 기반 움직임 벡터 후보군을 생성하는 단계는,상기 검출된 특징점을 중심으로 하는 특징점 패치를 상기 현재 프레임 및 상기 이전 프레임에 생성하는 단계; 및생성된 특징점 패치에 대하여 단방향 움직임 예측을 수행하여 상기 현재 블록에 대한 특징점 기반 움직임 벡터를 획득하는 단계를 더 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
4 |
4
청구항 3에서,상기 특징점 기반 움직임 벡터를 획득하는 단계는,상기 단방향 움직임 예측에 따른 단방향 움직임 벡터에 의해 지시되는 특징점 패치 중에서 상기 현재 블록과 중첩되는 특징점 패치를 결정하는 단계;결정된 특징점 패치에 따른 단방향 움직임 벡터에 대하여 상기 현재 블록과 중첩되는 영역 크기에 상응하는 가중치를 부여하는 단계; 및가중치가 부여된 단방향 움직임 벡터에 대한 평균값을 산출하여 상기 현재 블록에 대한 특징점 기반 움직임 벡터를 획득하는 단계를 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
5 |
5
청구항 4에서,상기 가중치를 부여하는 단계는,상기 현재 블록과 중첩되는 특징점 패치가 복수개이고, 복수의 특징점 패치 상호간에 중첩되는 영역이 있는 경우, 상기 복수의 특징점 패치 상호간에 중첩되는 영역은 특징점 패치에 따른 단방향 움직임 벡터를 이용한 SAD(Sum of Absolute Difference)가 가장 작은 특징점 패치의 영역으로 판단하는 단계를 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
6 |
6
청구항 1에서,상기 일관성을 검증하는 단계는,상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터들에서 선택된 움직임 벡터 쌍(pair)에 대한 차분값을 산출하는 단계; 및산출된 차분값이 모두 미리 설정된 값보다 작으면 상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터들의 일관성이 있는것으로 판단하는 단계를 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
7 |
7
청구항 1에서,일관성이 검증되지 않으면, 상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터를 이용하여 SBAD(Sum of Bi-directional Absolute Difference)를 산출하는 단계; 및산출된 SBAD의 최소값을 미리 설정된 임계값과 비교한 결과에 따라 상기 현재 블록에 대한 움직임 벡터를 결정하는 단계를 더 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
8 |
8
청구항 7에서,상기 현재 블록에 대한 움직임 벡터를 결정하는 단계는,상기 산출된 SBAD의 최소값이 상기 미리 설정된 임계값보다 작거나 같으면, 상기 산출된 SBAD의 최소값에 따른 움직임 벡터를 상기 현재 블록에 대한 움직임 벡터로 결정하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
9 |
9
청구항 7에서,상기 현재 블록에 대한 움직임 벡터를 결정하는 단계는,상기 산출된 SBAD의 최소값이 상기 미리 설정된 임계값보다 크면,상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터들에 미리 설정된 벡터 상수를 더하여 제2 움직임 벡터 후보군을 생성하는 단계;생성된 제2 움직임 벡터 후보군을 이용하여 SBAD 를 산출하는 단계; 및산출된 SBAD의 최소값을 상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터를 이용하여 산출된 SBAD의 최소값과 비교하여 상기 현재 블록에 대한 움직임 벡터를 결정하는 단계를 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
10 |
10
청구항 9에서,상기 미리 설정된 벡터 상수는, 집합에서 선택되는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
11 |
11
적어도 하나의 프로세서(processor); 및상기 적어도 하나의 프로세서가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory)를 포함하는 특징점 기반 움직임 벡터를 이용한 움직임 추정 장치에서,상기 적어도 하나의 단계는,생성할 보간 프레임(Interpolated frame) 내의 현재 블록에 대한 특징점 기반 움직임 벡터 후보군을 생성하는 단계;상기 특징점 기반 움직임 벡터 후보군과 시-공간적 움직임 벡터 후보군을 결합하여 제1 움직임 벡터 후보군을 생성하는 단계;상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터들의 일관성을 검증하는 단계;일관성이 검증되면, 상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터를 이용하여 SBAD(Sum of Bi-directional Absolute Difference)를 산출하는 단계; 및산출된 SBAD가 최소화되는 움직임 벡터를 상기 현재 블록에 대한 움직임 벡터로 결정하는 단계를 포함하고,상기 특징점 기반 움직임 벡터 후보군을 생성하는 단계는,상기 보간 프레임과 시간적으로 인접한, 현재 프레임 및 이전 프레임에서 특징점을 검출하는 단계를 포함하되, 상기 특징점은, 상기 현재 프레임 또는 상기 이전 프레임을 대상으로, 소정 크기의 검출 영역에 포함된 복수의 후보 화소들 중 어느 하나의 후보 화소를 임계값과 비교하여 검출하고,상기 임계값은, 상기 복수의 후보 화소들의 평균 화소값 및 상기 검출된 후보 화소의 화소값 사이의 차분값으로 정의되는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
12 |
12
청구항 11에서,상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터를 이용하여 SBAD(Sum of Bi-directional Absolute Difference)를 산출하는 단계는,상기 제1 움직임 벡터 후보군에 대한 중앙값 움직임 벡터를 획득하고, 획득된 중앙값 움직임 벡터에 업데이트 벡터 상수를 더하여 업데이트 움직임 벡터를 획득하는 단계; 및상기 중앙값 움직임 벡터와 상기 업데이트 움직임 벡터를 이용하여 SBAD(Sum of Bi-directional Absolute Difference)를 산출하는 단계를 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
13 |
13
청구항 11에서,상기 특징점 기반 움직임 벡터 후보군을 생성하는 단계는,상기 검출된 특징점을 중심으로 하는 특징점 패치를 상기 현재 프레임 및 상기 이전 프레임에 생성하는 단계; 및생성된 특징점 패치에 대하여 단방향 움직임 예측을 수행하여 상기 현재 블록에 대한 특징점 기반 움직임 벡터를 획득하는 단계를 더 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
14 |
14
청구항 13에서,상기 특징점 기반 움직임 벡터를 획득하는 단계는,상기 단방향 움직임 예측에 따른 단방향 움직임 벡터에 의해 지시되는 특징점 패치 중에서 상기 현재 블록과 중첩되는 특징점 패치를 결정하는 단계;결정된 특징점 패치에 따른 단방향 움직임 벡터에 대하여 상기 현재 블록과 중첩되는 영역 크기에 상응하는 가중치를 부여하는 단계; 및가중치가 부여된 단방향 움직임 벡터에 대한 평균값을 산출하여 상기 현재 블록에 대한 특징점 기반 움직임 벡터를 획득하는 단계를 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
15 |
15
청구항 14에서,상기 가중치를 부여하는 단계는,상기 현재 블록과 중첩되는 특징점 패치가 복수개이고, 복수의 특징점 패치 상호간에 중첩되는 영역이 있는 경우, 상기 복수의 특징점 패치 상호간에 중첩되는 영역은 특징점 패치에 따른 단방향 움직임 벡터를 이용한 SAD(Sum of Absolute Difference)가 가장 작은 특징점 패치의 영역으로 판단하는 단계를 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
16 |
16
청구항 11에서,상기 일관성을 검증하는 단계는,상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터들에서 선택된 움직임 벡터 쌍(pair)에 대한 차분값을 산출하는 단계; 및산출된 차분값이 모두 미리 설정된 값보다 작으면 상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터들의 일관성이 있는것으로 판단하는 단계를 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
17 |
17
청구항 11에서,상기 적어도 하나의 단계는,일관성이 검증되지 않으면, 상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터를 이용하여 SBAD(Sum of Bi-directional Absolute Difference)를 산출하는 단계; 및산출된 SBAD의 최소값을 미리 설정된 임계값과 비교한 결과에 따라 상기 현재 블록에 대한 움직임 벡터를 결정하는 단계를 더 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
18 |
18
청구항 17에서,상기 현재 블록에 대한 움직임 벡터를 결정하는 단계는,상기 산출된 SBAD의 최소값이 상기 미리 설정된 임계값보다 작거나 같으면, 상기 산출된 SBAD의 최소값에 따른 움직임 벡터를 상기 현재 블록에 대한 움직임 벡터로 결정하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
19 |
19
청구항 17에서,상기 현재 블록에 대한 움직임 벡터를 결정하는 단계는,상기 산출된 SBAD의 최소값이 상기 미리 설정된 임계값보다 크면,상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터들에 미리 설정된 벡터 상수를 더하여 제2 움직임 벡터 후보군을 생성하는 단계;생성된 제2 움직임 벡터 후보군을 이용하여 SBAD 를 산출하는 단계; 및산출된 SBAD의 최소값을 상기 제1 움직임 벡터 후보군에 포함된 움직임 벡터를 이용하여 산출된 SBAD의 최소값과 비교하여 상기 현재 블록에 대한 움직임 벡터를 결정하는 단계를 포함하는, 특징점 기반 움직임 벡터를 이용한 움직임 추정 방법
|
20 |
20
생성할 보간 프레임과 시간적으로 인접한 현재 프레임과 이전 프레임에서 특징점을 검출하는 단계;검출된 특징점을 중심으로 하는 특징점 패치를 상기 현재 프레임과 상기 이전 프레임에 생성하는 단계; 및생성된 특징점 패치에 대하여 단방향 움직임 예측을 수행하여 상기 보간 프레임 내의 현재 블록에 대한 특징점 기반 움직임 벡터를 획득하는 단계를 포함하는, 움직임 추정을 위한 특징점 기반 움직임 벡터 생성 방법
|