Hoạt động của sinh viên:TTNội dung cần thực hiệnCĐR1 Đề xuất ý tưởng thiết kế; Lựa chọn và sử dụng các tài liệukỹ thuật phù hợp để viết báo cáo đồ án môn học về pháttriển ứng dụng mạng n
Trang 1BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
-ĐỒ ÁN MÔN HỌC MẠNG NƠ-RON NHÂN TẠO
Thiết kế mô hình mạng nơ-ron nhân tạo
Trang 2PHIẾU GIAO ĐỒ ÁN MÔN HỌC HỌC PHẦN ĐỒ ÁN MẠNG NƠ-RON NHÂN TẠO
I Thông tin chung
2 Tên nhóm: Nhóm 7
3 Họ và tên thành viên trong nhóm:
II Nội dung học tập
1 Tên đề tài: Thiết kế mạng nơ-ron nhận diện màu sắc
2 Hoạt động của sinh viên:
1 Đề xuất ý tưởng thiết kế; Lựa chọn và sử dụng các tài liệu
kỹ thuật phù hợp để viết báo cáo đồ án môn học về phát
triển ứng dụng mạng nơ-ron nhân tạo
L1;L4
2 Áp dụng kiến thức về toán để tính toán các tham số, xây
4
Viết báo cáo ứng dụng mạng nơ-ron nhân tạo sử dụng văn
bản và đồ họa Thuyết trình ứng dụng xây dựng trên nền
tảng mạng nơ-ron án môn học về phát triển ứng dụng
mạng nơ-ron nhân tạo
L2;L3
3 Sản phẩm nghiên cứu:
Trang 3III Nhiệm vụ học tập
Hoàn thành nội dung của đồ án theo đúng quy định trong thời gian từ ngày 16/10/2023 đến ngày 24/12/2023, bao gồm:
- Thực hiện thành lập nhóm, triển khai kế hoạch làm việc nhóm.
- Họp nhóm (ít nhất 05 lần); ghi chép biên bản họp; lưu video minh chứng cho buổi họp.
- Thay phiên điều phối công việc của nhóm (mỗi thành viên làm trưởng nhóm ít nhất 01 giai đoạn)
- Áp dụng kiến thức, kỹ năng và công cụ liên quan để thiết kế mô hình mạng đáp ứng yêu cầu kỹ thuật.
- Báo cáo sản phẩm nghiên cứu theo đề tài được giao trước giảng viên và các sinh viên khác.
IV Học liệu thực hiện Đồ án
Trang 4PHỤ LỤC: MÔ TẢ YÊU CẦU KỸ THUẬT CỦA MÔ HÌNH MẠNG NƠ
RON NHÂN TẠO NHẬN DIỆN MÀU SẮC
- Thiết kế mô hình mạng nơ-ron nhân tạo:
+ Thiết kế mô hình truyền thằng;
+ Thiết lập các tham số mô hình
+ Phân tích thuật toán nhận diện
- Thiết kế mô hình phần mềm:
+ Thiết lập cơ sở dữ liệu;
+ Phân tách tập dữ liệu train và test
+ Đưa dữ liệu vào test
+ Thực hiện nhận diện 3 màu sắc (đỏ, xanh lam, xanh lục) theo yêu cầu
Trang 5LỜI CẢM ƠN
Trong quá trình thực hiện đề tài nghiên cứu này, chúng em xin gửi lờicảm ơn chân thành tới cô Dương Thị Hằng – Giảng viên khoa điện tử trườngĐại học Công Nghiệp Hà Nội đã hướng dẫn tận tình và chỉ dẫn các bước,cung cấp những tài liệu nghiên cứu quý báu, hướng nghiên cứu để chúng em
có thể hoàn thành tốt đồ án này
Chúng em xin được gửi lời cảm ơn tới các thầy, cô trong Khoa Điện Tử
đã giúp đỡ, tạo điều kiện cho chúng em hoàn thành đồ án Đặt biệt là cô giáoThS.Dương Thị Hằng đã chỉ dạy, giúp đỡ tận tình chúng em từ đó chúng em
đã rút ra được những thiếu sót của bản thân từ đó dần cải thiện bản thân vàhoàn thành đề tài của mình theo đúng tiến độ được giao
Do trình độ cũng như kinh nghiệm còn hạn chế nên đề tài không thểtránh khỏi những thiếu sót, chúng em rất mong nhận được ý kiến đóng góp từthầy cô, để chúng em có thể học hỏi thêm kinh nghiệm và giúp ích cho côngviệc sau này
Nhóm chúng em xin chân thành cảm ơn!
Trang 6MỤC LỤ
C
MỞ ĐẦU 1
CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI 4
1.1 Tổng quan về mô hình mạng nơ-ron nhân tạo nhận diện màu sắc
1.2 Mạng neural nhân tạo
1.2.1 Giới thiệu chung về mạng nơ-ron nhân tạo 4
1.2.2 Các thành phần của mạng 5
1.2.3 Các ứng dụng của mạng nơ-ron 7
1.3 Các kiến trúc mạng
1.3.1 Mạng Nơ-ron nhân tạo và kiến trúc mạng MLP 8
1.3.2 Mạng Nơ-ron nhân tạo và kiến trúc mạng ANN 9
1.3.3 Mạng Nơ-ron nhân tạo và kiến trúc mạng CNN 10
1.4 Lựa chọn đề tài và lý do lựa chọn đề tài 11
1.4.1 Lựa chọn đề tài 11
1.4.2 Lí do chọn đề tài 12
1.5 Màu sắc và các đặc trưng của màu sắc 12
1.5.1 Màu sắc là gì? 12
1.5.2 Đặc tính của màu sắc 12
Kết luận chương 1 13
CHƯƠNG 2: THIẾT KẾ MÔ HÌNH MẠNG NORON NHÂN TẠO NHẬN DIỆN MÀU SẮC CƠ BẢN ĐỎ, XANH LAM, XANH LỤC 14
2.1 Phân tích yêu cầu bài toán 14
2.1.1 Mục tiêu thiết kế 14
2.1.2 Điều kiện ràng buộc của thiết kế 14
2.1.3 Thông số kỹ thuật 14
2.1.4 Tiêu chí đánh giá sản phẩm 14
2.2 Sơ đồ khối của bài toán 15
2.3 Thiết kế ý tưởng 15
2.3.1 Thuật toán lan truyền thẳng 15
Trang 72.3.2 Thuật toán Gradient Desent 17
2.3.3 Thuật toán lan truyền ngược 19
2.3.4 Thuật toán Adam 20
2.3.5.Mô hình CNN 22
2.4 Thiết kế chi tiết 27
2.4.1 Xử lý dữ liệu màu sắc với ngôn ngữ Python 27
2.4.2 Xây dựng mô hình mạng nơ – ron 29
2.4.3 Huấn luyện mạng nơ – ron sử dụng thuật toán Adam 30
Kết luận chương 2 31
CHƯƠNG 3:THỬ NGHIỆM VÀ ĐÁNH GIÁ 32
3.1 Kịch bản thử nghiệm 32
3.1.1 Mục đích của sản phẩm 32
3.1.2 Kịch bản thử nghiệm 32
3.2 Kết quả thử nghiệm 32
3.2.1 Thử nghiệm với kịch bản 1 33
3.2.2 Thử nghiệm với kịch bản 2 34
3.3.3 Thử nghiệm với kịch bản 3 35
3.3 Đánh giá sản phẩm 37
3.3.1 Ưu điểm hệ thống 37
3.3.2 Nhược điểm hệ thống 37
3.3.3 Hướng phát triển 37
3.4 Ứng dụng của sản phẩm 38
Kết luận chương 3 38
KẾT LUẬN 39
TÀI LIỆU THAM KHẢO 40
PHỤ LỤC 41
Trang 8DANH MỤC HÌNH ẢNH
Hình 1.1 Cấu tạo của một mạng nơ – ron nhân tạo 5
Hình 1.2 Mô hình mạng nơ – ron nhân tạo 5
Hình 1.3 Cấu trúc mạng perceptron 6
Hình 1.4 Cấu trúc mạng nơ – ron nhiều lớp 7
Hình 1.5 Mô hình MLP 8
Hình 1.6 Mô hình ANN 9
Hình 1.7 Mô hình CNN 10
Hình 2.1 Sơ đồ khối 15
Hình 2.2 Mô hình mạng nơ – ron truyền thẳng nhiều lớp 16
Hình 2.3 Mối quan hệ giữa thuật toán Adam và Gradient Desent 20
Hình 2.4 Bộ lọc tích chập trên ma trận điểm ảnh 23
Hình 2.5 Hình ảnh sau khi đi qua bộ lọc 24
Hình 2.6 Phương thức Avarage Pooling và Max Pooling 25
Hình 2.7 Mô hình kết nối Fully-Connected 26
Hình 2.8 Kiến trúc CNN đặc trưng 27
Hình 2.9 Dữ liệu huấn luyện 29
Hình 2.10 Dữ liệu kiểm tra 29
Hình 2.11 Mô hình mạng nơ ron trên Python 30
Hình 3.1 Mẫu thử 1 [8] 33
Hình 3.2 Kết quả thử nghiệm với kịch bản 1 33
Hình 3.3 Mẫu thử 2 [9] 34
Hình 3.4 Kết quả thử nghiệm với kịch bản 2 34
Hình 3.5 Mẫu thử 3-1 [8] 35
Hình 3.6 Kết quả thử nghiệm kịch bản 3-1 35
Hình 3.7 Mẫu thử 3-2 [10] 36
Hình 3.8 kết quả thử nghiệm kịch bản 3-2 36
Hình 3.9 Giao diện thực hiện bài toán 37
Hình ảnh: Giao diện chọn mở project 41
Hình ảnh: Cách chạy chương trình 42
Hình ảnh: Nơi hiển thị kết quả và chọn file kiểm tra 42
Hình ảnh: Tắt chương trình kiểm tra 42
Trang 9DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ CÁI VIẾT TẮT
ADAM Adaptive Moment Estimation Thuật toán tối ưu hóa Adam ANN Artificial Nơ-ron Network Mạng nơ-ron nhân tạo CNN Convolutional Nơ-ron Network Mạng nơ-ron tích chập
Gradient Descent IDE Integrated Development Environment Môi trường phát triển tích
hợp JPEG Joint Photographic Experts Group Chuẩn nén ảnh JPEG JPG Joint Photographic Group Chuẩn nén ảnh JPG
MLP Multi Layer Perceptron Mạng nơ-ron truyền thẳng
nhiều lớp PNG Portable Network Graphics Chuẩn nén ảnh PNG
ReLU Rectified Linear Unit Hàm kích hoạt Linear
Trang 10MỞ ĐẦU
Lý do lựa chọn đề tài
Hiện nay trong cuộc sống hàng ngày, khi công nghệ đang phát triển một cáchnhanh chóng và thần kì với sự phát triển của hàng loạt các công nghệ nhậndiện được phát triển trong số đó không thể bỏ qua nhận diện màu sắc Khả năng nhận diện màu sắc không chỉ quan trọng trong lĩnh vực nghệ thuật và thiết kế,
mà còn đóng vai trò quan trọng trong nhiều ứng dụng thực tế như nhận dạng đối tượng, y tế, và công nghiệp Ví dụ như trong nông nghiệp nhận diện màu sắc dùng
để phân biệt các loại hoa qua có màu đặc trưng, dễ dàng phân chia và cất trữ giúp cho công việc nhẹ nhàng hơn Hay như trong hệ thống giao thông nhận diện màu sắc cũng được sử dụng để nhận diện màu sắc đèn qua đó điều khiển được phương tiện giao thông dựa theo tín hiệu từ đèn báo.
Với những ứng dụng thực tiễn quan trọng trong cuộc sống và nghiên cứu,nhóm chúng em đã quyết định lựa chọn đề tài: “ Thiết kế mô hình mạng nơ-ron nhân tạo nhận diện màu sắc ” để làm đồ án thi kết thúc học phần Mạngnơ-ron nhân tạo
Đồ án này chắc chắn sẽ giúp chúng ta mở rộng tầm hiểu biết và tận hưởng sựthú vị của việc làm quen với màu sắc thông qua góc nhìn của máy tính
Mục tiêu nghiên cứu
Khi quyết định lựa chọn đề tài “ Thiết kế mô hình mạng nơ-ron nhân tạonhận diện màu sắc ” để làm đồ án thi kết thúc học phần Mạng nơ-ron nhântạo, mục tiêu được đặt ra cho nhóm em là nâng cao kiến thức, hiểu biết vềmạng nơ-ron nhân tạo
Và qua đề tài nghiên cứu này nhóm em mong muốn có thể phát triển từ việcnhận diện được 3 màu cơ bản qua đó phát triển và nghiên cứu chuyên sâu đểnhận diện được nhiều màu sắc hơn
Đối tượng nghiên cứu
Đối tượng nghiên cứu của đề tài nhóm em chính:
+ Mô hình mạng nơ-ron nhân tạo
Trang 11+ Các phương pháp huấn luyện mạng nơ-ron nhân tạo
+ 3 màu sắc cơ bản: đỏ, xanh dương, xanh lá
+ Cách xây dựng chương trình giải quyết đề tài dùng ngôn ngữ lập trìnhpython
Phạm vi nghiên cứu
- Tìm hiểu về cách máy tính nhận diện ba màu sắc
- Tìm hiểu về mạng nơ-ron nhân tạo dùng để nhận diện màu sắc
- Lĩnh vực tìm hiểu, thực hiện: Điện tử viễn thông
1 Phương pháp nghiên cứu
Đề tài:”Mạng Nơ-ron nhân tạo nhận diện màu sắc”, chúng ta có thể sử dụngcác phương pháp nghiên cứu sau đây:
- Phương pháp thu thập thông tin
Khảo sát giá xăng dầu, thu thập thông tin, nhu cầu sử dụng phần mềm đểphân biệt màu sắc…Đọc các tài liệu liên quan đến lập trình, thiết kế mô hìnhmạng Nơ-ron
Từ bảng hỏi, ta có thể thu thập được ý kiến của các chuyên gia trong lĩnhvực nông nghiệp, công nghiệp,… về sự cần thiết của hệ thống
- Phương pháp xử lý thông tin:
Định lượng: Tiến hành phân tích và xác định các thông số kỹ thuật của môhình, phương pháp huấn luyện, số lượng công việc, Từ đó đưa ra đượcphương pháp thiết kế
Định tính: Xác định các tính năng và chức năng của thiết bị bằng các
phương pháp định tính như so sánh với các thiết bị hiện có trên thị
trường
Tổng hợp lại, trong đề tài này, các phương pháp nghiên cứu được sử dụnggồm phương pháp thu thập thông tin (khảo sát, lập bảng hỏi, đọc tài liệu) vàphương pháp xử lí thông tin (định lượng, định tính) Các phương pháp này sẽgiúp tiến hành nghiên cứu một cách có hệ thống, đầy đủ và đạt được kết quảmong muốn
Trang 12Ý nghĩa khoa học và thực tiễn đề tài
- Ý nghĩa khoa học: Bổ sung cho lý thuyết của bộ môn Mạng nơ-ron nhân tạo,làm rõ một số vấn đề trong cấu trúc mạng perceptron, các phương pháp huấnluyện mạng nơ-ron,…
- Ý nghĩa thực tiễn: giải quyết các vấn đề, khó khăn, vướng mắc trong nhậndiện màu sắc, có thể dùng trong việc phân loại sản phẩm
Kết quả dự kiến
- Xây dựng được một mô hình mạng Nơ-ron có khả năng nhận diện 3 màu:
Đỏ, Xanh lam, Xanh lục
- Độ chính xác của mô hình: 80%
Cấu trúc của báo cáo đồ án mạng nơ-ron
Báo cáo đồ án gồm 3 chương với các nội dung sau:
Chương 1: Tổng quan
Chương 2: Thiết kế mô hình mạng nơ-ron nhân tạo
Chương 3: Thử nghiệm và đánh giá
Trang 13CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI 1.1 Tổng quan về mô hình mạng nơ-ron nhân tạo nhận diện màu sắc
Màu sắc là một khía cạnh quan trọng trong cuộc sống và thị giác của con người Nó tạo ra sự đa dạng và thú vị trong thế giới xung quanh chúng ta và có vai trò quan trọng trong nhiều lĩnh vực, bao gồm ngành nghệ thuật, thiết kế, thị giác máy tính và khoa học.
Tầm quan trọng của màu sắc trong cuộc sống: Màu sắc không chỉ đóng vai trò
thẩm mỹ, mà còn có ảnh hưởng đến tâm trạng và cảm xúc của con người Mỗi màu sắc có thể gợi lên những cảm xúc và ý nghĩa riêng biệt Ví dụ: Màu đỏ thường liên quan đến sự nổi loạn hoặc đam mê, màu xanh biểu thị sự yên bình và sự trung tính, màu vàng thể hiện niềm vui và sự sáng sủa.
Tính đa dạng của màu sắc: Màu sắc là một phạm vi rộng lớn của sự tổng hợp màu
sắc cơ bản: đỏ, xanh lam và xanh lục Từ ba màu cơ bản này, chúng ta có thể tạo ra
vô số các màu sắc phức tạp khác thông qua việc kết hợp chúng với nhau hoặc thêm màu trắng và đen.
Tính ứng dụng rộng rãi: Nhận diện màu sắc là một nhiệm vụ quan trọng trong thị
giác máy tính và có nhiều ứng dụng thực tế hữu ích Ví dụ: Trong ngành công nghiệp, việc phân loại và nhận diện màu sắc có thể được sử dụng để kiểm tra chất lượng sản phẩm trong quá trình sản xuất, đánh giá chất lượng thực phẩm, xử lý hình ảnh và nhiều ứng dụng khác
1.2 Mạng neural nhân tạo
1.2.1 Giới thiệu chung về mạng nơ-ron nhân tạo
Mạng nơ-ron nhân tạo hay chính là Artificial Neural Network (ANN) là mộttập hợp con của học máy, trung tâm của thuật toán học sâu Tên và cấu trúccủa chúng được lấy cảm hứng từ bộ não con người, bắt chước cách tế bàothần kinh sinh học truyền tín hiệu cho nhau
Mạng nơ ron nhân tạo là chương trình phần mềm hoặc thuật toán mà về cơbản, sử dụng hệ thống máy tính để giải quyết phép toán
Trang 14Mạng thần kinh nhân tạo có cấu tạo nhiều lớp nút, bao gồm lớp đầu vào, mộthoặc nhiều lớp ẩn và lớp đầu ra Mỗi nút, hoặc nơ-ron nhân tạo, kết nối vớicác nút khác có trọng số cùng ngưỡng liên quan Chúng phối hợp, gửi tín hiệuđến nhau để cùng giải quyết vấn đề.
1.2.2 Các thành phần của mạng
Một mạng nơ – ron nhân tạo bao gồm các nơ – ron nhân tạo và các lớpperceptron
- Mô hình một nơ – ron nhân tạo:
Một nơ – ron nhân tạo được mô phỏng dựa trên cấu trúc của một
nơ – ron sinh học, bao gồm:
+ Cell body chứa nhân
+ Dendrities dùng để truyền tín hiệu từ nơ – ron lân cận đến cell body + Axon: dùng để truyền tín hiệu từ cell body của nơ – ron này đến cellbody của nơ – ron khác
Hình 1.1 Cấu tạo của một mạng nơ – ron nhân tạo
Trên cơ sở cấu tao của một nơ – ron sinh học, mô hình nơ – ron nhân tạođược xây dựng như sau:
Trang 15Hình 1.2 Mô hình mạng nơ – ron nhân tạo
Các đầu vào p1, p2, … , p k được kết nối thông qua bộ trọng số có thể thay đổiđược w1,1, w1,2, … , w1,k tương ứng để đưa vào bộ tổng Ngoài ra nơ – ron còn
có độ lệch bias (b) được cộng cùng các đầu vào được trọng số hóa để tính đầu
Perceptron là mạng nơ – ron đơn giản, chỉ bao gồm 1 lớp được tạo nên từ M
nơ – ron nhân tạo, mỗi nơ – ron nhận N tín hiệu đầu vào:
(1)
(2)
Trang 16Lưu ý: Mỗi Neural Network chỉ có một tầng input (tầng đầu vào) và output
(tầng đầu ra) nhưng sẽ có nhiều hidden layer
Hình 1.4 Cấu trúc mạng nơ – ron nhiều lớp 1.2.3 Các ứng dụng của mạng nơ-ron
- Mạng thần kinh nhân tạo ANN được sử dụng để thực hiện nhiều nhiệm vụkhác nhau Các nhiệm vụ này có thể khó thực hiện với con người nhưng sẽphù hợp hơn đối với máy móc Và được ứng dụng trong các lĩnh vực như:+ Quân sự: định hướng và sử dụng vũ khí, theo dõi mục tiêu…
+ Thiết bị điện tử: dự đoán chuỗi mã, cách bố trí chip IC và phân tích lỗichip
Trang 17+ Y khoa: phân tích tế bào ung thư, điện não đồ và phân tích điện tâm đồ + Giọng nói: sử dụng ANN trong nhận dạng giọng nói và phân loại giọng nói.+ Viễn thông: nén hình ảnh và dữ liệu, các dịch vụ thông tin tự động…
+ Vận tải: hệ thống chẩn đoán phanh xe tải hoặc hệ thống lập lịch trình cho xe
Multilayer Perceptron (Perceptron nhiều lớp) là một thuật toán học máy
có giám sát (Machine Learning) thuộc lớp Mạng nơ-ron nhân tạo, là tập hợpcủa các perceptron chia làm nhiều nhóm, mỗi nhóm tương ứng với một layer.Thuật toán về cơ bản được đào tạo trên dữ liệu để học một hàm phi tuyếntính nhằm mục đích phân loại hay hồi quy, với một tập hợp các tính năng vàmột biến mục tiêu (ví dụ: nhãn) Mô hình mạng nơron thường được sử dụng
Trang 18rộng rãi nhất là mô hình mạng truyền thẳng nhiều lớp (MLP - Multi LayerPerceptron) Một mạng MLP tổng quát là mạng có n lớp ( n 2 ) trong đóbao gồm một lớp vào, một lớp ra và một hoặc nhiều lớp ẩn
Perceptron nhiều lớp (MLP) là một mô hình mạng nơ-ron rất mạnh mẽcho phép học các hàm phi tuyến tính đối với dữ liệu phức tạp Phương phápnày đặc biệt phù hợp với các tài liệu chữ, số viết tay, hỗ trợ phân loại và tríchxuất nhanh chóng
1.3.2 Mạng Nơ-ron nhân tạo và kiến trúc mạng ANN
Hình 1.6 Mô hình ANN
ANN là một mô hình tính toán, chúng được xây dựng dựa trên cấu trúc vàchức năng của mạng lưới nơ-ron trong sinh học Do đó mạng nơ-ron này sẽthay đổi, chúng phụ thuộc vào đầu vào và đầu ra
Artificial Neural Network là mạng neural nhân tạo và là mô hình toán họchoặc mô hình toán được xây dựng thông qua các neural sinh học Nó bao gồmcác nhóm việc, neural nhân tạo có thể nối hút với nhau và xử lý các thông tinbằng biện pháp truyền theo các kết nối rồi tính toán giá trị mới tại các nút
Trang 19Ở nhiều trường hợp, mạng Artificial Neural Network là hệ thống thíchứng có thể tự thay đổi cấu trúc của mình dựa vào thông tin bên ngoài hoặcbên trong chảy qua mạng ở quá trình học Nhiều mạng Artificial NeuralNetwork còn là công cụ giúp mô hình hóa dữ liệu thống kê phi tuyến Chúngcòn được sử dụng để mô hình hóa cho các mối quan hệ có tính phức tạp giữacác dữ liệu vào hoặc giữa kết quả để kiếm tìm mẫu trong dữ liệu
1.3.3 Mạng Nơ-ron nhân tạo và kiến trúc mạng CNN
Hình 1.7 Mô hình CNN
Mạng CNN là một tập hợp các lớp tích chập chồng lên nhau và sử dụngcác hàm nonlinear activation như ReLU và tanh để kích hoạt các trọng sốtrong các node Mỗi một lớp sau khi thông qua các hàm kích hoạt sẽ tạo racác thông tin trừu tượng hơn cho các lớp tiếp theo
CNN có khả năng ghi lại sự phụ thuộc không gian của hình ảnh kể từ khi
nó xử lý chúng dưới dạng ma trận và phân tích toàn bộ các phần của một hìnhảnh tại một thời điểm, tùy thuộc vào kích thước của bộ lọc Ví dụ: một lớp lọc(convolutional layer) có kích thước 3 x 3 sẽ phân tích 9 điểm ảnh tại một thờiđiểm cho đến khi nó bao phủ toàn bộ hình ảnh
Mỗi phần của hình ảnh được cung cấp một tập hợp các tham số (chiềurộng và độ lệch) sẽ tham chiếu mức độ liên quan của tập hợp pixel đó vớitoàn bộ hình ảnh, tùy thuộc vào bộ lọc Theo đó, bằng cách giảm số lượng cáctham số và bằng cách phân tích hình ảnh theo từng phần, CNN có thể hiển thịđại diện tốt hơn của hình ảnh
Trang 20Mỗi giá trị của ma trận đại diện cho một pixel trong hình ảnh, trong đó
số được xác định bởi cường độ của màu, với các giá trị nằm trong khoảng từ 0đến 255 Thang độ xám, pixel trắng được biểu thị bằng số 255 và pixel đenbằng số 0 Pixel xám là bất kỳ số nào ở giữa, tùy thuộc vào cường độ của màusắc,màu xám càng nhạt, con số càng gần 255 Hình ảnh có màu thường đượcbiểu diễn bằng hệ thống RGB, hệ thống này đại diện cho mỗi màu là sự kếthợp của đỏ, xanh lá cây và xanh lam Ở đây, mỗi pixel sẽ có ba kích thước,một cho mỗi màu Các giá trị trong mỗi thứ nguyên sẽ nằm trong khoảng từ 0đến 255 Ở đây, màu càng đậm, con số càng gần 255 Ở đây, kích thước đầutiên đề cập đến chiều cao của hình ảnh (trong số pixel), kích thước thứ hai đềcập đến chiều rộng của hình ảnh (trong số pixel) và thứ nguyên thứ ba đượcgọi là kênh và đề cập đến bảng màu của hình ảnh Số kênh cho hình ảnh màu
là ba (một kênh cho mỗi màu trong Hệ thống RGB) Mặt khác, hình ảnh tỷ lệxám chỉ có một kênh:
Hình 1.8 Biểu thị màu theo giá trị số
Kiến trúc mạng CNN , là kiến trúc mở rộng của mạng MLP được sử dụng rộng rãi trong kỹ thuật học sâu (deep learning) đặc biệt là trong lĩnh vực thị giác máy tính (computer vision) Một trong những giải pháp nhằm tối ưu quá trình huấn luyện mạng được đề xuất là giảm số lượng các trọng số (weight) đểtăng tốc độ tính toán, giảm thời gian huấn luyện, tránh hiện tượng quá khớp khi mà lượng dữ liệu đầu vào là rất lớn như các bức ảnh màu, video…
Trang 211.4 Lựa chọn đề tài và lý do lựa chọn đề tài
giá chất lượng thực phẩm, xử lý hình ảnh và nhiều ứng dụng khác
Sự phát triển của trí tuệ nhân tạo và thị giác máy tính:
Trí tuệ nhân tạo và thị giác máy tính đã phát triển rất nhanh trong những năm gần đây Các mô hình mạng neural nhân tạo như CNN đã chứng tỏ hiệu quả cao trong việc nhận diện màu sắc và các đối tượng trong hình ảnh
Tiềm năng nghiên cứu và đóng góp:
Nghiên cứu sử dụng CNN để nhận diện màu sắc có thể đóng góp vào việc cải thiện hiệu suất của hệ thống nhận diện màu sắc hiện có và mở ra tiềm năng ứng dụng mới trong các lĩnh vực khác nhau Việc áp dụng trí tuệ nhân tạo vào nhận diện màu sắc có thể giúp tiết kiệm thời gian, tăng hiệu suất và giảm thiểu sai sót.
Sự quan tâm và nhu cầu nghiên cứu:
Việc nghiên cứu về việc nhận diện màu sắc có thể giúp đáp ứng nhu cầu thực tế
của xã hội và góp phần phát triển lĩnh vực này
1.5 Màu sắc và các đặc trưng của màu sắc
1.5.1 Màu sắc là gì?
Màu sắc là một khái niệm về hiện tượng thị giác, được tạo ra bởi sựkhác nhau trong bước sóng ánh sáng và cách mắt con người cảm nhận chúng.Trong không gian màu sắc, có một loạt các màu đơn sắc và màu phức tạp hơnđược tạo thành từ sự kết hợp của các màu đơn sắc
Trang 221.5.2 Đặc tính của màu sắc
Các đặc tính của màu sắc bao gồm:
Sắc thái (Hue):
Đây là thuộc tính chính xác nhất của màu sắc, cho biết màu cụ thể của vật thể
Ví dụ: màu đỏ, màu lục, màu vàng là các sắc thái khác nhau
Độ sáng (Brightness):
Độ sáng liên quan đến mức độ chiếu sáng hoặc bóng tối của màu sắc Nó thểhiện mức độ sáng hay tối của màu, từ đen (màu tối nhất) đến trắng (màu sángnhất)
Độ bão hòa (Saturation):
Độ bão hòa chỉ đến mức độ mạnh yếu của màu sắc Màu sắc có độ bão hòacao sẽ trông tươi sáng và sặc sỡ, trong khi độ bão hòa thấp sẽ làm màu nhạtđi
Tương phản (Contrast):
Là sự khác biệt giữa các màu sắc trong một cách thị giác Tương phản giúpphân biệt rõ ràng giữa các đối tượng và màu sắc xung quanh chúng
Tính chất tâm lý của màu sắc:
Màu sắc có thể tạo ra ảnh hưởng tâm lý và tạo ra cảm xúc khác nhau Ví dụ,màu đỏ thường được liên kết với sự nhiệt tình và sức mạnh, trong khi màu lục
có thể gợi lên sự yên bình và sự tự nhiên
Sự thay đổi của màu sắc theo ánh sáng:
Màu sắc có thể thay đổi khi ánh sáng thay đổi Điều này được gọi là hiệntượng "metamerism."
Những đặc tính này cùng nhau tạo nên một loạt các màu sắc đa dạng và đẹpmắt, được sử dụng rộng rãi trong nghệ thuật, thiết kế, thị giác và nhiều lĩnhvực khác
Kết luận chương 1
Tại chương 1 nhóm em nêu lên tổng quan về vấn đề xây dưng mô hình mạngnơ-ron nhân dạng nhận dạng màu sắc nói chung và nhận dạng 3 màu đỏ, xanh
Trang 23dương và xanh lá nói riêng và những cơ sở lý thuyết về mạng nơ-ron nhân tạocũng như màu sắc.
CHƯƠNG 2: THIẾT KẾ MÔ HÌNH MẠNG NORON NHÂN TẠO NHẬN DIỆN MÀU SẮC CƠ BẢN ĐỎ, XANH LAM, XANH LỤC
2.1 Phân tích yêu cầu bài toán
2.1.1 Mục tiêu thiết kế
Thiết kế mô hình mạng nơ-ron nhân tạo:
+ Thiết kế mô hình truyền thẳng
+ Thiết lập các tham số mô hình
Thiết kế mô hình phần mềm:
+ Thiết lập cơ sở dữ liệu
+ Phân tách tập dữ liệu train và test
+ Đưa dữ liệu vào test
+ Thực hiện nhận dạng màu sắc đỏ, xanh dương và xanh lá theo yêu cầu
2.1.2 Điều kiện ràng buộc của thiết kế
- Mô hình mạng noron phải đáp ứng các thành phần của một mạng nơ-ronnhân tạo
- Mô hinh có ít nhất 3 đầu vào, hàm truyền đạt, thuật toán huấn luyện, trọng
số của neuron và giá trị đầu ra
Trang 24- Độ chính xác trong kết quả kiểm tra
2.2 Sơ đồ khối của bài toán
Hình 2.1 Sơ đồ khối
2.3 Thiết kế ý tưởng
Để xây dựng mạng no-ron nhận diện được 3 màu sắc đỏ, xanh dương và xanh
lá cần có trải qua quá trình huấn huyện 4 thuật toán được sử dụng nhiều tronghuấn huyện mạng nơ-ron là: thuật toán lan truyền thẳng, thuật toán GradientDesent, thuật toán lan truyền ngược và thuật toán Adam
2.3.1 Thuật toán lan truyền thẳng
- Mạng nơ-ron truyền thẳng (Feedforward), là mạng nơ ron phổ biến Chúngbao gồm một lớp đầu vào, một hoặc nhiều lớp ẩn và một lớp đầu ra
-Mạng nơ-ron truyền thẳng xử lý dữ liệu một chiều, từ lớp đầu vào đến lớp
Trang 25thời gian.
Mạng nơ – ron truyền thẳng nhiều lớp:
- Mạng nơron truyền thẳng nhiều lớp bao gồm một lớp vào, một lớp ra vàmột
- bqi : ngưỡng của nơron thứ i ở lớp thứ q
- wqij : trọng số liên kết giữa đầu ra thứ j của lớp thứ q-1 đến nơronthứi của lớp thứ q, j=1…nq-1
Trang 26Bước 1: Khởi tạo ngẫu nhiên bộ trọng số w, b.
Bước 2: Lấy lần lượt các mẫu dữ liệu {x_inputs, target} trong tập dữ liệuhuẫn luyện, tính đầu ra của mạng và thêm vào Y, với Y là danh sách các đầu
ra của từng cặp dữ liệu trong {x_inputs, target}:
Bước 3: So sánh output với target:
Nếu ouput ≠ t thì tiến hành cập nhật trọng số và bias với công thức:
+ với w: {w new =w old +error × x inputs nếu error>0 :
w new =w old −error × x inputs nếu error<0 :+ với b: b_new = b_old + error
Trong đó: error là giá trị lỗi tại của mỗi cặp {output, t}
Bước 4: Lặp lại bước 2, và bước 3 cho đến khi Y = target thì kết thúc quátrình huấn luyện
2.3.2 Thuật toán Gradient Desent
- Thuật toán Gradient Descent là một phương pháp tối ưu hóa được sử dụngtrong máy học và tối ưu hóa để tìm ra giá trị tối thiểu của một hàm số
- Nguyên lý của L-M với Gradient Descent Leaning:
+ giả sử tập số liệu học có p mẫu : {xi,di}; i=1,2 p
+ với mỗi vector đầu vào xi, giá trị đích cần đạt f(xi) ~di với mọi giá trị của i
(3) (4)