Hệ thống chấm công dựa trên nhận dạng khuôn mặt sử dụng Micro: bit
Giới thiệu
Bạn có thể đã thấy một vài Hệ thống điểm danh xung quanh, nhưng hệ thống mà chúng tôi sắp thực hiện hôm nay là một trong những hệ thống độc nhất vô nhị. Trong dự án này, chúng tôi sẽ hướng dẫn bạn cách tạo hệ thống điểm danh dựa trên nhận dạng khuôn mặt trong PictoBlox AI bằng cách sử dụng micro: bit.
Chúng tôi sẽ sử dụng một trong các nút trên micro:bit, tức là nút B để đưa hình ảnh mới vào hệ thống của chúng tôi. Để quét một khuôn mặt, chúng ta sẽ sử dụng nút còn lại – nút A. Sau khi hệ thống khớp khuôn mặt được phát hiện với hình ảnh mẫu, nó sẽ hiển thị tên của người đó trên ma trận LED của micro:bit. và thêm dấu thời gian vào một bảng Excel.
Hãy bắt đầu nào.
Điều kiện tiên quyết
Để tạo ra hệ thống điểm danh này, tất cả những gì bạn cần là:
- Một máy tính xách tay hoặc một máy tính
- Máy ảnh/Webcam
- Phiên bản mới nhất của PictoBlox (Tải xuống phiên bản mới nhất từ đây )
- Một kết nối Internet tốt.
- Vi: bit
- cáp USB
Thiết lập dự án
- Mở PictoBlox.
- Để làm việc với các tiện ích mở rộng mới nhất, bạn cần ghi nhớ hai điều.
- Rằng máy tính của bạn được kết nối với Internet
- Bạn cần đăng nhập vào PictoBlox.
- Nhấp vào nút Thêm tiện ích mở rộng và chọn tiện ích mở rộng Nhận diện khuôn mặt và đợi một lát cho đến khi các mô hình được tải.
- Bây giờ để ghi lại dấu thời gian chấm công, chúng ta cần thêm tiện ích mở rộng Data Logger.
- Nhấp lại vào nút Thêm tiện ích mở rộng và chọn Trình ghi dữ liệu từ danh sách. Tiện ích mở rộng này cho phép bạn tạo tệp CSV theo yêu cầu của bạn và lưu trữ dữ liệu trong đó.
Kết nối micro:bit với máy tính
- Kết nối micro: bit của bạn bằng cáp USB với máy tính xách tay. Bây giờ, hãy cài đặt liên kết Scratch từ đây .
- Bấm vào nút kết nối và chọn thiết bị thích hợp.
Thiết lập sân khấu
- Đầu tiên chúng ta hãy dựng sân khấu. Nhấp vào nút Chọn phông nền và chọn phông nền bạn chọn. Ở đây chúng ta sẽ sử dụng phông nền bầu trời xanh cho mục đích tương tự.
- Bây giờ, khi nhấn cờ màu xanh lá cây, phông nền mặc định là phông nền Bầu trời xanh sẽ xuất hiện, do đó, hãy đặt khối mũ khi cờ nhấp vào từ bảng Sự kiện và đặt phông nền chuyển đổi thành khối bên dưới nó. Hãy chắc chắn rằng Blue Sky được chọn từ phông nền.
- Ngoài ra, trước tiên chúng ta cần TẮT máy ảnh, do đó, từ bảng Nhận diện khuôn mặt, hãy sử dụng nút bật video trên sân khấu với khối trong suốt 0% và chọn TẮT từ menu thả xuống.
- Bây giờ, chúng ta sẽ để Tobi đưa ra hướng dẫn cho người dùng.
- Vì vậy, hãy đặt một khối say từ bảng Look.
- Để đánh dấu điểm danh, chúng ta cần người dùng nhấn nút A trên micro:bit. Vì vậy hãy viết “Xin vui lòng nhấn nút A để đánh dấu sự tham dự” vào chỗ trống đã cho.
- Bây giờ, để hướng dẫn người dùng nhấn Nút B để nạp khuôn mặt, hãy nhân đôi khối nói và viết “Vui lòng nhấn Nút B để đánh dấu điểm danh” vào khoảng trống đã cho.
- Bây giờ chúng ta sẽ tạo một file mới để lưu trữ dữ liệu điểm danh. Từ bảng logger, chọn khối tạo, chúng tôi sẽ đặt tên cho nó là “Tham dự 2020”.
Kịch bản cuối cùng trông như thế này:
Tạo hệ thống chấm công Lưu trữ hình ảnh
Trước tiên, chúng tôi sẽ viết tập lệnh để lưu trữ các hình ảnh mẫu về sự tham dự của những người mà chúng tôi cần theo dõi. Vì vậy, trước tiên chúng ta hãy nhận dạng hình ảnh từ nguồn cấp dữ liệu máy ảnh và lưu chúng vào bộ nhớ máy tính. Ngay sau khi chúng ta nhấn Nút B trên micro: bit, dữ liệu sẽ được lưu trữ trên bộ nhớ của máy tính.
- Như vậy, từ bảng micro: bit kéo và thả khi nhấn nút B.
- Để phân tích hình ảnh từ camera, chúng ta cần camera được BẬT. Do đó, từ bảng nhận diện khuôn mặt, hãy đặt video bật lên trên sân khấu với khối trong suốt 0%.
- Tiếp theo, chúng ta sẽ làm cho Tobi nói, “Cho ăn mặt”, do đó đặt một khối nói từ bảng Giao diện.
- Tương tự, chúng ta cũng sẽ hiển thị “Feeding…” trên ma trận LED, do đó, từ bảng micro:bit, đặt khối văn bản hiển thị và viết “Feeding…” vào đó.
- Tiếp theo, chúng ta sẽ lưu trữ hình ảnh của người dùng vào bộ nhớ. Do đó, từ bảng Nhận diện khuôn mặt, hãy thêm lớp 1 làm khối giai đoạn. Chọn 1 từ menu thả xuống đầu tiên và giai đoạn từ menu thứ hai. Để xác định tên người dùng, hãy viết tên người dùng vào khoảng trống đã cho.
- Sau khi khuôn mặt được thêm vào bộ nhớ, chúng ta sẽ làm cho Tobi nói “Khuôn mặt được thêm vào cơ sở dữ liệu” bằng cách sử dụng khối say từ bảng Giao diện.
- Tiếp theo, chúng ta cần TẮT camera và quay lại phông nền mặc định. Do đó, từ bảng nhận diện khuôn mặt, đặt video bật lên trên vùng hiển thị với khối trong suốt 0% và chọn TẮT từ menu thả xuống.
- Cuối cùng, để quay lại phông nền mặc định, đặt chuyển đổi phông nền thành khối từ bảng Giao diện và chọn Blue Sky từ trình đơn thả xuống
Như vậy, đoạn script nhập khuôn mặt vào bộ nhớ cho hệ thống chấm công dựa trên khuôn mặt của chúng ta đã hoàn tất.
Đánh dấu chấm công bằng nút Micro:bit
- Để thực thi chương trình, bất cứ khi nào Nút A được nhấn trên micro: bit, do đó, từ bảng micro:bit, hãy kéo và thả khi nhấn nút A khối mũ.
- Vì chúng tôi muốn xác minh hình ảnh từ nguồn cấp dữ liệu camera, chúng tôi sẽ đảm bảo rằng camera đang bật, do đó thêm khối video bật.
- Thêm độ trễ 3 giây bằng cách sử dụng khối chờ từ bảng điều khiển.
- Do đó, chúng ta cần khớp các khuôn mặt trên vùng hiển thị, kéo và thả phần khớp Khuôn mặt trên khối vùng hiển thị.
- Bây giờ để lưu trữ dữ liệu, chúng tôi sẽ thêm các khối từ tiện ích mở rộng bộ ghi dữ liệu. Để lưu trữ dấu thời gian, hãy đặt tập dữ liệu 1 để chặn và kéo và thả khối dấu thời gian hiện tại vào khoảng trống đã cho. Khối lấy dấu thời gian hiện tại chứa tất cả thông tin liên quan đến ngày và giờ.
- Bây giờ trong dữ liệu thứ hai, chúng ta sẽ lưu trữ lớp khuôn mặt được nhận dạng, chứa tên của người có khuôn mặt được nhận dạng.
- Bây giờ dữ liệu đó đã được tải, nhưng để lưu dữ liệu vĩnh viễn vào tệp, chúng ta cần sử dụng khối lưu dữ liệu.
- Bây giờ, nếu các khuôn mặt khớp nhau, chúng ta cần in tên người dùng trên ma trận LED, do đó, từ bảng micro:bit, đặt khối văn bản hiển thị và thả lớp get của khối được phát hiện khuôn mặt vào khoảng trống đã cho.
- Ngoài ra, chúng tôi muốn Tobi thông báo cho người dùng rằng Sự tham dự đã được đánh dấu và chào hỏi. Do đó, hãy đặt một khối nói từ bảng Giao diện và viết Đã đánh dấu điểm danh vào khoảng trống đã cho.
- Bây giờ để chào người dùng, chúng tôi muốn Tobi nói lời chào mừng cùng với tên của người dùng.
- Do đó, từ bảng Toán tử, đặt một khối nối, viết “Chào mừng” vào khoảng trống trong khối nối đầu tiên, kéo và thả một khối nối khác vào đầu vào thứ hai. Đặt lớp khuôn mặt được phát hiện vào đầu vào đầu tiên của khối nối thứ hai và viết “ !” trong đầu vào thứ hai của khối nối thứ hai.
- Cuối cùng, hãy chuyển phông nền về mặc định. Do đó, hãy đặt phông nền chuyển sang và chọn Blue Sky từ menu thả xuống.
Với điều này, kịch bản của hệ thống chấm công dựa trên nhận dạng khuôn mặt của chúng tôi đã hoàn tất.
Phần kết luận
Dự án này trình bày cách tạo một hệ thống điểm danh dựa trên nhận dạng khuôn mặt đơn giản nhưng mạnh mẽ trong PictoBlox AI bằng cách sử dụng micro:bit. Khi kết thúc dự án này, bạn đã có thể hiểu cách sử dụng tiện ích mở rộng Nhận diện khuôn mặt và tiện ích mở rộng Trình ghi dữ liệu để xây dựng một hệ thống điểm danh được hỗ trợ bởi công nghệ nhận dạng khuôn mặt. Dự án này cũng có thể được mở rộng hơn nữa bằng cách thêm nhiều tính năng hơn theo yêu cầu của bạn. Với điều này, dự án đã hoàn thành.