Main Content

PSNR

영상 간 피크 신호 대 잡음비(PSNR) 계산

  • PSNR block

라이브러리:
Computer Vision Toolbox / Statistics

설명

PSNR 블록은 두 영상 간의 피크 신호 대 잡음비(단위: 데시벨)를 계산합니다. 이 비율은 원본 영상과 압축 영상 간의 품질 측정값으로 사용됩니다. PSNR이 높을수록 압축되거나 복원된 영상의 품질이 높아집니다.

평균 제곱 오차(MSE)와 피크 신호 대 잡음비(PSNR)는 영상 압축 품질을 비교하는 데 사용됩니다. MSE는 압축 영상과 원본 영상 간의 누적 제곱 오차를 나타내는 반면, PSNR은 피크 오차에 대한 측정값을 나타냅니다. MSE의 값이 낮을수록 오차가 작아집니다.

PSNR을 계산하기 위해 블록은 먼저 다음 방정식을 사용하여 평균제곱오차를 계산합니다.

MSE=M,N[I1(m,n)I2(m,n)]2M*N

위의 방정식에서 MN은 입력 영상에 포함된 행과 열의 개수입니다. 그런 다음 블록은 다음 방정식을 사용하여 PSNR을 계산합니다.

PSNR=10log10(R2MSE)

위의 방정식에서 R은 입력 이미지 데이터형의 최대 변동폭입니다. 예를 들어, 입력 영상이 배정밀도 부동소수점 데이터형이면 R은 1입니다. 만약 8비트의 부호 없는 정수 데이터형이면 R은 255가 됩니다.

컬러 영상의 PSNR 계산하기

컬러 영상의 PSNR을 계산하는 데에는 다양한 접근법을 사용할 수 있습니다. 사람의 눈은 광도 정보에 가장 민감하기 때문에 YCbCr처럼 영상을 명암(광도) 채널을 분리하는 컬러스페이스로 변환하면 컬러 영상의 PSNR을 계산할 수 있습니다. YCbCr에서 Y(광도)는 R, G, B의 가중 평균을 나타냅니다. G는 사람 눈이 가장 쉽게 지각하는 성분이기 때문에 G에 가장 큰 가중치가 적용됩니다. 광도 채널에 대해서만 PSNR을 계산합니다.

포트

입력

모두 확장

입력 영상으로, 스칼라, 벡터 또는 행렬로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

입력 영상으로, 스칼라, 벡터 또는 행렬로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

출력

모두 확장

영상 간 피크 신호 대 잡음비로, 스칼라로 반환됩니다.

종속 관계

입력값이 고정소수점 또는 정수 데이터형인 경우 블록 출력은 배정밀도 부동소수점입니다. 그 외의 경우에는 블록 입력과 출력의 데이터형이 같습니다.

데이터형: double

블록 특성

데이터형

double | fixed point | integer | single

다차원 신호

no

가변 크기 신호

yes

확장 기능

고정소수점 변환
Fixed-Point Designer™를 사용하여 고정소수점 시스템을 설계하고 시뮬레이션할 수 있습니다.

버전 내역

R2006a 이전에 개발됨

참고 항목