Bài báo có 4 phần, phần 1 giới thiệu chung, phần 2 giới thiệu khái quát về CNN và ứng dụng trong xử lý ảnh, phần 3 giới thiệu và giải quyết bài toán dò biên gồm: thiết kế mẫu CNN, áp dụng cho bài toàn tìm biên ảnh, tiến hành cài đặt mô phỏng mẫu tìm được trên ngôn ngữ Java. So sánh với kết quả trên Candy cho thấy độ chính xác của ảnh kết quả là tương đương, phần 4 kết luận đánh giá kết quả thực nghiệm, hướng ứng dụng và phát triển cứng hóa thuật toán trên chip.
Vũ Đức Thái Đtg Tạp chí KHOA HỌC & CÔNG NGHỆ 106(06): 139 - 145 THIẾT KẾ MẪU CNN CHO BÀI TỐN TÌM BIÊN ẢNH Vũ Đức Thái1*, Lê Văn Thủy2 Trường ĐH Công nghệ Thông tin & Truyền thông – ĐH Thái Nguyên Đại học Thái Ngun TĨM TẮT Tìm biên ảnh xử lý quan trọng phân tích ảnh kĩ thuật phân đoạn ảnh chủ yếu dựa vào biên Thực tế, nhiều lĩnh vực, yêu cầu máy tính, thiết bị có cơng suất tính toán cực mạnh cấp thiết như: xử lý ảnh động thời gian thực, nhận dạng định vị đa mục tiêu di động an ninh quốc phòng, kiểm tra chất lượng sản phẩm chuyển động nhanh dây chuyền công nghiệp, xử lý chất lượng ảnh siêu âm y tế, chế tạo robot thông minh, chế tạo thiết bị không người lái Mạng nơ ron tế bào CNN với kiến trúc xử lý song song vật lý giúp cho tốc độ xử lý nhanh nhiều so với máy PC Bài báo giới thiệu phương pháp sử dụng công nghệ CNN vào tốn tìm biên ảnh Bài báo có phần, phần giới thiệu chung, phần giới thiệu khái quát CNN ứng dụng xử lý ảnh, phần giới thiệu giải tốn dị biên gồm: thiết kế mẫu CNN, áp dụng cho toàn tìm biên ảnh, tiến hành cài đặt mơ mẫu tìm ngơn ngữ Java So sánh với kết Candy cho thấy độ xác ảnh kết tương đương, phần kết luận đánh giá kết thực nghiệm, hướng ứng dụng phát triển cứng hóa thuật tốn chip Từ khóa: CNN, biên, mẫu, ngưỡng, PDE, láng giềng GIỚI THIỆU Năm 1988, Leon O Chua Lin Yang đưa ý tưởng kiến trúc máy tính mạng nơ ron tế bào CNN (Cellular Neural Network) Trong đó, tác giả nêu nội dung cho mơ hình tính tốn song song, bao gồm kết cấu mạch điện, phương trình tốn học mơ tả hoạt động hệ thống Đồng thời phân tích, chứng minh làm việc ổn định mạng sở toán học, đưa mơ hình mơ thuật tốn với ví dụ cụ thể Cung cấp khái niệm, nguyên tắc bản, làm tảng cho việc nghiên cứu cơng nghệ CNN Năm 1993 máy tính mạng nơron tế bào chế tạo ứng dụng thành công cho số tốn xử lý ảnh tính toán Đến nay, CNN nghiên cứu phát triển ứng dụng rộng rãi nhiều nước với nhiều lĩnh vực xử lý ảnh động, thị giác máy, tính tốn điều khiển Tại Việt Nam có số nghiên cứu ban đầu [1] Hình Máy tính thị giác PC 104 plus* * Hình Máy tính thị giác PC để bàn Tel: 0985 158998; Email: vdcthai@gmail.com 139 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Vũ Đức Thái Đtg Tạp chí KHOA HỌC & CƠNG NGHỆ Một vấn đề trọng tâm nghiên cứu lĩnh vực thị giác máy biên thao tác kĩ thuật phân đoạn ảnh chủ yếu dựa vào biên Nhìn chung mặt tốn học, người ta coi điểm biên ảnh điểm có thay đổi nhanh đột ngột độ xám (hoặc màu) Tập hợp điểm biên liên tiếp tạo thành biên hay đường bao quanh ảnh Để áp dụng CNN vào bào tốn xử lí ảnh (cụ thể tốn tìm biên) cần sử dụng mẫu xử lí Ứng với yêu cầu xử lý cụ thể mẫu xử lí riêng Bài báo giới thiệu số phương pháp để thiết kế mẫu xử lí tiến hành thử nghiệm mẫu KIẾN TRÚC CNN VÀ MƠ HÌNH TỐN HỌC xij ∈ R, yij ∈ R zij ∈ R gọi trạng thái: đầu ra, đầu vào, ngưỡng tế bào C(i,j), A(i, j; k, l) B(i, j; k, l) gọi toán tử phản hồi toán tử dẫn nhập đầu vào Theo Chua Roska, 1993 [6]: A(i, j; k , l ) = A(k , l ; i, j ) , B (i , j ; k , l ) = B ( k , l ; i , j ) xij ( ) ≤ , uij ≤ Để CNN có tính ổn định a ij ∈ A, bij ∈ B, chọn sau: a1 = a9; a2 = a8; a3 = a7; a4 = a6; b = b 9; b = b 8; b = b 7; b = b 6: Phương trình đầu Kiến trúc CNN phương trình mơ tả Theo Leon O Chua L.Yang giới thiệu năm 1988 CNN sử dụng mảng đơn giản tế bào liên kết cục để xây dựng hệ thống xử lý tín hiệu analog mạnh Khối mạch CNN gọi tế bào (tế bào), chứa phần tử mạch tuyến tính phi tuyến bao gồm tụ tuyến tính, điện trở tuyến tính, nguồn điều khiển tuyến tính phi tuyến, nguồn độc lập 106(06): 139 - 145 yij = f ( xij ) = 1 xij ( t ) + − xij ( t ) − 2 (1.2) Điều kiện biên xác định tế bào thuộc hiệu ứng cầu tế bào cạnh nằm mảng kích thước MxN Trạng thái khởi i = 1, 2, , M , j = 1, 2, , N ; tạo x ij (0) , (1.3) Sr(i, j) hiệu ứng cầu tế bào C(i,j) có bán kính r, tất tế bào lân cận thỏa mãn điều kiện sau (r số nguyên dương); Sr (i, j) = C ( k, l ) max { k − i , l − j ≤ r} 1≤k ≤M ,1≤l ≤N (1.4) Hình Kiến trúc mạng CNN MxN Kiến trúc CNN chuẩn mảng có kích thước MxN gồm tế bào C(i,j) với (i = 1, 2,…M, j = 1, 2, , N), bao gồm phương trình toán học sau [2]: Ta thu Sr(i, j) lân cận (2r + l) x (2r +1) (hình 4) Phương trình trạng thái (state equation) xij =− + xij ( t ) Rx ∑ C(k,l)∈Sr (i, j) A(i, j;k,l)ykl ( t ) + ∑ C(k,l )∈Sr (i, j) (1.1) Hình Lân cận B(i, j; k,l)ukl +zij a) Lân cận 3x3 (r=1), b) lân cận 5x5(r=2) Dưới kiểu kiến trúc mạng nơron tế bào xử lý ảnh thông dụng Trong kiến 140 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Vũ Đức Thái Đtg Tạp chí KHOA HỌC & CƠNG NGHỆ 106(06): 139 - 145 ảnh cịn lại đầu output Trong pha xử lý này, ảnh đầu thay đổi ảnh cuối lớp kết tính tốn Trong chip tế bào thị giác, ngồi cấu trúc mạng nơron tế bào, cịn có số kiến trúc thực tính tốn hiệu cao khác tồn trúc này, phần tử xử lý chứa lớp gồm lớp vào lớp Lớp đầu vào cung cấp mối liên kết feed-forward cho lớp đầu Trong lớp đầu ra, có trọng số phản hồi ngược liên tục thời gian từ tế bào lân cận không gian Một mạng nơron tế bào xử lý ảnh CNN khởi tạo với ảnh, ảnh nạp vào đầu vào input, Hình Hệ động lực tế bào CNN Hình Mơ hình kết nối mạng nơron tế bào Mẫu thao tác xử lý CNN Phần ta thấy xuất trọng số A, B, z (A, B gọi toán tử hồi tiếp toán tử điều khiển cịn gọi mẫu vơ tính) kiến trúc CNN Bộ trọng số giúp tạo trạng thái ổn định mạng CNN… Việc xây dựng chương trình chạy CNN xây dựng tập mẫu xử lí thực liên tục Đối với tốn u cầu xử lí lớn ta tiến hành xây dựng thư viện mẫu (hoặc sử dụng thư viện mẫu có sẵn) Hình Mẫu tìm đường xiên hiệu mẫu Hình Mẫu tìm vùng hiệu mẫu A= v/h2 v/h * -4 v/h + 1/R v/h v/h2 B= 0 0 0 0 Z= Hình Mẫu giải phương trình PDE Laplace Phương pháp thiết kế mẫu cho toán ứng dụng [1], [3], [4] Sử dụng mặt nạ kỹ thuật xử lý ảnh truyền thống Dùng mặt nạ sử dụng, kiểm nghiệm trình xử lý ảnh máy tính số mẫu lọc trung bình (average), mẫu co ảnh (erosion), dãn ảnh (dilation), Trong mạng CNN mặt nạ sử dụng làm ma trận cho phép thực phép biến đổi tương đương 141 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Vũ Đức Thái Đtg Tạp chí KHOA HỌC & CƠNG NGHỆ 106(06): 139 - 145 • EDGE: Mẫu tìm biên nhị phân A= 0 0 0 0 B= -1 -1 -1 -1 -1 -1 -1 -1 Z= -1 B sử dụng mặt nạ Laplace Phương pháp hệ thống dùng bảng logic Đây phương pháp xác định mẫu không liên kết cho ứng dụng xử lý ảnh nhị phân Bảng logic mã hoá với giá trị {0, 1} tức trắng đen, ngồi cịn mã hố liệu nhị phân TRUE(1), FALSE(-1) DON'T CARE(0) Khi thiết kế mẫu CNN để thực hàm logic Fk (.) cho, thường sử dụng mẫu không liên kết mã hoá diễn tả sau: A= 0 0 a 00 ≥ 0 0 Bk = Phân tích hoạt động CNN để tìm mẫu Theo phương pháp để tìm tập mẫu trước hết cần phảỉ phân tích mơ tả hoạt động mẫu thành tác vụ chi tiết - Các luật cục (local rule) sau dựa vào phương trình trạng thái đồ thị quan hệ biến trạng thái đạo hàm bậc (đồ thị DP) để xác định mẫu Kỹ thuật thiết kế fuzzy Lý thuyết tập mờ logic mờ (fuzzy sets and fuzzy logic) giáo sư Lofti Zadeh công bố năm 1965 Logic mờ thiết kế để làm việc với kiện khơng xác Mặc dù không hầu hết cộng đồng nghiên cứu ủng hộ phát triển lý thuyết, logic mờ áp dụng có nhiều thành cơng thực tiễn hệ thống điện ô tô, máy điều hoà nhiệt độ, thang máy, máy giặt, máy rửa bát, lọc ngôn ngữ, xử lý ảnh số, Logic mờ áp dụng thiết kế mẫu phục vụ cho tác vụ CNN Thiết kế mẫu dùng giải thuật di truyền Thuật giải di truyền (Genetic algorithms GA) có đặc điểm thích hợp với toán dạng tối ưu Bản chất giải thuật di truyền giải thuật tìm kiếm ngẫu nhiên có định hướng (hàm thích nghi) Thuật gen có khả kiểm tra hết trường hợp tốn, kiểm tra Định hình dạng mẫu Tạo hệ thống quy luật quan hệ w-1,-1 w-1,0 w-1,1 w0,-1 w0,0 w0,1 w1,-1 w1,0 w1,1 Z (*) ngẫu nhiên có định hướng; khác với phương pháp vét cạn tất trường hợp Có thể xem thuật gen phương pháp khám phá Thuật giải di truyền không quan tâm đến nội dung toán mà cần quan tâm đến vấn đề cần giải tốn Vì GA giải thuật ngẫu nhiên nên xác định hàm phân bố ngẫu nhiên tốn việc giải tốn dễ dàng Các giải thuật leo đồi, luyện thép áp dụng để tìm kiếm mẫu Tuy nhiên giải thuật di truyền cho kết tối ưu giá thành tính tốn đắt (Số lượng phép tính lớn) Mặc dù kỹ thuật tìm kiếm giải pháp dựa việc mơ q trình tiến hố tự nhiên nên kỹ thuật nhà nghiên cứu CNN áp dụng để tìm kiếm, thiết kế mẫu Phương pháp thiết kế mẫu trực tiếp Đây phương pháp dùng thiết kế mẫu cho xử lý ảnh nhị phân Ákos Zarándy đề xuất Phương pháp sử dụng để thiết kế mẫu nhiệm vụ yêu cầu xác định xác Các mẫu tìm loại cho mạng CNN ghép cặp khơng ghép cặp Trình tự tiến hành thiết kế mẫu theo phương pháp trực bước hình: Giải hệ thống quy luật quan hệ Chọn mẫu mạnh Hình 10 Sơ đồ bước thiết kế mẫu theo phương pháp trực tiếp 142 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Vũ Đức Thái Đtg Tạp chí KHOA HỌC & CƠNG NGHỆ ỨNG DỤNG CNN VÀO BÀI TỐN TÌM BIÊN ẢNH Quy trình phát biên Điểm biên có thay đổi nhanh đột ngột mức xám (hoặc màu) Việc thực tìm biên xử lí ảnh truyền thống cài đặt máy PC thường thực điểm ảnh kết hợp sử dụng toán tử làm biên Do thời gian xử lý tổng thời gian xử lý cho điểm ảnh Với công nghệ CNN, điểm ảnh xử lý chip mạng CNN, q trình thực xử lí tồn ảnh xảy song song Tốc độ xử lý tốc độ xử lý cho điểm ảnh Để ứng dụng CNN, nhóm nghiên cứu tiến hành áp dụng phương pháp thiết kế mẫu, sử dụng quy trình học mẫu để tìm mẫu cho việc tìm biên ảnh (mẫu EDEG EXTRACTION) Thử nghiệm đánh giá a Thử nghiệm: • Quá trình tìm mẫu phương pháp học [5]: 106(06): 139 - 145 B1 Nạp ảnh đầu vào; B2 Đưa yêu cầu xử lí (ví dụ làm mờ, dị biên, dãn ảnh…); B3 Thực xử lý logic analogic để tìm mẫu; B4 Thực thiện xử lí song song với tìm được; B5 Đánh giá kết thu được, đầu chưa hội tụ đến đầu biên lí tưởng tiến hành quay trở lại bước đạt mẫu CNN tối ưu (Mẫu EDEG EXTRACTION) Sau tìm mẫu tối ưu mạng ta áp dụng thực xử lý cho ảnh đầu vào nào, thuật toán sau: Bước 1: Nạp ảnh đầu vào Bước 2: Nạp mẫu xử lý (tùy yêu cầu xử lý để nạp mẫu thích hợp) Bước 3: Chạy chương trình Bước 4: Đưa kết xử lý Nhóm tiến hành thử nghiệm tìm mẫu chạy chương trình số dạng ảnh, kết sau: Candy Java Simulation Hình 12 Ảnh đầu vào Hình 11 Quy trình tìm mẫu phương pháp học Thử nghiệm 1: mẫu chuẩn CNN EDEG A= Kết (1): 0 0 0 0 B= -1 -1 -1 -1 -1 -1 -1 -1 Candy T = 2s Z= -1 Java Simulation T = 2s 143 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Vũ Đức Thái Đtg Tạp chí KHOA HỌC & CƠNG NGHỆ 106(06): 139 - 145 Thử nghiệm 2: với mẫu đề xuất CNN EDEG EXTRACTION A= 0 0 0 0 -1 -1 -1 -1 -1 -1 -1 Candy T = 1.8 s Kết (2): Z= -3 Java Simulation T = 2.1 s Z = -3 Input (EDEG EXTRACTION) Input (EDEG EXTRACTION) B= -1 Z = -1 Z = -3 Z = -1 Z=0 Z=0 Hình 13 Kết thu sau thay đổi giá trị I b Đánh giá • Với mẫu CNN EDEG: Kết quả, thời gian thực giống nhau, chất lượng đường biên thu tốt Điều cho thấy chương trình cài đặt mơ Java làm việc có hiệu Tuy nhiên, với mẫu EDEG hiệu biên thu đường chéo khơng tốt kết thực với mẫu EDEG EXTRACTION • Với mẫu đề xuất CNN EDEG EXTRACTION: đường biên thu tốt hơn, thời gian thực tương đối giống Thu kết biên đường chéo tốt • Với mẫu (A,B,z) ta tao nhiều kết để lựa chọn, đơn giản cách thay đổi giá trị z KẾT LUẬN Bài báo giới thiệu vai trò, tác dụng biên q trình xử lí ảnh, cần thiết phương pháp xử lý ảnh song song Thông qua kiến trúc mạng CNN sở tốn học Tiến hành tìm hiểu phương pháp thiết kế mẫu (A, B, z) Giới thiệu mẫu chuẩn, mẫu đề nghị EDEG EXTRACTION áp dụng vào tốn dị biên ảnh thơng qua việc tiến hành thử nghiệm, đánh giá so sánh kết với Candy thì: ưu điểm tốc độ xử lí nhanh, biên thu có độ 144 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Vũ Đức Thái Đtg Tạp chí KHOA HỌC & CƠNG NGHỆ xác cao Tuy nhiên cịn hạn chế, tiến hảnh thử nhiệm với ảnh hai chiều trạng thái đầu vào mã hóa theo mã nhị phân, ảnh đa cấp xám, mô máy tính PC (u cầu máy có cấu hình từ Pentium cài đặt jdk 1.6 trở lên) Trong thời gian tới, tiếp tục tìm hiểu phương pháp cơng nghệ xử lý song song cho thao tác dị biên ảnh, nâng cao tốc độ xử lý ảnh ứng dụng tốn thời gian thực, cấu hình chip FPGA có tài nguyên lớn cho tốn Giải vấn đề tìm mẫu tối ưu để đạt độ xác cao mở rộng lớp kết quả, chế tạo mơ hình làm việc để đưa vào ứng dụng thực tế xử lí ảnh có kích thướng lớn Hiện nay, có nhiều thư viện mẫu CNN nạp thay đổi cách dễ dàng từ máy tính PC sử dụng hệ điều hành Nhưng việc mở rộng, tìm Mẫu vấn đề mấu chốt CNN nhà nghiên cứu giới dành thời gian nghiên cứu phục vụ cho yêu cầu xử lý ngày đa dạng thực tiễn 106(06): 139 - 145 TÀI LIỆU THAM KHẢO [1] Phạm Thượng Cát (2007), “Hợp tác nghiên cứu phát triển hệ thống xử lý ảnh nhanh sở áp dụng công nghệ mạng Nơron phi tuyến”, Báo cáo tổng kết đề tài Nghị định thư, Tr 34 - 35, 39 - 44, 71 - 80 [2] Tạ Thị Kim Huệ (2011), “Nghiên cứu mạng nơron tế bào (CNN) ứng dụng xử lý tách biên”, 04/2011, Tr 3-4 [3] Phạm Đức Long (2011), Phát triển số thuật toán xử lý ảnh sử dụng mạng Nơron tế bào, luận án tiến sĩ Toán học, Tr 20 - 21, 69 - 75 [4] Vũ Đức Thái (2011), Nghiên cứu ứng dụng công nghệ mạng nơ ron tế bào CNN vào việc giải phương trình vi phân đạo hàm riêng, Luận án tiến sĩ Toán học, Tr 15-16, 37 [5] Alper Basturk, Enis Gunay (2009), “Efficient edge detection in digital images using a cellular neural network optimized by differential evolution algorithm”, Expert Systems with Applications 36 (2009) 2645–2650 [6] Analogic Computer Ltd http://www.analogiccomputer.com [7] http://wwwinst.eecs.berkeley.edu/~ee129/ [8] http://www.ce.unipr.it/research/pardis/CNN/c nn.html [9] http://www.analogic-computers.com [10] http://www2.syscon.com/itsg/virtualcd/java/archives/0705/heaton/ index.html SUMMARY DESIGN TEMPLATES FOR IMAGE EDGE DETECTING Vu Duc Thai1∗, Le Van Thuy2 College of Information and Communication Technology - TNU Thai Nguyen University Edge detecting of an image is the most important process in image analyzing because many application problems base on edge In practice, lost of image processing like dynamic process; real time process; recognition in determining position of motivable multitargets in security, military; testing the quality of product of in-line producing; process radical image in medical; control interactive activities in smart robot…need to have useful tool for processing in high speed Cellular Neural network with parallel architectures can process mentioned edge detecting problem much faster than conventional method This paper introduces the applying of CNN for edge detecting problem, it is divided in to parts Part Introduction; part overview the basic knowledge of CNN used in image processing; part gives the problem and solution for solving consist of algorithm and program; in the last part gives conclusion and developing trends Key words: CNN, edge, template, throttled, PDE, neighbor Ngày nhận bài: 12/6/2013; Ngày phản biện: 20/7/2013; Ngày duyệt đăng:26/7/2013 ∗ Email: vdcthai@gmail.com, Tel: 0985 158998 145 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ... cứu CNN áp dụng để tìm kiếm, thiết kế mẫu Phương pháp thiết kế mẫu trực tiếp Đây phương pháp dùng thiết kế mẫu cho xử lý ảnh nhị phân Ákos Zarándy đề xuất Phương pháp sử dụng để thiết kế mẫu. .. lý tốc độ xử lý cho điểm ảnh Để ứng dụng CNN, nhóm nghiên cứu tiến hành áp dụng phương pháp thiết kế mẫu, sử dụng quy trình học mẫu để tìm mẫu cho việc tìm biên ảnh (mẫu EDEG EXTRACTION) Thử... DỤNG CNN VÀO BÀI TỐN TÌM BIÊN ẢNH Quy trình phát biên Điểm biên có thay đổi nhanh đột ngột mức xám (hoặc màu) Việc thực tìm biên xử lí ảnh truyền thống cài đặt máy PC thường thực điểm ảnh kết