CHƯƠNG 4: THI CÔNG HỆ THỐNG
4.3 THI CÔNG MÔ HÌNH
4.4.1 Lưu đồ giải thuật
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 39 Hình 4.3: Lưu đồ giải thuật chính
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 40 Lưu đồ giải thuật chính gồm: Thu thập ảnh RGB từ camera 3D, tiền xử lý ảnh, nhận dạng màu sắc, tách biên, xác định các thông số 3D của môi trường và giai đoạn quan trọng nhất là nhận dạng và tính kích thước sản phẩm, cuối cùng là xuất kết quả.
Trong đó:
Thu thập ảnh RGB từ camera 3D
Khi có một đối tượng di chuyển qua camera, đối tượng sẽ được chụp lại dưới dạng ảnh RGB với khung và độ phân giải là 720x640, 30fps.
RGB là từ viết tắt tiếng Anh của cơ chế hệ màu cộng, thường được sử dụng để hiển thị màu trên các màn hình TV, monitor máy tính và những thiết bị điện tử khác (chẳng hạn nhƣ camera kỹ thuật số). Với ba màu cơ bản gồm: đỏ, xanh lá và xanh dương.
OpenCV xử lý ảnh và video ở định dạng 8 bit, số nguyên không dấu, định dạng BGR. Nói cách khác, hình ảnh được chụp có thể được coi là 3 ma trận: xanh dương, xanh lá và đỏ (BGR) với các giá trị nguyên nằm trong khoảng từ 0 đến 255. Hình ảnh sau đây cho thấy hình ảnh màu đƣợc biểu diễn bằng 3 ma trận.
Hình 4.4: Ma trận không gian màu BGR Tiền xử lý ảnh
Bao gồm các bước lọc nhiễu, nâng cao chất lượng ảnh để thuận tiện cho quá trình nhận dạng ảnh.
Nhận dạng màu sắc
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 41 Ở bước này, ảnh RGB đầu vào được sau khi được lọc nhiễu ta tiến hành chuyển đổi sang ảnh HSV. Trong không gian màu HSV ta so sánh từng pixel với ngƣỡng trên và ngưỡng dưới của màu đỏ. Mục đích là để bộ xử lý sẽ dễ dàng nhận biết hơn đó là đối tƣợng cần nhận dạng, hạn chế nhiễu.
Không gian màu HSV gồm ba ma trận: HUE, SATURATION and VALUE.
Trong Opencv thì HUE có phạm vi từ 0-179 mang thông tin màu sắc, SATURATION từ 0-255 cho thông tin về độ thuần khiết của màu và VALUE từ 0-255 cho biết độ sang của điểm ảnh.
Thƣ viện OpenCV là một thƣ viện chuyên xử lý hình ảnh vì vậy nó hổ trợ rất nhiều hệ màu nhƣ RGB, ARGB, BRGA, YUV, HSV… và nó cũng có cung cấp cho chúng ta hàm cv.cvtColor (CV_BGR2HSV) để thực hiển chuyển đổi BGR sang HSV.
Tách biên và lấp đầy biên
Là quá trình xác định đường biên sau đó loại bỏ những dữ liệu không cần thiết, sau khi có được đường biên ta lấp đầy biên để có được hình dạng của sản phẩm để đi nhận dạng.
Hình 4.5: Sơ đồ khối chương trình con tách biên và lấp đầy biên
Sau khi có đƣợc ảnh ta tiếp tục xử lý chất lƣợng hình ảnh đầu vào để cho quá trình nhận dạng ảnh đƣợc tốt bao gồm việc chuyển đổi ảnh xám cũng nhƣ giãm nhiễu để có chất lƣợng ảnh tốt hơn.
Giảm nhiễu:Quá trình giảm nhiễu ở đây ta giải nhiễu thêm một lần nữa giúp ảnh chất lượng hơn. Vì phát hiện cạnh, đường biên dễ bị nhiễu trong ảnh, bước đầu tiên là loại bỏ nhiễu trong ảnh bằng bộ lọc Gaussian.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 42 Chuyển đổi ảnh xám là quá trình chuyển đổi hình ảnh dưới dạng RGB (Red- Green-Blue) sang ảnh xám. Điều này có nghĩa là có ba ma trận xám tương ứng cho màu Red, Green, Blue, vông việc là tìm cách tổng hợp ba ma trận này về thành một ma trận duy nhất đó là ma trận xám.
Xác định đường biên: Ảnh được lọc mịn được đem đi xác định biên tạo ra các đường biên có giá trị là là một trong giá trị nhị phân của hình. Ở bước này ta xác đinh đường biên bằng các tìm điểm A ở giữa hai điểm lân cận C và B ta xác định đó có phải giái trị cực đại không tức là giá trị rất lớn so với các điểm lân cận. nếu nó đúng thì ta có thể có thể xác định tạm thời đó là một phần của đường biên.
Tách biên: Là quá trình lọai bỏ các dữ liệu không phải là biên đƣợc xác định từ trước, chỉ dữ lại những đường biên.
Lấp đầy biên: Là quá trình lấp đầy các đường biên kín, không bị gián đoạn hay đứt khúc, để tạo ra đƣợc ảnh nhị phân có giá trị 0 và 1. Mức 1 là giá trị của hình dạng lấp đầy biên, và bên ngoài biên đƣợc coi là giá trị 0.
Nhận dạng và tính kích thước sản phẩm
Ở đây bao gồm giai đoạn gán nhãn cho từng hình dạng rồi phân tích nhận dạng.
Gán nhãn nói một cách tóm tắt là ta đi ghi chú cho từng hình để biết đó là hình gì, chu vi và độ dài các cạnh là bao nhiêu.
Muốn phân loại đƣợc thì ta cần đi nhận dạng các đặc điểm của từng hình. Trong đó có 3 đặc điểm chính để ta nhận dạng: Ta tìm đỉnh của hình dạng số đỉnh hình vuông và chữ nhật có 4 đỉnh, hình tam giác có 3 đỉnh. Trong đó 2 cạnh bên của hình vuông bằng nhau và hình chữ nhật không bằng nhau. Nhƣ vậy, ta đã phân loại đƣợc 3 loại sản phẩm.
Tính kích thước là quá trình tìm ra độ dài thực tế của các cạnh của sản phẩm để tìm ra chu vi thực tế của sản phẩm.
Xuất kết quả là việc hiển thị kết quả từ bước nhận dạng và tính kích thước, độ dài các cạnh.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 43 Hình 4.6: Lưu đồ con nhận dạng sản phẩm