chương 1 còn nêu tính cấp thiết và lý do hình thành đề tài, ý nghĩa khoa học thực tiễn, mục tiêu nghiên cứu, đối tượng, phạm vi giới hạn và tóm tắt cấu trúc của đồ án. Chương 2: Cơ sở lý thuyết. Chương này nêu ra các khái niệm và phương pháp giải quyết vấn đề của đồ án bao gồm lý thuyết và ứng dụng , các giải thuật xử lý ảnh được sử dụng trong bài và áp dụng các giải thuật đó vào mô hình Robot. Chương 3: Lựa chọn các thiết bị và thiết kế phần cứng Chương này liệt kê các thiết bị được sử dụng để xây dựng lên Robot, các thông số kỹ thuật cơ bản, cấu tạo và cách sử dụng, lý do lựa chọn các thiết bị đó.
Các thiết bị đó bao gồm Arduino Pro mini, Động cơ bước, Raspberry Pi 3, Picamera,… Chương 4: Xây dựng và áp dụng thuật toán xử lý ảnh vào Robot Chương này nêu rõ cách thức thực hiện và áp dụng giải thuật xử lý ảnh vào trong Robot, các giải thuật bao gồm xác định đối tượng có trong hình, định vị xác định được tọa độ của đối tượng. Chương 5: Kết quả thực nghiệm Chương này nêu ra các kết quả mà đề tài đã đạt được bằng các số liệu dẫn chứng cụ thể thực tế sau khi nghiên cứu và xây dựng hoàn chỉnh mô hình Robot dọn rác ứng dụng kỹ thuật xử lý ảnh. Chương 6: Kết luận và hướng phát triển Các kết luận và nhận xét về kết quả, ưu điểm và nhược điểm trong cách hoạt động của Robot. Trình bày hướng phát triển của Robot trong tương lai: cải thiện độ chính xác, tốc độ xử lý của Robot, các ý tưởng xây dựng kết hợp hoàn thiện Robot có mục đích gần gũi áp dụng vào đời sống.
5 do an ROBOT DỌN RÁC ỨNG DỤNG XỬ LÝ ẢNH GVHD: PGS.NGUYỄN MINH TÂM CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Xử lý ảnh là gì? Xử lý ảnh là một phân ngành trong xử lý số tín hiệu với tín hiệu xử lý là ảnh. Đây là một phân ngành khoa học mới rất phát triển trong những năm gần đây. [2] Tuy nhiên, việc tiếp nhận thông tin và xử lý chúng qua hình ảnh trên máy tính thì lại là một khái niệm hoàn toàn khác, đó là xử lý ảnh. Xử lý ảnh bao gồm xử lý nâng cao chất lượng ảnh (thường được sử dụng với photoshop hoặc các phần mềm Adobe…), nhận dạng ảnh, nén ảnh và truy vấn ảnh.
Trong công nghệ AI (Artificial Intelligence), xử lý ảnh hỗ trợ rất nhiều cho Robotics và Computer Vision. Ngày nay xử lý ảnh đã được áp dụng rất rộng rãi trong đời sống như: photoshop, nén ảnh, nén video, nhận dạng biển số xe, nhận dạng khuôn mặt, nhận dạng chữ viết, xử lý ảnh thiên văn, ảnh y tế, .1: Ứng dụng xử lý ảnh vào đời sống 6 do an ROBOT DỌN RÁC ỨNG DỤNG XỬ LÝ ẢNH GVHD: PGS.NGUYỄN MINH TÂM 2.2 Các khái niệm cơ bản trong xử lý ảnh [3] 2. Độ phân giải của ảnh - Resolution Khái niệm “resolution” – nghĩa là độ phân giải ảnh dùng để chỉ lượng thông tin được chứa đựng trong một tập tin ảnh kỹ thuật số được hiển thị trên các thiết bị hoặc khi in ra và được đo bằng pixel. Nói một cách tổng quát hơn thì độ phân giải của bức ảnh càng cao sẽ giúp cho việc hiển thị trên website hoặc trang in càng chi tiết và mượt mà hơn.
Chính vì vậy, những vài bức ảnh có độ phân giải rất cao có thể chứa nhiều pixel hơn mức mà mắt thường có thể nhìn thấy được.2: Kích thước màn hình và độ phân giải 2. Pixel Mọi người có thể đã nghe qua các khái niệm như pixel. Megapixel… Vậy pixel là gì? Pixel là đơn vị cấu thành nên ảnh. Tưởng tượng ảnh của chúng ta là một ma trận các ô vuông như hình bàn cờ, mỗi ô vuông tượng trưng cho một pixel, khi 7 do an ROBOT DỌN RÁC ỨNG DỤNG XỬ LÝ ẢNH GVHD: PGS.NGUYỄN MINH TÂM chúng ta điền các mức màu hoặc mức xám vào các pixel, ta sẽ có được hình ảnh.
Ảnh càng có nhiều pixel thì sẽ càng chi tiết và rõ nét. Một pixel được hiểu đơn thuần là một khối màu rất nhỏ và cũng là đơn vị cơ bản nhất để tạo nên một bức ảnh kỹ thuật số đạt chuẩn chất lượng. Theo đó, một bức ảnh kỹ thuật số có thể được tạo ra bằng các cách chụp hoặc bằng một phương pháp đồ hoạ nào đó, được tạo nên từ hàng ngàn hay hàng triệu pixel riêng lẽ.3: Kích thước ảnh và độ phân giải Những bức ảnh chứa càng nhiều pixel thì càng trở nên chi tiết và ấn tượng hơn. Một triệu pixel sẽ tương đương với 1 megapixel.
8 do an ROBOT DỌN RÁC ỨNG DỤNG XỬ LÝ ẢNH GVHD: PGS.NGUYỄN MINH TÂM Hình 2.4: Khái niệm Pixel Ta có khái niệm độ phân giải ảnh, chỉ lượng thông tin (hay nói cách khác là lượng pixel có trong ảnh) chứa trong một bức ảnh, độ phân giải càng cao thì hình ảnh càng tốt. Chẳng hạn mắt người có độ phân giải là 576Megapixel, một con số rất lớn mà ngày nay chưa có loại camera nào có thể tinh xảo hơn. Cùng kích thước vật lý, độ phân giải cao tức là số lượng pixel nhiều và kích thước từng pixel sẽ nhỏ hơn và độ phân giải thấp tức là có ít pixel hơn và chúng lại có kích thước lớn hơn. Độ phân giải cao dù pixel nhỏ hơn nhưng nhiều sẽ cho chất lượng bản in mượt hơn, ảnh in độ phân giải thấp dù pixel có kích thước vật lý lớn hơn thì ảnh sẽ bị vỡ nát.3 Thành phần màu trong ảnh Điều gì tạo nên màu sắc trong bức ảnh.
Ta có thể hiểu một bức ảnh màu gồm 3 lớp: màu lục (Green), màu đỏ (Red), màu lam (Blue). Cũng chính là là 3 thành phần màu cơ bản trong một bức ảnh. Mỗi màu hiển thị trên bức ảnh được cấu thành từ 3 thành phần màu này. RGB là không gian màu rất phổ biến được dùng trong đồ họa máy tính và nhiều thiết bị kĩ thuật số khác.
Ý tưởng chính của không gian màu này là sự kết hợp 9 do an ROBOT DỌN RÁC ỨNG DỤNG XỬ LÝ ẢNH GVHD: PGS.NGUYỄN MINH TÂM của 3 màu sắc cơ bản: màu đỏ (R, Red), xanh lục (G, Green) và xanh lơ (B, Blue) để mô tả tất cả các màu sắc khác. Nếu như một ảnh số được mã hóa bằng 24bit, nghĩa là 8bit cho kênh R, 8bit cho kênh G, 8bit cho kênh B, thì mỗ kênh này màu này sẽ nhận giá trị từ 0-255. Với mỗi giá trị khác nhau của các kênh màu kết hợp với nhau ta sẽ được một màu khác nhau, như vậy ta sẽ có tổng cộng 255x255x255 = 1.66 triệu màu sắc.5: Các thành phần màu RGB 2.4 Mức xám (Gray level) Mức xám là kết quả của sự mã hóa tương ứng một cường độ sáng của mỗi điểm ảnh với một giá trị số. Thường dùng 8 bit để mã hóa 256 mức xám.
10 do an ROBOT DỌN RÁC ỨNG DỤNG XỬ LÝ ẢNH GVHD: PGS.NGUYỄN MINH TÂM Hình 2.6: Các mức xám Để chuyển ảnh màu RGB sang ảnh xám, áp dụng công thức cho mỗi Pixel: Gray=0.0722B [5] Trong đó: Y: ma trận xám cần tìm R: ma trận xám đỏ của ảnh G: ma trận xám lục của ảnh B: ma trận xám lam của ảnh Công thức trên dựa trên sự nhạy cảm của mắt người với 3 màu RGB.3 Thư viện OpenCV 2.1 Giới thiệu OpenCV là gì OpenCV viết tắt của Open Source Computer Vision được xem là một trong những thư viện mã nguồn mở hàng đầu cho việc xử lý ảnh theo thời gian thực. OpenCV chính thức được ra mắt đầu tiên vào năm 1999, OpenCV là thư viện mã nguồn mở miễn phí cho cả học thuật và thương mại. OpenCV hỗ trợ đa nền tảng gồm Windows, Linux, Mac OS, iOS và Android. OpenCV hỗ trợ ngôn ngữ lập trình C/C++, Python và Java.
11 do an ROBOT DỌN RÁC ỨNG DỤNG XỬ LÝ ẢNH GVHD: PGS.NGUYỄN MINH TÂM OpenCV được viết bằng C / C ++ và tích hợp OpenCL. Thư viện có hơn 2500 thuật toán được tối ưu hóa.2 Các Phép xử lý trong OpenCV 2.1 Không gian màu HSV, Chuyển đổi không gian màu HSV và cũng gần tương tự như HSL là không gian màu được dùng nhiều trong việc chỉnh sữa ảnh, phân tích ảnh và một phần của lĩnh vực thị giác máy tính. Hệ không gian này dựa vào 3 thông số sau để mô tả màu sắc H = Hue: màu sắc, S = Saturation: độ đậm đặc, sự bảo hòa, V = value: giá trị cường độ sáng. Không gian màu này thường được biểu diễn dưới dạng hình trụ hoặc hình nón.7: Không gian màu HSV Theo đó, đi theo vòng tròn từ 0 -360 độ là trường biểu diễn màu sắc(Hue).
Trường này bắt đầu từ màu đỏ đầu tiên (red primary) tới màu xanh lục đầu tiên (green primary) nằm trong khoảng 0-120 độ, từ 120 - 240 độ là màu xanh lục tới xanh lơ (green primary - blue primary). Từ 240 - 360 là từ màu đen tới lại màu đỏ Theo như cách biểu diễn không gian màu theo hình trụ như trên, đi từ giá trị độ sáng (V) được biểu diễn bằng cách đi từ dưới đáy hình trụ lên và nằm trong khoảng từ 0 -1. Ở đáy hình trụ V có giá trị là 0, là tối nhất và trên đỉnh hình trụ là độ sáng lớn nhất (V = 1). Đi từ tâm hình trụ ra mặt trụ là giá trị bão hòa của màu sắc 12 do an ROBOT DỌN RÁC ỨNG DỤNG XỬ LÝ ẢNH GVHD: PGS.NGUYỄN MINH TÂM (S).S có giá trị từ 0 - 1.
S = 0 ứng với tâm hình trụ là chỗ mà màu sắc là nhạt nhất. S = 1 ở ngoài mặt trụ, là nơi mà giá trị màu sắc là đậm đặc nhất. Như vậy với mỗi giá trị (H, S, V) sẽ cho ta một màu sắc mà ở đó mô tả đầy đủ thông tin về máu sắc, độ đậm đặc và độ sáng của màu đó. Khi sử dụng không gian màu RGB trong quá trình xử lý hình ảnh, chúng ta sẽ gặp phải vấn đề về ảnh hưởng của ánh sáng tác động từ môi trường vào vì không gian màu RGB xác định màu sắc dựa vào sự kết hợp của các màu cơ bản, do đó sẽ rất khó để có thể xác định được màu sắc trong môi trường có ánh sáng thay đổi liên tục.
Vì việc mô tả được màu sắc đóng vai trò quan trọng trong việc xử lý hình ảnh nên không gian màu HSV thường được ưu tiên sử dụng hơn không gian màu RGB vì không gian màu HSV mô tả các màu sắc gần giống với cách con người cảm nhận về màu sắc.