Kiểm thử hàm xử lý ảnh với pytest: bắt lỗi trước khi lên máy
Dùng fixture, parametrize, pytest.raises và pytest.approx để khóa chặt các hàm cắt ROI, đếm pixel, đánh giá OK/NG, bắt lỗi ngưỡng trước khi lên máy trạm.
Bài học và bài viết về Machine Vision trên HọcFree.
46 bài viếtDùng fixture, parametrize, pytest.raises và pytest.approx để khóa chặt các hàm cắt ROI, đếm pixel, đánh giá OK/NG, bắt lỗi ngưỡng trước khi lên máy trạm.
Lưu thông số từng mã sản phẩm ra JSON với System.Text.Json: required, enum dạng chữ, từ chối trường gõ sai, bẫy số thực ở biên dung sai và ghi file an toàn.
Phát hiện linh kiện thiếu và vật thừa bằng cách so với ảnh mẫu: absdiff, căn chỉnh bằng phaseCorrelate và dải dung sai từ dilate, erode để không báo nhầm ở cạnh.
Làm sạch mặt nạ nhị phân: chọn phần tử cấu trúc và kích thước kernel, xóa nhiễu, lấp lỗ, nối nét đứt, top-hat cho nền sáng không đều.
Tính diện tích, chu vi, tâm, độ tròn, độ đặc, khung xoay đúng trên mọi phiên bản OpenCV, đếm lỗ, phân loại vật và quyết định OK/NG theo dung sai.
Tính sai số phối cảnh của ống kính thường, hiểu ưu nhược điểm ống kính telecentric và quyết định bằng số có cần nó cho bài đo hay không.
Bài tập tổng hợp: tính FOV, độ phân giải, tiêu cự, phơi sáng, DOF, chọn telecentric và chiếu sáng theo lỗi, lập BOM có lý do bằng số.
Tìm cạnh chính xác dưới 1 pixel bằng caliper, fit đường thẳng và đường tròn bằng bình phương tối thiểu, loại ba via và đánh giá độ lặp lại phép đo.
Dùng matchTemplate đúng cách: chọn phương pháp chịu thay đổi ánh sáng, tìm nhiều vật với NMS, tăng tốc bằng kim tự tháp và dời ROI theo vị trí vật.
Định vị vật xoay bằng ORB và RANSAC, so khớp hình dạng bằng Hu moments, và tự cài đặt shape-based matching theo hướng gradient để hiểu vì sao nó bền vững.
Thiết kế bảng SQLite có chỉ mục, truy vấn yield và lỗi NG, lưu ảnh theo ngày, tự dọn ảnh cũ và ghi nền không chặn cycle time.
Sơ đồ khối một trạm Machine Vision, đi dọc trạm kiểm tra nắp chai từ cảm biến tới van loại, và mô phỏng vì sao chiếu sáng quyết định thành công.
Nhận diện nhóm bài toán, kỹ thuật và con số cần hỏi cho từng nhóm, ví dụ OpenCV chạy được và bảng chấm độ khó 0–16 cho một yêu cầu.
So sánh thư viện thương mại và mã nguồn mở, khi nào dùng smart camera, tính chi phí theo số trạm và các bẫy bản quyền.
Biến email khách hàng thành bài toán kỹ thuật: tính FOV và độ phân giải, sổ rủi ro, câu hỏi cần làm rõ, phần cứng sơ bộ, có lời giải mẫu.
Chuỗi cảm biến → trigger → xử lý → loại hàng, tính thời gian xử lý tối đa từ tốc độ dây chuyền và dùng encoder khi băng tải đổi tốc độ.
Định nghĩa lỗi bằng con số đo được, mô phỏng escape và overkill theo ngưỡng, chi phí mỗi ca, vùng xám kiểm lại và số mẫu cần để chứng minh.
Mẫu đặc tả 12 mục, bộ mẫu chuẩn, bài thử độ lặp lại (%GRR, Cg/Cgk) và phát hiện lỗi, phân biệt FAT và SAT.
Viết đặc tả hoàn chỉnh cho trạm kiểm tra nắp chai: tính toán thiết kế, tiêu chí lỗi đo được, giao tiếp PLC, bộ mẫu và kế hoạch FAT/SAT.
Chọn 3 capstone, README có escape/overkill/p99/%GRR, GIF demo, repo sạch, dòng CV có số liệu và câu hỏi phỏng vấn Vision Engineer kèm đáp án mẫu.
GenICam, SFNC và các tính năng chuẩn hay dùng, cách đọc tài liệu SDK và thiết kế phần mềm ít phụ thuộc hãng.
Chọn giao thức theo hãng PLC, cyclic I/O và explicit messaging, GSDML/EDS, bảng dữ liệu trao đổi và thứ tự byte với struct trong Python.
Định vị tâm và góc chi tiết, đổi sang tọa độ robot bằng ma trận 9 điểm, góc tay kẹp, bù băng tải bằng encoder và gửi tọa độ qua TCP.
Mô phỏng nhấp nháy 100 Hz theo thời gian phơi sáng, ngân sách che chắn – kính lọc – đèn chớp bằng số và hàm giám sát vùng chuẩn có cảnh báo, dừng trạm, xu hướng EWMA.
Bảng tiêu chí và hàm chấm điểm, thí nghiệm luật phân ngưỡng so với CNN nhỏ, thiết kế hybrid có cổng kiểm tra và cách ước lượng chi phí dữ liệu.
Hãng Machine Vision lớn mua nhà sản xuất camera độ sâu, đánh dấu ranh giới vision và robot đang mờ dần.
Hiệu chuẩn nội tại và mặt phẳng đo, caliper subpixel, fit đường và tròn trong mm, báo cáo theo dung sai và đánh giá độ lặp lại 10 lần đặt lại.
Ngưỡng cố định, Otsu, adaptive; tìm và lọc contour, đếm đồng xu và đo kích thước theo pixel, kiểm chứng bằng ảnh có đáp án.
Backlight, đồng trục, vòm, dark field góc thấp, đèn thanh, laser: hình học bright/dark field, mô phỏng CNR từng loại lỗi và quy trình thử đèn có chấm điểm.
Định vị vùng chữ bằng template matching, đọc và sửa nhầm theo định dạng, kiểm tra chữ số kiểm tra, xác minh với lệnh sản xuất và xuất báo cáo CSV.
Chọn màu đèn theo màu bù có mô phỏng phổ, bẫy cvtColor với camera màu, kính lọc bandpass chặn ánh sáng môi trường và phân cực chéo xóa chói theo định luật Malus.
Sách chuyên ngành kinh điển, tài liệu miễn phí từ nhà sản xuất, các tiêu chuẩn và thứ tự đọc gợi ý.
Ba loại phân đoạn qua mảng NumPy, vì sao hộp bao sai khi đo vết lỗi, IoU và Dice trên mặt nạ, cách lưu mặt nạ và chọn mô hình cho trạm kiểm tra.
Từ dung sai và lỗi nhỏ nhất ra số pixel, tiêu cự từ FOV và khoảng làm việc, ngàm, kích thước cảm biến và độ phân giải ống kính.
Ảnh xám, ảnh màu BGR, ảnh 16 bit, cắt ROI kiểm tra có/không, mặt nạ tròn và bẫy tràn số uint8: nền tảng trước khi học OpenCV.
Đọc QR bằng OpenCV, DataMatrix bằng pylibdmtx, kiểm tra chuỗi GS1 với lệnh sản xuất, đo giới hạn mờ, nghiêng và tăng tỉ lệ đọc bằng chiến lược bậc thang.
Số f, ánh sáng, DOF và nhiễu xạ bằng con số; lấy nét bằng phương sai Laplacian, Tenengrad; khóa và giám sát ống kính trong sản xuất.
Phân biệt đọc và xác minh ký tự, các loại chữ in khắc trong nhà máy, các cặp ký tự hay nhầm và cách sửa theo định dạng mã lô.
Ma trận nhầm lẫn với NG là lớp dương, precision, recall, F1 bằng tay và scikit-learn, dịch sang escape, overkill, ppm và bẫy accuracy.
Xây giao diện vận hành: vòng lặp camera trên luồng nền, cập nhật giao diện an toàn, giải phóng Bitmap tránh rò rỉ bộ nhớ.
Tìm tâm vật bằng distance transform, tách viên thuốc chạm nhau bằng watershed và kiểm tra kết quả đếm trước khi gửi PLC.
Mô phỏng và đo méo rolling shutter, tính tốc độ dòng và encoder cho line scan, đọc datasheet cảm biến và băng thông giao tiếp.
Trích đặc trưng contour bằng OpenCV, huấn luyện Random Forest, xem đặc trưng quan trọng và chọn ngưỡng theo yêu cầu lọt lỗi của nhà máy.
Đọc histogram để tự chẩn đoán ảnh tối, cháy sáng, tương phản thấp; kéo giãn, gamma, cân bằng toàn cục và CLAHE cho ánh sáng không đều.
Kernel và tích chập, chọn Gaussian hay median cho nhiễu muối tiêu, gradient Sobel, Canny và cách chọn ngưỡng có căn cứ, kèm trackbar.
Lab: duyệt hàng nghìn ảnh bằng pathlib, bắt lỗi gán nhãn, ghi CSV mở được bằng Excel, chia train/val tái lập được và ghi log xoay vòng cho trạm 24/7.