Nhận dạng cử chỉ bàn tay dùng mạng nơ ron, đại học sư phạm kỹ thuật tp hcm, điện tử viễn thông, điện điện tử, lập trình xử lý ảnh, image processing, image.Nhận dạng các cử động của tay người là cách tự nhiên khi tương tác người – máy và ngày nay nhiều nhà nghiên cứu trong các học viện và ngành công ghiệp đang quan tâm đến hướng này. Nó cho phép con người tương tác với máy rất dễ dàng và thuận tiện mà không cần phải mang thêm bất kỳ thiết bị nào khác. Đã có rất nhiều ứng dụng dựa trên cử chỉ bàn tay như: Thiết kế 3D, điều khiển từ xa, ngôn ngữ ký hiệu…Nhận thấy tác dụng của nhận dạng cử chỉ nên nhóm quyết định chọn đề tài này để nghiên cứu
Trang 1BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ VIỄN THÔNG
-ĐỒ ÁN TỐT NGHIỆP NGÀNH: ĐIỆN TỬ VIỄN THÔNG
Đề tài:
NHẬN DẠNG CỬ CHỈ BÀNG TAY DÙNG
MẠNG NƠ-RON
SVTH : NGUYỄN VĂN ĐOÀN- 09917406
NGUYỄN VĂN ĐÔNG- 09773885
TP HỒ CHÍ MINH – 06/2014
Trang 2CHƯƠNG 1 GIỚI THIỆU
1.1 Giới thiệu đề tài
Ngày nay dưới sự phát triển rộng rãi của các ứng dụng công nghệ thông tinvào trong cuộc sống, việc tương tác giữa con người và thiết bị ngày càng trở nênquan trọng Trước đây, bàn phím và chuột là các giao diện chính để giao tiếp giữangười và máy tính Trong các lĩnh vực khác cần tới các thông tin 3D, chẳng hạn nhưtrò chơi máy tính, robot và lĩnh vực thiết kế… các thiết bị cơ khí khác như bóng lăn,cần điều khiển hay các găng tay dữ liệu đã được sử dụng Tuy nhiên, con người giaotiếp chủ yếu bởi “nghe” và “nhìn”, do đó một giao diện người – máy sẽ trực quanhơn nếu con người có thể điều khiển máy tính bằng giọng nói hay cử chỉ giống nhưkhi tương tác giữa người với người trong thế giới thực mà không cần thông qua cácthiết bị điều khiển khác như chuột hay bàn phím Một ưu điểm khác là người dùng
có thể giao tiếp từ xa mà không cần phải có tiếp xúc vật lý với máy tính So với các
hệ thống điều khiển bằng lệnh âm thanh, một hệ thống thị giác sẽ thích hợp hơntrong môi trường ồn ào hoặc trong trường hợp âm thanh bị nhiễu
Phát hiện vùng màu da là một công cụ rất hữu ích trong việc nhận dạng ảnh
Nó cho phép nhiều khu vực của một ảnh được loại bỏ một cách nhanh chóng và hiệuquả, mà không lãng phí thời gian để làm tương quan tốn kém hoặc các hình thứctính toán phân tích đắt tiền khác
1.2 Mục tiêu đề tài
- Tìm hiểu tổng quát về lý thuyết xử lý ảnh
- Tìm hiểu và mô phỏng các lệnh liên quan đến đề tài dùng phần mềmMatlab
- Tìm hiểu các phương pháp tiến hành nhận dạng cử chỉ
- Rèn luyện kỹ năng nghiên cứu tài liệu
Trang 31.3 Lý do chọn đề tài
Nhận dạng các cử động của tay người là cách tự nhiên khi tương tác người –máy và ngày nay nhiều nhà nghiên cứu trong các học viện và ngành công ghiệpđang quan tâm đến hướng này Nó cho phép con người tương tác với máy rất dễdàng và thuận tiện mà không cần phải mang thêm bất kỳ thiết bị nào khác Đã có rấtnhiều ứng dụng dựa trên cử chỉ bàn tay như: Thiết kế 3D, điều khiển từ xa, ngônngữ ký hiệu…Nhận thấy tác dụng của nhận dạng cử chỉ nên nhóm quyết định chọn
đề tài này để nghiên cứu
1.4 Giới hạn đề tài
Do thời gian tiến hành nghiên cứu đề tài và tài liệu liên quan có hạn Mụctiêu của đề tài này chỉ dừng lại ở mức độ tìm hiểu lý thuyết bản chất của phát hiệnbàn tay dựa trên màu da và nhận dạng dùng mạng nơ-ron, sau đó mô phỏng để kiểmchứng kết quả nên còn nhiều hạn chế
1.5 Bố cục của đồ án
Chương 1: Giới thiệu đề tài
Chương 2: Cơ sở lý thuyết ảnh
Chương 3: Phát hiện bàn tay dựa trên màu da và nhận dạng cử chỉ dùng mạngnơ-ron
Chương 4: Tiến trình thực hiện và kết quả
Chương 5: Kết luận và hướng phát triển
Trang 4CHƯƠNG 2 CƠ SỞ LÝ THUYẾT
2.1 Những vấn đề cơ bản trong xử lý ảnh
2.1.1 Điểm ảnh
Gốc của ảnh (ảnh tự nhiên) là ảnh liên tục về không gian và độ sáng Để xử
lý bằng máy tính (số), ảnh cần phải được số hoá Số hoá ảnh là sự biến đổi gần đúngmộ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 (mức xám) Khoảng cách giữa các điểm ảnh đó được thiết lập sao cho mắtngườ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 (PEL: Picture Element) hay gọi tắt là Pixel Trong khuôn khổ ảnh haichiều, mỗi pixel ứng với cặp tọa độ (x, y)
Định nghĩa: Điểm ảnh (Pixel) là một phần tử của ảnh số tại toạ độ (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 đó đượcchọn thích hợp sao cho mắt người cảm nhận 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ộtphần tử ảnh
Một file ảnh là tập hợp nhiều điểm ảnh được minh họa hình 2.1
Trang 5Hình 2.1 Mảng hai chiều của một file ảnh
Vậy ảnh được xem như một ma trận tọa độ ảnh Do đó hàm f(x,y) còn có thểbiểu diễn dưới dạng ma trận như sau:
f(x,y)=[ f (0 , 0) f (0 , 1)… f (0 , N −1) f (1 , 0) f (1 ,1 )… f (1 , N−1)
.
f ( M−1 , 0) f ( M−1 ,1 )… f (M−1 , N −1)] (2.1)Hay
A =[ a0,0a0,1… a 0 , N−1
a1,0a1,1… a 1 , N−1 .
a M−1,0 a M −1,1 … a M−1 , N−1] (2.2)Trong đó, ai,j = f(x=i,y=j)=f(i,j) , với M là số hàng, N là số cột
Trang 62.1.2 Khái niệm ảnh số.
Ảnh trong thực tế liên tục về không gian và độ sáng, để có thể xử lý ảnh tacần biến đổi tín hiệu tương tự thành tín hiệu rời rạc thông qua quá trình lấy mẫu ( rờirạc về không gian), và lượng hóa thành phần tạo thành tập hợp phần tử ảnh gọi làquá trình số hóa
Ảnh là tập hợp các điểm (phần tử ảnh) khi được số hóa Khối lượng thông tintrong một ảnh là rất lớn (đến vài trăm mêga bít /ảnh) Bản chất các thông số ảnh cótính vector
Bất kỳ hình ảnh từ một máy quét hoặc từ một Camera số hay trong máy tính
là một hình ảnh kỹ thuật số Hình ảnh máy tính đã được “số hóa”, đây là quá trìnhchuyển đổi từ hình ảnh màu sắc thực tế thành các dữ liệu số bao gồm các hàng vàcột của hàng triệu mẫu màu được đo từ hình ảnh ban đầu
Một máy ảnh kỹ thuật số dùng chip CCD (Change Coupled Device) đằng sauống kính, CCD bao gồm một mạng lưới các điểm bắt sáng được phủ bằng lớp bọcmàu (đỏ - Red, xanh lục – Green, xanh dương – Blue), mỗi điểm ảnh chỉ bắt mộtmàu Do đó khi chụp ảnh ( cửa sập mở), ánh sáng qua ống kính và được lưu lại trên
bề mặt chip cảm biến dưới dạng điểm ảnh Mỗi điểm ảnh có một mức điện áp khácnhau sẽ được chuyển đến bộ phận đọc giá trị theo từng hàng Giá trị mỗi điểm ảnh
sẽ được khuếch đại và được đưa vào bộ chuyển đổi tín hiệu tương tự sang tín hiệu
số, cuối cùng đổ vào bộ xử lý để tái hiện lại hình ảnh đã chụp chính quá trình đọcthông tin thực hiện theo từng hàng đã làm cho tốc độ xử lý ảnh chậm, thiếu hoặcthừa sáng Đối với máy ảnh kỹ thuật số dùng chip CMOS tại các điểm bắt sáng cósẵn mạch điện hỗ trợ dễ dàng tích hợp ngay quá trình xử lý điểm ảnh Với cấu trúcnày, mỗi điểm ảnh sẽ được xử lý ngay tại chỗ và đồng loạt truyền tín hiệu số về bộ
xử lý để tái hiện hình ảnh đã chụp nên tốc độ xử lý nhanh hơn rất nhiều
Cảm biến nhìn thấy màu sắc và độ sáng của từng khu vực nhỏ là lấy mẫu Đó
là giá trị màu sắc của từng khu vực được đo và ghi thành giá trị số đại diện cho màu
Trang 7sắc Quá trình này được gọi là số hóa hình ảnh Dữ liệu được tổ hợp thành các hàng
và cột để giữ lại vị trí của từng khu vực hình ảnh Mỗi giá trị dữ liệu đó chính làđiểm ảnh Các dữ liệu hình ảnh là bao gồm các giá trị màu RGB số trong một mạnglưới các hàngvà cột Khi tất cả các dữ liệu ảnh được kết hợp lại và sao chép liên tiếp,chính xác trật tự cột trên giấy in hoặc màn hình máy tính, não bộ con người nhận rahình ảnh ban đầu
2.1.3 Các định dạng ảnh cơ bản
Ảnh thu được sau quá trình số hóa thường được lưu lại cho các quá trình xử
lý tiếp theo hay gửi đi Trong quá trình phát triển của kỹ thuật xử lý ảnh, tồn tạinhiều định dạng ảnh khác nhau từ ảnh đen trắng ( với định dạng IMG) ảnh đa cấpxám đến ảnh màu (BMP, GIF, JPEG…) Tuy các định dạng này khác nhau xongchúng đều tuân theo một cấu trúc chung nhất Nhìn chung tệp ảnh bất kỳ thường baogồm 3 phần :
- Mào đầu tệp ( header)
- Dữ liệu nén ( Data Compression)
- Bảng màu ( Palette Color)
a Mào đầu tệp: là thành phần chứa các thông tin về kiểu ảnh, kích thước, độ
phân giải, số bit dùng trong 1 pixel, cách mã hóa, vị trí bảng màu…
b Dữ liệu nén: Số liệu ảnh được mã hóa bởi kiểu mã hóa chỉ ra trong phần
Header
c Bảng màu: Bản màu không nhất thiết phải có ví dụ khi ảnh là đen trắng.
Nếu có bảng màu cho biết số màu dùng trong ảnh và bảng màu được sử dụng đểhiển thị màu của ảnh
Trang 82.1.4 Độ phân giải của ảnh
Độ phân giải (Resolution) của ảnh là mật độ điểm ảnh được ấn định trên mộtảnh số được hiển thị Theo định nghĩa, khoảng cách giữa các điểm ảnh phải đượcchọ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ảngcá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
Hình 2.2 Minh họa mức xám sau khi mã hóa
Trang 9Ví dụ, điểm ảnh ở vị trí (10,5,1), (10,5,2), (10,5,3) Các file ảnh hiện nay thường sửdụng 8 bit cho một thành phần màu, nghĩa là mất 24 bit cho mỗi điểm ảnh (khoảng
16 triệu màu).Theo lý thuyết màu do Thomas đưa ra mọi màu đều có thể tổ hợp từ 3màu cơ bản sau:
Trang 10Internationaled Eclairage ) đã đưa ra một số tiêu chuẩn để biểu diễn màu.
Trong khuôn khổ lý thuyết ba màu (Red, Blue, Green) để tạo nên thế giớimàu, người ta thường dùng 3 byte để mô tả mức màu, khi đó các giá trị màu là 28*3 =
224 =16,7 triệu màu
Hình 2.4 Mô hình màu RGB
Hình 2.5 Minh họa ảnh màu sau khi mã hóa
Trang 11- Tăng số mức xám: Thực hiện nội suy ra các mức xám trung gian bằng kỹthuật nội suy Kỹ thuật này nhằm tăng cường độ mịn cho ảnh.
2.1.9 Nhận dạng ảnh
Nhận dạng tự động (automatic recognition), mô tảđối tượng, phân loại vàphân nhóm các mẫu là những vấn đề quan trọng trong thị giác máy, được ứng dụngtrong nhiều ngành khoa học khác nhau Mẫu ở đây có thể là ảnh của vân tay, ảnhcủa một vật nào đó được chọn, một chữ viết khuôn mặt người …
Hệ thống nhận dạng tự động bao gồm ba khâu tương ứng với ba giai đoạnchủ yếu sau đây:
1 Thu nhận dữ liệu và tiền xử lý
2 Biểu diễn dữ liệu
3 Nhận dạng, ra quyết định
2.2 Các kỹ thuật xử lý ảnh số.
2.2.1 Mục đích của việc xử lý ảnh số.
Mục đích đặt ra cho việc xử lý ảnh bao gồm hai mục đích:
Thứ nhất: Biến đổi ảnh hay sự tăng cường ảnh nhằm thu lại ảnh tốthơn Để rồi từ đó nhận được nhiều thông tin về ảnh hơn, ta có thểquan sát và đánh giá được
Trang 12 Thứ hai: Nhận dạng ảnh hay đón nhận ảnh một cách tự động.
2.2.2 Kỹ thuật nâng cao chất lượng ảnh
Nâng cao chất lượng ảnh là một bước quan trọng tạo tiền đề cho xử lý ảnh.Làm nổi bật một số đặc tính của ảnh như thay đổi độ tương phản, lọc nhiễu, nổibiên, làm trơn biên ảnh, nhằm hoàn thiện trạng thái quan sát của một ảnh
Tăng cường ảnh không phải là làm tăng lượng thông tin vốn có trong ảnh làmnổi bật các đặc trưng đã chọn Tức điều chỉnh mức xám của điểm ảnh Dùng phươngpháp ánh xạ làm thay đổi giá trị điểm sáng
Khôiphục ảnh bao gồm quá trình lọc ảnh, khử nhiễu do môi trường bên ngoàihay các hệ thống thu nhận, phát hiện và lưu trữ ảnh thu được, thông qua các bộ lọctrong miền không gian và trong miền biến đổi Nhằm làm giảm bớt các biến dạngđểkhôi phục lại ảnh giống như ảnh gốc
Kỹ thuật nâng cao chất lượng ảnh gồm : các kỹ thuật không phụ thuộc vàokhông gian và các kỹ thuật phụ thuộc vào không gian
Kỹ thuật không phụ thuộc vào không gian bao gồm các phép như : tăng giảm
độ sáng, tách ngưỡng, bó cụm, cân bằng histogram, tách ngưỡng tự động, biến đổicấp xám tổng thể
Kỹ thuật phụ thuộc vào không gian bao gồm các phép như : phép cuộn và
mẫu, lọc trung vị, lọc trung bình,
2.2.3 Kỹ thuật biến đổi ảnh
Thuật ngữ biến đổi ảnh thường dùng để nói tới một lớp các ma trận đơn vị, vàcác kỹ thuật dùng để biến đổi ảnh làm giảm thứ nguyên của ảnh để việc xử lý ảnhđược hiệu quả hơn Có nhiều loại biến đổi được dùng như: biến đổi Fourier, Sin,Cosin,…
Trang 132.2.4 Kỹ thuật phân tích ảnh
Phân tích ảnh liên quan đến việc xác định các độ đo định lượng của một ảnh
để đưa ra một mô tả đầy đủ về ảnh Nhằm mục đích xác định biên của ảnh Có nhiều
kỹ thuật khác nhau như lọc vi phân hay dò theo quy hoạch động Người ta cũngdùng các kỹ thuật để phân vùng ảnh Từ ảnh thu được, người ta tiến hành kỹ thuậttách hay hợp dựa theo các tiêu chuẩn đánh giá như: màu sắc, cường độ… Phươngpháp được biết đến như nhị phân hóa đường biên Cuối cùng, phải kể đến các kỹthuật phân lớp dựa theo cấu trúc
2.2.5 Kỹ thuật nhận dạng ảnh
Nhận dạng ảnh là quá trình liên quan đến các mô tả đối tượng mà người tamuốn đặc tả nó Quá trình nhận dạng thường đi sau quá trình trích chọn các đặc tínhchủ yếu của đối tượng Có hai kiểu mô tả đối tượng :
Mô tả tham số ( nhận dạng theo tham số)
Mô tả theo cấu trúc ( nhận dạng theo cấu trúc)
Người ta đã áp dụng kỹ thuật nhận dạng khá thành công với nhiều đối tượngkhác nhau như : nhận dạng ảnh vân tay, nhận dạng chữ (chữ cái, chữ số, chữ códấu)
2.3 Các phương pháp xử lý ảnh số
2.3.1 Chuyển ảnh màu RGB thành ảnh mức xám ( Gray level)
Ảnh gốc thường là ảnh màu 24 bit màu nên khó nhận dạng ta cần phảichuyển về ảnh xám dữ liệu 8 bit để dễ nhận dạng hơn Nghĩa là mỗi pixel được biểudiễn 256 cấp độ xám theo công thức:
X= 0,2125*R + 0,7145*G + 0,0721*B (2.3)Quá trình chuyển đổi mức xám tuy có làm mất đi một số thông tin nhưngcũng có thể chấp nhận được
Trang 142.3.2 Phương pháp lọc nhiễu ảnh
Nhiễu có thể coi như sự đột biến của một điểm ảnh so với các điểm lân cận.Lọc nhiễu ảnh nhằm mục đích loại bỏ các đột biến của ảnh, ở đây ta sử dụng phươngpháp lọc số dựa trên tính dư thừa thông tin không gian, các pixel lân cận có thể cócùng hoặc gần cùng một số đặc tính Trong kỹ thuật này, người ta sử dụng một mặt
nạ và di chuyển khắp ảnh gốc Tùy theo cách tổ hợp điểm đang xét với các điểm lâncận mà ta có kỹ thuật lọc tuyến tính hay phi tuyến Điểm ảnh chịu tác động của biếnđổi là điểm ở tâm mặt nạ
b Lọc phi tuyến
Khác với lọc tuyến tính, kỹ thuật lọc phi tuyến coi một điểm ảnh kết quảkhông phải là tổ hợp tuyến tính của các điểm lân cận Các bộ lọc phi tuyến cũng hayđược dùng trong tăng cường ảnh vì chúng có khả năng loại được nhiễu xung Người
ta hay dùng bộ lọc trung vị, giả trung vị và lọc ngoài
c Lọc trung vị
Một trong những khó khăn chính trong các phương pháp làm trơn nhiễu là nólàm mờ các đường biên và các chi tiết sắc nét của ảnh (vì chúng tương ứng vớithành phần tần số cao của ảnh, khi cho ảnh qua bộ lọc thông thấp thì không chỉ cónhiễu bị loại trừ mà thành phần tần số cao của ảnh cũng bị suy hao) Lọc trung vị có
Trang 15ưu điểm là lọc nhiễu nhưng không làm mờ ảnh Trong kỹ thuật này, mức xám củađiểm ảnh trung tâm được thay thế bằng trung vị của một chuỗi các mức xám của cácđiểm ảnh lân cận thay vì là giá trị trung bình Trung vị m của một chuỗi các giá trị làmột giá trị sao cho một nửa các giá trị trong chuỗi nhỏ hơn m và một nửa lớn hơn m.
Được sử dụng chủ yếu cho giảm nhiễu
Một bộ lọc trung vị cũng dựa vào việc dùng một cửa sổ di chuyển trên ảnh,
và giá trị xám pixel đầu ra được thay thế bởi trung vị của các pixel trong cửa sổ đó
Thuật toán:
+ Các pixel trong của sổ sẽ được sắp xếp từ nhỏ tới lơn
+ Nếu kích thước của cửa sổ =JxKlà lẻ thì vị trí trung vị là (JxK +1) / 2 ,ngượclại thì vị trí trung vị là JxK / 2
Phương pháp medium filter (lọc trung vị) dùng để lọc nhiễu trước khi quabước xử lý tiếp theo, như là phát hiện biên Median filter là một kỹ thuật lọc sốtuyến tính
Median filter là một bước phổ biến trong xử lý ảnh
Trung vị được viết với công thức :
v(m,n) = trung vị (y(m-k),n-1) (2.5)
Kỹ thuật này đòi hỏi giá trị các điểm ảnh trong của sổ phải sắp xếp theo thứ
tự tăng hay giảm dần so với giá trị trung bình Kích thước của của sổ thường đượcchọn sao cho điểm ảnh trong của sổ là lẻ Các cửa sổ hay dùng là của sổ có kíchthước 3x3, hay 5x5, hay 7x7
2.3.3 Phân vùng ảnh
Phân vùng ảnh là bước then chốt trong xử lý ảnh Giai đoạn này nhằm phântích ảnh thành những thành phần có cùng tính chất nào đó dựa theo biên hay cácvùng liên thông có thể là cùng mức xám, cùng màu, hay cùng độ nhám, …
Trang 16Nếu phân vùng dựa trên các vùng liên thông ta gọi là kỹ thuật phân vùng dựatheo miền đồng nhất Nếu ta phân vùng dựa vào biên gọi là kỹ thuật phân vùng biên.Ngoài ra còn có các kỹ thuật khác như phân vùng dựa vào biên độ, phân vùng theokết cấu.
2.3.4 Phương pháp phân vùng ảnh
Để phân tích các đối tượng trong ảnh, chúng ta cần phải phân biệt được cácđối tượng cần quan tâm với phần còn lại của ảnh Những đối tượng này có thể tìmđược nhờ các kỹ thuật phân đoạn ảnh, theo nghĩa tách phần tiền ảnh ra hậu ảnh.Chúng ta cần phải hiểu được là:
Không có kỹ thuật phân đoạn nào là vạn năng, theo nghĩa có thể áp dụng cho mọi loại ảnh.
Không có kỹ thuật phân đoạn nào là hoàn hảo.
Có thể hiểu phân vùng là tiến trình chia ảnh thành nhiều vùng, mỗi vùng chứamột đối tượng hay nhóm đối tượng cùng kiểu Chẳng hạn, một đối tượng có thể làmột ký tự trên 1 trang văn bản hoặc một đoạn thẳng trong một bản vẽ kỹ thuật hoặcmột nhóm đối tượng có thể biểu diễn một từ hay hai đoạn thẳng tiếp xúc nhau
2.3.5 Khái niệm biên
Biên là một vấn đề chủ yếu trong phân tích ảnh vì các kỹ thuật ảnh chủ yếudựa vào biên Một điểm ảnh có thể coi là biên nếu ở đó có sự thay đổi đột ngột vềmức xám Tập hợp các điểm tạo thành biên hay đường bao của ảnh
2.3.6 Thuật toán dò biên tổng quát
Biểu diễn đối tượng ảnh theo chu tuyến thường dựa trên các kỹ thuật dò biên
Có hai kỹ thuật dò biên cơ bản:
+ Kỹ thuật thứ nhất xét ảnh biên thu được từ ảnh vùng sau một lầnduyệt như một đồ thị, sau đó áp dụng các thuật toán duyệt cạnh đồ thị
Trang 17+ Kỹ thuật thứ hai dựa trên ảnh vùng, kết hợp đồng thời quá trình dòbiên và tách biên
Ở đây ta quan tâm cách tiếp cận thứ hai Trước hết, giả sử ảnh được xét chỉbao gồm một vùng ảnh 8 liên thông ℑ, được bao bọc bởi một vành đai các điểm nền
Dễ thấy ℑlà một vùng 4 liên thông chỉ là một trường riêng của trường hợp trên Về
cơ bản, các thuật toán dò biên trên một vùng đều bao gồm các bước sau:
Xác định điểm biên xuất phát
Dự báo và xác định điểm biên tiếp theo
Lặp bước 2 cho đến khi gặp điểm xuất phát
Do xuất phát từ những tiêu chuẩn và định nghĩa khác nhau về điểm biên, vàquan hệ liên thông, các thuật toán dò biên cho ta các đường biên mang các sắc tháirất khác nhau Kết quả tác động của toán tử dò biên lên một điểm biên ri là điểmbiên ri+1 (8 láng giềng của ri) Thông thường các toán tử này được xây dựng nhưmột hàm đại số Boolean trên các 8 láng giềng của ri Mỗi cách xây dựng các toán tửđều phụ thuộc vào định nghĩa quan hệ liên thông và điểm biên Do đó sẽ gây khókhăn cho việc khảo sát các tính chất của đường biên Ngoài ra, vì mỗi bước dò biênđều phải kiểm tra tất cả các 8 láng giềng của mỗi điểm nên thuật toán thường kémhiệu quả Để khắc phục các hạn chế trên, thay vì sử dụng một điểm biên ta sử dụngcặp điểm biên (một thuộc ℑ, một thuộc ℑ), các cặp điểm này tạo nên tập nền vùng, kíhiệu là NV và phân tích toán tử dò biên thành 2 bước:
Xác định cặp điểm nền vùng tiếp theo
Lựa chọn điểm biên
Trong đó bước thứ nhất thực hiện chức năng của một ánh xạ trên tập NV lên
NV và bước thứ hai thực hiện chức năng chọn điểm biên
Trang 182.4 Các loại không gian màu
Như ta đã biết thì khi cho ánh sáng trắng đi qua lăng kính ta sẽ thu được mộtdãy phổ màu bao gồm 6 màu rộng: tím , lam , lục , vàng , cam , đỏ Nếu nhìn kỹ thì
sẽ không có ranh giới rõ ràng giữa các màu mà màu này sẽ từ chuyển sang màukia.Mắt chúng ta nhìn thấy được là do ánh sáng phản xạ từ vật thể
Tất cả các màu được tạo ra từ 3 màu cơ bản (màu sơ cấp) là: đỏ (R),lam (B)
và lục (G).Các màu cơ bản trộn lại với nhau theo một tỉ lệ nhất định để tạo ra cácmàu thứ cấp
Lược đồ xám của ảnh: Một phương pháp thường dùng trong xử lí ảnh số là
xem xét cường độ sáng của ảnh f(x,y) như là biến ngẫu nhiên có hàm phân bố xácsuất là pk (f) Hàm phân bố xác suất của ảnh mang thông tin toàn cục về nội dungchứa trong ảnh Tuy nhiên hàm phân bố xác suất tổng quát thường không đáp ứngđược do đó thường dùng hàm phân bố xác suất thực nghiệm xác định từ ảnh để thaythế gọi là hàm histogram Histogram của ảnh số với mức xám có tầm trong khoảng[0, L-1] là hàm:
p k(f k) =n k
n (2.6)Với f k là mức xám thứ k
n k là số pixel trong ảnh có mức xám thứ k
n tổng số pixel trong ảnh
k: 0,1,2,…., L-1Lược đồ xám bao gồm trục hoành biểu diễn mức xám và trục tung biểu diễn
số lượng điểm sáng tương ứng Đối với ảnh xám thông thường, giá trị của trụchoành nằm trong khoảng từ 0 - 255
Trang 19Hình 2.6 Lược đồ histogram
2.4.1 Không gian màu RGB
Hình 2.7 Không gian màu RGB
Không gian màu RGB chia các màu ra các thành phần màu chính là R đỏ), G (Green-xanh lá), B (Blue-xanh dương) Các màu R, G, B được gọi là các màuchính hay màu cơ bản vì ánh sáng của ba màu này có thể phối hợp ở những cường
(Red-độ khác nhau để tạo ra các màu khác Mô hình RGB được thể hiện bởi một hình lậpphương Trong một ảnh 24 bit với 8 bit cho mỗi màu chính thì màu đỏ sẽ có giá trị
Trang 20(255,0,0), màu xanh dương (0,0,255), màu xanh lá (0,255,0) Mô hình này đượcthiết kế cho phần lớn hệ thống đồ họa, tuy nhiên nó chưa phải là lý tưởng cho cácứng dụng về phát hiện và nhận dạng vật thể Các thành phần màu đỏ, xanh dương,xanh lá có sự liên kết chặt chẽ sẽ gây khó khăn trong việc thực hiện một số thuậttoán xử lý ảnh
Song song đó, rất nhiều thuật toán xử lý ảnh như cân bằng lược đồ xám thườngchỉ tác động trên độ sáng của ảnh
Trong một số không gian màu, phương pháp xây dựng và xếp lớp màu dabằng cách xác định rõ ràng (thông qua một số quy tắc) biên giới các giá trị của điểmảnh là màu da hay không
{ R >95 và G > 40 và B > 20 ¿ { Max(R, G, B) - Min(R, G, B) > 15 (2.7) ¿¿¿¿
Ưu điểm của phương pháp này là tính đơn giản, điều này cho phép phân lớpmột cách nhanh chóng và dễ dàng Tuy nhiên kết quả đạt được khi phân lớp làkhông cao trong trường hợp tổng quát Vì vậy khó khăn chính của phương pháp nàynếu muốn có được hệ số nhận dạng cao đó là phải tìm ra được một không gian màuthích hợp cũng như các quy tắc tốt nhất để nhận biết màu da trong không gian màunày
2.4.2 Không gian màu YCrCb
YCrCb được định nghĩa nhằm phục vụ các mục đích xử lý video số Nó cóquan hệ với một số không gian màu như YIQ, YUV Trong khi YCrCb là hệ thốngmàu số thì các không gian YIQ và YUV là hệ thống tương tự phục vụ cho các chuẩnPAL và NTSC Các không gian màu này sẽ chia RGB ra các thành phần chói, vàthành phần màu nhằm sử dụng cho các ứng dụng nén ảnh Do đó chúng thườngđược sử dụng trong các hệ thống truyền hình
Trang 21Hình 2.8 Không gian màu YcrCb
YcrCb là không gian màu được sử dụng nhiều trong vấn đề nén ảnh màu sắcđược biểu diễn bởi luma(đó là giá trị độ sáng tính từ không gian RGB).Gồm bathành phần, một thành phần là tổng các trọng số từ RGB, hai thành phần màu Red
và Blue trong không gian màu RGB Công thức để chuyển đổi như sau:
Y = 0.299R +0.587G + 0.114B (2.8) {Cr=R−Y Cb=B−Y (2.9)
Việc chuyển đổi đơn giản, tính phân chia rõ ràng của độ sáng và các thànhphần màu là những đặc tính giúp cho không gian này được ứng dụng vào phân tíchmàu da
Trang 22Điều kiện để phân tách màu da
{ Y>80 ¿ { 85<Cb<135 ¿¿¿¿ Với Y,Cb,Cr ¿ [0 255]
(2.11)
2.4.3 Không gian màu HSV
Không gian HSV bao gồm ba thành phần Hue (sắc màu), Saturation (bảo hòamàu) và Value (độ sáng, một số trường hợp có thể gọi là Brightness)
Sắc màu (Hue) thể hiện sự đáp ứng về màu sắc xung quanh thang đo sắc màu.Các sắc màu trên thang đo sẽ chạy từ Đỏ-Vàng-Xanh lá-Xanh lam- Xanh Dương-Tím-Đỏ
Bão hòa màu để chỉ cường độ sáng của màu Một màu có độ bão hòa lớn nhất
có thể xem như một màu tinh khiết và “sâu”, cũng như khi chúng ta giảm độ bãohòa, những màu sắc sẽ bị xóa dần cho đến khi đạt giá trị không nó sẽ trở thành màutrắng
Theo lý thuyết một không gian HSV có hình dáng như một hình nón Nếuquan sát ở mặt phẳng các đường tròn bao quanh hình nón, các giá trị về màu sắc(Hue) sẽ được thể hiện bởi góc của mỗi màu so với trục hình nón, (trục hình nón sẽđược gán với màu đỏ) Độ bão hòa màu được thể hiện như là khoảng cách từ tâmcác đường tròn Độ bão hòa lớn nhất nằm ở biên của hình nón Độ sáng được mô tảbởi vị trí theo chiều dọc hình nón Ở vị trí đỉnh của hình nón, sẽ không có bất kì độsáng nào Và ở đáy của nón, độ sáng sẽ lớn nhất
Trang 23Hình 2.9 Không gian màu HSV
Có rất nhiều ứng dụng sử dụng mô hình HSV Các hệ thống nhận diện sửdụng HSV để phát hiện màu vật thể Các thuật toán xử lý ảnh như biến đổi độ sáng,
xử lý lược đồ xám…sử dụng thành phần độ sáng của ảnh
Cũng giống như không gian YcbCr, không gian HSV cũng có nhiều thuận lợihơn RGB trong việc phát hiện bàn tay dựa trên màu da Bằng việc trích xuất thànhphần sắc màu, hệ thống có thể dễ dàng nhận biết được các vùng không da để loại bỏtheo luật 19<H<240 (vùng không phải da) Tuy nhiên, việc xử lý màu da, ảnh thunhận được phải chỉ vùng da duy nhất là bàn tay hoặc phải áp dụng thêm một số thuậttoán như xác định kích thước, hình dạng…để loại bỏ các vùng da không thuộc bàntay như tay, chân…
Ưu điểm và nhược điểm phát hiện màu da dựa trên không gian màu
Trang 24Phương pháp chỉ dựa trên cảm nhận chung của con người về các ngưỡng,chưa có một lý thuyết, giải thuật cụ thể thống nhất để cho kết quả tổng quát và chínhxác nhất.
Trang 25CHƯƠNG 3 PHÁT HIỆN BÀN TAY DỰA TRÊN MÀU DA VÀ NHẬN DẠNG CỬ CHỈ DÙNG
MẠNG NƠ-RON
3.1 Phát hiện bàn tay dựa trên màu da
Nhận dạng ảnh là một trong những kỹ thuật quan trọng trong xử lý ảnh số Sựphát triển của máy tính, hệ thống nhúng, mạng Nơron đã kéo theo nhiều ứng dụngdựa trên việc nhận dạng Một trong những ứng dụng đó là việc phát hiện và nhậndiện cử chỉ bàn tay Kỹ thuật nhận diện cử chỉ bàn tay đã và đang được nghiên cứutrong những năm gần đây với nhiều giải thuật nhằm tăng tốc độ cũng như là tínhchính xác của việc nhận diện
Sử dụng không gian màu RGB để phát hiện bàn tay
Trong không gian màu RGB, phương pháp xây dựng và xếp lớp màu da bằngcách xác định rõ ràng (thông qua một số quy tắc) biên giới các giá trị của điểm ảnh
là màu da hay không Ngưỡng điểm ảnh được cho là phù hợp với màu da:
{ R >95 và G > 40 và B > 20 ¿ { Max(R, G, B) - Min(R, G, B) > 15 (3.1) ¿¿¿¿
Một bức ảnh được chụp từ camera chịu tác động của nhiều yếu tố đặc biệt làảnh hưởng của độ sáng tối Do đó cần phải có những bước xử lý phụ để phát hiệnchính xác vị trí bàn tay trước khi đi nhận dạng để loại bỏ các ảnh hưởng này và nókéo theo tốc độ xử lý của hệ thống sẽ không đáp ứng được các yêu cầu về thời gianthực Do đó, cùng với sự phát triển của kỹ thuật nhận diện, kỹ thuật phát hiện bàntay cũng yêu cầu sự nghiên cứu đề ra giải pháp nhằm tăng tốc độ hệ thống, cũng như
là tìm được chính xác nhất vị trí bàn tay Các kỹ thuật phát hiện bàn tay hiện tại dựatrên những đặc điểm chung của con người như: hình dạng, màu da, … Trong giớihạn đề tài, người thực hiện sẽ giới sẽ thực hiện phương pháp phổ biến trong pháthiện bàn tay ở các hệ thống: phương pháp phát hiện bàn tay dựa trên đặc trưng màuda
Trang 26Kỹ thuật phát hiện dựa trên màu da là một kỹ thuật đơn giản và tương đốihiệu quả cho việc phát hiện và tìm kiếm vị trí bàn tay trên ảnh Kỹ thuật này sẽ tìmkiếm những điểm ảnh có đáp ứng gần với màu da người nhất và loại bỏ các vùngkhác trên ảnh Quá trình đề nghị cho kỹ thuật phát hiện bàn tay dựa trên màu dựatrên các bước sau:
Hình 3.1 Sơ đồ tổng quát quá trình phát hiện bàn tay
Chức năng của các khối:
- Ảnh đầu vào
Ảnh bàn tay cần đưa vào để nhận dạng
Ảnh đầu vào
Xử lí nâng caochất lượng ảnh
Xác định vị trí vàtách bàn tay
Trích các thànhphần không gianRGB của ảnh
So sánh với giátrị ngưỡng phùhợp màu da
Trang 27- Xử lý nâng cao chất lượng ảnh
Ảnh vào có thể bị nhiễu dẫn đến biểu diễn thông tin đối tượng trong ảnhkhông chính xác, do vậy dùng bộ lọc để xử lý
- Trích các thành phần không gian RGB của ảnh
Phân tích các thành phần R,G,B của ảnh
- So sánh giá trị ngưỡng phù hợp với màu da.
Từ các thành phần R,G,B của ảnh đã được xác định đem so sánh với giá trịngưỡng được cho là phù hợp với màu da của không gian RGB
- Xác định vị trí và tách bàn tay
Sau khi so sánh sử dụng các thuật toán để định vị trí và tách bàn tay
Ý tưởng thuật toán:
Ảnh nhị phân thu được, lấy các điểm ảnh trắng ( ảnh bàn tay) Ta tiến hànhtheo các bước:
+ Quét theo cột từ trái sang phải, quét theo hàng từ trên xuống dưới, tính tổngcác pixel
+ Xác định chiều rộng ( W) : W = Cmax – Cmin (Cmax ,Cmin là vị trí cột có tổng
Trang 28Hình 3.2 Mô hình 2 Nơ-ron sinh học.
Thân nơ-ron (Cell body): nhân của nơ-ron được đặt ở đây
Các nhánh (Dendrite): đây chính là các mạng dạng cây của các dây thần kinh
để nối các cell body với nhau
Sợi trục (Axon): Đây là một kết nối hình trụ dài và mang các tín hiệu từ đó
ra ngoài Phần cuối của axon được chia thành nhiều nhánh nhỏ kết thúc trong một cơquan nhỏ hình củ hành được gọi là synapse mà tại đây các nơ-ron đưa các tín hiệucủa nó vào các nơ-ron khác Những điểm tiếp nhận với các synapse trên các nơ-ronkhác có thể ở các dendrite hay chính cell body
Các tín hiệu đưa ra bởi một synapse và được nhận bởi các dendrite là các kíchthích điện từ Việc truyền tín hiệu như trên liên quan đến một quá trình hóa họcphức tạp mà trong đó các chất truyền đặc trưng được giải phóng từ phía gửi của nơikết nối Điều này làm tăng hoặc giảm hiệu điện thế bên trong nhân của nơ-ron nhận.nơ-ron nhận sẽ kích hoạt (fire) nếu điện thế vượt khỏi một ngưỡng nào đó và mộtxung (hoặc điện thế hoạt động ) với độ mạnh ( cường độ ) và thời gian tồn tại cốđịnh được gửi ra ngoài thông qua axon tới phần nhánh của nó rồi tới các chổ nốisynapse với các nơ-ron khác Sau khi kích hoạt, nơ-ron sẽ chờ trong một thời gianđược gọi là chu kì, trước khi nó có thể được kích hoạt lại Synapse là hưng phấn( excitatory ) nếu chúng cho phép các kích thích truyên qua gây ra tình trạng kíchhoạt ( fire ) đối với nơ-ron nhận Ngược lại, chúng là ức chế ( inhibitory ) nếu cáckích thích truyền qua làm ngăn trở trạng thái kích hoạt ( fire ) của nơ-ron nhận
Trang 29b Mạng Nơ-ron nhân tạo
Nơ-ron nhận tạo là sự sao chép nơ-ron sinh học cũa não người,là một hệthống bao gồm nhiều phần tử xử lý đơn giản (hay còn gọi là nơ-ron) hoạt động songsong và được nối với nhau bởi các liên kết nơ-ron Mỗi liên kết kèm theo một trọng
số nào đó đặc trưng cho tính kích hoạt hoặc ức chế giữa các nơ-ron Nó có nhữngđặc tính sau:
Mỗi nơ-ron có một đầu vào, những kết nối ( synapse ) và một đầu ra ( axon )Một nơ-ron có thể hoạt động (+35 mV ) hoặc không hoạt động ( -0,75 mV )Chỉ có một đầu ra duy nhất của một nơ-ron được nối với các đầu vào khácnhau của nơ-ron khác Điều kiện để nơ-ron được kích hoạt hay không kích hoạt chỉphụ thuộc những đầu vào hiện thời của nó
Một nơ-ron trở nên tích cực nếu đầu vào của nó vượt qua ngưỡng ở mức nhấtđịnh
Nơ-ron nhân tạo là một đơn vị tính toán có nhiều đầu vào và môt đầu ra, mỗiđầu vào đến từ một liên kết đặc trưng của nơ-ron là một hoạt phi tuyến chuyển đổi
tổ hợp tuyến tính của tất cả các tín hiệu đầu vào thành tín hiệu đầu ra Hàm kích hoạtnày đảm bảo tính chất phi tuyến cho tính toán của mạng nơ-ron
Hình 3.3 Mô hình một nơ-ron nhân tạo đơn giản
Trang 30Một nơ-ron nhân tạo đơn giản được cấu tạo gồm các thành phần chính :
Năng lực: Mạng nơ-ron nhân tạo là những kỹ thuật mô phỏng rất tinh vi, có
khả năng mô phỏng các hàm cực kỳ phức tạp Đặc biệt, mạng nơ-ron nhân tạo hoạtđộng phi tuyến Trong nhiều năm, mô hình tuyến tính là kỹ thuật được sử dụng rộngrãi trong hầu hết các lĩnh vực, vì thế mô hình tuyến tính có tính chiến lược tối ưuhóa được biết nhiều nhất
Dễ sử dụng:Mạng nơ-ron nhân tạo có tính học theo các ví dụ Người sử dụng
mạng nơ-ron nhân tạo thu thập các dữ liệu đặc trưng, và sau đó gọi các thuật toánhuấn luyện để có thể tự học cấu trúc của dữ liệu Mặc dù người sử dụng làm tất cảnhững điều cần thiết để có thể chọn và chuẩn bị dữ liệu, sử dụng loại mạng phù hợp
và có thể hiểu được các kết quả, nhưng mức độ người sử dụng biết cách áp dụngthành công mạng nơ-ron nhân tạo vẫn thấp hơn nhiều những người sử dụng cácphương pháp thống kê truyền thống…
Mạng nơ-ron nhân tạo dựa trên việc mô phỏng cấp thấp hệ thống nơ-ron sinhhọc Trong tương lai với sự phát triển mô phỏng nơ-ron sinh học, chúng ta có thể cóloại máy tính thông minh thật sự
Trang 32b.Hàm hoạt hóa của perceptron
Một ngõ ra khác của tế bào perceptron từ ngõ ra bộ cộng của công thức (3.1)
và (3.2) bởi các hoạt hóa của thân tế bào, như là ngõ ra khác của tế bào sinh học từtổng trọng số của ngõ vào Việc tinh toán nằm trong giới hạn của hàm hoạt hóa f(xi)( là hàm không tuyến tính cho ngõ ra yi của tế bào thứ i) thỏa mãn
y i = f(z i) (3.5)Hàm hoạt hóa f cũng được biết như là một hàm squashing Nó giữ ngõ ra của
tế bào nằm ở giữa những giới hạn như trong trường hợp mạng nơ-ron sinh học Hàmkhác f(zi) được sử dụng, tất cả đều có những thuộc tính giới hạn ở trên Hàm hoạt
hóa thông dụng nhất là sigmoid function (hàm vi phân liên tục) thỏa biểu thức dưới
đây:
yi=1+exp (−z1
i) = f(zi) (3.6)Như vây:
{zi → -∞} {yi → } ; {zi = 0} {yi = 0.5}; {zi→ ∞} {yi→ 1}