10801_Phân đoạn ảnh dựa trên thuật toán nở vùng

luận văn tốt nghiệp

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG
——————————-

ISO 9001:2015

ĐỒ ÁN TỐT NGHIỆP
NGÀNH: CÔNG NGHỆ THÔNG TIN

Sinh viên : Nguyễn Đình Phúc
Giảng viên hướng dẫn: TS. Ngô Trường Giang

HẢI PHÒNG – 2018
Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
2
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG
———————————–

PHÂN ĐOẠN ẢNH ĐỰA TRÊN THUẬT TOÁN NỞ VÙNG

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
NGÀNH: CÔNG NGHỆ THÔNG TIN

Sinh viên : Nguyễn Đình Phúc
Giảng viên hướng dẫn : TS. Ngô Trường Giang

HẢI PHÒNG – 2018
Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
3
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG
————————————–

NHIỆM VỤ ĐỀ TÀI TỐT NGHIỆP

Sinh viên: Nguyễn Đình Phúc
Mã SV: 1112401048
Lớp: CT1701 Ngành: Công nghệ thông tin
Tên đề tài: Phân đoạn ảnh dựa trên thuật toán nở vùng

Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
4
LỜI CẢM ƠN
Trước hết em xin cảm ơn các thầy cô giáo trong khoa Công nghệ thông
tin – Trường đại học Dân Lập Hải Phòng đã tạo mọi điều kiện thuận lợi cho
em trong quá trình học tập tại trường. Đặc biệt, em xin chân thành cảm ơn sự
hướng dẫn tận tình của TS. Ngô Trường Giang – giảng viên khoa Công nghệ
thông tin trường Đại học Dân Lập Hải Phòng đã tạo mọi điều kiện giúp đỡ em
hoàn thành đồ án.
Mặc dù cố gắng hết sức cùng sự tận tâm của thầy giáo hướng dẫn xong
do trình độ còn hạn chế, nội dung đề tài còn khá mới mẻ với em nên khó tránh
khỏi những sai sót trong quá trình tiếp nhận kiến thức. Em rất mong chỉ dẫn
của thầy cô và sự góp ý của bạn bè để em có thể hoàn thiện đồ án của em.
Cuối cùng em xin gửi lời cảm ơn đặc biệt nhất tới gia đình, bố, mẹ,
những người động viên, khích lệ để giúp em hoàn thành đồ án này.
Em rất mong nhận được những sự góp ý của thầy cô giáo và các bạn
sinh viên để đề tài của em được hoàn thiện hơn.

Em xin chân thành cảm ơn!

Hải Phòng, ngày 26 tháng 3 năm 2018

Người thực hiện
Nguyễn Đình Phúc

Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
5
MỤC LỤC

LỜI CẢM ƠN
………………………………………………………………………………………………………..
4
MỤC LỤC …………………………………………………………………………………………………………….
5
DANH MỤC HÌNH ẢNH
……………………………………………………………………………………….
7
CHƯƠNG 1:
MỘT SỐ VẤN ĐỀ CƠ BẢN TRONG XỬ LÝ ẢNH
……………………….
9
1.1 Một số khái niệm ………………………………………………………………………..
9
1.1.1
Khái niệm về ảnh số
……………………………………………………………. 9
1.1.2
Tổng quan về một hệ thống xử lý ảnh …………………………………. 10
1.2 Kỹ thuật lọc nhiễu trong xử lý ảnh ………………………………………………
11
1.2.1
Nhân chập
………………………………………………………………………… 11
1.2.2
Lọc số là gì? …………………………………………………………………….. 13
1.2.3
Một số kỹ thuật lọc nhiễu
…………………………………………………… 14
1.3 Kỹ thuật tìm biên trong xử lý ảnh
………………………………………………..
17
1.3.1
Một số khái niệm
………………………………………………………………. 17
1.3.2
Các phương pháp phát hiện biên
…………………………………………. 17
1.4 Biến đổi khoảng cách
…………………………………………………………………
20
1.4.1
Giới thiệu
…………………………………………………………………………. 20
1.4.2
Thuật toán biến đổi khoảng cách đơn giản. ………………………….. 20
1.5 Phân đoạn ảnh …………………………………………………………………………..
21
1.5.1
Giới thiệu
…………………………………………………………………………. 21
1.5.2
Một số hướng tiếp cận trong phân đoạn ảnh
…………………………. 22
1.5.3
Phân đoạn dựa trên ngưỡng ……………………………………………….. 26
CHƯƠNG 2:
PHÂN ĐOẠN ẢNH VỚI THUẬT TOÁN NỞ VÙNG …………………..
29
2.1 Thuật toán nở vùng ……………………………………………………………………
29
2.2 Một số thuật toán nở vùng ………………………………………………………….
29
2.2.1
Thuật toán nở vùng cơ bản
…………………………………………………. 29
2.2.2
Thuật toán nở vùng thống kê ……………………………………………… 30
2.2.3
Thuật toán nở vùng theo lưu vực ………………………………………… 30
2.3 Phân đoạn ảnh theo biến đổi Watershed
……………………………………….
31
Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
6
2.3.1
Giới thiệu: ……………………………………………………………………….. 31
2.3.2
Thuật toán watershed dựa trên các thành phần liên thông
………. 35
CHƯƠNG 3:
THỰC NGHIỆM ………………………………………………………………………..
47
3.1 Phát biểu bài toán ứng dụng
………………………………………………………..
47
3.2 Khái quát về thư viện OpenCV
……………………………………………………
48
3.3 Các bước thực hiện ……………………………………………………………………
48
3.3.1
Bước 1: Tiền xử lý ……………………………………………………………. 49
3.3.2
Bước 2: Tách đối tượng …………………………………………………….. 54
3.3.3
Xác định ranh giới giữa các đối tượng
…………………………………. 56
KẾT LUẬN
………………………………………………………………………………………………………….
59
MỘT SỐ TÀI LIỆU THAM KHẢO ……………………………………………………………………..
60

Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
7
DANH MỤC HÌNH ẢNH
Hình 1-1. Tổng quan về hệ thống xử lý ảnh
10
Hình 1-2. Hình ảnh minh họa về phép lọc trung bình
14
Hình 1-3. Hình ảnh minh họa về phép lọc trung vị
15
Hình 1-4. Kết quả lọc ảnh theo 2 phương pháp trung bình và trung vị
16
Hình 1-5. Một số kiểu đường biên thông dụng
17
Hình 1-6. Toán tử Sobel
19
Hình 1-7. Toán tử Prewitt
19
Hình 1-8. Toán tử Robert
19
Hình 1-9. Ví dụ về phân đoạn ảnh
21
Hình 1-10. Một số hướng tiếp cận phân đoạn ảnh
22
Hình 1-11. Ví dụ ảnh gốc trước khi áp dụng phân ngưỡng
27
Hình 1-12. Ảnh sau khi phân ngưỡng toàn cục với mức ngưỡng 150
28
Hình 1-13. Ảnh phân ngưỡng với ngưỡng động
28
Hình 2-1. Mô tả hình ảnh lưu vực của 2 vùng
31
Hình 2-2. Hình ảnh minh họa thuật toán watershed
32
Hình 2-3. Mô tả thuật toán watershed theo nguyên lý nước dâng
33
Hình 2-4. Thuật toán dòng chảy và ngưỡng chìm
35
Hình 2-5. Ảnh gốc
36
Hình 2-6. Các pixel lân cận liên kết tới điểm cực tiểu
36
Hình 2-7. Nhãn được gán cho các điểm ảnh
36
Hình 2-8. Giá trị mức xám của ảnh đầu vào
37
Hình 2-9. Giá trị v (p) của từng điểm ảnh sau khi chạy bước 1
38
Hình 2-10. Giá trị xám của ảnh đầu vào
39
Hình 2-11. Giá trị v (p) của ảnh sau khi chạy bước 1
40
Hình 2-12. Giá trị v (p) của các điểm ảnh sau khi chạy bước 2
40
Hình 2-13. Giá trị v (p) sau khi đã hoàn tất các bước quét ảnh
40
Hình 2-14. Mức xám của điểm ảnh đầu vào
42
Hình 2-15. Nhãn mới được gán sau bước quét xuống lần 1
42
Hình 2-16. Nhãn thay đổi khi thực hiện phép quét từ dưới lên trên lần 1
42
Hình 2-17. Quét từ trên xuống dưới lần 2
43
Hình 2-18. Quét từ dưới lên lần 2
43
Hình 2-19. Quét ảnh từ trên xuống dưới lần 3
43
Hình 2-20. Hình ảnh gán nhãn cuối cùng
44
Hình 3-1. Ảnh thực nghiệm
47
Hình 3-2. Giao diện chương trình cài đặt
49
Hình 3-3. Hình ảnh đầu vào
50
Hình 3-4. Ảnh xám sau khi được chuyển đổi
52
Hình 3-5. Kết quả của bước làm mờ ảnh
53
Hình 3-6. Kết quả của quá trình phân ngưỡng
54
Hình 3-7. Hình ảnh sau khi sử dụng hàm biến đổi khoảng cách
55
Hình 3-8. Các đối tượng đã được tách
55
Hình 3-9. Hình ảnh phân đoạn bằng thuật toán watershed
58
Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
8
Hình 3-10. Số lượng đồng xu đếm được
58

Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
9
CHƯƠNG 1: MỘT SỐ VẤN ĐỀ CƠ BẢN TRONG XỬ LÝ ẢNH
1.1 Một số khái niệm
1.1.1 Khái niệm về ảnh số
Ảnh số là tập hợp hữu hạn các điểm ảnh với mức xám phù hợp dùng để
mô tả gần nhất với ảnh thật. Số điểm ảnh xác định độ phân giải của ảnh, độ
phân giải càng cao thì càng thể hiện rõ nét các đặc điểm của tấm hình, càng
làm cho tấm ảnh trở nên thực và sắc nét hơn.
Điểm ảnh là một phần tử của ảnh số tại tọa độ (x, y) với độ xám hoặc
màu nhất định. Kích thước và khoảng cách giữa các điểm ảnh đó được chọn
thích hợp sao cho mắt người cảm nhận được sự liên tục về không gian và mức
xám (hoặc màu) của ảnh số gần như ảnh thật. Mỗi phần tử trong ma trận được
gọi là một phần tử ảnh.
Mức xám là kết quả của sự biến đổi tương ứng một giá trị độ sáng của
một điểm ảnh với một giá trị nguyên dương. Thông thường nó xác định trong
khoảng từ 0 đến 255 tùy thuộc vào giá trị mà mỗi điểm ảnh được biểu diễn.
Độ phân giải của ảnh là mật độ điểm ảnh được ấn định trên một ảnh số
được hiển thị. Như trình bày ở trên, khoảng cách giữa các điểm ảnh phải được
chọn sao cho mắt người vẫn thấy được sự liên tục của ảnh. Việc lựa chọn
khoảng cách thích hợp tạo nên một mật độ phân bổ, đó chính là độ phân giải
và được phân bố theo trục x và y trong không gian hai chiều.
Ảnh đen trắng là ảnh chỉ bao gồm 2 màu: màu đen và màu trắng. Người
ta phân mức đen trắng đó thành L mức. Nếu sử dụng số bit B để mã hóa mức
đen trắng (hay mức xám) thì L được xác định:
2
B
L 
. Nếu B=1, thì chỉ có 2
mức: mức 0 và mức 1, còn gọi là ảnh nhị phân. Mức 1 ứng với màu sáng, còn
mức 0 ứng với màu tối. Nói cách khác, với ảnh nhị phân mỗi điểm ảnh được
mã hóa trên 1 bit. Nếu L lớn hơn 2 ta có ảnh đa cấp xám. Nếu dùng 8 bit để
biểu diễn mức xám, số các mức xám có thể biểu diễn được là 256. Mỗi mức
xám được biểu diễn dưới dạng là một số nguyên nằm trong khoảng từ 0 đến
Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
10
255, với mức 0 biểu diễn cho mức cường độ đen nhất và 255 biểu diễn cho
mức cường độ sáng nhất.
Ảnh màu là ảnh được tổ hợp từ 3 màu cơ bản: đỏ (R) , lục (G) , lam (B)
. Với ảnh màu, người ta lưu trữ thành từng màu riêng biệt, mỗi màu được lưu
trữ như một ảnh đa cấp xám nên không gian nhớ dành cho một ảnh màu lớn
hơn 3 lần một ảnh đa cấp xám cùng kích cỡ.
1.1.2 Tổng quan về một hệ thống xử lý ảnh
Xử lý ảnh là một ngành khoa học tương đối mới mẻ so với các ngành
khoa học khác, nhất là trên quy mô công nghiệp. Tuy nó là một ngành khoa
học mới mẻ so với nhiều ngành khoa học khác nhưng tốc độ phát triển của nó
rất nhanh, kích thích các trung tâm nghiên cứu, ứng dụng, đặc biệt là máy tính
chuyên dụng riêng cho nó.
Tổng quan về một hệ thống xử lý ảnh được thể hiện bằng hình ảnh bên
dưới:

Hình 1-1. Tổng quan về hệ thống xử lý ảnh
Trước hết là quá trình thu nhận ảnh, ảnh có thể được thu nhận qua
camera, thường ảnh được nhận qua camera là tín hiệu tương tự (loại camera
ống kiểu CCIR) , nhưng cũng có thể là tín hiệu số hóa (loại CCD-Charge
Coupled Device) . Ảnh cũng có thể được thu nhận qua các bộ cảm ứng
(sensor) , ảnh được quét trên scanner.
Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
11
Số hóa (Digitalizer) là quá trình biến đổi tín hiệu tương tự sang tín hiệu
rời rạc (lấy mẫu) và số hóa bằng lượng hóa trước khi chuyển sang giai đoạn
xử lý, phân tích hay lưu trữ lại.
Quá trình phân tích ảnh thực chất bao gồm nhiều các công đoạn nhỏ.
Trước tiên là tăng cường ảnh (Enhancement) mục đích để nâng cao chất
lượng ảnh. Do những nguyên nhân khác nhau:có thể do thiết bị thu nhận ảnh,
do nguồn sáng hay do nhiễu, ảnh có thể bị suy yếu. Do vậy, ảnh cần được
tăng cường và khôi phục lại để làm nổi bật một số đặc tính chính của ảnh
hoặc là làm cho ảnh gần giống nhất với trạng thái gốc, trạng thái mà ảnh trước
khi bị biến dạng. Các giai đoạn tiếp theo là phát hiện các đặc tính như biên
(Edge Detection) , phân vùng ảnh (Image Segmentation) , trích chọn đặc điểm
vv…
Cuối cùng, tùy theo mục đích của người dùng sẽ là giai đoạn nhận
dạng, phân lớp hoặc là các quyết định khác.
1.2 Kỹ thuật lọc nhiễu trong xử lý ảnh
1.2.1 Nhân chập
Là quá trình thay đổi giá trị pixel ban đầu của ảnh đầu vào sang một giá
trị mới bằng cách sử dụng một ma trận hay một cửa sổ nhân chập. Toàn bộ
các điểm ảnh (Pixel) trên ảnh sẽ được tiến hành nhân chập với ma trận, tâm
của ma trận sẽ được đặt trùng vào vị trí của điểm ảnh (Pixel) đang được tính
nhân chập làm thay đổi các giá trị của pixel ban đầu.
Giá trị của pixel ban đầu được thay đổi theo công thức (1. 1)

(x, y)
(x, y)*M(u,v)
(x u, y v)*M(u,v)
n
n
dst
src
src
u
n v
n
I
I
I







(1. 1)

Trong đó :
Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
12
(x,y)
src
I
là giá trị điểm ảnh đầu vào trước khi thực hiện phép nhân
chập tại vị trí tọa độ (x, y) .
(x, y)
dst
I
giá trị điểm ảnh đầu ra khi đã thực hiện phép nhân chập.
(u,v)
M
là giá trị của ma trận nhân chập M tại tọa độ (u, v)
n = (kích thước ma trận – 1) /2 và lấy tâm của ma trận nhân chập làm
điểm gốc.
Ví dụ: Ta có một ma trận điểm ảnh I và ma trận nhân chập M như sau:
2
4
3
7
2
5
7
2
1
4
7
6
2
8
2
5
6
7
7
2
8
2
1
6
2
I 

1
2
3
4
5
6
7
8
9
M 

Khi đó ta có các giá trị lần lượt là:
Kích thước ma trận nhân chập =3
Giá trị n = (3-1) /2 = 1.
Ta xét ví dụ :Idst (2, 2) = Isrc (2, 2) *M (u, v)
Ở đây (u, v) [-1, 0, 1] = Isrc (1, 1) *M (-1, -1) + Isrc (1, 2) *M (-1, 0) + Isrc (1, 3) *M (-1, 1) + Isrc (2,
1) *M (0, -1) + Isrc (2, 2) *M (0, 0) + Isrc (2, 3) *M (0, 1) + Isrc (3, 1) *M (1, –
1) + Isrc (3, 2) *M (1, 0) + Isrc (3, 3) *M (1, 1)
= 2*1 + 4*2 + 3*3 + 5*4 + 7*5 + 2*6 + 7*7 + 6*8 + 2*9 = 201.
Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
13
Sau khi thực hiện phép nhân chập, giá trị điểm ảnh Isrc (2, 2 ) từ giá trị 7
sẽ được thay đổi thành 201.
1.2.2 Lọc số là gì?
Một hệ thống dùng để làm biến dạng sự phân bố tần số của các thành
phần tín hiệu theo các chỉ tiêu đã cho được gọi là bộ lọc số. Lọc số có ý nghĩa
quan trọng trong việc tạo ra các hiệu ứng trong ảnh, một số hiệu ứng nhờ sử
dụng các bộ lọc làm mờ (Blur) , làm trơn (Smooth) .
Nguyên tắc chung của các phương pháp lọc số là cho ma trận ảnh nhân
chập với một ma trận lọc (Kernel) hay còn được gọi là các phép tính nhân
chập trên ảnh. Với mỗi phép lọc ta có những ma trận lọc khác nhau, không có
một quy định cụ thể nào cho việc xác định M. Kích thước ma trận M là một
số lẻ (ví dụ: 3×3, 5×5 …) . Ma trận lọc còn có thể được gọi là cửa sổ chập,
cửa sổ lọc, mặt nạ…
Nguyên tắc lọc ảnh được thể hiện qua công thức (1. 2)

*
dst
src
I
M
I

(1. 2)
Trong đó:
 Isrc: Là ảnh gốc được sử dụng để lọc số ảnh.
 Idst: Là ảnh ra sau khi thực hiện xong phép lọc số ảnh.
 M: Là ma trận lọc (Mask, kernel) .
 *: Là phép toán nhân chập
Tpt là tổng các phần tử trong ma trận M. Khi đó tổng Tpt các phẩn tử trong ma
trận M thường là 1.
 Nếu Tpt > 1: Ảnh sau khi thực hiện xong phép lọc số ảnh (Idst) có độ
sáng lớn hơn so với ảnh ban đầu (Isrc) .
Phân đoạn ảnh dựa trên thuật toán nở vùng
Nguyễn Đình Phúc _ CT1701
14
 Nếu Tpt < 1: Ảnh sau khi thực hiện xong phép lọc số ảnh (Idst) có độ sáng nhỏ hơn so với ảnh ban đầu (Isrc) . 1.2.3 Một số kỹ thuật lọc nhiễu Lọc trung bình Lọc trung bình là kĩ thuật lọc tuyến tính, hoạt động như một bộ lọc thông thấp. Ý tưởng chính của thuật toán lọc trung bình như sau: Sử dụng một cửa sổ lọc (ma trận 3x3) quét qua lần lượt từng điểm ảnh của ảnh đầu vào input. Tại vị trí mỗi điểm ảnh lấy giá trị của các điểm ảnh tương ứng trong vùng 3x3 của ảnh gốc lấp vào ma trận lọc. Giá trị điểm ảnh của ảnh đầu ra là giá trị trung bình của tất cả các điểm ảnh trong cửa sổ lọc. Có thể chia việc tính toán này làm hai bước gồm tính tổng các thành phần trong cửa sổ lọc và sau đó chia tổng này cho số các phần tử của cửa sổ lọc. Bộ lọc này được minh họa trong hình 1-2. Hình 1-2. Hình ảnh minh họa về phép lọc trung bình Các bước cơ bản của kỹ thuật lọc trung bình:  Quét cửa sổ lọc lần lượt lên các thành phần của ảnh đầu vào; điền các giá trị được quét vào cửa sổ lọc.  Xử lý bằng cách thao tác trên các thành phần của cửa sổ lọc.  Tính giá trị trung bình các thành phần trong cửa sổ lọc.  Gán giá trị trung bình này cho ảnh đầu ra. Lọc trung vị Phân đoạn ảnh dựa trên thuật toán nở vùng Nguyễn Đình Phúc _ CT1701 15 Lọc Trung vị là một kĩ thuật lọc phi tuyến, nó khá hiệu quả đối với hai loại nhiễu: nhiễu đốm (speckle noise) và nhiễu muối tiêu (salt-pepper noise) . Kĩ thuật lọc trung vị này là một bước rất phổ biến trong xử lý ảnh. Ý tưởng chính của thuật toán lọc Trung vị đó là sử dụng một cửa sổ lọc (ma trận 3x3) quét qua lần lượt từng điểm ảnh của ảnh đầu vào input. Tại vị trí mỗi điểm ảnh lấy giá trị của các điểm ảnh tương ứng trong vùng 3x3 của ảnh gốc "lấp" vào ma trận lọc. Sau đó sắp xếp các điểm ảnh trong cửa sổ này theo thứ tự (tăng dần hoặc giảm dần tùy ý) . Cuối cùng, gán điểm ảnh nằm chính giữa (trung vị) của dãy giá trị điểm ảnh đã được sắp xếp ở trên cho giá trị điểm ảnh đang xét của ảnh đầu ra output. Bộ lọc này được minh họa trong hình 1-3. Hình 1-3. Hình ảnh minh họa về phép lọc trung vị Các bước cơ bản của kỹ thuật lọc trung vị  Quét cửa sổ lọc lên các thành phần của ảnh gốc; điền các giá trị được quét vào cửa sổ lọc.  Lấy các thành phần trong của sổ lọc để xử lý.  Sắp xếp theo thứ tự các thành phần trong cửa sổ lọc.  Lưu lại thành phần trung vị, gán cho ảnh output Phân đoạn ảnh dựa trên thuật toán nở vùng Nguyễn Đình Phúc _ CT1701 16 Kết quả của hai bộ lọc trung vị và lọc trung bình được thể hiện qua hình 1-4. Cả hai bộ lọc đều sử dụng cửa sổ lọc 3x3. Có thể thấy bộ lọc trung vị làm việc tốt hơn bộ lọc trung bình, nó làm mờ các cạnh của hình ảnh rất ít. Hình ảnh sau khi lọc cũng trở nên sắc nét hơn bộ lọc trung bình khá nhiều. Hình 1-4. Kết quả lọc ảnh theo 2 phương pháp trung bình và trung vị (a) Ảnh gốc-không bị nhiễu (b) Ảnh gốc sau khi có thêm nhiễu (c) Kết quả lọc trung bình (d) Kết quả lọc trung vị Phân đoạn ảnh dựa trên thuật toán nở vùng Nguyễn Đình Phúc _ CT1701 17 1.3 Kỹ thuật tìm biên trong xử lý ảnh 1.3.1 Một số khái niệm Điểm biên: Một điểm ảnh được coi là đ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) . Ví dụ trong ảnh nhị phân, điểm đen gọi là điểm biên nếu lân cận nó có ít nhất một điểm trắng. Đường biên: là tập hợp các điểm biên liên tiếp tạo thành một đường biên. Ý nghĩa của đường biên trong xử lý: Thứ nhất, đường biên là một loại đặc trưng cục bộ tiêu biểu trong phân tích, nhận dạng ảnh. Thứ hai, người ta sử dụng biên làm phân cách các vùng xám (màu) cách biệt. Ngược lại, người ta cũng sử dụng các vùng ảnh để tìm đường phân cách. Đường biên là nơi mà các điểm ảnh lân cận nhau có cường độ thay đổi mạnh một cách đột ngột. Một số kiểu đường biên hay gặp trên thực tế được minh họa trên hình 1-5. Hình 1-5. Một số kiểu đường biên thông dụng 1.3.2 Các phương pháp phát hiện biên Các phương pháp phát hiện biên truyền thống thường dựa trên kết quả của phép nhân chập giữa bức ảnh cần nghiên cứu f (x, y) và một bộ lọc 2D h (x, y) thường được gọi là mặt nạ (mask) . Công thức phát hiện biên được trình bày như bên dưới: 1 2 1 2 1 2 (x, y)*f(x, y) (k ,k )f(x k , k )dk k h h y d       (1. 3) Phân đoạn ảnh dựa trên thuật toán nở vùng Nguyễn Đình Phúc _ CT1701 18 Cấu trúc và giá trị của các toán tử phát hiện biên sẽ xác định hướng đặc trưng mà toán tử nhạy cảm với biên. Có một số toán tử thích hợp cho các đường biên có hướng nằm ngang, một số toán tử lại thích hợp cho việc tìm kiếm biên dạng thẳng đứng hay theo hướng đường chéo. Có nhiều phương pháp phát hiện biên đang được áp dụng, tuy nhiên ta có thể phân thành hai nhóm cơ bản là phát hiện biên dùng Gradient và phương pháp Laplacian. Phương pháp Gradient. Phương pháp phát hiện biên dùng Gradient (sử dụng các toán tử Roberts, Prewitt, Sobel, Canny) dựa vào tính giá trị cực đại và cực tiểu của đạo hàm bậc nhất của ảnh. Đạo hàm bậc nhất theo hướng ngang và dọc được tính theo công thức (1. 4) x y f G x f f G y                          (1. 4) Biên độ của vector gradient hay độ lớn tổng cộng của giá trị đạo hàm nằm tại biên là kết hợp của cả hai giá trị này theo công thức (1. 5) 2 2 | | x y f f G G     (1. 5) Hướng của vector gradient được xác định theo công thức (1. 6) 1 tan Gx f Gy           (1. 6) Hướng của biên sẽ vuông góc với hướng của vector gradient này.  Toán từ Sobel Trên thực tế Sobel sử dụng hai mặt nạ có kích thước [3 x 3] trong đó một mặt nạ chỉ đơn giản là sự quay của mặt nạ kia đi một góc 90° như ở hình 1-6. Các mặt nạ này được thiết kế để tím ra các đường biên theo chiều đứng và chiều ngang một cách tốt nhất. Khi thực hiện phép tích chập giữa ảnh và Phân đoạn ảnh dựa trên thuật toán nở vùng Nguyễn Đình Phúc _ CT1701 19 các mặt nạ này ta nhận được các gradient theo chiều đứng và chiều ngang Gx, Gy. Toán tử Sobel có dạng như hình 1-6. Hình 1-6. Toán tử Sobel  Toán tử Prewitt Phương pháp Prewitt gần giống với Sobel. Đây là phương pháp lâu đời nhất, cổ điển nhất. Toán tử Prewitt được mô tả trên hình 1-7. Hình 1-7. Toán tử Prewitt  Toán tử Robert Tương tự như Sobel, ta tính đường biên ngang và dọc một cách riêng rẽ dùng 2 mặt nạ như hình 1-8, sau đó tổng hợp lại để cho đường biên thực của ảnh. Hình 1-8. Toán tử Robert Phân đoạn ảnh dựa trên thuật toán nở vùng Nguyễn Đình Phúc _ CT1701 20 1.4 Biến đổi khoảng cách 1.4.1 Giới thiệu Biến đổi khoảng cách (Distance tranform) là thuật toán biến đổi giá trị của điểm ảnh thông qua khoảng cách của nó so với điểm biên trong bức ảnh. Thông thường một bức ảnh sẽ được chia thành các thành phần như sau:  Điểm đối tượng là những điểm trực tiếp cấu thành lên đối tượng. Trong ảnh nhị phân, điểm đối tượng là những điểm có mức xám bằng 1.  Điểm nằm ngoài đối tượng, hay còn gọi là điểm nền, trong ảnh nhị phân, điểm nền là những điểm có giá trị mức xám bằng 0  Giao của các điểm đối tượng và các điểm nền được gọi là biên ảnh viết tắt là B. 1.4.2 Thuật toán biến đổi khoảng cách đơn giản. Thuật toán biến đổi khoảng cách đơn giản được trình bày như sau: Đầu tiên, chỉ định mỗi phần tử trên đường biên một giá trị khoảng cách là 0, I (s) =0 Trong đó điểm “s” là những điểm nằm trong B (B là đường biên) . Sau đó với mỗi điểm “t” không nằm trong B thì chúng ta gán I (t) =min{d (s, t) , trong đó d (s, t) là khoảng cách Euclid từ điểm s đến điểm t. Giải thuật của thuật toán này được trình bày bên dưới: for (y = 1; y

5/5 - (1 bình chọn)

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *