Đăng ký Đăng nhập
Trang chủ ứng dụng công nghệ mang nowrron tế bào vào bài toán lọc nhiễu ảnh...

Tài liệu ứng dụng công nghệ mang nowrron tế bào vào bài toán lọc nhiễu ảnh

.PDF
71
2
78

Mô tả:

i .. ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG ------------------------------------ LĂNG THỊ KHÁNH HẢI ỨNG DỤNG CÔNG NGHỆ MẠNG NƠRON TẾ BÀO VÀO BÀI TOÁN LỌC NHIỄU ẢNH LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Số hóa bởi trung tâm học liệu THÁI NGUYÊN - 2013 http://www.lrc-tnu.edu.vn/ ii ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG LỜI CAM ĐOAN ------------------------------------------Tôi xin cam đoan luận văn này do tôi thực thiện, có sự hướng dẫn tận tình và chu đáo của người hướng dẫn là TS. Vũ Đức Thái. Các nội dung tìm hiểu và kết quả trong luận văn này là những vấn đề mới. Những số liệu trong các bảng biểu, hình ảnh phục vụ cho phân tích, LĂNG THỊviệc KHÁNH HẢInhận xét, đánh giá được thu thập từ các nguồn khác nhau có ghi trong phần tài liệu tham khảo, trong phạm vi hiểu biết của tôi. Nếu phát hiện có bất kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệmỨNG trước Hội đồng,CÔNG cũng nhưNGHỆ kết quả luận văn của mình. TẾ BÀO DỤNG MẠNG NƠRON VÀO BÀI TOÁN LỌC NHIỄU ẢNH Thái Nguyên, ngày 15 tháng 10 năm 2013 Học viên Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 60 48 01 01 Lăng Thị Khánh Hải LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Ngƣời hƣớng dẫn khoa học: TS. VŨ ĐỨC THÁI Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ THÁI NGUYÊN - 2013 iii MỤC LỤC Trang LỜI CAM ĐOAN ............................................................................................ i MỤC LỤC ...................................................................................................... iii DANH MỤC CÁC KÍ HIỆU ......................................................................... v DANH MỤC CÁC CHỮ VIẾT TẮT .......................................................... vi DANH MỤC BẢNG ...................................................................................... vi DANH MỤC HÌNH VẼ ............................................................................... vii MỞ ĐẦU ......................................................................................................... 1 CHƢƠNG 1. TỔNG QUAN VỀ MẠNG NƠRON TẾ BÀO CNN ............ 3 1.1. Sự ra đời và phát triển của CNN và CNN UM ......................................... 3 1.2. Kiến trúc mạng nơ ron tế bào .................................................................. 12 1.2.1. Kiến trúc của CNN tuyến tính .............................................................. 12 1.2.2. Kiến trúc CNN phi tuyến và CNN trễ .................................................. 16 1.2.3. Kiến trúc của CNN nhiều lớp............................................................... 17 1.2.4. Ba lớp CNN tuyến tính đơn giản ......................................................... 17 1.3. Máy tính vạn năng mạng nơ ron tế bào CNN UM .................................. 19 1.3.1. Sự phát triển của máy tính điện tử ....................................................... 19 1.3.2. Máy tính vạn năng mạng nơ ron tế bào CNN UM .............................. 23 1.4. Tình hình nghiên cứu về xử lý ảnh dùng CNN tại Việt Nam ................. 24 CHƢƠNG 2. XỬ LÝ ẢNH DÙNG MẠNG NƠ RON TẾ BÀO ............... 26 2.1. Bài toán xử lí ảnh trên CNN ................................................................... 26 2.1.1. Lọc nhiễu trong xử lý ảnh trên máy tính hệ lệnh tuần tự ..................... 26 2.1.2. Giải pháp công nghệ mới .................................................................... 26 2.2. Sự cần thiết của CNN trong xử lí ảnh .................................................. 27 2.3. Xử lý ảnh dùng PDE ............................................................................... 28 2.4. Xử lý ảnh dùng CNN những kết quả đã đạt được ................................... 29 Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ iv 2.5. Thiết kế mẫu cho mạng nơ ron tế bào ..................................................... 31 2.5.1. Vai trò toán tử, tham số ........................................................................ 31 2.5.2. Bộ mẫu - chương trình máy tính mạng nơron tế bào ........................... 34 2.5.3. Các phương pháp thiết kế mẫu cho CNN ............................................ 38 2.6. Thiết kế mẫu giải các PDE khuếch tán ................................................... 41 2.7. Sử dụng phương trình khuếch tán trong xử lý ảnh trên máy tính hệ lệnh tuần tự ............................................................................................................. 41 CHƢƠNG 3. ỨNG DỤNG CÔNG NGHỆ MẠNG NƠRON TẾ BÀO CHO BÀI TOÁN KHỬ NHIỄU ................................................................. 47 3.1. Bài toán khử nhiễu với CNN ................................................................... 47 3.1.1. Điều kiện biên tiêu biểu cho một CNN ................................................ 47 3.1.2. Quá trình ứng dụng CNN vào bài toán khử nhiễu ............................... 49 3.1.3. Quá trình tìm mẫu bằng phương pháp học........................................... 51 3.2. Mẫu CNN khử nhiễu đề xuất .................................................................. 52 3.3. Cài đặt thử nghiệm, mẫu khử nhiễu ........................................................ 52 3.3.1. Chuẩn bị ............................................................................................... 52 3.3.2. Cài đặt .................................................................................................. 53 3.3.3. Thử nghiệm 01: mẫu DENOISSING CNN 01 .................................... 58 3.3.4. Thử nghiệm 02: mẫu DENOISSING CNN 02 .................................... 59 3.3.5. Thử nghiệm 03: mẫu DENOISSING CNN 03 .................................... 60 3.4. Nhận xét & đánh giá ............................................................................... 61 KẾT LUẬN ................................................................................................... 63 TÀI LIỆU THAM KHẢO ........................................................................... 64 Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ v DANH MỤC CÁC KÍ HIỆU Ý NGHĨA CÁC KÍ HIỆU u, v (in đậm) Ký hiệu cho đại lượng véc tơ trong các phương trình A Mẫu A của mạng nơron tế bào là mẫu liên kết các trọng số hồi tiếp từ đầu ra của các láng giềng của một tế bào Auv là các trọng số liên kết từ lớp u đến lớp v trong kiến trúc mạng nơron tế bào đa lớp. B Mẫu B của mạng nơron tế bào là mẫu liên kết các trọng số đầu vào của các láng giềng của một tế bào Buv là trọng số liên kết của các tế bào từ lớp u đến lớp v trong kiến trúc mạng nơron tế bào đa lớp. z Giá trị ngưỡng của hệ mạng nơron tế bào Toán tử nhân chập xij(t) Giá trị trạng thái của tế bào trong mạng nơron tế bào hai chiều (MxN). uij Điện áp vào tế bào ij xij Điện áp trạng thái của tế bào ij yij Điện áp đầu ra của tế bào ij Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ vi DANH MỤC CÁC CHỮ VIẾT TẮT CNN Công nghệ mạng nơron tế bào (Cellular Neural Network) CNN-UM Máy tính mạng nơron tế bào (CNN-Universal Machine) PDE Phương trình vi phân đạo hàm riêng (Partial Differential Equation): (trong luận văn dùng thuật ngữ tiếng Việt là “phương trình đạo hàm riêng”). ODE Phương trình vi phân thường (Ordinary Deferential Equation) CELL Tế bào FPGA Mảng cổng dạng trường lập trình được (Field Programmable Gate Array). DSP Bộ xử lý tín hiệu số (Digital Signal Processor) fps Số khung ảnh trong 1 giây (frame per second) 1D Một chiều (1 Dimention) 2D Hai chiều (2 Dimentions) 3D Ba chiều (3 Dimentions) Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ vii DANH MỤC BẢNG Bảng 1.1. Kích thước mảng CPU trong chip CNN ........................................... 8 DANH MỤC HÌNH VẼ Trang Hình 1.1. Các mức phần mềm và công cụ sử dụng ngôn ngữ Alpha. .............. 7 Hình 1.2. Eye- RIS .......................................................................................... 10 Hinh 1.3. CNN tiêu chuẩn kích thước MxN .................................................. 12 Hình 1.4. Mạch điện một tế bào ...................................................................... 13 Hình 1.5 Dạng đồ thị hàm ra của một tế bào .................................................. 14 Hình 1.6. Sơ đồ hoạt động của tế bào ............................................................. 15 Hình 1.7. Một số kiểu lưới CNN ..................................................................... 16 Hình 1.8. Cấu trúc hệ thống của một tế bào C(i,j) đầu vào bằng 0. .............. 18 Hình 1.9. cấu trúc hệ thống của một tế bào C(i,j) trung tâm không ghép cặp 19 Hình 1.10. Cấu trúc máy tính CNN-UM ......................................................... 23 Hình 2.1. Mẫu tìm biên và hiệu quả của mẫu ................................................. 37 Hình 2.2. Mẫu thiết lập ngưỡng ...................................................................... 38 Hình 2.3. Sơ đồ các bước thiết kế mẫu theo phương pháp trực tiếp............... 40 Hình 3.1. Mạch thể hiện của điều kiện biên cố định (Dirichlet)..................... 47 Hình 3.2. Mạch thể hiện điều kiện biên Neumann ......................................... 48 Hình 3.3. Mạch thể hiện của điều kiện biên tuần hoàn ................................... 48 Hình 3.4. Mô hình tìm hiểu ứng dụng CNN khử nhiễu .................................. 50 Hình 3.5. Quá trình tìm mẫu bằng phương pháp học ..................................... 51 Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 1 MỞ ĐẦU Xử lý ảnh trong quy mô công nghiệp đã bắt đầ tính chuyên dụ ững máy x . Quá trình số hóa ảnh thực có thể gây nhiễu cho ảnh số. Nhiễu trong ảnh số đa dạng và phức tạp. Ta ngầm hiểu nhiễu là những phần tử ảnh mà giá trị của nó trội so với các phần tử ảnh xung quanh. Xét theo tần số các phần tử nhiễu có tần số cao so với các điểm xung quanh. Tuy nhiên có thể thấy rõ là rất khó phân biệt điểm đặc biệt của ảnh với nhiễu, ví dụ vết nhăn trên quần áo và vết gập của ảnh có trước khi số hóa. Cơ sở để xử lý điểm ảnh bị nhiễ ủa các điểm ảnh lân cận. Thay thế giá trị điểm ảnh cần xử lý bằng tổ hợp các giá trị của điểm ảnh lân cận. Việc thay thế dựa trên giả định là các điểm ảnh lân cận có giá trị gần giống với điểm ảnh cầ ... Mạng nơ ron tế bào (Cellular Neural Network-CNN) là một trong những công cụ xử lý ảnh thời gian thực hiệ ợc quan tâm nghiên cứu rộng rãi trên thế giới do có nhiều ưu điểm trong đó có bản chất xử lý song song. Ảnh số là một mảng số thực hai chiều kích thước MxN trong đó mỗi phần tử ảnh là một tế bào C(i,j) i = 1, 2, . . . , M, j = 1, 2, . . . , N, biểu thị mức xám của ảnh tại các vị trí (i,j) tương ứng. Ảnh được coi là ảnh nhị phân nếu C(i,j) chỉ nhận giá trị 0 hoặc 1. Các đặc trưng của ảnh thường bao gồm các thành phần như: mật độ xám, phân bố xác suất, phân bố không gian. Các ảnh khi thu vào để xử lý trên máy tính nói chung thường không có chất lượng tốt (ngoại trừ chúng được thu trong những điều kiện như phòng thí nghiệm). Trong ảnh ngoài đối tượng chính cần quan tâm còn rất nhiều các đối tượng nhiễu. Các nhiễu làm giảm hoặc nhiều khi làm mất khả năng biểu lộ Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 2 thông tin của đối tượng chính trong ảnh. Có nhiều loại nhiễu như nhiễu cộng, nhiễu nhân, nhiễu xung. Trên thế giới việc nghiên cứu về khử nhiễu vẫn tiếp tục được quan tâm.Trong khoảng 5 năm trở lại đây nghiên cứu về khử nhiễu trong xử lý ảnh chủ yếu là sử dụng các công cụ ứng dụng wavelet, fuzzy… Được sự gợi ý của TS. Vũ Đức Thái và nhận thấy tính thiết thực của vấn đề này, em đã chọn đề tài: “Ứng dụng công nghệ mạng nơ ron tế bào vào bài toán lọc nhiễu ảnh” để làm đề tài luận văn tốt nghiệp của mình. Luận văn gồm 3 chương với các nội dung cơ bản sau: Chƣơng 1. Tổng quan về mạng nơ ron tế bào CNN Chƣơng 2. Xử lý ảnh dùng mạng CNN Chƣơng 3. Ứng dụng công nghệ mạng nơron tế bào cho bài toán lọc nhiễu Mặc dù đã hết sức nỗ lực, song thời gian và kinh nghiệm nghiên cứu khoa học còn hạn chế nên không tránh khỏi những thiếu sót. Em rất mong nhận được sự góp ý của thầy cô và bạn bè đồng nghiệp để hiểu biết của mình ngày một hoàn thiện hơn. Qua luận văn này em xin chân thành cảm ơn TS. Vũ Đức Thái, Trường Đại học Công nghệ thông tin và Truyền thông - Đại học Thái Nguyên đã tận tình giúp đỡ, động viên, định hướng, hướng dẫn em nghiên cứu và hoàn thành luận văn này. Em xin cảm ơn các thầy cô trong Viện Công nghệ thông tin, các thầy cô giáo Trường Đại học Công nghệ thông tin và Truyền thông đã giảng dạy và giúp đỡ em trong hai năm học, cám ơn sự giúp đỡ nhiệt tình của các bạn đồng nghiệp. Thái nguyên, ngày 15 tháng 10 năm 2013 Học viên Lăng Thị Khánh Hải Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 3 CHƢƠNG 1. TỔNG QUAN VỀ MẠNG NƠRON TẾ BÀO CNN Trong chương 1, luận văn có sử dụng một số tài liệu tham khảo sau: [2] ,3] và [6] 1.1. Sự ra đời và phát triển của CNN và CNN UM Máy tính điện tử hoạt động trên cơ sở số nhị phân, tính toán tuần tự do NeumanJanos, Goldstine và Burks phát minh từ năm 1946. Chúng đã được các nhà khoa học, phát minh thế hệ sau hoàn chỉnh và phát triển. Máy tính điện tử, mạng máy tính điện tử đã làm thay đổi bộ mặt của thế giới, làm thay đổi bản chất nhiều hoạt động kỹ thuật, kinh tế, xã hội và là một công cụ hữu ích không thể thiếu được của con người. Năng lực tính toán của máy tính điện tử ngày càng có nhu cầu phải cao hơn do nhu cầu của con người ngày càng cao trong các hoạt động thường ngày, trong các hoạt động khám phá trinh phục tự nhiên. Đã quá nửa thời gian của một thế kỷ trôi qua nhưng kiến trúc và nguyên lý hoạt động của các hệ thống tính toán hiện tại về cơ bản vẫn không có gì khác so với nguyên lý của NeumanJanos đưa ra năm 1946. Việc tăng tốc độ tính toán dựa vào các cải tiến về tốc độ của bộ xử lý trung tâm CPU theo nguyên lý tuần tự tất nhiên sẽ phải dừng lại ở một giới hạn do tính chất vật lý của vật liệu bán dẫn. Mạng Nơron tế bào (Cellular Neural Network), được Leon O. Chua và L.Yang giới thiệu năm 1988 và sau đó máy tính vạn năng tương tự logic CNN UM (CNN Universal Machine) xử lý theo luồng được giới thiệu năm 1992 bởi Leon O. Chua và Tamás Roska là một loại máy tính xử lý song song thật sự, mở ra một hướng mới cho sự phát triển của khoa học tính toán, tiếp cận đến các phương thức xử lý cũng như phương thức cảm nhận và hành động của các tổ chức trong cơ thể sinh vật sống. Các chip CNN thực Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 4 hiện tính toán song song bằng một lệnh duy nhất cho một phép toán. Khi chúng ta đưa một mảng dữ liệu cần xử lý vào đầu vào của CNN và thiết lập bộ trọng số liên kết trong CNN thích hợp thì sau một khoảng thời gian ngắn ngủi là thời gian quá độ của mạch điện (chỉ vài micro giây) chúng ta nhận được mảng dữ liệu đã được xử lý ở đầu ra. Về mặt lý thuyết kích thước của mảng dữ liệu được đưa vào xử lý là không có giới hạn. Về mặt công nghệ hiện tại các chíp CNN thương phẩm đã có hàng vài chục ngàn bộ xử lý trong một chip. Ví dụ chíp ACE16K trong thiết bị Bi-I (được giới thiệu năm 2003) có 128x128=16.384 bộ xử lý, chíp Q-Eye (2006) có 176x144 =25.344 bộ xử lý, chíp 255x255 = 65.025 bộ xử lý đang được nghiên cứu. Những hệ thống kết hợp cảm biến ảnh và CNN cho phép thu và xử lý ảnh đạt tốc độ lên 50.000fps. Các mạng nơron tế bào CNN hiện nay được nghiên cứu đề tạo ra các ứng dụng trong xử lý ảnh nhanh, giải PDE, quan sát đa mục tiêu thời gian thực xây dựng các sản phẩm sinh học. Hướng cứng hóa các mô hình và thuật toán (thuần CNN hoặc lai) sẽ cho phép tạo ra những hệ thống tính toán và xử lý cực mạnh được áp dụng vào kỹ thuật quân sự, nghiên cứu vũ trụ, nghiên cứu sinh học …mà với các hệ xử lý tuần tự chúng ta không thể xây dựng được; đặc biệt là không thể cứng hóa được. Do có nhiều tiềm năng hứa hẹn nên công nghệ mới CNN đã được các nhà khoa học trên thế giới quan tâm nghiên cứu. Việc nghiên cứu phát triển cả về lý thuyết và ứng dụng, cả phần cứng và phần mềm liên quan tới cả những ngành khoa học khác như y học, sinh học. Trên thế giới hiện nay các nước đi đầu, các cơ sở có trung tâm nghiên cứu mạnh chế tạo chíp CNN là Mỹ, Hungary, Tây Ban Nha. Trường đại học Berkeley-Califonia, University of Maryland, Sevilla-Tây Ban Nha, Viện nghiên cứu MTA SzTAKI Budapest – Hungary, công ty Analogic Computer LTD … là các địa chỉ quen thuộc gắn liền với công nghệ CNN. Nội dung của CNN đã được giảng dạy trong trường đại học của nhiều nước. Tại châu Á các nước như Nhật Bản, Đài Loan,Trung Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 5 Quốc cũng là các nước nghiên cứu về CNN. Cho đến nay đã có rất nhiều các cuộc hội thảo quốc tế về CNN (CNNA- Cellular Neural Network and their Applications) với sự tham gia của hàng trăm nhà nghiên cứu về CNN. Các hội thảo gần đây nhất là CNNA 2002 tại Frankfurt, Germany. CNNA 2003 tại Mỹ. CNNA 2004 tại Budapest – Hungary. CNNA 2005 tại Hsinchu (Taiwan), CNNA lần thứ 10 Istanbul – Turkey 2006 , CNNA lần thứ 11 tổ chức vào tháng 11-2008 tại Tây Ban Nha và CNNA lần thứ 12 tổ chức tại California tháng 3-2010. Sau đây là các thành tựu đạt được trong nghiên cứu về CNN. Về lý thuyết Cho đến nay cơ sở toán học cho công nghệ mạng nơ ron tế bào CNN và máy tính tương tự logic CNN UM, các vấn đề cơ bản về độ ổn định của CNN, giới hạn động học, các trạng thái của CNN một lớp đơn hoặc nhiều lớp, vấn đề ổn định của bộ ma trận trọng số liện kết trong mạng nơ ron một lớp, và nhiều lớp đã được hoàn chỉnh, chứng minh chặt chẽ. Một số nguyên tắc xử lý mới dùng CNN như nguyên lý xử lý cặp sóng (twin – wave processing principle) nguyên lý tự thích nghi động phụ thuộc cảm biến (adaptive dynamic content hoặc context dependent sensing) đã được phát triển và ứng dụng. Trên cơ sở nền móng lý thuyết vững chắc này các sản phảm công nghệ đã được phát triển. Phần mềm và thuật toán Máy tính mạng nơron tế bào CNN UM sử dụng phần mềm COS (CNN Operating System) dưới dạng filmwave trong hạ tầng phần cứng. Do là một dạng hệ thống nhúng nên các nhà sản xuất không chú trọng phát triển giao diện với người sử dụng riêng cho CNN UM mà lợi dụng hệ thống PC quen thuộc để thực hiện các thao tác nạp mẫu, hiển thị kết quả xử lý; đây cũng là một điều hợp lý trong sử dụng. Tuy nhiên hiện nay tùy theo yêu cầu cụ thể Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 6 một số hệ thống CNN UM có thể nối thẳng với màn hình giao diện người sử dụng cũng đã được xây dựng. Để mô tả các thuật toán xử lý luồng người ta xây dựng một kiểu mô tả, một kiểu thuật toán mới gọi là biểu đồ luồng (UMF – Universal Machine on Flow). Ngôn ngữ lập trình cho CNN UM cũng được xây dựng thuận tiện cho người sử dụng. Mức thấp nhất là mã máy, tiếp đến là assembly của CNN được gọi là AMC (Analogic Macro Code). Để lập trình ở mức cao có thể sử dụng ngôn ngữ Alpha và bộ dịch tương ứng sản phẩm của Analogical and Neural Computing Labotary and Automation Institute Hungarian Academy of Sciences. Một công cụ hiện đang được sử dụng rộng rãi là công cụ lập trình Code Compose Studio của hãng Texas. Dùng Code Compose Studio (phiên bản hiện nay đang là 3.3) có thể nạp các thuật toán và mẫu vào thiết bị CNN thông qua máy tính PC sử dụng các hệ điều hành quen thuộc như là Window, Linux. Các kết quả của quá trình xử lý trong thiết bị CNN có thể được quan sát trên màn hình máy tính nối với nhau qua mạng Ethernet Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 7 Hình 1.1. Các mức phần mềm và công cụ sử dụng ngôn ngữ Alpha. Cho đến nay các bộ trọng số liên kết cơ sở trong CNN (các mẫu – template) và thuật toán cơ bản đã được các nhà khoa học nghiên cứu về CNN đi trước tìm ra và tập hợp, sắp xếp thành thư viện chuẩn. Thư viện này vẫn có thể được cập nhật thêm các mẫu và các thủ tục. Đến tháng 1-2007 đã có trên 160 bộ mẫu và thủ tục của thư viện được công bố. Phối hợp các mẫu và thủ tục cơ bản này người sử dụng có thể giải quyết nhiều nhiệm vụ tính toán và xử lý song song bằng CNN. Tuy nhiên đây chưa phải là phương thức cho tất cả và trong nhiều trường hợp người sử dụng phải xây dựng các mô hình mới, tìm ra các mẫu mới, xây dựng các thủ tục mới để giải quyết nhiệm vụ tính toán xử lý của mình. Sản phẩm thương mại Các mảng CNN ban đầu thực hiện xử lý song song được thiết kế với các ma trận trọng số liên kết cố định. Ngay lập tức người ta nhận thấy rằng Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 8 điều này thực là bất tiện và các chíp CNN sau này được thiết kế có tính năng thay đổi được giá trị của các ma trận trọng số. Kích thước của các mảng Procesor trong chíp CNN có độ lớn ngày càng tăng xem bảng 1.1 Bảng 1.1. Kích thƣớc mảng CPU trong chip CNN Công Nămra nghệ đời TT Tên chíp Số bộ Processor trong chíp 1 ACE400 20x22 = 440 CMOS 1996 2 ACE4K 64x64 = 4096 CMOS 1999 3 ACE16K 128x128 = 16.384 CMOS 2003 4 Q-Eye 176x144 = 25.344 CMOS 2006 Chip thu nghiem voi loi Falcon PE 5 128x128 = 16.384 FPGA tren board RC203 FPGA cua Xilinx 2008 6 2008 Eye-RIS 176x144 = 25.344 FPGA Sự thực hiện CNN trên phần cứng trong những thời kỳ đầu sử dụng công nghệ CMOS. Trong vài năm gần đây để giảm giá thành sản phẩm và có khả năng tái cấu hình CNN được nghiên cứu để thực hiện trên FPGA. Sự thực hiện CNN bằng quang học, bằng từ cũng đã được nghiên cứu. Với khả năng thu và xử lý ảnh ở tốc độ 10.000fps (đen trắng, xám, màu) năng lực của chíp CNN đã đạt đến mức TeraOPS. Các hệ xử lý ứng dụng công nghệ CNN hiện nay thường được thiết kế với kiến trúc tổ hợp, lai: chíp CNN phối hợp với DSP và các sensor (quang, áp lực, từ tính) đưa trực tiếp các mảng tín hiệu vào chíp CNN như Bi-I V2. Bi-I V2 là một thiết bị camera video thông minh được giải thưởng năm 2002 tại Stutgat-cộng hòa liên bang Đức, xử lý ảnh độc lập thời gian thực. Thiết bị này sử dụng chíp ACE 16K trong chíp này chứa một mảng 128x128 các bộ xử lý tế bào. Các tế bào CNN là loại nhiều lớp (Multy –layer) kết hợp trực tiếp với các senser CCD. Cấu trúc này tương tự cấu trúc sinh học của võng Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 9 mạc mắt người. Con chíp này gồm 16.384 bộ xử lý tế bào làm việc song song. Toàn bộ quá trình hoạt động tính toán của con chíp cung cấp khả năng xử lý hình ảnh kích thước 128x128 lên đến 10.000fps bao gồm cả vào, ra. Các tín hiệu ảnh có thể thu từ sensor CMOS độ phận giải cao 1280x1024 hoặc từ sensor + bộ xử lý ACE 16K có cấu tạo như võng mạc mắt người với 16.384 bộ xử lý tế bào. Việc xử lý song song mảng tín hiệu được thực hiện trong ACE 16K với các kích thước mảng lớn nhất là 128x128. Nếu kích thước mảng tín hiệu lớn hơn 128x128 thì phải sử dụng kỹ thuật Tilling: chia thành các mảng nhỏ hơn 128x128 để xử lý các mảng con này sau đó ghép lại. Việc xử lý trong các bộ DFP là xử lý tuần tự nối tiếp. Bi-I có thể hoạt động trong chế độ độc lập (stand alone), khởi động từ chương trình trong ROM hoặc hoạt động có liên lạc với máy tính PC qua mạng Ethernet hoặc RS232, USB. Các chương trình thực hiện trong ACE 16K là bộ mẫu A, B, z (các bộ ma trận trọng số liên kết giữa các tế bào). Khi đưa một mảng tín hiệu ở đầu vào của ACE16K tương ứng với các đầu ra yêu cầu người ta khởi tạo thiết bị và nạp bộ mẫu, sau đó thực hiện quá trình quá độ. Sau khoảng thời gian quá độ < µs mạng lan truyền và đầu ra thu được kết quả mong muốn. Để xử lý ảnh trên Bi-I (và cả các ứng dụng xử lý song song khác trên Bi-I như quan sát đa mục tiêu có thể dùng ngôn ngữ Alpha (xem hình 1.1) hoặc dùng AMC hoặc dùng Code Compose như đã nói ở trên là bộ ngôn ngữ lập trình cho DSP của hãng Texas Instrucment. Khi sử dụng AMC hoặc Code Compose có thể tham khảo thư viên phát triển phần mềm trên Bi-I. Trong thư viện có giới thiệu các kiểu dữ liệu sử dụng, các kiểu vào ra dữ liệu, các thư viện xử lý ảnh, trích rút đặc điểm, phân loại đối tượng, quan sát đa mục tiêu trên ảnh hoặc video. Thư viện phần mềm InstantVision được sử dụng với phần cứng có DSP loại TMS320C62xx hoặc TMS320C64xx của Texas Instrucment. InstantVision cũng sử dụng được nhiều với platform khác. Thư viện phần mềm InstantVision bao gồm các modul sau: Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 10 + Cấu trúc cơ sở dữ liệu (Data Base) + Module IO, module (IO Components) + Thư viện xử lý tín hiệu và hình ảnh (SILib) + Thư viện phân loại theo đặc trưng (FCLib) + Thư viện đa mục tiêu di động (MTTlib) + Thư viện xử lý dòng tín hiệu và hình ảnh (SIFLib) IVRun là môi trường đồ họa cho các ứng dụng cơ bản chạy trên InstantVision. Các chương trình viết cho Bi-I được soạn bằng Alpha hoặc Code Compose Studio hoặc bằng AMC xong sau đó dịch ra các file tương ứng “.out” hoặc “.abc” sẽ chạy được trên môi trường này. Các kết quả của chương trình: hình ảnh, thông báo, … sẽ hiện trên các cửa sổ IVRun. Người sử dụng có thể thay đổi các kiểu hiển thị của các cửa sổ bằng cách thiết lập thông số trong các menu chọn. Thiết bị CNN UM thương mại mới nhất hiện nay (2008) là Eye-RIS V1.2 sản phẩm tổ hợp của AnaFocus (Tây Ban Nha) và Altera (Mỹ) Hình 1.2. Eye- RIS Eye- RIS là một máy tính vạn năng tương tự logic CNN UM kết hợp camera kết hợp với mảng 25.344 bộ xử lý on chip có thể xử lý ảnh nhị phân, ảnh mức xám và ảnh màu với kích thước (3.5x4.5x8.0 cm), trọng lượng (118g), công suất tiêu thụ cực nhỏ (2.7W). Có thể nói đây là một con mắt công nghiệp có thể được ứng dụng cho nhiều nhiệm vụ xử lý ảnh thời gian thực. Khả năng ứng dụng Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 11 CNN được dùng để xử lý theo luồng các mảng tín hiệu. Do sự xử lý là song song, thực sự chỉ cần một lệnh duy nhất cho cả mảng vài chục ngàn bộ xử lý nên CNN rất thích hợp cho các nhiệm vụ xử lý tín hiệu có khối lượng đồ sộ như xử lý ảnh, video, mảng tín hiệu sensor tiếp xúc, xử lý dữ liệu trong nghiên cứu y học như nghiên cứu về miễn dịch, DNA, giải phương trình vi phân đạo hàm riêng đáp ứng xử lý thời gian thực. Các thiết bị chuyên dụng CNN có thể đạt tốc độ thu và xử lý ảnh đến hàng chục ngàn fps cho phép ứng dụng vào nhiều nhiệm vụ phức tạp trong thực tiễn; nhất là trong công nghiệp và quốc phòng. Sản xuất công nghiệp ngày nay đã đạt tới trình độ tự động hóa cao, tốc độ sản xuất của dây chuyền rất lớn. Thực tế này dẫn tới là nếu có sai lệch trong quá trình sản xuất thì chỉ trong những khoảng thời gian rất ngắn đã có ngay hàng loạt lớn số lượng sản phẩm phế phẩm. Do đó mọi khâu từ kiểm tra giám sát đến điều chỉnh đều phải đáp ứng rất nhanh; đặc biệt là khâu kiểm tra, phát hiện, chẳng hạn kiểm tra các họa tiết của tiền giấy bị lỗi trong quá trình in, phân loại các viên thuốc lỗi trong sản xuất, kiểm tra hàn tự động các đầu nối IC, …các dạng kiểm tra này không cho phép tiếp xúc dụng cụ đo với sản phẩm nên phải áp dụng các phương pháp khác trong đó có thể dùng xử lý ảnh để kiểm tra. Một ví dụ khác sử dụng CNN trong quân sự là quan sát đa mục tiêu di động; có nhiều loại mục tiêu cần xuất hiện, chúng có hành vi di chuyển phức tạp, cần phải bám sát vết các mục tiêu, điều khiển các thiết bị hỏa lực phá hủy đúng mục tiêu đích trong số các mục tiêu đó, …hoặc ví dụ trong y học: xử lý ảnh nhanh được ứng dụng trong nghiên cứu về miễn dịch, quan sát các hoạt động của cơ thể thời gian thực, chế tạo mắt nhân tạo. Ngoài ứng dụng xử lý ảnh tốc độ cao ra công nghệ CNN còn được dùng để tối ưu hóa hệ thống truyền dữ liệu băng thông rộng, giải phương trình vi phân đạo hàm riêng PDE …Sử dụng mô hình tính toán CNN cho phép chúng ta tiếp cận nhiều cơ chế hoạt động sống của thế giới động vật. Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 12 Trong các thiết bị hệ tính toán chuyên dụng người ta thường mong muốn thực thi các mô hình, quá trình tính toán thành phần cứng để tăng tốc độ và đảm bảo tính ổn định của hệ thống. Các mô hình xử lý ảnh tuần tự kinh điển khó có thể triển khai được trên phần cứng. Ngược lại, với cấu trúc xử lý song song hoàn toàn, liên tục theo luồng theo thời gian, với việc cho phép triển khai nhiều mô hình toán học trong cả trường số thực và số phức người ta có thể xây dựng các mô hình CNN một lớp hoặc nhiều lớp trên phần cứng. Khi sử dụng công nghệ FPGA để xây dựng các hệ CNN giá thành của sản phẩm sẽ rất thấp. 1.2. Kiến trúc mạng nơ ron tế bào 1.2.1. Kiến trúc của CNN tuyến tính CNN đơn giản là một mảng các bộ xử lý song song động lực học analog gọi là các tế bào (cell), trong mỗi tế bào chứa các tụ tuyến tính, điện trở tuyến tính các nguồn được điều khiển tuyến tính và không tuyến tính. Định nghĩa 1- láng giềng r: láng giềng r của một cell C(i,j) trong một mạng nơ ron tế bào được đinh nghĩa là Nr(i, j) = {C(k, l)\max{\k- i\, \l - j\} < r, 1 < k < M; 1< l < N } (1.1) trong do r là một số nguyên dương. Sơ đồ mạch điện của mỗi một cell C(i,j) như trong hình 1.3. Hinh 1.3. CNN tiêu chuẩn kích thước MxN Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/ 13 Hình 1.4. Mạch điện một tế bào Trong đó Vxij, Vyij, Vuij là ký hiệu các điện áp trạng thái, đầu ra và đầu vào của một tế bào. Để đơn giản chúng ta sẽ ký hiệu các điện áp này là xij, yij, uij . Điện áp trạng thái xij được giả định với điều kiện khởi tạo có độ lớn nhỏ hơn hoặc bằng 1. Điện áp đầu vào uij được giả định là hằng số với độ lớn nhỏ hơn hoặc bằng 1. Mỗi một tế bào C(i,j) chứa một nguồn điện áp độc lập Eij, một nguồn dòng độc lập Z, một tụ tuyến tính C, hai điện trở tuyến tính Rx và Ry Ixy(i,j;k,l) và Ixu(I,j;k,l) là các nguồn dòng được điều khiển bằng điện áp tuyến tính có đặc điểm Ixy(i,j;k,l) = Aij,klykl và Ixu(I,j;k,l) = Bijklukl với mọi C(k,l)∈ Nr(i,j). Phần tử phi tuyến trong mỗi tế bào là một nguồn dòng được điều khiển bằng điện áp Iyx = (1/Ry)f(xij). Các hệ số Aij,klvà Bij,kl gọi là các hệ số mẫu hồi tiếp và hệ số mẫu điều khiển. Tất cả các tế bào trong CNN được giả định rằng có các thông số bằng nhau theo các chiều (không gian bất biến và đẳng hướng). Hệ thống các phương trình mô tả động lực học của một tế bào CNN hai chiều tuyến tính như sau: Phương trình trạng thái C dvxij (t ) dt 1 vxij (t ) Rx A(i, j; k , l )v ykl (t ) C ( k ,l ) S r ( i , j ) B(i, j; k , l )vukl (t ) I ij (1.2a) C ( k ,l ) S r ( i , j ) với 1 i M ;1 j N Số hóa bởi trung tâm học liệu http://www.lrc-tnu.edu.vn/
- Xem thêm -

Tài liệu liên quan