Hệ thống nhúng hiện thực thuật toán đa phân giải cho ảnh pháp chứng
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.
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
File đính kèm:
- he_thong_nhung_hien_thuc_thuat_toan_da_phan_giai_cho_anh_pha.pdf