Hệ thống nhúng hiện thực thuật toán đa phân giải cho ảnh pháp chứng - Võ Minh Tiến

Tài liệu Hệ thống nhúng hiện thực thuật toán đa phân giải cho ảnh pháp chứng - Võ Minh Tiến: TAÏP CHÍ KHOA HOÏC ÑAÏI HOÏC SAØI GOØN Soá 26 (51) - Thaùng 03/2017 3 Hệ thống nhúng hiện thực thuật toán đa phân giải cho ảnh pháp chứng An embedded system implemented the multiresolution-based algorithm for forensic image detection KS. Võ Minh Tiến, Công ty TNHH Applied Micro Circuits Corporation (AMCC) Vietnam Vo Minh Tien, Engr. Applied Micro Circuits Cooperation Vietnam Co., Ltd. GS.TS. Lê Tiến Thường, Trường Đại học Bách Khoa TP.HCM – ĐHQG TP.HCM Le Tien Thuong, Prof.,Ph.D., Ho Chi Minh City University of Technology – National University Ho Chi Minh City ThS. Huỳnh Khả Tú, Trường Đại học Bách Khoa TP.HCM – ĐHQG TP.HCM Huynh Kha Tu, M.Sc., Ho Chi Minh City University of Technology – National University Ho Chi Minh City PGS.TS. Marie Luong, Trường Đại học Paris 13, Pháp Marie Luong, Assoc.Prof.,Ph.D. University Paris 13, France Tóm tắt Bài viết trình bày việc triển khai một phương pháp giám định ảnh trên một hệ thống nhúng. Có nhiều loại phần cứn...

pdf11 trang | Chia sẻ: quangot475 | Lượt xem: 555 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Hệ thống nhúng hiện thực thuật toán đa phân giải cho ảnh pháp chứng - Võ Minh Tiến, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
TAÏP CHÍ KHOA HOÏC ÑAÏI HOÏC SAØI GOØN Soá 26 (51) - Thaùng 03/2017 3 Hệ thống nhúng hiện thực thuật toán đa phân giải cho ảnh pháp chứng An embedded system implemented the multiresolution-based algorithm for forensic image detection KS. Võ Minh Tiến, Công ty TNHH Applied Micro Circuits Corporation (AMCC) Vietnam Vo Minh Tien, Engr. Applied Micro Circuits Cooperation Vietnam Co., Ltd. GS.TS. Lê Tiến Thường, Trường Đại học Bách Khoa TP.HCM – ĐHQG TP.HCM Le Tien Thuong, Prof.,Ph.D., Ho Chi Minh City University of Technology – National University Ho Chi Minh City ThS. Huỳnh Khả Tú, Trường Đại học Bách Khoa TP.HCM – ĐHQG TP.HCM Huynh Kha Tu, M.Sc., Ho Chi Minh City University of Technology – National University Ho Chi Minh City PGS.TS. Marie Luong, Trường Đại học Paris 13, Pháp Marie Luong, Assoc.Prof.,Ph.D. University Paris 13, France Tóm tắt Bài viết trình bày việc triển khai một phương pháp giám định ảnh trên một hệ thống nhúng. Có nhiều loại phần cứng được dùng trong xử lý ảnh, tuy nhiên, đề tài lựa chọn sử dụng một thế hệ phần cứng mới Raspberry Pi 3B, được phát triển ở Anh nhằm thúc đẩy giảng dạy khoa học máy tính trong trường học [1]. Phương pháp thực hiện có thể phát hiện ảnh giả do cắt dán trên cùng một ảnh (Copy - Move) hoặc từ nhiều nguồn khác nhau (Splicing) mà không biết bất cứ thông tin gì về ảnh gốc. Ảnh giám định được xử lý đa phân giải bằng biến đổi Wavelets rời rạc trước khi tách biên với một ngưỡng lọc thích hợp để tìm ra những điểm biên chỗ cắt dán nếu là ảnh giả, tái tạo lại các đường biên này bằng các toán tử hình thái. Kết quả thực hiện trên hệ thống nhúng cho kết quả tương tự như mô phỏng trên Matlab với độ chính xác cao. Từ khóa: phát hiện ảnh giả, pháp chứng, ảnh cắt dán, ảnh ghép, phân tích Wavelet rời rạc, tách biên, toán tử hình thái, Raspberry, OpenCV, FPGA. Abstract This paper presents the implementation of the multiresolution-based algorithm for forensic image detection on an embedded system. Among various hardware platforms used in image processing field, this project chose the Raspberry Pi, which is a credit-card-sized computer developed in the UK by the Raspberry Pi Foundation with the intention of promoting the teaching of basic computer science in schools. The method is able to detect copy–move forgery and spliced images without having any information about original images. By applying Discrete Wavelets Transform (DWT) and edge detection with a threshold, cut-paste manipulations are traced. If the image is fake, shaped edges are highlighted and the morphological operation is applied to reconstruct the boundaries of forged regions. The procedure conducted in this system gives results similar to those from Matlab simulations. Keywords: digital image forgery, forensic, copy – move, splicing, Discrete Wavelets Transform (DWT), edge detect, morphological operation, Raspberry, OpenCV, Field Programmable Gate Arrays (FPGA). H THỐNG NHÚNG HI N THỰC THUẬT TOÁN ĐA PHÂN GIẢI CHO ẢNH PHÁP CHỨNG 4 1. Giới thiệu Xử lý ảnh số là một lĩnh vực mở và năng động với nhiều nghiên cứu được ứng dụng trong cuộc sống hằng ngày như pháp chứng, y dược, khám phá vũ trụ, giám sát và nhiều lĩnh vực khác. Những ứng dụng khác nhau bao gồm các bước xử lý khác nhau như xử lý và nâng cao chất lượng ảnh, phát hiện vật thể, nhận diện khuôn mặt. Triển khai những ứng dụng này trên một máy tính thì có thể dễ dàng, tuy nhiên nó lại không hiệu quả và rất tốn thời gian vì những yêu cầu phần cứng như bộ nhớ và các thiết bị ngoại vi. Triển khai một hệ thống nhúng ứng dụng chuyên biệt sẽ giúp tăng tốc độ triển khai phần mềm tương ứng [2]. Sự xuất hiện và phát triển nhanh chóng của các công nghệ xử lý ảnh và các phần mềm chỉnh sửa ảnh, điển hình như Photoshop là một bước đột phá trong kỹ thuật. Nó giúp con người tạo ra các bức ảnh đẹp, lưu lại những khoảnh khắc đáng nhớ trong đời sống xã hội của con người. Tuy nhiên, nhiều người lợi dụng các phần mềm chỉnh sửa ảnh để tạo ra các ảnh giả nhằm gian lận, che giấu bằng chứng phạm tội, gây hại cho người khác và xã hội. Điều này làm nảy sinh một nhu cầu là cần tìm ra các kỹ thuật để giám định ảnh, phát hiện các ảnh giả mà mắt thường không thể phân biệt được. Nhiều thuật toán và giải pháp được đưa ra, trong đó phân thành hai loại chính là thuật toán chủ động và thuật toán thụ động. Nếu như các phương pháp chủ động cho biết các thông tin của ảnh gốc như phương pháp watermarking hay chữ ký số; thì các phương pháp thụ động sẽ không có bất cứ thông tin nào của ảnh gốc nên đôi khi còn gọi là mù. Hiện nay, có nhiều kỹ thuật và phương pháp khác nhau được đưa ra, chủ yếu tập trung vào phương pháp thụ động, phát hiện các ảnh giả mạo do cắt dán hình ảnh trên cùng một ảnh (Copy – Move) hoặc do trích xuất từ nguồn ảnh khác (Splicing). Tuy nhiên, để tìm ra một phương pháp tiếp cận mới và hiệu quả, cũng như hiện thực các giải pháp này trên một hệ thống nhúng là rất cần thiết. Thông thường, các nhà nghiên cứu chỉ chú ý tới giải thuật, cách xử lý và mô phỏng nó trên Matlab mà chưa quan tâm tới việc triển khai trên phần cứng nào sẽ đạt được kết quả tối ưu về tốc độ, sự chính xác. Việc thực hiện thuật toán đa phân giải cho ảnh pháp chứng trên một phần cứng cụ thể như KIT Raspberry Pi 3B - được tích hợp một CPU 1.2GHz 64-bit quad-core ARMv8 [8] - giúp ta có những đánh giá rõ ràng, góp phần không nhỏ nhằm tìm ra những giải pháp, công cụ tối ưu cho việc giám định ảnh pháp chứng. 2. Tổng quan tình hình nghiên cứu Có hai loại kỹ thuật thiết kế phần cứng chính được sử dụng phổ biến cho xử lý ảnh là vi mạch tích hợp chuyên dụng - Application Specific Integrated Circuits (ASIC) và phần cứng thiết kế bán chuyên dụng như bộ xử lý tín hiệu số-Digital signal Processors (DSP) hay Mảng cổng lập trình được dạng trường - Field Programmable Gate Arrays (FPGA). Những thiết kế với ASIC có hiệu quả cao nhất, tuy nhiên thiết kế lại phức tạp và có giá thành cao. Một nhược điểm nữa là thiết kế ASIC không thể thay đổi nên thời gian thiết kế cũng lâu hơn các phần cứng khác. Thiết kế này thường được sử dụng trong những ứng dụng thương mại với số lượng sản xuất lớn. Ngoài ra, trong quá trình sản xuất, nếu xảy ra bất kỳ lỗi nhỏ nào cũng làm cho chip không sử dụng được. DSP là một dạng phần cứng nằm giữa ASIC và PC về hiệu quả và độ phức tạp thiết kế. DSP là những vi xử lý đặc biệt, được lập trình bằng ngôn VÕ MINH TIẾN - LÊ TIẾN THƯỜNG - HUỲNH KHẢ TÚ - MARIE LUONG 5 ngữ C hoặc code assembly. Nó thích hợp với các ứng dụng tính toán rất phức tạp như xử lý số tín hiệu và xử lý ảnh. Sử dụng DSP cũng yêu cầu sự hiểu biết cơ bản về phần cứng, nhưng tương đối dễ dàng hơn những lựa chọn khác. FPGA là một thiết bị cấu hình lại. Những kỹ thuật thiết kế phần cứng như cấu trúc song song và cấu trúc đường ống có thể được phát triển trên FPGA [6], nhưng không thể thực hiện trên một thiết kế DSP. Triển khai xử lý ảnh trên một thiết bị cấu hình lại sẽ giảm tối đa chi phí, cho phép thực thiện các thiết kế mẫu các thuật toán phức tạp một cách nhanh chóng và dễ dàng sửa lỗi và kiểm tra. Vì vậy, FPGA là một sự lựa chọn lý tưởng cho các giải thuật xử lý ảnh thời gian thực. Tuy nhiên, việc nghiên cứu về phần cứng xử lý ảnh trong những năm gần đây ít được quan tâm, phát triển. Những nghiên cứu trước đây có thể được phân loại dựa trên loại phần cứng và giải thuật xử lý ảnh được triển khai. Những loại phần cứng được xem xét trong xử lý ảnh như ASIC, DSP và FPGA. Còn đối với các thuật toán xử lý ảnh được triển khai trên phần cứng như tích chập, lọc hình ảnh và phát hiện cạnh bằng phương pháp Sobel, Prewitt và Canny. Một vài nghiên cứu cũng quan tâm đến việc triển khai và hiệu quả thực thi trên FPGA của những nhà sản xuất như Xilinx [5], Amtel và Altera. Nhiều nghiên cứu gần đây chủ yếu tập trung vào phương pháp thụ động vì nó đòi hỏi các thuật toán và kỹ thuật phức tạp hơn. Ảnh giả tạo ra trong phương pháp này gồm hai dạng là Copy – Move và Splicing. Với ảnh giả Copy – Move, một vùng ảnh được cắt ra, có thể được xử lý, rotate/flip hoặc thay đổi kích thước, tỉ lệ (scale) trước khi dán vào một vị trí nào đó trên ảnh gốc. Do phần cắt ghép được lấy từ chính ảnh đó nên nó có thông tin và đặc tính giống một phần trên ảnh gốc. Dựa vào cách thức xử lý ảnh, các thuật toán giám định này được chia làm hai nhóm chính là dịch chuyển chỉ với các thao tác biến đổi đồ họa và dịch chuyển với các biến đổi đồ họa cộng với hình học. Các kỹ thuật phát hiện ảnh giả cho cả hai hình thức ảnh giả Copy - Move như phân tích thống kê các giá trị pixel của Weiqi Luo [13], phân tích giá trị đặc biệt - Singular Value Decomposition (SVD) [14], biến đổi Wavelets rời rạc - Dircrete Wavelets Transform (DWT) [15] biến đổi cos rời rạc - Discrete Cosine Transform (DCT) [4]. Còn với ảnh Splicing, phần cắt ghép được lấy từ một nguồn ảnh khác nên nhiều vùng ảnh sẽ có các đặc tính khác nhau. Dựa trên các đặc tính bi-coherence [9], blur [7] của ảnh hay đặc điểm camera khi chụp [16], có thể phân biệt được các ảnh giả dạng này. Các kỹ thuật giám định này được tổng quát trong [10]. 3. Giải thuật đa phân giải cho ảnh pháp chứng Thuật toán đề xuất không chỉ phát hiện ảnh giả mạo, mà còn xác định vùng bị giả mạo do xử lý copy-move hoặc splicing mà không biết trước bất kỳ thông tin nào của ảnh gốc. Ngoài ra, thuật toán còn có thể phát hiện nhiều hơn một vùng giả mạo trong một ảnh thông qua các bước đa phân giải, tách biên, toán tử hình thái giãn nở trước khi tái tạo lại hình ảnh bằng biến đổi Wavelets ngược [11]. Giả sử ảnh ban đầu cần giám định là ảnh màu, cần chuyển ảnh sang ảnh đa mức xám (gray) từ các kênh màu đỏ (Red – R), xanh lá (Green – G) và xanh dương (Blue – B) của ảnh gốc với trọng số thích hợp. Giá trị từng pixel được tính từ giá trị của các kênh màu đỏ R, xanh lá G và xanh dương B ứng với pixel đó: H THỐNG NHÚNG HI N THỰC THUẬT TOÁN ĐA PHÂN GIẢI CHO ẢNH PHÁP CHỨNG 6 (1) Input Image RGB? RGB => Gray Wavelet Transform Approximate Detail Components (Horizontal, Vertical & Diagonal Detail) IDWT Output Image (Highlighted forged regions) Output Log file No Yes Dilation Approximate = 0 Detail Components (Horizontal, Vertical & Diagonal Detail) Edge Detection Edge? Yes Fake image No paste, no forgery No Output Image Hình 1: Lưu đồ thuật toán nhận diện ảnh giả bằng biến đổi Wavelets VÕ MINH TIẾN - LÊ TIẾN THƯỜNG - HUỲNH KHẢ TÚ - MARIE LUONG 7 Để xử lý dữ liệu hai chiều như ảnh đa mức xám, cần sử dụng các phép biến đổi Wavelets rời rạc hai chiều (2-D). Trong phép biến đổi này, tín hiệu hai chiều S(x, y) được tách thành nhiều tín hiệu một chiều rồi lấy biến đổi Wavelets 1-D trên chúng. Kết quả tổng hợp là biến đổi Wavelets 2-D. Tín hiệu 2D L ↓2 L H ↓2 ↓2 S1 S2 H ↓2 L H ↓2 ↓2 S3 S4 Theo cột Theo hàng Hình 2. Biến đổi Wavelets rời rạc 2-D Gọi x và y là hai trục tọa độ của tín hiệu 2-D, , là hàm tỉ lệ một chiều tương ứng phép lọc thông thấp L và , là hàm tỉ lệ một chiều tương ứng phép lọc thông cao H. Thực hiện phép biến đổi Wavelets 2-D tạo ra một hàm tỉ lệ và ba hàm Wavelets (2) (3) (4) (5) Phân tích đa phân giải, ảnh được tách thành 4 thành phần là thành phần xấp xỉ LL (Approximation), chi tiết ngang LH (Horizontal Detail), chi tiết dọc HL (Vertical Detail) và chi tiết chéo HH (Diagonal Detail). Nếu như thành phần xấp xỉ chứa các thông tin của ảnh ở tần số thấp, thì các thành phần chi tiết chứa các thông tin tần số cao tương ứng với ba chiều ngang, dọc và chéo. Trong một ảnh giả, các đường biên ở vùng cắt dán sẽ có độ sắc nét khác so với những vùng còn lại trên ảnh. Bước tiếp theo của giải thuật sẽ tiến hành tách biên để tìm những vùng khả nghi trên ảnh; khi đó, những vùng có độ sắc nét ở cạnh cao nhất sẽ được xem xét và áp dụng ngưỡng lọc thích hợp để xác định vùng đó là cắt dán hay không [12]. Vì các đường biện thể hiện thành phần tần số cao, nên thuật toán tách biên được áp dụng bằng cách tích chập 3 thành phần chi tiết của ảnh với Prewitt kernel Gx, Gy ứng với trục x, y. (6) Thông thường, các đường biên tại vùng cắt dán sẽ được làm mượt bằng các phần mềm xử lý ảnh; vì vậy, các cạnh còn H THỐNG NHÚNG HI N THỰC THUẬT TOÁN ĐA PHÂN GIẢI CHO ẢNH PHÁP CHỨNG 8 lại sau khi tách và áp dụng ngưỡng sẽ không liên tục. Để tái tạo các cạnh này, phép toán tử hình thái giãn nở sẽ được áp dụng cho các thành phần chi tiết ngang, dọc và chéo. Giãn nở ảnh nhị phân A bởi phần tử cấu trúc B được cho bởi biểu thức: (7) Phần tử cấu trúc B có kích thước 3x3 với tâm nằm ở trung tâm. Hình 3. Phần tử cấu trúc 3x3 Và để phát hiện các phần cắt dán, thì không cần quan tâm thành phần xấp xỉ tần số thấp bằng cách cho thành phần này bằng 0. Do đó, biến đổi Wavelets ngược của 4 thành phần sẽ tạo ra ảnh chỉ có các cạnh và đường biên. Nếu ảnh có bất cứ hình nào được bao bởi các cạnh, thì đó chính là phần giả mạo được dán lên ảnh. Ngược lại, thì ảnh là ảnh thật chưa qua xử lý. 4. Kết quả mô phỏng Hình 4. Ảnh cần giám định Thực hiện mô phỏng giải thuật trên Matlab cho ảnh giả copy – move. Bước 1: Chuyển ảnh sang ảnh xám. Bước 2: Thực hiện đa phân giải ảnh bằng biến đổi Wavelets. Ảnh được tách thành bốn thành phần là thành phần xấp xỉ LL, thành phần chi tiết ngang LH, chi tiết dọc HL và chi tiết chéo HH. Hình 5. Theo thứ tự từ trái qua, từ trên xuống: Ảnh xấp xỉ và ảnh Negative của các thành phần ngang, dọc, chéo Bước 3: Tách biên với một ngưỡng lọc thích hợp và thực hiện toán tử hình thái giãn nở trên từng thành phần chi tiết. Hình 6. Theo thứ tự từ trái qua, từ trên xuống: Ảnh Negative các thành phần chi tiết ngang, dọc và chéo sau khi thực hiện tách biên và giãn nở Bước 4: Thực hiện phép biến đổi Wavelets ngược. Kết quả cho ra ảnh với các cạnh khả nghi được viền đen, phần còn lại của ảnh sẽ có màu trắng. VÕ MINH TIẾN - LÊ TIẾN THƯỜNG - HUỲNH KHẢ TÚ - MARIE LUONG 9 Hình 7. Ảnh Negative sau biến đổi Wavelets ngược Bước 5: Xuất ra ảnh kết quả với phần ảnh giả mạo có các cạnh viền trắng Hình 8. Ảnh kết quả ngõ ra sau khi thực hiện thuật toán 5. Hiện thực trên hệ thống nhúng Phần này trình bày cách thiết lập một hệ thống nhúng Raspberry hoàn chỉnh, các bước cấu hình và kết quả thực hiện giải thuật đa phân giải trên hệ thống. Với ứng dụng không yêu cầu thời gian thực và các phép toán cơ bản, Raspberry Pi 3B – sản xuất năm 2016 được chọn vì tốc độ xử lý khá nhanh với chip ARMv8 quad-core, 64- bit, 1.2GHz, nhỏ gọn và kinh tế. Hình 9. KIT Raspberry Pi 3B Một đặc điểm của Raspberry là nó không sử dụng đĩa cứng hoặc SSD nhằm tối ưu hóa kích thước; thay vào đó board sẽ sử dụng một thẻ nhớ SD để boot và chứa dữ liệu. Tổ chức Raspberry cũng cung cấp hai hệ điều hành để download là Dibian và Arch Linux ARM. Những công cụ này có thể sử dụng Python như ngôn ngữ lập trình chính, đồng thời hỗ trợ BBC BASIC (thông qua RISC OS image hoặc Brandy Basic clone cho Linux), C, Java và Perl. A. Thiết lập hệ thống Hệ thống được thiết lập gồm KIT Raspberry Pi thế hệ 3B đóng vai trò trung tâm, được cấp điện áp 5V qua cổng micro USB. H THỐNG NHÚNG HI N THỰC THUẬT TOÁN ĐA PHÂN GIẢI CHO ẢNH PHÁP CHỨNG 10 Raspberry Pi 3B 4× ARM Cortex-A53 1.2GHz Monitor Mouse Keyboard SD card HDMI USB USB SDIO ETH Hình 10. Sơ đồ kết nối hệ thống Để hoạt động, cần có một thẻ nhớ micro SD 8GB hoặc 16GB chứa một hệ điều hành và đóng vai trò bộ nhớ lưu trữ dữ liệu. KIT được kết nối với một màn hình hiển thị thông qua cổng HDMI, giao tiếp với chuột và bàn phím bằng chuẩn USB. KIT có thể kết nối Ethernet qua cổng RJ45 hoặc wifi 802.11n. Ngoài ra, nó còn có thêm 2 cổng USB để kết nối USB drive và các thiết bị ngoại vi khác. Hình 11. Hệ thống Raspberry Pi thực tế: KIT, monitor, mouse, keyboard Để tiện sử dụng, người dùng có thể tùy chọn cài đặt phần mềm remote desktop như VNC và sử dụng một máy tính hay laptop để điều khiển hệ thống mà không cần thiết bị hiển thị hay chuột, bàn phím B. Các bước cấu hình và hiện thực thuật toán đa phân giải Trong đề tài, Raspberry Pi 3B được cài đặt hệ điều hành Raspbian, là một hệ điều hành không tính phí, phát triển dựa trên hệ điều hành Debian và được tối ưu cho phần cứng Raspberry. Hệ điều hành có hơn 35000 package và phần mềm, hoàn thành vào tháng 6 – 2012, được nén thành một bộ giúp cho việc cài đặt trở nên dễ dàng hơn. Để tiến hành xử lý ảnh trên hệ thống nhúng, cần sử dụng một thư viện mở OpenCV3.0. Thư viện có hơn 2500 thuật toán tối ưu, gồm một tập hợp tổng quát những thuật toán cổ điển và hiện đại về thị giác máy tính và học máy. Những thuật toán này có thể được sử dụng để phát hiện và nhận dạng khuôn mặt, xác định vật thể, phân loại hành động con người trong video, theo dõi hoạt động camera và đối tượng, xác định model 3D của đối tượng, và nhiều thuật toán xử lý ảnh với độ phân giải cao. Chương trình chạy trên Raspberry hỗ trợ xử lý giám định nhiều file ảnh cùng lúc. Khi xử lý xong, chương trình sẽ xuất ra file kết quả dạng text và hiển thị ảnh gốc, ảnh kết quả giám định. Các bước tiến hành được trình bày như sau: Bước 1: Copy ảnh vào một thư mục và tạo một file Input_Image_List.txt chứa danh sách các file ảnh cùng với định dạng cần xử lý. Bước 2: Tạo file code, complie, build và chạy thực thi chương trình bằng cửa sổ command theo trình tự sau.  Tạo file CmakeList.txt có nội dung là đoạn cript chứa thông tin như: version của OpenCV, tên project, tên thư viện, tên file code thực thi, tên file thực thi output, Link thư viện OpenCV.  Tạo file code chương trình.  Complie chương trình bằng lệnh VÕ MINH TIẾN - LÊ TIẾN THƯỜNG - HUỲNH KHẢ TÚ - MARIE LUONG 11 “cmake”. Khi đó, chương trình sẽ tạo ra các file CMakeCache.txt, Makefile, cmake_install.cmake.  Build chương trình bằng lệnh “make”, chương trình sẽ tạo ra file thực thi ImageProcessing.  Thực thi chương trình bằng lệnh “./ImageProcessing”. Bước 3: Xuất ra kết quả và đánh giá. Sau khi thực hiện, chương trình xuất ra file kết quả cho biết những ảnh giả, ảnh thật; số pixel cũng như thời gian xử lý cho từng ảnh. Đồng thời, hiển thị trên màn hình ảnh ngõ ra và ảnh sau khi xử lý với phần giả mạo (nếu có) tô màu trắng. Hình 12. Thực hiện giải thuật trên KIT, kết quả hiển thị trên màn hình C. Kết quả thực hiện Kết quả thực hiện trên Raspberry:  Thực hiện giám định cho ảnh copy – move như mô phỏng Matlab. Hình 13. Ảnh kết quả ngõ ra sau khi thực hiện thuật toán Ảnh kết quả với phần ảnh giả mạo có các cạnh viền trắng.  Thực hiện với ảnh thứ 2. Bằng mắt thường, người xem khó mà phân biệt được đây là ảnh giả hay ảnh gốc. Hình 14. Ảnh ngõ vào xử lý Ảnh kết quả cho thấy chỉ có một phần rất nhỏ là phần cắt dán. Kết quả hoàn toàn chính xác khi so sánh với ảnh gốc. Hình 15. Ảnh ngõ ra với phần cắt dán với màu trắng Thực hiện cùng một thuật toán cho một tập ảnh [3] trên hai máy tính laptop có cấu hình, hệ điều hành, phần mềm khác nhau. So sánh với kết quả thực hiện trên hệ thống nhúng Raspberry Pi 3B. H THỐNG NHÚNG HI N THỰC THUẬT TOÁN ĐA PHÂN GIẢI CHO ẢNH PHÁP CHỨNG 12 Bảng 1. Kết quả thực hiện Cấu hình Laptop 1 (Matlab 2015a) Laptop 2 (Visual Studio 12.0) Raspberry Pi 3B (OpenCV + Cmake) Ghi Chú Vi xử lý Intel Core i5- 5200U @ 2.2GHz Intel Core i3 M330 @ 2.13GHz Broadcom BCM2837, 1.2GHz 64- bit quad- core ARMv8 CPU Bộ nhớ 4GB DDR3L (1600 MHz) 4GB DDR3 1GB LPDDR2 (900 MHz) Hệ điều hành Window 8.1, 64 – bit Window 7, 32 - bit Raspbian Laptop 1 Laptop 2 Raspberry flowers.tiff (536x356) 14 198 41 96.77 CRW_4853 (739x492) 33 457 77 99.87 garden.jpg (500x375) 27 207 34 99.73 Dynamid.jp g (203x150) 3.6 15 3 97.95 2015_01_02 (593x321) 18 186 38 100 SA_MAC_01 (2048x1152) 40 7725 1730 100 SEA_05_00 (2560x1600) 65 16500 3412 100 Trung bình 51829 (pixel/giây) 260 (pixel/giây) 1270 (pixel/giây) 99.36 % Ảnh (size) Thời gian xử lý (giây) Tỉ lệ % giống Kết quả cho thấy, tốc độ xử lý trên hệ thống nhúng Raspberry nhanh hơn gấp 5 lần tốc độ xử lý trên laptop 2 chạy cùng source code, nhưng chậm hơn trên laptop 1 chạy mô phỏng Matlab. Kết quả này hoàn toàn phù hợp vì Laptop 1 có cấu hình mạnh hơn rất nhiều so với Raspberry và phần mềm sử dụng là khác nhau. Tuy nhiên, khi chạy cùng một code, cùng một điều kiện thì hệ thống nhúng Raspberry chứng tỏ khả năng xử lý tốt hơn rất nhiều so với một laptop không chuyên dụng cho xử lý ảnh. Xét về kết quả hình ảnh sau khi xử lý, Laptop 2 và hệ thống Raspberry sử dụng cùng một chương trình với thư viện mã nguồn mở OpenCV, nên kết quả ngõ ra là hoàn toàn giống nhau. Để đánh giá sự sai khác giữa kết quả mô phỏng trên Matlab và kết quả trên Raspberry, cần so sánh tỉ lệ % số pixel giống nhau Neq trên tổng số pixel N của hai ảnh ngõ ra. (8) Thuật toán thực hiện trên Raspberry cho ảnh ngõ ra gần giống như kết quả mô phỏng trên Matlab với tỉ lệ chính xác cao (trên 99%). 6. Kết luận Bài viết giới thiệu hệ thống nhúng Raspberry Pi và các bước hiện thực một thuật toán trên hệ thống nhúng cụ thể. Thuật toán đa phân giải cho ảnh pháp chứng có thể phát hiện cả hai loại ảnh giả copy – move và splicing, nhưng chưa thể phát hiện các ảnh có xử lý tùy chỉnh độ tương phản, histogram và các hiệu ứng khác. Hệ thống nhúng Raspberry có khả năng xử lý các ảnh có độ phân giải khá cao, tốc độ xử lý tương đối nhanh và hoàn toàn giống như kết quả mô phỏng trên Matlab với độ chính xác cao khi thực hiện trên tập nhiều ảnh copy-move và splicing có kích thước khác nhau. Tuy nhiên, khi xử lý những ảnh HD có độ phân giải cao, cũng như trên máy tính, thường mất rất nhiều thời gian để xử lý. Điều này đặt ra thách thức là cần phát triển những hệ thống nhúng đủ mạnh để có thể xử lý được các ảnh này. Thực hiện thuật toán đa phân giải trên hệ thống nhúng Raspberry chỉ là nền tảng bước đầu, việc tìm hiểu, cập nhật các phần cứng mới, chuyên dùng cho xử lý ảnh như NVIDIA Jetson TX1, tích hợp cả CPU (ARM®Cortex®-A57 Quad-Core, tần số 1.73GHz) và GPU 256-core hỗ trợ hệ điều hành Ubuntu Linux x64 (v14.04) là một hướng nghiên cứu của đề tài. Bên cạnh đó, đề tài cũng hướng tới việc tạo ra các giao VÕ MINH TIẾN - LÊ TIẾN THƯỜNG - HUỲNH KHẢ TÚ - MARIE LUONG 13 diện tương tác giúp người dùng dễ dàng tiếp cận và áp dụng vào các lĩnh vực khác nhau. Như vậy, bên cạnh FPGA, Raspberry Pi là một lựa chọn tốt cho các ứng dụng xử lý ảnh thông thường. Hệ thống có giá thành thấp, dễ dàng thiết lập và sử dụng, đặc biệt phù hợp trong môi trường giáo dục. Lời cảm ơn: Nghiên cứu này được hỗ trợ bởi ĐH Quốc Gia TP.HCM, theo mã số B2015-20-02. TÀI LIỆU THAM KHẢO 1. Cellan-Jones, Rory (5 May 2011), "A £15 computer to inspire young programmers", ellanjones/2011/05/a_15_computer_to_inspire _young.html 2. Daggu Venkateshwar Rao, Shruti Patil, Naveen Anne Babu and V Muthukumar, “Implementation and Evaluation of Image Processing Algorithms on Reconfigurable Architecture using C-based Hardware Descriptive Languages”, International Journal of Theoretical and Applied Computer Sciences Volume 1 Number 1 (2006) pp. 9-34. 3. Fourandsix Technologies, Incorporated official website, 4. Jessica Fridrich, David Soukal, and Jan Lukáš, “Detection of Copy-Move Forgery in Digital Images”, Digital Forensic Research Workshop, Cleveland, Ohio, USA, 2003. 5. Neha. P. Raut, Prof.A.V.Gokhale, “FPGA Implementation for Image Processing Algorithms Using Xilinx System Generator”, IOSR Journal of VLSI and Signal Processing (IOSR-JVSP) Volume 2, Issue 4 (May. – Jun. 2013), PP 26-36. 6. Peter Mc Curry, Fearghal Morgan, Liam Kilmartin. Xilinx FPGA implementation of a pixel processor for object detection applications. In the Proc. Irish Signals and Systems Conference, Volume 3, Page(s): 346 - 349, Oct. 2001. 7. Pravin Kakar, Sudla and Wee Ser, “Exposong Digital Image Forgeries by Detecting Deoscrepancies in Motion Blur”, IEEE Transaction on Multimidia, Vol.13, No.3, June 2011. 8. Raspberry Pi Foundation website, https://www.raspberrypi.org/ 9. Tian-Tsong Ng, Shih-Fu Chang, Qibin Sun, “Blind Detection Of Photomontage Using Higher Order Statistics”, ISCAS '04. Proceedings of the 2004 International Symposium on Circuits and Systems, 2004. 10. Tu Huynh-Kha, Thuong Le-Tien, Khoa Huynh-Van, Sy Nguyen-Chi, “A survey on Image Forgery Detection Techniques”, The 11 th IEEE-RIVF International Conference on Computing and Communication Technologies, Can Tho, Vietnam, Jan 25-28 2015. 11. Tu Huynh-Kha, Thuong Le-Tien, Synh Ha- Viet-Uyen, Khoa Huynh-Van, Marie Luong, “A Robust Algorithm of Forgery Detection in Copy-Move and Spliced Images”, (IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 7, No. 3, 2016. 12. Tu H.K., Thuong L.T., Synh H.V.U., Khoa H.V., Nga L.T., "Forgery Detection and Identification of the Original and Duplicate Region in Copy-Move Images", The International Symposium on Electrical and Electronics Engineering, HCMC, Vietnam, Oct 30, 2015. 13. Weiqi Luo, Jiwu Huang, Guoping Qiu, “Robust Detection of Region-Duplication Forgery in Digital Image”, 18th IEEE International Conference on Pattern Recognition, Hong Kong, p. 746 – 749, 2006. 14. XiaoBing KANG, ShengMin WEI, “Identifying Tampered Regions Using Singular Value Decomposition in Digital Image Forensics”, IEEE International Conference on Computer Science and Software Engineering, Wuhan, Hubei, p. 926 – 930, 2008. 15. Y.Sutcu, B.Coskun, H.T.Sencar, N.Memmon, “Tamper detection based on regularity of Wavelets transform coefficients”, IEEE International Conference on Image Processing, 2007. 16. Zhen Fang, Shuozhong Wang, Xinpeng Zhang, “Image Splicing Detection Using Camera Characteristic Inconsistency”, MINES '09. International Conference on Multimedia Information Networking and Security, Hubei, 2009. Ngày nhận bài: 12/12/2016 Biên tập xong: 15/3/2017 Duyệt đăng: 20/3/2017

Các file đính kèm theo tài liệu này:

  • pdf104_9525_2215156.pdf
Tài liệu liên quan