Khóa Luận Tốt Nghiệp: Ứng Dụng Xử Lý Ảnh Nhận Dạng Cử Chỉ Bàn Tay Điều Khiển Robot Di Động

Khóa luận tốt nghiệp điện tử ứng dụng xử lý ảnh nhận dạng cử chỉ bàn tay để điều khiển robot di động, hướng đến công nghệ tiên tiến và tự động hóa.

Người đăng

Ẩn danh

Thể loại

Khóa luận tốt nghiệp

2020

90
14
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CÁM ƠN

1. CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI

1.1. Đặt vấn đề

1.2. Mục tiêu

1.3. Phạm vi của luận văn tốt nghiệp

1.4. Tổng quan về các nghiên cứu liên quan

1.4.1. Nhận dạng bàn tay dựa vào màu sắc và hình dáng

1.4.2. Nhận dạng dựa vào ngưỡng trên mỗi kênh màu

1.4.3. Optical Flow

1.4.4. Phương pháp trừ nền

1.4.5. Ý nghĩa khoa học và thực tiễn của đề tài

2. CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1. Giới thiệu về hệ thống xử lý ảnh

2.2. Những vấn đề cơ bản trong hệ thống xử lý ảnh

2.2.1. Điểm ảnh (Picture Element)

2.3. Các phương pháp xử lý ảnh số

2.4. Máy tính nhúng Raspberry Pi

2.5. Ngôn ngữ python và thư viện Opencv

2.6. Board UNO WIFI - WeMos D1

2.7. Module điều khiển động cơ L298

2.8. Động cơ giảm tốc

3. CHƯƠNG 3: CƠ SỞ THỰC HIỆN

3.1. Thiết kế sơ đồ khối hệ thống

3.2. Sơ đồ kết nối hệ thống

3.3. Các bước truy cập và lập trình trên python

3.3.1. Hiển thị lên màng hình laptop qua Wifi

3.3.2. Hiển thị qua cáp ethernet

3.4. Lưu đồ giải thuật nhận dạng cử chỉ bàn tay

3.5. Lưu đồ giải thuật điều khiển robot di động

3.6. Bảng vẽ cơ khí

4. CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM

5. CHƯƠNG 5: KẾT LUẬN VÀ ĐỊNH HƯỚNG ĐỀ TÀI

5.1. Kết quả đạt được

5.2. Hướng phát triển của đề tài

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Xử lý ảnh và nhận dạng cử chỉ bàn tay

Xử lý ảnh là nền tảng cốt lõi trong đề tài này, tập trung vào việc phân tích và chuyển đổi hình ảnh thành dữ liệu có thể xử lý bằng máy tính. Nhận dạng cử chỉ bàn tay là quá trình sử dụng các thuật toán để xác định và phân loại các cử chỉ tay từ hình ảnh thu được. Các phương pháp như trừ nền, phân tích màu sắc, và optical flow được áp dụng để tăng độ chính xác trong việc nhận dạng. Đề tài sử dụng thư viện OpenCV và ngôn ngữ Python để xây dựng giải thuật nhận dạng cử chỉ bàn tay, đảm bảo tính ổn định và hiệu quả trong việc điều khiển robot.

1.1. Phương pháp trừ nền

Phương pháp trừ nền là một kỹ thuật quan trọng trong xử lý ảnh, giúp tách đối tượng (bàn tay) khỏi nền. Thuật toán codebook trong OpenCV được sử dụng để phát hiện bàn tay dựa trên sự khác biệt giữa nền và đối tượng. Các điểm lồi và lõm trên bàn tay được xác định bằng thuật toán convex hullconvexity defect, từ đó xác định số ngón tay được đưa lên. Phương pháp này đảm bảo độ chính xác cao trong việc nhận dạng cử chỉ.

1.2. Nhận dạng dựa trên màu sắc và hình dáng

Nhận dạng bàn tay dựa trên màu sắchình dáng là phương pháp phổ biến. Màu da được sử dụng làm đặc trưng chính để định vị bàn tay. Tuy nhiên, phương pháp này gặp khó khăn khi màu sắc nền tương đồng với màu da. Để khắc phục, các điều kiện ánh sáng và màu sắc nền được kiểm soát chặt chẽ. Thuật toán SASOM (Structure Adaptive Self-Organizing Map) được đề xuất để cải thiện độ ổn định trong việc nhận dạng màu sắc không ổn định.

II. Điều khiển robot di động

Điều khiển robot di động là mục tiêu chính của đề tài, sử dụng cử chỉ bàn tay để điều khiển các chuyển động cơ bản như tiến, lùi, rẽ trái, rẽ phải và dừng. Hệ thống được xây dựng trên nền tảng Raspberry PiArduino Wifi ESP8266, kết hợp với thư viện OpenCV để xử lý hình ảnh. Kết quả thực nghiệm cho thấy hệ thống có khả năng điều khiển robot một cách ổn định và chính xác, mở ra nhiều ứng dụng thực tiễn trong lĩnh vực robot tự động.

2.1. Thiết kế hệ thống điều khiển

Hệ thống điều khiển được thiết kế dựa trên Raspberry PiArduino Wifi ESP8266. Raspberry Pi đóng vai trò là bộ xử lý trung tâm, thực hiện việc nhận dạng cử chỉ bàn tay thông qua camera. Arduino Wifi ESP8266 được sử dụng để điều khiển động cơ và các chuyển động của robot. Các lệnh điều khiển được truyền qua giao thức UDP, đảm bảo tính linh hoạt và tốc độ phản hồi cao.

2.2. Giải thuật điều khiển robot

Giải thuật điều khiển robot được xây dựng dựa trên việc nhận dạng cử chỉ bàn tay. Mỗi cử chỉ tương ứng với một lệnh điều khiển cụ thể: ngón tay thứ nhất (tiến), ngón tay thứ hai (lùi), ngón tay thứ ba (rẽ trái), ngón tay thứ tư (rẽ phải). Khi không có cử chỉ tay, robot sẽ dừng lại. Giải thuật này đảm bảo tính đơn giản và hiệu quả trong việc điều khiển robot di động.

III. Ứng dụng và ý nghĩa thực tiễn

Đề tài Ứng dụng xử lý ảnh nhận dạng cử chỉ bàn tay điều khiển robot di động không chỉ mang tính học thuật mà còn có giá trị thực tiễn cao. Nó mở ra hướng phát triển mới trong lĩnh vực điều khiển robot bằng cử chỉ tay, ứng dụng trong các ngành công nghiệp, y tế và giải trí. Hệ thống có thể được tích hợp vào các thiết bị thông minh, giúp con người tương tác với máy móc một cách tự nhiên và hiệu quả hơn.

3.1. Ứng dụng trong công nghiệp

Trong công nghiệp, hệ thống này có thể được sử dụng để điều khiển các robot thực hiện các nhiệm vụ phức tạp trong môi trường nguy hiểm hoặc khó tiếp cận. Việc điều khiển bằng cử chỉ tay giúp giảm thiểu rủi ro và tăng hiệu quả làm việc.

3.2. Ứng dụng trong y tế

Trong lĩnh vực y tế, hệ thống có thể được ứng dụng để điều khiển các thiết bị y tế tự động, hỗ trợ bác sĩ trong các thủ thuật phức tạp. Điều này giúp tăng độ chính xác và giảm thiểu sai sót trong quá trình điều trị.

12/02/2025

Trích đoạn nội dung tài liệu

Đặt vấn đề Trong những năm gần đây, các ứng dụng về trí tuệ nhân tạo ngày càng phát triển và được đánh giá cao. Một lĩnh vực đang được quan tâm của trí tuệ nhân tạo nhằm tạo ra các ứng dụng thông minh, mang tính tri thức con người đó là nhận dạng. Với sự phát triển mạnh mẽ của công nghệ và nhu cầu của con người ngày càng cao. Một bài toán được đặt ra là: Làm sao có thể điều khiển máy tính, các thiết bị giải trí, robot…bằng những cử chỉ, hành động và lời nói của con người.

Nhận dạng hình ảnh và âm thanh là một giải pháp để giải quyết bài toán này và một phần nhỏ trong lĩnh vực đó là nhận dạng cử chỉ bàn tay. Lý do chủ quan khi chọn đề tài: Những năm gần đây robot là một trong những thế mạnh của Khoa. Và em muốn làm sao để trở nên mạnh hơn nữa về công nghệ chế tạo robot thông minh. Để lại một cái gì đó quý báu cho những sinh viên khóa sau của trường phát triển tốt hơn về các công nghệ cao và các ngành khác liên quan.2 Mục tiêu  Nhận dạng cử chỉ tay xây dựng chương trình điều khiển như sau:  No hand: Không có bàn tay (Robot không di chuyển)  “Up”: Ngón tay thứ nhất trong bàn tay (Robot di chuyển về phía trước)  “Down”: Ngón tay thứ hai trong bàn tay (Robot di chuyển về phía sau)  “Left”: Ngón tay thứ ba trong bàn tay (Robot di chuyển sang trái)  “Right”: Ngón tay thứ tư trong bàn tay (Robot di chuyển sang phải)  Nghiên cứu lý thuyết lập trình python, OpenCV.

 Tìm hiểu lý thuyết xử lý ảnh.  Xây dựng giải thuật nhận dạng cử chỉ bàn tay.3 Phạm vi của luận văn tốt nghiệp Đề tài được nghiên cứu dựa trên nền tảng các kiến thức cơ bản về ngôn ngữ lập trình và vi điều khiển được học ở trường, cùng với việc tự tìm hiểu và học hỏi của các tài liệu đi trước. Hệ thống điều khiển của robot được thực hiện dựa trên máy tính nhúng Raspberry pi 3 kết nối với camera pi và chương trình được viết bằng Python. SVTH: NGUYỄN VĂN ĐẠT Trang 1 LUẬN VĂN TỐT NGHIỆP GVHD: TRẦN HOÀN Do giới hạn về kiến thức của bản thân nên mục tiêu hướng đến đề tài là làm sao để robot di động một cách cơ bản nhất có thể.4 Tổng quan về các nghiên cứu liên quan Bàn tay con người có cấu trúc xương phức tạp bao gồm rất nhiều khớp nối với nhau.

Vì số bậc tự do của bàn tay người là rất lớn nên việc nhận dạng cử chỉ bàn tay trở nên một thách thức lớn. Có nhiều nghiên cứu về nhận dạng cử chỉ với các giải thuật khác nhau như: nhận dạng phép trừ nền, dựa vào màu sắc, hình dáng, các đặc trưng của bàn tay, optical flow, mean shift….1 Nhận dạng bàn tay dựa vào màu sắc và hình dáng Màu da là một đặc trưng quan trọng để định vị và tracking bàn tay người. Tuy nhiên thuật toán dựa trên màu da phải đối mặt với khó khăn đó là phải phân biệt đối tượng có màu tương tự với bàn tay như khuôn mặt và cánh tay người. Để giải quyết vấn đề này, người sử dụng phải mặc áo sơ mi dài và phải hạn chế trong khung nền trong đó màu sắc các đối tượng không được tương đồng với màu da người.

Thuật toán này cũng rất nhạy với các điều kiện chiếu sáng khác nhau. Khi điều kiện ánh sáng không đáp ứng yêu cầu thì bộ nhận dạng thường không nhận ra bàn tay. Wuetal đã đề xuất thuật toán bám theo đối tượng dựa trên màu sắc không ổn định bằng cách học hai phương pháp biểu diễn khác nhau cho sự phân bố màu sắc và gọi thuật toán mới này là structure adaptive self-organizing map (SASOM). Kết quả trong việc định vị bàn tay đã chỉ ra rằng thuật toán có thể kiểm soát tốt một vài điểm khó trong tracking đối tượng có màu sắc không ổn định.2 Nhận dạng dựa vào ngưỡng trên mỗi kênh màu Thuật toán dựa trên đặc trưng bàn tay trích xuất đặc trưng trong một vùng ảnh nhất định như đầu ngón tay hoặc biên bàn tay, và sử dụng một vài phương pháp suy luận để tìm ra hình dạng hoặc kết hợp những đặc trưng cụ thể để tạo nên một cử chỉ bàn tay.

Đối với cách tiếp cận dựa trên đặc trưng bàn tay, việc phân đoạn những ảnh không bị nhiễu là bước cần thiết để phục hồi những đặc trưng của bàn tay. Đây không phải là nhiệm vụ dễ dàng khi gặp phải những ảnh nền phức tạp. SVTH: NGUYỄN VĂN ĐẠT Trang 2 LUẬN VĂN TỐT NGHIỆP GVHD: TRẦN HOÀN 1.3 Optical Flow Optical flow là thuật toán dựa trên phân tích chuyển động của bàn tay. Việc bám theo bàn tay dựa vào quỹ đạo chuyển động và kết hợp với bộ phát hiện màu da.

Bộ lọc theo thời gian dùng thuật toán Viterbi để nhận dạng quỹ đạo của bàn tay và thuật toán kiểm tra phụ được bổ sung vào thuật toán Viterbi để đảm bảo chắc chắn quỹ đạo trích xuất sẽ chứa vị trí bàn tay của cùng một bàn tay đã được nhận dạng trước đó. Những kết quả thực tế cho thấy hệ thống có khả năng bám theo bàn tay ổn định.4 Phương pháp trừ nền Bàn tay được phát hiện bằng phương pháp trừ nền, sử dụng thuật toán “codebook” của thư viện OpenCV. Các điểm đầu mút được phát hiện bằng thuật toán “convex hull 2”, các điểm lõm được phát hiện bằng thuật toán “convexity defect”. Dựa vào số điểm lồi và lõm người ta sẽ biết được số ngón tay được đưa lên.1: Hình minh họa kết quả thuật toán trừ nền 1.5 Ý nghĩa khoa học và thực tiễn của đề tài Đưa ra một bản lý thuyết với các nội dung tìm hiểu, các phép toán hình thái trong xử lý ảnh và nhận dạng cử chỉ bàn tay của con người.

Nhằm mục đích góp một phần vào lĩnh vực ứng dụng của nhận dạng, cụ thể hơn ở đây là có thể ứng dụng vào SVTH: NGUYỄN VĂN ĐẠT Trang 3 LUẬN VĂN TỐT NGHIỆP GVHD: TRẦN HOÀN việc điều khiển di chuyển robot… Ứng với mỗi cử chỉ bàn tay thì robot sẽ xử lý tiến, lùi, qua phải hay qua trái. SVTH: NGUYỄN VĂN ĐẠT Trang 4 LUẬN VĂN TỐT NGHIỆP GVHD: TRẦN HOÀN Chương 2: CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu về hệ thống xử lý ảnh Xử lý ảnh là một lĩnh vực mang tính khoa học và công nghệ. Nó là một ngành khoa học mới mẻ so với nhiều ngành khoa học khác nhưng tốc độ phát triển của nó rất nhanh, kích thích các trung tâm nghiên cứu, ứng dụng, đặc biệt là máy tính chuyên dụng riêng cho nó. Xử lý ảnh được đưa vào giảng dạy ở bậc đại học ở nước ta khoảng chục năm nay.

Nó là môn học liên quan đến nhiều lĩnh vực và cần nhiều kiến thức cơ sở khác. Đầu tiên phải kể đến xử lý tín hiệu số là một môn học hết sức cơ bản cho xử lý tín hiệu chung, các khái niệm về tích chập, các biến đổi Fourier, biến đổi Laplace, các bộ lọc hữu hạn… Thứ hai, các công cụ toán như đại số tuyến tính, xác suất thống kê. Một số kiến thứ cần thiết như trí tuệ nhân tạo, mạng nơron nhân tạo cũng được đề cập trong quá trình phân tích và nhận dạng ảnh. Để dễ tưởng tượng, xét các bước cần thiết trong xử lý ảnh.

Đầu tiên, ảnh tự nhiên từ thế giới ngoài được thu nhận qua các thiết bị thu (như camera, máy chụp ảnh). Trước đây, ảnh thu qua camera là các ảnh tương tự (loại camera ống kiểu CCIR). Gần đây, với sự phát triển của công nghệ, ảnh màu hoặc đen trắng được lấy ra từ camera, sau đó nó được chuyển trực tiếp thành ảnh số tạo thuận lợi cho xử lý tiếp theo (máy ảnh số hiện nay là một thí dụ gần gũi). Mặt khác, ảnh cũng có thể tiếp nhận từ vệ tinh; có thể quét từ ảnh chụp bằng máy quét ảnh.1: Các bước cơ bản trong xử lý ảnh SVTH: NGUYỄN VĂN ĐẠT Trang 5 LUẬN VĂN TỐT NGHIỆP GVHD: TRẦN HOÀN  Phần thu nhận ảnh (Image Acquisition): Ảnh có thể nhận qua camera màu hoặc đen trắng.

Thường ảnh nhận qua camera là ảnh tương tự, cũng có loại camera đã số hoá. Camera thường dùng là loại quét dòng, ảnh tạo ra có dạng hai chiều. Chất lượng một ảnh thu nhận được phụ thuộc vào thiết bị thu, vào môi trường (ánh sáng, phong cảnh…).  Tiền xử lý (Image Processing): Sau bộ thu nhận, ảnh có thể nhiễu độ tương phản thấp nên cần đưa vào bộ tiền xử lý để nâng cao chất lượng.

Chức năng chính của bộ tiền xử lý là lọc nhiễu, nâng độ tương phản để làm ảnh rõ hơn, nét hơn.  Phân đoạn (Segmentation) hay phân vùng ảnh: Phân vùng ảnh là tách một ảnh đầu vào thành các vùng thành phần để biểu diễn phân tích, nhận dạng ảnh. Đây là phần phức tạp khó khăn nhất trong xử lý ảnh và cũng dễ gây lỗi, làm mất độ chính xác của ảnh. Kết quả nhận dạng ảnh phụ thuộc rất nhiều vào công đoạn này.

 Biểu diễn ảnh (Image Representation): Đầu ra ảnh sau phân đoạn chứa các điểm ảnh của vùng ảnh (ảnh đã phân đoạn) cộng với mã liên kết với các vùng lận cận. Việc biến đổi các số liệu này thành dạng thích hợp là cần thiết cho xử lý tiếp theo bằng máy tính. Việc chọn các tính chất để thể hiện ảnh gọi là trích chọn đặc trưng (Feature Selection) gắn với việc tách các đặc tính của ảnh dưới dạng các thông tin định lượng hoặc làm cơ sở để phân biệt lớp đối tượng này với đối tượng khác trong phạm vi ảnh nhận được.  Nhận dạng và nội suy ảnh (Image Recognition and Interpretation): Nhận dạng ảnh là quá trình xác định ảnh.

Quá trình này thường thu được bằng cách so sánh với mẫu chuẩn đã được học (hoặc lưu) từ trước. Nội suy là phán đoán theo ý nghĩa trên cơ sở nhận dạng. Theo lý thuyết về nhận dạng, các mô hình toán học về ảnh được phân theo hai loại nhận dạng ảnh cơ bản:  Nhận dạng theo tham số  Nhận dạng theo cấu trúc SVTH: NGUYỄN VĂN ĐẠT Trang 6 LUẬN VĂN TỐT NGHIỆP GVHD: TRẦN HOÀN Một số đối tượng nhận dạng khá phổ biến hiện nay đang được áp dụng trong khoa học và công nghệ là: nhận dạng ký tự (chữ in, chữ viết tay, chữ ký điện tử), nhận dạng văn bản (text), nhận dạng vân tay, nhận dạng mã vạch, nhận dạng mặt người…  Cơ sở tri thức (Knowledge Base): Như đã nói ở trên, ảnh là một đối tượng khá phức tạp về đường nét, độ sáng tối, dung lượng điểm ảnh, môi trường để thu ảnh phong phú kéo theo nhiễu.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Ứng Dụng Xử Lý Ảnh Nhận Dạng Cử Chỉ Bàn Tay Điều Khiển Robot Di Động - Khóa Luận Tốt Nghiệp Điện Điện Tử là một nghiên cứu chuyên sâu về việc áp dụng công nghệ xử lý ảnh để nhận dạng cử chỉ bàn tay, từ đó điều khiển robot di động một cách chính xác và hiệu quả. Bài viết này không chỉ giới thiệu các thuật toán xử lý ảnh tiên tiến mà còn đề cập đến cách tích hợp chúng vào hệ thống robot, mang lại giải pháp thông minh và tiện ích trong nhiều lĩnh vực như công nghiệp, y tế và đời sống hàng ngày. Độc giả sẽ hiểu rõ hơn về quy trình xử lý ảnh từ đầu vào đến đầu ra, cũng như cách tối ưu hóa hệ thống để đạt hiệu suất cao nhất.

Nếu bạn quan tâm đến các ứng dụng khác của xử lý ảnh, hãy khám phá thêm qua bài viết Đồ án hcmute ứng dụng xử lí ảnh phát hiện người và báo động dùng sim900, nơi trình bày chi tiết về việc phát hiện con người và cảnh báo tự động. Bên cạnh đó, bài viết Đồ án hcmute ứng dụng xử lý ảnh vào mô hình điều khiển đèn giao thông ngã tư sẽ cung cấp thêm góc nhìn về việc áp dụng xử lý ảnh trong hệ thống giao thông thông minh. Cuối cùng, nếu bạn muốn tìm hiểu về robot di động trên nền tảng hiện đại, đừng bỏ qua Luận văn tốt nghiệp kỹ thuật máy tính hiện thực robot di động trên nền tảng ros2. Mỗi bài viết là một cơ hội để mở rộng kiến thức và khám phá sâu hơn về lĩnh vực công nghệ đầy tiềm năng này.