압축 데이터 속도를 정의하기 위해 "Bpp" 및 "Mbps"의 개념을 이해하십시오!

30.09.20 09:55 AM By Julie

비디오 대역폭 활용하기: 정확한 타켓티을 위한 픽셀, 색상 구성 요소, 크로마 서브샘플링 및 Bit Depth 살펴보기

이 문서에서는 다음에 대해 자세히 알아볼 수 있습니다 : 

픽셀당 비트(bpp) 개념

디지털 이미지의 모든 컬러 픽셀은 빨강, 녹색 및 파랑의 세 가지 기본 색상 조합을 통해 생성됩니다. 각 기본 색상은 종종 "색상 채널" 또는 "색상 구성 요소" 라고 하며 비트 심도로 지정된 강도(intensity) 값 범위를 갖습니다. 각 원색에 대한 비트 심도는 "채널당 비트 수" 라고하며 일반적으로 8 ~ 16 비트 범위입니다. "픽셀 당 비트수" (bpp) 는 "색상 채널당 비트 수" 의 합계, 즉 픽셀의 색상 정보를 코딩하는데 필요한 총 비트 수를 나타냅니다. 색상 당 비트 심도가 8 비트인 압축되지 않은 RGB 이미지는 24bpp 또는 픽셀 당 24 비트를 갖습니다 (빨간색 8 비트, 녹색 8 비트, 파란색 8 비트).

RGB, 색상 신호의 기초

다른 모든 색상을 만들기 위해 기본 색상을 서로 다른 강도로 결합할 수 있습니다. RGB (Red, Green, Blue) 형식은 픽셀의 정보를 3개의 값으로 나눌 것을 제안합니다. 하나는 빨간색 강도를 코딩하는 것이고 다른 하나는 녹색을 위한 것이고 다른 하나는 파란색을 위한 것입니다. RGB 비디오 스트림의 각 이미지는 실제로 3개의 하위 이미지의 합이며, 화면의 각 픽셀은 3개의 하위 픽셀로 구성됩니다.따라서 패널은 빨간색, 녹색 및 파란색 이미지를 동시에 표시하고 사람의 눈은 이를 색상으로 가득 찬 이미지로 해석합니다. 따라서 각 하위 픽셀의 강도를 사용하여 RGB 색상의 큰 팔레트를 재현할 수 있습니다.

YCbCr, 휘도(luminance)와 색차(chrominance)를 분리하는 신호

컬러 TV의 출현으로 단일 신호의 과거 휘도(luminance-흑백) 신호에 색차(chrominance-색상) 정보를 추가해야했습니다.

YCbCr은 이미지를 3가지 구성 요소로 분할합니다.

• Y = 흑백 이미지 (휘도)

• U / Cb = 파란색 / 녹색 이미지 (Y - 파란색으로 얻은 색차)

• V / Cr = 노란색 / 빨간색 이미지 (Y - 빨간색으로 얻은 색차)


디지털 세계에서 RCT(가역) 또는 ICT(비가역) 색상 변환을 사용하여 RGB 이미지를 YCbCr 색상 형식으로 또는 그 반대로 변환 할 수 있습니다.

대역폭을 줄이기 위한 크로마 서브 샘플링

대부분의 비디오 신호는 휘도와 색차를 분리합니다. 인간의 눈은 색상(색차)보다 흑백(휘도)에 훨씬 더 민감하다는 것이 확인되었습니다. 대역폭을 절약하기 위해 어차피 대부분의 정보가 시청자가 볼 때 손실되므로 색상 정보를 줄이는 것은 어떻습니까?

최종 이미지의 각 픽셀은 실제로 Y, Cb 및 Cr의 세 가지 구성 요소로 재구성됩니다. Chroma 서브 샘플링은 실제 압축을 도입하지 않고 Cb 및 Cr 색상 구성 요소의 해상도를 줄이는 것으로 구성됩니다. 휘도 (Y)는 변경되지 않고 사람의 눈에 포착되는 주요 정보이므로  자연스러운 콘텐츠에서 결과가 상당히 인상적 일 수 있습니다. 적절한 다운 샘플링 형식을 사용하면 서브 샘플링된 이미지와 원본 이미지의 차이점을 확인하는 것이 불가능한 경우가 많습니다.


샘플링 구조는 8픽셀(4x2)의 매트릭스에서 3개의 숫자로 정의됩니다. 첫번째 숫자는 행당 휘도 샘플(Y)의 수, 두번째 숫자는 각  픽셀의 첫번째 행에 있는 색차 샘플(Cb/Cr)의 수, 세번째 숫자는 각 픽셀의 두번째 행에 있는 색차 샘플(Cb/Cr)의 수를 나타냅니다.

4:4:4 형식 은 압축, 서브샘플링 또는 품질 손실이 없는 raw 형식에 해당합니다. 최종 이미지의 각 픽셀은 Y 휘도 픽셀, Cb 색차 픽셀 및 Cr 색차 픽셀 (RGB의 경우 Red 픽셀, Green 픽셀 및 Blue 픽셀) 로 생성됩니다. 이 구성에서는 RGB 또는 YCbCr 신호 간에 차이가 없습니다. 이 구성은 ProAV, 컴퓨터 디스플레이뿐만 아니라 전문 영화 세계에서도 사용됩니다. 매우 높은 대역폭이 필요하므로 상당한 비용이 듭니다.

4:2:2 형식 을 사용하면 크로마의 수평 해상도가 절반으로 줄어듭니다. 즉, 두 픽셀의 최종 렌더링에 동일한 Cb 색상이 사용됩니다 (Cr 색상도 동일). 처리량이 33% 감소하고 육안으로 볼 수 없는 차이가 있는 이 형식은 텔레비전 세계에서 선호되는 형식입니다.

4:2:0 형식 은 TV 프로그램, 영화, 비디오 게임, 비디오 스트리밍 등 일반 대중에게 폭넓게 사용되는 서브 샘플링입니다. 이 경우 컬러 이미지(Cb 및 Cr)는 수평 및 수직 해상도를 두 개로 나눈 것으로 표시됩니다.

여기서 대역폭은 4:4:4에 비해 50% 감소합니다. 사람의 눈은 색보다 빛에 더 민감하기 때문에 4:2:0에서도 비교적 화질이 우수합니다.

크로마 서브샘플링은 예를 들어 4:4:4 형식에서 4:2:2 형식으로 전환하는 것을 의미하며, 이는 실제로 압축하지 않고 픽셀당 비트 수(bpp)를 줄이는 효과가 있습니다. 즉, 4:4:4 형식이 24 bpp (3색 x 8비트)를 의미하는 경우 4:2:2 형식에 해당하는 16 bpp (2색 x 8비트)만 필요합니다.

초당 Mbit (Mbps)는 어떻게 계산합니까? 이 이미지가 가지고 있는 픽셀 당 비트 (bpp) 수는 몇 개입니까? 내 비디오의 비트 전송률은 얼마입니까? 

Mbps = 해상도(픽셀) x 초당 프레임 수 x bpp 

비디오 스트림의 크기를 계산하는 방법을 더 잘 이해하기 위해 몇 가지 예를 살펴보겠습니다.

예 : 비압축 4K@24fps 444 8비트 


Resolution : 4K = 3840 x 2160 = 8 294 400 pixels
Resolution with blanking : 4K = 4400 x 2250 = 9 900 000 pixels

초당 프레임수(fps) : 24 

Format : 444 8bit = 24 bpp (3colors x 8bits = 8+8+8)

                                                

9,900,000 pixels x 24 fps x 24 bpp = 5 702 400 000 bps = 5 702 Mbps = 5,7Gbps

예 : 비압축 4K@60fps 444 8비트


Resolution : 4K = 3840 x 2160 = 8 294 400 pixels
Resolution with blanking : 4K = 4400 x 2250 = 9 900 000 pixels

초당 프레임수(fps) : 60 

Format : 444 8bit = 24 bpp (3colors x 8bits = 8+8+8)

                                                

9,900,000 pixels x 60 fps x 24 bpp= 14 256 000 000 bps= 14 256 Mbps =14,2Gbps

예 : 비압축 Full HD@24 fps 444 8 비트


Resolution : FHD = 1920 x 1080 = 2 073 600 pixels
Resolution with blanking : FHD = 2200 x 1125 = 2 475 000 pixels

초당 프레임수(fps) : 24

Format : 444 8bit = 24 bpp (3colors x 8bits = 8+8+8)

                                                

2,475,000 pixels x 24 fps x 24 bpp = 1 425 600 000 bps = 1 425 Mbps = 1,4Gbps

예 : 비압축 4K@60fps 422 8비트


Resolution : 4K = 3840 x 2160 = 8 294 400 pixels
Resolution with blanking : 4K = 4400 x 2 250 = 9 900, 000 pixels

초당 프레임수(fps) : 60 

포맷: 422 8비트 = 16bpp(4:2:2 서브 샘플링을 사용한 3가지 색상 = 8비트 + 4비트 + 4비트)

                                                

9,900,000 pixels x 60 fps x 16 bpp = 9 504 000 000 = 9 504 Mbps = 9,5Gbps

여기에서 4K60-4:4:4 형식에서 4K60-4:2:2 형식으로 전환하면 서브 샘플링으로 인해 Mbps가 감소(약 33%) 합니다. 압축 알고리즘이 적용된 것은 아닙니다.

압축 덕분에 "bpp"를 줄입니다!

공유 데이터, 특히 비디오의 수가 상당히 증가했습니다. 우리는 SD, HD에서 4K, 8K로 이동하고 있으며 계속 진화하고 있습니다. 더 높은 프레임 속도, 더 높은 해상도, 더 높은 정밀도 및 더 높은 동적 범위 (HDR)는 네트워크에서 전송되는 데이터 양의 상당한 증가를 야기합니다.

압축 기술은 기존 장치 및 인프라를 사용하여 제한된 대역폭에서 더 많은 픽셀과 더 높은 품질을 관리하는 데 도움이 됩니다. 

 

간단한 예 : 표준 CAT5E 이더넷 케이블은 1Gbps를 쉽게 전송할 수 있습니다.그러나 비 압축 비디오의 크기는 4K일 때, 종종 10 ~ 16Gbps에 도달합니다.HD 스트림 (720p)은 CAT5E에서 전송할 수 있지만, 4K 전송이 필요한 즉시 압축이 필요합니다! intoPIX 코덱은 대기 시간과 품질 손실없이 1Gbps 미만의 대역폭에서 4K를 쉽게 전송하는 가장 좋은 방법입니다 : bpp를 1.5로 줄이면 4K가 746 Mbps에서 1Gbps 미만이 됩니다.

intoPIX 비디오 압축 계산기 알아보기! 

비디오 압축 계산기는 필요한 압축률을 계산할 수 있도록 제작되었습니다. 모든 애플리케이션과 코덱에서 사용할 수 있습니다. 

비디오 형식 매개변수를 선택하고 비디오 스트림을 전송하는 데 필요한 압축률을 결정하십시오. intoPIX IP-코어 또는 Fast SDK 를 사용시 압축률을 구성할 때 도움이 될 수 있습니다.

 관련 콘텐츠

intoPIX JPEG XS 표준의 모든 이점 알아보기 - TicoXS
"비압축"이 의미가 없어진 의미는 무엇인가요? 압축하지 않으면 불필요한 추가 비용이 발생하기 때문입니다!
압축이 필수적인 이유를 여기에서 알아보세요!