Tải bản đầy đủ

Báo cáo xử lý ảnh và phát hiện lỗi ảnh

LỜI MỞ ĐẦU

Xử lý ảnh đang là một lĩnh vực đươc quan tâm và đã trở thành một phần rất
quan trọng trọng , liên quan đến nhiều nghành khác như : hệ thống tin học , lý thuyết
thông tin , lý thuyết thống kê , trí tuệ nhân tạo , nhận dạng . Đây là một môn khoa
học tương đối mới mẻ so với nhiều nghành khoa học khác . Nó gồm nhiều quá trình
liên tục . Đầu tiên là thu nhận ảnh từ camera , vệ tinh hay các bộ cảm ứng , …Tín
hiệu lấy vào sẽ được số hóa thành tín hiệu số và chuyển sang giai đoạn xử lý, phân
tích hay lưu trữ lại . Trong quá trình học , chúng em đặc biệt hứng thú với các
phương pháp lọc số để xử lý ảnh . Chính vì vậy nhóm em đã chọn đề tài :

Phát hiện lỗi ảnh vải sử dụng phương pháp đạo hàm.

Đây là một đề tài rất hay, đặc biệt tạo nên nhiều ảnhvới các mục đích của người
dùng . Chúng em đã tìm kiếm và học hỏi từ thầy và từ tài liệu rất nhiều cùng với quá
trình xây dựng ứng dụng , chúng em đã rút ra được rất nhiều kinh nghiệm thực tế
cũng như kiến thức sâu hơn về môn học , có thể trả lời được những thắc mắc từ lâu .
Tuy nhiên do thời gian làm bài tập lớn không có nhiều , cũng chưa có nhiều kinh
nghiệm , tài liệu đầy đủ về lĩnh vực này , nên đề tài của chúng em khó có thể tránh
khỏi thiếu xót , nhưng cũng đã đạt được thắng lợi ban đầu . Chúng em xin cám ơn
thầy đã hướng dẫn giúp chúng em hoàn thành bản báo cáo này. Em xin chân thành

cảm ơn !

1. Phát biểu bài toán


Xử lý ảnh là một lĩnh vực mang tính khoa học và công nghệ. 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ó. Xử lý ảnh có nhiều ứng dụng trong thực tiễn như: hệ
thông tin địa lý, quân sự, y học.
Cụ thể, xử lý ảnh số có rất nhiều ứng dụng như:
• Làm nổi các ảnh trong y học.
• Khôi phục lại ảnh do tác động của khí quyển trong thiên văn học.
• Chuyển tải, nén ảnh khi truyền đi xa hoặc lưu trữ.
Trong lĩnh vực sản xuất, xử lý ảnh đang được ứng dụng một cách rộng rãi và
đem lại nhiều kết quả khả quan. Khoa học hỗ trợ cho kỹ thuật chuẩn đoán hình
ảnh chính là xử lý ảnh. Chẳng hạn như trong các phương pháp: phát hiện lỗi đóng
chai nắp sản phẩm nước ngọt, phát hiện lỗi ảnh vải ….
Trong phạm vi thời gian cho phép, chúng ta sẽ tìm hiểu và ứng dụng các vấn đề
cơ bản như: tìm biên ảnh, thuật toán Gradient
2. Hướng giải quyết

Để có hướng giải quyết tốt nhất đối với bài toán, trước tiên cần nắm các khái
niệm về biên, Gradient.
2.1.

Biên
Biên trong một hình ảnh nói chung có thể được định nghĩa như là đường
viền/đường bao ngăn cách khu vực ảnh liền kề có đặc điểm tương đối
khác biệt, theo một số yếu tố nhất định, một trong số đó là sự thay đổi
đột ngột về mức xám.
Biên cũng có thể hiểu là tập hợp của các điểm biên, là các điểm có sự
thay đổi đột ngột về mức xám (hoặc màu đối với ảnh màu). Ví dụ trong
ảnh nhị phân, một điểm đen được coi là điểm biên nếu lân cận nó là có ít
nhất một điểm trắng.
Dựa theo mức độ biến đổi của đường biên ta có các dạng đường biên
sau:

Các phương pháp nhận dạng biên





Phương pháp phát hiện biên trực tiếp: Dựa vào sự biến thiên mức xám của ảnh,
sử dụng phương pháp chủ yếu là đạo hàm. Ở đây có 2 phương pháp chính
là: Gradient (đạo hàm bậc nhất) và Laplace (đạo hàm bậc hai).



Phương pháp phát hiện biên gián tiếp: Nếu bằng cách nào đó ta phân được ảnh
thành các vùng thì ranh giới giữa các vùng đó gọi là biên, việc phân vùng ảnh
thường phụ thuộc vào kết cấu bề mặt (texture) của ảnh.

Quy trình phát hiện biên

Bước 1: Lọc nhiễu do ảnh ghi vào thường có nhiễu.
Bước 2: Làm nổi biên sử dụng các toán tử phát hiện biên.
Bước 3: Định vị biên (cần loại bỏ biên giả).
Bước 4: Liên kết và trích chọn biên.

 Biên là phần hình ảnh có thông tin quan trọng giúp ta có thể phân tích và nhận

dạng hình ảnh!
2.2.

Gradient

Gradient là một vector có các thành phần biểu thị tốc độ thay đổi giá trị
của điểm ảnh theo 2 hướng x và y, hay có thể nói là nó đại diện cho sự thay
đổi về hướng và độ lớn của một vùng ảnh.
Các thành phần của gradient được tính như sau: Tính như công thức tính đạo
hàm thông thường.
3. Thuật toán

Phạm vi đang nghiên cứu trong bài tập lớn là phương pháp Gradient Based
Method.


3.1.

Gradient
Gradient là một vector có các thành phần biểu thị tốc độ thay đổi giá trị
của điểm ảnh theo 2 hướng x và y, hay có thể nói là nó đại diện cho sự
thay đổi về hướng và độ lớn của một vùng ảnh.
Các thành phần của gradient được tính như sau: Tính như công thức tính
đạo hàm thông thường

Như vậy ta có ta có vector gradient là G(f’x,f’y).
Với dx, dy lần lượt là khoảng cách giữa 2 điểm lân cận theo chiều x và
chiều y.(Ta có thể xem dx, dy là số lượng điểm ảnh giữa 2 điểm.)
Thực tế ta chọn dx = dy = 1 (ta tính lân cận tức là điểm ngay cạnh nó,
nên có thể coi khoảng cách của chúng là 1) tại điểm có tọa độ là (i,j),
thay vào công thức trên ta được:

Do tính chất phức tạp trong tính toán khi áp dụng phương pháp Gradient
trong xử lý ảnh, người ta sử dụng kỹ thuật Gradient dùng cặp mặt nạ
Hx, Hy trực giao (theo 2 hướng vuông góc).
Nếu định nghĩa g1 (f’x), g2 (f’y) là Gradient (vector gradient thành
G(g1,g2)) theo hai hướng x, y tướng ứng thì biên độ (tức độ lớn) g(m,n)
và hướng của biên tại điểm (m,n) được tính như sau:


Để giảm độ phức tạp tính toán, A0 được tính gần đúng như sau:

Việc tính xấp xỉ đạo hàm bậc nhất (f’x và f’y ở đây là g1 và g2) theo các
hướng x và y được thực hiện thông qua 2 mặt nạ nhân chập (toán tử đạo
hàm), tương ứng sẽ cho ta các kỹ thuật phát hiện biên khác nhau tương
ứng với mặt nạ mà nó sử dụng (Roberts, Sobel, Prewitt,..).
Như vậy công việc tiếp theo của chúng ta là phải tính g1, g2 thông
qua 2 cái mặt nạ H1 và H2 mà chúng ta chọn
3.2.

Chọn mặt nạ / Toán tử EDGE OPERATOR
Trong phạm vi bài tập lớn chọn mặt nạ (toán tử) Sobel Operator

3.3.

Thuật toán
Đầu vào:
– Ma trận ảnh.
– Ma trận toán tử/mặt nạ.
– Ngưỡng
Đầu ra:
– Ma trận ảnh gồm các đường biên.
Giải thuật
FOR(các điểm của ảnh : I(i,j))
{
if(nếu là điểm nằm trên đường viền)
I(i,j) = 0;
else{
- Tính Gx (g1) : Nhân chập với Hx


- Tính Gy (g2) : Nhân chập với Hy
- Tính A = |Gx| + |Gy|
- I(i,j) = A >= ngưỡng ? 0 : 1;
}
}
4. Kỹ thuật cài đặt
4.1.
Phần mềm sử dụng
4.2.

Lập trình bằng ngôn ngữ C# trên nền Visual Studio.
Giao diện




Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×