Xây dựng CNN cho phân loại ảnh

Một phần của tài liệu (Luận văn thạc sĩ) HỆ THỐNG ĐIỂM DANH HỌC SINH THEO VẾT CHUYỂN ĐỘNG KẾT HỢP NHẬN DẠNG ĐẦU HỌC SINH TRONG VIDEO (Trang 29)

CNN sử dụng một kiến trúc đặc biệt phù hợp cho bài toán phân loại ảnh. Sử dụng kiến trúc này làm cho mạng tích chập huấn luyện nhanh hơn. Kết quả là giúp việc huấn luyện sâu, mạng nhiều tầng, rất phù hợp cho phân loại ảnh.

Ngày nay, mạng tích chập hoặc một số biến thể của nó đượcc sử dụng trong các mạng nơ-ron để nhận dạng ảnh. Mạng tích chập sử dụng ba ý tưởng cơ bản: các

trường tiếp nhận cục bộ, trọng số chia sẻ và lớp tổng hợp.

Trường tiếp nhận cục bộ: đầu vào của mạng CNN là một ảnh. Ví dụ như ảnh có kích thước 28 × 28 thì tương ứng đầu vào là một ma trận có 28 × 28 ơ và

giá trị mỗi điểm ảnh là một ô trong ma trận. Trong mơ hình mạng ANN truyền thống sẽ kết nối các nơ-ron đầu vào để vào tầng ảnh. Tuy nhiên trong CNN thì

khơng làm như vậy mà chỉ kết nối trong một vùng nhỏ của các nơ-ron đầu vào như một bộ lọc có kích thước 5 × 5 tương ứng (28 − 5 + 1) = 24 điểm ảnh đầu

vào. Mỗi một kết nối sẽ học một trọng số và mỗi nơ-ron ẩn sẽ học một độ lệch. Mỗi một vùng 5 × 5 đấy gọi là một trường tiếp nhận cục bộ, hình 2.4.

Hình 2.4 Trường tiếp nhận cục bộ

Một cách tổng quan, ta có thể tóm tắt các bước tạo ra một lớp ẩn bằng cách sau: - Tạo ra nơ-ron ẩn đầu tiên trong lớp ẩn 1 (hình 2.5).

Hình 2.5 Nơ-ron trong lớp ẩn 1

- Sau đó, trượt trường tiếp nhận cục bộ trên bởi một điểm ảnh bên phải (tức là bằng một nơ-ron), để kết nối với một nơ-ron ẩn thứ hai, hình 2.6.

Đầu vào của nơ-ron

Nơ-ron ẩn

Đầu vào của Nơ-ron

Hình 2.6 Nơ-ron trong lớp ẩn 2

Trọng số chia sẻ và độ lệch: mỗi một nơ-ron ẩn có một độ lệch và 5 × 5

trọng số liên kết với trường tiếp nhận cục bộ. Những gì chúng ta vẫn chưa đề cập đến là chúng ta sẽ sử dụng các trọng số và độ lệch tương tự cho mỗi nơ-ron

ẩn 24 × 24. Nói cách khác, đối với những nơ-ron ẩn thứ j, k, đầu ra sẽ được xác định theo công thức (2.4).

𝝈(𝒃 + ∑𝟒𝒍=𝟎∑𝟒𝒎=𝟎𝒘𝒍,𝒎𝒂𝒋+𝒍,𝒌+𝒎) (2.4)

Đối với bài toán nhận dạng ảnh, ma trận lớp đầu vào là sơ đồ đặc trưng,

trọng số xác định các đặc trưng là trọng số chia sẻ và độ lệch xác định một sơ

đồ đặc trưng là độ lệch chia sẻ. Như vậy đơn giản nhất là qua các bước trên bài

tốn nhận dạng chỉ cần có một sơ đồ đặc trưng. Tuy nhiên để nhận dạng ảnh

chính xác thì cần phải có nhiều hơn một sơ đồ đặc trưng.

Hình 2.7 Một sơ đồ đặc trưng

Đầu vào của Nơ-ron

Lớp ẩn đầu tiên

Trong hình 2.7, có 3 sơ đồ đặc trưng. Mỗi sơ đồ đặc trưng được xác định bởi một tập 5 × 5 trọng số chia sẻ và một độ lệch chia sẻ duy nhất. Kết quả là các mạng có thể phát hiện ba loại đặc trưng khác nhau, với mỗi đặc trưng được phát hiện trên toàn bộ ảnh.

Như vậy, trường tiếp nhận cục bộ thích hợp cho việc phân tách dữ liệu ảnh,

giúp chọn ra những vùng ảnh có giá trị nhất cho việc đánh giá phân lớp.

Một ưu điểm quan trọng của trọng số và độ lệch chia sẻ là nó làm giảm đáng kể số lượng các tham số liên quan đến một mạng tích chập. Đối với mỗi sơ đồ

đặc trưng chúng ta cần 25 = 5 × 5 trọng số chia sẻ và một độ lệch chia sẻ duy

nhất. Vì vậy, mỗi sơ đồ đặc trưng cần 26 tham số. Nếu bài tốn cần có 20 sơ đồ

đặc trưng thì cần 20 × 26 = 520 tham số để xác định lớp tích chập. Bây giờ hãy

làm một phép so sánh, giả sử có lớp đầu tiên kết nối đầy đủ, tức là có 784 = 28 × 28 nơ-ron đầu vào, và số nơ-ron lớp ẩn bằng 30. Như vậy cần

784 × 30 trọng số, cộng thêm 30 độ lệch, tổng số 23.550 tham số. Nói cách khác, lớp kết nối đầy đủ sẽ cần số lượng tham số nhiều gấp 40 lần so với lớp

tích chập.

Tóm lại, một tầng tích chập bao gồm các sơ đồ đặc trưng khác nhau. Mỗi

một sơ đồ đặc trưng giúp nhận dạng một vài đặc trưng trong bức ảnh. Lợi ích lớn nhất của trọng số chia sẻ là giảm tối đa số lượng tham số trong CNN.

Ngoài các lớp tích chập vừa mơ tả, mạng nơ-ron tích chập cũng chứa các lớp tổng hợp. Lớp tổng hợp thường được sử dụng ngay sau lớp tích chập. Những gì các lớp tổng hợp làm là đơn giản hóa các thơng tin ở đầu ra từ các lớp tích chập.

Ví dụ, mỗi đơn vị trong lớp tổng hợp có thể thu gọn một vùng 2 × 2 nơ-ron trong lớp trước. Một thủ tục tổng hợp phổ biến là max-pooling. Trong max- pooling, một đơn vị tổng hợp chỉ đơn giản là kết quả đầu ra kích hoạt giá trị lớn nhất trong vùng đầu vào 2 × 2, như hình 2.8.

Hình 2.8 Lớp tổng hợp trong CNN

Lưu ý rằng bởi vì có 24 × 24 nơ-ron đầu ra từ các lớp tích chập, sau khi

pooling sẽ có 12 × 12 nơ-ron.

Lớp tích chập thường có nhiều hơn một sơ đồ đặc trưng. Do đó sẽ áp dụng

max-pooling cho mỗi sơ đồ đặc trưng riêng biệt. Vì vậy, nếu có ba sơ đồ đặc trưng, các lớp tích chập và max-pooling sẽ kết hợp như hình 2.9.

Hình 2.9 Sự kết hợp giữa các lớp tích chập và max-pooling

Có thể hiểu max-pooling như là một cách cho mạng để hỏi xem một đặc

trưng nhất được tìm thấy ở bất cứ đâu trong một khu vực của ảnh. Sau đó nó bỏ đi những thơng tin định vị chính xác. Trực giác là một khi một đặc trưng đã được tìm thấy, vị trí chính xác của nó là khơng quan trọng như vị trí thơ của nó

so với các đặc trưng khác. Một lợi ích lớn là có rất nhiều tính năng gộp ít hơn, Nơ-ron lớp ẩn

(Đầu ra của sơ đồ đặc trưng)

và vì vậy điều này sẽ giúp giảm số lượng các tham số cần thiết trong các lớp

sau.

Max-pooling không phải là kỹ thuật duy nhất được sử dụng để tổng hợp. Một phương pháp phổ biến khác được gọi là L2 pooling. Ở đây, thay vì lấy giá trị kích hoạt tối đa của một vùng 2 × 2 nơ-ron, phương pháp này lấy căn bậc hai của tổng các bình phương của kích hoạt trong vùng 2 × 2. Trong khi các chi tiết

thì khác nhau, nhưng về trực giác thì tương tự như max-pooling: L2 pooling là

một cách để cô đọng thông tin từ các lớp tích chập. Trong thực tế, cả hai kỹ

thuật đã được sử dụng rộng rãi. Và đôi khi chúng ta có thể sử dụng các loại pooling khác.

Đặt tất cả chúng lại với nhau để tạo thành một mạng tích chập hồn chỉnh. Nó tương tự như kiến trúc khi nhìn vào, nhưng có thêm một lớp 10 nơ-ron đầu ra, tương ứng với 10 giá trị kết quả, hình 2.10.

Hình 2.10 Các lớp tạo thành một CNN cho ra 10 giá trị

Hai lớp cuối cùng của các kết nối trong mạng là một lớp kết nối đầy đủ. Lớp này nối tất cả các nơ-ron từ lớp max pooling đến tất cả các nơ-ron của dầu ra.

Phát hiện đới tượng

2.3.1 Tổng quan

Bài tốn phát hiện đối tượng thường sử dụng những thuật toán đơn giản, tốc

độ tính tốn nhanh, nhưng bù lại độ chính xác khơng tốt như sử dụng mơ hình

28 × 28 3 × 24 × 24

thống giám sát, nhận dạng và khảo sát. Việc sử dụng thị giác máy tính để phát hiện các đối tượng là một giải pháp được sử dụng rộng rãi trên toàn thế giới.

Phương pháp này ứng dụng các kỹ thuật xử lý ảnh và các thuật tốn máy học để tìm các đối tượng trong các hình ảnh. Tuy nhiên, việc phát hiện đối tượng dựa

trên thị giác máy tính là một vấn đề khó bởi vì hệ thống phải giải quyết với sự

thay đổi về điều kiện tạo ảnh (ví dụ như sự thay đổi về các điều kiện ánh sáng

và thời tiết) và sự thay đổi của các cảnh và môi trường.

Nhiều phương pháp phát hiện đối tượng khác nhau sử dụng thị giác máy tính

đã được phát triển và ứng dụng rộng rãi trong đời sống thực tiễn [3]. Các phương pháp này phát hiện đối tượng với ba bước chính:

- Bước thứ nhất là dựa vào các thuộc tính của đối tượng như màu sắc, kết cấu bề mặt và hình dạng để trích chọn các đặc trưng ảnh.

- Bước thứ hai là sử dụng tập dữ liệu mẫu để xác định các tham số cho

các bộ nhận dạng đối tượng trong ảnh.

- Bước thứ ba là sử dụng bộ nhận dạng để xác định đối tượng trong các ảnh đầu vào bất kỳ.

Trong hệ thống phát hiện đối tượng thì việc trích chọn đặc trưng ảnh đóng một vai trị quan trọng. Có hai xu hướng chính trong việc trích chọn đặc trưng:

- Sử dụng các đặc trưng cạnh,

- Sử dụng các đặc trưng màu và kết cấu bề mặt của các vùng ảnh.

Các phương pháp dựa trên các đặc trưng cạnh xác định đối tượng trong ảnh

bằng việc đi tìm các đường bao của đối tượng. Điểm mạnh của các phương

pháp này là bất biến với các điều kiện ánh sáng và sự dịch chuyển của đối

tượng. Tuy nhiên, các phương pháp dựa vào cạnh lại nhạy cảm với các cạnh

nhiễu và khơng có hiệu quả khi trong ảnh xuất hiện nhiều cạnh nhiễu. Mặt khác, hiệu quả của các phương pháp này lại phụ thuộc vào việc dị tìm các điểm cạnh.

Các phương pháp sử dụng các đặc trưng màu và kết cấu bề mặt của các vùng ảnh có hiệu quả cao trong việc dị tìm các đối tượng mà chúng có màu sắc hoặc

kết cấu bề mặt rất khác so với các đối tượng nền khác trong ảnh [3]. Điểm yếu của các phương pháp này là chúng rất nhạy cảm với sự thay đổi của các điều

kiện ánh sáng và thường lỗi trong trường hợp đối tượng bị ảnh hưởng bởi các vùng rất sáng và các bóng râm [8].

2.3.2 Phương pháp phát hiện đối tượng

Phương pháp được đề xuất sử dụng là dựa vào cạnh, vào màu và kết cấu bề

mặt. Phương pháp đề xuất dựa trên sự kết hợp giữa đặc trưng màu sắc và đặc

trưng hình dạng để xây dựng một mơ hình xác suất cho việc phát hiện các mục

tiêu trong ảnh. Có hai bước chính trong phương pháp này:

- Bước thứ nhất là phân mảnh ảnh đầu vào thành các vùng đồng màu

khác nhau.

- Bước thứ hai là xác định mục tiêu trong ảnh từ các vùng đồng màu sử

dụng các đặc trưng màu và hình dạng. Mục tiêu được tìm như là một tập con

các vùng đồng màu kết nối với nhau (các vùng này đều thuộc về một vùng

lớn) sao cho xác suất hậu nghiệm của tập này là lớn nhất.

Các đối tượng cần phát hiện trong các ảnh thu thập được từ camera sẽ bao

gồm nhiều đối tượng nền. Do vậy việc sử dụng các phương pháp dựa vào cạnh sẽ không hiệu quả. Mặt khác nếu sử dụng các phương pháp dựa vào đặc trưng màu sắc sẽ rất nhạy cảm với điều kiện ánh sáng. Từ việc phân tích các kết quả thực nghiệm phân vùng ảnh bằng phương pháp đồ thị trong [22] thì kết quả

thuật tốn phân vùng ảnh nhanh, có độ chính xác và tin cậy cao. Hơn nữa, đặc

trưng hình dạng được đề xuất trong [12] là một đặc trưng quan trọng trong việc xác định đối tượng, nó có nhiều ưu điểm như là bất biến với sự méo hình cục

bộ, sự dịch chuyển và xoay. Thay vì chỉ sử dụng đặc trưng màu, việc kết hợp

tin cậy trong việc xác định đối tượng dưới các điều kiện môi trường và ánh

sáng khác nhau. Sử dụng phương pháp xác suất với sự kết hợp giữa đặc trưng hình dạng với đặc trưng màu sắc trong việc phát hiện đối tượng từ các vùng ảnh cục bộ.

Đầu tiên, ảnh đầu vào được phân mảnh thành các vùng đồng màu sử dụng

thuật tốn trong [22]. Sau đó, đối tượng cần tìm được xác định trong ảnh như là một tập con các vùng đồng màu kết nối với nhau. Tập con này có xác suất hậu nghiệm của đặc trưng màu sắc và hình dạng là cực đại. Theo một cách khác,

phương pháp đề xuất phát hiện đối tượng trong ảnh bao gồm có hai giai đoạn

chính:

- Giai đoạn một: phân vùng ảnh. Có nhiều thuật toán phân vùng ảnh khác

nhau như các thuật toán chia và trộn vùng, các thuật toán tăng trưởng vùng,

các thuật toán áp dụng lý thuyết đồ thị, các thuật toán sử dụng các kỹ thuật máy học, các thuật toán dựa vào cạnh... Tuy nhiên phương pháp hiện được

tính tổng qt hóa trong phân vùng ảnh và có thể áp dụng cho nhiều trường hợp thực tế là sử dụng thuật toán dựa vào lý thuyết đồ thị được đề xuất trong [22] để phân mảng ảnh đầu vào thành các vùng đồng nhất về màu sắc. Thuật tốn này có độ chính xác cao và thời gian tính tốn nhanh. Thuật tốn được

chia làm các giai đoạn như hình 2.11

Hình 2.11 Giai đoạn phân vùng ảnh

Frame ảnh

Dữ liệu từ

camera Tiền xử lý ảnh

Phân ảnh thành các

- Giai đoạn hai: xác định đối tượng. Thuật toán này thực hiện bằng cách rút trích đặc trưng về hình dạng và màu sắc từ các vùng đồng màu của ảnh ban đầu. Sau đó dùng các mơ hình xác xuất để xác định đối tượng cần tìm,

hình 2.12.

Hình 2.12 Giai đoạn xác định đối tượng

Gọi 𝑺 = {𝑺𝟏, 𝑺𝟐, 𝑺𝟑, 𝑺𝟒, … } là tập các vùng đồng nhất về màu sắc trong

ảnh đầu vào. Các vùng đồng màu này có được bằng việc áp dụng thuật toán

phân vùng ảnh. Đối tượng trong ảnh đầu vào được tìm là một tập con 𝑺∗ từ 𝑺.

Tất cả các thành phần 𝑺𝒊 ∈ 𝑺∗ là các thành phần kết nối và đều thuộc về một

vùng ảnh Z. Tập con 𝑺∗ từ 𝑺 được xác định bằng cách sử dụng hai đặc trưng

nổi bật của đối tượng trong ảnh là: màu sắc và hình dạng. Các đặt trưng của

đối tượng được tính tốn bằng việc sử dụng các hàm mật độ xác suất trên tập

dữ liệu ảnh mẫu.

Trên tập dữ liệu ảnh mẫu, mỗi ảnh được phân vùng thành các vùng đồng màu 𝑺𝒊, các vùng thuộc đối tượng được xác định thủ công như là các vùng

𝑺𝒌𝟎. Như vậy từ tập dữ liệu mẫu sẽ tạo ra một tập các vùng đồng màu khác

nhau thuộc về đối tượng 𝑺𝟎 = {𝑺𝟏𝟎, 𝑺𝟐𝟎, 𝑺𝟑𝟎, 𝑺𝟒𝟎, … }. Đối với mỗi vùng 𝑺𝒌𝟎, đặc

trưng màu 𝒄 = (𝒄𝟏, 𝒄𝟐, 𝒄𝟑) của nó là một vector mà mỗi thành phần 𝒄𝒊 (𝒊 = 𝟏, 𝟐, 𝟑) là giá trị trung bình của thành phần màu thứ i của tất cả các điểm ảnh

Vùng đồng màu Rút trích đặc trưng về hình dạng và màu sắc Đối tượng được tìm Xác định đối tượng bằng mơ hình xác xuất

trong 𝑺𝒌𝟎. Đặt O biểu thị cho lớp đối tượng cần tìm. Hàm mật độ xác suất của đối tượng đối với màu đặc trưng màu 𝝆(𝒄|𝑶) được tính bằng phương pháp

histogram màu 3D của tất cả các màu 𝒄 của các vùng 𝑺𝒌𝟎. Mỗi thành phần

màu được lượng tử hóa thành N bin.

Đặc trưng hình dạng của đối tượng được xác định bằng việc sủ dụng các

bộ đặc tả về hình dạng [12]. Bộ đặc tả hình dạng này bất biến khi đối tượng bị xoay, dịch chuyển, méo, biến đối theo tỷ lệ. Đặc trưng hình dạng 𝒔 của một đối tượng bao gồm các đặc tả hình dạng của các điểm ảnh nằm trên

Một phần của tài liệu (Luận văn thạc sĩ) HỆ THỐNG ĐIỂM DANH HỌC SINH THEO VẾT CHUYỂN ĐỘNG KẾT HỢP NHẬN DẠNG ĐẦU HỌC SINH TRONG VIDEO (Trang 29)