LUẬN VĂN TỐT NGHIỆP THẠC SĨ BỘ GIÁO DỤC VÀ ĐÀO TẠO CỘNG HÒA XÃ HÔI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI -------------------------------- ------------------ Độc lập - Tự do - Hạnh phúc ------------------------------ --- NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ và tên sinh viên: Trần Quang Chiến.……………. MSHV: CB120613 Khoá: 2012B……...Viện: Điện tử - Viễn thông … Ngành: Điện tử - Viễn thông 1. Đầu đề đồ án: ……………………………………………….. …………………………………………………………………………………………………………………………………………………………….. 2. Các số liệu và dữ liệu ban đầu: ……………………………………..……………………………………………..……..…………… ……………………………………………………………………………………………………………………………….…..……………………….. …………………………… 3. Nội dung các phần thuyết minh và tính toán: ………………………………………………………………………………………………………………..…. ……………………………………………………………………………………………………………………………………..….………………………… 4. Các bản vẽ, đồ thị ( ghi rõ các loại và kích thước bản vẽ ): …………………………………………………………………………………………………………………..……..…. …………………………………………………………………………………………………………………………..……….…………… 5. Họ tên giảng viên hướng dẫn: TS. NGÔ VŨ ĐỨC 6. Ngày giao nhiệm vụ đồ án: ………………………………………………….……… 7. Ngày hoàn thành đồ án: ……………………………………………………………. Ngày tháng năm Chủ nhiệm Bộ môn Giảng viên hướng dẫn Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 1
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
BỘ GIÁO DỤC VÀ ĐÀO TẠO CỘNG HÒA XÃ HÔI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
--------------------------------
------------------
Độc lập - Tự do - Hạnh phúc
------------------------------
---
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ và tên sinh viên: Trần Quang Chiến.……………. MSHV:
CB120613
Khoá: 2012B……...Viện: Điện tử - Viễn thông
…
Ngành: Điện tử - Viễn
thông1. Đầu đề đồ án:………………………………………………..……………………………………………………………………………………………………………………………………………………………..2. Các số liệu và dữ liệu ban đầu:……………………………………..……………………………………………..……..…………………………………………………………………………………………………………………………………………….…..………………………..……………………………3. Nội dung các phần thuyết minh và tính toán:………………………………………………………………………………………………………………..….……………………………………………………………………………………………………………………………………..….…………………………4. Các bản vẽ, đồ thị ( ghi rõ các loại và kích thước bản vẽ ):…………………………………………………………………………………………………………………..……..….…………………………………………………………………………………………………………………………..……….……………5. Họ tên giảng viên hướng dẫn: TS. NGÔ VŨ ĐỨC
6. Ngày giao nhiệm vụ đồ án: ………………………………………………….………7. Ngày hoàn thành đồ án: …………………………………………………………….
Ngày tháng năm
Chủ nhiệm Bộ môn Giảng viên hướng dẫn
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 1
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
Sinh viên đã hoàn thành và nộp đồ án tốt nghiệp ngày
tháng năm
Cán bộ phản biện
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 2
1. Nội dung thiết kế tốt nghiệp:............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
2. Nhận xét của cán bộ phản biện:......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 3
CÁC THUẬT NGỮ VIẾT TẮT.................................................10
Chương 1. Cơ sở về nén tín hiệu Video..................................121.1 Sự cần thiết của nén tín hiệu......................................................................................................12
1.2 Quá trính số hóa tín hiệu............................................................................................................131.2.1 Lấy mẫu......................................................131.2.2 Lượng tử hóa.................................................131.2.3 Mã hóa.......................................................15
1.3 Tốc độ bít và thông lượng kênh truyền tín hiệu số..................................................................151.3.1 Tốc độ bit...................................................151.3.2 Thông lượng kênh truyền tín hiệu số..........................15
1.4 Quá trình biến đổi tín hiệu màu................................................................................................16
1.5 Các tiêu chuẩn lấy mẫu video tín hiệu số.................................................................................17
1.6 Mô hình nén tín hiệu Video........................................................................................................181.6.1 Nén tín hiệu Video...........................................191.6.2 Lượng tin trung bình.........................................19
Chương 2. Các kĩ thuật nén Video.......................................222.1 Phân loại kĩ thuật nén................................................................................................................. 22
2.2 Quá trình biến đổi....................................................................................................................... 222.2.1 Điều xung mã vi sai DPCM....................................232.2.2 Mã hóa biến đổi..............................................23
2.3 Quá trình lượng tử...................................................................................................................... 252.3.1 Lượng tử vô hướng............................................252.3.2 Lượng tử vector..............................................26
2.4 Quá trình mã hóa........................................................................................................................ 272.4.1 Mã hóa độ dài thay đổi.......................................27
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 8
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
2.4.2 Mã hóa số học................................................292.5 Tiêu chuẩn đánh giá chất lượng ảnh nén.................................................................................31
Chương 3. Các chuẩn nén thuộc họ MPEC trước H.265/HEVC.................333.1 Giới thiệu về lịch sử phát triển của chuẩn MPEG.....................................................................33
3.2 Các tiêu chuẩn nén trước H.265/HEVC......................................................................................333.2.1 Tiêu chuẩn MPEC-1............................................333.2.2 Tiêu chuẩn MPEG-2............................................363.2.3 Tiêu chuẩn MPEC-4............................................383.2.4 Tiêu chuẩn H.264.............................................39
Chương 4. Chuẩn nén H.265/HEVC.........................................444.1 Tổng quan về chuẩn nén H.265/HEVC.......................................................................................444.1.1 Lịch sử phát triển của chuẩn nén H.265/HEVC..................444.1.2 Lịch trình triển khai và các sản phẩm liên quan..............444.1.3 Các profiles và levels của chuẩn HEVC........................50
4.2 Kĩ thuật nén video HEVC............................................................................................................. 524.2.1 Giải thích hoạt động cơ bản..................................524.2.2 Cấu trúc Mã hóa (Coding Structure)...........................55
Chương 5. Những điểm tối ưu của HEVC so với H.264/AVC..................605.1 Sự tối ưu trên lý thuyết............................................................................................................... 60
5.2 Sự khác biệt qua mô phỏng với hình ảnh cụ thể.....................................................................625.2.1 Trong H.264/AVC..............................................635.2.2 Trong HEVC...................................................655.2.3 So sánh HEVC và H.264/AVC....................................69
TÀI LIỆU THAM KHẢO.....................................................73
BẢNG ĐỐI CHIẾU THUẬT NGỮ VIỆT – ANH....................................75
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 9
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
DANH MỤC HÌNH VẼHình 1-1 Sơ đồ quá trình tạo tín hiệu số..............14Hình 1-2 Quá trình biến đổi tín hiệu màu..............16Hình 1-3 Các tiêu chuẩn lấy mẫu phổ biến..............18Hình 1-4 Sơ đồ khối nén tín hiệu video................18Hình 2-1 Mô hình hệ thống nén tổn hao.................23Hình 2-2 Bộ mã hóa và giải mã DPCM....................23Hình 2-3 Quá trình lượng tử vector....................26Hình 2-4 Cây mã Huffman...............................27Hình 2-5 Minh họa mã hóa RLC..........................28Hình 2-6 Minh họa sự sắp xếp trong khoảng [0-1] thành những vùng nhỏ hơn sau mỗi ký hiệu được mã hóa.......30Hình 3-1 Quá trình phát triển của kĩ thuật nén MPEG qua các giai đoạn.........................................33
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 10
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
DANH MỤC BẢNG BIỂU
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 11
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
CÁC THUẬT NGỮ VIẾT TẮT
STTTừ viết
tắtThuật ngữ tiếng Anh
Thuật ngữ tiếng
Việt1 IP Internet Protocol Giao thức Internet
2 TCPTransmission
Control Protocol
Giao thức điều
khiển truyền vận
3 JPEGJoint Photographic
Experts Group4 MJPEG Motion JPEG Ảnh JPEG động5 SOF Start Of Frame Bắt đầu khung6 EOF End Of Frame Kết thúc khung
7 MACMedium Access
Control
Điều khiển truy
nhập môi trường
8 ROM Read Only MemoryBộ nhớ chỉ có thể
đọc
9 RAMRamdom Access
Memory
Bộ nhớ truy cập
ngẫu nhiên
10 SDRAMSynchronous Dynamic
RAMRAM động đồng bộ
11 MMUMemory Management
UnitKhối quản lý bộ nhớ
12 IPCInter-Process
Communication
Giao tiếp tiến
trình nội13 USB Universal Serial Kênh truyền nối
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 12
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
Bus tiếp phổ biến
14 MCUMicrocontroller
UnitKhối vi điều khiển
15 ADCAnalog- Digital
Converter
Bộ chuyển đổ tương
tự- số
16 COMComponent Object
Model
Mô hình đối tượng
thành phần
17 EDKEmbedded
Development Kit
Kit phát triển
nhúng
18 IIC hay
I2C
Inter-Intergrated
Circuit Mạch liên tích hợp
19 PC Personal Computer Máy tính cá nhân20 RX Receive Data Nhận dữ liệu22 TX Transmit Data Truyền dữ liệu23 LAN Local Area Network Mạng cục bộ
24 TFTPTrivial File
Transfer Protocol
Giao thức truyền
tệp tin đơn giản
25 DHCP
Dynamic Host
Configuration
Protocol
Giao thức cấu hình
động máy chủ
26 SSH Secure Shell Lớp vỏ bảo mật
27 NFS Network File SystemHệ thống tệp tin
trên mạng
28 GNUGeneral Public
License
Giấy phép phần mềm
tự do phổ biến29 IC Integrated Circuit Mạch tích hợp
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 13
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
30 ASCII
American Standard
Code for
Information
Interchange
Bảng mã chuẩn
31 UART
Universal
Asynchronous
Receiver
Transmitter
Bộ truyền nhận
không đồng bộ phổ
biến
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 14
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
Chương 1. Cơ sở về nén tín hiệu
Video
1.1 Sự cần thiết của nén tín hiệu
Một tín hiệu video số thường chứa một lượng lớn dữ
liệu, do đó sẽ gặp rất nhiều khó khăn trong việc lưu trữ
và truyền đi trong một băng thông kênh truyền hạn chế.
Với sự phát triển của khoa học kỹ thuật, ngày nay đã sản
xuất được bộ cảm biến màu có độ phân giải lên đến 16
triệu pixel tương đương với một bức ảnh có độ phân giải
4096x4096 pixels, nhưng thực tế ứng dụng cần độ phân
giải cao nhất hiện nay cũng chỉ dùng lại ở 1920x1080
pixel, do đó để có thể tiết kiệm không gian lưu trữ và
băng thông kênh truyền thì cần nén tín hiệu.
Quá trình nén ảnh thực hiện được là do thông tin trong
bức ảnh có tổ chức, có trật tự, vì vậy nếu xem xét kỹ
tính trật tự, cấu trúc ảnh sẽ phát hiện và loại bỏ được
các lượng thông tin dư thừa, chỉ giữa lại các thông tin
quan trọng nhằm giảm số lượng bit khi lưu trữ cũng như
khi truyền mà vẫn đảm bảo tính thẩm mỹ của bức ảnh. Tại
đầu thu, bộ giải mã sẽ tổ chức, sắp xếp lại được bức ảnh
xấp xỉ gần chính xác so với ảnh gốc nhưng vẫn đảm bảo
thông tin cần thiết. Tín hiệu video thường chứa đựng một
lượng lớn các thông tin dư thừa, chúng thường được chia
thành 5 loại như sau:
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 15
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
Có sự dư thừa thông tin về không gian: giữa các
điểm ảnh lân cận trong phạm vi một bức ảnh hay một
khung video, còn gọi là thừa tĩnh bên trong từng
frame.
Có sự dư thừa thông tin về thời gian: giữa các điểm
ảnh của các khung video trong chuỗi ảnh video, còn
gọi là thừa động giữa các frame
Có sự dư thừa thông tin về phổ: giữa các mẫu của
các dữ liệu thu được từ các bộ cảm biến trong
camera, máy quay…
Có sự dư thừa do thống kê: do bản thân của các ký
hiệu xuất hiện trong dòng bit với các xác suất xuất
hiện không đồng đều.
Có sự dư thừa tâm thị giác: thông tin không phù hợp
với hệ thống thị giác con người, những tần số quá
cao so với cảm nhận của mắt người.
Ưu điểm của việc nén tín hiệu:
Tiết kiệm băng thông kênh truyền ( trong thời gian
thực hoặc nhanh hơn).
Kéo dài thời giản sử dụng của thiết bị lưu trữ,
giảm chi phí đầu tư cho thiết bị lưu trữ.
Giảm dung lượng thông tin mà không làm mất tính
trung thực của hình ảnh.
Có nhiều phương pháp nén tín hiệu, phương pháp nén bằng
cách số hóa tín hiệu vẫn tỏ ra hữu hiệu trong mọi thời
đại, một mặt nó có thể làm giảm lượng thông tin không
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 16
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
quan trọng một cách đáng kể, mặt khác nó còn giúp cho
tín hiệu được bảo mật hơn.
1.2 Quá trính số hóa tín hiệu
Quá trình số hoá tín hiệu tương tự, bao gồm quá
trình lọc trước (prefiltering), lấy mẫu, lượng tử và mã
hoá minh họa như hình I.1. Quá trình lọc trước nhằm loại
bỏ các tần số không cần thiết ở tín hiệu cũng như nhiễu,
bộ lọc này còn gọi là bộ lọc chống nhiễu xuyên kênh
Aliasing.
1.2.1 Lấy mẫu
Thực chất đây là một phép toán rời rạc hay là một
phép điều biên xung PAM và được thực hiện bằng các mạch
Op-amp có cực khiển strobe. Nó tạo ra giá trị tín hiệu
tương tự tại một số hữu hạn các giá trị có biến rời rạc
gọi là các mẫu. Các mẫu được lấy cách đều nhau gọi là
chu kỳ lấy mẫu. Tần số lấy mẫu phải thoả mãn định lý
Nyquist-Shannon :fs≥2fmaz
Trong đó:+ fs là tần số lấy mẫu.
+ fmax là tần số cực đại của phổ tín hiệu tương
tự.
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 17
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
1.2.2 Lượng tử hóaQuá trình lượng tử là quá trình chuyển một xung lấy
mẫu thành một xung có biên độ bằng mức lượng tử gần nhất
hay nói cách khác là lượng tử chuyển đổi các mức biên độ
của tín hiệu đã lấy mẫu sang một trong các giá trị hữu
hạn các mức nhị phân. Lượng tử hoá biến đổi tín hiệu
liên tục theo thời gian thành tín hiệu có biên độ rời
rạc, nhằm làm giảm ảnh hưởng của tạp âm trong hệ thống,
hạn chế các mức cho phép của tín hiệu lấy mẫu và chuẩn
bị truyền tín hiệu gốc từ tương tự sang số. Giá trị thập
phân của các mẫu sau khi lượng tử hoá sẽ được biểu diễn
dưới dạng số nhị phân n bit (N= 2n), với n là độ phân
giải lượng tử hoá, n càng lớn thì độ chia càng mịn, do
đó độ chính xác càng cao.
Do làm tròn các mức nên tín hiệu bị méo dạng do sai số
lượng tử gọi là méo lượng tử, tỷ số tín hiệu trên méo
lượng tử (S/N) được xác định bởi:SN
=6,02n+1,76(dB)
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 18
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
Hình 1-1 Sơ đồ quá trình tạo tín hiệu số
Lượng tử hóa có hai loại:
Lượng tử tuyến tính: phép nén tín hiệu theo quy
luật đường cong đồng đều, bước lượng tử bằng nhau.
Lượng tử phi tuyến: phép nén tín hiệu theo quy luật
đường cong không đồng đều, tập trung nhiều mức
lượng tử ở những vùng tín hiệu nhỏ. Trong kỹ thuật
nén ảnh, nén video thì loại lượng tử phi tuyến được
dùng nhiều hơn vì nó giảm dung lượng đến mức tối đa
với độ méo lượng tử có thể chấp nhận được.
1.2.3 Mã hóaLà quá trình thay thế mỗi mức điện áp cố định sau
khi lượng tử bằng một dãy nhị phân gọi là từ mã. Tất cả
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 19
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
các từ mã đều chứa số xung nhị phân cố định và được
truyền trong khoảng thời gian giữa 2 thời điểm lấy mẫu
cạnh nhau. Bộ mã được sử dụng để tái tạo các xung nhị
phân hoặc các từ mã từ các giá trị đã lượng tử xuất hiện
ở đầu ra của bộ lượng tử hoá.
1.3 Tốc độ bít và thông lượng kênh truyền tín hiệu số
1.3.1 Tốc độ bitTốc độ bit là số lượng bit được truyền đi hay lưu
trữ trong một đơn vị thời gian.C=fs∗n (bit/s)
Trong đó :
+ fs là tần số lấy mẫu (Hz).
+ n là số bit nhị phân trong một ký hiệu.
+ C là tốc độ bit (bps).
1.3.2 Thông lượng kênh truyền tín hiệu sốLà tốc độ số liệu cực đại có thể truyền được trên
kênh truyền có độ rộng băng tần B.
C=B.log2(1+SN) (bps)
Trong đó
+ C là tốc độ bit (bps)
+ SN là tỷ số tín hiệu trên nhiễu trắng.
+ B là băng thông kênh truyền (Hz).
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 20
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
Tốc độ bit càng lớn thì tín hiệu tương tự khôi phục
lại càng trung thực tuy nhiên nó sẽ là cho dung lượng
lưu trữ và băng thông kênh truyền càng lớn. Trong thực
tế để truyền tín hiệu có tốc độ bit là C (bps) thì cần
băng thông kênh truyền là: B≥
34C (Hz)
Ví dụ: với n = 4, fs = 44,1Khz thì:
Tốc độ truyền thông tin là : C = n x fs = 4 x 44,1 = 176,3.103 bits/s
Và độ rộng băng tần là B≥
34C=
34x 176,4.103=132,3 Khz
1.4 Quá trình biến đổi tín hiệu màu
Hình 1-2 Quá trình biến đổi tín hiệu màu
Một bức ảnh được chuyển từ RGB sang YUV nhằm giảm dung
lượng lưu trữ cũng như truyền đi, trong quá trình giải
mã, trước khi hiển thị ảnh thì nó được biến đổi ngược
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 21
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
lại thành RGB. Công thức minh họa quá trình biến đổi như
sau:Y=krR+(1−kb−kr)G+kbB
Cb=0.51−kb
(B−Y)
Cr=0.51−kr
(R−Y)(1)
Với kb+kr+kg=1 , kb = 0.114, kr = 0.299, khi thế vào công
thức (1) thì ta được: Y=0.299R+0.587G+0.114BCb=
0.51−0.114
(B−Y )=−0.169R−0.331G+0.5B
Cr=0.51−0.299
(R−Y)=0.5R−0.419G−0.081B
Nên ta có ma trận biến đổi từ RGB sang YUV như sau:
[Y ¿ ] [Cb¿ ]¿¿
¿¿
Thực hiện tương tự ta suy ra được ma trận biến đổi từ
YUV sang RGB như sau:
[R ¿ ] [G ¿ ] ¿¿
¿¿
1.5 Các tiêu chuẩn lấy mẫu video tín hiệu số
Kiểu lấy mẫu cho ảnh video cũng là một vấn đề khá
quan trọng của kỹ thuật nén ảnh. Một số kiểu lấy mẫu phổ
biến minh họa như hình I.3 và có đặc điểm như sau:
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 22
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
Tốc độ lấy mẫu 4:1:1 - tần số lấy mẫu tín hiệu
chói là 13,5MHz, và mỗi tín hiệu hiệu màu là
3,375MHz.
Tốc độ lấy mẫu 4:2:2 - tần số lấy mẫu tín hiệu
chói là 13,5MHz, và mỗi tín hiệu hiệu màu là
6,75MHz.
Tốc độ lấy mẫu 4:4:4 - cả 3 thành phần có cùng
độ phân giải, nghĩa là tần số lấy mẫu tín hiệu
chói là 13,5MHz, và mỗi tín hiệu hiệu màu là
13,5MHz.
Tốc độ lấy mẫu 4:2:0 - là kiểu phổ biến, tần số
lấy mẫu tín hiệu chói là 13,5MHz, và mỗi tín hiệu
hiệu màu là 6,75MHz theo cả 2 chiều
Ví dụ : Một bức ảnh có độ phân giải 720 × 576 pixelsĐộ phân giải của thành phần Y là 720 × 576 pixels được
mã hóa bằng từ mã 8 bits.
Nếu sử dụng kiểu lấy mẫu 4:4:4 thì độ phân giải của
thành phần Cb, Cr là 720 × 576 mẫu cũng được mã hóa
bằng từ mã 8 bits.
=> Vậy tổng số bits sử dụng để mã hóa bức ảnh là 720 ×
576 × 8 × 3 = 9 953 280 bits
Nếu sử dụng kiểu lấy mẫu 4:2:0 thì độ phân giải của
thành phần Cb, Cr là 360 × 288 mẫu, cũng được mã hóa
bằng từ mã 8 bits.
=> Vậy tổng số bits sử dụng là (720 × 576 × 8) + (360 ×
288 × 8) × 2 = 4 976 640 bits
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 23
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
Hình 1-3 Các tiêu chuẩn lấy mẫu phổ biến
Trong kiểu 4:4:4, tổng số mẫu cần thiết là 12 mẫu, do đó
tổng số bit là 12 × 8 = 96 bits, và trung bình là 96/4 =
24 bits/pixel
Trong kiểu 4:2:0, tín hiệu được quét xen kẽ, do đó chỉ
cần thiết 6 mẫu, 4 mẫu cho thành phần Y, 1 mẫu cho thành
phần Cb, 1 mẫu cho thành phần Cr, do đó tổng số bits cần
thiết là 6 × 8 = 48 bits, và trung bình là 48/4 = 12
bits/pixel.
Ta thấy kiểu lấy mẫu 4:2:0 giảm một ½ số lượng bits so
với 4:4:4, đó cũng chính là lý do mà kiểu lấy mẫu này
được sử dụng phổ biến.
1.6 Mô hình nén tín hiệu Video
Hình 1-4 Sơ đồ khối nén tín hiệu video
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 24
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
Các khối chính là:
- Khối nén dư thừa thời gian.
Dự đoán chuyển động
Bù chuyển động
- Khối nén dư thừa theo không gian.
Biến đổi DCT, DWT
Lượng tử hóa
Xắp xếp lại trật tự và mã hóa Entropy
1.6.1 Nén tín hiệu VideoTín hiệu video có dải phổ nằm trong khoảng 0 -> 6Mhz, do
thành phần tần số cao chỉ xuất hiện ở các đường viền của
hình ảnh nên năng lượng phổ rất ít tập trung ở miền tần
số cao mà chủ yếu tập trung ở miền tần số thấp. Điều đó
có nghĩa là số lượng bit ở miền tần số thấp sẽ nhiều hơn
ở miền tần số cao.
Trong các hệ thống nén, tỉ số nén chính là tham số quan
trọng đánh giá khả năng nén của hệ thống, ta gọi n1, n2
là số lượng bit của tín hiệu trước và sau khi nén nên ta
có công thức như sau:
Tỷ số nén sẽ là C=
n1n2
Phần trăm nén hay còn gọi là độ dư thừa dữ liệu tương
đối.
R=(1−n2n1) x 100%=
n1−n2n1
x 100%
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 25
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
Nếu n1= n2 thì ta có C =1, và R = 0 nghĩa là không có sự
dư thừa dữ liệu.
Nếu n2<<n1 thì C →∞ , R →1 , ta nói rằng có sự dư thừa dữ
liệu lớn.
Ví dụ : n1 = 100Mb/s, n2 = 20Mb/s thì C = 5:1, R = 80%.
Tức là ảnh có sự dư thừa lớn, hiệu quả nén đạt 80%.
1.6.2 Lượng tin trung bìnhTrước khi nghiên cứu các phương pháp nén, ta cần
đánh giá lượng thông tin chủ yếu được chứa đựng trong
hình ảnh, từ đó xác định dung lượng tối thiểu cần sử
dụng để miêu tả, truyền tải thông tin về hình ảnh.
Thông tin được ký hiệu là ai và có xác suất p(ai) thì
lượng tin được xác định theo công thức sau:
I(ai)= log2 [1
p(ai)]=−log2p(ai)
Theo công thức trên ta thấy lượng tin chứa đựng
trong một hình ảnh sẽ tỉ lệ nghịch với khả năng xuất
hiện của ảnh đó, nghĩa là sự kiện ít xảy ra sẽ chứa đựng
nhiều thông tin hơn và bằng tổng số lượng thông tin của
từng phần tử ảnh.
Gọi lượng tin trung bình của hình ảnh là H(X) và được
tính bằng công thức sau:
H(X)=∑1
Np(ai) ∗ log2 [
1p(ai )
] = −∑1
Np(ai ) ∗log2p(ai )
Xác suất phân bố càng nhiều thì lượng tin trung
bình entropy càng nhỏ. Entropy đạt giá trị cực đại đối
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 26
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
với phân bố đều, do đó nếu một ký hiệu có xác suất lớn
sẽ có số Entropy nhỏ.
Ví dụ: Giả sử có một ảnh đen trắng với độ phân giải
lượng tử 8 bit. Ký hiệu i là mức xám của pixel và bộ ký
hiệu A là tập hợp tất cả các mức xám từ 0->255, mức xám
0 tương ứng với màu đen, mức xám 255 tương ứng với màu
trắng. Do đó, Entropy của ảnh là H(X)=∑
0
255p(i)log2p(i)
Giả sử ta có kích thước 4x8 pixels như sau:
21 21 21 95 169 243 243 243
21 21 21 95 169 243 243 243
21 21 21 95 169 243 243 243
21 21 21 95 169 243 243 243
Ta sẽ xét các độ dư thừa của các pixel trong ảnh, hoặc
giữa các ảnh liên tiếp như sau.
Giả sử các mức xám của tín hiệu hình đen trắng độc
lập thống kê với nhau, dựa vào số liệu thống kê cụ
thể là.
Mức xám Số lượng pixel Xác suất.
21 12 3/8
95 4 1/8
169 4 1/8
243 12 3/8
Entropy của phần ảnh tĩnh này là:
H(x) =−38log2
38
−18log2
18
−18log2
18
−38log2
38
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 27
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
=−68log2
38−28log2
18
=−0,75 x 1,58+3=1,815 bits/pixel
Tuy nhiên, trong thực tế các mức xám của các pixel
không độc lập thống kê với nhau, nên ta có thể biểu
diễn theo từng cặp pixel liên tiếp như sau:
Giá trị cặp mức xám Số lượng cặp Xác
suất
(21, 21) 8 1/4
(21, 95) 4 1/8
(95, 169) 4 1/8
(169, 243) 4 1/8
(243, 243) 8 1/4
(243, 21) 4 1/8
H(x) =−14log2
14
−18log2
18
−18log2
18
−18log2
18
−14log2
14
−18log2
18
=−24log2
14−48log2
18
=2.5bits/caëp pixels
Ngoài ra còn có thể biểu diễn theo phần chênh lệch
mức xám của 2 pixel liên tiếp như sau.
21 0 0 74 74 74 0 0
21 0 0 74 74 74 0 0
21 0 0 74 74 74 0 0
21 0 0 74 74 74 0 0
Giá trị mức xám Số lượng Xác suất.
21 4 1/8
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 28
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
0 16 1/2
74 12 3/8
H(x) =−18log2
18
−12log2
12
−38log2
38
=−0,75 x 1,58+3=1,41 bits /pixel
Như vậy, số lượng tin trung bình tối thiểu cần
thiết để truyền một phần tử ảnh sẽ khác nhau, nghĩa là
độ dư thừa trong ảnh và giữa các bức ảnh sẽ phụ thuộc
vào cách mã hóa Entropy. Do đó cần phải xem xét kỹ để
chọn ra loại mã hóa hiệu quả nhất.
Chương 2. Các kĩ thuật nén Video2.1 Phân loại kĩ thuật nén
Nén video được chia thành hai họ lớn: Nén không tổn
hao và nén tổn hao.
Nén không tổn hao là quy trình biểu diễn các ký
hiệu trong dòng bit nguồn thành dòng các từ mã sao
cho ảnh được khôi phục hoàn toàn giống ảnh gốc, các
thuật toán chỉ phụ thuộc vào cách thống kê nội dung
dữ liệu và thường dựa trên việc thay thế một nhóm
các ký tự trùng lặp bởi một nhóm các ký tự đặc biệt
khác ngắn hơn mà không quan tâm đến ý nghĩa của
dòng bit dữ liệu, nên đòi hỏi phải có thiết bị lưu
trữ và đường truyền lớn hơn.
Nén có tổn hao, tức là ảnh được khôi phục không
hoàn toàn giống ảnh gốc, dạng nén này thích hợp cho
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 29
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
việc lưu trữ và truyền ảnh tĩnh, ảnh video qua một
mạng có băng thông hạn chế. Các dạng nén này thường
có hệ số nén cao hơn (từ 2:1 đến 100:1) và gây nên
tổn hao dữ liệu và sự suy giảm ảnh sau khi giải nén
do việc xóa và làm tròn dữ liệu trong một khung hay
giữa các khung. Nó liên quan đến việc dùng các phép
biến đổi tín hiệu từ miền này sang miền khác.
Trong thực tế phương pháp nén tổn hao thường được sử
dụng nhiều hơn và các kỹ thuật nén tổn hao thường sử
dụng như: mã hóa vi sai, biến đổi cosin rời rạc DCT,
lượng tử vô hướng, quét zig-zag, mã hóa Entropy…
2.2 Quá trình biến đổi
Hình 2-5 Mô hình hệ thống nén tổn hao
Tín hiệu ngõ vào được biến đổi nhằm mục đích biểu diễn
một số liệu khác thích hợp để nén hơn so với tín hiệu
nguồn. Ở phía giải mã tín hiệu nén sẽ được biến đổi
ngược lại để thu tín hiệu gốc. Một số phép biến đổi được
áp dụng phổ biến hiện nay như:
2.2.1 Điều xung mã vi sai DPCMCác phương pháp nén dùng DPCM dựa trên nguyên tắc
phát hiện sự giống nhau và khác nhau giữa các điểm ảnh
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 30
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
gần nhau để loại bỏ các thông tin dư thừa. Trong DPCM
chỉ có phần khác nhau giữa mẫu - mẫu được truyền đi, sự
khác nhau này được cộng vào giá trị mẫu đã giải mã hiện
hành ở phía giải mã để tạo ra giá trị mẫu phục hồi. Hình
II.2. mô tả sơ đồ khối của bộ mã hóa và giải mã DPCM.
Hình 2-6 Bộ mã hóa và giải mã DPCM
Ví dụMẫu tín hiệu vào 115 117
116 117 118 117 115 116
Sự khác nhau
2 -1 1 1 -1 -2 1
Dòng bit được nén như sau: 115 2
-1 1 1 -1 -2 1
2.2.2 Mã hóa biến đổi
Nhằm biến đổi các hệ số trong miền thời gian (video số),
không gian 2D (bức ảnh tĩnh) thành các hệ số trong miền
tần số. Các hệ số này ít tương quan hơn có phổ năng
lượng tập trung hơn, thuận tiện cho việc loại bỏ thông
tin dư thừa.
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 31
Nếu i = 0
Nếu i > 0
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
2.2.2.1 Biến đổi cosin rời rạc DCTVì ảnh gốc có kích thước rất lớn cho nên trước khi
đưa vào biến đổi DCT, ảnh được phân chia thành các MB
biểu diễn các mức xám của điểm ảnh. Việc phân khối này
sẽ làm giảm được một phần thời gian tính toán các hệ số
chung, mặt khác biến đổi cosin đối với các khối nhỏ sẽ
làm tăng độ chính xác khi tính toán với dấu phẩy tĩnh,
giảm thiểu sai số do làm tròn sinh ra. Phép biến đổi DCT
cơ bản hoạt động dựa trên cơ sở ma trận vuông của mẫu
sai số dự đoán, kết quả cho ta một ma trận Y là những hệ
số DCT được minh họa như sau:
Y = AXAT
Trong đó A là ma trận hệ số biến đổi, các thành phần của
A như sau:
Ai, j=Cicos(2j+1)iπ
2N Với
{Ci=√1N ¿ ¿¿¿
¿
¿
Tương đương với Yx, y=CxCy∑
i=0
N−1
∑J=0
N−1Xi, jCos
(2j+1)yπ2N Cos (2i+1)xπ
2N
Phép biến đổi DCT nguyên 4x4 của chuỗi ngõ vào X được
cho bởi công thức
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 32
22 NNS Tìm ở khối gần nhất(Nearest Neighbors Search)
23 PCM Điều xung mã (Pulse CodeModulation)
24 PF25 MF Hệ số nhân(Multipy Factor)
26PSNR Tỷ số tín hiệu đỉnh trên
nhiễu (Peak Signal to NoiseRatio)
27QCIF Định dạng hình ảnh có
kích thước 176 x 144(Quarter Common IntermediateFormat)
28 QP Thông số lượng tử(Quantization Parameter)
29 RBSP (Raw Byte Sequence Payload)
30RGB Ba màu cơ bản màu
đỏ/Xanh/Lam(Red/Green/Blue)
31 RLC Mã hoá dọc chiều dài(Run Length Coding)
32RSVP Giao thức dành riêng tài
nguyên mạng (ResourceReservation Protocol)
33RTP Giao thức truyền tải
thời gian thực (Real TimeTransport Protocol)
34 SDTV Truyền hình tiêu chuẩn
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 106
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
( Standard Televison)
35SMIL Ngôn ngữ tích hợp
Multimedia đồng bộ(Synchronized MultimediaIntegration Language)
36SRC Điều khiển tốc độ bit
biến đổi được ( ScalableRate Control)
37 TSS Thuật toán tìm ba bước(Three-Step search)
38 UMTS (Universal MobileTelecommications System)
39 VCL Lớp mã hóa Video (VideoCoding Layer)
40 VLC Mã có chiều dài thay đổi(Variable Length Code)
41 VO Đối tượng Video (VideoObject)
42 VOP Đối tượng mặt phẳngVideo (Video Object Plane)
43YCbCr Độ chói, màu lam, màu đỏ
(Luminance, Blue chrominance,Red chrominance)
44ISO Tổ chức quốc tế về tiêu
chuẩn chất lượng(International Organization forStandardization)
45IEC Ủy ban kỹ thuật điện
quốc tế (InternationalElectro-technical Commission)
46 JTC1 Ủy ban kỹ thuật 1 (JointTechnical Committee 1)
47 SC29 Ủy ban phụ 29 (Sub-committee 29)
48 WG11 Nhóm làm việc 11( WorkGroup 11)
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 107
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
PHỤ LỤCCode lập trình mô phỏng bằng Matlab
HEVC vs H.264/AVCfunction main()
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 108
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
clear all; clc; fprintf('\nLUAN VAN TOT NGHIEP\n')fprintf('\nNGHIEN CUU HOAT DONG VA UNG DUNG CUA CHUAN H.265\n')fprintf('\nGVHD : TS. NGO VU DUC\n')fprintf('\nHVTH : TRAN QUANG CHIEN\n')fprintf('\nMSSV : CB120613\n')chonf = input('\nNHAP SO LUONG FRAMES SE MA HOA = ');chonq = input('\nNHAP GIA TRI BUOC LUONG TU TRONG KHOANG 0<=QP<52,QP= ');nq = chonq;nf = chonf; if (nq < 0 | nq > 51 | nf > 300) error('NHAP SAI GIA TRI LUONG TU HOAC SO FRAMES!!!!')endsave nq;fprintf('\nSE MA HOA %d FRAMES VOI BUOC LUONG TU QP=%d\n',nf,nq);mov = napmov(nf);tic; avc = mahoa(mov); fprintf('THOI GIAN MA HOA : %s\n',sec2timestr(toc));tic; mov2 = giaima(avc); fprintf('THOI GIAN GIAI MA : %s\n',sec2timestr(toc));save lastmov mov2 avc mov;
%%%% HAM MO FILE YUV ROI LUU THANH MATLAB MOVIE %%%%function movdata = napmov(nf) mov = yuv2mov('carphone.yuv',176,144,'420');%mov = yuv2mov('foreman.yuv',352,288,'420');save mov;load mov; if nf == 0 nf = length(mov);end% MOV(1) : MA TRAN CHOI, MOV (2), MOV(3) MA TRAN MAUmovdata = repmat(uint8(0),size(mov(1).cdata), nf);%tai tao laiMANG MOV RONGfor i = 1:nf % MA HOA TU FRAME 1 DEN FRAMETHU nf movdata(:,:,:,i) = mov(i).cdata;% LUU DU LIEU CUA CAC FRAME end%%%%%% HAM MA HOA FILE MATLAB MOVIE %%%%%%%function avc = mahoa(mov)
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 109
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
fpat = 'IBBPBBPBBPBBPBBI'; % LOAI MAU FRAME (CHO TOAN BOMOVIE)k = 0; % FRAME DAU TIENpf = []; % MA TRAN MAU FRAME LA RONGprogressbar for i = 1:size(mov,4) % VONG LAP FRAME, TRA VE GIATRI COT % THU 4 TRONG MOV f = double(mov(:,:,:,i)); % BIEN DOI FRAME SANG GIA TRIDOUBLE f = rgb2yuv(f); k = k + 1; if k > length(fpat) k = 1; end ftype = fpat(k); % DAT TEN LOAI FRAME THU k [avc{i},pf] = mhframe(f,ftype,pf);% GOI HAM MA HOA CHO FRAMETHU i progressbar(i/(size(mov,4))) % HIEN THI % QUA TRINH MA HOA, end
%%%%% HAM MA HOA TUNG FRAME ANH %%%%%%function [avc,df] = mhframe(f,ftype,pf)[M,N,i] = size(f); % M = 176, N= 144,i = 3 TRONGfmbsize = [M, N] / 16; % PHAN CHIA THANH CACMACROBLOCKavc = struct('type',[],'mvx',[],'mvy',[],'scale',[],'coef',[]); avc(mbsize(1),mbsize(2)).type = [];pfy = pf(:,:,1);df = zeros(size(f));for m = 1:mbsize(1) % VONG LAP THEO CHIEU CAO for n = 1:mbsize(2) % VONG LAP THEO CHIEU RONG x = 16*(m-1)+1 : 16*(m-1)+16;% LAP TU 1-CAO y = 16*(n-1)+1 : 16*(n-1)+16;% LAP TU 1-RONG [avc(m,n),df(x,y,:)] =mhmblock(f(x,y,:),ftype,pf,pfy,x,y); end end
%%%%%%%%%% HAM MA HOA MAROBLOCK %%%%%%%%function [avc,dmb] = mhmblock(mb,ftype,pf,pfy,x,y)persistent q1 q2;if isempty(q1) %Neu mang q1 la rong. q1 = qintra;
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 110
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
q2 = qinter;endload nq; %THONG SO BUOC LUONG TUscale = nq;avc.type = 'I'; % CAU TRUC AVCavc.mvx = 0;avc.mvy = 0;% TIM VECTOR CHUYEN DONG CHO ANH Pif ftype == 'P' avc.type = 'P'; [avc,emb] = getmotionvec(avc,mb,pf,pfy,x,y); mb = emb; % LAY PHAN SAI SO GIUA CAC FRAME P DEMA HOA q = q2; % NEU LA ANH P THI DU DOAN INTERelse q = q1; % NEU LA ANH Iend% TIM VECTOR CHUYEN DONG CHO ANH Bif ftype == 'B' avc.type = 'B'; [avc,emb] = getmotionvec(avc,mb,pf,pfy,x,y); mb = emb; % LAY PHAN SAI SO GIUA CAC FRAME B DEMHOA q = q2;else q = q1;end
% CHON KHOI VA TIEN HANH BIEN DOI DCT VA LUONG TUb = getblocks(mb);for i = 18:-1:1 avc.scale(i) = scale; % DAT VECTOR LUONG TU CHO KHOI i coef = dct2(b(:,:,i)); % BIEN DOI DCT HAI CHIEU CHO KHOITHU i avc.coef(:,:,i) = round( 8 * coef ./ (scale * q));end% CAU TRUC LAI KHOI DE THAM KHAOdmb = gmmblock(avc,pf,x,y);
%%%% HAM TINH TOAN VECTOR CHUYEN DONG %%%%%%%function [avc,emb] = getmotionvec(avc,mb,pf,pfy,x,y)mby = mb(:,:,1); % CHI TIM TRONG THANH PHAN Y[M,N] = size(pfy);% TIM KIEU MOI KHIA CANH% maxstep = 10; % Largest allowable motion vector in x and y% mvxv = -maxstep:maxstep;% mvyv = -maxstep:maxstep;% minsad = inf;% for i = 1:length(mvxv)% tx = x + mvxv(i);% if (tx(1) < 1) | (M < tx(end))% continue% end% for j = 1:length(mvyv)% ty = y + mvyv(j);% if (ty(1) < 1) | (N < ty(end))% continue% end% sad = sum(sum(abs(mby-pfy(tx,ty))));% if sad < minsad% minsad = sad;% mvx = mvxv(i);
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 112
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
% mvy = mvyv(j);% end% end% end
% TIM KIEU Logarithmicstep = 8; % KICH THUOC BUOC TIM KIEM Initialstep size for logarithmic searchdx = [0 1 1 0 -1 -1 -1 0 1]; % VECTOR CHI HUONG TIM KIEMdy = [0 0 1 1 1 0 -1 -1 -1]; % [origin, right, right-up, up,left-up, % left, left-down, down, right-down]mvx = 0;mvy = 0;while step >= 1 minsad = inf; for i = 1:length(dx) tx = x + mvx + dx(i)*step; if (tx(1) < 1) | (M < tx(end)) % NEU GIA TRI tx(1) <1 HOAC continue % M < GIA TRI tx CUOI CUNG end ty = y + mvy + dy(i)*step; if (ty(1) < 1) | (N < ty(end)) continue end sad = sum(sum(abs(mby-pfy(tx,ty)))); if sad < minsad ii = i minsad = sad; end end mvx = mvx + dx(ii)*step; mvy = mvy + dy(ii)*step; step = step / 2;endavc.mvx = mvx; % LUU VECTOR CHUYEN DONGavc.mvy = mvy;emb = mb - pf(x+mvx,y+mvy,:); % MACROBLOCK SAI SO
%%%%%%%%%%%%%%%%%% HAM GIAI MA %%%%%%%%%%%%%%%%%%%%function mov = giaima(avc)movsize = size(avc{1});mov = repmat(uint8(0),[16*movsize(1:2), 3, length(avc)]);pf = [];
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 113
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
for i = 1:length(avc) % GIAI MA TOAN BO KHOI TRONG AVC f = gmframe(avc{i},pf); % GIAI MA FRAME pf = f; % LUU FRAME TRUOC DO f = yuv2rgb(f); % BIEN DOI FRAME SANG RGB f = min( max(f,0), 255); % GIOI HAN MOVIE TRONG KHOANG 8BITS mov(:,:,:,i) = uint8(f); % LUU FRAME progressbar(i/(length(avc)));end %%%%%%%%%%% HAM GIAI MA FRAME %%%%%%%%%%%%%function fr = gmframe(avc,pf)mbsize = size(avc); % KICH THUOC MB CHINH LA KICHTHUOC FILEM = 16 * mbsize(1);N = 16 * mbsize(2);fr = zeros(M,N,3);for m = 1:mbsize(1) % LAP TOAN BO MB for n = 1:mbsize(2) x = 16*(m-1)+1 : 16*(m-1)+16;% TAO LAI FRAME y = 16*(n-1)+1 : 16*(n-1)+16; fr(x,y,:) = gmmblock(avc(m,n),pf,x,y);% GOI HAM GIAI MA MBCHO KHOI end % macroblock loopend %mse = floor((mov(i).cdata)-(avc(i).cdata));%psnr = 10*log10(255^2/mse);%save psnr;%%%%%%%%%%%% HAM DAT KHOI %%%%%%%%%%%%%%%function mb = putblocks(b)mb = zeros([16, 16, 3]);mb( 1:4, 1:4, 1) = b(:,:,1);mb( 1:4, 5:8, 1) = b(:,:,2);mb( 1:4, 9:12, 1) = b(:,:,3);mb( 1:4, 13:16,1) = b(:,:,4);mb( 5:8, 1:4, 1) = b(:,:,5);mb( 5:8, 5:8, 1) = b(:,:,6);mb( 5:8, 9:12, 1) = b(:,:,7);mb( 5:8, 13:16, 1) = b(:,:,8);mb( 9:12, 1:4, 1) = b(:,:,9);mb( 9:12, 5:8, 1) = b(:,:,10);mb( 9:12, 9:12, 1) = b(:,:,11);mb( 9:12, 13:16, 1) = b(:,:,12);mb( 13:16, 1:4, 1) = b(:,:,13);mb( 13:16, 5:8, 1) = b(:,:,14);mb( 13:16, 9:12, 1) = b(:,:,15);
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 114
%%%%%%%%%%%%%%%%%%%%% HAM GIAI MA MB %%%%%%%%%%%%%%%%function mb = gmmblock(avc,pf,x,y)persistent q1 q2if isempty(q1) % MA TRAN HE SO LUONG TU q1 = qintra; q2 = qinter;endmb = zeros(16,16,3);% DU DOAN VOI VECTOR CHUYEN DONG CUA ANH Pif avc.type == 'P' mb = pf(x+avc.mvx,y+avc.mvy,:); q = q2;else q = q1;end% DU DOAN VOI VECTOR CHUYEN DONG CUA ANH Bif avc.type == 'B' mb = pf(x+avc.mvx,y+avc.mvy,:); q = q2;else q = q1;end% GIAI MA KHOIfor i = 18:-1:1 coef = avc.coef(:,:,i) .* (avc.scale(i) * q) / 8; % GIAI LUONGTU b(:,:,i) = idct2(coef); % BIEN DOI DCT NGUOC CHO HE SO MAHOAend% CAU TRUC Bmb = mb + putblocks(b);
%%%%%%%%% HAM BIEN DOI TU RGB SANG YUV %%%%%%%%%%%function yuv = rgb2yuv(rgb) % BIEN DOI TRUOC KHI MA HOAm = [ 0.299 0.587 0.144; %Y = 0.299R + 0.587R + 0.144B -0.168736 -0.331264 0.5; % MA TRAN BIEN DOI 0.5 -0.418688 -0.081312];% LAY DU LIEU MOVIE
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 115
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
[nr,nc,c] = size(rgb);rgb = reshape(rgb,nr*nc,3); % TAI TAO CHO MA TRAN NHAN% MA HOA MAU BIEN DOIyuv = m * rgb';yuv = yuv + repmat([0; 0.5; 0.5],1,nr*nc);yuv = reshape(yuv',nr,nc,3); % TAI TAO LAI ANH GOC
%%%%%%%%%%%%%%% HAM BIEN DOI TU YUV SANG RGB %%%%%%%%%%function rgb = yuv2rgb(yuv) % BIEN DOI SAU KHI GIAI MAm = [ 0.299 0.587 0.144; -0.168736 -0.331264 0.5; 0.5 -0.418688 -0.081312];m = m^-1; % LAY NGHICH DAO MA TRAN m[nr,nc,c] = size(yuv); % LAY DU LIEU MOVIEyuv = reshape(yuv,nr*nc,3); % TAI TAO LAI CHO MA TRAN YUV rgb = yuv - repmat([0, 0.5, 0.5],nr*nc,1);% MA HOA BIEN DOI MAUrgb = m * rgb'; % rgb' hoan vi cua rgbrgb = reshape(rgb',nr,nc,3); % TAI TAO LAI ANH GOC
%%%%%%%%%%%% BANG LUONG TU CHO ANH INTER 4x4 P VA B %%%%%function q = qinterq = [17,17,16,16; 17,16,15,15; 16,15,15,15; 16,15,15,15];%%%%%%%%%%% BANG LUONG TU CHO ANH INTRA 4x4 %%%%%%%function q = qintraq = [ 9,13,18,21; 13,18,21,24; 18,21,24,27; 21,24,27,30];
Hàm plotvector.m
function plotvectorload lastmov;[M,N] = size(avc{1}); for f = 1:length(avc) if avc{f}(1,1).type == 'I'% neu la anh I thi bo qua continue end for i = 1:M for j = 1:N mvx(i,j) = avc{f}(i,j).mvy; mvy(i,j) = avc{f}(i,j).mvx;
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 116
LUẬN VĂN TỐT NGHIỆP THẠC SĨ
end end figure quiver(flipud(mvx),flipud(mvy)) set(gca,'XLim',[-1, N+2],'YLim',[-1, M+2])% CAI DAT TOA DO CUAHINH title(sprintf('Vector chuyen dong cho anh thu %i',f))end
Hàm playmov.m
function playmov(n)load lastmovfor i = 1:size(mov,4) m(i).cdata = uint8([mov(:,:,:,i) mov2(:,:,:,i)]);% mov anhgoc, mov2 anh giai nen m(i).colormap = [];endfigure('Position',[30,100,750,400,]);axs=axes('Position',[0.05 0.15 0.8 0.55]);xlabel( 'Anh GOC------------------------------------------------------>>>>>>Anh NEN');movie(m,n,5); % Play mang m n lan, nhung lan sau play voi toc do5fps
Nghiên cứu hoạt động và ứng dụng của chuẩn H.265 Trang 117