1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thiết kế mô hình và mô phỏng hệ thống nhận dạng khuôn mặt người,đề tài nghiên cứu khoa học sinh viên

64 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết kế mô hình và mô phỏng hệ thống nhận dạng khuôn mặt người,đề tài nghiên cứu khoa học sinh viên
Trường học Trường Đại học Bách Khoa Hà Nội
Chuyên ngành Nghiên cứu và ứng dụng hệ thống nhận dạng khuôn mặt
Thể loại Đề tài nghiên cứu khoa học
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 64
Dung lượng 1,21 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

H ệ thống truy vấn Ảnh mặt người cần nhận dạng sẽ được đưa vào hệ thống truy vấn để rút trích đặc trưng.Các đặc trưng mới này sẽ được so khớp với các đặc trưng trong cơ sở dữ liệu.. Các

Trang 1

Mục Lục

Mục Lục i

Danh Mục Hình Ảnh iii

Phần 1 MỞ ĐẦU 1

1 Tính cấp thiết của đề tài 2

2 Mục tiêu đề tài 2

3 Đối tượng và phạm vi nghiên cứu 2

Phần 2 NỘI DUNG 3

Chương 1 NGUYÊN LÝ HOẠT ĐỘNG CỦA CÁC HỆ THỐNG NHẬN DẠNG MẶT NGƯỜI 4

1.1 Hệ thống kết nạp 5

1.2 Hệ thống truy vấn 5

1.3 Khó khăn và thách thức trong việc xác định khuôn mặt người 6

Tóm tắt kết quả nghiên cứu chương 1 : 7

Chương 2ĐẠI CƯƠNG VỀ XỬ LÝ ẢNH 8

2.1 Một số khái niệm cơ bản trong ảnh và xử lý ảnh 8

2.1.1.Khái niệm ảnh 8

2.1.2 Điểm ảnh 9

2.1.3 Phân loại ảnh số 10

2.1.4 Xử lý ảnh là gì ? 13

2.2 Các bước cơ bản trong xử lý ảnh 13

2.2.1 Thu nhận ảnh (Image Acquisition) 13

2.2.2.Tiền xử lý (Image Processing) 14

2.2.3.Phân đoạn (Segmentation) hayphânvùngảnh 14

2.2.4.Biểu diễn ảnh (Image Representation) 14

2.2.5.Nhận dạngvà nội suy ảnh (ImageRecognition and Interpretation) 14

2.3 Áp dụng xử lý ảnh vào đề tài nghiên cứu 14

2.3.1 Thu nhận ảnh và cắt lấy phần ảnh chứa mặt người 14

2.3.2 Tăng cường độ tương phản và lọc nhiễu 16

2.3.3 Làm nổi biên ảnh 16

2.3.4 Phân đoạn ảnh 16

Tóm tắt kết quả nghiên cứu chương 2 : 17

Chương 3 ỨNG DỤNG CỦA MATLAB TRONG XỬ LÝ ẢNH 18

3.1 Đọc và hiển thị ảnh 18

3.2 Xử lý histogram 18

3.3 Một số hàm chuyển đổi ảnh 23

3.3.1Chuyển đổi giữa các kiểu dữ liệu ảnh 23

3.3.2 Chuyển đổi giửa các kiểu ảnh 23

3.4 Giới thiệu về tách biên ảnh 24

3.5 Lọc ảnh 26

3.5.1 Lọc trong miền không gian 26

Trang 2

3.5.3 Lọc thích nghi 28

3.6 Nén ảnh 28

Tóm tắt kết quả nghiên cứu chương 3 : 29

Chương 4 TRÍCH ĐẶC TRƯNG ẢNH 30

4.1 Đặc trưng của ảnh 30

4.2.Phương pháp trích đặc trưng ảnh bằng PCA 31

4.2.1 Các khái niệm 31

4.2.2 Ứng dụng giải thuật PCA để trích đặc trưng ảnh: 37

4.2.3 Áp dụng phương pháp PCA vào đề tài nghiên cứu 40

4.3 Lưu đồ giải thuật trích đặc trưng ảnh 40

Tóm tắt kết quả nghiên cứu chương 4: 41

Phần 3 KẾT LUẬN VÀ KIẾN NGHỊ 42

1 Kết quả của đề tài 43

2 Kiến thức thu được 43

3 Những hạn chế của đề tài 43

4 Hướng phát triển 43

5 Kết quả mô phỏng 44

TÀI LIỆU THAM KHẢO 52

PHỤ LỤC 53

CÁC CHƯƠNG TRÌNH CHÍNH CỦA ĐỀ TÀI 53

Trang 3

Danh Mục Hình Ảnh

Hình 1.1: Hệ thống nhận dạng mặt người 4

Hình 2.1: Cấu tạo tổng quát của một ảnh số 8

Hình 2.2: Ảnh mức xám 10

Hình 2.3: Ảnh nhị phân 11

Hình 2.4: Ảnh chỉ số 11

Hình 2.5: Ảnh màu 12

Hình 2.6: Quá trình xử lý ảnh 13

Hình 2.7: Các bước cơ bản trong xử lý ảnh 13

Hình 2.9: Phân đoạn ảnh 17

Hình 3.1: Trước khi cân bằng histogram 19

Hình 3.2: Sau khi cân bằng histogram 19

Hình 3.3: Đầu ra mức xám 20

Hình 3.5: Sau khi phối histogram 21

Hình 3.6: Mức xám ban đầu của ảnh 22

Hình 3.7: Cường độ mức xám sau khi phối hợp 22

Hinh 3.8: Tách biên ảnh dung hàm edge 26

Hình 3.9: Lọc ảnh tuyến tính trong miền không gian 26

Hình 3.10: Lọc phi tuyến trong miền không gian 27

Hình 3.11: Lọc trong miền tần số 27

Hình 3.12: Lọc thích nghi median 28

Hình 3.13: Nén ảnh 28

Hình 3.14: Biến đổi Wavelet hai chiều 29

Hình 4.1: Trích chọn đặc tính của dữ liệu bằng giải thuật PCA 34

Hình 4.2: Lưu đồ giải thuật trích đặc trưng ảnh 40

Trang 4

Phần 1

MỞ ĐẦU

Trang 5

1 Tính c ấp thiết của đề tài

Lĩnh vực nhận dạng ảnh, đặc biệt là nhận dạng mặt người đang ngày càng thu hút sự quan tâm của các nhà khoa học trên thế giới Trên thế giới nhận dạng mặt người không còn là một lãnh vực mới mẻ, nó đã được nghiên cứu từ lâu Nhưng Nhận dạng mặt người là một đề tài còn mới mẻ ở Việt Nam Cùng với sự phát triển về kinh tế, khoa học kỹ thuật không ngừng phát triển ở nước ta trong những năm qua Chúng ta cần phải tiếp cận các lĩnh vực mới trên thế giới, vì thế chúng tôi quyết định chọn đề tài nghiên cứu là “nhận dạng mặt người”

Trong Đề tài này trước hết chúng tôi xin giới thiệu các phương pháp xử lý ảnh cơ bản

và các phương pháp nhận dạng truyền thống.Trong các ứng dụng của xử lý ảnh, các bước xử lý cơ bản đóng một vai trò hết sức to lớn trong việc khử nhiểu, khôi phục ảnh

và làm cho ảnh sắc nét hơn

Trong phần tiếp theo của đề tài, đây cũng là phần chính của đề tài, chúng tôi giới thiệu nhận dạng mặt người bằng phương pháp PCA.Trong phần này, chúng tôi chỉ nhận dạng mặt người trên cơ sở dữ liệu ảnh có sẵn (ảnh gray, kích thước 111x111) Chúng tôi sẽ trình bày những kết quả đã đạt được và phân tích ưu điểm và nhược điểm của từng phương pháp

2 M ục tiêu đề tài

- Tìm hiểu cơ chế làm việc của một hệ thống nhận dạng mặt

- Tìm hiểu cơ sở lý thuyết của phương pháp PCA

- Tìm hiểu việc ứng dụng phương pháp PCA để xây dựng một hệ thống nhận

dạng mặt

- Nghiên cứu, tìm hiểu về công cụ xử lý ảnh trong Matlab

- Xây dựng chương trình demo

3 Đối tượng và phạm vi nghiên cứu

Đối tượng nghiên cứu của đề tài là khuôn mặt người.Bằng phương pháp phân tích và

xử lý ảnh tĩnh về khuôn mặt người được chụp từ camera Đề tài nhằm xây dựng chương trình demo xử lý và nhận dạng mặt người có sẵn trong cơ sở dữ liệu và đưa ra thông báo

Trang 6

Phần 2

NỘI DUNG

Trang 7

Chương 1 NGUYÊN LÝ HOẠT ĐỘNG CỦA CÁC HỆ THỐNG NHẬN DẠNG MẶT

Hình 1.1: Hệ thống nhận dạng mặt người

So kh ớp ảnh

So kh ớp ảnh

Trang 8

Ảnh và thông tin mặt người được đưa vào hệ thống kết nạp để rút trích đặc trưng.Mỗi khuôn mặt người khác nhau sẽ có các đặc trưng khác nhau Các đặc trưng này có thể

là mắt, mũi, miệng, lông mày, …sau khi được rút trích sẽ được lưu trữ lại tạo tập cơ

sở dữ liệu

1.2 H ệ thống truy vấn

Ảnh mặt người cần nhận dạng sẽ được đưa vào hệ thống truy vấn để rút trích đặc trưng.Các đặc trưng mới này sẽ được so khớp với các đặc trưng trong cơ sở dữ liệu Quá trình so khớp này sẽ đưa ra một xác nhận nếu thỏa mãn một ngưỡng nào đó do

hệ thống nhận dạng yêu cầu

Nhận dạng mặt người đã được nhiều người nghiên cứu với nhiều phương pháp khác nhau, các giải thuật được nhiều người biết đến đó là: PCA, Mô hình ẩn Markov, Neural Networks và Phân tích đặc trưng Mỗi giải thuật thường thực hiện tốt trong một điều kiện nhất định và có các ứng dụng trong các yêu cầu thực tiễn cụ thể Nhận dạng mặt là một vấn đề phức tạp vì cùng một người nhưng ảnh mặt sẽ thay đổi khi:

• Tư thế khác nhau

• Nét biểu cảm khác nhau

• Sự chiếu sáng (độ tương phản) của ảnh

• Trang điểm , bị che khuất, thay đổi râu tóc

• Góc nhìn khi chụp ảnh cũng không cố định

Những hệ thống nhận dạng mặt người được cài đặt ở sân bay, nơi truyền thông đa phương tiện và những nơi công cộng khác có thể phát hiện sự hiện diện của một người trong đám đông Một số ứng dụng điển hình của các phần mềm nhận dạng mặt:

- Nhận dạng một người có phải là tội phạm truy nã hay không giúp cơ quan an ninh quản lý tốt con người

- Hệ thống quan sát theo dỏi và bảo vệ Các camera sẽ xác định đâu là con người

và đưa ra các yêu cầu, cảnh báo hay xác định một người là ai - Trong trường hợp này

một ảnh được so sánh với tất cả những ảnh trong cơ sở dữ liệu (1:N) để xác định xem người đó có thể là ai trong số những người ta đã biết và lưu ảnh trong cơ sở dữ liệu

Trang 9

- Theo dõi thời gian làm việc của nhân viên - Hệ thống nhận dạng mặt sẽ theo dõi

sự hiện diện của nhân viên tại nơi làm việc, ngăn chặn tình trạng trốn việc Ta có thể

sử dụng hệ thống này vào việc chống gian lận trong thi cử bằng cách thi hộ

- Một khả năng ứng dụng khác phải kể đến là ATM và an ninh trong kiểm tra việc gởi và lĩnh tiền qua ngân hàng Hệ thống có thể xác nhận mặt của khách hàng một cách nhanh chóng Sau khi khách hàng đi vào buồng lĩnh tiền, một camera kỹ thuật số sẽ chụp ành cùa khách hàng Phần mềm nhận dạng mặt sau đó sẽ được sử dụng để ngăn chặn những trường hợp bị ăn cắp thẻ Ngoài ra, bằng việc sử dụng phần mềm nhận dạng mặt, ta có thể không cần dùng thẻ ATM, hoặc số PIN (Personal Identify Number) để xác nhận một khách hàng

- Trong đề tài này ta quan tâm đến phương pháp nhận dạng mặt người dùng PCA

1.3 Khó khăn và thách thức trong việc xác định khuôn mặt người

Việc xác định khuôn mặt người có những khó khăn nhất định như sau:

Hướng (pose) của khuôn mặt đối với máy ảnh, như: nhìn thẳng, nhìn nghiêng

hay nhìn từ trên xuống Cùng trong một ảnh có thể có nhiều khuôn mặt ở những tư thế khác nhau Sự có mặt của các chi tiết không phải là đặc trưng riêng của khuôn mặt người, như: râu quai nón, mắt kính, …

• Các nét mặt (facial expression) khác nhau trên khuôn mặt, như: vui, buồn, ngạc nhiên,…

• Mặt người bị che khuất bởi các đối tượng khác có trong ảnh

• Điều kiện ảnh, đặc biệt là về độ sáng và chất lượng ảnh, chất lượng thiết bị thu hình

• Trục toạ độ của máy ảnh so với ảnh chụp

• Kích thước khác nhau của các khuôn mặt người, và đặc biệt là trong cùng một ảnh

• Màu sắc của môi trường xung quanh, hay màu sắc quần áo của người được chụp lấy ảnh

• Xuất hiện thành phần khuôn mặt hay không

• Nhiều khuôn mặt có vùng da dính lẫn nhau

Các khó khăn trên chứng tỏ rằng bất cứ phương pháp giải quyết (thuật toán) bài toán xác định khuôn mặt người sẽ không thể tránh khỏi một số khiếm khuyết nhất định Để

Trang 10

các tiêu chí sau:

• Tỷ lệ xác định chính xác là tỷ lệ số lượng các khuôn mặt người được xác định đúng từ hệ thống khi sử dụng một phương pháp để xây dựng so với số lượng khuôn mặt người thật sự có trong các ảnh (detection rate)

• Số lượng xác định nhầm là số lượng vùng trong ảnh không phải là khuôn mặt người mà hệ thống xác định nhầm là khuôn mặt người (false positives)

• Thời gian thực hiện là thời gian để máy tính xác định khuôn mặt người trong ảnh (running time)

Tóm tắt kết quả nghiên cứu chương 1 :

-Hiểu được nguyên lý và các bước làm việc của một hệ thống nhận dạng mặt người

-Hướng phát triển và các ứng dụng của nhận dạng mặt người

-Những khó khăn thách thức của việc nhận dạng

Trang 11

Chương2 ĐẠI CƯƠNG VỀ XỬ LÝ ẢNH

2 1 Một số khái niệm cơ bản trong ảnh và xử lý ảnh

Trong ngành khoa học máy tính, xử lý ảnh là một dạng của xử lý tín hiệu cho đầu vào

là một ảnh hoặc các frame của phim ảnh.Đầu ra có thể là một hình ảnh, hoặc tập hợp các ký tự hoặc các tham số liên quan tới hình ảnh.Thường thì kỹ thuật xử lý ảnh có liên quan tới xử lý tín hiệu hai chiều và được áp dụng bằng một chuẩn riêng về kỹ thuật xử lý ảnh cho nó

2.1.1 Khái niệm ảnh

Ảnh có thể được biểu diễn bằng hàm 2 biến f(x,y) Trong đó, ‘x’ và ‘y’ là cặp toạ độ trong miền không gian ảnh Giá trị của hàm f tại cặp toạ độ (x,y) được gọi là cường

độ sáng ( intensity ) hoặc mức xám ( grayscale ) của ảnh tại điểm đó Khi x, y và biên

độ hàm f(x,y) của ảnh là các giá trị xác định của các mức rời rạc, chúng ta gọi đó là ảnh số Do các máy tính làm việc trên dữ liệu số ( rời rạc ) cho nên khái niệm xử lý ảnh kỹ thuật số ra đời Xử lý ảnh số xuất phát từ 2 lĩnh vực ứng dụng chủ yếu là : nâng cao chất lượng ảnh phục vụ tốt hơn cho đời sống nhận thức của con người và xử

lý ảnh phục vụ cho việc lưu trữ, truyền thông tin ảnh và nhận dạng ảnh Ảnh số bao gồm một số hữu hạn các phần tử.Mỗi phần tử trong ảnh số có một vị trí và mức năng lượng khác nhau.Thành phần nhỏ nhất trong ảnh số đó là Pixel.Pixel là khái niệm được sử dụng rộng rãi nhất để chỉ số phần tử ảnh.Một ảnh số tổng quát có cấu tạo như dưới đây

Hình 2.1: Cấu tạo tổng quát của một ảnh số

Trang 12

Hệ thống toạ độ ảnh thực ra là một ma trận ảnh Do đó, hàm f(x,y) còn có thể biểu diễn dưới dạng ma trận như sau

Hay

Trong đó, ai,j = f(x=i,y=j)=f(i,j)

Quá trình lấy mẫu và lượng tử hoá ảnh cần xác định các thông số như số hàng M, số cột N và số mức thang xám L Các giá trị M, N phải là các số nguyên dương Số mức xám L thường được biểu diễn bằng các bit nhị phân để thuận lợi cho việc tính toán và lưu trữ vì máy tính làm việc trên hệ thống số nhị phân Do đó, số mức thang xám thường là bội số ‘k’ lần của 2 ( k là số bit nhị phân biểu diễn số mức xám L = 2k

) Như vậy, giá trị của các phần tử trong ma trận A phải nằm trong khoảng [0,L-1]

Số bit cần thiết để lưu trữ một ảnh đã được số hoá là: b = M*N*L

2.1.2 Điểm ảnh

Nguồn gốc của một bức ảnh tự nhiên khi ta thu về là một ảnh liên tục về không gian

và độ sáng Để tiến hành xử lý bằng máy tính thì ảnh cần phải được số hóa

(Số hoá ảnh là sự biến đổ igần đúng mộ tảnh liên tục thành một tập điểm phù hợp với ảnh thật về vị trí (không gian) và độ sáng ) Khoảng cách giữa các điểm ảnh đó được thiết lập sao cho mắt người không phân biệt được ranh giới giữa chúng Mỗi một điểm như vậy gọi là điểm ảnh hay gọi tắt là Pixel

Vậy điểm ảnh (Pixel) là một phần tử của ảnh số 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

Trang 13

cảm nhận sự lien 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

Hình 2.2: Ảnh mức xám

Trang 14

Ảnh nhị phân là một ma trận mà các giá trị phần tử của nó có giá trị logic ‘0’, ‘1’

Trang 15

Ảnh màu ( RGB image )

Ảnh màu được tạo thành từ 3 ảnh xám R, G, B Do đó, ảnh màu RGB có 3 chiều và

có các tính chất của ảnh mức xám tức giá trị phần tử của nó có thể là lớp dữ liệu số interger 8 bit [0,255] hay dữ liệu số interger 16 bit [0,65535] Ngoài ra, do ảnh màu cũng như ảnh mức xám ( grayscale image ) có thể biểu diễn ở dạng double ( dạng số thực )

Hình 2.5: Ảnh màuẢnh màu RGB là tập hợp 3 ảnh mức xám R, G, B Ngoài ra, ảnh màu ( true color ) còn được biểu diễn ở các hệ trục khác : HSI, CMY, CMYK, …

Hình 2.6: Ảnh màu được biểu diễn ở các hệ trục

Trang 16

Con người thu nhận thông tin qua các giác quan, trong đó thị giác đóng vai trò quan trọng nhất Những năm trở lại đây với sự phát triển của phần cứng máy tính, xử lý ảnh

và đồ hoạ nó phát triển một cách mạnh mẽ vào có nhiều ứng dụng trong cuộc sống Xử

lý ảnh và đồ hoạ đóng một vai trò quan trọng trong tương tác người và máy

Quá trình xử lý ảnh được xem như là quá trình thao tác ảnh đầu vào nhằm cho ra kết quả mong muốn Kết quả đầu ra của một quá trình xử lý ảnh có thể là mộ tảnh

“tốthơn” hoặc một “kết luận”

Hình 2.6: Quá trình xử lý ảnh

2.2 Các bước cơ bản trong xử lý ảnh

Quá trình xử lý một tấm ảnh được tóm tắc bằng sơ đồ sau :

Hình 2.7: Các bước cơ bản trong xử lý ảnh

2.2.1 Thu nhận ảnh (Image Acquisition)

Ảnh có thể nhận qua camera màu hoặc đen trắng Thường ảnh nhận qua camera là ảnh tương tự (loại camera ống chuẩn CCIR với tần số 1/25, mỗi ảnh 25 dòng), cũng có loại camera đã số hoá (như loại CCD–Change Coupled Device) là loại photodiode tạo cường độ sáng tại mỗi điểm ảnh

Camera thường dùng là loại quét dòng; ảnh tạo ra có dạng hai chiều Chất lượng mộ tảnh thu nhận được phụ thuộcvào thiết bị thu, vào môi trường(ánh sáng, phong cảnh)

Trang 17

2.2.2 Tiền xử lý (Image Processing)

Sau bộ thu nhận, ảnh có thể nhiễu độ tương phản thấp nên cần đưa vào bộ tiền xử lý

để nâng cao chất lượng Chức năng chính của bộ tiền xử lý là lọc nhiễu, nâng độ

tương phản để làm ảnh rõ hơn, nét hơn

2.2.3.Phân đoạn (Segmentation) hayphânvùngảnh

Phân vùng ảnh là quá trình tách một ảnh đầu vào thành các vùng thành phần để biểu diễn phân tích, nhận dạng ảnh

2.2.4 Biểu diễn ảnh (Image Representation)

Đầu ra ảnh sau phân đoạn chứa các điểm ảnh của vùng ảnh (ảnh đã phân đoạn)cộng

với mã liên kết với các vùng lận cận Việc biến đổi các số liệu này thành dạng thích

hợp là cần thiết cho xửlý tiếp theo bằng máytính.Việc chọn cáctính chất để thể hiện

ảnh gọi là trích chọn đặc trưng (Feature Selection) gắn với việc tách các đặc tính của

ảnh dưới dạng các thông tin định lượng hoặc làm cơ sở để phân biệt lớp đối tượng này

với đối tượng khác trong phạm vi ảnh nhận được

2.2.5.Nh ận dạngvà nội suy ảnh (ImageRecognition and Interpretation)

Nhận dạng ảnh là quá trình xác đị nhảnh Quá trình này thường thu được bằng cách so sánh với mẫuc huẩn đã đượ chọc (hoặc lưu) từt rước Nội suy là phán đoán theo ý nghĩa trên cơ sở nhận dạng Theo lý thuyết về nhận dạng,các mô hình toán học vềảnh được phân theo hai loại nhận dạng ảnh cơb ản:

+ Nhận dạng theo tham số

+ Nhận dạng theo cấu trúc

2.3.1 Thu nhận ảnh và cắt lấy phần ảnh chứa mặt người

Ảnh được thu nhận từ camera Tín hiệu thu được truyền về máy tính thông qua cổng USB Tiếp theo ảnh người sẽ được chụp ảnh lại và lưu vào máy tính

Ta có ảnh thu được là ảnh màu RGB có kích thước lớn hơn320 x 240 x 3, được lưu dưới dạng *.JPG Lúc này ảnh được lưu trong máy tính dưới dạng các ma trận số

Để nhận dạng mặt người từ một ảnh lớn, ta phải trích cho được khuôn mặt người thì mới đưa vào nhận dạng được Có nhiều phương pháp khác nhau để thực hiện điều này như dựa vào màu da trong không gian RGB, hay không gian màu SHV,…Nhưng dù

Trang 18

các phương pháp giải quyết vấn đề này hiện nay vẫn chưa đạt được sự chính xác tuyệt đối

Để phục vụ cho việc nhận dạng ảnh từ camera đưa về, phương pháp trích màu da dựa trên không gian màu RGB được sử dụng trong luận văn này.Ảnh được quét qua toàn

bộ và phân ngưỡng.Nếu những điểm nào có các thành phần RGB thõa điều kiện màu

da, gán màu trắng, ngược lại gán màu đen.Qua thử nghiệm, màu da người có các thành phần R,G, B tại mỗi điểm ảnh thỏa đồng thời: R > 95, G > 40, B > 20, R > G, R

> B, R – G > 15

Ảnh vào Ảnh mặt nạ Ảnh được tách Hình 2.8: Thu nhận và cắt ảnh chỉ chứa mặt ngườiSau đó ta quét qua toàn bộ ảnh, xác định vị trí mà tại đó tổng số điểm màu trắng của hàng và cột là lớn nhất.Đây là vị trí nẳm giữa khuôn mặt, ta sẽ cắt khuôn mặt thành ảnh có kích thước nhỏ hơn

Tiếp theo ảnh sẽ được tăng cường độ tương phản và lọc nhiễu trước khi chuyển qua ảnh xám

Trang 19

2.3.2 Tăng cường độ tương phản và lọc nhiễu

Ảnh thu nhận được vào các thời điểm khác nhau sẽ có độ sáng tối khác nhau Do đó ảnh thu nhận được thường có dộ tương phản thấp Để có thể trích đặc trưng dể dàng, ảnh cần phải được nâng cao độ tương phản, cân bằng mức sáng tối

Bên cạnh đó để nâng cao chất lượng ảnh, ảnh mặt người cần phải được loại bỏ nhiễu

2.3.3 Làm nổi biên ảnh

Với việc định vị khuôn mặt người dựa vào màu da, chưa thể định vị chính xác và cắt

ra phần ảnh chỉ chứa đúng khuôn mặt người Do đó, mục đích của việc làm nổi đường biên và phân đoạn là nhằm loại bỏ những phần phụ không thuộc khuôn mặt người Trong giai đoạn này, ảnh được chuyển qua ảnh xám để tiện lợi cho quá trình xử lý và tính toán Ta sử dụng mặt nạ Sobel trên toàn ảnh để làm nổi đường biên giữa các vùng ảnh

Quá trình trên chỉ ra được đường biên của ảnh đồng thời cũng loại bỏ các ảnh có vùng diện tích nhỏ không liên quan đến mặt người

2.3.4 Phân đoạn ảnh

Ảnh sau khi làm nổi biên vẫn còn tồn tại một số vùng ảnh không thuộc về người.Để loại bỏ các vùng ảnh này, ảnh sẽ được phân đoạn.Ảnh người sẽ được nối liền các đường biên lại với nhau bằng cách làm dày các đường biên ảnh.Đồng thời ảnh được lấp đầy các lỗ trống Ảnh thu được sẽ kiểm tra kích thước các vùng ảnh Các vùng ảnh có kích thước nhỏ sẽ được loại bỏ.Lúc này toàn bộ các vùng ảnh không liên quan đên người đã được loại bỏ

Trang 20

Tóm tắt kết quả nghiên cứu chương 2 :

-Hiểu được các khái niệm về ảnh số

-Phân loại ảnh số

-Khái niệm và các bước của quá trình xử lý ảnh

Trang 21

Chương 3 ỨNG DỤNG CỦA MATLAB TRONG XỬ LÝ ẢNH

3 1 Đọc và hiển thị ảnh

Hàm imread: Ảnh được đọc trong môi trường Matlab bằng cách dùng hàm imread

Một số định dạng ảnh:

Hàm imshow : Ảnh được hiển thị trên màn hình Matlab dùng hàm imshow

Hàm imwrite: Ghi dữ liệu ảnh lên disk

3.2 Xử lý histogram

Histogram của 1 ảnh grayscale có L mức xám khác nhau là một hàm rời rạc, có biểu thức h(rk)=nk, trong đó rk là giá trị mức xám thứ k trong đoạn [0,L-1] và nk là số pixels có giá trị mức xám là rk Ví dụ với đoạn [0,255], r0=0, r1=1… Histogram thường được chuẩn hóa Với n là tổng số pixels của ảnh, histogram chuẩn hóa được tính qua biểu thức:

P(rk) = ℎ(𝑟𝑘)

𝑛 =

𝑟𝑘𝑛

Ta có thể xem p(rk) là hàm mật độ xác suất của rk, cho biết khả năng xuất hiện tương

ứng của từng giá trị mức xám Trong Matlab, ta có thể xử dụng hàm imhist để làm

việc với histogram >>h=imhist(f,b) f là ảnh ban đầu, b là số đoạn biểu diễn(mặc định giá trị là 256) Với b là 1 giá trị nhỏ hơn, giả xử như 2, thì thang cường độ sẽ chia làm

2 khoảng : 0 đến 127, 128 đến 255, trong đó h(1) là số pixels có giá trị trong đoạn [0,127] và h(2) là số pixels có giá trị trong đoạn [127,255]

Trang 22

Giả xử ta có phép biến đổi sau: s = ∫ 𝑝𝑝0𝑟 𝑟(w)dw

Ta có được hàm mật độ xác suất của s:

Với phép biến đổi này, ảnh sau xử lý sẽ có biểu đồ histogram gần giống với ảnh ban đầu nhưng trải rộng trên toàn đoạn [0,1],làm cho dải động lớn hơn và độ tương phản

cao hơn Matlab cung cấp cho ta hàm histeq để thực hiện cân bằng histogram

g=histeq(f, nlev) Với f là ảnh vào và nlev là số mức cường độ của ảnh ra Giá trị mặc định của nlev là 64, thường ta chọn là 256 để cùng mức với histogram ảnh ban đầu

Hình 3.1: Trước khi cân bằng histogram

Hình 3 2: Sau khi cân bằng histogram

Trên là ảnh trước và sau cân bằng histogram cùng với biểu đồ histogram tương ứng

Trang 23

Hình 3.3: Đầu ra mức xám

Phối hợp histogram

Trong phần trước, chúng ta thấy được cân bằng histogram là một hàm có tính thích nghi với ảnh đầu vào Phương pháp cân bằng histogram tương đối đơn giản, có thể đoán trước histogram của ảnh sau xử lý và có thể cho ảnh ra có chất lượng được nâng cao rõ rệt Tuy nhiên, histogram sau cân bằng lại cố định với mỗi ảnh đầu vào và không thể thay đổi được Trong một số trường hợp, việc cân bằng histogram không cho kết quả như ý, hình ảnh sau cân bằng histogram không được cải thiện hoặc không đáp ứng được yêu cầu Xét một ví dụ cụ thể sau:

Hình 3.4: Trước khi phối hợp histogram

Trang 24

Hình 3 5: Sau khi phối histogram

Hình trên là ảnh ban đầu và sau khi xử lý dùng cân bằng histogram Ta thấy rằng ảnh ban đầu có vùng tối chiếm diện tích rất lớn, do đó histogram có sự tập trung cường

độ về phía phần tối Sau khi cân bằng histogram,do sự tập trung lớn của các thành phần nằm gần 0 của histogram ảnh gốc nên histogram ảnh sau tập trung cường độ về phía nửa trên, làm chất lượng ảnh không được cải thiện, mà còn giảm độ tương phản của ảnh Ta có thể giải quyết vấn đề này bằng cách thực hiện một quá trình gọi là phối hợp histogram(histogram matching) Phối hợp histogram là quá trình biến đổi mức xám của ảnh để histogram của ảnh mới có một hình dạng cụ thể định trước

Ta đã biết phép biến đổi : S = T(r) = ∫ 𝑝𝑝0𝑟 𝑟(w)dw cho ta kết quả là mức xám s trải rộng trên toàn miền Giả xử ta có một biến z sao cho H(z) = S = ∫ 𝑝𝑝0𝑧 𝑧(t)dt

Khi đó z phải thỏa phương trình Z = H-1(s) = [H-1(Tr)].T(r) có thể tìm được từ ảnh ban đầu Nếu ta có pz(z) đã biết thì ta có thể tìm thấy H-1

Trong Matlab ta dùng hàm histeq để thực hiện phối hợp

histogram >>g=hiseq(f,hgram) hgram là một vector gồm các số nguyên đếm số giá trị mức xám với mỗi khoảng chia trong dải mức xám [0,G]

Trang 25

Hình 3 6: Mức xám ban đầu của ảnh

Trở lại với ví dụ trên Ta thấy histogram của ảnh ban đầu có các thành phần mức xám tập trung ở hai phần Phần đầu chiếm tỉ lệ lớn tập trung gần 0, và một phần nhỏ hơn nằm về phía bên phải của histogram Ta đã biết rằng do sự tập trung mức xám tại gần

0 nên histogram ảnh ra không trải trên toàn miền, vì thế ta có thể dùng phối hợp histogram để giảm sự tập trung này mà vẫn giữ được hình dạng tổng thể ban đầu của histogram gốc

Hình 3.7: Cường độ mức xám sau khi phối hợp Ảnh sau phối hợp histogram có độ tương phản tốt hơn Ta có thể thấy rằng các thành phần mức xám trải đều trên khoảng [0,255]

Trang 26

3.3 1Chuyển đổi giữa các kiểu dữ liệu ảnh

 Matlab cung cấp sẵn các hàm thực hiện chuyển kiểu cho các ma trận biểu diễn ảnh, bao gồm : im2double, im2uint8 và im2uint16 Tuy nhiên, khi thực hiện chuyển

kiểu giữa các dữ liệu ảnh cần lưu ý một số điều sau:

Khi chuyển từ một kiểu dữ liệu dùng nhiều bit sang một kiểu dữ liệu dùng it bit hơn thì một số thông tin chi tiết về bức ảnh ban đầu sẽ bị mất

 Không phải lúc nào cũng có thể chuyển đổi kiểu dữ liệu đối với kiểu ảnh indexed, vì các giá trị của ma trận ảnh xác định một địa chỉ trong bản đồ màu chứ không phải là giá trị màu, do đó không thể lượng tử hóa được

3.3.2 Chuy ển đổi giửa các kiểu ảnh

Trang 27

• grayslice: Tạo một ảnh chỉ số từ một ảnh cường độ đen trắng bằng cách đặt ngưỡng

• im2bw: Tạo một ảnh nhị phân từ một ảnh cường độ, ảnh chỉ số hay ảnh RGB trên cơ sở của ngưỡng ánh sáng

• ind2gray: Tạo một ảnh cường độ đen trắng từ một ảnh chỉ số

3 4 Giới thiệu về tách biên ảnh

Biên là vấn đề quan trọng trong trích chọn đặc điểm nhằm tiến tới hiểu ảnh Cho đến

nay chưa có định nghĩa chính xác về biên, trong mỗi ứng dụng người ta đưa ra các độ

đo khác nhau về biên, một trong các độ đo đó là độ đo về sự thay đổi đột ngột về cấp xám Ví dụ: Đối với ảnh đen trắng, một điểm được gọi là điểm biên nếu nó là điểm đen có ít nhất một điểm trắng bên cạnh Tập hợp các điểm biên tạo nên biên hay đường bao của đối tượng Xuất phát từ cơ sở này người ta thường xử dụng hai phương pháp phát hiện biên cơ bản:

Phát hiện biên trực tiếp: Phương pháp này làm nổi biên dựa vào sự biến thiên mức

xám của ảnh Kỹ thuật chủ yếu dùng để phát hiện biên ở đây là dựa vào sự biến đổi cấp xám theo hướng Cách tiếp cận theo đạo hàm bậc nhất của ảnh dựa trên kỹ thuật Gradient, nếu lấy đạo hàm bậc hai của ảnh dựa trên biến đổi gia ta có kỹ thuật

Laplace

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 Kỹ thuật dò biên và phân vùng ảnh là hai bài toán đối ngẫu nhau vì dò biên để thực hiện phân lớp đối tượng mà khi đã phân lớp xong nghĩa là đã phân vùng được ảnh và ngược lại, khi đã phân vùng ảnh đã được phân lớp thành các đối tượng, do đó có thể phát hiện được biên

Phương pháp phát hiện biên trực tiếp tỏ ra khá hiệu quả và ít chịu ảnh hưởng của nhiễu, song nếu sự biến thiên độ sáng không đột ngột, phương pháp tỏ ra kém hiệu

Trang 28

trong trường hợp này

sobel Tìm biên dùng xấp xỉ sobel

prewitt Tìm biên dùng xấp xỉ prewitt

Roberts Tìm biên dùng xấp xỉ roberts

Laplace of a

Gaussian Tìm biên bằng cách tìm điểm chéo 0 sau khi qua bộ lọc Gauss

Zero crossings Tìm biên bằng cách tìm điểm chéo 0 sau khi lọc qua bộ lọc

được xác định bới người sứ dụng

Canndy

Tìm biên bằng chách tìm các cực đại địa phương của gradien f(x,y) gradien được tính toán dựa vào đạo hàm của bộ lọc Gauss phương pháp dùng 2 ngưỡng để tách biên các biên mạnh yếu và gộp các biên yếu ở ngõ ra chí khi chúng được kết nổi vởi các biên mạnh do đó phương pháp này thích hợp với phương pháp tách biên ảnh yếu

Trang 29

Ví dụ minh họa

Hàm edge: Tách biên ảnh

Hinh 3.8: Tách biên ảnh dung hàm edge

3.5 Lọc ảnh

3.5.1 Lọc trong miền không gian

Hàm fspecial: Lọc tuyến tính trong miền không gian

Trang 30

Hàm medfilt2: Lọc phi tuyến trong miền không gian

Trang 31

Hàm dct2: Biến đổi DCT thuận hai chiều

Hàm idct2: Biến đổi DCT ngược hai chiều

Ví dụ minh họa

Hình 3.13: Nén ảnh

Hàm dwt2: Biến đổi Wavelet thuận hai chiều

Hàm idwt2: Biến đổi Wavelet ngược hai chiều

Trang 32

Hình 3.14: Biến đổi Wavelet hai chiều

Tóm tắt kết quả nghiên cứu chương 3 :

-Các hàm đọc và hiển thị ảnh trong matlab

-Xử lý histogram ảnh

-Chuyển đổi các định dạng ảnh

- Tách biên ảnh và lọc ảnh

Ngày đăng: 31/05/2023, 10:41

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w