BỘ GIÁO DỤC VÀ ĐÀO TẠO
VIỆN KH&CN VIỆT NAM
VIỆN CÔNG NGHỆ THÔNG TIN
Phạm Đức Long
PHÁT TRIỂN MỘT 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
HÀ NỘI 10 - 2011
BỘ GIÁO DỤC VÀ ĐÀO TẠO
VIỆN KH&CN VIỆT NAM
VIỆN CÔNG NGHỆ THÔNG TIN
Phạm Đức Long
PHÁT TRIỂN MỘT SỐ
THUẬT TOÁN XỬ LÝ ẢNH
SỬ DỤNG MẠNG NƠRON TẾ BÀO
Chuyên ngành: Bảo đảm toán học cho máy tính
và hệ thống tính toán
Mã số:
62 46 35 01
LUẬN ÁN TIẾN SĨ TOÁN HỌC
NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS, TSKH Phạm Thượng Cát
PGS TS Ngô Diên Tập
HÀ NỘI 10 - 2011
LỜI CẢM ƠN
Được sự chỉ bảo tận tình của các Thày, Cô giáo trong Viện Công nghệ thông tinViện Khoa học và Công nghệ Việt Nam đặc biệt là Thày giáo PGS TSKH Phạm
Thượng Cát và Thày giáo PGS TS Ngô Diên Tập, bằng sự nỗ lực của bản thân tôi
đã hoàn thành bản luận án này. Tôi xin chân thành cảm ơn sự chỉ bảo, giúp đỡ của
các Thày, Cô. Tôi cũng gửi lời cảm ơn tới Ban giám hiệu Trường Đại học Công
nghệ thông tin và Truyền thông Thái Nguyên đã hỗ trợ, tạo điều kiện cho tôi trong
thời gian học tập. Tôi xin cảm ơn các bạn đồng nghiệp trong Trường đã luôn động
viên, khích lệ tôi. Cảm ơn những người thân trong gia đình về những hỗ trợ và động
viên tôi trong những năm tháng dài cố gắng học tập .
Hà Nội ngày 10 tháng 10 năm 2011
Nghiên cứu sinh
Phạm Đức Long
LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của tôi dưới sự hướng dẫn khoa học
của PGS TSKH Phạm Thượng Cát và PGS TS Ngô Diên Tập. Các số liệu và kết
quả nêu trong luận án là trung thực và chưa từng được công bố trong bất kỳ sản
phẩm khoa học nào khác.
1
MỤC LỤC
Trang
CHƯƠNG 1: MỞ ĐẦU
1.1. Tổng quan về xử lý ảnh dùng mạng nơron tế bào CNN
1.1.1 Tình hình nghiên cứu trên thế giới
9
10
a). Lọc nhiễu trong xử lý ảnh trên máy tính hệ lệnh tuần tự
10
b). Sự ra đời và phát triển của CNN và CNN UM
12
c). Xử lý ảnh dùng CNN
20
1.1.2 Tình hình nghiên cứu về xử lý ảnh dùng CNN trong nước.
22
1.2. Mục đích đối tượng và phạm vi nghiên cứu của đề tài.
23
1.3. Phương pháp nghiên cứu
24
1.4. Ý nghĩa khoa học và thực tiễn của đề tài
24
CHƯƠNG 2: MẠNG NƠ RON TẾ BÀO CNN VÀ LỌC NHIỄU
TRONG XỬ LÝ ẢNH
2.1. Kiến trúc của CNN
2.1.1. Kiến trúc của CNN tuyến tính.
25
2.1.2. Kiến trúc CNN phi tuyến và CNN trễ
28
2.1.3. Kiến trúc của CNN nhiều lớp
29
2.1.4. Ba lớp CNN tuyến tính đơn giản.
29
2.2. Một số vấn đề cơ bản của CNN
2.2.1. Giới hạn động lực học của CNN
32
2.2.2. Độ ổn định của CNN.
32
2.2.3. Ba kiểu điều kiện biên tiêu biểu cho một CNN
35
2.2.4. Thiết kế mẫu cho mạng nơ ron tế bào
36
a). Bộ mẫu – chương trình máy tính mạng nơ ron tế bào
36
b). Các phương pháp thiết kế mẫu cho CNN
40
2.2.5. Thiết kế mẫu giải các PDE khuếch tán
41
2.3. 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
2
a). Khuếch tán đẳng hướng (isotropic)
42
b). Khuếch tán dị hướng (anisotropic)
42
c). Khuếch tán với thành phần phức
45
2.4. Một số mô hình CNN một lớp và hai lớp đã được đề xuất
2.4.1. Mô hình CNN 1 lớp lọc nhiễu
49
a). Mô hình CNN một lớp số thực giải phương trình truyền nhiệt
49
b). CNN một lớp thực hiện bộ lọc phức của Gabor
50
2.4.2. Mô hình CNN hai lớp của Zonghuang Yang, Yoshifumi
và Akio Ushida
51
CHƯƠNG 3: PHÁT TRIỂN MỘT SỐ THUẬT TOÁN XỬ LÝ ẢNH
XỬ LÝ SONG SONG DÙNG CÔNG NGHỆ MẠNG NƠRON TẾ BÀO
3.1. Thuật toán lọc nhiễu dùng CNN với khuếch toán phức
53
3.1.1. Mô hình CNN thực hiện PDE khuếch tán tuyến tính phức
53
3.1.2. Mô hình CNN khuếch tán phi tuyến phức
63
3.1.3 Độ chính xác của phương pháp
69
3.2. Thuật toán lọc nhiễu SHOCK dùng CNN.
69
3.2.1. Bộ lọc shock
69
3.2.2. Thuật toán lai dùng CNN tăng tốc độ cho bộ lọc shock
74
3.2.3. Xem xét sự thực hiện của thuật toán
77
3.3. Thuật toán lọc nhiễu đốm SRAD dùng CNN
79
3.3.1. Lọc nhiễu đốm SRAD
79
3.3.2. Mô tả thuật toán dùng CNN
83
3.3.3. Đánh giá tính hội tụ và hiệu quả của thuật toán
87
3.4. Thuật toán phục hồi ảnh đối xứng thời gian thực
88
CHƯƠNG 4: MỘT SỐ KẾT QUẢ THỰC NGHIỆM
VÀ MÔ PHỎNG KIỂM CHỨNG
4.1. Thực nghiệm thuật toán lọc nhiễu shock
4.1.1. Mô tả thực nghiệm
93
4.1.2. Kết quả và đánh giá so sánh với các phương pháp khác
94
3
4.2. Mô phỏng thuật toán lọc nhiễu đốm SRAD
4.2.1. Mô tả bài toán mô phỏng
99
4.2.2. Kết quả và đánh giá so sánh với các phương pháp khác
99
4.3. Thực nghiệm xử lý ảnh thời gian thực trên CNN UM
4.3.1. Thực nghiệm thuật toán phục hồi ảnh đối xứng thời gian thực
99
a). Mô tả thực nghiệm
99
b). Kết quả và đánh giá so sánh với các phương pháp khác
101
4.3.2. Thực nghiệm nhận dạng tốc độ cao.
102
a). Mô tả thực nghiệm
102
b). Kết quả và đánh giá so sánh với các phương pháp khác
110
4.4. Hướng ứng dụng các kết quả nghiên cứu trong công nghiệp
110
KẾT LUẬN
Tóm tắt các nội dung nghiên cứu chính
111
Các kết quả mới của luận án
112
Kiến nghị về những nghiên cứu tiếp theo
112
Danh mục các công trình đã công bố
114
TÀI LIỆU THAM KHẢO
116
4
Danh mục các hình vẽ
Hình 1.1
Các mức phần mềm và công cụ sử dụng ngôn ngữ.
Hình 1.2
Cấu tạo của thiết bị Bi-iV2
Hình 1.3
Thiết bị Eye-RIS
Hình 2.1
CNN tiêu chuẩn kích thước MxN.
Hình 2.2
Mạch điện một cell.
Hình 2.3
Hàm đầu ra Piecewise với phương trình 2.1b
Hình 2.4
Sơ đồ hoạt động của cell.
Hình 2.5
Một số kiểu lưới CNN.
Hình 2.6
Cấu trúc hệ thống của cell zero-feedback.
Hình 2.7
Cấu trúc hệ thống của một CNN zero-input.
Hình 2.8
Cấu trúc hệ thống của một cell trung tâm không ghép cặp.
Hình 2.9
Sáu kiểu hệ số của mẫu A 3x3 cho phép CNN ổn định.
Hình 2.10
Đồ thị DP.
Hình 2.11
Giải thích bằng mạch điện của điều kiện tế bào biên cố định
(Dirichlet).
Hình 2.12
Giải thích bằng mạch điện các tế bào biên kiểu Neumann.
Hình 2.13
Giải thích bằng mạch điện các tế bào biên kiểu Periodic.
Hình 2.14
Mẫu tìm biên và hiệu quả của mẫu.
Hình 2.15
Mẫu thiết lập ngưỡng (Threshold).
Hình 2.16
Tách thu hồi ảnh nguyên bản.
Hình 2.17
Tác dụng của mẫu Hollow.
Hình 2.18
Sơ đồ các bước thiết kế mẫu theo phương pháp trực tiếp.
Hình 2.19
Khuếch tán phức tuyến tính trên ảnh màu 256x216.
Hình 2.20
Biên dốc và biên bước.
Hình 2.21
Quan hệ giữa biên dốc và biên bước và các đạo hàm.
Hình 2.22
Khuếch tán phức của ảnh người chụp ảnh với θ nhỏ.
Hình 2.23
Khuếch tán phức của ảnh cameraman với θ lớn.
Hình 2.24
Làm mờ một ảnh bằng CNN.
Hình 2.25
Thực hiện bộ lọc Gabor phức.
.
5
Hình 2.26
Tách đôi đối tượng thành hai nửa dùng CNN 2 lớp.
Hình 2.27
Tìm xương đối tượng bằng mạng CNN hai lớp.
Hình 3.1
CNN 2 lớp 2D giải phương trình khuếch tán.
Hình 3.2
Tương tác giữa hai lớp CNN thực và ảo.
Hình 3.3
Quan hệ trạng thái và hàm đầu ra.
Hình 3.4
Khuếch tán phức phi tuyến trên một ảnh y học.
Hình 3.5
Khuếch tán phức phi tuyến trên một ảnh phong cảnh.
Hình 3.6
Tác dụng của bộ lọc shock.
Hình 3.7
Ảnh hưởng của nhiễu đến bộ lọc shock.
Hình 3.8
Sơ đồ quy ước các phần tử điểm ảnh.
Hình 3.9
Thuật toán thực hiện bộ lọc shock theo phương pháp lai.
Hình 3.10
Biểu đồ DP của CNN tính Ipx.
Hình 3.11
SRAD tám hướng.
Hình 3.12
Thuật toán lai giảm nhiễu đốm.
Hình 3.13
Sơ đồ khối của thuật toán khôi phục ảnh 2D đối xứng bằng
CNN.
Hình 3.14
Biểu đồ xử lý luồng ảnh.
Hình 3.15
Ảnh X0 .
Hình 3.16
Quay P1 1800 quanh trục Oz để nhận được P2.
Hình 4.1
Sơ đồ thực nghiệm shock trên Bi-I
Hình 4.2
Kết quả thực nghiệm bộ lọc shock trên Bi-I
Hình 4.3
Thực hiện bộ lọc shock trên ảnh xám thu trực tiếp từ camera
CNN UM Bi-I
Hình 4.4
Thực hiện bộ lọc shock trên ảnh SAM3
Hình 4.5
Thực hiện bộ lọc shock trên ảnh tháp Rùa.
Hình 4.6
Hệ thống thử nghiệm khôi phục ảnh đối xứng thời gian thực
Hình 4.7
Các ảnh bị phá huỷ trên đĩa quay dùng cho thử nghiệm.
6
Hình 4.8
Màn hình chương trình và các ảnh nguyên thuỷ sau khi khôi
phục.
Hình 4.9
Đĩa gắn mũ ốc.
Hình 4.10
Mô hình thí nghiệm.
Hình 4.11
Thuật toán xử lý chính.
Hình 4.12
Quá trình xử lý ảnh: một số tác vụ trong ACE16K, một số
tác vụ trong DSP.
Hình 4.13
Ảnh thu được qua camera.
Hình 4.14
Chi tiết thực hiện bước 2.
Hình 4.15
Ảnh sau bước 2.3.
Hình 4.16
Ảnh sau bước 2.4 và 2.5.
Hình 4.17
Ảnh thu được qua các bước tiền xử lý.
Hình 4.18
Mẫu tìm tâm đối tượng.
Hình 4.19
Các ảnh thu được lớn dần.
Hình 4.20
Trục elip ảo của đối tượng.
Hình 4.21
Giao diện chương trình chính.
Danh mục các bảng
Bảng 1.1
Kích thước mảng CPU trong chip CNN tăng theo thời gian.
Bảng 4.1
Hiệu quả xử lý của một số bộ lọc shock.
Bảng 4.2
Tỷ lệ số phép toán thực hiện song song khi sử dụng thuật toán
lai.
Danh mục các ký hiệu, viết tắt
*
Phép chập cuộn
x
Phép nhân
∆
Toán tử Laplace
div(.)
Toán tử Divergence
∇
Toán tử Gradient
A
Ma trận trọng số hồi tiếp
B
Ma trận trọng số dẫn nhập
Z
Dòng ngưỡng của CNN
7
I
Độ sáng của điểm ảnh
IR
Thành phần thực của I.
II
Thành phần phức của I.
Ix
Đạo hàm bậc nhất theo hướng x của I.
Ixx
Đạo hàm bậc hai theo hướng x của I.
Ixxx
Đạo hàm bậc ba theo hướng x của I.
ℑ
Trường số phức.
ℵ
Trường số nguyên.
ℜ
Trường số thực.
uij
Điện áp vào cell ij.
xij
Điện áp trạng thái cell ij.
yij
Điện áp đầu ra cell ij.
c
Hệ số dẫn trong phương trình khuếch tán.
ADC
Bộ chuyển đổi tín hiệu tương tự thành tín hiệu số (Analog
Digital Converter).
CCD
Các sensor cặp tích điện (Charge Coupled Device).
CMOS
Công nghệ ô xit bán dẫn kim loại (Complementary Metal
Oxide Semiconductor).
CNN
Mạng nơ ron tế bào (Cellular Neural Network).
CNN UM
Máy tính vạn năng tương tự lo gic (CNN Universal Machine).
DC
Dòng điện một chiều (Direct Current).
DSP
Bộ xử lý tín hiệu số (Digital Signal Processor).
fps
Số khung ảnh trong 1 giây (frame per second).
FPGA
Mảng cổng dạng trường lập trình được (Field Programmable
Gate Array).
1D
Một chiều (1 dimention).
2D
Hai chiều (2 dimentions).
3D
Ba chiều (3 dimentions).
KCL
Định luật Kiếc hốp về dòng điện (Kirhof Cỉcuit Law).
MRI
Ảnh cộng hưởng từ (Magnetic Resonance Imaging).
8
NN
Mạng nơ ron (Neural Network).
ODE
Phương trình vi phân thường (Ordinary Differential
Equation).
PDE
Phương trình vi phân đạo hàm riêng (Partial Differential
Equation).
PSNR
Tỷ lệ tín hiệu đỉnh trên nhiễu (Peak Signal-to-Noise Ratio)
SAR
Ảnh tổng hợp Radar (Synthetic Aperture Radar).
SNR
Tỷ lệ tín hiệu trên nhiễu (Signal-to-Noise Ratio)
SRAD
Khuếch tán không đẳng hướng giảm nhiễu đốm (Speckle
Reducing Anisotropic Diffusion).
TeraOPS
1012 lệnh/giây (tera Operations per Second).
VCCS
Nguồn dòng điều khiển bằng điện áp (Voltage Controlled
Current Source).
Thuật ngữ
Biên (edge)
Nơi có sự thay đổi đột ngột về độ sáng.
Cứng hoá
Thực hiện các thuật toán hoàn toàn bằng
các mạch điện, điện tử.
Khuếch tán đẳng hướng
Khuếch tán có hệ số khuếch tán không
đổi theo các hướng.
Khuếch tán dị hướng
(anisotropic diffusion)
Khuếch tán có hệ số khuếch tán thay đổi.
Mẫu cho CNN (Template) Bộ thông số xác định hành vi động học
của CNN.
Thuật toán lai
Thuật toán phối hợp tính toán song song bằng
CNN và DSP.
Quá độ (transient)
Quá trình một mạch điện đạt trạng thái ổn
định, thường là rất ngắn khoảng vài micro giây.
9
CHƯƠNG 1 MỞ ĐẦU
1.1.Tổng quan về xử lý ảnh dùng mạng nơron tế bài CNN
Xử lý ảnh bằng máy tính hệ lệnh tuần tự đã đạt được nhiều thành tựu và là
một lĩnh vực vô cùng quan trọng trong xử lý thông tin và tín hiệu bằng máy tính.
Các chương trình ứng dụng như: nhận dạng mặt người, nhận dạng vân tay trong
điều tra hình sự, xử lý ảnh vệ tinh, kiểm soát giao thông, xử lý ảnh chụp cắt lớp,
MRI, chuẩn đoán tế bào trong y học, các chương trình nhận dạng chữ viết...đã đem
lại nhiều ứng dụng tiện ích cho con người. Xử lý ảnh trên máy tính hệ lệnh tuần tự
đã đạt được các kết quả mỹ mãn trên các ảnh 2D. Trong lĩnh vực 3D cũng thu được
nhiều kết quả có ý nghĩa khoa học và thực tiễn. Việc nghiên cứu các phương pháp
xử lý ảnh, cải tiến các thuật toán xử lý trên máy tính hệ lệnh tuần tự vẫn được tiếp
tục nhằm đáp ứng các nhu cầu của thực tế. Trong khoảng 10 năm trở lại đây, ngoài
việc phát triển các phương pháp xử lý truyền thống giới xử lý ảnh còn quan tâm đến
một loại hình xử lý ảnh mới là xử lý ảnh dùng PDE [17], [25], [27], [28], [37],... do
có nhiều ưu điểm hơn so với các phương pháp đã có. Tuy nhiên dù theo hướng nào
thì xử lý ảnh trên máy tính hệ lệnh tuần tự đã gặp phải các ngưỡng, các giới hạn khó
có thể vượt qua đó là tốc độ xử lý. Các ảnh đưa vào máy tính để xử lý là các ảnh đã
được số hoá. Chúng có thể là ảnh nhị phân (chỉ có 2 mức đen/trắng) hoặc ảnh đa
cấp xám (đen trắng có nhiều mức) hoặc ảnh màu (tổng hợp từ 3 màu cơ bản: đỏ,
xanh, lục). Các ảnh được lưu trữ dưới dạng các ma trận có kích cỡ khác nhau. Khi
xử lý ảnh tuỳ theo yêu cầu các giá trị ảnh sẽ bị biến đổi với các phép tính toán khác
nhau. Việc thao tác được thực hiện trên từng bit một. Ảnh càng lớn, thao tác càng
phức tạp thì số lượng phép tính phải thực hiện càng lớn thì dẫn đến thời gian xử lý
càng dài. Với các máy tính PC hiện nay thời gian xử lý trọn vẹn một tác vụ của một
ảnh dung lượng 128x128 (chúng ta tạm lấy con số này để dễ so sánh với CNN sau
này) không thể hoàn thành trong vài phần triệu giây (micro giây).
Một yếu tố nữa làm cho việc xử lý ảnh thời gian thực trên máy tính hệ lệnh
tuần tự khó thực hiện được là việc chuyển thông tin thu nhận vào cho CPU xử lý.
Cơ chế này yêu cầu các tín hiệu điện analog từ các sensor CCD khi đưa vào CPU
phải qua các bộ ADC để chuyển thành tín hiệu số rồi đưa qua bộ nhớ máy tính sau
10
đó CPU mới thực hiện xử lý dần từng dữ liệu được đọc ra từ bộ nhớ máy tính. Cả
một chuỗi dài các chuyển vận, biến đổi tín hiệu sau đó mới đến khâu xử lý. Hiện
nay việc xử lý với các ảnh thu trực tiếp trên máy tính hệ lệnh tuần tự từ camera
thường chỉ với tốc độ 30 ảnh/ giây (fps); một số trường hợp với tốc độ 60fps. Với
kiến trúc của máy tính hệ lệnh tuần tự như vậy, cơ chế chuyển vận dữ liệu để xử lý
như vậy thì rõ ràng là có tăng tốc độ bắt ảnh fps lên thì cũng không thể tăng được
tốc độ xử lý.
Nội dung của luận án trình bày một số đóng góp về xử lý ảnh dùng mạng
nơron tế bào CNN trong vấn đề lọc nhiễu cho ảnh. Các mô hình và thuật toán xử lý
được đề xuất có năng lực xử lý thời gian thực, có thể thực hiện trên các hệ thống thu
và xử lý ảnh với tốc độ hàng nghìn fps. Ngoài ra các mô hình và thuật toán được đề
xuất này còn có thể được thực hiện hoàn toàn trên phần cứng. Chương 1 của luận án
giới thiệu chung về CNN, tình hình nghiên cứu trong và ngoài nước, phạm vi mục
đích nghiên cứu của luận án. Chương 2 của luận án giới thiệu các kiến thức cơ bản
về mạng nơron tế bào CNN và một số nghiên cứu xử lý nhiễu bằng phương trình
khuếch tán trên máy tính hệ lệnh tuần tự và một số mô hình CNN có kết cấu hoặc
công dụng gần với các mô hình được đề xuất của luận án. Chương 3 trình bày các
đóng góp của luận án. Trong chương 4 các thực nghiệm và mô phỏng được trình
bày. Cuối cùng là phần kết luận và các đề xuất nghiên cứu cho tương lai.
1. 1. 1. Tình hình nghiên cứu trên thế giới
a) Lọc nhiễu trong xử lý ảnh trên máy tính hệ lệnh tuần tự
• Các bộ lọc kinh điển
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 khả năng biểu lộ 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. Với mỗi loại nhiễu cần có các bộ lọc thích hợp. Với nhiễu cộng và
nhiễu nhân người ta thường dùng các bộ lọc thông thấp, trung bình và lọc đồng hình
11
(homomorphic). Với nhiễu xung ta dùng lọc trung vị, giả trung vị, lọc ngoài [1], [3],
[4].
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 [36], [40],...
• Xử lý ảnh dùng PDE
Từ khoảng những năm cuối của thế kỷ 20 việc ứng dụng PDE cho xử lý ảnh
đã được khởi động nghiên cứu, bắt đầu từ các bài báo của Witkin và Koenderink
[19], [47] tiếp theo là các công trình của Osher và Rudin [39], L.Alvarez và
L.Mazorra [32], P.Perona và J.Malik [37] với các PDE thành phần thực, G.Gillboa
và Y.Y.Zeevi, N.Sochen [22], [23], [24] với các PDE thành phần số phức. Xử lý
ảnh bằng PDE đã tỏ rõ là một phương pháp xử lý ảnh hiệu quả khi thực hiện các tác
vụ làm trơn (smoothing), giảm nhiễu (denoising) [20], [21], [25] tìm biên (edge
detection) [17], phân vùng ảnh (segmentation), phục hồi cấu trúc ảnh
(reconstruction) [28], [38], nén ảnh, thay đổi histogram (PDE based histogram
modification), ...
Các thuật toán xử lý ảnh dùng PDE [17] có nhiều đặc tính tốt do:
+ Tính chất cục bộ tự nhiên của PDE phù hợp với rất nhiều các đặc điểm cục bộ
của ảnh. Do vậy biểu diễn quá trình biến đổi ảnh qua PDE là rất thích hợp.
+ Đã sẵn có nền tảng lý thuyết toán học về PDE chặt chẽ và phong phú bao gồm
sự hội tụ, tính ổn định, lời giải duy nhất…
+ Đã có nhiều dạng sơ đồ rời rạc hoá cho thực hiện các thuật toán PDE.
+ Thuật toán được mô tả ngắn gọn không dài dòng phức tạp và dễ hiểu.
+ Dễ dàng khái quát hoá mở rộng chiều một cách đơn giản bằng cách sử dụng
các toán tử Laplace, divergence và gradient.
+ Có thể quan sát được quá trình biến đổi thời gian thực của ảnh nếu sử dụng
công cụ CNN.
Các PDE được sử dụng để xử lý ảnh thường ở hai lớp: PDE khuếch tán tuyến tính
(hệ số khuếch tán hằng số, đẳng hướng) và PDE khuếch tán phi tuyến (hệ số khuếch
tán phi tuyến và không đẳng hướng).
12
Cũng như với tất cả các tác vụ xử lý ảnh khác trên máy tính hệ lệnh tuần tự
xử lý ảnh dùng PDE gặp phải một vấn đề đó là tổng số lượng các phép tính toán, xử
lý rất lớn, điều này làm cho mong muốn xử lý ảnh thời gian thực (real-time) trong
đa số các trường hợp yêu cầu là không thực hiện được. Tuy nhiên với các mô hình
CNN 1 lớp, nhiều lớp được thiết kế với các bộ mẫu thích hợp việc giải các PDE này
theo phương pháp sai phân sẽ chỉ tốn những khoảng thời gian vài phần triệu giây,
không phụ thuộc vào kích thước lưới sai phân, cho phép thực hiện được các xử lý
ảnh dùng PDE với thời gian thực.
b) 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
Neuman János, 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ó yêu 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á chinh 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 Neuman János đưa ra
từ 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 các 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) [5], [29], [30], [31], [43], [44]
được Leon O.Chua và Lin.Yang giới thiệu năm 1988 và sau đó là máy tính vạn
năng tương tự logic CNN UM (CNN Universal Machine) [41] xử lý theo luồng
được giới thiệu năm 1992 bởi L.O.Chua và Tamás Roska là một loại máy tính xử lý
song song thực 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 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ữ
13
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ụ chip ACE16K trong thiết bị Bi-i (được giới thiệu
2003) có 128x128=16.384 bộ xử lý, chip Q-Eye (2006) có 176x144 = 25.344 bộ xử
lý, chip 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 độ đế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
phỏng sinh học [2], [43]. Hướng cứng hoá 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ạch đượ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 hoá
đượ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 và 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 các chip CNN là Mỹ, Hungary, Tây Ban
Nha. Trường đại học Berkeley - California, 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. Các nước
Đức, Ytalia cũng là các nước nghiên cứu 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 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ỹ.
14
CNNA 2004 tại Budapest Hung-ga-ry. CNNA 2005 tại Hsinchu (Taiwan), CNNA
lần thứ 10 Istanbul Turkey 2006 và CNNA lần thứ 11 tổ chức vào tháng 7-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 [5], [29], [31] hoặc nhiều lớp
[52] đã đượ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 [43]. 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 hệ điều hành COS (CNN
Operating System) dưới dạng firmware 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 tuỳ theo yêu cầu cụ thể một số hệ thống CNN-UM có nối 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 [50].
Để 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ả thuật
toán mới gọi là các biểu đồ luồng (UMF-Universal Machine on Flows). 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 [6] sản phẩm của Analogical and Neural Computing Labotary Computer
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.
15
Dùng Code Compose Studio (phiên bản hiện nay (9-2010) đ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ư Windows hoặc 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.
Thuật toán: Biểu đồ luồng,
các mẫu và các thủ tục
Mã nguồn Alpha
Bộ dịch Alpha
Script macro code
(giống như AMC)
Bộ mô
phỏng chạy
trên một chip
Pentium
AMC (analogic machine code)
sinh ra bởi các ngắt
chip CNN-UM
trong CCPS
chip CNN-UM
trong Engine
Board
Emulated
digital
CNN-UM
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 [12].
Đến 1-2007 đã có trên một trăm sáu mươi 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ụ của 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.
16
• 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 điều này thực là
bất tiện và các chip 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 chip 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.
T
Tên chip
T
Số bộ processor
Công
Năm
trong chip
nghệ
ra đời
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
128x128 = 16.384
FPGA
2008
176x144 = 25.344
FPGA
2008
5
6
Chip thử nghiệm với lõi Falcon PE
trên board RC203 FPGA của Xilinx
Eye-RIS
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: chip 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 chip CNN như Bi-I V2, Bi-I V302 [8],
[14]. Bi-i V2 là một thiết bị camera video thông minh được giải thưởng năm 2003
tại Stutgat-Cộng hoà liên bang Đức, xử lý ảnh độc lập, thời gian thực [8], [14].
Thiết bị này sử dụng chip ACE16k, trong chip 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 (multi-layer) kết hợp trực tiếp với
các sensor CCD. Cấu trúc này tương tự cấu trúc sinh học của võng mạc mắt người.
17
Con chip gồm 16384 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 chip 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ể được thu từ sensor
CMOS độ phân giải cao 1280x1024 hoặc từ sensor + bộ xử lý ACE16k có cấu tạo
như võng mạc của động vật có vú với 16384 bộ xử lý tế bào. Việc xử lý song song
mảng tín hiệu được thực hiện trong ACE16k 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 [18]: chia thành các mảng < (128 x 128) để xử lý các mảng con này sau đó
ghép lại. Việc xử lý trong các bộ DSP 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 ACE16k là các 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á độ < 5µs mạng
lan truyền và đầu ra thu được kết quả mong muốn.
Sensor CMOS
1280x1024
(IBIS 5)
Bộ nhớ Flash và
SDRAM
Bộ xử lý
truyền tin
ETRAX 100
Sensor bộ xử lý
CNN
Các sensor ngoài
DSP số nguyên
TX C6415 @600MHz
Vào ra số
DSP số thực
TX
@150MHz
PLD(Xilinx)
Liên lạc với Host Coputer
qua Ethernet, RS232, USB
Hình 1.2 Cấu tạo của thiết bị Bi-iV2
Để lập trình 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)
18
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 Instruments. 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 Instruments. InstantVision cũng sử
dụng được với nhiều platform khác. Thư viện phần mềm InstanceVision bao gồm
các modul sau:
+ Cấu trúc cơ sở dữ liệu (BaseData),
+ Module IO, module (IOComponents),
+ 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ổ của 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.3 Eye-RIS
19
Eye-RIS là một máy tính vạn năng tương tự logic CNN UM kết hợp camera 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.5 x 4.5 x 8.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
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 hoá 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 hoạ 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 kiểm 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ùng 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ị hoả lực phá huỷ đú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 để 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 hoá hệ thống truyền dữ liệu băng thông rộng, giải phương trình vi phân đạo
20
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.
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.
c) Xử lý ảnh dùng CNN
• Tính ưu việt, ý nghĩa khoa học và ý nghĩa thực tiễn của công nghệ CNN
trong xử lý ảnh tốc độ cao
+ Tính ưu việt:
Xử lý thông tin ảnh là một công việc khó khăn do tính bất định, đa dạng của
ảnh, do lượng thông tin cần xử lý vô cùng lớn. Xử lý ảnh dùng CNN đã giải quyết
được sự xung đột về lượng thông tin đồ sộ cần xử lý và tốc độ thực hiện. Vấn đề xử
lý ảnh thời gian thực, xử lý ảnh trong những khoảng thời gian vài phần nghìn giây,
xử lý ảnh từ nhiều nguồn thu khác nhau đã trở thành hiện thực. Do tính chất động
học liên tục về thời gian nên luồng ảnh được xử lý (thực chất là luồng tín hiệu điện),
trạng thái biến đổi của ảnh có thể quan sát được liên tục; đây là thuộc tính không
thể có được khi xử lý trên máy tính tuần tự.
+ Ý nghĩa khoa học:
Việc ứng dụng CNN cho các yêu cầu tính toán và xử lý nhanh đã cung cấp
cho xã hội con người một công cụ mạnh, sắc bén có tiềm năng lớn trong các hoạt
động khoa học, công nghệ, quân sự và dân dụng. Việc nghiên cứu về CNN giúp cho
việc thúc đẩy nghiên cứu tiếp cận các hoạt động sống của động vật: các cơ chế thu
nhận và xử lý âm thanh, hình ảnh, áp suất, ... của tai, mắt, da,... của động vật có thể
giống như mô hình các hệ thu và xử lý tín hiệu CNN.
21
+ Ý nghĩa thực tiễn:
Một điều rất lý thú và cũng là đặc điểm nổi bật của mạng nơron tế bào CNN
là do tính đơn giản về kết cấu và chúng có giới hạn động lực học xác định nên việc
thực hiện trên phần cứng tương đối đơn giản hơn so với việc cứng hoá các chip xử
lý tuần tự. Các hệ thống xử lý ảnh tốc độ cao dùng CNN có thể được cứng hoá trên
các mảng FPGA, tích hợp trong các hệ nhúng sẽ là những sản phẩm phổ biến trong
thời kỳ hậu PC hiện nay. Ở mức cao hơn nữa người ta tìm cách cứng hoá các thuật
toán CNN. Khi đó các thuật toán sẽ được thực hiện với thời gian ở gần mức quá độ
của mạch điện (thường khoảng vài micro giây) có nghĩa là các thuật toán xử lý phức
tạp sẽ chạy ngay trực tiếp trên các mạch điện được thiết kế theo yêu cầu của nhiệm
vụ cụ thể. Điều này là hoàn toàn cho phép do công nghệ FPGA đang càng ngày
càng phát triển và giá thành càng hạ. Đây cũng là một hướng nghiên cứu mở vô hạn
cho những người nghiên cứu về xử lý và tính toán thời gian thực dùng CNN.
• Xử lý ảnh dùng CNN những kết quả đạt được và những vấn đề còn chưa
được nghiên cứu
Mạng nơron tế bào CNN cho phép xử lý các mảng tín hiệu tốc độ cao bởi hai
yếu tố cơ bản và khó có thể tách rời nhau:
+ Một bộ xử lý tế bào trong mảng CNN là một mạch điện phi tuyến đơn giản liên
kết cục bộ với các bộ xử lý tế bào khác trong bán kính ảnh hưởng trực tiếp có
tốc độ xử lý tín hiệu đầu vào là thời gian quá độ của một mạch điện (khoảng vài
micro giây). Hàng chục ngàn bộ xử lý tế bào trong một chip CNN xử lý hàng
chục ngàn tín hiệu đầu vào khác nhau để cho ra đồng thời ở đầu ra hàng chục
ngàn tín hiệu đã được xử lý cũng chỉ cần một lệnh duy nhất là bộ trọng số liên
kết giữa các bộ xử lý này.
+ Các sensor thu mảng tín hiệu (ánh sáng, áp suất, âm thanh,...) có thể đưa trực
tiếp vào đầu vào của mỗi nơron trong mạng nơron tế bào để xử lý không cần
qua các bộ ADC. Như vậy đã bỏ được rất nhiều khâu biến đổi, truyền dẫn trung
gian giữa tín hiệu cần xử lý và bộ xử lý.
Xử lý ảnh dùng CNN hiện nay đã thực hiện được tất cả các công việc kinh điển mà
một chương trình xử lý ảnh thường phải thực hiện: