điều Khiển Camera Bám đuổi Mục Tiêu Di động (tt) | Xemtailieu

logo xemtailieu Xemtailieu Tải về Điều khiển camera bám đuổi mục tiêu di động (tt)
  • pdf
  • 26 trang
BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNG NGUYỄN NGỌC THẠCH ĐIỀU KHIỂN CAMERA BÁM ĐUỔI MỤC TIÊU DI ĐỘNG Chuyên ngành: Kỹ thuật Điện tử Mã số: 60.52.02.03 TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT Đà Nẵng - Năm 2015 Công trình được hoàn thành tại ĐẠI HỌC ĐÀ NẴNG Người hướng dẫn khoa học: TS. NGUYỄN THỊ ANH THƯ Phản biện 1: PGS.TS. NGUYỄN VĂN TUẤN Phản biện 2: TS. LƯƠNG HỒNG KHANH Luận văn được bảo vệ tại Hội đồng chấm Luận văn tốt nghiệp Thạc sĩ chuyên ngành kỹ thuật điện tử tại Đại học Đà Nẵng vào ngày 21 tháng 6 năm 2015 * Có thể tìm hiểu luận văn tại: Trung tâm Thông tin - Học liệu, Đại học Đà Nẵng 1 MỞ ĐẦU 1. Lý do chọn đề tài Nghiên cứu điều khiển camera bám đuổi mục tiêu di động là bài toán được các nhà khoa học quan tâm, nhằm phục vụ cho con người ở nhiều lĩnh vực. Ngày nay, do điều kiện khoa học kỹ thuật cùng với đời sống xã hội ngày càng cao, điều đó dẫn tới camera phải linh hoạt hơn. Để làm được điều đó, cần phải có sự kết nối giữa “ thị giác máy tính” và kết cấu cơ khí tối ưu để tạo nên những camera di động hoàn chỉnh. Một trong những hướng nghiên cứu điển hình về camera di động, đó là hệ thống điều khiển camera bám mục tiêu di động sử dụng thị giác máy tính, đây là một trong những bài toán hay và được ứng dụng nhiều trong thực tế. Nhận thấy tầm quan trọng của vấn đề này, tôi quyết định chọn đề tài “Điều khiển camera bám đuổi mục tiêu di động”. 2. Mục đích nghiên cứu Mục tiêu của đề tài là tập trung nghiên cứu, thiết kế và chế tạo thử nghiệm hệ thống điều khiển camera có khả năng quay ngang và quay dọc (còn gọi là hệ thống Pan-Tilt, một hệ thống cơ khí gồm hai động cơ DC, sử dụng vi điều khiển và giao tiếp với máy tính) có khả năng tự động bám đuổi theo một đối tượng được chỉ định từ trước. Hệ thống này sẽ được chạy thử nghiệm và đánh giá một cách khách quan trong các điều kiện khác nhau về ánh sáng và tốc độ di chuyển của vật thể, từ đó xác định các thông số, cấu hình phần cứng cũng như lựa chọn thuật toán phù hợp để tăng khả năng ứng dụng của đề tài vào thực tế. 3. Đối tượng và phạm vi nghiên cứu Đối tượng nghiên cứu: 2 Nghiên cứu hệ thống điều khiển camera bám đuổi mục tiêu di động. Phạm vi nghiên cứu: Đề tài này tập trung thiết kế thi công hệ thống điều khiển camera quay theo phương ngang và dọc; bám đuổi đối tượng di động có đặc trưng về màu sắc và đặc trưng về biên, cạnh; theo chế độ tự động và thủ công. 4. Phương pháp nghiên cứu Kết hợp nghiên cứu lý thuyết, xây dựng phần mềm và thi công phần cứng hệ thống điều khiển camera bám đuổi mục tiêu di động. Thử nghiệm hệ thống trong các điều kiện khác nhau về ánh sáng và tốc độ di chuyển của vật thể. 5. Ý nghĩa khoa học và thực tiễn của đề tài Đề tài tham gia vào việc nghiên cứu và góp phần phát triển lĩnh vực thị giác trong ngành điều khiển camera, chi tiết hơn đó là vấn đề phát hiện, bám đuổi và giám sát đối tượng một cách tự động và thủ công. Đề tài có thể được ứng dụng trong nhiều lĩnh vực đời sống, từ những lĩnh vực cứu hộ, cứu nạn ở những vùng môi trường phức tạp. Đề tài có thể ứng dụng nhiều trong đời sống xã hội. Đề tài cũng có thể ứng dụng trong lĩnh vực giám sát an ninh, giám sát nhân viên trong các tòa nhà, và các khu vực công cộng khác… 6. Bố cục đề tài Ngoài phần mở đầu, kết luận và hướng phát triển đề tài, danh mục tài liệu tham khảo, luận văn gồm các phần chính sau đây: Chương 1. Tổng quan về hệ thống điều khiển camera bám đuổi mục tiêu di động 3 Chương 2. Nghiên cứu và đề xuất phần cứng và phần mềm cho hệ thống điều khiển camera bám đuổi mục tiêu di động Chương 3. Thiết kế và thi công hệ thống điều khiển camera bám đuổi mục tiêu di động Chương 4. Thử nghiệm và đánh giá kết quả thực nghiệm. 4 CHƯƠNG 1 TỔNG QUAN VỀ HỆ THỐNG ĐIỀU KHIỂN CAMERA BÁM ĐUỔI MỤC TIÊU DI ĐỘNG 1.1. GIỚI THIỆU Trong thực tế, đã có rất nhiều tác giả nghiên cứu chế tạo các mô hình điều khiển hệ thống mang camera bám đuổi theo đối tượng dịch chuyển. Chẳng hạn như hệ robot xe – camera, cánh tay máy mang camera, nòng súng mang camera, hệ pan –tilt camera ... có thể xoay nhiều hướng. Trong số các mô hình này, hệ pan-tilt camera (một hệ thống cơ khí gồm hai động cơ DC, sử dụng vi điều khiển và giao tiếp với máy tính ) là một trong những mô hình cơ bản nhất, mục tiêu của mô hình này là điều khiển hai động cơ DC servo hoặc động cơ bước để đảm bảo tầm quan sát và hướng quan sát của camera theo dõi và bám theo đối tượng di chuyển. Hình dưới đây mô tả sơ đồ tổng quát của hệ pan-tilt camera theo dõi và bám đuổi theo đối tượng di chuyển: Hình 1.1: Sơ đồ tổng quát của hệ pan – tilt camera theo dõi và bám đuổi đối tượng 5 1.2. GIỚI THIỆU VỀ LĨNH VỰC ĐIỀU KHIỂN CAMERA BÁM ĐUỔI MỤC TIÊU DI ĐỘNG 1.3. TỔNG QUAN VỀ CÁC CÔNG TRÌNH LIÊN QUAN Tác giả Bùi Trọng Tuyên (Viện Vật Lý Việt Nam) đã sử dụng mạng nơ ron để điều khiển hệ camera- robot bám theo mục tiêu di động [1], nguyên lý chung của phương pháp này dựa trên tập dữ liệu đặc trưng ảnh của đối tượng nhận được từ camera như tọa độ các điểm đặc trưng trên mặt phẳng ảnh [u, v], khoảng cách giữa các điểm và tham số của các đoạn thẳng trên ảnh , , trọng tâm và diện tích S ... Tập hợp các vectơ đặc trưng ảnh tạo thành không gian thông số đặc trưng ảnh ký hiệu u1v1,... ...S1S2 1 1 Tác giả Ngô Mạnh Tiến (Viện Vật lý, Viện KH&CN Việt Nam) đã sử dụng thuật toán bám theo một tập hợp các điểm đặc trưng ảnh của Lucas, Kanade và Tommasini KLT, đây là phương pháp bám đuổi sử dụng rất có hiệu quả đối với ảnh thu được là ảnh đen trắng, ảnh của camera hồng ngoại nhìn đêm. Ngoài ra, một số tác giả khác đã sử dụng đặc trưng Haar-Like và thuật toán tăng tốc Adaboost để nhận dạng và bám theo gương mặt người trên nền tảng SharpCV, sử dụng luật điều khiển mờ trên cơ sở tọa độ gương mặt bám được trên các frame ảnh hồi tiếp về để điều khiển đế pan-tilt mang camera quay theo hướng dịch chuyển của gương mặt. Tuy nhiên cũng chỉ dừng lại ở việc nhận dạng gương mặt, tốc độ đáp ứng của camera còn chậm. 6 CHƯƠNG 2 NGHIÊN CỨU VÀ ĐỀ XUẤT PHẦN CỨNG VÀ PHẦN MỀM CHO HỆ THỐNG ĐIỀU KHIỂN CAMERA BÁM ĐUỔI MỤC TIÊU DI ĐỘNG 2.1. GIỚI THIỆU CHƯƠNG 2.2. CÁC HƯỚNG TIẾP CẬN TRONG VIỆC ĐIỀU KHIỂN HỆ PAN-TILT BÁM THEO ĐỐI TƯỢNG DỊCH CHUYỂN 2.2.1. Hướng tiếp cận phần cứng phục vụ xử lý ảnh và điều khiển hệ thống bám đuổi đối tượng di động a. Các giải pháp trong thực tế Máy tính PC, laptop Đây là một trong những phương pháp đơn giản nhất. Có thể tận dụng các mainboard máy tính hay thậm chí các máy tính xách tay với chức năng là một đơn vị xử lý ảnh, và đưa ra quyết định. Main công nghiệp, máy tính nhúng PC 104 Ta có thể sử dụng mainboad PC104 với các chức năng như một máy tính thông thường. Single Board Computer(SBC) sử dụng Single on Chip (SoC) SBC (Single board computer) có sử dụng các SoC là bước tiến lớn trong việc xây dựng thiết bị với khả năng tính toán và xử lý như một máy tính thông thường. FPGA 7 Đây là giải pháp về phần cứng mà hay được sử dụng hiện nay. Tận dụng đặc tính của FPGA là linh hoạt và tốc độ xử lý nhanh (cứng hoá các giải thuật). Ta có thể kết nối FPGA với các CCD sensor để điều khiển và nhận các frame hình thông qua bus dữ liệu tốc độ cao. DSP (Digital signal processing) DSP ngày nay đã được tích hợp nhiều thành phần khác nhau, làm tăng khả năng xử lý linh hoạt và tốc độ xử lý. b. Giải pháp phần cứng được sử dụng trong đề tài Phần cứng được sử dụng trong đề tài bao gồm một máy tính laptop sử dụng hệ điều hành Windows, vi xử lý Duo Core 2.4GHz, Ram 4G, 01 mini Webcam của hãng Microsoft có tốc độ đọc ảnh khoảng 30 frame/s, 02 vi điều khiển AVR Atmega8L điều khiển 2 động cơ theo hai phương. 2.2.2. Hướng tiếp cận phần mềm phục vụ xử lý ảnh và điều khiển hệ thống bám đuổi đối tượng di động Để giải quyết bài toán xử lý ảnh – thị giác máy tính nói chung và bài toán điều khiển bám đối tượng nói riêng, trong thực tế ta hay dùng các thư viện mã nguồn mở trên cơ sở các thuật toán được tích hợp sẵn trong các hàm cơ sở. Đề tài sử dụng thư viện OpenCV phiên bản 2.3.1, được cài đặt tích hợp vào Visual Studio 2010, và lập trình MFC C++. Hướng tiếp cận xây dựng mô hình hệ pan-tilt mang camera Đề tài sử dụng hai động cơ DC 12-24V có gắn hộp số và các encoder. 8 Các giải thuật nhận dạng, tracking đối tượng di chuyển đặc trưng được sử dụng trong thực tế Các đối tượng được phát hiện nhờ những thông tin trong một frame ảnh. Bảng 2.1 - Bảng phân loại các thuật toán nhận dạng đối tượng Trên nền tảng kế thừa các nghiên cứu trước đây, trong đó có một số đề tài Điều khiển camera bám đuổi theo mục tiêu di động mới chỉ dừng lại ở mức nhận dạng và điều khiển bám theo sự dịch chuyển của gương mặt người. Thì trong đề tài này, mục tiêu là điều khiển camera bám theo đối tượng có hình dạng biên đặc trưng như dạng hình tròn, hình cầu, hình vuông; đảm bảo tốc độ bám tốt hơn. Tốc độ di chuyển của vật thể mà đề tài đặt ra tối thiểu là 10m/s, khoảng cách tối đa là 5m tính từ trục camera. Hệ thống xử lý ảnh và điều khiển bám hoạt động trên cơ sở phản hồi ảnh từ camera sẽ điều khiển hệ pan –tilt camera bám theo đối tượng thật. Xây dựng bộ điều khiển PID trên cơ sở phản hồi tốc độ và vị trí của hai động cơ pan và tilt (thông qua tín hiệu từ 2 encoder) và giá trị tọa độ, vận tốc theo các 9 phương mong muốn được xử lý trên máy tính thông qua các thuật toán xử lý ảnh. Hệ thống được lập trình bằng C++ dựa trên thư viện mã nguồn mở OpenCV của Intel, có khả năng giao tiếp với board điều khiển AVR để điều khiển 2 động cơ DC trên đế pan-tilt. 10 CHƯƠNG 3 THIẾT KẾ VÀ THI CÔNG HỆ THỐNG CAMERA BÁM ĐUỔI MỤC TIÊU DI ĐỘNG 3.1. GIỚI THIỆU CHƯƠNG 3.2. XÂY DỰNG PHƯƠNG TRÌNH TRẠNG THÁI CỦA HỆ THỐNG MANG CAMERA BÁM ĐUỔI MỤC TIÊU DI ĐỘNG (HỆ THỐNG PAN-TILT MANG CAMERA) 3.2.1. Giới thiệu Giả sử camera đọc được mỗi frame ảnh về đối tượng di chuyển với tọa độ như hình sau: Hình 3.1: Tọa độ đối tượng trên frame ảnh thu được Mục tiêu của hệ thống là nhận dạng được đối tượng, tính toán xác định tọa độ trên mặt phẳng ảnh của đối tượng, độ lệch vị trí theo các phương, vận tốc di chuyển của đối tượng. Điều khiển cơ cấu pantilt sao cho tọa độ trọng tâm của đối tượng trên mặt phẳng ảnh trùng với tọa độ tâm của bức ảnh. Cơ cấu pan-tilt được mô hình như sau: 11 Hình 3.2: Mô hình hóa hệ pan tilt 3.2.2. Mô hình toán học của hệ pan –tilt camera * Mô hình xấp xỉ hình học: OXYZ là hệ toạ độ thực của hệ camera pan-tilt và OXcYcZc là hệ toạ độ gắn với camera. P(X, Y, Z) là toạ độ của đối tượng trên hệ toạ độ thực, toạ độ của P chiếu lên mặt phẳng ảnh là (xp, yp). * Mô hình động học của hệ pan-tilt camera Nhằm mục đích tìm mô tả quan hệ giữa xp và yp đối với và θ, đầu tiên ta tìm ma trận chuyển đổi đồng nhất R O của hai phép quay Oc camera xung quanh O một góc và θ. 3.3. XÂY DỰNG THUẬT TOÁN NHẬN DẠNG, BÁM ĐUỔI THEO ĐỐI TƯỢNG VÀ THUẬT TOÁN ĐIỀU KHIỂN HỆ THỐNG Thuật toán bao gồm bước tiền xử lý ảnh: thu nhận ảnh từ camera, tách nền, lọc nhiễu, dò cạnh biên, thuật toán bám đối tượng camshift kết hợp với bộ lọc nhiễu dự báo Kalman. 12 Camera Thu nhận ảnh Tách nền Lọc nhiễu Tính tọa độ tâm vật thể, vận tốc di chuyển Dò cạnh biên Camshift+Kalman Hình 3.3: Lưu đồ thuật toán nhận dạng và bám theo đối tượng dịch chuyển 3.3.1. Giải thuật tách nền Có nhiều phương pháp tách nền trong xử lý ảnh màu như phân ngưỡng Thresholding, phân ngưỡng Otsu, phân ngưỡng cục bộ, mean filter, Running Gaussian average, Background mixture model. Để tài sử dụng phương pháp phân ngưỡng Thresholding để tách nền ra khỏi ảnh. Phương pháp này dựa vào lược đồ Histogram của ảnh. 3.3.2. Phương pháp lọc nhiễu Có nhiều phương pháp lọc nhiễu để nâng cao chất lượng xử lý nhận dạng vật thể, nhất là vật thể chuyển động trong miển tần số, đề tài sử dụng bộ lọc Gaussian Blur. Gaussian Blur là cách làm mờ một ảnh bằng hàm Gaussian. Một cách trực quan, đây được xem như là phương pháp làm mờ mịn cũng 13 giống như hiệu ứng hình ảnh được đặt dưới một lớp màn trong suốt bị mờ. Nó không giống với trường hợp hình ảnh bị mờ do hậu quả của ống kính bị mất tiêu điểm (out of focus) hay do bóng của đối tượng dưới ánh sáng thường. 3.3.3. Phương pháp tracking đối tượng, dự báo hướng di chuyển và vận tốc đối tượng sử dụng thuật toán Camshift kết hợp bộ lọc Kalman Trong thuật toán bám đối tượng trong ảnh Camshift, đối tượng được bám tốt khi nền ảnh không ảnh hưởng đến đối tượng, như lẫn màu hay che khuất đối tượng. Khi đối tượng bám bị che khuất hay lẫn màu với nền ảnh, sẽ gây ra hiện tượng mất bám. Để khắc phục nhược điểm này và nâng cao chất lượng bám, bộ lọc Kalman được sử dụng. Sau đây là sơ đồ kết hợp bộ lọc Kalman và Camshift được sử dụng trong đề tài: Hình 3.4: Sơ đồ kết hợp giữa bộ lọc Kalman và Camshift 14 a. Xác định tọa độ tâm đối tượng Để điều khiển camera luôn bám theo đối tượng dịch chuyển thì việc xác định tọa độ trọng tâm của đối tượng rất quan trọng. Phương pháp xác định dựa vào tọa độ của cửa sổ bám đối tượng dựa vào thuật toán Camshift và Kalman track_box. Cụ thể là tôi xác định tâm của cửa sổ bám này, tôi gán tọa độ tâm đối tượng chính là tọa độ tâm cửa sổ bám. b. Luật điều khiển mờ đưa đối tượng về tọa độ tâm bức ảnh Sau mỗi frame ảnh đọc về từ camera, ta thu được tọa độ tâm vật thể (X_Length, Y_Length) được thể hiện trong bức ảnh. So sánh với tọa độ tâm bức ảnh (X_center, Y_Center) ta có sai số ErrX và ErrY. Trên cơ sở các tín hiệu sai số này, ta xây dựng luật điều khiển mờ PD để xuất ra các lệnh điều khiển phù hợp đem lại hiệu quả tốt nhất có thể có. c. Thiết kế bộ điều khiển PID vị trí điều khiển hai động cơ Do tác động qua lại giữa hai khâu pan và tilt nên bộ điều khiển được thiết kế theo hai nhánh, trong đó khâu nội suy theo đường thẳng được sử dụng trong quá trình xử lý tính toán tọa độ tâm vật thể để đảm bảo điều khiển được hệ pan-tilt bám theo mục tiêu dịch chuyển theo đường ngắn nhất. Bộ điều khiển cho hai động cơ là bộ điều khiển PID giúp hệ thống có đáp ứng nhanh, giảm được độ vọt lố cần thiết khi điều khiển bệ xoay camera. 15 Bắt đầu Thiết lập vị trí ban đầu ∆X*=0, ∆Y*=0 Nhận ∆X(hoặc ∆Y) từ máy tính Tính ex = ∆X - ∆X* và ey = ∆Y - ∆Y* Đọc ∆X*, ∆Y* hiện tại Chọn thông số P, I, D Xuất xung PWM ở chân PB1, EN_PWM Dừng chương trình Không Có Kết thúc Hình 3.5: Lưu đồ giải thuật điều khiển trên vi xử lý 16 3.4. THI CÔNG MÔ HÌNH VÀ XÂY DỰNG PHẦN MỀM ĐIỀU KHIỂN 3.4.1. Thi công mô hình Mô hình hệ camera bám mục tiêu được thiết kế bao gồm đế xoay camera pan-tilt có gắn hai động cơ DC loại 12-24V có gắn hộp số có tỷ số truyền 20:1, công suất 60W có gắn 2 encoder loại 2 kênh A,B (100xung/vòng). Sau đây là mô hình được vẽ thiết kế Mạch điều khiển pan-tilt dùng AVR RS485 U S B Xử lý ảnh dùng OpenCV + C++ USB Hình 3.6: Mô hình hệ camera được thiết kế trên máy a. Thông số kỹ thuật của các thành phần trong mô hình Laptop HP 6710b: cấu hình Duo Core 2.4GHz, Ram 4GHz, không có card đồ họa 17 Webcam mini LifeCam Cinema H5D-00013 của hãng Microsoft có các thông số kỹ thuật như sau: Khả năng quay video chất lượng HD 720p. Kích thước (55,9 x 46 x 40) mm Tự động Focus. Tự động điều chỉnh độ sáng và màu sắc Giao tiếp chuẩn USB Tốc độ đọc frame ảnh: 30 frame/s Cấu hình đòi hỏi: laptop Intel Dual Core 3.0 GHz, RAM 2GHz Động cơ bên dưới (quay ngang): động cơ DC Tốc độ quay tối đa 2000v/p Có gắn encoder loại A,B độ phân giải 100p/v Hộp số có tỷ số truyền 20:1 Nguồn cung cấp 12-24V DC Động cơ bên trên (quay dọc): động cơ DC Tốc độ quay tối đa 3000v/p Có gắn encoder loại A,B độ phân giải 100p/v Hộp số có tỷ số truyền 20:1 Nguồn cung cấp 12-24V DC Bo điều khiển hai động cơ sử dụng 2 vi xử lý atmega8 có tích hợp thêm 2 bo driver. b. Một số mạch nguyên lý được sử dụng để thiết kế bo điều khiển - Mạch vi xử lý atmega8 để đọc tín hiệu từ encoder và tín hiệu điều khiển từ máy tính để xuất ra xung điều rộng điều khiển 2 động cơ. 18 - Mạch driver. - Mạch chuyển đổi RS485 sang RS232. c. Mô hình hoàn chỉnh sau khi thi công Sau đây là hình ảnh về mô hình hệ pan-tilt camera bám mục tiêu đã thi công trong đề tài: Hình 3.11: Mô hình thi công hoàn chỉnh 3.4.2. Giao diện phần mềm thiết kế Hình 3.12: Giao diện phần mềm điều khiển hệ thống Tải về bản full

Từ khóa » Hệ Thống Bám Mục Tiêu