Xem mẫu

Vũ Đức Thái và Đtg

Tạp chí KHOA HỌC & CÔNG NGHỆ

106(06): 139 - 145

THIẾT KẾ MẪU CNN CHO BÀI TOÁN TÌM BIÊN ẢNH
Vũ Đức Thái1*, Lê Văn Thủy2
1

Trường ĐH Công nghệ Thông tin & Truyền thông – ĐH Thái Nguyên
2
Đại học Thái Nguyên

TÓM TẮT
Tìm biên của một ảnh là một trong những xử lý quan trọng trong phân tích ảnh vì các kĩ thuật phân
đoạn ảnh chủ yếu dựa vào biên. Thực tế, trong nhiều lĩnh vực, yêu cầu về các máy tính, thiết bị có
công suất tính toán cực mạnh là rất cấp thiết như: trong xử lý ảnh động thời gian thực, nhận dạng
và định vị đa mục tiêu di động trong an ninh quốc phòng, kiểm tra chất lượng sản phẩm chuyển
động nhanh trên dây chuyền công nghiệp, xử lý chất lượng ảnh siêu âm trong y tế, chế tạo robot
thông minh, chế tạo các 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 hơn 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 bài toán tìm biên ảnh. 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.
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 và Lin Yang đưa ra
ý tưởng về kiến trúc máy tính mạng nơ ron tế
bào CNN (Cellular Neural Network). Trong
đó, các tác giả đã nêu những nội dung cơ bản
cho một mô hình tính toán song song, bao
gồm kết cấu mạch điện, phương trình toán
học mô tả hoạt động của hệ thống. Đồng thời
phân tích, chứng minh sự làm việc ổn định
của mạng bằng các cơ sở toán học, đưa ra mô
hình mô phỏng thuật toán với những ví dụ cụ

thể. Cung cấp những khái niệm, nguyên tắc
cơ bản, làm nền tảng cho việc nghiên cứu về
công nghệ CNN.
Năm 1993 máy tính mạng nơron tế bào đã
được chế tạo ứng dụng thành công cho một số
bài toán xử lý ảnh và tính toán. Đến nay,
CNN đã được nghiên cứu phát triển ứng dụng
rộng rãi trên nhiều nước với nhiều lĩnh vực
như xử lý ảnh động, thị giác máy, tính toán
điều khiển... Tại Việt Nam đã có một số
nghiên cứu ban đầu [1].

Hình 1. Máy tính thị giác trên PC 104 plus*
*

Hình 2. Máy tính thị giác trên PC để bàn

Tel: 0985 158998; Email: vdcthai@gmail.com

139

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

http://www.lrc-tnu.edu.vn

Vũ Đức Thái và Đtg

Tạp chí KHOA HỌC & CÔNG NGHỆ

Một trong những vấn đề trọng tâm nghiên cứu
của lĩnh vực thị giác máy là biên và các thao
tác trên đó vì các kĩ thuật phân đoạn ảnh chủ
yếu dựa vào biên. Nhìn chung về mặt toán
học, người ta coi điểm biên của ảnh là điểm
có sự thay đổi nhanh hoặc đột ngột về độ xám
(hoặc màu). Tập hợp các điểm biên liên tiếp
tạo thành biên hay đường bao quanh của ảnh.
Để áp dụng CNN vào bào toán xử lí ảnh (cụ
thể bài toán tìm biên) cần sử dụng bộ mẫu xử
lí. Ứng với mỗi yêu cầu xử lý cụ thể sẽ một
bộ mẫu xử lí riêng. Bài báo sẽ giới thiệu một
số phương pháp để thiết kế mẫu xử lí và tiến
hành thử nghiệm mẫu đó.
KIẾN TRÚC CNN VÀ MÔ HÌNH TOÁN HỌC

xij ∈ R, yij ∈ R và zij ∈ R được gọi là trạng
thái: đầu ra, đầu vào, ngưỡng của tế bào
C(i,j), A(i, j; k, l) và B(i, j; k, l) được gọi là
toán tử phản hồi và toán tử dẫn nhập đầu vào.
Theo Chua và Roska, 1993 [6]:

A(i, j; k , l ) = A(k , l ; i, j ) 
,
B (i , j ; k , l ) = B ( k , l ; i , j ) 

xij ( 0 ) ≤ 1 ,
uij ≤ 1

Để

CNN có tính ổn định thì
a ij ∈ A, bij ∈ B, có thể được chọn như sau:
một

a1 = a9; a2 = a8; a3 = a7; a4 = a6;
b 1 = b 9; b 2 = b 8; b 3 = b 7; b 4 = b 6:
2. Phương trình đầu ra

Kiến trúc CNN và các phương trình mô tả
Theo Leon O. Chua và L.Yang giới thiệu năm
1988. CNN sử dụng một mảng đơn giản các tế
bào liên kết nhau cục bộ để xây dựng một hệ
thống xử lý tín hiệu analog mạnh. Khối mạch
cơ bản của CNN được gọi là tế bào (tế bào),
chứa các phần tử mạch tuyến tính và phi tuyến
bao gồm các tụ tuyến tính, các điện trở tuyến
tính, các nguồn điều khiển tuyến tính và phi
tuyến, và các nguồn độc lập.

106(06): 139 - 145

yij = f ( xij ) =

1
1
xij ( t ) + 1 − xij ( t ) − 1
2
2

(1.2)
3. Điều kiện biên xác định và là các tế bào
thuộc hiệu ứng cầu của các tế bào cạnh
nhưng nằm ngoài mảng kích thước MxN.
4.

Trạng

thái

khởi

i = 1, 2,...., M , j = 1, 2,..., N ;

tạo

x ij (0) ,

(1.3)

5. Sr(i, j) là hiệu ứng cầu của tế bào C(i,j) có
bán kính r, khi tất cả các tế bào lân cận thỏa
mãn điều kiện sau (r là một 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 3. Kiến trúc mạng CNN MxN

Kiến trúc CNN chuẩn là một mảng có kích
thước MxN gồm các 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 được Sr(i, j) là lân cận (2r + l) x (2r
+1) (hình 4).

1. Phương trình trạng thái (state equation)

xij =−
+

1
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 4. 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 đây là một kiểu kiến trúc mạng nơron tế
bào xử lý ảnh thông dụng nhất. Trong kiến

140

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

http://www.lrc-tnu.edu.vn

Vũ Đức Thái và Đtg

Tạp chí KHOA HỌC & CÔNG NGHỆ

106(06): 139 - 145

ảnh còn lại là đầu ra output. Trong pha xử lý
này, ảnh trong đầu ra được thay đổi và ảnh
cuối cùng trên lớp ra là kết quả của sự tính
toán. Trong chip tế bào thị giác, ngoài cấu
trúc mạng nơron tế bào, còn có một số các
kiến trúc thực hiện tính toán hiệu năng cao
khác tồn tại.

trúc này, phần tử xử lý chứa 2 lớp gồm một
lớp vào và một lớp ra. Lớp đầu vào cung cấp
mối liên kết feed-forward cho lớp đầu ra.
Trong lớp đầu ra, có các trọng số phản hồi
ngược liên tục trong thời gian từ các tế bào
lân cận trong không gian. Một mạng nơron tế
bào xử lý ảnh CNN có thể được khởi tạo với
2 ảnh, một ảnh được nạp vào đầu vào input,

Hình 6. Hệ động lực của một tế bào CNN

Hình 5. Mô hình kết nối mạng nơron tế bào

Mẫu và các thao tác xử lý của CNN
Phần 1 ta đã thấy sự xuất hiện của 3 trọng số A, B, z (A, B được gọi là các toán tử hồi tiếp và các
toán tử điều khiển hoặc còn được gọi là các mẫu vô tính) trong kiến trúc CNN. Bộ 3 trọng số này
giúp tạo ra trạng thái ổn định của mạng CNN… Việc xây dựng chương trình chạy trên CNN là
xây dựng tập các mẫu xử lí thực hiện liên tục. Đối với bài toán yê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 8. Mẫu tìm đường xiên và hiệu quả của mẫu

Hình 7. Mẫu tìm vùng và hiệu quả của mẫu

A=

v/h2

0
v/h
0

2

*

0

2

-4 v/h + 1/R

v/h

v/h2

0

2

B=

0

0

0

0

0

0

0

0

0

Z=

0

Hình 9. Mẫu giải phương trình PDE Laplace

Phương pháp thiết kế mẫu cho bài toán ứng dụng [1], [3], [4]
Sử dụng các mặt nạ trong kỹ thuật xử lý ảnh truyền thống
Dùng các mặt nạ đã được sử dụng, kiểm nghiệm trong quá trình xử lý ảnh trên máy tính số như
các mẫu lọc trung bình (average), các mẫu co ảnh (erosion), dãn ảnh (dilation), ... Trong mạng
CNN mặt nạ này được sử dụng làm ma trận cho phép thực hiện các phép biến đổi tương đương.
141

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

http://www.lrc-tnu.edu.vn

Vũ Đức Thái và Đ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

0

0

0

0

0

B=

-1

-1

-1

-1

8

-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 là phương pháp xác định các mẫu không liên kết cho các ứng dụng xử lý ảnh nhị phân. Bảng
logic được mã hoá với các giá trị {0, 1} tức là trắng và đen, ngoài ra chúng ta cũng còn có thể mã
hoá dữ liệu nhị phân là TRUE(1), FALSE(-1) và DON'T CARE(0). Khi thiết kế các mẫu CNN
để thực hiện một hàm logic Fk (.) đã cho, chúng ta thường sử dụng các mẫu không liên kết được
mã hoá và diễn tả như sau:

A=

0

0

0

0

a 00 ≥ 0

0

0

0

0

Bk =

Phân tích hoạt động của CNN để tìm ra mẫu
Theo phương pháp này để tìm ra một tập mẫu
trước hết cần phảỉ phân tích mô tả hoạt động
của mẫu đó thành các tác vụ chi tiết - Các luật
cục bộ (local rule) sau đó dựa vào phương
trình trạng thái và đồ thị quan hệ giữa biến
trạng thái và đạo hàm bậc nhất của nó (đồ thị
DP) để xác định mẫu.
Kỹ thuật thiết kế fuzzy
Lý thuyết tập mờ và logic mờ (fuzzy sets and
fuzzy logic) do giáo sư Lofti Zadeh công bố
năm 1965. Logic mờ được thiết kế để làm
việc với các sự kiện không chính xác. Mặc dù
không được các hầu hết cộng đồng nghiên
cứu ủng hộ trong phát triển lý thuyết, logic
mờ vẫn được áp dụng và có nhiều thành công
trong thực tiễn như trong 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, các bộ lọc ngôn ngữ, xử lý ảnh
số, ... Logic mờ cũng được áp dụng trong
thiết kế các mẫu phục vụ cho các 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 những bài
toán dạng tối ưu. Bản chất của giải thuật di
truyền là một 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ả năng kiểm tra hết mọi trường hợp có thể
của bài toán, nhưng đó là một sự 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 và có định hướng; khác với
phương pháp vét cạn tất cả các trường hợp.
Có thể xem thuật gen như là một phương
pháp khám phá. Thuật giải di truyền không
quan tâm đến nội dung của bài toán mà chỉ
cần quan tâm đến vấn đề cần giải quyết của
bài toán. Vì GA là một giải thuật ngẫu nhiên
nên nếu có thể xác định được hàm phân bố
ngẫu nhiên của bài toán thì việc giải quyết bài
toán sẽ dễ dàng hơn. Các giải thuật leo đồi,
luyện thép cũng đã được áp dụng để tìm kiếm
mẫu. Tuy nhiên giải thuật di truyền không
phải khi nào cũng cho kết quả tối ưu và giá
thành tính toán đắt (Số lượng phép tính lớn).
Mặc dù vậy do là một kỹ thuật tìm kiếm giải
pháp dựa trên việc mô phỏng quá trình tiến
hoá của tự nhiên nên hiện nay kỹ thuật này
vẫn được các 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 là phương pháp dùng thiết kế mẫu cho
xử lý ảnh nhị phân được Ákos Zarándy đề
xuất. Phương pháp này được sử dụng để
thiết kế mẫu khi nhiệm vụ yêu cầu đã được
xác định chính xác. Các mẫu tìm được có
thể là loại cho mạng CNN ghép cặp hoặc
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 tiếp theo 4 bước
như trong hình:
Giải hệ thống
quy luật quan hệ

Chọn mẫu
mạnh nhất

Hình 10. Sơ đồ các bước thiết kế mẫu theo phương pháp trực tiếp

142

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

http://www.lrc-tnu.edu.vn

Vũ Đức Thái và Đtg

Tạp chí KHOA HỌC & CÔNG NGHỆ

ỨNG DỤNG CNN VÀO BÀI TOÁN TÌM
BIÊN ẢNH
Quy trình phát hiện biên
Điểm biên nếu có sự thay đổi nhanh hoặc đột
ngột về mức xám (hoặc màu). Việc thực hiện
tìm biên trong xử lí ảnh truyền thống cài đặt
trên máy PC thường thực hiện tuần tự trên
từng điểm ảnh kết hợp sử dụng toán tử làm
nổi biên. Do vậy thời gian xử lý bằng tổng
thời gian xử lý cho mỗi điểm ảnh. Với công
nghệ CNN, mỗi điểm ảnh được xử lý bởi một
chip trong mạng CNN, quá trình thực hiện xử
lí toàn ảnh xảy ra song song. Tốc độ xử lý chỉ
bằng tốc độ xử lý cho một điểm ảnh. Để ứng
dụng CNN, nhóm nghiên cứu tiến hành áp
dụng các 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 và đánh giá
a. Thử nghiệm:

Quá trình tìm mẫu bằng 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 hiện các xử lý logic hoặc analogic
để tìm mẫu;
B4. Thực thiện xử lí song song với tìm được;
B5. Đánh giá kết quả thu được, nếu đầu ra chưa
hội tụ đến đầu ra của biên lí tưởng tiến hành
quay trở lại bước 3 cho tới khi đạt được mẫu
CNN tối ưu (Mẫu EDEG EXTRACTION).
Sau khi tìm được mẫu tối ưu của mạng ta áp
dụng thực hiện xử lý cho bất kỳ ảnh đầu vào
nào, thuật toán như 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 ra kết quả xử lý
Nhóm đã tiến hành thử nghiệm tìm mẫu và
chạy chương trình trên một số dạng ảnh, kết
quả như sau:

Candy

Java Simulation
Hình 12. Ảnh đầu vào

Hình 11. Quy trình tìm mẫu bằng phương pháp học

Thử nghiệm 1: mẫu chuẩn CNN EDEG

A=
Kết quả (1):

0

0

0

0

0

0

0

0

0

B=

-1

-1

-1

-1

8

-1

-1

-1

-1

Candy T = 2s

Z=

-1

Java Simulation T = 2s

143

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

http://www.lrc-tnu.edu.vn

nguon tai.lieu . vn