« Home « Kết quả tìm kiếm

Nghiên cứu ứng dụng FPGA thực hiện thuật toán watermarking miền DCT cho ảnh số


Tóm tắt Xem thử

- Mục đớch của luận văn là nghiờn cứu ứng dụng cụng nghệ mạch tớch hợp logic khả trỡnh FPGA để thực hiện một thuật toỏn watermarking mạnh miền DCT cho ảnh số nộn JPEG.
- Từ đú tiến hành xõy dựng cỏc khối module thuật toỏn sử dụng ngụn ngữ mụ tả phần cứng VHDL và thực hiện trờn FPGA.
- Thực hiện phỏt triển trờn Matlab/Simulink và FPGA.
- Cỏc cụng việc cần thực hiện.
- Xõy dựng khối thuật toỏn Watermarking-JPEG trong miền chưa nộn 90 CHƯƠNG 5: KẾT QUẢ Mễ PHỎNG VÀ THỰC HIỆN PHÁT TRIỂN.
- Mụ hỡnh hệ thống với VHDL và thực hiện trờn FPGA.
- Kết quả thực hiện cỏc thuật toỏn trong nộn ảnh JPEG.
- Khối thực hiện biến đổi DCT_2D 8x8.
- Kết quả thực hiện cỏc thuật toỏn Watermarking-JPEG.
- Khối thực hiện biến đổi DCT_2D 16x16.
- Khối thực hiện thuật toỏn nhỳng watermark trong miền nộn.
- Đỏnh giỏ phõn tớch về thời gian, tốc độ thực hiện và chiếm dụng tài nguyờn khi thực hiện hệ thống thuật toỏn trờn FPGA.
- 53 Hỡnh 4.11: Sơ đồ khối thực hiện DCT 1-D (k: 0-7.
- 56 Hỡnh 4.12: Sơ đồ khối thực hiện DCT 2-D (K: 0.
- 60 Hỡnh 4.14: Khối thực hiện thuật toỏn DCT-2D 8x8.
- 62 Hỡnh 4.16: Sơ đồ khối thực hiện DCT-1D 16x16.
- 65 Hỡnh 4.17: Sơ đồ khối thực hiện biến đổi DCT-2D 16x16.
- 73 Hỡnh 4.19: Khối thực hiện DCT-2D 16x16.
- 74 Hỡnh 4.20: Khối thực hiện thuật toỏn lượng tử húa.
- 78 Hỡnh 4.22 : Khối thực hiện quột zigzag.
- 81 Hỡnh 4.25: Khối thực hiện mó húa bước chạy RLE.
- 82 Hỡnh 4.26: Khối thực hiện mó húa Huffman.
- 83 Hỡnh 4.27: Khối thực hiện nộn ảnh JPEG.
- 87 Hỡnh 4.29: Khối thực hiện thuật toỏn nhỳng watermark trong miền nộn.
- 87 Hỡnh 4.30: Khối thực hiện thuật toỏn watermarking-JPEG trong miền nộn.
- 91 Hỡnh 4.32: Khối thực hiện thuật toỏn nhỳng watermark trong miền chưa nộn.
- 91 Hỡnh 4.33: Khối thực hiện thuật toỏn watermarking-JPEG trong miền nộn.
- 106 Hỡnh 5.7: Giản đồ thời gian thực hiện khối color_conv_cw.
- 107 Hỡnh 5.8: Giản đồ thời gian thực hiện khối color_resampler444to420.
- 109 Hỡnh 5.9: Giản đồ thời gian thực hiện khối DCT8x8.
- 111 Hỡnh 5.10: Giản đồ thời gian thực hiện khối lượng tử húa.
- 113 Hỡnh 5.11: Giản đồ thời gian thực hiện khối quột zigzag.
- 115 Hỡnh 5.12: Giản đồ thời gian thực hiện khối mó húa bước chạy RLE.
- 117 Hỡnh 5.13: Giản đồ thời gian thực hiện khối mó Huffman.
- 119 Hỡnh 5.14: Giản đồ thời gian thực hiện khối nộn ảnh Jpeg_encoder.
- 121 Hỡnh 5.15: Giản đồ thời gian thực hiện khối DCT_2D 16x16.
- 124 Hỡnh 5.16: Giản đồ thời gian thực hiện khối watermarking_block_compressed126 Hỡnh 5.17: Giản đồ thời gian thực hiện khối jpeg_watermarking_in_compressed_domain.
- 133 Bảng 5.23: Bảng kết quả tổng hợp cho cỏc khối thuật toỏn thực hiện trờn dũng chip V5.
- 134 Bảng 5.23: Bảng kết quả tổng hợp cho cỏc khối thuật toỏn thực hiện trờn dũng chip S3E.
- ắ Cỏc phõn tớch tối ưu thuật toỏn cho việc thực hiện trờn phần cứng được nghiờn cứu và thực hiện.
- ắ Quy trỡnh thiết kế số và cỏc cụng cụ sử dụng trong thiết kế và mụ phỏng khi thực hiện trờn FPGA.
- Lý thuyết 4watermarking và cỏc cụng cụ sử dụng để thực hiện và mụ phỏng cũng được giới thiệu trong chương này.
- Chương này tập trung phõn tớch cỏc thuật toỏn nộn ảnh và watermarking theo chiều sõu, từ đú xõy dựng thiết kế cỏc khối mó VHDL thực hiện thuật toỏn cho ứng dụng phần cứng FPGA.
- ắ Chương 5: Kết quả mụ phỏng và thực hiện phỏt triển.
- Chương này trỡnh bày cỏc kết quả mụ phỏng mụ hỡnh mức hệ thống cho toàn bộ thuật toỏn dựa trờn cụng cụ Matlab/simulink, và cỏc kết quả thực hiện cỏc thuật toỏn trờn VHDL và FPGA.
- Watermarking Kỹ thuật Watermarking thực hiện nhỳng dữ liệu mở rộng, được gọi là Watermark, vào trong một bản tin.
- Thực hiện mụ phỏng và phỏt triển trờn Matlab/Simulink và FPGA 2.3.1.
- Bước tiếp theo thực hiện xõy dựng cỏc khối thuật toỏn trờn cỏc cụng cụ ISE và System generator sử dụng ngụn ngữ mụ tả phần cứng VHDL.
- Với sự phỏt triển của cụng nghệ FPGA, cựng với sự hỗ trợ của cỏc cụng cụ lập trỡnh, việc thực hiện cỏc thuật toỏn nộn và watermarking phức tạp trờn FPGA là cú thể.
- Kỹ thuật watermarking cho ảnh số được khảo sỏt và thực hiện là kỹ thuật watermarking trong miền DCT, cả trong miền nộn và miền chưa nộn JPEG.
- Đề tài lựa chọn chế độ nộn cú tổn hao trờn cơ sở biến đổi DCT để thực hiện nộn ảnh và watermarking.
- Bảng 3.2: Ma trận lượng tử cho thành phần chúi Bảng 3.2 là ma trận lượng tử cho thành phần chúi dựng để thực hiện lượng tử húa cỏc hệ số sau biến đổi DCT của thành phần chúi của ảnh.
- Bảng 3.3 là ma trận lượng tử màu dựng để thực hiện lượng tử húa cỏc hệ số sau biến đổi DCT của cỏc thành phần màu của ảnh.
- Việc thực hiện thuật toỏn watermarking miền khụng gian cho giỏ thành phần cứng rẻ hơn.
- Watermarking hiện và watermarking ẩn Watermarking ẩn tại miền DCT cũng cú thể thực hiện bằng phương trỡnh watermarking (3.20).
- Để thực hiện kỹ thuật này, một ma trận cỏc hệ số 16x16 DCT sẽ được cộng trực tiếp với ma trận cỏc hệ số 16x16 DCT ảnh như phương trỡnh (3.20), và được thể hiện ở Hỡnh 3.10.
- Cú hai lựa chọn để nhỳng watermark vào cỏc khung của một đoạn video là thực hiện watermarking trước hay sau khi nộn (Hỡnh 3.11).
- Cỏc thuật toỏn nộn ảnh Mỗi thuật toỏn nộn ảnh của JPEG được mụ tả và thực hiện theo cỏc module riờng, và thuật toỏn JPEG tổng thể được tổng hợp từ cỏc module riờng biệt.
- Khối Thuật toỏn biến đổi khụng gian màu Phương trỡnh biến đổi khụng gian màu: (4.1) Sử dụng cộng cụ Xilinx System generator thực hiện thuật toỏn được thể hiện trờn Hỡnh 4.1.
- Thuật toỏn cũng cú thể được thực hiện dễ dàng bằng VHDL.
- Cỏc tớnh toỏn được thực hiện bằng cỏch sử dụng 8 bộ nhõn và lưu trữ cỏc hệ số trong cỏc ROM.
- Sơ đồ khối thực hiện 1D-DCT 8x8 được thể hiện ở hỡnh 4.11.
- 7kx1kx6kx2kx5kx3kx4kxkox)70( >−KZ Hỡnh 4.11: Sơ đồ khối thực hiện DCT 1-D (k: 0-7) Tớn hiệu điều khiển Toggle cú tần số bằng ẵ tần số clk vào khối DCT.
- Thực hiện nhõn hàng k của T với cột 0 của Z kết quả cho hệ số YK0.
- zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz Cỏc tớnh toỏn được thực hiện bằng cỏch sử dụng 8 bộ nhõn và lưu trữ cỏc hệ số trong cỏc RAM.
- Sơ đồ khối thực hiện biến đổi DCT 2-D được thể hiện trờn hỡnh 4.12 597kz1kz6kz2kz5kz3kz4kzkoz)70( >−KY Hỡnh 4.12: Sơ đồ khối thực hiện DCT 2-D (K: 0.
- Túm tắt quỏ trỡnh thực hiện biến đổi DCT 2D 8x8 qua biểu đồ dũng thuật toỏn (Hỡnh 4.13) 60 Khối DCT 2D 8x8 được viết bằng mó VHDL (Hỡnh 4.14a) và được mụ ta bằng System generator (Hỡnh 4.14b).
- Cỏc tớnh toỏn được thực hiện bằng cỏch sử dụng 16 bộ nhõn và lưu trữ cỏc hệ số trong cỏc RAM.
- Sơ đồ khối thực hiện 1D-DCT 16x16 được thể hiện trờn Hỡnh 4.16.
- 6815kx1kx14kx2kx13kx3kx12kxkox)150( >−KZ5kx10kx6kx9kx7kx8kx4kx11kx Hỡnh 4.16: Sơ đồ khối thực hiện DCT-1D 16x16 69Tớn hiệu điều khiển Toggle cú tần số bằng ẵ tần số clk vào khối DCT 16x16.
- zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz Cỏc tớnh toỏn được thực hiện bằng cỏch sử dụng 16 bộ nhõn và lưu cỏc hệ số vào cỏc Ram.
- Sơ đồ khối thực hiện biến đổi DCT-2D 16x16 được thể hiện trờn Hỡnh 4.17.
- Vỡ vậy, thay vỡ thực hiện phộp chia, ta thực hiện phộp nhõn giữa giỏ trị đầu vào với giỏ trị nghịch đảo của cỏc hệ số của bảng lượng tử.
- RLErdy_inchro_inzigzag _indc_outrl_outrdy _outchro_outeob (a) (b) Hỡnh 4.25: Khối thực hiện mó húa bước chạy RLE Cỏc chõn tớn hiệu giao diện của khối: CLK: tớn hiệu xung nhịp hệ thống.
- 85 86Hai khối lượng tử húa (quant) thực hiện lượng tử húa biến đổi với hai bảng lượng tử cho trước cho tớn hiệu DCT chúi và tớn hiệu DCT màu, hai khối quột zigzag (zigzag_scan) thực hiện chuyển chuỗi 2 chiều thành 1 chiều cho mó húa entropy.
- Hỡnh 4.29: Khối thực hiện thuật toỏn nhỳng watermark trong miền nộn 88Khối watermarking_block_compressed được thiết kế với cỏc hệ số watermarking α = ò = 1.
- Tiếp theo thực hiện tổng hợp khối Watermarking-JPEG trong miền nộn (jpeg_watermarking_in_compressed_domain) bằng mó VHDL được mụ tả trờn Hỡnh 4.30.
- Đõy là khối thuật toỏn khỏ phức tạp và đang được thực hiện (chưa hoàn thiện trong luận văn này).
- Hỡnh 4.32: Khối thực hiện thuật toỏn nhỳng watermark trong miền chưa nộn 92Khối watermarking_block_uncompress cũng được thiết kế với cỏc hệ số watermarking α = ò = 1.
- Tiếp theo thực hiện tổng hợp khối Watermarking-JPEG trong miền chưa nộn (jpeg_watermarking_in_uncompressed_domain) bằng mó VHDL được mụ tả trờn Hỡnh 4.33.
- Cỏc kết quả thực hiện bằng VHDL và trờn FPGA chủ yếu là cho mụ hỡnh Watermarking-JPEG trong miền nộn, sẽ được trỡnh bày trong Chương 5.
- 96CHƯƠNG 5: KẾT QUẢ Mễ PHỎNG VÀ THỰC HIỆN PHÁT TRIỂN Trước tiờn luận văn thực hiện mụ phỏng mức hệ thống sử dụng cụng cụ Matlab/Simulink cho cả hai mụ hỡnh thuật toỏn watermarking trong miền chưa nộn và watermarking trong miền nộn JPEG.
- Tiếp theo thực hiện mụ phỏng cho cỏc khối thuật toỏn dựng ngụn ngữ VHDL và thực hiện trờn FPGA.
- Kết quả thực hiện dựng ngụn ngữ VHDL và thực hiện trờn FPGA là cho mụ hỡnh watermarking trong miền nộn JPEG.
- Cỏc cụng việc cần thực hiện thờm là xõy dựng cỏc khối hàm lượng tử húa, quột zigzag, và mó húa entropy.
- Thực hiện điều chỉnh hai hệ số a và b trong mụ hỡnh 5.1c ta thu được watermark ẩn hay hiện.
- Trong phạm vi luận văn, sẽ trỡnh bày kết quả thực hiện tổng hợp cỏc khối trong mụ hỡnh thuật toỏn nộn ảnh JPEG và Watermarking-JPEG trong miền nộn trờn 2 dũng chip FPGA khỏc nhau của hóng Xilinx là dũng chip FPGA thụng dụng giỏ thấp Spartan3E(xc3s500e-5fg320), và dũng chớp cao cấp giỏ cao Virtex-5(xc5vlx50t-3ff1136) để chỳng ta cú thể so sỏnh về tốc độ tối đa, thời gian đỏp ứng và số CLB chiếm dụng.
- Cỏc kết quả mụ phỏng giản đồ thời gian (Test benches) được thực hiện trờn ModelSim với cỏc 107dữ liệu đầu vào là cỏ dữ liệu ảnh đó được lấy làm dữ liệu mụ phỏng trờn Matlab/Simulink ở Mục 5.1.
- Kết quả thực hiện cỏc thuật toỏn trong nộn ảnh JPEG 5.2.1.1.
- Khối thuật toỏn biến đổi khụng gian màu RGB-YCrCb Khối này được tỏc giả thực hiện trờn Xilinx System Generator (Mục 4.1.1) sau đú tổng hợp trờn ISE và mụ phỏng giản đồ thời gian (test bench) trờn ModelSim XE.
- Khối thực hiện biến đổi DCT_2D 8x8 - Giản đồ thời gian: Hỡnh 5.9: Giản đồ thời gian thực hiện khối DCT8x8 112- Kết quả thực hiện tổng hợp: Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng 5.5): Bảng 5.5: Kết quả tổng hợp khối DCT8x8 trờn dũng chip V5 jpeg_watermarking Project Status Project File: jpeg_watermarking.ise Implementation State: Synthesized Module Name: dct8x8 • Errors: No Errors Target Device: xc5vlx50t-3ff1136 • Warnings: 1996 Warnings Device Utilization Summary (estimated values) [-]Logic Utilization Used Available Utilization Number of Slice Registers Number of Slice LUTs Number of fully used LUT-FF pairs Number of bonded IOBs 17 480 3%Number of BUFG/BUFGCTRLs 1 32 3%Number of DSP48Es 4 48 8%Timing Summary.
- Khối quột zigzag - Giản đồ thời gian: Hỡnh 5.11: Giản đồ thời gian thực hiện khối quột zigzag 116- Kết quả thực hiện tổng hợp: Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng 5.9): Bảng 5.9: Kết quả tổng hợp khối quột zigzag trờn dũng chip V5 jpeg_watermarking Project Status Project File: jpeg_watermarking.ise Implementation State: Synthesized Module Name: zigzag_scan • Errors: No Errors Target Device: xc5vlx50t-3ff1136 • Warnings: 3 Warnings Device Utilization Summary (estimated values) [-]Logic Utilization Used Available Utilization Number of Slice Registers Number of Slice LUTs Number of fully used LUT-FF pairs 26 1116 2%Number of bonded IOBs 30 480 6%Number of BUFG/BUFGCTRLs 1 32 3%Timing Summary.
- Kết quả thực hiện cỏc thuật toỏn Watermarking-JPEG Luận văn lựa chọn mụ hỡnh Watermarking-JPEG trong miền nộn để thực hiện tổng hợp trờn chip FPGA, với cỏc khối thuật toỏn được trỡnh bày dưới đõy.
- Khối thực hiện thuật toỏn nhỳng watermark trong miền nộn - Giản đồ thời gian: 126 Hỡnh 5.16: Giản đồ thời gian thực hiện khối watermarking_block_compressed - Kết quả thực hiện tổng hợp: Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng Bảng 5.19: Kết quả tổng hợp khối watermarking_block_compressed trờn dũng chip V5 jpeg_watermarking Project Status Project File: jpeg_watermarking.ise Implementation State: Synthesized Module Name: watermarking_block_compressed • Errors: No Errors Target Device: xc5vlx50t-3ff1136 • Warnings: 7812 Warnings Device Utilization Summary (estimated values) [-]Logic Utilization Used Available Utilization Number of Slice Registers Number of Slice LUTs Number of fully used LUT-FF pairs Number of bonded IOBs 17 480 3%Number of BUFG/BUFGCTRLs 1 32 3%Number of DSP48Es 16 48 33% Timing Summary.
- Nhưng mụ hỡnh này thỡ phức tạp hơn vỡ phải thực hiện thờm khối biến đổi DCT ngược 2 chiều 16x16.
- Như vậy thời gian khối xử lý một vộc tơ 8 pixel 8bits thực hiện trờn chớp V5 là ns.
- Cả watermarking ẩn hay hiện đều được thực hiện trong cỏc mụ hỡnh này thụng qua việc điều chỉnh hai tham số α và ò trong khối thuật toỏn nhỳng watermark.
- Cỏc kết quả mụ phỏng đạt được khi thực hiện cỏc thuật toỏn sử dụng ngụn ngữ mụ tả phần cứng HDL và thực hiện trờn FPGA chứng tỏ rằng mụ hỡnh thuật toỏn hoàn toàn đỏp ứng được cỏc ứng dụng thời gian thực.
- ắ Nghiờn cứu ứng dụng FPGA và DSP thực hiện thuật toỏn watermarking miền DCT cho video số nộn MPEG-2 và MPEG-4.
- ắ Nghiờn cứu ứng dụng FPGA và DSP thực hiện thuật toỏn watermarking miền DCT cho video số nộn H264

Xem thử không khả dụng, vui lòng xem tại trang nguồn
hoặc xem Tóm tắt