KR-20260060721-A - IMAGE PROCESSING METHOD AND APPARATUS THROUGH MULTI-TASK LEARNING, LEARNING METHOD FOR IMAGE PROCESSING
Abstract
멀티 태스크 학습을 통한 영상 처리 방법 및 장치, 영상 처리를 위한 학습 방법이 개시된다. 일 실시예에 따른 영상 처리 방법은 제1 시점의 제1 영상 프레임 및 제2 시점의 제2 영상 프레임을 포함하는 입력 영상을 수신하고, 입력 영상을 신경망 모델에 인가함으로써 파라미터들을 추론하여 출력한다. 파라미터들은 입력 영상의 3차원 움직임을 포함하는 전역적 움직임 정보 및 전역적 움직임 정보를 사용하는 적어도 하나의 태스크에 대응하는 부가 정보를 나타낸다.
Inventors
- 오바울
- 지승훈
- 오도관
- 이준희
- 황찬솔
Assignees
- 삼성전자주식회사
Dates
- Publication Date
- 20260506
- Application Date
- 20241025
Claims (20)
- 제1 시점의 제1 영상 프레임 및 제2 시점의 제2 영상 프레임을 포함하는 입력 영상을 수신하는 단계; 상기 입력 영상을 신경망 모델에 인가함으로써 파라미터들- 상기 파라미터들은 상기 입력 영상의 3차원 움직임을 포함하는 전역적 움직임 정보(global motion information) 및 상기 전역적 움직임 정보를 사용하는 적어도 하나의 태스크에 대응하는 부가 정보(auxiliary information)를 나타냄 -을 추론하는 단계; 및 상기 파라미터들을 출력하는 단계 를 포함하는, 영상 처리 방법.
- 제1항에 있어서, 상기 적어도 하나의 태스크에 대응하는 부가 정보는 장면 전환 여부의 검출(Scene change detection), 인터 프레임 예측의 신뢰도(inter-frame prediction confidence) 및 스킵 여부 결정(Skip decision) 중 적어도 하나를 포함하는, 영상 처리 방법.
- 제1항에 있어서, 상기 파라미터들은 롤 각도 파라미터(roll angle parameter), 피치 각도 파라미터(pitch angle parameter), 및 요 각도 파라미터(yaw angle parameter)를 포함하는, 영상 처리 방법.
- 제1항에 있어서, 상기 파라미터들은 평행이동 파라미터(translation parameter), 회전 파라미터(rotation parameter), 스케일 파라미터(scale parameter), 및 전단 파라미터(shear parameter) 중 적어도 하나를 포함하는, 영상 처리 방법.
- 제1항에 있어서, 상기 파라미터들을 조합하여 기하 변환 매트릭스(geometric transformation matrix)를 생성하는 단계 를 더 포함하고, 상기 기하 변환 매트릭스는 어파인 변환 매트릭스(affine transform matrix) 및 호모그라피 변환 매트릭스(homography transform matrix) 중 어느 하나를 포함하는, 영상 처리 방법.
- 제1항에 있어서, 상기 부가 정보는 상기 적어도 하나의 태스크 별로 대응되는 출력 채널의 엘리먼트 번호 또는 인덱스에 의해 식별되는, 영상 처리 방법.
- 제1항에 있어서, 상기 신경망 모델은 제1 데이터베이스로부터 추출한 상기 제1 시점의 제1 영상 프레임 및 상기 제2 시점의 제2 영상 프레임을 포함하는 입력 영상을 상기 신경망 모델에 인가하여 추론한 제1 전역적 움직임 정보와 제1 레이블 간의 제1 로스와, 제2 데이터베이스로부터 추출한 제1 시점의 제1 부가 영상 프레임 및 제2 시점의 제2 부가 영상 프레임을 포함하는 부가 영상을 상기 신경망 모델에 인가하여 추론한 제2 부가 정보와 제2 레이블 간의 제2 로스에 기초하여 학습된 것인, 영상 처리 방법.
- 제1항에 있어서, 상기 파라미터들을 이용하여 상기 제1 영상 프레임 및 상기 제2 영상 프레임을 인코딩함으로써 출력 영상을 생성하는 단계 를 더 포함하는, 영상 처리 방법.
- 제8항에 있어서, 상기 출력 영상을 생성하는 단계는 상기 파라미터들을 이용하여 코덱(Codec), 비디오 스태빌라이저(video stabilizer) 및 이미지 시그널 프로세서(image signal processor, ISP) 중 어느 하나를 구동함으로써 상기 출력 영상을 생성하는 단계 를 포함하는 영상 처리 방법.
- 제1 데이터베이스로부터 추출한 제1 시점의 제1 영상 프레임 및 제2 시점의 제2 영상 프레임을 포함하는 입력 영상을 신경망 모델에 인가하여 제1 파라미터들- 상기 제1 파라미터들은 상기 입력 영상에 대응하는 제1 전역적 움직임 정보 및 제1 부가 정보를 포함함 -을 추론하는 단계; 상기 제1 파라미터들 중 상기 제1 전역적 움직임 정보와 제1 레이블 간의 제1 로스를 산출하는 단계; 제2 데이터베이스로부터 추출한 제1 시점의 제1 부가 영상 프레임 및 제2 시점의 제2 부가 영상 프레임을 포함하는 부가 영상을 상기 신경망 모델에 인가하여 상기 부가 영상에 대응하는 제2 전역적 움직임 정보 및 제2 부가 정보를 포함하는 제2 파라미터들을 추론하는 단계; 상기 제2 파라미터들 중 상기 제2 부가 정보와 제2 레이블 간의 제2 로스를 산출하는 단계; 및 상기 제1 로스 및 상기 제2 로스에 기초하여, 상기 신경망 모델을 학습하는 단계 를 포함하는, 학습 방법.
- 제10항에 있어서, 상기 제1 파라미터들을 추론하는 단계는 상기 제1 전역적 움직임 정보를 일정 범위 내로 정규화한 제1 파라미터들을 추론하는 단계를 포함하고, 상기 제1 로스를 산출하는 단계는 상기 정규화한 제1 파라미터들을 비정규화(de-normalize)하는 단계; 및 상기 비정규화한 제1 파라미터들과 상기 제1 전역적 움직임 정보에 대응하는 레이블 간의 상기 제1 로스를 산출하는 단계 를 포함하는, 학습 방법.
- 제10항에 있어서, 상기 제1 로스는 상기 제1 전역적 움직임 정보와 상기 제1 레이블 간의 차이의 제곱을 평균한 값인 MSE(Mean Squared Error); 및 상기 제1 전역적 움직임 정보와 상기 제1 레이블 간의 차이의 절대값을 평균한 값인 MAE(Mean Absolute Error) 중 어느 하나를 포함하는, 학습 방법.
- 제10항에 있어서, 상기 제2 로스는 상기 제2 부가 정보가 상기 제2 레이블과 얼마나 가까운지를 확률적으로 나타낸 값인 BCE(Binary Cross Entropy)를 포함하는, 학습 방법.
- 제10항에 있어서, 상기 제1 레이블은 0과 1사이의 확률로 표현되는 소프트 레이블(soft label)이고, 상기 제2 레이블은 0 또는 1로 표현되는 하드 레이블(hard label)인, 학습 방법.
- 제10항에 있어서, 상기 제1 로스 및 상기 제2 로스에 기초하여, 상기 신경망 모델을 학습하는 단계는 상기 제1 로스 및 상기 제2 로스 간의 반영 비율을 조절하여 상기 신경망 모델을 학습하는 단계 를 포함하는, 학습 방법.
- 하드웨어와 결합되어 제1항 내지 제15항 중 어느 한 항의 방법을 실행시키기 위하여 컴퓨터로 판독 가능한 저장 매체에 저장된 컴퓨터 프로그램.
- 제1 시점의 제1 영상 프레임 및 제2 시점의 제2 영상 프레임을 포함하는 입력 영상을 촬영하는 이미지 센서; 신경망 모델을 저장하는 메모리; 상기 입력 영상을 상기 신경망 모델에 인가함으로써, 파라미터들- 상기 파라미터들은 상기 입력 영상의 3차원 움직임을 포함하는 전역적 움직임 정보 및 상기 전역적 움직임 정보를 사용하는 적어도 하나의 태스크에 대응하는 부가 정보를 나타냄 -을 추론하고, 상기 파라미터들을 조합하여 기하 변환 매트릭스를 생성하는 프로세서; 및 상기 기하 변환 매트릭스를 출력하는 통신 인터페이스 를 포함하는, 영상 처리 장치.
- 제17항에 있어서, 상기 적어도 하나의 태스크에 대응하는 부가 정보는 장면 전환 여부의 검출, 인터 프레임 예측의 신뢰도 및 스킵 여부 결정 중 적어도 하나를 포함하는, 영상 처리 장치.
- 제17항에 있어서, 상기 파라미터들은 롤 각도 파라미터, 피치 각도 파라미터, 및 요 각도 파라미터; 및 평행이동 파라미터, 회전 파라미터, 스케일 파라미터, 및 전단 파라미터 중 적어도 하나를 포함하는, 영상 처리 장치.
- 제17항에 있어서, 상기 부가 정보는 상기 적어도 하나의 태스크 별로 대응되는 출력 채널의 엘리먼트 번호 또는 인덱스에 의해 식별되는, 영상 처리 장치.
Description
멀티 태스크 학습을 통한 영상 처리 방법 및 장치, 영상 처리를 위한 학습 방법{IMAGE PROCESSING METHOD AND APPARATUS THROUGH MULTI-TASK LEARNING, LEARNING METHOD FOR IMAGE PROCESSING} 아래의 개시는 멀티 태스크 학습을 통한 영상 처리 방법 및 장치, 영상 처리를 위한 학습 방법에 관한 것이다. 인공 신경망을 활용한 기술들이 급속하게 발전함에 따라 인공 신경망 기반의 비디오 압축(또는 인코딩) 및 복원(또는 디코딩) 기술이 빠르게 발전하고 있다. 뉴럴 코덱(Neural Codec)은 뉴럴 네트워크를 사용하여 입력 데이터의 특징을 학습하고, 인코딩을 통해 입력 데이터를 압축하여 전송하며, 전송된 압축 데이터를 디코딩하여 복원하는 방식으로 동작할 수 있다. 정보 통신 기술의 발달 및 모바일 기기의 보편적인 보급에 따라 영상의 촬영과 저장, 및 공유가 보다 다양하고 활발해지고 있다. 이로 인해 촬영한 영상을 처리하여 물리적 열화를 해소하는 영상 신호 처리(Image Signal Processing) 기술과 효율적인 저장과 전송을 위한 코덱(codec) 기술이 주로 사용되고 있다. 영상 신호 처리와 코덱 모두 비디오(video) 처리를 위하여 영상 시퀀스(image sequence)에서 프레임들 간의 상관 관계를 추정하여 영상의 품질을 향상시키거나, 상관 관계를 압축하여 낮은 용량으로 저장 및 전송할 수 있다. 도 1은 일 실시예에 따른 영상 처리 방법을 나타내 흐름도이다. 도 2는 일 실시예에 따른 영상 처리 방법을 설명하기 위한 도면이다. 도 3은 일 실시예에 따른 영상 처리를 위한 학습 방법을 나타낸 흐름도이다. 도 4 내지 도 6은 실시예들에 따른 멀티 태스크 학습을 통한 영상 처리를 위한 학습 방법을 설명하기 위한 도면이다. 도 7a은 일 실시예에 따른 전역적 움직임 정보를 추정하기 위한 학습 방법을 설명하기 위한 도면이다. 도 7b 및 도 8은 일 실시예에 따른 전역적 움직임 정보를 효율적으로 추정하기 위한 학습 방법을 설명하기 위한 도면이다. 도 9는 일 실시예에 따른 영상 처리 장치의 구성을 나타낸 도면이다. 도 10은 일 실시예에 따른 영상 처리 장치의 블록도이다. 실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다. 제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다. 어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 동작, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 동작, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다. 도 1은 일 실시예에 따른 영상 처리 방법을 나타내 흐름도이다. 이하 실시예에서 각 단계들은 순차적으로 수행될 수도 있으나, 반드시 순차적으로 수행되는 것은 아니다. 예를 들어, 각 단계들의 순서가 변경될 수도 있으며, 적어도 두 단계들이 병렬적으로 수행될 수도 있다. 도 1을 참조하면, 일 실시예에 따른 영상 처리 장치는 단계(110) 내지 단계(130)을 통해 파라미터들을 출력할 수 있다. 단계(110)에서, 영상 처리 장치는 제1 시점의 제1 영상 프레임 및 제2 시점의 제2 영상 프레임을 포함하는 입력 영상을 수신한다. 제1 영상 프레임은 ‘현재 영상 프레임(current image frame)’ 또는 ‘소스 영상 프레임(source image frame)’이라고 부를 수도 있다. 제2 영상 프레임은 ‘레퍼런스 영상 프레임(reference image frame)’ 또는 ‘타겟 영상 프레임(target image frame)’이라고 부를 수도 있다. 제1 시점과 제2 시점 중 제2 시점이 과거에 해당할 수 있다. 입력 영상은 이미지 센서 또는 카메라를 통해 캡쳐 또는 생성될 수 있다. 단계(120)에서, 영상 처리 장치는 단계(110)에서 수신한 입력 영상을 신경망 모델에 인가함으로써, 파라미터들을 추론한다. 파라미터들은 입력 영상의 3차원 움직임을 포함하는 전역적 움직임 정보(global motion information) 및 전역적 움직임 정보를 사용하는 적어도 하나의 태스크에 대응하는 부가 정보(auxiliary information)를 나타낸다. 입력 영상의 3차원 움직임은 입력 영상에 대응하는 호모그래피 변환 매트릭스 및 어파인 변환 매트릭스 중 어느 하나에 의해 표현될 수 있다. 3차원 움직임이 호모그래피 변환 매트릭스에 의해 표현되는 경우, 파라미터들은 예를 들어, 롤 각도 파라미터, 피치 각도 파라미터, 및 요 각도 파라미터를 포함할 수 있다. 또는, 3차원 움직임이 어파인 변환 매트릭스에 의해 표현되는 경우, 파라미터들은 평행이동 파라미터(translation parameter), 회전 파라미터(rotation parameter), 스케일 파라미터(scale parameter), 및/또는 전단 파라미터(shear parameter)를 포함할 수 있다. 영상의 전역적인 특징(예: 전역적 움직임 정보)을 반영해야 하는 태스크들은 예를 들어, 어파인(Affine) 또는 호모그래피(homography) 변환에 의한 전역적 움직임 추정, 어파인 AMVP(Advanced Motion Vector Prediction), 장면 전환 여부의 검출(scene change detection), 인터 프레임 예측의 신뢰도(inter-frame prediction confidence) 및 스킵 모드 결정(skip mode decision) 등을 포함할 수 있으나, 반드시 이에 한정되지는 않는다. 어파인 AMVP는 비디오 코딩에서 사용되는 고급 예측 기법에 해당할 수 있다. 어파인 AMVP는 주로 VVC(Versatile Video Coding) 표준에서 사용되며, 어파인 변환을 통해 움직임을 예측할 수 있다. 어파인 변환은 단순한 2D 이동 뿐만 아니라 회전, 스케일링, 전단(shearing) 등의 복잡한 움직임을 모델링할 수 있으며, 이를 통해 움직임을 더 정확하게 예측하고, 압축 효율을 높일 수 있다. 적어도 하나의 태스크에 대응하는 부가 정보는 장면 전환 여부의 검출, 인터 프레임 예측의 신뢰도 및 스킵 여부 결정 중 적어도 하나를 포함할 수 있다. 장면 전환 여부의 검출은 두 영상 프레임이 서로 다른 장면에서 촬영되었는지, 다시 말해, 장면 전환이 발생했는지 여부를 검출하는 것을 의미할 수 있다. 인터 프레임 예측의 신뢰도는 이전 프레임을 기반으로 현재 프레임을 얼마나 정확하게 예측할 수 있는지를 나타낸 지표에 해당할 수 있다. 인터 프레임 예측은 주로 움직임 보상과 블록 매칭과 같은 기술을 사용하여 수행될 수 있다. 예측 신뢰도가 높을수록 압축 효율이 높아지고, 비디오 품질이 유지될 수 있다. 반면, 예측 신뢰도가 낮으면 압축 효율이 떨어지고, 비디오 품질이 저하될 수 있다. 예를 들어, 두 영상 프레임들 간의 상관 관계가 충분치 않은 경우, 전역적 움직임 정보의 추정과 같은 인트라 프레임(inter-frame) 처리 여부를 사전에 결정하는 정보에 의해 인터 프레임 처리를 배제하고 인트라 프레임(intra-frame) 처리(예: 압축)만을 수행할 수 있다. 스킵 여부 결정(Skip decision)은 비디오 압축 효율을 높이기 위해 특정 영상 프레임을 인코딩하지 않고 건너뛰는 것을 의미할 수 있다. 스킵 여부 결정은 예를 들어, 이전 영상 프레임과 현재 영상 프레임 간의 차이가 거의 없는 경우에 현재 영상 프레임을 인코딩하지 않고 이전 영상 프레임을 그대로 사용하거나, 또는 인코딩 과정에서 복잡도를 줄여 인코딩 속도를 높이고, 파일 크기를 줄이기 위해 사용될 수 있다. 영상 처리 장치는 하나의 신경망 모델에 의해 모션 추정 정보와 부가 정보를 동시에 추론할 수 있다. 신경망 모델은 3차원 움직임을 포함하는 전역적 움직임 정보를 추정함과 동시에 장면 전환 여부와 같이 전역적 움직임 정보와 전혀 다른 부가적인 정보('부가 정보')를 출력함으로써 추가적인 칩 면적 및 전력 소모를 최소화하며 압축 및 영상 안정화 성능을 향상시킬 수 있다. 신경망 모델은 멀티 태스크 학습에 의해 트레이닝된 뉴럴 네트워크일 수 있다. 신경망 모델은 복수의 레이어들을 포함하는 딥 뉴럴 네트워크(deep neural network, DNN)를 포함할 수 있다. 복수의 레이어들은 입력 레이어(input layer), 적어도 하나의 히든 레이어(hidden layer), 및 출력 레이