LỜI CAM ĐOAN
Tơi cam đoan đây là cơng trình nghiên cứu của tôi.
Các số liệu, kết quả nêu trong luận văn là trung thực và chƣa từng đƣợc ai công bố
trong bất kỳ cơng trình nào khác.
Các số liệu, kết quả nêu trong luận văn là trung thực.
kết quả của luận văn có tham khảo một phần trong đề tài “nghiên cứu, thiết kế và
chế tạo thử nghiệm chip nén ảnh theo tiêu chuẩn JPEG2000 và chip ADC đa năng thử
nghiệm, Mã số KC.01.13/11-15 Chủ nhiệm đề tài: ThS Nguyễn Minh Khánh Ngọc. Cơ
quan chủ trì: Trung tâm Nghiên cứu và Đào tạo thiết kế vi mạch” đề tài mã số
KC.01.13/11-15. Đề tài này tơi có trong danh sách tham gia thực hiện ngoài ra đƣợc sự
đồng ý của chủ nhiệm đề tài ThS Nguyễn Minh Khánh Ngọc cho phép sử dụng một phần
kết quả.
Tp. Hồ Chí Minh, ngày … tháng … năm 201…
(Ký tên và ghi rõ họ tên)
Bạch Tuấn Đồng
ii
LỜI CẢM TẠ
Tôi xin chân thành cám ơn quý thầy cô của khoa Điện-Điện Tử, Trƣờng Đại Học Sƣ
Phạm Kỹ Thuật - Tp.HCM, đặc biệt là thầy TS. Lê Mỹ Hà ở bộ môn kỹ thuật điện đã
nhận lời hƣớng dẫn và có những ý kiến nhận xét cần thiết, làm nền tảng cho tôi thực hiện
đề tài.
Luận văn là thành quả của đề tài mã số KC.01.13/11-15. Tôi xin gửi lời cảm ơn
chân thành đến Bộ Khoa học và Cơng nghệ, Văn phịng các chƣơng trình trọng điểm cấp
Nhà nƣớc, Ban Chƣơng trình KC.01 đã đầu tƣ kinh phí cho đề tài.
Tôi cũng gửi lời cảm ơn chân thành đến Trung tâm Nghiên cứu và Đào tạo Thiết kế
Vi mạch trực thuộc Đại Học Quốc Gia TP. Hồ Chí Minh (ICDREC), các đồng nghiệp đã
giúp đỡ nhiệt tình để tơi có cơ hội tham gia đề tài này.
Cảm ơn Bố Mẹ, Vợ luôn tạo mọi điều kiện tốt nhất trong suốt chặng đƣờng học sau
đại học, cảm ơn bạn bè đã động viên, khích lệ, giúp đỡ về mọi mặt trong quá trình làm
luận văn tốt nghiệp.
Trong quá trình làm luận văn thạc sỹ, có lẽ sẽ khơng thể tránh khỏi những sai sót,
rất mong nhận đƣợc những nhận xét, góp ý, hƣớng dẫn và giúp đỡ của quý thầy cô và các
bạn.
iii
TÓM TẮT
JPEG2000 là một chuẩn quốc tế mới về nén ảnh, đƣợc liên kết phát triển bởi Tổ
Chức International Organization for Standardization (ISO) và Internaltional Electro
technical Commission (IEC) và đƣợc đề xuất bởi Internetional Telecommunications
Union (ITU). Chuẩn JPEG2000 ra đời khắc phục nhiều hạn chế của JPEG trong các ứng
dụng tƣơng tác đa phƣơng tiện. JPEG2000 đƣợc phát triển dựa trên lý thuyết của biến đổi
wavelet thay vì DCT nhƣ trong JPEG. Có thể nói, nén ảnh bằng phƣơng pháp JPEG2000
cho chất lƣợng tốt, tỷ lệ nén cao. Tuy nhiên, thuật toán phức tạp và tiêu tốn nhiều thời
gian xử lý. Đối với các ứng dụng nhúng và các thiết bị cầm tay, các bộ vi xử lý đa dụng
của hệ thống không đủ khả năng để thực hiện thuật toán trong thời gian thực (real time).
Do vậy, các hãng thiết kế vi mạch lớn đã cho ra đời các lõi IP core và các chip IC có thể
nén ảnh theo thời gian thực, cải thiện tốc độ hệ thống. Nội dung nghiên cứu sẽ tập trung
vào xây dựng một lõi IP cứng và mềm nén ảnh theo tiêu chuẩn JPEG2000.
iv
ABSTRACT
JPEG2000 is a new international standard for image compression. This image
compression standard is a result of collaborative efforts by the International
Telecommunication Union (ITU), International Organization for Standardization (ISO),
and International Electro technical Commission (IEC). JPEG2000 was born to overcome
many limitations of the JPEG in the application of multimedia interactive. The JPEG2000
algorithm has been developed based on the discrete wavelet transform (DWT) technique
as opposed to the discrete cosine transform (DCT) based current JPEG. We can say,
JPEG2000 image compression method offers good quality, high compression ratio.
However, this algorithm is really complex and time-consuming process. For embedded
applications and handheld devices, the processor of the system has insufficient capacity
to implement the algorithm in real time. So, the large IC design companies have released
the IP core and IC chip which can compress images in real time to improve system speed.
Research content focus on building a hard and soft IP core image compression standard
JPEG2000.
v
MỤC LỤC
Trang tựa
TRANG
Quyết định giao đề tài
Biên bản chấm luận văn tốt nghiệp thạc sỹ năm 2015
Phiếu nhận xét luận văn thạc sỹ
Đơn xin phép sử dụng các kết quả đề tài
Danh sách các tác giả thực hiện đề tài KHCN cấp nhà nƣớc
LÝ LỊCH KHOA HỌC
i
LỜI CAM ĐOAN
ii
LỜI CẢM ƠN
iii
TĨM TẮT
iv
ABSTRACT
v
MỤC LỤC
vi
DANH SÁCH HÌNH
viii
DANH SÁCH BẢNG
xi
DANH MỤC CÁC TỪ VIẾT TẮT
xii
1.1. Tổng quan chung về lĩnh vực nghiên cứu
1
1.1.1. Tình hình nghiên cứu ngồi nƣớc
1
1.1.2. Trong nƣớc
2
1.2. Một số ứng dụng của JPEG2000
3
1.3. Mục đích của đề tài.
6
1.4. Nhiệm vụ của đề tài
6
1.5. Nhƣợc điểm đề tài
7
1.6. Phƣơng pháp nghiên cứu và kế hoạch thực hiện
7
CHƢƠNG 2: CƠ SỞ LÝ THUYẾT
9
2.1. Khối biến đổi FDWT (Forward descrete wavelet transform)
9
2.2. Lƣợng tử
15
2.3. Lý thuyết tổng quan Quantization_buff
19
vi
2.4. Tổng quan lý thuyết khối ROI
19
CHƢƠNG 3: PHƢƠNG PHÁP THIẾT KẾ LÕI IP TRÊN PHẦN CỨNG
22
3.1. Khối FDWT
22
3.1.1. Khối biến đối wavelet
22
3.1.2. Kiến trúc phần cứng khối FDWT
23
3.2. Thiết kế khối lƣợng tử
31
3.2.1. Tổng quát khối khối lƣợng tử
31
3.2.2. Phân tích thực hiện
33
3.1.1. Tổng quát khối ROI
33
3.1.2. Chức năng chân
34
3.1.3. Sơ đồ thiết kế
36
CHƢƠNG 4: PHƢƠNG PHÁP KIỂM TRA THIẾT KẾ
45
4.1. Kiểm tra hoạt động khối DWT
45
4.2. Kiểm tra hoạt động của khối lƣợng tử
50
4.3. Môi trƣờng kiểm tra ROI
52
CHƢƠNG 5: KẾT QUẢ MÔ PHỎNG TRÊN MẠCH ĐIỆN TỬ FPGA
54
5.1. Sơ đồ khối hệ thống kiểm tra lõi IP nén ảnh JPEG2000 trên FPGA
54
5.2. Mô tả chức năng các khối
56
5.3. Phƣơng pháp kiểm tra
57
5.4. Kết quả kiểm tra
57
5.5. Kết quả tổng hợp chạy mô phỏng
61
CHƢƠNG 6: KẾT LUẬN
67
vii
DANH SÁCH CÁC HÌNH
TRANG
Hình 1 1: Ứng dụng JPEG2000 chụp ảnh y sinh
3
Hình 1 2: Ứng dụng JPEG2000 trong điện ảnh
4
Hình 1 3: Ứng dụng JPEG2000 trong trắc địa
5
Hình 1 4: Một số công ty trên thế giới đã phát triển chíp nén ảnh JPEG2000
6
Hình 2 1: Sơ đồ hệ thống nén ảnh chuẩn JPEG2000
9
Hình 2 2: Dãy bộ lọc trong biến đổi Wavelet
10
Hình 2 3: Phân chia băng con sử dụng 2D-DWT với level 3
11
Hình 2 4: Kiến trúc khối top-level của 2D-DWT
11
Hình 2 5: Dãy bộ lọc trong biến đổi Wavelet
13
Hình 2 6: Kiến trúc Lifting
14
Hình 2 7: Biến đổi wavelet level 2
15
Hình 2 8: Cách thực thi tạo mặt nạ cho khối ROI
20
Hình 2 9: Phƣơng pháp biến đổi S + P
21
Hình 3 1: Module biến đổi wavelet
22
Hình 3 2: Kiến trúc Lifting của DWT1 col
24
Hình 3 3: Đƣờng đi data trong 1 level
24
Hình 3 4: Kiến trúc biến đổi FDWT 1d
25
Hình 3 5: Luồng data trong biến đổi FDWT 2d
26
Hình 3 6: Kiến trúc phần cứng 1d
27
Hình 3 7: Kiến trúc bộ 2_stages_calc
28
Hình 3 8: Máy trạng thái col_calc_fsm
28
Hình 3 9: Máy trạng thái row_calc_fsm
29
viii
Hình 3 10: Kiến trúc khối line_2_matrix
29
Hình 3 11: Máy trạng thái trong khối Align
30
Hình 3 12: Kiến trúc khối Align
30
Hình 3 13: Sơ đồ chân khối lƣợng tử
31
Hình 3 14: Sơ đồ khối thực hiện lƣợng tử hóa
33
Hình 3 15: Sơ đồ chân khối ROI
34
Hình 3 16: Module ROI liên kết với các module khác
37
Hình 3 17: Ví dụ delay AVALON_SHIFT bit
37
Hình 3 18: Data truyền đi trong module JPEG2000enc_mask
38
Hình 3 19: Cách tính Hn theo column
39
Hình 3 20: Cách tính Ln theo column
39
Hình 3 21: Data đƣợc chia theo hàng ngang
39
Hình 3 22: Data đƣợc chia trong một level
40
Hình 3 23: Cách tạo nhiều data đƣợc tạo ra khi 5 level
41
Hình 3 24: ROI_MASK đƣợc tạo ra khi LEVEL là 3
41
Hình 3 25: Phân vùng sub-band
42
Hình 3 26: Bộ giải mã vùng FIFO
43
Hình 3 27: Sơ đồ thời gian của module ROI
43
Hình 3 28: Phƣơng pháp shift down background
44
Hình 4 1: Dạng sóng các tín hiệu khối FDWT lossy
47
Hình 4 2: Dạng sóng các tín hiệu khối FDWT lossless
49
Hình 4 3: Mơi trƣờng kiểm tra khối lƣợng tử
51
Hình 4 4: Sơ đồ kiểm tra bằng mơi trƣờng C
51
Hình 4 5: Sơ đồ kiểm tra môi trƣờng VCS
52
ix
Hình 4 6: Dạng sóng các tín hiệu khối Quantization
52
Hình 4 7: Sơ đồ kiểm tra khối ROI
53
Hình 5 1: Mơ hình mơ phỏng trên phần cứng
55
Hình 5 2: Bo mạch điện tử thực hiện phơ phỏng
55
Hình 5 3: Giao diện mơ phỏng
56
Hình 5 4: Kết quả nén khơng tổn hao
58
Hình 5 5: Kết quả nén tổn hao
59
Hình 5 6: Kết quả nén ở chế độ có ROI
60
x
DANH SÁCH BẢNG
TRANG
Bảng 1 1: Kế hoạch thực hiện
7
Bảng 2 1: Giá trị gain [11]
16
Bảng 2 2: Giá trị Ri [11]
17
Bảng 2 3: Giá trị mantissa và exponent [11]
17
Bảng 2 4: Giá trị bƣớc nhảy lƣợng tử[11]
18
Bảng 3 1: Bảng tín hiệu chân và chức năng
22
Bảng 3 2: Cấu hình module FDWT
23
Bảng 3 3: Sơ đồ chân và chức năng khối lƣợng tử
31
Bảng 3 4: Thơng số cấu hình khối lƣợng tử
32
Bảng 3 5: Chức năng chân tín hiệu
34
Bảng 3 6: Độ rộng bit của phƣơng pháp shift down background [9].
44
Bảng 5 1: Kết quả nén của DUT và Cmodel chế độ Lossless level 1,2
61
Bảng 5 2: Kết quả nén của DUT và Cmodel chế độ Lossless level 3
62
Bảng 5 3: Kết quả nén của DUT và Cmodel chế độ Lossless level 4,5
62
Bảng 5 4: Kết quả nén của DUT và Cmodel chế độ Lossy level 1,2
63
Bảng 5 5: Kết quả nén của DUT và Cmodel chế độ Lossy level 3
64
Bảng 5 6: So sánh kết quả nén của DUT và Cmodel chế độ Lossy level 4,5
64
Bảng 5 7: Kết quả tổng hợp lõi nén ảnh JPEG2000 trên FPGA dòng Cyclone III
65
Bảng 5 8: Kết quả tổng hợp lõi IP nén ảnh JPEG2000 trên FPGA dòng Stratix III 66
Bảng 5 9: Thời gian nén 1 tấm hình kích thƣớc 128x128 và 256x256
67
Bảng 6 1: Bảng so sánh tài nguyên khối biến đổi FDWT
68
Bảng 6 2: Bảng so sánh độ rộng bit với 2 chuẩn hiện tại
68
Bảng 6 3: Nhƣợc điểm và hƣớng phát triển
69
xi
DANH MỤC CÁC TỪ VIẾT TẮT:
JPEG
Joint Photographic Experts Group
MCT
Multi-Components Transform
ICT
Irreversible Color Transform
RCT
Reversible Color Transform
PSNR
Peak to Signal to Noise Ratio
MSE
Mean Square Error
DCT
Discrete Cosin Transform
FDWT
Forward Discrete Wavelet Transform
RTL
Register Transfer Level
ASIC
Application-Specific Integrated Circuit
FPGA
Field-Programmable Gate Array
IP
Intellectual Property
FIFO
First In First Out
EBCOT
Embedded Block Coding with Optimized Truncation
DRC
Design Rule Check
LVS
Layout versus Schematic
GDS
Graphic Design System
RGB
Red – Green – Blue
AST
Avalon Streaming
AMM
Avalon Memory Map
RAM
Random Access Memory
ROI
Regional Of Interest
xii
CHƢƠNG 1:
TỔNG QUAN
1.1. Tổng quan chung về lĩnh vực nghiên cứu
1.1.1. Tình hình nghiên cứu ngồi nƣớc
Trong những năm gần đây, lĩnh vực công nghệ thông tin thế giới và đặc biệt là
xử lý ảnh đã đạt được những bước tiến nhảy vọt. Kèm theo đó, là sự bùng nổ của kỹ
thuật mạng viễn thông và các dịch vụ, sản sinh một lượng lớn nhu cầu về lưu trữ ảnh
số. Trong tình hình đó, các định dạng ảnh, tiêu chuẩn và phương pháp nén ảnh lần lượt
được ra đời, phát triển và hoàn thiện. Nhiều định dạng ảnh khác nhau để mơ tả việc lưu
trữ một file hình ảnh như: .bmp; .tif; .pcx; .gif; .jpg... Trong số đó hai định dạng .gif và
.jpg (hay .jpeg) được sử dụng rộng rãi nhất do khả năng nén ảnh tốt của chúng, còn
.bmp thường cho file ảnh với dung lượng lớn hơn nhiều so với .jpeg.
Năm 1992, tiêu chuẩn nén ảnh JPEG – Part 1, còn được gọi là ISO/IEC 109181:1994, được xuất bản. Phiên bản này định nghĩa các yêu cầu và hướng dẫn thiết yếu.
Tiếp theo đó, năm 1994, JPEG-Part 2, còn gọi là ISO/IEC 10918-2:1995 được xuất
bản, định nghĩa các luật kiểm tra tương thích. Các phần mở rộng tiếp theo của JPEG
được xuất bản vào các năm kế tiếp.
Nguyên lý của phương pháp nén JPEG là: Cắt hình ảnh thành từng khối nhỏ,
phân tích tất cả các dữ liệu về màu sắc, độ sáng mà các khối đó chứa bằng các phương
trình ma trận. Ảnh màu trong khơng gian RGB (Red, Green, Blue) được chuyển đổi
qua hệ YUV. Trong khi thị giác của con người lại rất nhạy cảm với hệ Y, ít nhạy cảm
hơn nhiều với hệ U, V. Hệ thống sẽ nén thành phần Y của ảnh ở mức độ ít hơn nhiều
so với U và V. Kế tiếp là dùng biến đổi Cosin rời rạc, sau nữa là mã hóa theo phương
pháp Hoffman. Khi giải nén ảnh, các bước thực thi sẽ làm ngược lại quá trình nói trên.
Tuy nhiên, chuẩn JPEG vẫn cịn một số hạn chế, và đã dần lỗi thời so với nhu
cầu và sự phát triển của công nghệ thông tin trên thế giới. Ví dụ, kỹ thuật nén JPEG sẽ
1
làm mất thông tin lúc giải nén, càng nén với hệ số cao thì thơng tin càng mất nhiều khi
giải nén.
Vì vậy để giải quyết vấn đề này, năm 2000, tiêu chuẩn JPEG2000 – Part 1 được
xuất bản. Với JPEG2000 kỹ thuật xử lý hình ảnh sẽ đạt được những kết quả rất ngoạn
mục vì có thể nén nhỏ từ 100-200 lần mà hình ảnh khơng sai sót bao nhiêu so với hình
ảnh gốc. Nhưng đâu là điểm khác biệt để kỹ thuật JPEG2000 vượt trội hơn hẳn so với
JPEG?
JPEG2000 là hệ thống mã hóa hình ảnh mà kỹ thuật nén dựa trên kỹ thuật sóng
ngắn (wavelet transform). Là một tiện ích tốn học cho phép mơ tả bằng một cơng thức
đơn giản những gì xảy ra tại một thời điểm chính xác của tín hiệu. Với một chuỗi sóng
ngắn, chỉ cần biểu diễn bằng vài công thức, đường biểu diễn khơng đều mà khơng cần
phải mơ tả đặc tính của từng điểm một. Và lẽ dĩ nhiên sẽ rất hữu ích khi phân tích tỉ mỉ
một file ảnh kỹ thuật số. Thuật toán trong kỹ thuật JPEG2000 là chọn một số nhỏ các
sóng ngắn, các sóng này được lập lại ở những nơi khác nhau, tỷ lệ khác nhau đã mơ tả
chính xác tín hiệu của hình ảnh. Tập dữ liệu hình ảnh nén khơng chứa nhiều hơn số
lượng chỉ vị trí và giãn nở của từng sóng ngắn. Và kỹ thuật mã hóa theo từng khối,
theo từng khu vực ưu tiên của hình ảnh (ROI -Regional Of Interest) được áp dụng cũng
là một tiến bộ đáng kể trong thuật tốn mã hóa JPEG2000. Có thể nói, nén ảnh bằng
phương pháp JPEG2000 cho chất lượng tốt, tỷ lệ nén cao. Tuy nhiên, thuật toán phức
tạp và tiêu tốn nhiều thời gian xử lý. Đối với các ứng dụng nhúng và các thiết bị cầm
tay, các bộ vi xử lý đa dụng của hệ thống không đủ khả năng để thực hiện thuật toán
trong thời gian thực (real time). Do vậy, các hãng thiết kế vi mạch lớn đã cho ra đời
các lõi IP core và các chip IC có thể nén ảnh theo thời gian thực, cải thiện tốc độ hệ
thống. Đây cũng là xu hướng phát triển tất yếu.
1.1.2. Trong nƣớc
Trong nước hiện có 2 đề tài làm về thiết lõi IP JPEG2000 gồm
2
Đề tài 1
Tên đề tài/dự án: Nghiên cứu và thiết kế lõi IP mềm và cứng thực hiện thực hiện
nén ảnh theo tiêu chuẩn JPEG2000.
Chủ nhiệm đề tài/dự án: TS. Đặng Trọng Trình
Cơ quan chủ trì: Trung tâm Nghiên cứu và Đào tạo Thiết kế Vi mạch
Đề tài thứ 2:
Nghiên cứu, thiết kế và chế tạo thử nghiệm chip nén ảnh theo tiêu chuẩn
JPEG2000 và chip adc đa năng thử nghiệm trong y tế.
Mã số KC.01.13/11-15
Chủ nhiệm đề tài: ThS Nguyễn Minh Khánh Ngọc
Cơ quan chủ trì: Trung tâm Nghiên cứu và Đào tạo thiết kế vi mạch
1.2. Một số ứng dụng của JPEG2000
Chụp ảnh y sinh
Hình 1-1: Ứng dụng JPEG2000 chụp ảnh y sinh
3
Hình 1-2: Ứng dụng JPEG2000 trong điện ảnh
Phim “Stealth”: Bản thử nghiệm đầu tiên của phim chuẩn JPEG2000 tại liên
hoan phim Tokyo, năm 2005
Phim “The Shaggy Dog”: Bộ phim kỹ thuật số được truyền qua vệ tinh, năm
2006
Phim “Chicken Little”: Bộ phim 3D đầu tiên với sự tham gia của DCI, năm
2005
4
Phim “Corpse Bride”: Bộ phim được làm với chất lượng 4K đầu tiên dựa trên
tiêu chuẩn của DCI, năm 2005
Hình 1-3: Ứng dụng JPEG2000 trong trắc địa
Camera HiRISE
•
Dự án chụp ảnh Hỏa tinh
•
Lưu trữ ảnh chưa nén tới 28Gbit.
•
Nén ảnh tiêu chuẩn JPEG2000 và truyền vệ tinh với dung lượng tối đa
11.2 Gbit
Vệ tinh SkySat-1
•
Vệ tinh ra mắt tháng 11 năm 2013
•
Vệ tinh thương mại ảnh độ phân giải siêu cao hỗ trợ JPEG2000
Vệ tinh World View-2
•
Vệ tinh quan sát Trái Đất ra mắt tháng 10 năm 2009
•
Vệ tinh thương mại ảnh độ phân giải siêu cao hỗ trợ JPEG2000
5
Thế giới hiện có 6 cơng ty phát triển chíp xử lý ảnh JPEG200 logo các cơng ty
trong Hình 1-4
Hình 1-4: Một số công ty trên thế giới đã phát triển chíp nén ảnh JPEG2000
1.3. Mục đích của đề tài.
Thực hiện chuẩn nén ảnh JPEG2000 nén trên phần cứng mạch điện tử FPGA
(DE3 Atera). Giảm dung lượng hình ảnh xuống mà chất lượng hình ảnh vẫn chấp nhận
được. Để kiểm tra tính khách quan trong luận văn tơi đã dùng openjpeg để kiểm tra và
q trình mơ phỏng kết quả nghiên cứu bằng VCS, modelsim và quartus 2.
1.4. Nhiệm vụ của đề tài
Thực hiện giải thuật tương thích tiêu chuẩn ISO/IEC 15444-1
Hỗ trợ nén tổn hao, không tổn hao.
Hỗ trợ 3 thành phần màu 24bit trong đó 1 thành phần màu 8bit. Và 1
thành phần màu 16bit
6
Hỗ trợ kích thước code block là 16x16, 32x32, 64x64.
Hỗ trợ 2D DWT với thông số lọc 5/3 và 9/7, level 1 5.
Thực hiện kiểm tra với nhiều trường hợp khác nhau
Thực hiện chương trình trên bo mạch FPGA để đánh giá tốc độ và tài
nguyên.
1.5. Nhƣợc điểm đề tài
Cần một dung lượng RAM lớn để lưu dữ liệu.
Tốc độ nén với hình hớn thì chưa được thời gian thực.
Khơng tổng hợp lõi IP này trên ASIC.
1.6. Phƣơng pháp nghiên cứu và kế hoạch thực hiện
Dựa vào chuẩn nén ảnh JPEG2000 để tìm hiểu lý thuyết, tìm và chọn lọc những
tài liệu liên quan đến nén ảnh. Tìm những giải thuật phù hợp và cải tiến từng khối trong
chuận JPEG2000, sau đó vẽ sơ đồ khối từ khối nhỏ, tiếp theo vẽ trúc phần cứng, lập
trình, q trình kiểm tra, mơ phỏng cho từng khối, sau đó tiến hành lên kế hoạch thực
hiện, viết chương trình kiểm tra bằng matlab, C/C++ để kiểm tra chức năng của các
khối. Bảng 1-1 là thời gian thực hiện đề tài luận văn thạc sỹ.
Thời gian thực hiện: 18 tháng bao gồm:
- 6 tháng thực hiện chuyên đề 1
- 6 tháng thực hiện chuyên đề 2
- 6 tháng để hoàn thành luận văn
Bảng 1-1: Kế hoạch thực hiện
Stt
Nội dung phải thực hiện
Tháng
1
Tìm tài liệu đọc và chọn lọc tài liệu uy tín liên quan đến luận văn
1
7
2
Tổng quan tài liệu và viết kế hoạch thực hiện luận văn, với bố cục hợp lý,
rõ ràng.
1
Viết model matlab, C/C++, mơ phỏng openjpeg (mã nguồn mở) để tìm
3
hiểu luồng dữ liệu đi, tín hiệu vào ra của module, độ rộng bit của tín hiệu 2
vào ra
Sau khi đã hiểu cơ bản các module thì tiến hành viết sơ đồ chân của các
khối trong luận văn, có những phần chính là khối tiền xử lý bao gồm DC
4
Level Shifting, Tiling, Multicomponent Transformations, phần chuyển đổi
miền thời gian sang miền tần số Discrete Wavelet transformation, phần
2
giảm bớt dữ liệu Quantization, Region of Interest Coding (ROI) và một số
khối phía sau nhưng khơng nằm trong luận văn nên chỉ tìm hiểu cơ bản.
Dựa vào matlab model, openjpeg để vẽ bản sơ đồ chi tiết của thiết kế
trong luận văn gồm phần tiền xử lý ảnh và khối biến đổi wavelet hỗ trợ
5
ROI.
2
Dùng ngôn ngữ mô tả phần cứng là verilog để thực hiện những những ý
tưởng thiết kế.
Kiểm tra chức năng từng khối, kết quả ngõ ra gồm khối DC Level
Shifting, khối Tiling, khối Multicomponent Transformations, khối
6
Discrete Wavelet Transformation, khối Quantization, khối Region of
Interest Coding (ROI). Kết quả phải đúng với matlab model và openjpeg,
2
đúng từng bit nhị phân so với model, dùng một số chương trình mơ phỏng
modelsim, quartus, vcs phần để kiểm chứng.
7
8
Viết báo cáo, đăng trên các tạp chí trong và ngoài nước(đã viết hai bài liên
quan đến luận văn)
Kết nối tất cả các module trong luận văn lại và để kết nối hệ thống lại và
kiểm tra kết quả ngõ ra với model.
8
1
1
Viết tất cả các trường hợp kiểm tra, để có thể bao quát hết các trường hợp
9
có thể xảy ra. Viết chương trình so sánh kết quả phần cứng và model, nếu 2
sai dùng trình mơ phỏng để kiểm tra.
10
11
Sau khi kiểm tra chức năng các khối đúng ta tiến hành đổ xuống phần
cứng bảng mạch điện tử FPGA (DE3 của atera).
Viết luận văn để hoàn thành đề tài
CHƢƠNG 2:
2
2
CƠ SỞ LÝ THUYẾT
Trong Hình 2-1 là sơ đồ hệ thống nén ảnh JPEG2000 và phần mà luận văn tập
trung nghiên cứu và thiết kết lõi IP.
MCT
Sink dc_level
Quantization
FDWT
Tiling
ROI
Luận Văn
Source
Tier 1
Tier 2
Rate Control
Shift down back
ground
-
Hình 2-1: Sơ đồ hệ thống nén ảnh chuẩn JPEG2000
Tiền xử lý ảnh
Bước tiền xử lý ảnh bao gồm 3 chức năng chính là Tiling, DC Level Shifting và
Multicomponent Transformation
2.1. Khối biến đổi FDWT (Forward descrete wavelet transform)
Điểm quan trọng làm nên sự khác biệt giữa JPEG2000 và JPEG là JPEC2000 sử
dụng biến đổi wavelet rời rạc (DWT) thay vì biến đổi cosine rời rạc (DCT). Cấu trúc
9
của 1D-DWT cơ bản dựa trên các bộ lọc phân chia băng con được biểu diễn như hình
dưới, số tầng sẽ quyết định mức biến đổi trong DWT.
LP Filter
{hi}
↓2
HP output
yHP
HP Filter
{gi}
↓2
LP output
yLP
input
input
x0
h0
x1
h1
x2
h2
x3
x4
h3
h4
x5
x6
h5
h6
x7
h7
x8
h8
x0
g0
x1
x2
g1
g2
+
+
↓2
↓2
LP output
x3
x4
g3
g4
HP output
Hình 2-2: Dãy bộ lọc trong biến đổi Wavelet
Từ cấu trúc 2D-DWT với N mức biến đổi có thể dễ dàng xây dựng bằng cách
ghép nối các bộ 1D-DWT lại. Tầng đầu tiên sẽ xử lý N mức biến đổi theo hàng. Tầng
thứ 2 xử lý N mức biến đổi theo cột. Các bộ lọc chuẩn được tiến hành luân phiên theo
hàng và cột tại mỗi tầng. Trong (hình 2-3) là sự phân chia các băng con trong hình ảnh
theo chuẩn 2D-DWT với 2 mức biến đổi. “h” và “l” tương ứng là các bộ lọc thông cao
và thông thấp.
10
llllll
lhllll
lhll
hllll
hhllll
lh
hlll
hhll
hl
hh
Hình 2-3: Phân chia băng con sử dụng 2D-DWT với level 3
Dựa vào cấu trúc cơ bản trên để xây dựng cấu phần cứng thì hành khối IP 2D-DWT
thuận như hình 2-4.
Hình 2-4: Kiến trúc khối top-level của 2D-DWT
11
Biến đổi Wavelet rời rạc (DWT) có thể nói là một trong hai module quan trọng
nhất đối với JPEG2000. Điểm làm nên sự khác biệt giữa JPEG2000 và JPEG chính là
JPEC2000 sử dụng DWT thay vì biến đổi cosine rời rạc (DCT). Điều này giúp cho
hình ảnh JPEG2000 cho chất lượng tốt mà tỷ lệ nén cao. Tuy nhiên, thuật toán DWT
khá phức tạp và tiêu tốn nhiều thời gian xử lý. Việc nghiên cứu để nâng cao tốc độ xử
lý, đồng thời khơng q hao phí nguồn tài ngun địi hỏi đề tài cần thêm nhiều thời
gian và cơng sức nhằm cải tiến module này.
Kỹ thuật nén ảnh JPEG2000 sử dụng phương pháp wavelet rời rạc biến đổi tín
hiệu trước khi thực hiện lượng tử hóa hay mã hóa tín hiệu. Chuẩn ISO/IEC 15444-1 đã
quy định một số tiêu chuẩn kỹ thuật cho phép biến đổi wavelet rời rạc. Phép biến đổi
Wavelet rời rạc phải sử dụng họ wavelet CDF (được nghiên cứu bởi ba nhà khoa học
Cohen, Daubechies và Feauveau) kèm theo một số điều kiện để phù hợp cho hệ thống
nén ảnh:
Hệ thống nén ảnh không tổn hao:
Sử dụng CDF 5/3 bao gồm:
1 bộ lọc thông thấp 5 phần tử.
1 bộ lọc thông cao 3 phần tử.
Các hệ số của bộ lọc là số thập phân được làm tròn theo quy định.
Hệ thống nén ảnh có tổn hao:
Sử dụng CDF 9/7 bao gồm:
1 bộ lọc thông thấp 9 phần tử xem Hình 2-2.
1 bộ lơc thơng cao 7 phần tử.
12
Các hệ số của bộ lọc là số thập phân được làm trịn tùy theo u cầu về mức
chính xác. Biến đổi thuận wavelet rời rạc trong một tầng phải được thực hiện theo
chiều qui định:
Bước 1: Biến đổi theo chiều dọc.
Bước 2: Biến đổi theo chiều ngang.
Bước 3: Giảm tốc độ mẫu kết hợp ghép các kết quả biến đổi.
Tuy nhiên trong thiết kế phần cứng các bước 3 có thể được tận dụng để tích hợp
vào 2 bước còn lại.
Thực hiện biến đổi thuận Wavelet rời rạc bằng kiến trúc Lifting. Kiến trúc này
làm giảm chi phí tính tốn và tài ngun sử dụng. Đây là kiến trúc đề tài sẽ thực hiện
khi thiết kế khối biến đổi thuận Wavelet rời rạc.
Phép biến đổi thuận Wavelet rời rạc được thực hiện dựa trên cơ sở các dãy bộ
lọc dùng để phân rã tín hiệu. Trong một tầng con, có 2 bộ lọc thơng thấp và thơng cao
được sử dụng như Hình 2-5 bên dưới.
L
l
2
h
2
l
2
h
2
ll
2
lh
x
H
hl
2
Hình 2-5: Dãy bộ lọc trong biến đổi Wavelet
13
hh
Tuy nhiên việc thực hiện bộ lọc trên theo cách truyền thống sẽ mất nhiều tài
nguyên để thực hiện (sử dụng nhiều bộ nhân, bộ cộng). Do đó để tiết kiệm chi phí tính
tốn nhất là khi bậc của bộ lọc lớn (biến đổi thuận Wavelet rời rạc sử dụng CDF 9/7),
cấu trúc Lifting trong Hình 2-6 đã được sử dụng để thay thế bộ lọc truyền thống nhằm
giảm chi phí tính tốn và tài ngun hệ thống.
LP
+
x
split
predict
update
HP
Hình 2-6: Kiến trúc Lifting
Công thức biến đổi FDWT trường hợp tổn hao[3]:
Y(2 n 1) X ext (2 n 1) (X ext (2 n) X ext (2 n 2))
Y(2 n) X ext (2 n) (y(2 n 1) Y (2 n 1))
Y(2 n 1) Y (2 n 1) (y(2 n) Y (2 n 2))
Y(2 n) Y (2 n) (y(2 n 1) Y (2 n 1))
(4)
Y(2 n 1) KY (2 n 1)
Y(2 n)
1
Y (2 n)
K
Trong đó giá trị các hệ số được có giá trị như sau.
1,586134342
0, 052980118
0,882911075
0, 443506802
K 1.230174104
(5)
14