KR20210009258A - 화질 평가 방법 및 장치 - Google Patents
화질 평가 방법 및 장치 Download PDFInfo
- Publication number
- KR20210009258A KR20210009258A KR1020190172145A KR20190172145A KR20210009258A KR 20210009258 A KR20210009258 A KR 20210009258A KR 1020190172145 A KR1020190172145 A KR 1020190172145A KR 20190172145 A KR20190172145 A KR 20190172145A KR 20210009258 A KR20210009258 A KR 20210009258A
- Authority
- KR
- South Korea
- Prior art keywords
- image
- map
- deteriorated
- filters
- generation model
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30168—Image quality inspection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
화질 평가 방법이 개시된다. 본 화질 평가 방법은 열화 이미지를 입력받는 단계, 필터 생성 모델을 이용하여 입력된 열화 이미지의 왜곡 유형에 대응되는 복수의 필터를 생성하는 단계, 및 생성된 복수의 필터, 열화 이미지 및 열화 이미지에 대응되는 기준 이미지를 이용하여 열화 이미지에 대한 화질 점수를 산출하는 단계를 포함한다.
Description
본 개시는 화질 평가 장치 및 방법에 관한 것으로, 구체적으로, 입력된 이미지에 적응적으로 산출된 필터를 이용하여 해당 이미지에 대한 화질을 평가할 수 있는 화질 평가 장치 및 방법에 관한 것이다.
최근 소셜 미디어 및 압축 이미지 전송 기술의 발달로 콘텐츠의 수집, 전송, 및 저장 과정에서 이미지의 품질이 저하되고 있다. 신뢰할 수 있는 콘텐츠를 제공하기 위해서 사용자가 품질을 인지하는 수준만큼 이미지 품질을 정확하게 예측할 필요가 있다.
기존의 이미지의 객관적 화질 평가(Full-Reference Image Quality Assessment, FR-IQA)는 이미지에 적용된 왜곡 유형을 고려하지 않고 시각적 품질을 측정하였다.
한편, 인간의 시각 시스템(Human Visual System, HVS)은 왜곡에 따라 비선형적으로 반응하므로, 이를 고려할 필요가 있으나, 이미지 신호 처리 과정에서 인간의 시각 시스템을 총체적으로(Holistic) 모델링하는 것은 쉽지 않았다.
상술한 바와 같은 문제점을 해결하기 위하여, 본 개시는 입력된 이미지에 적응적으로 산출된 필터를 이용하여 해당 이미지에 대한 화질을 평가할 수 있는 화질 평가 장치 및 방법을 제공하는 데 있다.
본 개시의 일 실시 예에 따른 화질 평가 방법은 열화 이미지를 입력받는 단계, 필터 생성 모델을 이용하여 상기 열화 이미지의 왜곡 유형에 대응되는 복수의 필터를 생성하는 단계, 및 상기 생성된 복수의 필터, 상기 열화 이미지 및 상기 열화 이미지에 대응되는 기준 이미지를 이용하여 상기 입력된 열화 이미지에 대한 화질 점수를 산출하는 단계를 포함한다.
이 경우, 상기 필터 생성 모델은, 입력된 이미지를 서브 샘플링하여 왜곡의 특징을 추출하는 인코딩 모델과 상기 인코딩 모델의 출력 이미지를 입력받고 왜곡 유형별 상이한 값을 갖고 기설정된 크기를 갖는 복수의 필터를 생성하는 생성 모델을 포함할 수 있다.
한편, 상기 복수의 필터를 생성하는 단계는, 상기 열화 이미지, 상기 열화 이미지에 대응되는 기준 이미지, 상기 열화 이미지와 상기 기준 이미지에 대응되는 공간적 에러 맵을 상기 필터 생성 모델에 입력하여 상기 복수의 필터를 생성할 수 있다.
이 경우, 상기 복수의 필터를 생성하는 단계는, 상기 열화 이미지, 상기 기준 이미지 및 상기 공간적 에러 맵 각각을 복수의 컨볼루션 레이어 세트를 이용하여 전처리하고, 전처리된 열화 이미지, 전처리된 기준 이미지 및 전처리된 공간적 에러 맵을 상기 필터 생성 모델에 입력하여 상기 복수의 필터를 생성할 수 있다.
한편, 상기 복수의 필터를 생성하는 단계는, 상기 열화 이미지를 이용하여 상기 열화 이미지에 대한 기준 이미지를 생성하는 단계를 포함할 수 있다.
한편, 상기 복수의 필터를 생성하는 단계는, 상기 기준 이미지 및 상기 열화 이미지 간에 정규화된 로그 차이로 상기 공간적 에러 맵을 생성하는 단계를 포함할 수 있다.
한편, 본 화질 평가 방법은 민감도 생성 모델을 이용하여 에러 신호의 영역을 나타내는 시각적 민감도 맵을 생성하는 단계를 더 포함하고, 상기 화질 점수를 산출하는 단계는, 상기 생성된 복수의 필터, 상기 열화 이미지 및 상기 기준 이미지를 이용하여 동적 에러 맵을 생성하는 단계, 및 상기 생성된 동적 에러 맵에 상기 시각적 민감도 맵을 가중치로 적용하여 화질 점수를 연산하는 단계를 포함할 수 있다.
이 경우, 상기 민감도 생성 모델은, 입력된 데이터를 서브 샘플링한 후 업 샘플링 과정을 거쳐 특징을 추출하여 시각적 민감도 맵을 생성하고, 서브 샘플링 경로와 업 샘플링 경로 간의 스킵 연결을 통해 지역 정보를 상기 업 샘플링 경로의 전역 정보에 제공할 수 있다.
한편, 상기 동적 에러 맵을 생성하는 단계는, 상기 열화 이미지 및 상기 기준 이미지 각각에 상기 생성된 복수의 필터 각각을 컨볼루션 연산하여 기준 응답 및 열화 응답을 추출하는 단계, 상기 기준 응답과 상기 열화 응답 간에 채널 단위로 감산하여 응답 에러 맵을 산출하는 단계, 상기 기준 응답과 상기 열화 응답 간의 최대치를 선택하여 중요도 맵을 산출하는 단계, 및 상기 응답 에러 맵과 상기 중요도 맵을 결합하여 상기 동적 에러 맵을 생성하는 단계를 포함할 수 있다.
한편, 상기 화질 점수를 산출하는 단계는, 상기 열화 이미지에 대응되는 기준 이미지를 복원하는 단계를 더 포함하고, 상기 복원된 기준 이미지를 이용하여 동적 에러 맵을 생성할 수 있다.
한편, 상기 열화 이미지는 동영상을 구성하는 하나의 프레임 이미지이고, 상기 복수의 필터를 생성하는 단계는, 상기 열화 이미지와 상기 열화 이미지 직전의 프레임 이미지 간의 프레임 차이 맵, 상기 프레임 차이 맵과 기준 이미지의 프레임 차이 맵 간의 모션 에러 맵을 상기 필터 생성 모델에 적용하여 복수의 필터를 생성하고, 상기 산출하는 단계는, 상기 하나의 프레임 이미지에 대한 화질 점수를 산출할 수 있다.
이 경우, 본 화질 평가 방법은 상기 동영상을 구성하는 복수의 프레임에 대해서 산출된 화질 점수를 이용하여 동영상 화질 점수를 산출하는 단계를 더 포함할 수 있다.
이 경우, 상기 동영상 화질 점수를 산출하는 단계는, 상기 복수의 프레임 각각에 대한 가중치 값을 산출하고, 상기 복수의 프레임에 대해서 산출된 화질 점수에 상기 산출된 가중치 값을 적용하여 상기 동영상 화질 점수를 산출할 수 있다.
한편, 본 개시의 일 실시 예에 따른 전자 장치는 적어도 하나의 인스트럭션(instruction) 및 필터 생성 모델을 저장하는 메모리, 및 상기 적어도 하나의 인스트럭션을 실행하는 프로세서를 포함하고, 상기 프로세서는, 상기 적어도 하나의 인스트럭션을 실행함으로써, 상기 필터 생성 모델을 이용하여 입력된 열화 이미지의 왜곡 유형에 대응되는 복수의 필터를 생성하고, 상기 생성된 복수의 필터, 상기 열화 이미지 및 상기 열화 이미지에 대응되는 기준 이미지를 이용하여 상기 열화 이미지에 대한 화질 점수를 산출할 수 있다.
이 경우, 상기 필터 생성 모델은, 입력된 이미지를 서브 샘플링하여 왜곡의 특징을 추출하는 인코딩 모델과 상기 인코딩 모델의 출력 이미지를 입력받고 왜곡 유형별 상이한 값을 갖고 기설정된 크기를 갖는 복수의 필터를 생성하는 생성 모델을 포함할 수 있다.
한편, 상기 프로세서는, 상기 열화 이미지, 상기 열화 이미지에 대응되는 기준 이미지, 상기 열화 이미지와 상기 기준 이미지에 대응되는 공간적 에러 맵을 상기 필터 생성 모델에 입력하여 상기 복수의 필터를 생성할 수 있다.
한편, 상기 프로세서는, 민감도 생성 모델을 이용하여 에러 신호의 영역을 나타내는 시각적 민감도 맵을 생성하고, 상기 생성된 복수의 필터, 상기 열화 이미지 및 상기 기준 이미지를 이용하여 동적 에러 맵을 생성하고, 상기 생성된 동적 에러 맵에 상기 시각적 민감도 맵을 가중치로 적용하여 화질 점수를 연산할 수 있다.
이 경우, 상기 민감도 생성 모델은, 입력된 데이터를 서브 샘플링한 후 업 샘플링 과정을 거쳐 특징을 추출하여 시각적 민감도 맵을 생성하고, 서브 샘플링 경로와 업 샘플링 경로 간의 스킵 연결을 통해 지역 정보를 상기 업 샘플링 경로의 전역 정보에 제공할 수 있다.
한편, 상기 열화 이미지는 동영상을 구성하는 하나의 프레임 이미지이고, 상기 프로세서는, 상기 열화 이미지와 상기 열화 이미지 직전의 프레임 이미지 간의 프레임 차이 맵, 상기 프레임 차이 맵과 기준 이미지의 프레임 차이 맵 간의 모션 에러 맵을 상기 필터 생성 모델에 적용하여 복수의 필터를 생성할 수 있다.
한편, 본 개시의 일 실시 예에 따른 화질 평가 방법을 실행하기 위한 프로그램을 포함하는 컴퓨터 판독가능 기록 매체에 있어서, 상기 화질 평가 방법은, 필터 생성 모델을 이용하여 입력된 열화 이미지의 왜곡 유형에 대응되는 복수의 필터를 생성하는 단계, 및 상기 생성된 복수의 필터, 상기 입력된 열화 이미지 및 상기 열화 이미지에 대응되는 기준 이미지를 이용하여 상기 입력된 열화 이미지에 대한 화질 점수를 산출하는 단계를 포함한다.
도 1은 본 개시의 일 실시 예에 따른 평가 시스템의 구조를 설명하기 위한 도면,
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 간단한 구성을 나타낸 블럭도,
도 3은 본 개시의 일 실시 예에 따른 전자 장치의 구체적인 구성을 나타내는 블럭도,
도 4는 왜곡 유형에 따른 왜곡 이미지에 대한 평균 의견 점수와 모델에 의한 예측 점수를 설명하기 위한 도면,
도 5는 본 개시의 일 실시 예에 따라 적응적 평가를 위한 동적 수용체를 생성하는 과정의 예를 도시한 도면,
도 6은 본 개시의 일 실시 예에 따라 동적 수용체를 이용한 화질 점수를 산출하는 과정을 설명하기 위한 도면,
도 7은 본 개시의 일 실시 예에 따른 화질 평가 장치의 학습 모델을 예시한 블록도,
도 8은 본 개시의 일 실시 예에 따른 화질 평가 동작을 설명하기 위한 도면,
도 9는 본 개시의 일 실시 예에 따른 제1 데이터 흐름을 예시한 도면,
도 10은 본 개시의 일 실시 예에 따른 이미지 화질 평가 장치가 참고하는 이미지 왜곡 유형의 분포를 예시한 도면,
도 11은 본 개시의 일 실시 예에 따른 이미지 화질 평가 장치가 생성한 동적 수용체를 예시한 도면,
도 12는 본 개시의 일 실시 예에 따른 제2 데이터 흐름을 예시한 도면,
도 13은 본 개시의 일 실시 예에 따른 이미지 화질 평가 장치가 생성한 응답 에러 맵의 예들을 도시한 도면,
도 14는 본 개시의 일 실시 예에 따른 이미지 화질 평가 장치가 생성한 시각적 민감도 맵의 예들을 도시한 도면,
도 15는 본 개시의 다른 실시 예에 따른 화질 평가 동작을 설명하기 위한 도면,
도 16은 본 개시의 일 실시 예에 따른 동영상의 화질 평가 동작을 설명하기 위한 도면,
도 17은 도 16의 기준 프레임, 왜곡 프레임, 에러 맵, 프레임 차이 맵 및 모션 에러 맵을 설명하기 위한 도면,
도 18은 프레임별 화질 점수를 이용한 동영상 화질 점수의 산정 방법을 설명하기 위한 도면,
도 19는 산출된 프레임 화질 점수를 이용한 동영상 화질 점수의 산출 방법을 설명하기 위한 도면이고,
도 20은 도 19의 CNAN 모델의 구체적인 구성을 도시한 도면,
도 21은 본 개시의 제1 실시 예에 따른 화질 평가 방법을 설명하기 위한 흐름도, 그리고
도 22는 본 개시의 제2 실시 예에 따른 화질 평가 방법을 설명하기 위한 흐름도이다.
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 간단한 구성을 나타낸 블럭도,
도 3은 본 개시의 일 실시 예에 따른 전자 장치의 구체적인 구성을 나타내는 블럭도,
도 4는 왜곡 유형에 따른 왜곡 이미지에 대한 평균 의견 점수와 모델에 의한 예측 점수를 설명하기 위한 도면,
도 5는 본 개시의 일 실시 예에 따라 적응적 평가를 위한 동적 수용체를 생성하는 과정의 예를 도시한 도면,
도 6은 본 개시의 일 실시 예에 따라 동적 수용체를 이용한 화질 점수를 산출하는 과정을 설명하기 위한 도면,
도 7은 본 개시의 일 실시 예에 따른 화질 평가 장치의 학습 모델을 예시한 블록도,
도 8은 본 개시의 일 실시 예에 따른 화질 평가 동작을 설명하기 위한 도면,
도 9는 본 개시의 일 실시 예에 따른 제1 데이터 흐름을 예시한 도면,
도 10은 본 개시의 일 실시 예에 따른 이미지 화질 평가 장치가 참고하는 이미지 왜곡 유형의 분포를 예시한 도면,
도 11은 본 개시의 일 실시 예에 따른 이미지 화질 평가 장치가 생성한 동적 수용체를 예시한 도면,
도 12는 본 개시의 일 실시 예에 따른 제2 데이터 흐름을 예시한 도면,
도 13은 본 개시의 일 실시 예에 따른 이미지 화질 평가 장치가 생성한 응답 에러 맵의 예들을 도시한 도면,
도 14는 본 개시의 일 실시 예에 따른 이미지 화질 평가 장치가 생성한 시각적 민감도 맵의 예들을 도시한 도면,
도 15는 본 개시의 다른 실시 예에 따른 화질 평가 동작을 설명하기 위한 도면,
도 16은 본 개시의 일 실시 예에 따른 동영상의 화질 평가 동작을 설명하기 위한 도면,
도 17은 도 16의 기준 프레임, 왜곡 프레임, 에러 맵, 프레임 차이 맵 및 모션 에러 맵을 설명하기 위한 도면,
도 18은 프레임별 화질 점수를 이용한 동영상 화질 점수의 산정 방법을 설명하기 위한 도면,
도 19는 산출된 프레임 화질 점수를 이용한 동영상 화질 점수의 산출 방법을 설명하기 위한 도면이고,
도 20은 도 19의 CNAN 모델의 구체적인 구성을 도시한 도면,
도 21은 본 개시의 제1 실시 예에 따른 화질 평가 방법을 설명하기 위한 흐름도, 그리고
도 22는 본 개시의 제2 실시 예에 따른 화질 평가 방법을 설명하기 위한 흐름도이다.
이하에서는 첨부 도면을 참조하여 본 개시에 대해서 자세하게 설명한다. 본 개시에서 수행되는 정보(데이터) 전송 과정은 필요에 따라서 암호화/복호화가 적용될 수 있으며, 본 개시 및 특허청구범위에서 정보(데이터) 전송 과정을 설명하는 표현은 별도로 언급되지 않더라도 모두 암호화/복호화하는 경우도 포함하는 것으로 해석되어야 한다. 본 개시에서 "A로부터 B로 전송(전달)" 또는 "A가 B로부터 수신"과 같은 형태의 표현은 중간에 다른 매개체가 포함되어 전송(전달) 또는 수신되는 것도 포함하며, 반드시 A로부터 B까지 직접 전송(전달) 또는 수신되는 것만을 표현하는 것은 아니다.
본 개시의 설명에 있어서 각 단계의 순서는 선행 단계가 논리적 및 시간적으로 반드시 후행 단계에 앞서서 수행되어야 하는 경우가 아니라면 각 단계의 순서는 비제한적으로 이해되어야 한다. 즉, 위와 같은 예외적인 경우를 제외하고는 후행 단계로 설명된 과정이 선행단계로 설명된 과정보다 앞서서 수행되더라도 개시의 본질에는 영향이 없으며 권리범위 역시 단계의 순서에 관계없이 정의되어야 한다. 그리고 본 명세서에서 "A 또는 B"라고 기재한 것은 A와 B 중 어느 하나를 선택적으로 가리키는 것뿐만 아니라 A와 B 모두를 포함하는 것도 의미하는 것으로 정의된다. 또한, 본 개시에서 "포함"이라는 용어는 포함하는 것으로 나열된 요소 이외에 추가로 다른 구성요소를 더 포함하는 것도 포괄하는 의미를 가진다.
본 개시에서는 본 개시의 설명에 필요한 필수적인 구성요소만을 설명하며, 본 개시의 본질과 관계가 없는 구성요소는 언급하지 아니한다. 그리고 언급되는 구성요소만을 포함하는 배타적인 의미로 해석되어서는 안 되며 다른 구성요소도 포함할 수 있는 비배타적인 의미로 해석되어야 한다.
그리고 본 개시에서 "값"이라 함은 스칼라값뿐만 아니라 벡터도 포함하는 개념으로 정의된다.
후술하는 본 개시의 각 단계의 수학적 연산 및 산출은 해당 연산 또는 산출을 하기 위해 공지되어 있는 코딩 방법 및/또는 본 개시에 적합하게 고안된 코딩에 의해서 컴퓨터 연산으로 구현될 수 있다.
이하에서 설명하는 구체적인 수학식은 가능한 여러 대안 중에서 예시적으로 설명되는 것이며, 본 개시의 권리 범위가 본 개시에 언급된 수학식에 제한되는 것으로 해석되어서는 아니된다.
이하에서는 첨부된 도면을 이용하여 본 개시의 다양한 실시 예들에 대하여 구체적으로 설명한다.
도 1은 본 개시의 일 실시 예에 따른 평가 시스템의 구조를 설명하기 위한 도면이다.
도 1을 참조하면, 평가 시스템(1000)은 서버(100), 복수의 클라이언트(200-1, 200-2,…., 200-n)을 포함할 수 있으며, 각 구성은 네트워크를 통해 서로 연결될 수 있다.
여기서, 네트워크는 다양한 형태의 유무선 통신 네트워크, 방송 통신 네트워크, 광통신 네트워크, 클라우드 네트워크 등으로 구현될 수 있으며, 각 장치들은 별도의 매개체 없이 와이파이, 블루투스, NFC(Near Field Communication) 등과 같은 방식으로도 연결될 수도 있다.
도 1에서는 클라이언트가 복수개(200-1 ~ 200-n)인 것으로 도시하였으나, 반드시 복수개의 클라이언트가 사용되어야 하는 것은 아니며 하나의 장치가 사용될 수도 있다. 일 예로, 클라이언트(200-1 ~ 200-n)는 스마트폰, 태블릿, 게임 플레이어, PC, 랩톱 PC, 홈서버, 키오스크 등과 같은 다양한 형태의 장치로 구현될 수 있으며, 이밖에 IoT 기능이 적용된 가전 제품 형태로도 구현될 수 있다.
서버(100)는 이미지 또는 동영상을 저장하고 있으며, 이미지를 클라이언트에 제공할 수 있다. 예를 들어, 서버(100)는 기준 이미지를 저장하고, 이미지에 대한 전송이 필요한 경우, 기준 이미지를 인코딩(또는 압축)하여 클라이언트에 전송할 수 있다.
이하에서는 설명을 용이하게 하기 위하여, 인코딩 처리 또는 압축 처리 등을 수행하기 전의 이미지를 기준 이미지(Reference Image)라 지칭하고, 상술한 인코딩 처리 또는 압축 처리에 의하여 품질이 저하되거나 전송 과정의 패킷 로스가 발생한 이미지를 열화 이미지(Distorted Image)라 지칭한다.
한편, 서버(100)는 클라이언트에 제공되는 이미지 또는 동영상에 대한 화질 평가를 수행할 수 있다. 예를 들어, 서버(100)는 클라이언트에 제공될 이미지(즉, 열화 이미지)(또는 클라이언트로부터 제공받은 이미지)에 대응하는 복수의 필터를 생성하고, 생성된 필터를 이용하여 화질 점수를 산출할 수 있다. 구체적인 점수 산출 방식은 도 4 내지 15를 참조하여 후술한다.
여기서 복수의 필터는 열화 이미지의 왜곡 유형을 나타내는 것으로, 이미지별로 다른 필터가 생성될 수 있다. 이러한 복수의 필터는 동적 수용체(Dynamic receptive field)라 지칭될 수 있다. 복수의 필터의 구체적인 생성 방법 및 동작에 대해서는 도 7 내지 10을 참조하여 후술한다.
그리고 서버(100)는 화질 평가에 기초하여 클라이언트에 제공될 이미지 또는 동영상에 대한 품질(압축 비율, 압축 방식)을 가변할 수 있다.
한편, 클라이언트(200)는 서버(100)로부터 이미지 또는 동영상을 수신하고, 수신된 이미지 또는 동영상을 표시할 수 있다.
이때, 클라이언트(200)는 수신된 이미지 또는 동영상에 대한 화질 평가를 수행할 수 있다. 클라이언트(200)는 열화된 이미지만을 갖는다는 점에서, 열화 이미지에 대응되는 기준 이미지를 생성하여 화질 평가를 수행할 수 있다. 이와 같은 동작에 대해서는 도 15를 참조하여 후술한다.
그리고 클라이언트(200)는 수행된 화질 평가 결과(즉, 화질 점수)를 서버(100)에 제공할 수 있다. 이에 대응하여 서버(100)는 수신된 화질 점수에 대응하여 압축 비율, 압축 방식을 변경할 수 있다.
이상과 같이 본 개시에 따른 평가 시스템은 열화 이미지에 적응적인 복수의 필터를 이용하여 화질 점수를 산출하는바, 이미지의 왜곡 유형에 따른 인간의 인지 특성을 반영한 화질 평가가 가능하다.
한편, 도 1을 도시하고 설명함에 있어서, 서버(100)가 이미지 제공 기능 및 화질 평가 기능 모두를 수행하는 것으로 설명하였지만, 구현시에 이미지 제공 기능과 화질 평가 기능은 서로 다른 장치에서 수행할 수 있다. 예를 들어, 제1 서버는 이미지를 제공하는 기능만을 수행하고, 제2 서버가 제1 서버가 제공하는 이미지에 대한 화질 평가 기능을 수행할 수도 있다.
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 간단한 구성을 나타낸 블럭도이다.
예를 들어, 도 1의 시스템에서 제1 클라이언트, 제2 클라이언트 등과 같이 수신한 이미지에 대한 화질 평가를 수행할 수 있는 장치, 서버 등과 같이 기저장된 이미지에 대한 화질 평가를 수행할 수 있는 장치 등을 전자 장치(또는 이미지 화질 평가 장치)라고 지칭할 수 있다. 이러한 전자 장치는 PC(Personal computer), 노트북, 스마트폰, 태블릿, 서버 등 다양한 장치일 수 있다.
도 2를 참조하면, 전자 장치(300)는 메모리(310) 및 프로세서(320)를 포함할 수 있다.
메모리(310)에는 전자 장치(300)에 관한 적어도 하나의 인스트럭션(instruction)이 저장될 수 있다. 예를 들어, 메모리(310)에는 본 개시의 다양한 실시 예에 따라 전자 장치(300)가 동작하기 위한 각종 프로그램(또는 소프트웨어)이 저장될 수 있다.
이러한 메모리(310)는 RAM(Random-Access Memory)이나 ROM(Read-Only Memory), 플래시 메모리, HDD(Hard Disk Drive), SSD(Solid State Drive), 외장 메모리, 메모리 카드 등과 같은 다양한 형태로 구현될 수 있으며, 어느 하나로 한정되는 것은 아니다.
메모리(310)는 필터 생성 모델을 저장할 수 있다. 여기서 필터 생성 모델은 입력된 열화 이미지의 왜곡 유형에 대응되는 복수의 필터를 생성하는 학습 모델로, 입력된 이미지를 서브 샘플링하여 왜곡의 특징을 추출하는 인코딩 모델과 인코딩 모델의 출력 이미지를 입력받고 왜곡 유형별 상이한 값을 갖고 기설정된 크기를 갖는 복수의 필터를 생성하는 생성 모델을 포함할 수 있다.
그리고 메모리(310)는 민감도 생성 모델을 저장할 수 있다. 여기서 민감도 생성 모델은 에러 신호의 영역을 나타내는 시각적 민감도를 생성하는 학습 모델로, 입력된 데이터를 서브 샘플링한 후 업 샘플링 과정을 거쳐 특징을 추출하여 시각적 민감도 맵을 생성하고, 서브 샘플링 경로와 업 샘플링 경로 간의 스킵 연결을 통해 지역 정보를 업 샘플링 경로의 전역 정보에 제공할 수 있다.
이러한 필터 생성 모델, 인코딩 모델, 생성 모델 및 민감도 생성 모델의 구체적인 동작은 도 7을 참조하여 후술한다.
그리고 메모리(310)는 가중치 생성 모델을 저장할 수 있다. 여기서 가중치 생성 모델은 컨볼루션 신경망(CNN, convolutional Neural Nerwork)를 응집(aggregation)한 컨볼루션 응집 신경망(convolutional neural aggregation network)으로, 프레임별 화질 점수에 대한 가중치 값을 생성할 수 있다. 이러한 가중치 생성 모델은 도 19 및 도 20을 참조하여 후술한다.
메모리(310)는 열화 이미지를 저장할 수 있다. 이러한 열화 이미지는 기준 이미지(열화가 없는 이미지)를 디코딩 등을 통하여 자체적으로 생성한 이미지일 수 있으며, 외부 장치로부터 수신한 이미지일 수 있다. 예를 들어, 전자 장치(300)가 서버인 경우, 열화 이미지는 자체적으로, 기저장한 기준 이미지를 이용하여 생성한 이미지일 수 있다. 그리고 전자 장치(300)가 클라이언트인 경우, 열화 이미지는 다른 장치(예를 들어, 서버)로부터 수신한 이미지일 수 있다.
또한, 메모리(310)는 동영상을 저장할 수 있다. 그리고 메모리(310)는 후술한 과정에 의하여 산출된 화질 점수를 저장할 수 있다.
그리고 메모리(310)는 열화 이미지에 대응되는 기준 이미지를 저장할 수 있다. 여기서 기준 이미지는 열화 이미지에 대한 원본 이미지일 수 있으며, 복원 동작을 통하여 생성된 복원 이미지일 수 있다. 예를 들어, 전자 장치(300)가 클라이언트인 경우, 전자 장치(300)는 열화된 이미지만을 수신받는바, 열화 이미지를 이용하여 기준 이미지를 복원하고, 복원된 기준 이미지를 이용하여 화질 평가를 수행할 수 있다.
그리고 메모리(310)는 후술한 과정에 의해 산출된 화질 점수를 저장할 수 있다.
프로세서(320)는 전자 장치(300)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(320)는 메모리(310)에 저장된 적어도 하나의 인스트럭션을 실행함으로써 전자 장치(300)의 동작을 전반적으로 제어할 수 있다. 이러한 프로세서(320)는 CPU(central processing unit), ASIC(application-specific integrated circuit)과 같은 단일 장치로 구성될 수 있으며, CPU, GPU(Graphics Processing Unit) 등의 복수의 장치로 구성될 수도 있다.
프로세서(320)는 열화 이미지가 입력되면, 입력된 열화 이미지를 메모리(310)에 저장할 수 있다.
그리고 프로세서(320)는 입력된 열화 이미지에 대한 화질 평가를 수행할 수 있다. 예를 들어, 프로세서(320)는 필터 생성 모델을 이용하여 입력된 열화 이미지의 왜곡 유형에 대응되는 복수의 필터를 생성하고, 생성된 복수의 필터, 열화 이미지 및 열화 이미지에 대응되는 기준 이미지를 이용하여 열화 이미지에 대한 화질 점수를 산출할 수 있다.
프로세서(320)는 열화 이미지, 열화 이미지에 대응되는 기준 이미지, 열화 이미지와 기준 이미지에 대응되는 공간적 에러 맵을 필터 생성 모델에 입력하여 복수의 필터를 생성할 수 있다. 구현시에는 열화 이미지, 기준 이미지 및 공간적 에러 맵 각각을 전처리하고, 전처리된 결과를 이용하여 복수의 필터를 생성할 수 있다.
여기서 기준 이미지는 열화 이미지에 대한 원본 이미지일 수 있으며, 열화 이미지를 이용하여 복원한 복원 이미지일 수 있다. 이하에서는 설명을 용이하게 하기 위하여, 원본 이미지 및 복원 이미지 모두를 기준 이미지로 지칭한다. 그리고 공간적 에러 맵은 기준 이미지 및 열화 이미지 간에 정규화된 로그 차이로 생성될 수 있다.
그리고 프로세서(320)는 민감도 생성 모델을 이용하여 에러 신호의 영역을 나타내는 시각적 민감도 맵을 생성할 수 있다. 예를 들어, 프로세서(320)는 열화 이미지, 열화 이미지에 대응되는 기준 이미지, 열화 이미지와 기준 이미지에 대응되는 공간적 에러 맵을 민감도 생성 모델에 입력하여 시각적 민감도 맵을 생성할 수 있다.
그리고 프로세서(320)는 생성된 복수의 필터, 열화 이미지 및 열화 이미지에 대응되는 기준 이미지를 이용하여 열화 이미지에 대한 화질 점수를 산출할 수 있다. 예를 들어, 프로세서(320)는 생성된 복수의 필터, 열화 이미지 및 기준 이미지를 이용하여 동적 에러 맵을 생성하고, 생성된 동적 에러 맵에 시각적 민감도 맵을 가중치로 적용하여 화질 점수를 연산할 수 있다.
이때, 프로세서(320)는 열화 이미지 및 기준 이미지 각각에 생성된 복수의 필터 각각을 컨볼루션 연산하여 기준 응답 및 열화 응답을 추출하고, 기준 응답과 열화 응답 간에 채널 단위로 감산하여 응답 에러 맵을 산출하고, 기준 응답과 열화 응답 간의 최대치를 선택하여 중요도 맵을 산출하고, 응답 에러 맵과 중요도 맵을 결합하여 동적 에러 맵을 생성하여 상술한 동작을 수행할 수 있다.
한편, 프로세서(320)는 동영상에 대한 화질 평가를 수행할 수 있다. 이러한 경우, 프로세서(320)는 동영상을 구성하는 프레임별로 화질 평가를 수행하고, 프레임별 평가 결과를 이용하여 동영상 화질 평가를 수행할 수 있다. 이와 같은 동영상 화질 평가 동작에 대해서는 도 16을 참조하여 후술한다.
한편, 이상에서는 전자 장치를 구성하는 간단한 구성에 대해서만 도시하고 설명하였지만, 구현시에는 다양한 구성이 추가로 구비될 수 있다. 이에 대해서는 도 3을 참조하여 이하에서 설명한다.
도 3은 본 개시의 일 실시 예에 따른 전자 장치의 구체적인 구성을 나타내는 블럭도이다.
도 3을 참조하면, 전자 장치(300)는 메모리(310), 프로세서(320), 통신 장치(330), 디스플레이(340) 및 조작 입력 장치(350)를 포함할 수 있다. 예를 들어, 도 3의 전자 장치(300)는 서버로 구현되는 경우, 디스플레이(340) 및 조작 입력 장치(350) 중 일부는 생략될 수 있다.
그리고 전자 장치(300) 내의 각 구성은 통신 버스(미도시)를 통하여 상호 연결될 수 있다.
메모리(310)와 프로세서(320)는 도 2와 관련하여 앞서 설명하였는바, 중복 설명은 생략한다.
통신 장치(330)는 전자 장치(300)를 외부 장치(미도시)와 연결하기 위해 형성되고, 근거리 통신망(LAN: Local Area Network) 및 인터넷망을 통해 외부 장치에 접속되는 형태뿐만 아니라, USB(Universal Serial Bus) 포트 또는 무선 통신(예를 들어, WiFi 802.11a/b/g/n, NFC, Bluetooth) 포트를 통하여 접속되는 형태도 가능하다. 이러한 통신 장치(330)는 송수신부(transceiver)로 지칭될 수도 있다.
통신 장치(330)는 열화 이미지를 외부 장치로부터 수신할 수 있으며, 외부 장치에 열화 이미지를 송신할 수 있다. 이러한 열화 이미지는 인코딩 과정에서의 이미지 열화를 가질 수 있으며, 전송 과정에서의 패킷 로스에 의한 이미지 열화를 가질 수도 있다.
통신 장치(330)는 상술한 화질 평가 결과(즉, 화질 점수)를 외부 장치에 전송할 수 있으며, 외부 장치로부터 수신할 수 있다.
디스플레이(340)는 전자 장치(300)가 지원하는 기능을 선택받기 위한 사용자 인터페이스 창을 표시한다. 예를 들어, 디스플레이(340)는 전자 장치(300)가 제공하는 각종 기능을 선택받기 위한 사용자 인터페이스 창을 표시할 수 있다. 이러한 디스플레이(340)는 LCD(liquid crystal display), OLED(Organic Light Emitting Diodes) 등과 같은 모니터일 수 있으며, 후술할 조작 입력 장치(350)의 기능을 동시에 수행할 수 있는 터치 스크린으로 구현될 수도 있다.
디스플레이(340)는 수신된 이미지를 표시하거나, 수신된 동영상을 표시할 수 있다. 그리고 디스플레이(340)는 수신된 이미지에 대한 화질 평가 결과를 표시하거나, 수신된 이미지에 대한 화질에 대한 사용자 평가를 입력받기 위한 화면을 표시할 수 있다.
조작 입력 장치(350)는 사용자로부터 전자 장치(300)의 기능 선택 및 해당 기능에 대한 제어 명령을 입력받을 수 있다. 예를 들어, 조작 입력 장치(350)는 입력된 이미지에 대한 화질 평가를 수행할 것인지에 대한 명령, 현재 이미지에 대한 사용자가 판단한 화질 정도를 입력받을 수 있다.
프로세서(320)는 화질 평가가 수행되면, 수행된 화질 평가 결과가 외부 장치에 전송되도록 통신 장치(330)를 제어할 수 있다. 예를 들어, 전자 장치(300)가 클라이언트인 경우, 프로세서(320)는 서버(100)가 전송해온 이미지에 대한 화질 평가를 수행하고, 화질 평가 결과가 기설정된 점수를 넘지 않는 경우, 이미지의 재송신을 요청할 수 있다. 이에 대응하여, 서버(100)는 수신된 점수에 따라 수신된 화질 점수가 낮으면 이후에 전송할 이미지에 대한 압축 방식 또는 압축 비율을 조정하거나, 기존에 전송한 이미지에 대한 압축 방식 또는 압축 비율을 조정하여 재송할 수도 있다.
이상과 같이 본 개시에 따른 전자 장치는 열화 이미지에 적응적인 복수의 필터를 이용하여 화질 점수를 산출하는바, 이미지의 왜곡 유형에 따른 인간의 인지 특성을 반영한 화질 평가가 가능하다.
이하에서는 인간의 시각 시스템을 총체적으로 모델링하기 위한 본 개시의 화질 평가 방식을 설명한다.
도 4는 왜곡 유형에 따른 왜곡 이미지에 대한 평균 의견 점수와 모델에 의한 예측 점수를 설명하기 위한 도면으로, 인간의 시각 시스템에서 정규화된 응답을 처리하는 분할 정규화를 이용하는 기존 방식(structural similarity, SSIM)과 본 실시 예에 따른 동적 수용체(Dynamic receptive fields)를 적용하는 방식을 비교한다.
여기서 수용체는 휴먼 비주얼 시스템에 따른 세포들의 위치를 모델링한 것으로, 필터로 지칭될 수 있다. 그리고 동적 수용체는 고정되지 않고 이미지별로 해당 이미지에 적합한 다른 값(또는 다른 형태)의 필터가 이용된다는 것을 의미한다.
도 4의 (a) 및 (d)는 가산 가우시안 잡음(Additive Gaussian Noise) 및 지역 블록 왜곡(Local Block Distortion)에 의해 품질이 저하된 왜곡 이미지를 도시한다. 각각의 평균 의견 점수(Mean Opinion Score, MOS)는 유사한 값을 갖는다.
도 4의 (b) 및 (e)는 가산 가우시안 잡음(Additive Gaussian Noise) 및 지역 블록 왜곡(Local Block Distortion)에 대해서 기본 방식으로 예측한 점수와 히스토그램을 도시하고 있다. 왜곡 유형에 따른 화질 평가가 평균 의견 점수와 차이가 있음을 확인할 수 있다.
도 4의 (c) 및 (f)는 가산 가우시안 잡음(Additive Gaussian Noise) 및 지역 블록 왜곡(Local Block Distortion)에 대해서 본 실시 예의 동적 수용체를 적용하는 방식으로 예측한 점수와 히스토그램을 도시하고 있다. 왜곡 유형에 따른 화질 평가가 평균 의견 점수에 매칭하고 있음을 확인할 수 있다.
본 실시 예의 동적 수용체를 적용하는 방식은 왜곡에 따라 비선형적으로 반응하는 인간의 시각 시스템을 총체적으로(Holistic) 모델링할 수 있다.
인간은 연관된 이미지의 지역 또는 전역 시맨틱 정보로부터 시각적 품질을 판단하고, 경험적으로 왜곡된 이미지가 얼마나 다른지 예측한다. 인간 두뇌의 시각 피질은 인지된 이미지를 두 개의 시각적 경로를 통합 해석한다. 시각 정보는 측두엽으로 가는 배쪽흐름(Ventral Stream)과 두정엽으로 가는 등쪽흐름(Dorsal Stream)으로 구분된다. 배쪽흐름은 물체나 얼굴의 모양, 형태 인지에 관여하고, 등쪽흐름은 사물의 움직임, 공감각 인지에 관여한다.
이러한 인간의 시각 정보 흐름을 모티브로 하여, 본 개시는 왜곡 유형에 따른 동적 수용체를 생성할 수 있다. 도 5를 참조하면, 본 개시는 왜곡 인코딩 모델(Distortion Encoding Network)을 이용하여 왜곡 유형을 인코딩하고, 수용체 생성 모델(Receptive fields generating Network)을 이용하여 인코딩된 특징에 따라 동적 수용체를 생성할 수 있다. 이에 따라 인간의 시각 시스템의 비선형적 행동 제한을 반영할 수 있다.
그리고 본 개시는 에러 신호의 밝기 차이에 의한 콘트라스트 마스킹 효과(Contrast Masking Effect)를 해결하기 위해 공간 풀링을 이용한 시각적 민감도를 고려한다. 도 6을 참조하면, 본 개시는 인간의 시각 시스템(Human Visual System, HVS)를 동적 수용체(Receptive fields)를 생성할 뿐만 아니라, 공간 풀링(spaial Pooling) 단계에서도 적용함으로써, 인간의 시각 시스템을 총체적으로 모델링한다.
이하에서는 도 5 및 도 6의 개념을 고려한 화질 평가 방식 알고리즘을 설명한다.
도 7은 본 개시의 일 실시 예에 따른 화질 평가 장치의 학습 모델을 예시한 블록도이고, 도 8은 본 개시의 일 실시 예에 따른 화질 평가 동작을 설명하기 위한 도면이다.
도 7 및 도 8을 참조하면, 이미지 화질 평가 장치(400)는 공유 모델(410), 수용체 생성 모델(420), 민감도 생성 모델(430), 화질 점수 평가 모델(440)을 포함할 수 있다. 여기서 이미지 화질 평가 장치(400)는 도 2 또는 도 3의 전자 장치일 수 있으며, 도 2 또는 도 3의 프로세서일 수도 있다. 그리고 각 모델(410, 420, 430, 440)은 프로세서(320)를 구성하는 연산 모듈(또는 프로그램)로 동작할 수 있다.
공유 모델(410)은 기준 이미지(10), 열화 이미지(20) 및 공간적 에러 맵(30)을 입력받고, 입력된 각 이미지를 전처리할 수 있다. 이러한 공유 모델(410)(Shared network)은 4개의 컨볼루션 레이어 세트로 구성될 수 있다. 그리고 각 컨볼류션 레이어에 대한 커널의 수는 32로 설정될 수 있다.
그리고 공간적 에러 맵(30)은 기준 이미지 및 열화 이미지의 공간적 차이를 의미한다. 구체적으로, 이미지 화질 평가 장치(400)는 공간적 에러 맵을 기준 이미지 및 열화 이미지 간에 정규화된 로그 차이로 설정할 수 있다. 정규화된 로그 차이 es는 수학식 1과 같이 표현될 수 있다.
[수학식 1]
여기서, es는 정규화된 로그 차이, Xref는 기준 이미지, Xdis는 열화 이미지, ∈는 계수로, 1로 설정될 수 있다. 이와 같이 정규화된 로그 차이를 이용하여 에러 맵을 정규화된 논-제로 분산(normalized non-zero distribution)으로 변경할 수 있다.
공간적 에러 맵(30)이 생성되면, 공유 모델(410)은 컨볼루션 레이어 세트를 통해 기준 이미지(10), 열화 이미지(20), 및 공간적 에러 맵(30)을 전처리할 수 있다. 전처리된 데이터는 수용체 생성 모델(420) 및 민감도 생성 모델(430)에 각각 전달될 수 있다. 이와 같은 전처리를 통하여 멀티태스킹 학습 과점에서 두 스트림에 공통의 데이터를 제공하는 것이 가능하고, 각 스트림의 독립적인 전처리 네트워크를 설계함에 있어서 불필요한 모델 크기 증가를 줄일 수 있는 효과가 있다.
공유 모델(410)은 전처리 과정을 통해 일반화된 출력을 제공하면서 두 개의 흐름에 필요한 전처리 모델의 크기를 최소화할 수 있다. 구체적으로, 수용체 생성 모델(420)로 전처리 결과를 전달하여 처리하는 동작을 제1 데이터 흐름이라고 지칭하고, 민감도 생성 모델로 전처리 결과를 전달하여 처리하는 동작을 제2 데이터 흐름이라고 지칭한다.
한편, 이상에서는 공유 모델(410)이 3개의 입력값 각각을 전처리하는 것으로 도시하고 설명하였지만, 구현시에 후술하는 수용체 생성 모델(420)은 왜곡 이미지만을 이용하거나, 왜곡 이미지와 기준 이미지만을 이용하는 것도 가능하다. 이러한 경우, 공유 모델(410)은 왜곡 이미지만을 전처리하거나, 왜곡 이미지와 기준 이미지만을 전처리할 수도 있다.
그리고 공유 모델은 후술하는 수용체 생성 모델(420)의 연산을 빠르게 수행하기 위하여 전처리하는 구성이라는 점에서, 구현시에 입력 값 자체의 크기가 작거나, 전자 장치의 연산 성능이 충분히 빨라 전처리 이용 없이도 동작 가능한 경우, 공유 모델은 생략될 수 있다
수용체 생성 모델(420)은 공유 모델(410)의 출력 데이터를 입력받고, 수용체(또는 복수의 필터)(40)를 생성하여 출력할 수 있다. 수용체 생성 모델(420)의 구체적인 동작 및 구성에 대해서는 도 9를 참조하여 후술한다.
민감도 생성 모델(430)은 공유 모델(410)의 출력 데이터를 입력받고, 시각적 민감도 맵(50)을 출력할 수 있다. 민감도 생성 모델(430)의 구체적인 구성 및 동작에 대해서는 도 12를 참조하여 후술한다.
화질 점수 평가 모델(440)은 기준 이미지(10) 및 열화 이미지(20)를 입력받고, 화질 점수(70)를 출력할 수 있다. 구체적으로, 화질 점수 평가 모델(440)은 기준 이미지(10), 열화 이미지(20), 복수의 필터(40)를 이용하여 동적 에러 맵(60)을 생성하고, 생성된 동적 에러 맵(60)에 시각적 민감도 맵(50)을 가중치 적용하고, 가중치 적용된 동적 에러 맵(60)을 이용하여 화질 점수를 출력할 수 있다. 모델의 출력은 벡터로 표현될 수 있다.
이와 같이 본 개시는 복수의 필터(동적 수용체)(40)와 시각적 민감도 맵(50)을 통해 객관적 점수와 주관적 점수 간의 상관도에 기초하여 인간의 인지 여부를 추론하고 시각화할 수 있다.
한편, 이상에서는 수용체 생성 모델 및 민감도 생성 모델 각각이 3개의 입력값을 이용하는 것으로 설명하였지만, 이는 보다 적응적이고 높은 성능을 갖는 필터 및 민감도 맵을 출력하기 위한 것으로, 구현시에는 기준 이미지와 왜곡 이미지만을 이용하거나, 왜곡 이미지만을 이용하여 복수의 필터를 출력하거나, 민감도 맵을 출력하는 것도 가능하다.
이상과 같이 본 개시의 이미지 화질 평가 장치는 제1 데이터 흐름을 통해 동적 에러를 표현하고, 제2 데이터 흐름을 통해 폴링 기반의 시각적 민감도를 처리한다. 이하에서는 도 7을 참조하여 제1 데이터 흐름의 동작을 설명하고, 도 12를 참조하여 제2 데이터 흐름의 동작을 설명한다.
도 9는 본 개시의 일 실시 예에 따른 제1 데이터 흐름을 예시한 도면이다. 여기서 제1 데이터 흐름은 동적 오류 표현(Dynamic Error Representation)이라고 지칭될 수 있다.
입력 왜곡에 대한 복수의 필터(DRFs)를 생성하기 위해서는 입력 왜곡을 분석할 필요가 있다. 이전에는 방위(θ)와 같은 입력 파라미터를 이용하였지만, 본 개시의 적용 환경에서는 왜곡의 유형이나 정도에 대한 정보가 주어지지 않는바, 컨볼루션 인코딩 네트워크(convolutional encoding network)을 이용하여 직접 인코딩을 수행하였다. 이러한 인코딩을 수행하는 컨볼루션 인코딩 네트워크를 이하에서는 인코딩 모델(421)이라고 지칭한다.
인코딩 모델(421)은, 도 9에 도시된 바와 같이, 3x3 서브샘플을 갖는 3개의 컨볼루션 네트워크를 포함할 수 있다. 예를 들어, 인코딩 모델(421)은 다수의 레이어가 네트워크로 연결되며 레이어는 파라미터를 포함할 수 있고, 레이어의 파라미터는 학습 가능한 필터 집합을 포함할 수 있다. 그리고 레이어의 파라미터는 학습 가능한 필터 집합을 포함할 수 있다. 필터는 컨볼루션 필터를 적용할 수 있으며. 파라미터는 노드 간의 가중치 및/또는 바이어스를 포함할 수 있다.
이러한 인코딩 모델(421)은 공유 모델로부터 데이터를 수신하고, 수신된 데이터를 서브 샘플링하여 이미지의 왜곡 특징을 추출할 수 있다.
인코딩 처리가 완료되면, 특징 맵 생성을 위한 동작이 수행될 수 있으며, 이러한 동작을 수행하는 모델을 생성 모델(422)이라 지칭한다.
생성 모델(422)은, 도 9에 도시된 바와 같이, 9x9 해상도를 갖는 N개의 수용체(또는 필터) 요소에 대응하는 1296 뉴런을 갖는 마지막 레이어를 갖는 완전 연결 레이어로 구현될 수 있다. 예를 들어, 생성 모델(422)은 다수의 레이어가 풀리 커넥티드 상태로 연결되며 마지막 레이어는 이전 레이어보다 많은 뉴런을 포함할 수 있다.
생성 모델(422)에서 생성되는 동적 수용체는 Rn로 나타낼 수 있으며, n은 수용 필드의 수{n - 1,…., N)이다. 그리고 N은 다양한 유형의 수용 필드를 나타낼 수 있도록 16일 수 있다.
이와 같은 인코딩 모델(421) 및 생성 모델(422)은 동적 수용체(즉, 복수의 필터)를 생성할 수 있도록 학습될 수 있다. 구체적으로, 기준 이미지와 왜곡 이미지로 구성되는 이미지 쌍을 2D 컨벌루션 연산을 이용하여 학습을 수행할 수 있다.
한편, 학습 이후에 인코딩 모델에 데이터가 입력되면, 인코딩 모델 및 생성모델(422), 즉 필터 생성 모델은 이미지의 왜곡 유형에 따라 상이한 값을 갖고 기설정된 크기를 갖는 복수의 동적 수용체를 생성할 수 있다. 예를 들어, 도 9에 도시된 바와 같이, N=16인 경우에 기준 및 왜곡 이미지에 대한 16개 응답이 출력될 수 있다.
그리고 복수의 동적 수용체가 생성되면, 기준 이미지(10) 및 열화 이미지(20) 각각에 동적 수용체를 컨볼루션 연산하여 기준 응답(11)과 열화 응답(21)을 추출할 수 있다.
한편, 상술한 기준 응답(11)과 열화 응답(21)은 두 개의 패스를 목적으로 한다. 하나는 감산 연산이고, 다른 하나는 최대 연산이다.
지각 에러(perceptual error)를 계산하기 위하여, 먼저, 입력 쌍의 두 응답 맵 사이의 채널별 곱 감산(channel-wise subtraction)을 수행할 수 있다. 여기서 감산 채널은 수용체에 대응되는 지각 오차를 나타낸다.
한편, 이미지 내의 전체 영역 모두가 왜곡을 갖지 않기 때문에, 왜곡이 없는 영역은 맵에 반영될 필요가 없다. 그럼에도 불구하고, 왜곡이 없는 영역이 왜곡이 있는 영역보다 크면, 응답 맵은 왜곡되지 않은 영역에 의해 영상을 받을 가능성이 더 클 수 있다.
이러한 점에서, 공간적 중요성(spatial importance)이 필요하다. 이를 위하여, 본 개시에서는 기준 이미지와 왜곡 이미지로부터의 최대 응답을 응답 에러 맵(80, Response error maps)으로 취할 수 있다.
동적 에러는 수학적으로 다음과 같이 표현될 수 있다. 컨볼루션 연산은 스트라이드 1로 설정되고 경계 라인에서 제로 패딩을 수행할 수 있다. 및 는 에서 기준 응답과 열화 응답이다. H는 입력 이미지의 높이이고, W는 입력 이미지의 너비를 나타낸다. d번째 응답맵은 수학식 2와 같이 표현될 수 있다.
[수학식 2]
여기서, *는 컨볼루션 연산을 나타내고, Rd는 d번째 동적 수용체이다.
그리고 동적 에러 맵(edyn)은 응답 에러 맵과 중요도 맵을 접합하여 생성할 수 있으며, 다음과 같은 수학식 3으로 표현할 수 있다.
[수학식 3]
도 10은 본 개시에 따른 이미지 왜곡 유형의 분포 예를 도시한 도면, 구체적으로, 도 10은 본 개시에 따라 인코딩된 특징 맵이 각 에러 종류를 나타내는지를 증명하기 위하여, TID2008 화질 데이터 세트로부터 t-SNE를 사용하여 인코딩된 특징 맵의 분포를 나타내는 도면이다.
도 10의 (a)을 참조하면, 전체 17가지 왜곡 유형의 분포가 나타나며, 도 10의 (b)을 참조하면 선택된 주요한 5가지(AGN, spatially correlated noise (SCN), Gaussian blur (GB), JPEG compression and mean shift (MS)))의 왜곡 유형을 이미지 처리 어플리케이션을 이용한 분포가 도시된다.
도 10(a)와 (b)를 함께 비교하면 각 왜곡 종류는 명확하게 인코딩되는 것을 확인할 수 있다. 그리고 AGN와 ANC(additive color noise)와 같은 몇 가지 왜곡 종류는 공간적으로 상관이 있는 것으로 확인할 수 있다.
도 11은 생성된 동작 수용체의 예를 도시한다.
도 11을 참조하면, 생성된 복수의 필터는 서로 다른 형상을 가짐을 확인할 수 있다. 그리고 각 필터는 정의된 해상도에서, 다른 스케일(scale)과 방향(orientation)을 갖는다.
도 12는 본 개시의 일 실시 예에 따른 제2 데이터 흐름을 예시한 도면이다. 여기서 제2 데이터 흐름은 풀링에 기초한 시각적 민감도(Visual Sensitivity based Pooling)이라고 지칭될 수 있다.
시각적 민감도(Visual Sensitivity)는 인간 시각 시스템(HSV) 내의 인지적 민감도에 대응되는 에러 신호의 영역을 의미한다.
본 개시에서는 시각적 민감도의 정확도를 향상시키기 위하여, 다음과 같은 접근 방식을 이용하여 민감도 생성 모델(430)을 설계하였다.
도 12를 참조하면, 민감도 생성 모델(430)은 입력된 데이터를 서브 샘플링한 후 업 샘플링 과정을 거쳐 특징을 추출하여 시각적 민감도 맵을 생성할 수 있다. 이러한 민감도 생성 모델(430)은 민감도 맵의 차원을 유지하기 위해 U-Net 구조를 따른다. 그리고 생성된 감도 맵은 동적 에러 맵에 가중될 수 있다. 이에 따라, 풍부한 에러 정보에 기인하여, 학습 모델이 다양하고 다른 에러 유형에 대해서 강인한 공간적 마스킹 효과를 갖는 시각적 민감도를 나타낼 수 있다.
전술한 바와 같이, 민감도 생성 모델(430)은 공유 네트워크에서 출력된 데이터를 입력받을 수 있다. 민감도 생성 모델(430)은 시각적 민감도 정보를 인코딩하기 위하여, 2x2 서브샘플 레이어를 갖는 3개의 컨볼루션 레이어가 이용될 수 있으며, 인코딩된 특징 맵을 업 샘플링하기 위한 3개의 확장된 컨볼루션 레이어(dilated convolution layer)가 이용될 수 있다. 인코딩 및 업 샘플링 경로 사이의 스킵 연결은 연결 연산자(concatenation operator)를 통하여 구현될 수 있으며, 연결 연산자는 지역 정보(local information)를 업 샘플링 경로를 통하여 전역 정보(global information)에 제공할 수 있다.
이와 같이 본 개시는 서브 샘플링한 후 업 샘플링 과정을 수행하고 서브 샘플링 경로와 업 샘플링 경로 간의 스킵 연결을 통해 해상도 손실로 인한 시각적 정확도가 감소하는 문제를 해결할 수 있다. 또한, 절대적인 에러 신호를 민감도 맵에 곱하면 공간적 마스킹 효과를 반영하는 것보다 에러 정보에 가중치가 더 적용되는 문제를 해결할 수 있다.
그리고 앞선 과정에서 생성된 시각적 민감도를 가중치로서 동적 에러 맵에 적용하여 이미지의 화질 점수를 산출할 수 있다. 구체적으로, 이미지 화질 평가 장치(400)는 가중치가 적용된 동적 에러 맵은 컨볼루션 레이어와 전역 평균 풀링(Global Average Pooling, GAP) 연산을 거쳐 화질 점수를 산출할 수 있다
한편, 구현시에 이미지 화질 평가 장치는 이미지를 복수의 패치로 분할하는 전처리 과정을 수행하고, 복수의 패치별 화질 점수를 계산하여 화질 점수를 예측할 수도 있다.
예를 들어, 하나의 이미지에 대한 화질 점수(spred)는 수학식 4와 같이 표현될 수 있다.
[수학식4]
여기서, M은 패치의 개수이고, Xd은 열화 이미지이고, Xr는 기준 이미지이고, θ는 학습 모델의 파라미터이다.
가중치가 적용된 맵 ew는 수학식 5와 같이 표현될 수 있다.
[수학식 5]
여기서, ew는 가중치가 적용된 맵, edyn은 동적 에러 맵이고, s는 시각적 민감도 맵이고, ⊙는 원소별곱을 의미한다.
손실 함수(loss function)는 수학식 6과 같이 예측 값과 검증자료 간의 평균 제곱근 오차(Mean Square Error)로 설정될 수 있다.
[수학식 6]
여기서, Lmse는 목적함수, Spred는 화질 점수, Ssub는 이미지 샘플의 주관적 점수이다.
고주파수 노이즈를 저감하기 위해 수학식 7과 같이 TV(Total Variation)를 적용할 수 있고, 오버 피팅을 피하기 위해서 수학식 8과 같이 L2 놈을 적용할 수 있다.
[수학식 7]
여기서, Hs는 민감도 맵의 높이, Ws는 민감도 맵의 너비, Shorz는 수평 방향으로 소벨 필터(Sobel Filter)가 적용된 민감도 맵, Svert는 수직 방향으로 소벨 필터가 적용된 민감도 맵이다.
[수학식 8]
여기서 Lmse는 손실함수, λ1은 LTV의 가중치 파라미터이고, λ2는 Ll2의 가중치 파라미터이다.
도 13은 본 개시의 일 실시 예에 따른 이미지 화질 평가 장치가 생성한 응답 에러 맵의 예들을 도시한 도면이다. 구체적으로, 도 13의 (a), (e), (i), 및 (m)은 3가지(AGN, JPTE, 두 개의 블록) 왜곡 유형을 갖는 4개의 왜곡 이미지 예들이고, 도 13의 (b), (f), (j), 및 (n)은 각 왜곡 이미지에 대한 공간적 에러 맵의 예들이고, 도 13의 (c), (g), (k), 및 (o)는 각 왜곡 이미지에 대한 복수의 필터 예이고, 도 13의 (d), (h), (l), 및 (p)는 각 에러 이미지에 대한 응답 에러 맵이다.
도 13을 참조하면, 본 개시는 동적 수용체를 통해 모델의 추론 결과를 시각화할 수 있음을 확인할 수 있다.
이하에서는 본 개시에 따라 생성된 시각적 감도가 HVS와 일치하는지를 검증하기 위한 결과를 도 14를 참조하여 이하에서 설명한다.
도 14는 본 개시의 일 실시 예에 따른 이미지 화질 평가 장치가 생성한 시각적 민감도 맵의 예들을 도시한 도면이다. 구체적으로, 도 14의 (a), (e), (i), 및 (m)은 4개의 기준 이미지들이고, 도 14의 (b), (f), (j), 및 (n)은 각각 AGN, MN, QN, JP2K 방식으로 왜곡된 열화 이미지들의 예이다. 그리고 도 14의 (c), (g), (k), 및 (o)는 왜곡된 이미지에 대한 공간적 에러 맵들을 도시한다. 그리고 도 14의 (d), (h), (l), 및 (p)는 열화 이미지에 대해 예측된 시각적 민감도 맵들이다.
도 14를 참조하면, 다양한 공간적 특징을 반영하기 위하여 4개의 기준 이미지(a, e, i, m)가 이용되었으며, 4가지 다른 왜곡 특징(AGN, MN, QN, JP2K)이 적용된 왜곡 이미지(b, f, j, n)를 이용하였다.
어두운 영역은 공간적 에러 맵 내에서 왜곡 픽셀을 더 포함하며, 민감도 맵 내에서 어두운 영역은 0에 가깝고, 밝은 영역에서는 그 반대임을 확인할 수 있다. 구체적으로, 도 14의 (a)와 (b)를 참조하면, 하늘 주위의 AGN은 바다 영역보다 더 두드러지며, 이러한 점은 도 14의 (d)와 같음을 확인할 수 있다.
그리고 도 14의 (e)와 (f)를 참조하면, 창문과 같은 고주파수 영역은 도 14의 (h)와 같이 낮은 가중치를 갖는다.
그리고 QN은, 객체 에러가 강하게 분산됨을 도 14의 (k)와 같이 확인할 수 있다.
그리고 단조로운 영역은 도 14의 (i)와 같이 낮은 가중치를 가지며, 이는 대비 마스킹 및 CSH와 동일하다.
그리고 JPEG 2000으로 이미지가 왜곡되면, 숲 영역은 도 14의 (p)와 같이 마스킹될 수 있다.
이와 같이 전체 민감도 맵은 HVS의 시각적 마스킹 효과를 충족하며, 본 개시에 따른 화질 평가 방법은 시각적 민감도 생성을 이용하여 에러 표현을 적응적으로 풀링할 수 있다.
도 15는 본 개시의 다른 실시 예에 따른 화질 평가 동작을 설명하기 위한 도면이다. 구체적으로, 도 15는 기준 이미지를 입력받지 않는 경우의 화질 평가 동작을 설명하기 위한 도면이다.
도 15를 참조하면, 이미지 화질 평가 장치(400')는 공유 모델(410), 수용체 생성 모델(420), 민감도 생성 모델(430), 화질 점수 평가 모델(440), 기준 이미지 생성 모델(450)을 포함할 수 있다. 이러한 각 모델은 도 2 또는 도 3의 프로세서(320) 내의 모듈(또는 프로그램)로서 동작할 수 있다.
기준 이미지 생성 모델(450)을 제외한 나머지 구성은 도 8의 구성과 동일한바, 이하에서는 기준 이미지 생성 모델(450)에 대해서만 설명한다.
도 1의 클라이언트의 경우, 서버로부터 인코딩된 이미지(즉, 열화 이미지)만을 수신한다는 점에서, 도 8과 같이 기준 이미지를 이용하는 것이 어렵다.
이러한 점에서, 도 15에서는 열화 이미지를 기학습된 기준 이미지 생성 모델(450)을 이용하여 기준 이미지를 생성하여 이용한다.
기준 이미지 생성 모델(450)은 열화 이미지(20)를 입력받고, 열화 이미지에 대응되는 기준 이미지를 복원할 수 있다. 복원 과정에서는 알려진 다양한 학습 모델을 이용할 수 있으며, 예를 들어, Hallucinatd-IQA framework가 이용될 수 있다.
이와 같이 열화 이미지에 대한 기준 이미지가 복원되면, 앞서 상술한 기준 이미지 대신에 이용할 수 있다.
한편, 상술한 예에서는 복원된 기준 이미지를 공유 모델(410)과 동적 에러 맵(60)을 생성하는데 이용하는 것으로 도시하고 설명하였지만, 구현시에는 동적 에러 맵(60)을 생성하는데만 이용할 수도 있다. 즉, 시각적 민감도 맵 및 동적 수용체(또는 복수의 필터) 생성 시에는 열화 이미지만을 이용하여 시각적 민감도 맵 또는 동적 수용체를 생성할 수도 있다.
도 16은 본 개시의 일 실시 예에 따른 동영상의 화질 평가 동작을 설명하기 위한 도면이다.
도 16을 참조하면, 이미지 화질 평가 장치(400")는 공유 모델(410'), 수용체 생성 모델(420), 민감도 생성 모델(430), 화질 점수 평가 모델(440), 기준 이미지 생성 모델(450), CNAN 모델(460)을 포함할 수 있다.
공유 모델(410')은 기준 프레임(110), 열화 프레임(120), 프레임 차이 맵(130) 및 모션 에러 맵(140)을 입력받고, 입력된 각 이미지를 전처리할 수 있다. 이러한 공유 모델(410')(Shared network)은 4개의 컨볼루션 레이어 세트로 구성될 수 있다. 기준 프레임(110), 열화 프레임(120), 프레임 차이 맵(130) 및 모션 에러 맵(140) 각각의 정의는 도 17을 참조하여 후술한다.
수용체 생성 모델(420)은 공유 모델(410)의 출력 데이터를 입력받고, 수용체 생성 모델(420)을 이용하여 수용체(또는 복수의 필터)(40)를 생성할 수 있다. 한편, 도 16의 수용체 생성 모델은 도 8의 경우와 상이하게 공유 모델(410')에 입력되는 4가지 이미지에 대응되는 데이터 셋으로 학습된 모델일 수 있다.
민감도 생성 모델(430)은 공유 모델(410')의 출력 데이터를 입력받고, 시각적 민감도 맵(50)을 출력할 수 있다. 이러한 민감도 생성 모델(430)도 공유 모델(410')에 입력되는 4가지 이미지에 대응되는 데이터 셋으로 학습된 모델일 수 있다.
화질 점수 평가 모델(441)은 기준 프레임(110) 및 열화 프레임(120)을 입력받고, 해당 프레임에 대한 화질 점수를 출력할 수 있다. 구체적으로, 화질 점수 평가 모델(441)은 기준 프레임(110), 열화 프레임(120), 수용체 생성 모델(420)에서 생성한 수용체를 이용하여 동적 에러 맵을 생성하고, 생성된 동적 에러 맵에 민감도 생성 모델(430)에서 생성한 시각적 민감도 맵을 가중치로 이용하여 화질 점수를 산출할 수 있다.
CNAN 모델(460)은 복수의 프레임 각각에 대한 가중치 값을 산출하고, 산출된 가중치 값과 프레임별 화질 점수를 이용하여 동영상 화질 점수를 산출할 수 있다. CNAN 모델(460)의 구체적인 구성 및 동작은 도 18을 참조하여 후술한다.
이상과 같이 본 실시 예에 따른 이미지 화질 평가 장치는 이미지뿐만 아니라 동영상에 대해서도 이미지의 왜곡 유형에 따른 인간의 인지 특성을 반영한 화질 평가를 수행할 수 있다.
한편, 구현시에 이미지 화질 평가 장치(400")는 동영상을 구성하는 모든 프레임 각각에 대한 화질 점수를 산출하여 동영상 화질 점수를 산출할 수도 있으며, 기설정된 시간 간격 단위로 추출된 프레임에 대해서만 화질 점수를 산출하여 동영상 화질 점수를 산출할 수도 있다.
도 17은 도 16의 기준 프레임, 왜곡 프레임, 에러 맵, 프레임 차이 맵 및 모션 에러 맵을 설명하기 위한 도면이다.
도 17을 참조하면, 동영상은 이미지가 프레임 단위로 연속된 것으로, 원본 동영상은 도 17에 도시된 바와 같이 복수의 기준 프레임(110-1, 110-2, 100-3, 110-4)을 포함할 수 있다. 이상에서는 설명을 용이하게 하기 위하여, 4개의 프레임만을 도시하였지만, 구현시에 동영상은 5개 이상의 프레임이 포함될 수 있다.
그리고 열화 프레임(120-1, 120-2, 120-3, 120-4)는 기준 프레임 각각에 대해서 품질이 저하된 이미지이다. 이하에서는 현재 화질 평가를 4번째 프레임(110-4, 120-4)에 대해서 수행하는 것으로 가정하여 설명한다.
에러 맵(150)은 앞서 설명한 공간적 에러 맵에 대응되는 맵으로, 현재 기준 프레임(110-4)과 현재 열화 프레임(120-4) 간에 정규화된 로그 차이로 생성될 수 있다.
프레임 차이 맵(130)은 현재 열화 프레임(120-4)과 직전 열화 프레임(120-3) 간의 차이를 나타내는 맵으로, 열화 프레임에서의 모션 성분(130-2)을 나타내는 맵이다.
모션 에러 맵(140)은 기준 프레임의 모션 성분과 열화 프레임의 모션 성분의 차이를 나타내는 맵으로, 기준 프레임에 대한 모션 성분(130-1)과 에러 프레임에 대한 모션 성분(130-2)의 차이로 생성될 수 있다.
도 18은 프레임별 화질 점수를 이용한 동영상 화질 점수의 산정 방법을 설명하기 위한 도면이다.
도 18을 참조하면, 두 비디오의 프레임별 화질 점수가 도시된다. A 비디오 및 B 비디오는 동일한 화질 평균값을 갖는다. 구체적으로, A 비디오는 평균 값을 기준으로 편차가 작은 화질 값을 가지며, B 비디오는 대부분의 프레임에서 높은 화질 값을 가지나, 일부 프레임에서 매우 낮은 화질 점수를 갖는다.
인지적 차원에서 사용자는 B 비디오에 대해서 낮은 품질을 갖는 것으로 인식할 것이나, 단순 평균 값을 이용하면 사용자의 이러한 인지적 특징을 반영하지 못하는 문제점이 있다.
이러한 프레임별 화질차이에 대한 인간 시각 인지를 반영하기 위하여, 본 개시는 DeepVQA(Deep Video Quality Assessor)이라 지칭하는 모델을 이용하여 컨볼루션 신경만의 장점을 활용한다.
이하에서는 도 19 및 도 20을 참조하여 본 개시에 따른 동영상 화질 평가 방법을 설명한다.
도 19는 산출된 프레임 화질 점수를 이용한 동영상 화질 점수의 산출 방법을 설명하기 위한 도면이고, 도 20은 도 19의 CNAN 모델의 구체적인 구성을 도시한 도면이다.
도 19 및 도 20을 참조하면, 동영상 점수 산출 장치는 CNN 모델(510) 및 CNAN 모델(520)로 구성될 수 있다.
CNN 모델(510)은 프레임별 화질 점수를 산출하는 학습 모델이다. 이러한 CNN 모델(510)은 도 16에 도시된 이미지 화질 평가 장치(400")가 이용될 수 있다. CNN 모델(510)에서 출력된 프레임 점수는 단일 백터(μp)로 나타낼 수 있다.
CNAN 모델(520)은 가중치 정보(ω)를 출력할 수 있다. 구체적으로, CNAN 모델(520)은 메모리 커널(m)을 사용하여 관심 블록(attention block) 내의 특징(e)에 대응되는 세트를 정의할 수 있다. 이러한 CNAN 모델은 가중치 생성 모델이라고 지칭될 수 있다.
이때, 유의성(e)을 생성하기 위하여, 메모리 커널(m)을 사용하여 주어진 단일 백터(μp)상에서 1차원 컨볼루션이 수행될 수 있다. 다시 말해, 유의성은 특정 필터 길이 동안 점수 변동의 특정 패턴을 학습하여 설계될 수 있다. 이러한 연산은 단순 컴볼루션 e=m*μp로 설명할 수 있다.
가중치 차원을 μp와 동일하게 유지하기 위하여, 입력(μp)의 경계 라인에서 제로 패딩을 수행할 수 있다. 그런 다음 소프트맥스 연산자에 전달하여 양의 시간 가중치(ωt)를 다음과 같은 수학식 9와 같이 산출할 수 있다.
[수학식 9]
한편, CNAN 모델의 목적함수는 다음과 같은 수학식 10으로 표현될 수 있다.
[수학식 10]
CNAN 모델(520)에서 가중치 정보(ω)가 출력되면, 앞선 CNN 모델(510)에서 산출된 프레임 점수(μp)에 가중치 정보(ω)를 반영할 수 있다. 이후에 가중치가 반영된 프레임 점수를 이용하여 동영상 화질 점수를 산출할 수 있다.
도 21은 본 개시의 제1 실시 예에 따른 화질 평가 방법을 설명하기 위한 흐름도이다.
도 21을 참조하면, 먼저 열화 이미지를 입력받는다(S2110). 여기서 열화 이미지는 인코딩 과정 또는 전송 과정에서 품질이 열화된 이미지일 수 있다.
그리고 필터 생성 모델을 이용하여 입력된 열화 이미지의 왜곡 유형에 대응되는 복수의 필터를 생성할 수 있다(S2120). 예를 들어, 열화 이미지, 열화 이미지에 대응되는 기준 이미지, 열화 이미지와 기준 이미지에 대응되는 공간적 에러 맵을 필터 생성 모델에 입력하여 복수의 필터를 생성할 수 있다.
그리고 생성된 복수의 필터, 열화 이미지 및 열화 이미지에 대응되는 기준 이미지를 이용하여 열화 이미지에 대한 화질 점수를 산출할 수 있다(S2130).
이상과 같이 본 개시에 따른 화질 평가 방법은 열화 이미지에 적응적인 복수의 필터를 이용하여 화질 점수를 산출하는바, 이미지의 왜곡 유형에 따른 인간의 인지 특성을 반영한 화질 평가가 가능하다.
한편, 상술한 다양한 실시 예에 따른 화질 평가 방법은 각 단계들을 수행하기 위한 프로그램 코드 형태로 구현되어, 기록 매체에 저장되고 배포될 수도 있다. 이 경우, 기록 매체가 탑재된 장치는 상술한 화질 평가 동작을 수행할 수 있다.
이러한 기록 매체는, ROM, RAM, 메모리 칩, 메모리 카드, 외장형 하드, 하드, CD, DVD, 자기 디스크 또는 자기 테이프 등과 같은 다양한 유형의 컴퓨터 판독 가능 매체가 될 수 있다.
도 22는 본 개시의 제2 실시 예에 따른 화질 평가 방법을 설명하기 위한 흐름도이다. 이미지 화질 평가 방법은 이미지 화질 평가 장치에 의하여 수행될 수 있다.
단계 S2210에서 프로세서는 기준 이미지, 열화 이미지, 및 공간적 에러 맵으로부터 수용체 생성 모델을 통해 동적 수용체를 생성한다.
단계 S2220에서 프로세서는 기준 이미지, 열화 이미지, 및 공간적 에러 맵으로부터 민감도 생성 모델을 통해 시각적 민감도 맵을 생성한다.
단계 S2230에서 프로세서는 기준 이미지 및 열화 이미지에 동적 수용체를 적용하여 동적 에러 맵을 생성한다.
단계 S2240에서 프로세서는 동적 에러 맵에 시각적 민감도 맵을 적용하여 이미지의 화질 점수를 산출한다.
이미지 화질 평가 장치는 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합에 의해 로직 회로 내에서 구현될 수 있고, 범용 또는 특정 목적 컴퓨터를 이용하여 구현될 수도 있다. 장치는 고정배선형(Hardwired) 기기, 필드 프로그램 가능한 게이트 어레이(Field Programmable Gate Array, FPGA), 주문형 반도체(Application Specific Integrated Circuit, ASIC) 등을 이용하여 구현될 수 있다.
또한, 장치는 하나 이상의 프로세서 및 컨트롤러를 포함한 시스템온칩(System onChip, SoC)으로 구현될 수 있다.
이미지 화질 평가 장치는 하드웨어적 요소가 마련된 컴퓨팅 디바이스 또는 서버에 소프트웨어, 하드웨어, 또는 이들의 조합하는 형태로 탑재될 수 있다. 컴퓨팅 디바이스 또는 서버는 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신장치, 프로그램을 실행하기 위한 데이터를 저장하는 메모리, 프로그램을 실행하여 연산 및 명령하기 위한 마이크로프로세서 등을 전부 또는 일부 포함한 다양한 장치를 의미할 수 있다.
도 22에서는 각각의 과정을 순차적으로 실행하는 것으로 기재하고 있으나 이는 예시적으로 설명한 것에 불과하고, 이 분야의 기술자라면 본 개시의 실시 예의 본질적인 특성에서 벗어나지 않는 범위에서 도 22에 기재된 순서를 변경하여 실행하거나 또는 하나 이상의 과정을 병렬적으로 실행하거나 다른 과정을 추가하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이다.
본 실시 예들에 따른 동작은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능한 매체에 기록될 수 있다. 컴퓨터 판독 가능한 매체는 실행을 위해 프로세서에 명령어를 제공하는 데 참여한 임의의 매체를 나타낸다. 컴퓨터 판독 가능한 매체는 프로그램 명령, 데이터 파일, 데이터 구조 또는 이들의 조합을 포함할 수 있다. 예를 들면, 자기 매체, 광기록매체, 메모리 등이 있을 수 있다. 컴퓨터 프로그램은 네트워크로 연결된 컴퓨터 시스템 상에 분산되어 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 본 실시 예를 구현하기 위한 기능적인(Functional) 프로그램, 코드, 및 코드 세그먼트들은 본 실시 예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.
본 실시 예들은 본 실시 예의 기술 사상을 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 실시 예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시 예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시 예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
이상 첨부 도면을 참고하여 본 개시에 대해서 설명하였지만 본 개시의 권리범위는 후술하는 특허청구범위에 의해 결정되며 전술한 실시 예 및/또는 도면에 제한되는 것으로 해석되어서는 안 된다. 그리고 특허청구범위에 기재된 개시의, 당업자에게 자명한 개량, 변경 및 수정도 본 개시의 권리범위에 포함된다는 점이 명백하게 이해되어야 한다.
1000: 평가 시스템
100: 서버
200: 클라이언트 300: 전자 장치
310: 메모리 320: 프로세서
330: 통신 장치 340: 디스플레이
350: 조작 입력 장치
200: 클라이언트 300: 전자 장치
310: 메모리 320: 프로세서
330: 통신 장치 340: 디스플레이
350: 조작 입력 장치
Claims (20)
- 열화 이미지를 입력받는 단계;
필터 생성 모델을 이용하여 상기 입력된 열화 이미지의 왜곡 유형에 대응되는 복수의 필터를 생성하는 단계; 및
상기 생성된 복수의 필터, 상기 열화 이미지 및 상기 열화 이미지에 대응되는 기준 이미지를 이용하여 상기 열화 이미지에 대한 화질 점수를 산출하는 단계;를 포함하는 화질 평가 방법. - 제1항에 있어서,
상기 필터 생성 모델은,
입력된 이미지를 서브 샘플링하여 왜곡의 특징을 추출하는 인코딩 모델과 상기 인코딩 모델의 출력 이미지를 입력받고 왜곡 유형별 상이한 값을 갖고 기설정된 크기를 갖는 복수의 필터를 생성하는 생성 모델을 포함하는 화질 평가 방법. - 제1항에 있어서,
상기 복수의 필터를 생성하는 단계는,
상기 열화 이미지, 상기 열화 이미지에 대응되는 기준 이미지, 상기 열화 이미지와 상기 기준 이미지에 대응되는 공간적 에러 맵을 상기 필터 생성 모델에 입력하여 상기 복수의 필터를 생성하는 화질 평가 방법. - 제3항에 있어서,
상기 복수의 필터를 생성하는 단계는,
상기 열화 이미지, 상기 기준 이미지 및 상기 공간적 에러 맵 각각을 복수의 컨볼루션 레이어 세트를 이용하여 전처리하고, 전처리된 열화 이미지, 전처리된 기준 이미지 및 전처리된 공간적 에러 맵을 상기 필터 생성 모델에 입력하여 상기 복수의 필터를 생성하는 화질 평가 방법. - 제3항에 있어서,
상기 복수의 필터를 생성하는 단계는,
상기 열화 이미지를 이용하여 상기 열화 이미지에 대한 기준 이미지를 생성하는 단계를 포함하는 화질 평가 방법. - 제3항에 있어서,
상기 복수의 필터를 생성하는 단계는,
상기 기준 이미지 및 상기 열화 이미지 간에 정규화된 로그 차이로 상기 공간적 에러 맵을 생성하는 단계를 포함하는 화질 평가 방법. - 제1항에 있어서,
민감도 생성 모델을 이용하여 에러 신호의 영역을 나타내는 시각적 민감도 맵을 생성하는 단계;를 더 포함하고,
상기 화질 점수를 산출하는 단계는,
상기 생성된 복수의 필터, 상기 열화 이미지 및 상기 기준 이미지를 이용하여 동적 에러 맵을 생성하는 단계; 및
상기 생성된 동적 에러 맵에 상기 시각적 민감도 맵을 가중치로 적용하여 화질 점수를 연산하는 단계;를 포함하는 화질 평가 방법. - 제7항에 있어서,
상기 민감도 생성 모델은,
입력된 데이터를 서브 샘플링한 후 업 샘플링 과정을 거쳐 특징을 추출하여 시각적 민감도 맵을 생성하고, 서브 샘플링 경로와 업 샘플링 경로 간의 스킵 연결을 통해 지역 정보를 상기 업 샘플링 경로의 전역 정보에 제공하는 화질 평가 방법. - 제7항에 있어서,
상기 동적 에러 맵을 생성하는 단계는,
상기 열화 이미지 및 상기 기준 이미지 각각에 상기 생성된 복수의 필터 각각을 컨볼류션 연산하여 기준 응답 및 열화 응답을 추출하는 단계;
상기 기준 응답과 상기 열화 응답 간에 채널 단위로 감산하여 응답 에러 맵을 산출하는 단계;
상기 기준 응답과 상기 열화 응답 간의 최대치를 선택하여 중요도 맵을 산출하는 단계; 및
상기 응답 에러 맵과 상기 중요도 맵을 결합하여 상기 동적 에러 맵을 생성하는 단계;를 포함하는 화질 평가 방법. - 제7항에 있어서,
상기 화질 점수를 산출하는 단계는,
상기 열화 이미지에 대응되는 기준 이미지를 복원하는 단계;를 더 포함하고,
상기 복원된 기준 이미지를 이용하여 동적 에러 맵을 생성하는 화질 평가 방법 - 제1항에 있어서,
상기 열화 이미지는 동영상을 구성하는 하나의 프레임 이미지이고,
상기 복수의 필터를 생성하는 단계는,
상기 열화 이미지와 상기 열화 이미지 직전의 프레임 이미지 간의 프레임 차이 맵, 상기 프레임 차이 맵과 기준 이미지의 프레임 차이 맵 간의 모션 에러 맵을 상기 필터 생성 모델에 적용하여 복수의 필터를 생성하고,
상기 산출하는 단계는,
상기 하나의 프레임 이미지에 대한 화질 점수를 산출하는 화질 평가 방법. - 제11항에 있어서,
상기 동영상을 구성하는 복수의 프레임에 대해서 산출된 화질 점수를 이용하여 동영상 화질 점수를 산출하는 단계;를 더 포함하는 화질 평가 방법. - 제12항에 있어서,
상기 동영상 화질 점수를 산출하는 단계는,
상기 복수의 프레임 각각에 대한 가중치 값을 산출하고, 상기 복수의 프레임에 대해서 산출된 화질 점수에 상기 산출된 가중치 값을 적용하여 상기 동영상 화질 점수를 산출하는 화질 평가 방법. - 전자 장치에 있어서,
적어도 하나의 인스트럭션(instruction) 및 필터 생성 모델을 저장하는 메모리; 및
상기 적어도 하나의 인스트럭션을 실행하는 프로세서;를 포함하고,
상기 프로세서는,
상기 적어도 하나의 인스트럭션을 실행함으로써,
상기 필터 생성 모델을 이용하여 입력된 열화 이미지의 왜곡 유형에 대응되는 복수의 필터를 생성하고,
상기 생성된 복수의 필터, 상기 열화 이미지 및 상기 열화 이미지에 대응되는 기준 이미지를 이용하여 상기 열화 이미지에 대한 화질 점수를 산출하는 전자 장치. - 제14항에 있어서,
상기 필터 생성 모델은,
입력된 이미지를 서브 샘플링하여 왜곡의 특징을 추출하는 인코딩 모델과 상기 인코딩 모델의 출력 이미지를 입력받고 왜곡 유형별 상이한 값을 갖고 기설정된 크기를 갖는 복수의 필터를 생성하는 생성 모델을 포함하는 전자 장치. - 제14항에 있어서,
상기 프로세서는,
상기 열화 이미지, 상기 열화 이미지에 대응되는 기준 이미지, 상기 열화 이미지와 상기 기준 이미지에 대응되는 공간적 에러 맵을 상기 필터 생성 모델에 입력하여 상기 복수의 필터를 생성하는 전자 장치. - 제14항에 있어서,
상기 프로세서는,
민감도 생성 모델을 이용하여 에러 신호의 영역을 나타내는 시각적 민감도 맵을 생성하고,
상기 생성된 복수의 필터, 상기 열화 이미지 및 상기 기준 이미지를 이용하여 동적 에러 맵을 생성하고,
상기 생성된 동적 에러 맵에 상기 시각적 민감도 맵을 가중치로 적용하여 화질 점수를 연산하는 전자 장치. - 제17항에 있어서,
상기 민감도 생성 모델은,
입력된 데이터를 서브 샘플링한 후 업 샘플링 과정을 거쳐 특징을 추출하여 시각적 민감도 맵을 생성하고, 서브 샘플링 경로와 업 샘플링 경로 간의 스킵 연결을 통해 지역 정보를 상기 업 샘플링 경로의 전역 정보에 제공하는 전자 장치. - 제14항에 있어서,
상기 열화 이미지는 동영상을 구성하는 하나의 프레임 이미지이고,
상기 프로세서는,
상기 열화 이미지와 상기 열화 이미지 직전의 프레임 이미지 간의 프레임 차이 맵, 상기 프레임 차이 맵과 기준 이미지의 프레임 차이 맵 간의 모션 에러 맵을 상기 필터 생성 모델에 적용하여 복수의 필터를 생성하는 전자 장치. - 화질 평가 방법을 실행하기 위한 프로그램을 포함하는 컴퓨터 판독가능 기록 매체에 있어서,
상기 화질 평가 방법은,
필터 생성 모델을 이용하여 입력된 열화 이미지의 왜곡 유형에 대응되는 복수의 필터를 생성하는 단계; 및
상기 생성된 복수의 필터, 상기 입력된 열화 이미지 및 상기 열화 이미지에 대응되는 기준 이미지를 이용하여 상기 입력된 열화 이미지에 대한 화질 점수를 산출하는 단계;를 포함하는 컴퓨터 판독가능 기록매체.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190085891 | 2019-07-16 | ||
KR20190085891 | 2019-07-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210009258A true KR20210009258A (ko) | 2021-01-26 |
KR102366176B1 KR102366176B1 (ko) | 2022-02-23 |
Family
ID=74310011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190172145A KR102366176B1 (ko) | 2019-07-16 | 2019-12-20 | 화질 평가 방법 및 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102366176B1 (ko) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113658093A (zh) * | 2021-06-30 | 2021-11-16 | 浙江大华技术股份有限公司 | 图像质量评估方法、装置、设备及计算机存储介质 |
CN114399495A (zh) * | 2022-01-14 | 2022-04-26 | 平安普惠企业管理有限公司 | 图像清晰度的计算方法、装置、设备及存储介质 |
WO2022250388A1 (ko) * | 2021-05-25 | 2022-12-01 | 삼성전자 주식회사 | 비디오 품질을 평가하는 전자 장치 및 그 동작 방법 |
WO2023096337A1 (ko) * | 2021-11-23 | 2023-06-01 | 이화여자대학교 산학협력단 | 인공지능 기반의 영상 화질 평가장치, 방법 및 이를 위한 컴퓨터 판독가능 프로그램 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06133176A (ja) * | 1992-10-14 | 1994-05-13 | Daikin Ind Ltd | 差画像作成方法、客観的画質評価方法、画像圧縮方法およびそれらの装置 |
JP2011134200A (ja) * | 2009-12-25 | 2011-07-07 | Konica Minolta Holdings Inc | 画像評価方法、画像処理方法および画像処理装置 |
-
2019
- 2019-12-20 KR KR1020190172145A patent/KR102366176B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06133176A (ja) * | 1992-10-14 | 1994-05-13 | Daikin Ind Ltd | 差画像作成方法、客観的画質評価方法、画像圧縮方法およびそれらの装置 |
JP2011134200A (ja) * | 2009-12-25 | 2011-07-07 | Konica Minolta Holdings Inc | 画像評価方法、画像処理方法および画像処理装置 |
Non-Patent Citations (1)
Title |
---|
인간시각특성을 이용한 블록기반 DCT 영상 부호화기의 정량적 화질 평가, 한국지능시스템학회 논문지 12(5), 2002.10* * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022250388A1 (ko) * | 2021-05-25 | 2022-12-01 | 삼성전자 주식회사 | 비디오 품질을 평가하는 전자 장치 및 그 동작 방법 |
CN113658093A (zh) * | 2021-06-30 | 2021-11-16 | 浙江大华技术股份有限公司 | 图像质量评估方法、装置、设备及计算机存储介质 |
WO2023096337A1 (ko) * | 2021-11-23 | 2023-06-01 | 이화여자대학교 산학협력단 | 인공지능 기반의 영상 화질 평가장치, 방법 및 이를 위한 컴퓨터 판독가능 프로그램 |
CN114399495A (zh) * | 2022-01-14 | 2022-04-26 | 平安普惠企业管理有限公司 | 图像清晰度的计算方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
KR102366176B1 (ko) | 2022-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102366176B1 (ko) | 화질 평가 방법 및 장치 | |
US20220239925A1 (en) | Method and apparatus for applying deep learning techniques in video coding, restoration and video quality analysis (vqa) | |
KR102606200B1 (ko) | 전자 장치 및 그 제어 방법 | |
Kim et al. | Deep CNN-based blind image quality predictor | |
JP7417640B2 (ja) | リアルタイム映像超高解像度 | |
US20200304802A1 (en) | Video compression using deep generative models | |
Singh et al. | Single image dehazing for a variety of haze scenarios using back projected pyramid network | |
CN112837229A (zh) | 对神经网络进行无监督训练以用于高动态范围图像压缩 | |
CN112906721B (zh) | 图像处理方法、装置、设备及计算机可读存储介质 | |
CN113191495A (zh) | 超分模型的训练及人脸识别方法、装置、介质及电子设备 | |
US11516538B1 (en) | Techniques for detecting low image quality | |
CN109886172A (zh) | 视频行为识别方法和装置、电子设备、存储介质、产品 | |
CN114730450A (zh) | 基于水印的图像重建 | |
CN117218013A (zh) | 事件相机图像处理方法、训练方法、系统、设备及介质 | |
US12028540B2 (en) | Video size reduction by reconstruction | |
Lu et al. | Reinforcement Learning for Adaptive Video Compressive Sensing | |
CN113780252B (zh) | 视频处理模型的训练方法、视频处理方法和装置 | |
US11570465B2 (en) | Machine-learned in-loop predictor for video compression | |
Murashko | Using machine learning to select and optimise multiple objectives in media compression | |
KR102709426B1 (ko) | 근적외선 영상을 rgb 영상으로 변환하는 방법 및 이를 위한 장치 | |
WO2024058804A9 (en) | Image enhancement based on removal of image degradations by learning from multiple machine learning models | |
CN118469949A (zh) | 一种视频播放质量评估方法及装置、电子设备、存储介质 | |
Nugroho et al. | Reducing Eye-Tracking Model Size for Web Applications with Pruning Methods | |
JP2024054904A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
Katiyar et al. | Real-Time Video PLC Using In-Painting |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |