Ứng dựng xử lý ảnh Nhận diện và nhận dạng linh kiện dùng Python + File Code

12 10 0
Ứng dựng xử lý ảnh Nhận diện và nhận dạng linh kiện dùng Python + File Code

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Tiêu đề: Nhận dạng và Nhận diện Linh kiện Tự động sử dụng Python: Ứng dụng Xử lý Ảnh Mô tả: Ứng dụng Nhận dạng và Nhận diện Linh kiện sử dụng Python là một hệ thống tự động hoạt động trên nền tảng xử lý ảnh và trí tuệ nhân tạo. Với mục tiêu tối ưu hóa quá trình kiểm tra linh kiện trong quy trình sản xuất hoặc kiểm tra hàng hóa, ứng dụng này kết hợp các kỹ thuật tiên tiến để nhận dạng và nhận diện các linh kiện hoặc sản phẩm trên các hình ảnh hoặc video. Chức năng Chính: Nhận dạng Linh kiện: Ứng dụng có khả năng nhận dạng và phân biệt giữa các loại linh kiện trong một bức ảnh hoặc video. Các thuật toán được áp dụng để xác định linh kiện dựa trên đặc điểm hình dạng, màu sắc, hoặc các đặc trưng đặc biệt khác. Nhận diện Đối tượng: Khả năng nhận diện các đối tượng cụ thể trên linh kiện, chẳng hạn như kết cấu, ký hiệu, hoặc các đặc điểm kỹ thuật khác. Điều này giúp phát hiện lỗi hoặc hỏng hóc, cũng như kiểm tra các thông số kỹ thuật quan trọng. Phân loại và Đánh giá: Ứng dụng có thể phân loại linh kiện dựa trên các tiêu chí nhất định và cung cấp đánh giá về chất lượng, hiệu suất, hoặc các yếu tố khác. Điều này giúp tối ưu hóa quy trình kiểm tra và quản lý chất lượng sản phẩm. Tích hợp Hệ thống: Có khả năng tích hợp với các hệ thống tự động hoá và quản lý dữ liệu để đưa ra quyết định tự động hoặc tự động báo động khi phát hiện lỗi hoặc không phù hợp. Tuỳ chỉnh và Mở rộng: Ứng dụng được thiết kế để dễ dàng mở rộng và tuỳ chỉnh cho các yêu cầu cụ thể của từng ứng dụng cụ thể, bằng cách cung cấp các giao diện lập trình ứng dụng (API) hoặc công cụ cấu hình. Công nghệ và Công cụ: Sử dụng ngôn ngữ lập trình Python với các thư viện như OpenCV, TensorFlow, hoặc Keras để xây dựng mô hình nhận diện và nhận dạng. Sử dụng các mô hình học sâu như Convolutional Neural Networks (CNNs) để trích xuất đặc trưng và nhận diện đối tượng. Áp dụng các kỹ thuật xử lý ảnh như lọc thông thấp, biến đổi hình dạng, hoặc phân đoạn để tối ưu hóa việc nhận diện và nhận dạng. Ứng dụng của Nhận dạng và Nhận diện Linh kiện có thể thấy rõ trong nhiều lĩnh vực, bao gồm sản xuất, kiểm tra chất lượng, và tự động hoá quy trình sản xuất, mang lại hiệu suất và đáng tin cậy cao hơn trong quy trình sản xuất và kiểm tra sản phẩm.

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HCM KHOA ĐIỆN-ĐIỆN TỬ  MƠN HỌC: XỬ LÝ ẢNH BÁO CÁO CUỐI KÌ NHẬN DIỆN VÀ ĐỊNH DẠNG LINH KIỆN ĐIỆN TỬ GVHD: TS Nguyễn Văn Thái SVTH: Nhóm 02 Đàm Trung Nguyên 21151292 Nguyễn Thị Kim Thư 21151509 Trần Hoàng Chương 21151268 Mã lớp học: IMPR432446_22_2_01 Tp Hồ Chí Minh, tháng 07 năm 2023 MỤC LỤC Chương 1: TỔNG QUAN 1.1 Giới thiệu 1.2 Đặt vấn đề 1.3 Mục tiêu .2 1.4 Phương pháp nghiên cứu 1.5 Phạm vi đề tài Chương CƠ SỞ LÝ THUYẾT 2.1 Lý thuyết xử lý ảnh 2.2 Các thư viện sử dụng chương trình 2.2.1 Pillow - Xử lý hình ảnh 2.2.2 OpenCV - Xử lý hình ảnh 2.2.3 Numpy - Xử lý mảng đa chiều, ma trận 2.2.4 Tkinter – Cung cấp giao diện hướng đối tượng Chương NỘI DUNG THỰC HIỆN 3.1 Yêu cầu đề tài 3.2 Chương trình Chương NHẬN XÉT VÀ ĐÁNH GIÁ KẾT QUẢ 4.1 Kết .8 4.2 Hạn chế 4.3 Hướng phát triển 4.4 Kết luận 10 TÀI LIỆU THAM KHẢO .10 Chương 1: TỔNG QUAN 1.1 Giới thiệu Từ trước đến người luôn quan sát thu thập thông tin phần lớn thơng qua hình ảnh Từ đó, đời cơng nghệ xử lí ảnh có vai trị vơ quan trọng văn minh nhân loại Nó xử lí cách xác phát cấu trúc nhỏ mà người khơng thể quan sát Đã có nhiều phát minh có giá trị to lớn hầu hết lĩnh vực: y tế, quân sự, khoa học … Điển số ứng dụng nhận dạng khuôn mặt, nhận dạng vật thể, xử lí nhiễu, nhận dạng hành động … Hình 1.1.1 Nhận diện người Hình 1.1.2 Nhận diện dáng người 1.2 Đặt vấn đề Từ ứng dụng bật ta nhận thấy thực tế lĩnh vực tự động hóa cơng nghiệp sản xuất, việc nhận dạng định dạng linh kiện điện tử công việc quan trọng Tuy nhiên việc quan sát mắt thường thời gian tốn nhân cơng Do đó, nhóm chúng em ứng dụng xử lý ảnh vào việc nhận diện đo chiều cao người để quan sát cách tối ưu 1.3 Mục tiêu - Sử dụng ngơn ngữ python để lập trình - Áp dụng kiến thức học từ môn xử lý ảnh - Thiết kế nhận diện người đo chiều cao 1.4 Phương pháp nghiên cứu Vận dụng kiến thức học tham khảo mơ hình internet để tìm phương pháp tối ưu cho đề tài 1.5 Phạm vi đề tài - Ứng dụng lĩnh vực y tế quân - Giúp tăng hiệu suất độ xác Chương CƠ SỞ LÝ THUYẾT 2.1 Lý thuyết xử lý ảnh Xử lý ảnh (XLA) đối tượng nghiên cứu lĩnh vực thị giác máy, trình biến đổi từ ảnh ban đầu sang ảnh với đặc tính tuân theo ý muốn người sử dụng Xử lý ảnh gồm q trình phân tích, phân lớp đối tượng, làm tăng chất lượng, phân đoạn tách cạnh, gán nhãn cho vùng hay q trình biên dịch thơng tin hình ảnh ảnh Mục đích xử lý ảnh gồm: Cải thiện chất lượng hình ảnh: Xử lý ảnh sử dụng để làm mịn, làm sắc nét, tăng cường độ tương phản, giảm nhiễu loại bỏ đối tượng không mong muốn hình ảnh Điều giúp cải thiện khả quan sát, đánh giá phân tích hình ảnh Trích xuất thơng tin: Xử lý hình ảnh giúp rút trích thơng tin hữu ích từ hình ảnh Qua việc áp dụng phương pháp phân đoạn, nhận dạng đối tượng trích xuất đặc trưng, ta nhận biết trích xuất thông tin liên quan đến đối tượng, khu vực quan tâm, đặc điểm hình học thuộc tính khác có hình ảnh Nhận dạng phân loại đối tượng: Việc xử lý hình ảnh đóng vai trò quan trọng việc nhận diện phân loại đối tượng diện ảnh Để thực công việc này, giải thuật học máy mô hình học sâu áp dụng để phân loại đối tượng dựa đặc trưng riêng biệt chúng, bao gồm hình dạng, màu sắc, cấu trúc vị trí Phân tích hiểu hình ảnh: Phân tích hiểu hình ảnh thực thơng qua xử lý ảnh, trình tương tự người Q trình bao gồm nhận dạng khn mặt, phát đối tượng quan trọng, nhận biết hành động tư thế, hiểu nội dung ngữ cảnh hình ảnh Ứng dụng thị giác máy tính thị giác máy: Việc xử lý ảnh đóng vai trò quan trọng lĩnh vực thị giác máy tính thị giác máy, máy tính lập trình để nhìn hiểu hình ảnh tương tự người Ứng dụng công nghệ rộng rãi, từ nhận dạng khuôn mặt, xử lý ảnh y tế, xe tự hành, giám sát an ninh, thị giác robot nhiều lĩnh vực khác 2.2 Các thư viện sử dụng chương trình 2.2.1 Pillow - Xử lý hình ảnh Khi sử dụng Pillow, người dùng mở lưu hình ảnh, mà cịn xử lý đặc điểm hình ảnh, chẳng hạn màu sắc, độ mờ, độ sáng, tối, Pilow hỗ trợ xử lý nhiều tệp hình ảnh khác PDF, WebP, PCX, PNG, JPEG, GIF, PSD, WebP, PCX, GIF, IM, EPS, ICO, BMP, v.v Với Pillow, bạn dễ dàng tạo ảnh thu nhỏ (thumbnails) cho hình ảnh, ảnh thu nhỏ mang hầu hết đặc điểm hình ảnh gần khơng khác ảnh gốc ngoại trừ chúng thu nhỏ lại Pillow hỗ trợ sưu tập lọc hình ảnh – FIND_EDGES, DETAIL, SMOOTH, BLUR, CONTOUR, SHARPEN, SMOOTH_MORE, 2.2.2 OpenCV - Xử lý hình ảnh OpenCV gói mơ-đun hình ảnh lý tưởng cho phép bạn đọc ghi, thay đổi liệu nhiều hình ảnh lúc Tạo thị giác máy tính cho phép bạn xây dựng lại, gián đoạn thông hiểu môi trường 3D từ môi trường 2D tương ứng OpenCV xử dùng nhiều nhận diện vật thể hình ảnh thiết lập trước, chẳng hạn khuôn mặt, động vật, cối, vật thể di chuyển, etc Bạn lưu chụp khoảnh khắc video phân tích thuộc tính khác chuyển động, nền, OpenCV tương thích với nhiều hệ điều hành Windows, OS-X, Open BSD nhiều hệ điều hành khác 2.2.3 Numpy - Xử lý mảng đa chiều, ma trận Numpy thư viện mã nguồn mở cho Python phát triển nhằm cung cấp hiệu suất biên dịch cao cho phép toán số học xử lý số liệu, bao gồm ma trận mảng có khối lượng liệu lớn Ngồi ra, thư viện đem đến sưu tập lớn chức toán học cao cấp, giúp dễ dàng thuận tiện việc thao tác ma trận mảng Numpy cung cấp masked arrays đồng thời với mảng gốc Nó kèm với chức thao tác với hình dạng logic, biến đổi Fourier rời rạc, đại số tuyến tính tổng quát, nhiều Gói mơ-đun cung cấp cơng cụ hữu ích để tích hợp với ngơn ngữ lập trình khác Chẳng hạn C, C++, ngơn ngữ lập trình Fortran Numpy cung cấp chức tương đương với MATLAB Cả hai cho phép người dùng thao tác nhanh 2.2.4 Tkinter – Cung cấp giao diện hướng đối tượng Tkinter thư viện giao diện người dùng (GUI) tích hợp sẵn Python Nó phần thư viện chuẩn Python, khơng cần phải cài đặt thêm Tkinter cung cấp công cụ lớp để tạo điều khiển thành phần giao diện người dùng cửa sổ, nút, nhãn, hộp thoại, nhiều Thư viện hỗ trợ việc xây dựng giao diện đồ họa đơn giản tương tác với người dùng Chương NỘI DUNG THỰC HIỆN 3.1 Yêu cầu đề tài Sử dụng thuật toán imutils để nhận diện định dạng linh kiện điện tử hình ảnh từ video thư viện Tkinter để tạo giao diện người dùng 3.2 Chương trình Khai báo thư viện cần thiết cho chương trình: Tạo cửa sổ giao diện: Hiển thị logo thơng tin chương trình : Tạo nút nhấn RUN: Chạy vịng lặp giao diện: Tạo phận phân loại Haar cascade cho nhận dạng thể người lấy thông tin ảnh từ webcam: Vịng lặp đọc video, phát vật thể tính toán chiều cao: Hiển thị kết khỏi vịng lặp: Giải phóng dịng video đóng cửa sổ hiển thị: Chương NHẬN XÉT VÀ ĐÁNH GIÁ KẾT QUẢ 4.1 Kết 4.1.1 Kết thực nghiệm 4.2 Hạn chế Giao diện đơn giản: Kết hiển thị chiều cao Điều giới hạn khả tương tác cung cấp thông tin cho người dùng Chỉ hỗ trợ webcam: Chỉ hỗ trợ nhận diện người từ video từ webcam Khơng có khả nhập video từ file nguồn video khác Khơng có chế độ lưu trữ kết quả: Chỉ hiển thị kết nhận diện trực tiếp giao diện đồ họa, không cung cấp khả lưu trữ kết xử lý chúng sau trình nhận diện kết thúc Hiệu suất bị hạn chế: Việc xử lý video livestream trực tiếp giao diện đồ họa, hiệu suất ứng dụng bị hạn chế, đặc biệt xử lý video có độ phân giải cao Phụ thuộc vào thư viện bên thứ ba: Sử dụng nhiều thư viện bên thứ ba tkinter, PIL, cv2 imutils Điều u cầu cài đặt cấu hình thêm thư viện trước chạy ứng dụng 4.3 Hướng phát triển Tăng cường chức nhận diện định danh: Mở rộng chức để nhận diện đo đối tượng khác Tích hợp khả ghi lại lưu trữ kết quả: Lưu trữ kết nhận diện Cải thiện độ xác hiệu suất:Thử nghiệm tinh chỉnh mơ hình nhận diện khác, với việc điều chỉnh ngưỡng độ tin cậy để cải thiện độ xác hiệu suất hệ thống Tối ưu hóa triển khai: Tối ưu hóa thuật tốn mã nguồn, triển khai tảng nhúng, sử dụng công nghệ phân phối để xử lý liệu lớn mở rộng ứng dụng 4.4 Kết luận Đoạn code cung cấp giao diện đơn giản để nhận diện người đo chiều cao video từ webcam Đoạn mã có số điểm mạnh đáng kể Đầu tiên, tận dụng thuật tốn imutils để nhận diện đối tượng, đồng thời cung cấp giao diện đồ họa đơn giản thân thiện với người dùng Tuy nhiên, để nâng cao tính linh hoạt ứng dụng, cần mở rộng chức bổ sung lưu trữ kết nhận diện tương tác với hệ thống khác TÀI LIỆU THAM KHẢO https://codelearn.io/sharing/top-30-libraries-packages-4-beginner-p1 10

Ngày đăng: 02/03/2024, 23:45

Tài liệu cùng người dùng

Tài liệu liên quan