참고자료 : MultimediaSystemBook_20230424, 박규식교수님 수업자료
Video characteristics
비디오란? 정적 이미지( frame )의 연속동작 → 단위 : fps( frame per second ) / 영화 24fps, TV 25-30fps
비디오 관련 시각특정
- 잔상효과 ( persistence of vision ) : 이미지가 사라진후에도 계속 존재하고 있는 것으로 인식( 최대 30msec )
→ 정지이미지의 빠른 연속( 12frame 이상 )은 동영상처럼 느껴짐 - 깜빡임 효과( filcering ) : 영상이 매끄럽지 않고 프레임단위로 끊기는 느낌, 낮은 재생률( refresh rate 70Hz 이하 )
= 충분하지 않은 프레임
Video color model
- RGB color model : 18Mhz 주파수 대역이 필요 ( monochrome = 6Mhz )
⇒ 양이 큰 비디오 데이터 & 전파자원의 한계로 대역폭을 줄이고자함 - 인간 시각의 특성 : 밝기(brightness)에 매우 민감하지만 색상(color)에는 덜 민감
⇒ 밝기정보(luminance, brightness, intensity)와 색상정보(chrominance, color difference)를 분리, 차등적으로 대역폭할당하여 전체적 감소( YUV, YIQ, YCbCr )
(1) YUV Color model : PAL, SECAM방식 아날로그 비디오(TV)에서 주로 사용됨
- CCIR 601 표준의 디지털 비디오
- Y( luminance, brightness, intensity ) = 0.3R + 0.59G + 0.11B
시각은 G - R - B 순으로 민감하기에 각기다른 가중치를 부여하여 합산 - U, V ( chrominance, color difference ) : U = Blue값-Y, V = Red값-Y
- (장점1) Y는 5.5Mhz 할당받고 U,V는 1.3Mhz씩 할당 = 총합 8.1Mhz는 이론값 18Mhz보다 2배이상 적은값!
- (장점2) 컬러TV와 흑백TV(B/W)의 호환가능성(compatible) / 흑백YUV에서 U,V=0으로 Y값만 이용
(2) YIQ Color model : NTSC방식 아날로그 비디오(TV)에서 주로 사용됨
- Y( luminance, brightness, intensity )
- I, Q ( chrominance, color difference ) = U, V와 달리 지각민감도(perceptual sensitivity)를 반영
- (장점1) Y는 4.2Mhz 할당받고 I는 1.5Mhz, Q는 0.55Mhz 할당 = 총합 6.25Mhz는 YUV보다 더 많은 대역폭을 감소시킴
- (장점2) 컬러TV와 흑백TV(B/W)의 호환가능성(compatible) / 흑백YIQ에서 I,Q=0으로 Y값만 이용\
(3) YCbCr color model : 디지털 비디오의 표준, JPEG과 MPEG에서 활용
- chroma subsampling을 수행 : chrominance 정보를 작게 샘플링하여 전체 데이터를 줄임
- chrominance값(UV)을 스케일링 : 0 < Cb, Cr < 1
Analog Video
- Scanning : 시간당 모든 frame에서 비디오 강도 패턴(video intensity pattern)을 샘플링( top-left에서 시작하여 horizontally하게 프레임을 스캔 )
- Progressive scanning : 순차적으로 모든 scan line따라 처리 ( 1field/frame )
( single top-down scan = 1번의 field ) - Interlace scanning : 순차적으로 격줄 스캔 → 이후 다시 남은 처리 ( 2fields/frame ) → 2개의 frame으로 착시, filckering이 줄어드는 효과
( two successive scanning( odd lines → even lines ) = 2번의 field )
- Progressive scanning : 순차적으로 모든 scan line따라 처리 ( 1field/frame )
CPU성능이 좋다면(빠름) progressive 방식을 선택, interlace방식은 CPU성능이 좋지 않아도 품질향상
- Frame rate : 1초에 스캔처리되는(주사되는) 프레임의 갯수
- PAL, SECAM : 25fps
- NTSC : 30fps
- Refresh rate(재생률) : 초당 스캔처리되는(주사되는) Field 횟수(Hz)
- Field = 한번의 top-down scan ⇒ 늘어날수록 filkering이 줄어들고 부드럽게 보임( 고가 )
50Hz이상의 재생률이면 filkering이 거의 사라짐 - NTSC progressive 방식 = 30Hz ---> NTSC interlace 방식 = 60Hz ( 2배 )
- PAL, SECAM interlace 방식 = 50Hz
- Field = 한번의 top-down scan ⇒ 늘어날수록 filkering이 줄어들고 부드럽게 보임( 고가 )
Video format standard
- NTSC( National Television System Committee )
- 30fps( 초당 30개 frame 처리 ) & 프레임당 525개 scan line 사용
- 480 scan line은 시각데이터 처리(active area) + 나머지는 제어에 이용 & 가로는 720pixel만 이용( 총 858pixel )
- YIQ color model 사용
- top-down progressive scanning → filckering발생 → interlace sacnning
- 미국, 우리나라, 일본 등에서 이용
- PAL(Phase Alternating Line)
- 25fps( 초당 25개 frame 처리 ) & 프레임당 625개 scan line 사용
- 576 scan line은 시각데이터 처리(active area) + 나머지는 제어에 이용 & 가로는 720pixel만 이용( 총 864pixel )
- YUV color model 사용 / interlace scan 방식( 필드당 312.5 line씩 읽음 )
- 유럽국가 등에서 이용
- SECAM(sequential color and memory)
- 25fps( 초당 25개 frame 처리 ) & 프레임당 625개 scan line 사용
- 576 scan line은 시각데이터 처리(active area) + 나머지는 제어에 이용 & 가로는 720pixel만 이용( 총 864pixel )
- YUC color model 사용 / interlace scan 방식( 필드당 312.5 line씩 읽음 )
- USSR(소련), 중국, 프랑스 등에서 이용
Digital Video
아날로그 비디오의 디지털화 : sampling → quantization → 비트할당
(1) Sampling : scan line마다 픽셀단위로 샘플링
- RGB가 아닌 YUV, YIQ, YCbCr 모델을 이용 = 픽셀당 1개의 luminance정보 + 2개의 chrominance 정보를 샘플링
- Sampling rate( 초당처리되는 샘플수 ) = 세로(line) * 가로(pixel) * 프레임수
525line * 858pixel * 30 frame = 625line * 864pixel * 25frame = 13.5Mhz
- R( 데이터 전송량, Mbps ) = fs(sampling rate) * 비트수 = 8로나누면 Mbyte
(2) Chroma subsampling : 데이터 압축처리전 전처리에서 크기를 줄임
- YCbCr의 구성 = Y(luminance) + Cb(blue chrominance) + Cr(red chrominance)
⇒ Y정보는 픽셀마다 저장 & chrominance정보는 픽셀별 생략저장- 4:4:4 - subsampling수행X, 픽셀당 1개의 Y + 2개의 C(blue, red)
- 4:2:2 - 수평으로 픽셀당 Y를 4개 추출 + Cb, Cr은 2개씩 추출
- 4:1:1 - 수평으로 픽셀당 Y를 4개 추출 + Cb, Cr은 1개씩 추출
- 4:2:0 - 수평으로 픽셀당 Y를 4개 추출 + Cb를 2개추출 or Cr을 2개추출
- subsampling이 없을때 R = (72048030)8 + (360480*30)82 = 165Mbps
subsampling 4:2:2 수행했을때 R = (72048030)8 + (360480*30)42 = 124Mbps
subsampling 4:2:0 수행했을때 R = (72048030)8 + (36048030)4 + (36048030)*0 = 104Mbps
Digital video compression
2가지목적 : 저장용량을 줄임 + 네트워크 대역폭(BW)를 줄임
- MPEG : audio와 video에 모두 사용되는 데이터 압축기법
- Spatial compression( Intra-frame coding ) : frame 여러개 전송시 특정간격의 key frame(intra picture)지정 → key frame을 JPEG으로 압축
⇒ 간격이 넓어지면 = key frame이 커지면 압축률이 높아짐 - Temporal compression( Inter-frame coding ) : 이웃한 frame간 매우 작은 차이(delta, inter frame, p-picture)를 JPEG으로 압축
⇒ 프레임 자체를 압축할때보다 데이터 양이 적어짐
- Spatial compression( Intra-frame coding ) : frame 여러개 전송시 특정간격의 key frame(intra picture)지정 → key frame을 JPEG으로 압축
- H.264 = MPEG의 일부
- Motion JPEG(MJPEG) : 비디오 프레임을 JPEG으로 압축/ 압축률은 떨어지지만 세밀한 처리 가능
Digital video file format
- 확장자 : 파일의 형식(구조), 특정 압축 알고리즘X
MP4 파일의 확장자는 ".mp4"이지만, 이는 파일의 컨테이너 포맷을 나타내는 것이며, 파일 내의 데이터가 어떤 압축 알고리즘으로 인코딩되었는지는 직접적으로 나타내지 않습니다. 따라서 컨테이너 파일 포맷은 파일의 구조와 데이터를 조직화하는 방법을 설명하는 용어이며, 이는 파일의 확장자와는 다른 개념입니다.
- containter file format : 오디오, 비디오가 어떤형식으로 압축되어있는지 알려주는 메타데이터
⇒ avi, flv, mov, mp4, mpeg, wmv
'computer science' 카테고리의 다른 글
[MultimediaSystem] Digital Audio Compression (0) | 2024.06.24 |
---|---|
[MultimediaSystem] Image Compression & Image Processing (0) | 2024.06.23 |
[MultimediaSystem] Color depth / Color model / Color space (0) | 2024.06.23 |
[MultimediaSystem] Vector graphic & Bitmap image (0) | 2024.06.22 |
[ OSTEP ] File System Advacned (0) | 2024.06.21 |