TỔNG QUAN VỀ ĐỀ TÀI
Lý do chọn đề tài
Trong hai năm qua, đại dịch COVID-19 đã làm thay đổi hoàn toàn các hoạt động xã hội, khiến trẻ em, học sinh, sinh viên không thể đến trường, người lao động không thể tới nơi làm việc Các quán cà phê và nhà hàng đóng cửa, đường phố trở nên vắng vẻ, và mọi hoạt động chỉ diễn ra trong phạm vi gia đình hoặc trực tuyến Hơn nữa, đại dịch còn gây ra những thiệt hại lớn về người và tài sản.
Hình 1.1 Biểu đồ phân bố tỷ lệ ảnh hưởng của covid 19 đến các ngành
Covid 19 có tác động lớn đến nhiều lĩnh vực khác nhau trên thế giới như Công nghiệp, Giao thông vận tải hoặc Nông nghiệp, tác động này khiến thế giới ngừng hoạt động của mọi lĩnh vực và ra lệnh tuân theo những hạn chế nghiêm ngặt đối với việc ưu tiên tuân theo sự cách ly xã hội và đeo khẩu trang Tác động này của Covid-19 đối với các lĩnh vực khác nhau có thể được quan sát trong hình bên trên.
Tác động lớn nhất của Covid-19 đến các ngành nghề là ngành Nhà hàng với tỷ lệ 20%, tiếp theo là Bất động sản với 16% Ngành Nông nghiệp chịu ảnh hưởng thấp nhất, chỉ với 3% Biểu đồ dưới đây minh họa tổng số trường hợp nhiễm Coronavirus trên toàn cầu, cho thấy số người bị ảnh hưởng theo thời gian.
Hình 1.2 Số trường hợp nhiễm theo thời gian trên toàn thế giới
Từ ngày 22 tháng 1 năm 2020, số ca mắc Covid-19 đã tăng vọt từ 0 lên khoảng 111 triệu trường hợp vào tháng 2 năm 2021, cho thấy sự bùng phát theo cấp số nhân Mức tăng này đã ảnh hưởng sâu sắc đến tất cả các quốc gia, với những con số khác nhau ở từng nơi, và sự gia tăng khổng lồ này đã khiến dịch bệnh trở thành đại dịch toàn cầu.
Việc đeo khẩu trang và thực hiện giãn cách xã hội là những biện pháp quan trọng giúp giảm thiểu sự lây lan của virus, từ đó cứu sống nhiều mạng người Dù đã có các quyết định về phong tỏa và giãn cách, đại dịch vẫn tiếp diễn tại nhiều khu vực.
Các địa điểm công cộng như siêu thị, chợ và khu vực tiêm chủng vẫn cần hoạt động, do đó việc kiểm soát khoảng cách an toàn giữa mọi người và giám sát việc tuân thủ đeo khẩu trang là rất quan trọng Điều này nhằm đảm bảo an toàn và bảo vệ sức khỏe cộng đồng tốt nhất.
Mục tiêu đề tài
Ứng dụng YOLO V4 để hoàn thành được mục tiêu đề tài là:
Có thể kiểm soát khoảng cách an toàn và phát hiện người không đeo khẩu trang nơi công cộng
Sinh viên sau khi hoàn thành đề tài sẽ hiểu rõ hơn về phương pháp yolo v4 để phát hiện đối tượng.
Sẽ nâng cao được kỹ năng lập trình, và trao dồi thêm kiến thức về ngôn ngữ lập trình.
Kích thích sự sáng tạo và đưa ra nhiều hướng giải quyết khi gặp vấn đề khó trong quá trình lập trình.
Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu: Khoảng cách giữa người với người và xác định người có đeo khẩu trang hay không.
- Phạm vi nghiên cứu: Tập trung xác định trong một khoảng không gian nhất định được xác định trước.
Camera chỉ có khả năng ghi hình từ một góc nhìn trực diện, dẫn đến việc phát hiện vi phạm khoảng cách xã hội và người không đeo khẩu trang trong không gian rộng gặp khó khăn, dễ dẫn đến sai sót trong quá trình giám sát.
Phương pháp nghiên cứu
Phương pháp nghiên cứu kế thừa:
- Dựa vào các thuật toán đã có để phân tính đối tượng.
- Kế thừa từ các công trình nghiên cứu khoa học và sử dụng các phần mềm Opencv, ngôn ngữ lập trình C#.
Phương pháp tham khảo tài liệu : bằng cách thu thập thông tin từ sách, tạp chí về điện tử và truy cập internet.
Kết luận chương 1
Đại dịch COVID-19 đã gây ra những thiệt hại nghiêm trọng về người, kinh tế và xã hội, khiến nhiều ngành nghề rơi vào tình trạng khủng hoảng Để ứng phó, chúng ta đã triển khai các giải pháp như giãn cách xã hội, đeo khẩu trang và sử dụng công nghệ để phát hiện vi phạm trong công tác phòng chống dịch Những nỗ lực này cho thấy tầm quan trọng của công nghệ trong việc hỗ trợ ngăn ngừa dịch bệnh, từ đó mở ra hướng nghiên cứu và thiết kế hệ thống phát hiện khoảng cách và kiểm tra việc đeo khẩu trang.
CƠ SỞ LÝ THUYẾT
Tổng quan về việc kiểm soát khoảng cách và người đeo khẩu trang
Biến chủng COVID-19 đang liên tục thay đổi và trở nên mạnh mẽ hơn, dẫn đến tốc độ lây lan nhanh chóng Vì vậy, việc duy trì khoảng cách an toàn và đeo khẩu trang là rất cần thiết để kiểm soát dịch bệnh.
Hình 2 1 Phương pháp kiểm soát bằng con người
Phương pháp truyền thống hiệu quả nhất trong việc kiểm soát hành vi nơi công cộng là sử dụng sức người Người kiểm soát có nhiệm vụ quan sát và nhắc nhở những cá nhân không tuân thủ quy định về khoảng cách và việc đeo khẩu trang Ưu điểm của phương pháp này là tính linh hoạt và khả năng tương tác trực tiếp với cộng đồng.
Đơn giản, dễ thực hiện
Cần huy động nhiều người hỗ trợ công tác kiểm soát
Cần nhiều trang thiết bị bảo hộ
Dễ xảy ra lây nhiễm đối với lực lượng hỗ trợ khi tiếp xúc gần nguồn bệnh
2.1.2 Một số phương pháp ứng dụng công nghệ
Với sự tiến bộ của khoa học công nghệ, đặc biệt là trí tuệ nhân tạo và học sâu, nhiều nghiên cứu và dự án đã được triển khai nhằm kiểm soát khoảng cách xã hội và quản lý việc đeo khẩu trang tại các địa điểm công cộng Những nỗ lực này đã góp phần quan trọng trong việc phòng, chống và ngăn chặn đại dịch COVID-19 trên toàn thế giới.
Một phương pháp hiệu quả để giảm sự lây lan của coronavirus là thực hiện khoảng cách xã hội, tức là giảm tiếp xúc gần giữa người với người Ứng dụng kiểm soát khoảng cách xã hội sử dụng công nghệ thị giác máy dựa trên học sâu, OpenCV và YOLO, có khả năng ước tính khoảng cách giữa mọi người trong hình ảnh hoặc video Ứng dụng này cung cấp cảnh báo bằng cách hiển thị ô màu đỏ cho những khu vực không đảm bảo khoảng cách an toàn, trong khi ô màu xanh biểu thị những người đã tuân thủ đúng quy định khoảng cách.
Ứng dụng LogMask, phát triển bởi Aigecko của Châu Âu, là giải pháp hiệu quả cho việc kiểm soát ra vào và đảm bảo an toàn cho mọi người thông qua việc kiểm tra thiết bị bảo hộ như mũ, áo và khẩu trang LogMask quản lý số lượng người truy cập theo thời gian thực tại nhiều địa điểm như tòa nhà công cộng, công ty, nhà máy, siêu thị và trung tâm mua sắm, từ đó nâng cao an ninh cho môi trường làm việc Với trí tuệ nhân tạo và công nghệ dữ liệu lớn, LogMask có khả năng phát hiện người đeo hoặc không đeo khẩu trang, cung cấp sự kiểm soát tự động và tức thì trong các tình huống khác nhau như cửa hàng và không gian công cộng.
Hệ thống đạt độ chính xác lên đến 99% và cung cấp cảnh báo thời gian thực Nó có khả năng tích hợp với camera IP và camera quan sát, đồng thời cho phép quản lý dữ liệu trên nền tảng đám mây.
Hình 2 3 Phát hiện người không đeo khẩu trang ở nơi công cộng b) Việt Nam
Công ty TNHH phát triển công nghệ điện tử Bình Anh (BA GPS) đã ứng dụng thành công công nghệ trí tuệ nhân tạo (AI) để phát hiện "người không đeo khẩu trang" trên xe khách.
Hệ thống phân tích kết nối với camera trên xe nhằm thu thập dữ liệu hình ảnh, sau đó sử dụng công nghệ AI để tự động phân tích Mỗi khi phát hiện người không đeo khẩu trang hoặc đeo khẩu trang không đúng cách, hệ thống sẽ gửi thông báo đến đơn vị vận tải.
Hệ thống còn đánh dấu ô xanh những khuôn mặt đeo khẩu trang và ô đỏ những khuôn mặt không đeo khẩu trang.
Hệ thống cảnh báo sẽ thông báo cho đơn vị kinh doanh vận tải qua ứng dụng trên điện thoại thông minh và máy tính khi phát hiện hành khách không đeo khẩu trang hoặc đeo khẩu trang không đúng cách.
Tính năng “Cảnh báo không đeo khẩu trang” giúp nâng cao ý thức tuân thủ quy định 5K, giảm thiểu nguy cơ lây lan dịch bệnh COVID-19 trong môi trường đông người trên xe chở khách Công nghệ này không chỉ mang lại sự yên tâm cho hành khách mà còn hỗ trợ doanh nghiệp vận tải trong việc nhắc nhở từ xa về việc vi phạm quy định không đeo khẩu trang của hành khách, lái xe và phụ xe.
Hình 2 4 Hệ thống phát hiện người không đeo khẩu trang trên xe khách của BA GPS
Các phương pháp phát hiện khoảng cách xã hội và đeo khẩu trang ứng dụng công nghệ mang lại nhiều ưu điểm vượt trội so với các phương pháp truyền thống.
Phát hiện nhanh chóng, chính xác và đưa ra cảnh báo kịp thời hơn
Hệ thống này được thiết kế để hoàn toàn điều khiển và giám sát từ xa thông qua máy móc, giúp tự động hóa quy trình và giảm thiểu sự cần thiết phải sử dụng nhân lực Điều này không chỉ tối ưu hóa hiệu suất làm việc mà còn góp phần hạn chế sự lây lan của dịch bệnh, bảo vệ sức khỏe cộng đồng.
Hệ thống quản lý và kê khai dữ liệu đầy đủ, chi tiết, tiện lợi
Bài toán phát hiện đối tượng
Phát hiện đối tượng là một kỹ thuật trong thị giác máy tính, giúp xác định và định vị các đối tượng có trong hình ảnh hoặc video Kỹ thuật này vẽ các khung giới hạn quanh các đối tượng, cho phép người dùng nhận biết vị trí và cách di chuyển của chúng trong từng khung hình.
Phát hiện đối tượng và nhận dạng hình ảnh là hai khái niệm khác nhau trong lĩnh vực công nghệ Nhận dạng hình ảnh chỉ đơn thuần là gán nhãn cho hình ảnh, trong khi phát hiện đối tượng không chỉ xác định loại đối tượng mà còn dự đoán chính xác vị trí của nó trong hình ảnh Do đó, phát hiện đối tượng cung cấp nhiều thông tin hơn và mang lại giá trị cao hơn so với nhận dạng hình ảnh.
Có 2 phương pháp phát hiện đối tượng:
Phương pháp tiếp cận dựa trên học máy sử dụng các kỹ thuật thị giác để phân tích các đặc điểm của hình ảnh, như biểu đồ màu và các cạnh, nhằm xác định các nhóm pixel có thể thuộc về một đối tượng cụ thể.
- - năng này sau đó được đưa vào một mô hình hồi quy dự đoán vị trí của đối tượng cũng với nhãn của nó.
Phương pháp tiếp cận dựa trên học sâu sử dụng mạng nơ ron phức hợp (CNN) cho phép phát hiện đối tượng từ đầu đến cuối mà không cần giám sát Điều này có nghĩa là các tính năng không cần phải được xác định và trích xuất riêng biệt, giúp tối ưu hóa quy trình phát hiện đối tượng.
Đối tượng được phát hiện có mối liên hệ chặt chẽ với các kỹ thuật thị giác máy tính khác, như nhận dạng hình ảnh và phân đoạn hình ảnh, giúp chúng ta hiểu và phân tích các cảnh trong hình ảnh hoặc video một cách hiệu quả.
Phát hiện đối tượng khác biệt với nhận dạng hình ảnh và phân đoạn hình ảnh ở chỗ nó không chỉ gán nhãn cho một đối tượng mà còn định vị chính xác vị trí của nó trong hình ảnh hoặc video Khả năng này cho phép chúng ta đếm và theo dõi các đối tượng, cung cấp sự hiểu biết sâu sắc hơn về các phần tử trong cảnh.
Với những điểm khác biệt nổi bật và khả năng phát hiện đối tượng độc đáo, công nghệ này có thể được ứng dụng đa dạng trong nhiều lĩnh vực khác nhau.
Đếm đám đông là một ứng dụng quan trọng của công nghệ phát hiện đối tượng, giúp các doanh nghiệp và thành phố tự quản lý hiệu quả hơn trong các khu vực đông dân cư như công viên giải trí, trung tâm thương mại và quảng trường Tính năng này cho phép theo dõi và bản địa hóa người di chuyển, từ đó tối ưu hóa logistics, quản lý hàng tồn kho, và lập kế hoạch cho các sự kiện Nhờ vào khả năng đo lường các loại giao thông khác nhau, các doanh nghiệp và thành phố có thể cải thiện việc cung cấp tài nguyên và điều phối hoạt động một cách hiệu quả hơn.
Ô tô tự lái phụ thuộc vào các mô hình phát hiện xe thời gian thực để đảm bảo thành công cho các hệ thống tự hành Những hệ thống này cần khả năng xác định, định vị và theo dõi các đối tượng xung quanh để di chuyển an toàn và hiệu quả Mặc dù phân đoạn hình ảnh có thể được áp dụng cho các phương tiện tự hành, việc phát hiện đối tượng vẫn là nhiệm vụ cơ bản, đóng vai trò nền tảng cho sự phát triển của xe tự lái.
Kỹ thuật phát hiện đối tượng hiện đại cho phép theo dõi chính xác nhiều đối tượng trong video, tự động hóa hệ thống giám sát Các mô hình này có khả năng theo dõi nhiều người cùng lúc trong thời gian thực, cung cấp thông tin chi tiết về an ninh, hiệu suất, an toàn lao động và lưu lượng khách hàng tại các cửa hàng bán lẻ và nhà máy.
Phát hiện bất thường là một khái niệm quan trọng, thường được hiểu rõ hơn thông qua các ví dụ cụ thể trong ngành Những trường hợp này giúp minh họa cách nhận diện các hiện tượng không bình thường trong dữ liệu, từ đó cải thiện khả năng phân tích và ra quyết định.
Mô hình phát hiện đối tượng tùy chỉnh trong nông nghiệp giúp xác định và định vị các trường hợp bệnh thực vật, từ đó hỗ trợ nông dân phát hiện mối đe dọa đối với năng suất cây trồng mà mắt thường không thấy được Trong lĩnh vực chăm sóc sức khỏe, công nghệ này cũng rất hữu ích, ví dụ như trong điều trị mụn, khi mô hình phát hiện có thể nhanh chóng xác định vị trí và tình trạng của mụn chỉ trong vài giây Sự kết hợp giữa công nghệ và ứng dụng thực tiễn trong các lĩnh vực này là điều đặc biệt quan trọng và hấp dẫn.
Các trường hợp sử dụng tiềm năng này cho thấy cách mà công nghệ cung cấp kiến thức và thông tin vốn chỉ dành cho các chuyên gia nông nghiệp hoặc bác sĩ Mặc dù không phải là tất cả các ứng dụng, nhưng chúng bao gồm những ứng dụng quan trọng giúp phát hiện các đối tượng đang định hình tương lai của chúng ta.
Cấu trúc cơ bản của phát hiện đối tượng:
Các mô hình phát hiện đối tượng dựa trên học sâu thường bao gồm hai phần chính: bộ mã hóa và bộ giải mã Bộ mã hóa nhận đầu vào là một hình ảnh và thực hiện một chuỗi các khối và lớp để trích xuất các tính năng thống kê cần thiết cho việc định vị và gắn nhãn các đối tượng Kết quả từ bộ mã hóa sau đó được chuyển đến bộ giải mã, nơi mà các hộp và nhãn giới hạn cho từng đối tượng được dự đoán.
Bộ giải mã đơn giản nhất là bộ hồi quy thuần túy, kết nối với đầu ra của bộ mã hóa để dự đoán vị trí và kích thước của từng hộp giới hạn Đầu ra của mô hình cung cấp cặp tọa độ X, Y cho đối tượng và phạm vi của nó trong ảnh Mặc dù đơn giản, mô hình này có giới hạn, vì bạn phải xác định số lượng hộp cần phát hiện trước Nếu hình ảnh chứa hai con chó nhưng mô hình chỉ thiết kế để phát hiện một đối tượng, một con sẽ không được gắn nhãn Tuy nhiên, nếu bạn biết trước số lượng đối tượng cần dự đoán trong mỗi hình ảnh, các mô hình hồi quy thuần túy có thể là lựa chọn tốt.
Khoảng cách Euclidean, Minkowski, Manhattan
Khoảng cách Euclid, hay còn gọi là khoảng cách Pythagoras, là độ dài của đoạn thẳng nối hai điểm trong không gian Euclid Khoảng cách này có thể được tính từ tọa độ Descartes của hai điểm thông qua định lý Pythagoras Tên gọi của nó được đặt theo hai nhà toán học Hy Lạp cổ đại, Euclid và Pythagoras, mặc dù Euclid không sử dụng số để chỉ khoảng cách và mối liên hệ giữa định lý Pythagoras với việc tính khoảng cách chỉ được thiết lập vào thế kỷ 18.
Khoảng cách giữa hai đối tượng hình học, không phải là điểm, được định nghĩa là khoảng cách nhỏ nhất giữa hai điểm thuộc về các đối tượng đó Có nhiều công thức để tính khoảng cách giữa các dạng đối tượng khác nhau, như khoảng cách từ một điểm đến một đường thẳng Toán học nâng cao mở rộng khái niệm khoảng cách sang không gian mêtric trừu tượng và nghiên cứu các loại khoảng cách khác ngoài khoảng cách Euclid Trong thống kê và tối ưu hóa, bình phương khoảng cách Euclid thường được sử dụng thay vì khoảng cách Euclid trực tiếp.
Khoảng cách Euclide là một thước đo khoảng cách tốt nhất có thể được giải thích là độ dài của một đoạn nối hai điểm.
Áp dụng định lý Pythagoras, chúng ta có thể tính khoảng cách Euclid trong mặt phẳng một cách đơn giản thông qua tọa độ Cartesian của các điểm Công thức này giúp xác định khoảng cách giữa hai điểm một cách chính xác và hiệu quả.
Phương pháp Euclid, mặc dù phổ biến trong việc đo khoảng cách, có những nhược điểm đáng lưu ý Khoảng cách Euclide không phải là biến thể theo tỷ lệ, dẫn đến việc tính toán có thể bị sai lệch tùy thuộc vào đơn vị của các đối tượng địa lý Để sử dụng thước đo này hiệu quả, việc chuẩn hóa dữ liệu là cần thiết Hơn nữa, khi kích thước dữ liệu tăng lên, khoảng cách Euclide trở nên kém hữu ích hơn do lời nguyền về chiều, cho thấy không gian chiều cao hơn không hoạt động như mong đợi từ không gian 2 hoặc 3 chiều Để tìm hiểu thêm, hãy xem bài viết này.
Khoảng cách Euclid là một công cụ hiệu quả cho dữ liệu chiều thấp, đặc biệt khi việc đo lường độ lớn của vectơ là quan trọng Các phương pháp như kNN và HDBSCAN thường cho kết quả xuất sắc khi áp dụng khoảng cách Euclid trên loại dữ liệu này.
Mặc dù đã có nhiều biện pháp thay thế nhằm khắc phục những hạn chế của khoảng cách Euclide, nhưng nó vẫn là một trong những thước đo khoảng cách phổ biến nhất Lý do cho sự phổ biến này là vì khoảng cách Euclide rất dễ hiểu, dễ áp dụng và mang lại kết quả ấn tượng trong nhiều tình huống khác nhau.
Khoảng cách Minkowski là một chỉ số phức tạp hơn so với các phương pháp đo lường khác Nó được áp dụng trong không gian vectơ định mức (không gian thực n-chiều), cho phép biểu diễn khoảng cách dưới dạng vectơ có độ dài.
Biện pháp này có ba yêu cầu:
Vectơ Zero, hay Vectơ 0, có độ dài bằng 0, trong khi tất cả các vectơ khác đều có độ dài dương Điều này có nghĩa là khi di chuyển từ một điểm này đến một điểm khác, khoảng cách giữa hai điểm đó luôn luôn là một giá trị dương.
- - số dương Tuy nhiên, nếu chúng ta đi từ một nơi đến chính nó, thì khoảng cách đó bằng không.
Hệ số vô hướng cho thấy khi bội vectơ với một số dương, độ dài của vectơ sẽ thay đổi nhưng hướng vẫn được giữ nguyên Ví dụ, nếu di chuyển một khoảng cách nhất định theo một hướng và thêm một khoảng cách bằng nhau, hướng sẽ không thay đổi Bất đẳng thức tam giác khẳng định rằng khoảng cách ngắn nhất giữa hai điểm là một đường thẳng Một điểm thú vị về thước đo khoảng cách này là việc sử dụng tham số p, cho phép điều chỉnh các chỉ số khoảng cách gần giống với các thước đo khác.
Giá trị chung của p là: p = 1 - Khoảng cách Manhattan p = 2 - Khoảng cách Euclide p = ∞ - Khoảng cách Chebyshev
Minkowski có những nhược điểm giống như các thước đo khoảng cách mà nó đại diện, vì vậy việc nắm vững các thước đo như Manhattan, Euclidean và khoảng cách Chebyshev là rất quan trọng.
Tham số p có thể gây khó khăn trong quá trình làm việc, vì việc tìm kiếm giá trị thích hợp thường không hiệu quả về mặt tính toán, tùy thuộc vào từng trường hợp sử dụng.
Trường hợp sử dụng cho thấy ưu điểm vượt trội của khả năng lặp lại và xác định thước đo khoảng cách phù hợp nhất cho nhu cầu của bạn Điều này mang lại sự linh hoạt cao hơn so với việc chỉ sử dụng một chỉ số khoảng cách duy nhất, điều này có thể mang lại lợi ích lớn nếu bạn đã quen thuộc với p và nhiều thước đo khác.
Khoảng cách Manhattan, hay còn gọi là khoảng cách L1, là một thước đo khoảng cách nổi tiếng được phát triển dựa trên cấu trúc đường phố vuông góc của Manhattan Nó cung cấp một cách tính toán khoảng cách bổ sung bên cạnh khoảng cách Euclide Để tính toán khoảng cách Manhattan trong hệ tọa độ Descartes, với điểm gốc là (0, 0), bạn chỉ cần cộng tổng chiều dài của hình chiếu của đường thẳng nối hai điểm trong hệ trục tọa độ.
Mặc dù khoảng cách Manhattan phù hợp với dữ liệu chiều cao, nhưng nó lại kém trực quan hơn so với khoảng cách Euclid, đặc biệt khi áp dụng cho dữ liệu chiều cao.
Khoảng cách Euclid và khoảng cách Manhattan có sự khác biệt rõ rệt trong tính toán Trong hình 2.11, các đường màu đỏ, xanh lam và vàng thể hiện khoảng cách Manhattan với độ dài bằng nhau là 12, trong khi đường màu xanh lục biểu diễn khoảng cách Euclid với độ dài khoảng 8.48 (6×√2).
Nghiên cứu tổng quan về công nghệ yolo v4
YOLO, viết tắt của You Only Look Once, là một thuật toán nổi bật trong việc phát hiện và theo dõi đối tượng Dự án này áp dụng YOLO để tính toán khoảng cách xã hội và nhận dạng mặt nạ trên khuôn mặt, đồng thời theo dõi khuôn mặt và con người trong khung hình để đếm và lưu giữ bản ghi đối tượng Khoảng cách tối thiểu an toàn để tuân thủ quy định về khoảng cách xã hội là 6 feet, và đây là cơ sở để thực hiện các phép tính Mô hình đã được đào tạo để phát hiện và theo dõi đối tượng, sử dụng các tập dữ liệu tùy chỉnh nhằm nhận biết khẩu trang Để đánh giá hiệu quả của mô hình, mAP (độ chính xác trung bình) được tính toán cho cả hai trường hợp sử dụng, thông qua việc so sánh khung hình giới hạn thực với khung hình được phát hiện, từ đó trả về điểm số chính xác.
- - số Tổng điểm cao hơn số điểm bản đồ sẽ là mô hình tốt hơn trong việc phát hiện các đối tượng.
Yolo hiện đang là một trong những mô hình phát hiện vật thể hàng đầu Mặc dù tất cả đều mang tên Yolo, nhưng các phiên bản mới hơn đã có nhiều cải tiến đáng kể so với các phiên bản trước Từ Yolov1 đến Yolov3 do Joseph Redmon phát triển, phiên bản Yolov4, được sử dụng trong đồ án này, là của Alexey Bochkovskiy.
Yolov4 mang đến nhiều cải tiến về tốc độ so với Yolov3 và được phát triển từ một bản fork của Darknet Kiến trúc của Yolov4 giúp việc phát hiện đối tượng trở nên dễ dàng hơn cho những người không sở hữu tài nguyên tính toán mạnh Người dùng có thể huấn luyện một mạng phát hiện vật với độ chính xác cao chỉ với GPU 1080Ti hoặc 2080Ti Trong tương lai, việc tối ưu hóa các mạng hiện tại để phù hợp với tài nguyên tính toán hạn chế hoặc tăng cường khả năng song song hóa trên các server sẽ là điều cần thiết để đưa các ứng dụng thị giác máy vào thực tiễn.
The comparison results of Yolov4 against current state-of-the-art algorithms highlight its effectiveness, achieving an impressive 43.5% Average Precision (AP) on the MS COCO dataset at a speed of 65 FPS on a Tesla V100 GPU This performance is attributed to the implementation of several innovative techniques, including Weighted-Residual-Connections (WRC), Cross-Stage Partial-connections (CSP), Cross mini-Batch Normalization (CmBN), Self-adversarial training (SAT), Mish activation, Mosaic data augmentation, DropBlock regularization, and CIoU loss.
Với những tính năng ưu việt và lợi thế nổi bật của Yolov4 so với các mạng hiện tại, tôi đã quyết định chọn Yolov4 để thực hiện đề tài nghiên cứu về phát hiện khoảng cách và khẩu trang.
Yolov4 đã chứng tỏ ưu thế vượt trội khi so sánh với các mô hình SOTA hiện tại, chạy nhanh gấp đôi EfficientDet và cải thiện độ chính xác (AP) cũng như tốc độ khung hình (FPS) so với Yolov3, với mức tăng lần lượt là 10% và 12%.
Nền tảng darknet trong phát hiện đối tượng
Darknet là một khung mạng thần kinh mã nguồn mở, nổi bật với tốc độ nhanh và độ chính xác cao Độ chính xác của các mô hình được đào tạo tùy chỉnh phụ thuộc vào nhiều yếu tố như dữ liệu đào tạo, số kỷ nguyên, kích thước lô và các yếu tố khác Khung này không chỉ hỗ trợ phát hiện đối tượng trong thời gian thực mà còn có thể áp dụng cho phân tích hình ảnh.
Quá trình phát hiện đối tượng sử dụng darknet trải qua 4 bước:
- Dán nhãn cho hình ảnh
- Bắt và thiết lập darknet
Việc cài đặt darknet sẽ cần sử dụng một số thư viện sau:
Dữ liệu ảnh đầu vào thu thập càng nhiều thì mô hình được học càng nhiều sẽ cho ra độ chính xác cho mô hình càng lớn.
Sau khi thu thập đủ số lượng ảnh đầu vào, việc gán nhãn thủ công cho từng ảnh là rất quan trọng Mặc dù công việc này có thể đơn giản và nhàm chán, nhưng nó cần được thực hiện một cách chính xác và tỉ mỉ để đảm bảo mô hình đạt kết quả tốt nhất Công cụ phổ biến cho việc gán nhãn là LabelImage.
Sau khi hoàn tất việc gán nhãn cho người đeo và không đeo khẩu trang bằng LabelImage, bước tiếp theo là thiết lập darknet để tiến hành đào tạo Trong quá trình này, cần chú ý đến các tệp tin cfg, train và val, vì chúng đóng vai trò quan trọng trong việc huấn luyện mô hình.
Công dụng của GPU (card đồ họa) trong ứng dụng deep learning
Trong quá trình Deep Learning, giai đoạn training là giai đoạn tốn thời gian và chi phí nhất Yếu tố con người đóng vai trò quan trọng trong lộ trình Deep Learning, khi các nhà khoa học dữ liệu thường phải chờ đợi hàng giờ hoặc thậm chí hàng ngày để hoàn thành quá trình training Thời gian kéo dài của giai đoạn này có thể ảnh hưởng đến năng suất và làm chậm tiến độ đưa các mô hình mới ra thị trường.
Để tối ưu hóa thời gian đào tạo trong Deep Learning, việc sử dụng GPU là rất cần thiết, vì nó cho phép thực hiện các phép toán AI song song Khi đánh giá GPU, cần chú ý đến khả năng kết nối nhiều GPU và các yếu tố như phần mềm hỗ trợ, giấy phép, khả năng xử lý song song dữ liệu, hiệu suất và mức sử dụng bộ nhớ của GPU.
Giai đoạn training là giai đoạn tốn nhiều thời gian và tài nguyên nhất trong quá trình triển khai Deep Learning Thời gian training có thể được rút ngắn cho các mô hình với số lượng tham số nhỏ, nhưng khi số lượng tham số tăng lên, thời gian training cũng sẽ kéo dài theo.
Các đơn vị xử lý đồ họa (GPU) giúp giảm chi phí bằng cách cho phép chạy các mô hình với số lượng lớn thông số một cách nhanh chóng và hiệu quả Nhờ khả năng thực hiện các nhiệm vụ training song song, GPU phân phối công việc qua các cụm bộ xử lý và thực hiện các hoạt động tính toán đồng thời.
GPU được thiết kế đặc biệt để tối ưu hóa các tác vụ cụ thể, giúp thực hiện các phép tính nhanh hơn so với phần cứng thông thường Nhờ vào khả năng xử lý mạnh mẽ, các bộ xử lý này mang lại hiệu suất cao trong việc xử lý dữ liệu phức tạp.
Các tác vụ tương tự được thực hiện nhanh hơn, giúp giải phóng CPU cho các nhiệm vụ khác Điều này giúp loại bỏ các tắc nghẽn do giới hạn tính toán gây ra.
Việc lựa chọn GPU phù hợp cho dự án của bạn rất quan trọng vì nó ảnh hưởng đến ngân sách và hiệu suất Hãy chọn GPU có khả năng hỗ trợ lâu dài và mở rộng quy mô thông qua tích hợp và gộp nhóm Đối với các dự án lớn, ưu tiên sử dụng GPU chuyên sâu hoặc GPU trung tâm dữ liệu để đảm bảo hiệu quả tối đa.
Những yếu tố này sẽ ảnh hưởng đến khả năng mở rộng và dễ sử dụng của GPU bạn chọn.
- Khả năng kết nối các GPU với nhau
Khi lựa chọn GPU, bạn cần xác định các đơn vị có khả năng kết nối với nhau Việc này ảnh hưởng trực tiếp đến khả năng mở rộng triển khai của bạn, cũng như khả năng sử dụng nhiều GPU và áp dụng các chiến lược đào tạo phân tán hiệu quả.
GPU tiêu dùng thường không hỗ trợ kết nối NVLink cho máy chủ và Infiniband/ RoCE để liên kết GPU giữa các máy chủ Đặc biệt, NVIDIA đã loại bỏ khả năng kết nối này trên các GPU dưới RTX 2080.
GPU NVIDIA cung cấp hỗ trợ vượt trội cho thư viện machine learning và tích hợp dễ dàng với các framework phổ biến như PyTorch và TensorFlow Bộ công cụ NVIDIA CUDA bao gồm các thư viện tăng tốc GPU, trình biên dịch C và C++, cùng với các công cụ tối ưu hóa và gỡ lỗi, giúp người dùng khởi đầu nhanh chóng mà không cần phải xây dựng các tích hợp tùy chỉnh.
NVIDIA đã đưa ra hướng dẫn về việc sử dụng một số chip nhất định trong trung tâm dữ liệu, đặc biệt là kể từ bản cập nhật cấp phép năm 2018 Điều này có thể dẫn đến các hạn chế trong việc sử dụng phần mềm CUDA với GPU tiêu dùng trong môi trường trung tâm dữ liệu.
- 3 Yếu tố thuật toán ảnh hưởng đến việc sử dụng GPU
Dựa trên kinh nghiệm của chúng tôi trong việc hỗ trợ các tổ chức tối ưu hóa khối lượng công việc học sâu quy mô lớn, có ba yếu tố chính cần xem xét khi mở rộng thuật toán trên nhiều GPU.
Để tối ưu hóa quá trình xử lý dữ liệu, cần xem xét lượng dữ liệu mà thuật toán của bạn phải xử lý Nếu bộ dữ liệu lớn, hãy đầu tư vào GPU có khả năng thực hiện đào tạo đa GPU hiệu quả Đối với bộ dữ liệu quy mô rất lớn, đảm bảo rằng các máy chủ có khả năng giao tiếp nhanh chóng với nhau và với các thành phần lưu trữ Sử dụng công nghệ như Infiniband hoặc RoCE để hỗ trợ đào tạo phân tán hiệu quả.
Để tối ưu hóa hiệu suất cho các mô hình xử lý hình ảnh y tế hoặc video dài, việc đầu tư vào GPU với bộ nhớ lớn là rất quan trọng Ngược lại, dữ liệu dạng bảng như đầu vào văn bản cho các mô hình NLP thường có kích thước nhỏ hơn và có thể xử lý với ít bộ nhớ GPU hơn.
Khi xem xét hiệu suất của GPU, cần xác định mục đích sử dụng, như gỡ lỗi và phát triển, trong trường hợp này không cần GPU quá mạnh Tuy nhiên, để điều chỉnh các mô hình trong thời gian dài, một GPU mạnh là cần thiết để rút ngắn thời gian đào tạo, tránh phải chờ đợi hàng giờ hoặc hàng ngày cho các mô hình chạy.
Lý thuyết ứng dụng trong đồ án
Thuật toán Yolo là một phương pháp phát hiện và theo dõi đối tượng trong thời gian thực, được phát triển dựa trên công nghệ học sâu Kiến trúc của Yolo giúp tối ưu hóa quá trình nhận diện đối tượng một cách hiệu quả và nhanh chóng.
Kiến trúc mạng thần kinh bao gồm các lớp hình ảnh đầu vào, chịu trách nhiệm nhận và chuyển tiếp dữ liệu đến các lớp tiếp theo, với đầu vào có thể là bất kỳ hình ảnh nào tùy thuộc vào từng trường hợp sử dụng Đặc biệt, kiến trúc DarkNet, một mạng thần kinh mã nguồn mở được phát triển bằng C và CUDA, tích hợp YOLO để phát hiện và theo dõi đối tượng hiệu quả.
Kiến trúc bao gồm lớp phẳng và lớp phức hợp kết nối chặt chẽ, cho phép truyền dữ liệu hiệu quả giữa các nút Thông tin này được chuyển đến lớp đầu ra, nơi tạo ra bốn giá trị dự đoán cho khung giới hạn, được ký hiệu là x, y, w, h Đồng thời, nó cũng cung cấp điểm phát hiện đối tượng cùng với xác suất của lớp dự đoán Yolo là một phần quan trọng trong dòng máy phát này.
- - hiện vật thể One-Shot chính xác và nhanh chóng, ngoài ra còn có một máy phát hiện vật thể Two-Shot.
Kiến trúc YOLO (You Only Look Once) nổi bật trong lĩnh vực phát hiện đối tượng nhờ khả năng phân tích hình ảnh nhanh chóng và chính xác So với các công cụ phát hiện đối tượng phổ biến như R-CNN, Fast R-CNN và Faster R-CNN, YOLO cho phép dự đoán các khung giới hạn liên quan đến nhiều lớp khác nhau, từ động vật như chó đến các vật thể như xe cộ hay vũ khí Tính năng này giúp YOLO vượt trội hơn so với các thuật toán khác trong việc xử lý hình ảnh.
Từ hình dưới, chúng ta có thể tìm ra các thành phần khác nhau, có 4 loại thành phần khác nhau.
Input đầu vào cho phát hiện có thể là hình ảnh hoặc video dựa trên các trường hợp sử dụng được chỉ định trong nghiên cứu.
Backbone của bộ phát hiện đối tượng chứa các mô hình, các mô hình này có thể là ResNet, DenseNet, VGG.
Neck trong phát hiện đối tượng hoạt động như một lớp phụ, đi song song với bạkbone và head.
Head là mạng dựa trên chịu trách nhiệm phát hiện các đối tượng các hộp giới hạn.
Hình 2.17 Các loại phát hiện vật thể khác nhau
2.7.2 Các kiến trúc sử dụng trong nghiên cứu a) Tính toán khoảng cách
Hình dưới đây minh họa kiến trúc tính toán khoảng cách giữa các đối tượng và hiển thị luồng đầu ra được tạo ra bằng cách sử dụng YOLO v4.
Hình 2.18 Kiến trúc darknet b) Phân tích khẩu trang bằng transfer learning
Transfer learning là phương pháp áp dụng tri thức từ một mô hình đã học vào bài toán hiện tại, đặc biệt hiệu quả khi dữ liệu có kích thước nhỏ Việc sử dụng transfer learning không chỉ giúp cải thiện độ chính xác của mô hình mà còn giảm thiểu thời gian huấn luyện.
Các lớp trong mạng nơ-ron tích chập (CNN) thực chất là những công cụ trích xuất đặc trưng, với mỗi lớp đảm nhiệm việc trích xuất các đặc trưng ở các mức độ khác nhau.
Các đặc trưng học được từ mạng CNN bao gồm hai loại chính: đặc trưng bậc thấp và đặc trưng bậc cao Ở các Convolutional Layers đầu tiên, các bộ lọc phát hiện các chi tiết chung như nét ngang, dọc và các cạnh của ảnh, nhưng chưa đủ để nhận diện vật thể Ngược lại, ở các Convolutional Layers cuối cùng, những đặc trưng bậc cao được tổng hợp từ các đặc trưng bậc thấp, giúp cải thiện khả năng phân loại các lớp đối tượng.
Quá trình transfer learning tận dụng các đặc trưng đã được học từ các mô hình đã được huấn luyện trước (pretrained-model) Để hiểu rõ hơn về cách thức chuyển giao này, chúng ta cần tìm hiểu kiến trúc của mô hình áp dụng transfer learning.
Phrase 1: Là một mạng Base Network có tác dụng trích lọc đặc trưng được cấu tạo từ các Convolutional 2D Layers Base Network sẽ được trích xuất từ một phần của pretrained-model sau khi loại bỏ các top fully connected layers Để dễ hình dung mình giả định model pretrained được sử dụng là VGG16, một kiến trúc khá tốt được google phát triển vào năm 2014 Điểm cải tiến của VGG16 so với các kiến trúc CNN trước đó là sử dụng nhiều Convolutional 2D Layers nối tiếp nhau Cụ thể các layers có cấu trúc [[Conv]_n-MaxPool]m thay vì [Conv-MaxPool]m, với m, n là tần suất xuất hiện của các khối mạng được lặp lại bao bọc trong ngoặc vuông.
Kiến trúc VGG16, được sử dụng làm mạng cơ sở trong transfer learning, bao gồm các lớp Fully Connected giúp giảm chiều dữ liệu và tính toán phân phối xác suất ở đầu ra Các lớp này thực chất là mạng MLP (Multiple Layer Perceptron), là một trong những kiến trúc cơ bản nhất của thuật toán mạng nơ-ron Số lượng đơn vị đầu ra tương ứng với số lượng lớp trong bài toán phân loại, và các hệ số của các lớp fully connected sẽ được khởi tạo ngẫu nhiên.
Trong quá trình khởi tạo mô hình, chúng ta sẽ sử dụng lại các trọng số (weight) từ base_network Dữ liệu hình ảnh sau khi được xử lý qua base_network sẽ tạo ra những đặc trưng tốt, đóng vai trò là đầu vào (input X) cho mạng MLP nhằm dự đoán giá trị y Các hệ số W và b sẽ được khởi tạo ngẫu nhiên, trong khi các trọng số của base_network sẽ được tải lại từ mô hình đã được huấn luyện trước (pretrain model).
Hình 2.21 Kiến trúc base network kết hợp với full connected layer c) Thao tác thực hiện huấn luyện
Hình 2.22 Mẫu tập dữ liệu coco
Dưới đây là ví dụ về các bộ dữ liệu đã được sử dụng cho mục đích đào tạo, trong đó tập dữ liệu COCO nổi bật với khả năng phát hiện con người Tập dữ liệu này bao gồm nhiều lớp khác nhau, từ động vật như mèo đến các đối tượng như xe ô tô, cho thấy sự đa dạng và phong phú trong việc nhận diện đối tượng.
Tập dữ liệu tùy chỉnh được sử dụng để phát hiện khẩu trang bao gồm 600 hình ảnh với các chú thích cho từng đối tượng trong khung Việc tạo ra tập dữ liệu này là cần thiết vì tập dữ liệu COCO không bao gồm các lớp dành cho việc phát hiện mặt nạ.
Hình 2.23 Mẫu tập dữ liệu tùy chỉnh
Dựa trên hình ảnh, chú thích đã được tạo cho các lớp khác nhau trong khung, với hai lớp chính là 0 và 2 Các lớp này được sử dụng để phát hiện mặt nạ, trong đó lớp 0 đại diện cho tốt, lớp 1 cho không có và lớp 2 cho xấu.
CƠ SỞ THỰC HIỆN
Yêu cầu thiết kế hệ thống phát hiện khoảng cách và nhận diện khẩu trang
Đề tài “Nghiên cứu, phát triển hệ thống phát hiện khoảng cách và nhận diện khẩu trang” nhằm phát hiện vi phạm khoảng cách xã hội và xác định việc sử dụng khẩu trang để đảm bảo an toàn sức khỏe tại các khu vực đông người.
Thiết kế hệ thống phát hiện khoảng cách và nhận diện khẩu trang đảm bảo các yêu cầu sau đây:
- Hệ thống có thể phát hiện được vi phạm khoảng cách cho phép, nhận diện được đối tượng có đeo khẩu trang hay không.
- Hệ thống gửi thông tin cảnh báo cho người quản lý
- Sử dụng OpenCV và Deep Learning
- Giao diện thân thiện, dễ sử dụng
- Độ chính xác đạt trên 90%
- An toàn và tiết kiệm chi phí
Dựa trên toàn bộ những yêu cầu của bài toán như trên, ta bắt đầu xây dựng lưu đồ thuật toán và hoàn thiện giao diện chương trình.
Hình 3.1 Sơ đồ nguyên lý hệ thống Tổng quan cấu trúc của hệ thống bao gồm 2 phần chính là:
- Camera IP/Webcam: thực hiện nhiệm vụ chính là thu thập hình ảnh làm dữ liệu đầu vào và chạy quan sát hệ thống.
Máy tính xử lý hỗ trợ GPU đóng vai trò quan trọng trong việc chạy giao diện ứng dụng, thực hiện mô hình phát hiện đối tượng, và phân tích dữ liệu sau khi nhận kết quả từ mô hình, đồng thời phát ra thông báo cần thiết.
Sơ đồ nguyên lý chính cho đồ án phát hiện người được xây dựng dựa trên mô hình YOLO, được huấn luyện với dữ liệu ảnh định dạng JPEG và nhãn định dạng TXT Tất cả dữ liệu này được sử dụng để huấn luyện mô hình trên nền tảng Darknet Để tiến hành huấn luyện, cần có file chứa thông tin về cấu trúc mô hình và file pretrain model Sau quá trình huấn luyện, mô hình YOLO được hoàn thiện và sẵn sàng cho việc phát hiện người.
Hình 3.2 Sơ đồ nguyên lý dạy mô hình yolo phát hiện người
Lựa chọn thiết bị
3.3.1 Camera quan sát IP Hikvison DS-2CD1123G0E-I (L) 2.0Megapixel
Nhu cầu sử dụng camera quan sát ngày càng tăng cao, và camera IP trở thành lựa chọn lý tưởng cho việc lắp đặt hệ thống giám sát trong không gian vừa và nhỏ nhờ vào thiết kế gọn nhẹ, dễ lắp đặt và chi phí hợp lý Camera Hikvision DS-2CD1123G0E-I (L) là sản phẩm nổi bật từ thương hiệu camera quen thuộc với người tiêu dùng Việt Nam.
Camera Hikvision DS-2CD1123G0E-I (L) dễ dàng lắp đặt và sử dụng chỉ với một vài thao tác đơn giản Người dùng chỉ cần tìm một vị trí lắp đặt hợp lý và không tốn quá nhiều thời gian để hoàn tất quá trình cài đặt.
Sản phẩm camera IP Hikvision có thể dễ dàng tiếp cận và điều khiển thông qua ứng dụng miễn phí Hik-Connect, tương thích với cả iOS và Android Người dùng có thể theo dõi hình ảnh từ camera mọi lúc, mọi nơi chỉ với một chiếc điện thoại thông minh có kết nối internet.
Hình 3.3 Camera IP Hikvison DS-2CD1123G0E-I (L) 2.0Megapixel
Camera IP Hikvision DS-2CD1123G0E-I (L) có tầm quan sát lên đến 30m, lý tưởng cho không gian cá nhân, trong nhà và văn phòng Với công nghệ hồng ngoại thông minh, camera đảm bảo khả năng quan sát trong điều kiện thiếu sáng và ban đêm, cùng với động cơ quay quét cho tầm nhìn 360° Thuật toán AI tích hợp giúp phát hiện chuyển động của con người trong thời gian thực, gửi thông báo ngay khi có người xâm nhập vào khu vực giám sát Công nghệ EXIR 2.0 cải thiện khả năng hiển thị trong điều kiện ánh sáng yếu, trong khi chức năng giảm nhiễu số 3D DNR mang lại hình ảnh sắc nét và màu sắc tươi sáng ngay cả trong bóng tối.
Khe cắm thẻ nhớ hỗ trợ thẻ nhứ lên đến 128GB lưu lại hình ảnh nhật ký giúp người dùng dễ dàng xem lại khi cần thiết.
Tiêu chuẩn chống nước, chống bụi IP67.
Camera độ phân giải 2 MP, độ nhạy sáng 0,01 Lux @F1.2, ống kính tiêu cự 3.6 mm, tùy chọn 6 mm.
Bảng 3 1 Thông số kĩ thuật Camera IP Hikvison DS-2CD1123G0E-I (L) 2.0Megapixel
Sản phẩm Camera quan sát
Loại camera IP Độ phân giải 2.0 MP Độ nhạy sáng Độ nhạy sáng 0.01Lux @ (F1.2, AGC ON)
Cảm biến hình ảnh phân giải 2.0 Megapixel CMOS ?25fps@720P Ống kính Ống kính tiêu cự 3.6mm (6mm tùy chọn)
IRC, BLC, AGC, DWDR, 3D DNR
IP67 Nguồn điện 12 VDC ± 10%, PoE (802.3af)
Tầm nhìn tối đa Tầm xa hồng ngoại 30m với công nghệ hồng ngoại thông minh
3.3.2 Card 1650Ti Đây là dòng card màn hình được ra mắt trong năm 2020, sử dụng vi kiến trúc Touring có trên các dòng card cao cấp như RTX 2070 và RTX 2080 đình đám Một điểm lưu ý trên dòng card màn hình GTX này là sẽ không hỗ trợ công nghệ Ray Tracing, có mặt trên các dòng RTX giúp cho những dòng card màn hình này có thể xử lý tốt các vùng ánh sáng và đổ bóng.
GTX 1650Ti được trang bị bộ nhớ GDDR6 thế hệ mới, mang lại băng thông 12 Gbps, cao hơn so với 8 Gbps của GTX 1650 sử dụng GDDR5 Sự cải thiện này giúp card đồ họa tải bản đồ trong game nhanh hơn, giảm thiểu độ trễ khi khởi động trò chơi.
Theo như chính Nvidia công bố thì sức mạnh của GTX 1650Ti mạnh hơn GTX
950 gấp 2 lần và mạnh hơn 70% so với GTX 1050 Điều này cho thấy rằng những
Chiếc laptop này được trang bị card màn hình mạnh mẽ, cho phép người dùng chơi mượt mà các tựa game hiện có trên PC ở độ phân giải Full HD, với cài đặt đồ họa từ trung bình đến cao nhất.
Hình 3.4 Card 1650Ti Những công nghệ có trên card 1650Ti:
Công nghệ của Nvidia đã tích hợp nhiều phần mềm giả lập hiệu ứng đồ họa, mang đến cho game những hiệu ứng cháy nổ, khói, bóng và ánh sáng chân thực hơn bao giờ hết.
Công nghệ G-Sync sẽ loại bỏ hoàn toàn hiện tượng "xé ảnh", mang đến hình ảnh mượt mà và dễ chịu cho người xem ngay cả khi di chuyển khung hình liên tục.
Khi chơi game, card đồ họa thường sử dụng hết công suất cơ bản, nhưng đôi khi hiệu năng vẫn không đủ Trong những trường hợp này, công nghệ Nvidia GPU Boost sẽ hoạt động, tự động tăng xung nhịp cơ bản của GPU, từ đó cải thiện tốc độ xử lý và mang đến trải nghiệm chơi game mượt mà hơn.
Công nghệ DirectX 12 từ Microsoft tối ưu hóa phần cứng và phần mềm, mang lại hiệu suất tốt nhất cho các ứng dụng Nó không chỉ hỗ trợ các phần cứng cũ chạy mượt mà trên phần mềm mới mà còn giúp card màn hình xuất hình ảnh 4K một cách mượt mà và ấn tượng.
Lưu đồ thuật toán
Với bài toán phát hiện vi phạm khoảng cách xã hội ta thực hiện đo khoảng cách dựa vào thuật toán phát hiện đối tượng theo các bước sau:
Bước 1: Dữ liệu đầu vào gồm ảnh hoặc video
Bước 2: Ứng dụng thuật toán YOLO để phát hiện đối tượng bằng cách sử dụng file mô hình YOLO Bước 3: Sau khi xác định vị trí có người, hệ thống sẽ trích xuất bounding box của đối tượng cùng với số điểm chính xác cho đối tượng đó.
Nếu ngưỡng điểm cho đối tượng lớn hơn 0,6, hệ thống sẽ tiến hành đo khoảng cách giữa các tâm của bounding box bằng cách sử dụng khoảng cách Euclid Ngược lại, nếu ngưỡng điểm bằng hoặc dưới 0,6, chương trình sẽ kết thúc.
Nếu khoảng cách giữa hai đối tượng vượt quá 2 mét, hệ thống sẽ phát ra cảnh báo vi phạm khoảng cách an toàn Ngược lại, nếu khoảng cách nhỏ hơn ngưỡng cho phép, chương trình sẽ được kết thúc.
Đối với bài toán phát hiện khẩu trang, chúng ta thực hiện các bước huấn luyện và phát hiện tương tự như trong sơ đồ thuật toán đo khoảng cách dựa vào thuật toán phát hiện đối tượng.
Bước 1: Đưa ảnh hoặc video đầu vào
Bước 2: Áp dụng thuật toán YOLO để huấn luyện mô hình phát hiện khẩu trang, trong đó mô hình bao gồm hai lớp: lớp 0 dành cho việc phát hiện người đeo khẩu trang và lớp 1 dành cho người không đeo khẩu trang.
Hệ thống sẽ trích xuất đối tượng và đánh giá độ chính xác cho từng đối tượng Nếu điểm số đạt trên 0.8 và đối tượng thuộc lớp 1, hệ thống sẽ phát ra cảnh báo về việc không đeo khẩu trang; nếu không, chương trình sẽ kết thúc.
Hình 3.6 Sơ đồ thuật toán phát hiện đeo khẩu trang
KẾT QUẢ THỰC NGHIỆM
Xây dựng phần cứng của hệ thống
Hệ thống phát hiện khoảng cách và khẩu trang bao gồm ba thành phần chính: máy tính để xử lý thông tin, màn hình để hiển thị kết quả và webcam Logitech để chụp ảnh và thu thập dữ liệu.
Máy tính mini có thiết kế nhỏ gọn, dễ dàng gắn vào phía sau màn hình, kết hợp với Webcam Logitech đặt ở phía trên, giúp hệ thống trở nên đơn giản, gọn gàng và thuận tiện cho việc di chuyển cũng như lắp đặt.
Quy trình hoạt động bắt đầu khi camera phát hiện đối tượng và chụp ảnh để thu thập dữ liệu Ảnh sau đó được chuyển đến máy tính để xử lý, nơi thực hiện việc phát hiện và nhận dạng khuôn mặt Kết quả kiểm tra sẽ được hiển thị trên màn hình.
Hình 4.1 Sơ đồ khối phần cứng hệ thống
Xây dựng chương trình cho hệ thống phát hiện khoảng cách và nhận diện khẩu trang.44 1 Các bước xây dựng hệ thống trên C#
4.2.1 Các bước xây dựng hệ thống trên C#
Các bước thiết kế giao diện trên C# được thực hiện như sau:
Bước 1: Vào Visual Studio và tạo Project mới như dưới đây.
Hình 4.2 Tạo project mới Bước 2: Chọn Winform (application) để tạo ứng dụng cho chương trình
Hình 4.3 Chọn Windows Form App(.NET Framework) Bước 3: Đặt tên cho ứng dụng và vị trí lưu.
Hình 4.4 Khởi tạo thông tin app Bước 4: Vào giao diện thiết kế trên visual studio
Hình 4.5 Giao diện với 1-ToolBox, 2-Giao diện chính, 3-Thông tin quản lý giao diệnBước 5: Bắt đầu nạp code cho ứng dụng
Hình 4.6 Giao diện viết code cho ứng dụng Bước 6: Hoàn thiện giao diện cho hệ thống
Hình 4.7 Giao diện được thiết kế
4.2.2 Giao diện của hệ thống
Giao diện của hệ thống phát hiện vi phạm khoảng cách xã hội và phát hiện đối tượng không đeo khẩu trang bao gồm các phần chính sau đây:
- Phần hiển thị hình ảnh thu được từ camera và hiện thị kết quả phát hiện đối tượng vi phạm
+ Chế độ chạy: Online, Offline
+ Phát hiện: Khoảng cách, Khẩu trang
- Phần bảng thông tin: Hiển thị thông tin cơ bản cần thiết
- Phần thông tin cá nhân: Tên, mã số sinh viên thực hiện khóa luận, giảng viên hướng dẫn
- Phần kết quả: hiển thị kết quả thu được sau phân tích
Hình 4.8 Giao diện của hệ thống Các bước thao tác trên giao diện hệ thống:
Bước 1: Chọn chế độ chạy của hệ thống
Bước 2: Chọn phát hiện đo khoảng cách hay khẩu trang
Bước 3: Chọn chế độ backend là GPU
Bước 5: Quan sát kết quả phân tích hiển thị trên màn hình giao diện
Kết quả kiểm tra
Kết quả kiểm tra 100 lần cho thấy sự hiện diện của khẩu trang trên các đối tượng được quan sát Bảng 4.1 trình bày chi tiết kết quả kiểm tra, xác định tỷ lệ người đeo khẩu trang trong các lần kiểm tra này.
Phát hiện đúng Phát hiện sai Không phát hiện được Độ chính xác
Kết quả kiểm tra 100 lần phát hiện các đối tượng có vi phạm khoảng cách an toàn hay không
Bảng 4 2 Kết quả kiểm tra phát hiện các đối tượng có vi phạm khoảng cách an toàn không
Phát hiện đúng Phát hiện sai Không phát hiện được Độ chính xác
Góc nhìn hạn chế của camera từ một phía có thể dẫn đến việc không phát hiện đầy đủ các tình huống và gây ra sự nhầm lẫn trong nhiều trường hợp.
Kết quả đạt được
Thiết kế hoàn thiện hệ thống phát hiện vi phạm khoảng cách xã hội và không đeo khẩu trang đảm bảo các yêu cầu đề ra:
Bài viết cung cấp cái nhìn sâu sắc về các ứng dụng và phương pháp phát hiện khoảng cách xã hội cùng với việc không đeo khẩu trang Nó cũng đề cập đến cách chọn thiết bị, tính toán và cài đặt hệ thống để thu được hình ảnh chất lượng cao nhất và xác định khoảng cách một cách chính xác nhất.
- Tạo ra sản phẩm có tính thiết thực và ứng dụng cao
- Hệ thống nhận diện tương đối chính xác các đối tượng không đeo khẩu trang và vi phạm khoảng cách an toàn
- Giao diện của hệ thống trực quan, dễ sử dụng
- Có thêm nhiều kiến thức về xử lý ảnh, OpenCV
- Rèn luyện kỹ năng tìm kiếm thông tin, phân tích, tự nghiên cứu
- Có thêm kỹ năng trình bày, biểu đạt một bài báo cáo nghiên cứu khoa học
Hạn chế của đề tài
- Do hạn chế về góc nhìn của camera nên độ chính xác phát hiện khoảng cách chưa được cao
- Do điều kiện không cho phép nên sản phẩm chỉ dừng lại ở mô hình thực nghiệm.