1. Nội dung thiết kế tốt nghiệ p:
4.2 Kết quả quá trình kiểm tra FIC trên FPGA
4.2.1 Ảnh xám
4.2.1.1 Kết quả thực hiện trên FPGA
Đặng Thị Xuân – ĐTVT_KSTN_K52 Trang 74
Bảng 4-2 Bảng kết quả thực thi phương pháp của Fisher trên FPGA
Board
Kết quả Số lƣợng
classes
Thời gian mã hóa (s) PSNR (dB) FPGA 1 11.025 11.830 3 11.033 11.830 24 11.038 12.310 72 11.058 22.280
Bảng 4-3 Kết quả thực hiện phương pháp Fisher trên FPGA với RET = 20
Phƣơng pháp
Kết quả Số lƣợng
classes
Thời gian mã hóa (s) PSNR (dB) Fisher 1 11.017 19.5 3 11.023 19.54 24 11.040 20.26 72 11.052 26.35
Khi số lượng class ( NC ) thay đổi, thời gian mã hóa hầu như không thay đổi trong khi đó PSNR được cải thiện đáng kể. Kiểm tra để so sánh cũng được thực hiện trong giải nén đối với số lần lặp NI thay đổi. Kết quả chỉ ra rằng PSNR được cải thiện khi số lần lặp tăng trong khi thời gian giải nén hầu như không thay đổi.
Qua bảng sau, một lần nữa thời gian mã hóa hầu như thay đổi rất ít và chỉ thay đổi xung quanh giá trị 11s tuy nhiên với NC = 72 thì giá trị PSNR cải thiện đáng kể so với trường hợp NC = 6. Trong trường hợp các ảnh biểu diễn trong hình 4.4, ảnh Lena ban đầu và ảnh sau khi giải nén với RET = 20 dẫn tới sự cải thiện đáng kể trong chất lượng giải nén so với các ảnh trong hình 4-3.
Đặng Thị Xuân – ĐTVT_KSTN_K52 Trang 75
(a) NC = 1 (b) NC = 3 (c) NC = 24
(d) NC = 72 (e) NC = 72( DSP) (f) Ảnh ban đầu
Hình 4-3 Ảnh Lena ban đầu và các ảnh sau khi giải nén với ET = 6, RET = 6, MiS = 4, MaS = 16, NI = 20
(a) NC = 1 (b) NC = 3 (c) NC = 24
(d) NC = 72 (e) Ảnh ban đầu
Hình 4-4 Ảnh Lena ban đầu và các ảnh sau khi giải nén với ET = 6, RET = 20, MiS = 4, MaS = 16, NI =20
4.2.1.2 So sánh với kết quả thƣc hiện trên DSP
4.2.1.2.1 Nén ảnh xám theo phƣơng pháp phân mảnh thực hiện trên DSP
TMS320C5515 USB Kit [9]
Trong bài báo [9], FIC được thực hiện trên DSP TMS320C5515 kit ( hình 4- 5 ) để kiểm tra khả năng mã hóa và giải mã thành công mà không cần bộ nhớ tràn sử dụng các ảnh 64 x 64.
Đặng Thị Xuân – ĐTVT_KSTN_K52 Trang 76
Hình 4-5 DSP TMS320C5515 USB Kit
DSP TMS320C5515 USB Kit là một công cụ đánh giá cho Texas Instrument TMS320C5515 DSP, một sản phẩm trong series DSP TMS320C5000 [10]. DSP điểm bất động TMS320C5515 là một trong những lõi xử lý C55xx CPU 3.3 [11]. Kiến trúc của DSP này đạt được hiệu suất cao và nguồn nuôi thấp. Có 2 bộ hỗ trợ đa tính toán ( MAC – Multiply-Accummulate ) có thể tính toán 17-bit17-bit trong một vòng đơn. Thêm vào đó, nó có một bộ số học-logic ( ALU – Arithmetic/Logic Unit ) 40 bit và 16 bit được dùng để tối ưu công việc tính toán và sự tiêu thụ năng lượng [12].
Nó cũng có những đặc tính khác nhằm nâng cao hiệu quả tính toán [9], [11]. Dựa vào hoạt động song song với nhiều MACs, ALUs, DSP TMS320C55xx chạy nhanh hơn DSP TMS320C54xx. Ngoài ra, series DSP TMS320C5000 được sử dụng trong rất nhiều cell phones. Do đó nó đủ khả năng để sử dụng phương pháp nén ảnh phân mảnh trong cell phone.
Công cụ USB bus này cho phép người dùng đánh giá: - Bộ xử lý TMS320C5515 với các thiết bị ngoại vi của nó. - Bộ codec TLV320AIC3204.
Đặng Thị Xuân – ĐTVT_KSTN_K52 Trang 77
Dưới đây là hình ảnh những đặc điểm chính của kit này:
Hình 4-6 Sơ đồ khối của C5515 eZdsp USB Stick [8]
DSP TMS320C5515 củaTexas Instrument.
- Bộ codec TLV320AIC3204 củaTexas Instrument. - Bộ kết nối Micro SD.
- USB 2.0 kết nối với bộ xử lý C5515. - Bộ nhớ NOR flash 32Mb.
- Màn hình OLED I2C.
- 5 LEDs được điều khiển bởi người dung. - 2 nút bấm switches.
- Nhúng mô phỏng USB XDS100 JTAG. - Giao tiếp board Bluetooth.
- Kết nối mở rộng.
- Năng lượng được cung cấp qua giao tiếp USB.
- Tương thích với Texas Instrument Code Composer Studio v4. - Cáp USB mở rộng.
Đặng Thị Xuân – ĐTVT_KSTN_K52 Trang 78
4.2.1.2.2 So sánh kết quả:
Bảng 4-4 Bảng so sánh hiệu suất thực thi phương pháp của Fisher trên FPGA và DSP
Board
Kết quả Số lƣợng
classes
Thời gian mã hóa (s) PSNR (dB) DSP 1 13.000 21.746 3 14.000 22.402 24 25.000 23.769 72 47.000 24.117 FPGA 1 11.025 11.830 3 11.033 11.830 24 11.038 12.310 72 11.058 22.280 4.2.1.3 Nhận xét
Đối với thực hiện trên FPGA, khi số lượng class( NC ) thay đổi, thời gian mã hóa hầu như không thay đổi trong khi đó PSNR được cải thiện đáng kể. Trong khi đó, thực hiện trên DSP yêu cầu nhiều thời gian thực hiện mã hóa hơn. Do đó, FPGA được tin rằng là một SoC hiệu quả cho việc thực thi FIC bởi vì hiệu năng vượt trội của nó so với DSP mặc dù PSNR đạt được khi thực hiện trên DSP đôi khi tốt hơn đối với RET = 6.
Đặng Thị Xuân – ĐTVT_KSTN_K52 Trang 79
4.2.3 Ảnh màu
4.2.3.1 Kết quả thực hiện trên FPGA
Bảng 4-5 Bảng kết quả thực thi nén theo phương pháp phân mảnh
Kết quả Tỉ lệ nén PSNR (dB) Nén ảnh theo phƣơng pháp phân mảnh 5.48 26.45 15 24.25 21 22.59 25 22.44
4.2.3.2 So sánh với kết quả thƣc hiện theo chuẩn JPEG
Hình 4-7 Ảnh Lena ban đầu
(a) (b) (c) (d)
Hình 4-8 Ảnh Lena sau khi giải nén bằng chuẩn JPEG
(a) (b) (c) (d)
Hình 4-9 Ảnh Lena sau khi giải nén bằng phương pháp phân mảnh tương ứng với thứ tự các ảnh ở hình 4 -8
Đặng Thị Xuân – ĐTVT_KSTN_K52 Trang 80
Bảng 4-6 Bảng so sánh hiệu suất thực thi nén theo phương pháp phân mảnh và JPEG
Kết quả Tỉ lệ nén PSNR (dB) Nén ảnh theo phƣơng pháp phân mảnh 5.48 26.45 15 24.25 21 22.59 25 22.44 JPEG 7.79 25.79 9.3 24.53 10.08 23.99 10.25 23.6 4.2.3.3 Nhận xét
Nén ảnh màu theo phương pháp phân mảnh thực hiện trên FPGA cho ta kết quả tốt với tỉ lệ nén cao mà vẫn giữ được PSNR khá cao. Trong khi đó thực hiện nén ảnh màu theo chuẩn JPEG thì tỉ lệ nén không cao tuy PSNR tốt hơn. Từ đó có thể thấy tỉ lệ nén theo phương pháp phân mảnh có thể thay đổi và đạt được mức cao trong khi đó chuẩn JPEG thì không.
Đặng Thị Xuân – ĐTVT_KSTN_K52 Trang 81
KẾT LUẬN
Trong bài báo này, kĩ thuật nén ảnh phân mảnh với phương pháp của Fisher cải tiến được thực hiện trên Xinlinx Virtex 5 (XUPV5-LX110T) FPGA. Kết quả đạt được chỉ ra rằng thời gian thực hiện mã hóa trên FPGA thì tốt hơn nhiều trên DSP, trong khi nâng cao chất lượng nén ảnh xám. Ngoài ra, kết quả đạt được khi thực hiện nén ảnh màu cũng chỉ ra thực hiện trên FPGA ta có kết quả tốt với tỉ lệ nén cao mà vẫn giữ được PSNR khá cao so với JPEG.
Qua quá trình làm đồ án tôi đã có điều kiện tìm hiểu về các chuẩn nén ảnh, video, công nghệ FPGA, và sử dụng thành thạo ngôn ngữ lập trình Microsoft Visual Studio 2010, các công cụ hỗ trợ phát triển của Xilinx như ISE, EDK…
Thực hiện thành công FIC trên FPGA hi vọng giải quyết thời gian tính toán nhiều và sau đó tận dụng những ưu điểm của FIC như nén chất lượng cao ở tỉ lệ nén cao, thời gian giải nén nhanh… Với yêu cầu đối với chất lượng cao trong những kĩ thuật mã hóa/ giải mã ngày một tăng, hướng tiếp cận hứa hẹn sẽ phát triển tiếp theo là áp dụng FIC cho chuỗi ảnh cũng như video có sử dụng hiệu suất cao của FPGA.
Đặng Thị Xuân – ĐTVT_KSTN_K52 Trang 82
TÀI LIỆU THAM KHẢO
[1] M. F. Barnsley (1988), “Fractals Everywhere”, Academic Press, Inc. [2] http://en.wikipedia.org, truy cập cuối cùng ngày 11/6/2012.
[3] Y. Fisher, “Fractal Image Compression – Theory and Application”, NewYork: Springer – Verlag, 1995.
[4] Mario Polvere and Michele Nappi, “ Speed-Up in Fractal Image Coding: Comparison of Methods”, IEEE Transactions on Image Processing, Vol. 9, No.6, 2000, pp. 1002 – 1009
[5] B. Hurtgen and C. Stiller, “Fast hierarchical codebook search for fractal coding of still images,” in Proc. EOS/SPIE Visual Communications PACS Medical Applications ‟93, Berlin, Germany, 1993.
[6] D. Saupe, “Fractal image compression by multi-dimensional nearest neighbor search,” in Proc. DCC‟95 Data Compression Conf., Mar. 1995. [7] Clive M. Maxfield, The Design Warrior‟s Guide to FPGAs, Newnes Press,
2004.
[8]Thai Nam Son, Ong Manh Hung, Dang Thi Xuan, Tran Van Long, Nguyen Tien Dzung, Thang Manh Hoang, “Implementation of Fractal image compression on FPGA,” to be published in Proc.4th international conference ICCE 2012, ,Hue, Vietnam, August 2012.
[9] Duong Phu Thai, Nguyen Tien Dzung, Thang Manh Hoang, de Souza-Daw. T, "Implementation of fractal image encoding/decoding on DSP,” in Proc. of Joint 3rd Int‟l Conference Workshop on Nonlinear Dynamics and Synchronization and Sixteenth International Symposium on Theoretical Electrical Engineering (INDS&ISTET 2011), pp. 1-6, July 25-27, 2011, online published in IEEExplorer
[10] Texas Instrument, “C55x v3.x CPU Reference Guide”, SWPU073E, June 2009.
[11] Texas Instrument, “TMS320C5515 Fixed-Point Digital Signal Processor”, SPRU281F, December 2003.