3. Các phương pháp điều khiển tốc độ trong các chuẩn mã hóa trước H264
3.2 Điều khiển tốc độ Q2 trong MPEG4
Chiang và Zhang [15] đã phát triển một mô hình mô hình điều khiển tốc độ có dạng hàm bậc 2 (quadratic) của tham số lượng tử cho việc mã hóa video. Họ giả thiết
rằng đặc tính thống kê của nguồn thỏa mã phân bố laplacian: , trong đó
Sự suy hao (Distortion) được định nghĩa là trong đó x là một
giá trị mẫu và là trung bình của các x. Khi đó hàm R-D theo Berger [10] là
Dựa trên hàm D-R trên Chiang và Zhang đề xuất ra mô hình điều khiển tốc độ bậc 2 như sau:
Trong đó R là tổng số bit được sử dụng để mã hóa khung hiện tại, QP là tham số lượng
tử được sử dụng cho khung hiện tại. là các tham số mô hình được cập nhật bằng
phương pháp hồi quy tuyến tính từ các thông tin được mã hóa từ trước. Sau đó, mô hình này được áp dụng cho MPEG-4 bởi Lee et al dưới dạng:
Mai Gia Hà Page 71 Trong đó H là số bit được sử dụng cho mào đầu (sử dụng cho veto motion, thông tin báo hiệu cho bộ mã hóa) và S là độ phức tạp mã hóa, thường được thay thế bởi MAD
(mean absolute diffence, độ trung bình sai lệch tuyệt đối), nó biểu thị trung bình sai
lệch tuyệt đối giữa khung tham chiếu và khung hiện tại. Phương pháp điều khiển tốc độ G2 có 4 bước cơ bản sau:
Bước 1: Khởi tạo
Khung đầu tiên?
Bước 2: Tính toán cấp phát bit Bước 3: Tính toán mức lượng tử Mã hóa Bước 4: cập nhật các tham số mô hình
Bước 5: điều khiển sau mã hóa
Y
N
QP khởi tạo
Hình 4.2 : Mô hình mã hóa Q2 của MPEG4
Bước 1: Khởi tạo
Các tham số bộ mã hóa được khởi tạo là tham số QP, 2 tham số mô hình, kích cở buffer sẽ được khởi tạo để thực hiện mã hóa khung I và khung P đầu tiên
Bước 2: Cấp phát bít cho các khung
Mai Gia Hà Page 72 - Tính bit khởi tạo: số lượng bit trên 1 khung được thiết lập:
Trong đó biểu thị tổng số bít còn lại cho các khung chưa được mã hóa và số
lượng khung chưa được mã hóa tương ứng của GoP
- Điều khiển bộ đệm: Để ngăn chặn buffer bị dưới ngưỡng hoặc quá ngưỡng các bít được cấp hát ban đầu được điều chỉnh bởi hệ số tỉ lệ dựa vào mức bộ đệm W và kích cở bộ đệm buf_size
Mục đích của việc điều chỉnh này là để duy trì mức sử dụng bộ đệm sau khi mã hóa
mỗi khung.
Bước 3: tính toán mức lượng tử
Hai bước trên tính toán số lượng bit sẽ cấp phát cho khung hiện tại, khi số lượng bít cấp phát đó được tính xong thì tham số QP được tính thông qua phương trình:
Trong đó biểu thị tổng số bit được cấp phát cho khung hiện tại j bao gồm cả các
bit được sử dụng cho header và vector chuyển động. biểu thị MAD giữa khung tham chiếu và khung hiện tại (khung đang được mã hoá). QP được tính chỉ cho phép thay đổi 25% so với khung trước đó.
Bước 4: Cập nhật các tham số mô hình
Các tham số mô hình được cập nhật liên tục dựa trên kết quả mã hoá của khung hiện tại cũng như một số khung trước đó được chỉ ra.
Bước 5: điều khiển sau mã hoá
Sau khi mã hoá 1 khung, mức bộ đệm được cập nhật bằng cách bổ xung tổng số
Mai Gia Hà Page 73 buffer, nếu mức bộ đệm đạt tới 80% của kích cỡ bộ đệm thì bộ mã hoá sẽ loại bỏ các khung tiếp theo cho tới khi mức chiếm bộ đệm giảm xuống tới ngưỡng an toàn.
Nhận xét: Nói chung mô hình điều khiển tốc độ G2 đã tạo ra được một mô hình hoạt động tương đối hiệu quả. Khi độ phức tạp của khung được xác định chính xác thì hàm quadratic này có thể cho kết quả tương quan giữa R-Q là 0.999 (theo kết quả nghiên cứu của Siwei Ma, Wen Gao, Debin Zhao, Yan Lu trong tài liệu [17]. Vì vậy việc còn lại là phải tối ưu sao cho việc cấp phát bit trong các khung, các MB phù hợp và tối ưu được mối quan hệ R-D.