Ứng dụng xử lý ảnh trong điều khiển

114 709 4
Ứng dụng xử lý ảnh trong điều khiển

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Ứng dụng xử lý ảnh điều khiển Trang 1 TỔNG QUAN 1.1 KHÁI NIỆM VỀ ROBOT VISION Bài toán tránh vật cản toán quen thuộc điều khiển loại xe Robot tự hành Có nhiều cách giải toán sử dụng cảm biến hồng ngoại, siêu âm,… để xác đònh vò trí vật cản sử dụng giải thuật tránh vật cản cục để di chuyển Tuy nhiên với phát triển nhanh kỹ thuật điện tử khoa học máy tính, có hướng tiếp cận khác sử dụng Camera kết hợp với máy tính tốc độ cao để đưa phương án tránh vật cản cách tối ưu Hướng tiếp cận làm xuất khái niệm lónh vực Robotic Robot Vision nhằm mô tả đối tượng Robot sử dụng Camera loại cảm biến trình làm việc giao tiếp với người Hiện phương pháp dùng Camera cho Robot tự hành giai đoạn phát triển Tại Việt Nam phương pháp tương đối mới, nhiên hướng tiếp cận đưa loại Robot nói chung trở nên thông minh, thân thiện gần gũi với người GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang Sau số lónh vực ứng dụng Robot Vision: • Công nghiệp sản xuất: tay máy tự động, hệ thống phân loại tốc độ cao,… • Công nghiệp giải trí: chó Robot Aibo… • Nghiên cứu khoa học: xe tự hành thám hiểm hỏa, Robot thăm dò nơi nguy hiểm đáy biển… • Cuộc sống: hệ thống nhận dạng khuôn mặt sân bay, hệ thống phân biệt mống mắt… Trở ngại lớn phương pháp tốc độ xử lý máy tính Bởi Camera thực chất loại cảm biến cao cấp tích hợp mật độ diện tích nhỏ kết nhận từ Camera dạng ma trận Vector Vector biểu diễn điểm ảnh (pixel) Kích thước Vector phản ánh số bit màu ảnh BITMAP Window Để xử lý xác thông tin môi trường ta phải tăng số lượng điểm ảnh xử lý (ảnh thông thường có kích thùc 320x240 điểm ảnh 640x480 điểm ảnh) điều làm giảm tốc độ xử lý thông tin Do để tốc độ xử lý chấp nhận ta thường phải giảm số điểm ảnh, bỏ bớt số công đoạn xử lý thường gặp giảm số bit màu điểm ảnh cách chuyển ảnh xuống mức xám để xử lý Dưới hình ảnh số Robot tự hành sử dụng Camera GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang Hình 1.1 Robot tự hành sử dụng Camera GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang Hình 1.2 Walking Robot sử dụng Camera cảm biến đo khoảng cách GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang Hình 1.3 Robot tự hành sử dụng wireless Camera 1.2 ƯU NHƯC ĐIỂM CỦA PHƯƠNG PHÁP Sau số ưu điểm khuyết điểm phương pháp so với phương pháp dùng cảm biến:  Ưu điểm: • Có biên dạng liên tục toàn vật thể • Có thể phân biệt thay đổi nhỏ màu sắc biên dạng • Có thể phân loại vật thể khác dựa hình dáng màu sắc • Có thể phát phân tích chuyển động (motion analysis and object tracking) • Có tính tương tác tốt với người nhận dạng phân biệt khuôn mặt người (face recognition) • Giải toán 3D GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang • Giải toán toàn cục tối ưu theo tiêu chí cụ thể (như toán tìm đường ngắn nhất)  Nhược điểm: • Đòi hỏi máy tính có tốc độ cao • Quá trình xử lý phức tạp nên dễ phát sinh lỗi 1.3 HỆ THỐNG XỬ LÝ ẢNH Nhận biết môi trường trình quan trọng lónh vực Robotic nhiều lónh vực khác Trang bò hệ thống xử lý ảnh tốt nâng cao khả linh hoạt cho hệ thống tự động, máy thông minh Robot nên có hệ thống xử lý ảnh để chúng thực nhiều nhiệm vụ người, chẳng hạn lắp ráp, kiểm tra, lại Hơn hệ thống xử lý ảnh cung cấp thông tin giúp máy thông minh thu nhận học thêm từ môi trường mà hoạt động, không giới hạn khả hiểu biết mà người lập trình cung cấp cho Hệ thống xử lý ảnh thực nhiệm vụ gồm (tài liệu [6]): thu nhận chuyển đổi (transformation), phân tích (analysis), nhận biết hình ảnh ánh sáng (image understanding) Cụ thể: • Chuyển đổi hình ảnh trình biến đổi hình ảnh ánh sáng thành hình ảnh điện tử sử dụng máy tính Vì vậy, chuyển đổi hình ảnh đòi hỏi số hoá điện tử hình ảnh ánh sáng Một số hoá, hình ảnh phân tích phần mềm • Sau trình chuyển đổi trình phân tích ảnh để rút thông tin cần thiết cho bước hiểu ảnh (ví dụ tìm gờ cạnh hay màu sắc đối tượng ảnh) • Cuối hình ảnh phân tích, hệ thống vision phải làm sáng tỏ hay hiểu (understanding) hình ảnh vừa thu nhận thể giới hạn hiểu biết môi trường Sau giai đoạn này, tùy theo mục đích ứng dụng, đònh đưa Sau ta trình bày dạng sơ đồ giai đoạn trình xử lý ảnh thực Luận Án GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang Camera Thu nhận ảnh Tiền xử lý ảnh Phân tích ảnh Lưu trữ Hệ đònh Hình 1.4 Các giai đoạn trình xử lý ảnh Với mô hình sau đònh, hệ thống xử lý ảnh đóng thêm vai trò thu nhận hình ảnh phản hồi để trình điều khiển xác (điều khiển vòng kín) Các chương trình bày theo thứ tự trình nêu GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang THU NHẬN ẢNH VÀ TIỀN XỬ LÝ ẢNH Quá trình xử lý ảnh nhận ảnh từ Camera INPUT toàn trình xử lý Chng trình bày hai trình sau:  Thu nhận ảnh từ Camera  Tiền xử lý ảnh nhận (đưa ảnh nhận mức xám tăng cường chất lượng ảnh này) Trước tiên ta tìm hiểu sơ lược trình nhận ảnh từ Camera hệ điều hành Window GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 2.1 SƠ LƯC VỀ CAMERA CCD Camera CCD (Charge Couple Device) thiết bò thu nhận ảnh dạng tín hiệu số cách thu nhận cường độ sáng điểm thông qua loại linh kiện có tên photo diode Cường độ sáng điểm mã hoá thành giá trò màu RED, GREEN, BLUE theo lý thuyết màu Thomson đưa năm 1802 Ảnh nhận từ Camera loại ma trận Vector: R  G  [ p ]ij =   B     A (2-1) Trên Window ma trận phần liệu (data) ảnh BITMAP Các phép xử lý ảnh thực chất trình biến đổi ma trận công cụ tuyến tính (các phép toán đại số cộng trừ,…), phi tuyến (bộ lọc Median, …), hay chuyển ảnh sang không gian khác để xử lý biến đổi ngược trở lại (như biến đổi Fourier,Wavelet…) Mô hình minh họa đề tài sử dụng WebCam D-Link với driver hỗ trợ chuẩn bắt hình VfW (Video for Window) độ phân giải (tương ứng với kích thước ma trận ảnh) 320x240 Window có hổ trợ chuẩn nhanh chuẩn VfW chuẩn WDM (Windows Driver Model) nhiên driver hãng sản xuất gặp số lỗi kỹ thuật nên chuẩn làm việc số máy có cấu hình phù hợp Dưới cấu trúc driver nhận ảnh từ Camera Window: GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 10 Hình 2.1 Cấu trúc driver nhận ảnh từ Camera 2.2 ĐỊNH DẠNG ẢNH BITMAP VÀ CÁC BƯỚC THU NHẬN ẢNH Do chương trình minh họa viết Window nên tín hiệu từ Camera sau driver xử lý chuyển sang đònh dạng chuẩn Window DIB Sau sơ lược cấu trúc file BMP: file lưu trữ đònh dạng DIB Window 2.2.1 Cấu trúc file BITMAP  Các khái niệm: DDB (Device Dependent Bitmap): Bitmap phụ thuộc vào thiết bò cụ thể, nên sử dụng thiết bò khác cho hình ảnh không thay đổi DIB (Device Independent Bitmap): Bitmap sử dụng nhiều thiết bò khác có thêm thông tin số màu sử dụng, cách thức nén, Hiện nay, file BMP loại bitmap DIB GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 100 dùng mạch dao động TTL tạo xung Clock đưa vào chân XTAL1 lấy đảo đưa vào XTAL2 • RST (Reset) Ngõ vào RST (chân 19) chân master reset 8051 Khi mức cao (trong chu kỳ máy) ghi nội nạp với giá trò tương ứng theo thứ tự khởi động hệ thống (xin tham khảo thêm tài liệu [3]) • Nguồn cung cấp 8051 sử dụng nguồn đơn 5V 1.4 CẤU TRÚC CỔNG XUẤT NHẬP Mạch bên port 8051 mô tả ngắn gọn hình Khi ghi lên chân cổng, liệu chốt vào chốt Chốt lái transitor thường nối với chân cổng Lưu ý Port điện trở kéo lên, ngoại trừ dùng với chức vừa bus đòa chỉ, vừa bus liệu ngoại Tùy theo đặc tính tải mà ta thêm vào điện trở kéo lên bên Bus nội 8051 Vcc D Đọc Đọc chốt chân Chân Chố t Ghi Port Chốt Hình 2: Sơ đồ mạch port 8051 Quá trình đọc chốt phân biệt theo hai cách đọc từ chốt đọc từ chân Sự phân biệt nhằm chống trường hợp chập mạch tải gây nên Lệnh đọc bit cổng (ví dụ MOV C, P1.1) đọc chân cổng Trong trường hợp này, chốt phải giữ mức cao, không FET dẫn ngõ xuống mức thấp Theo mặc đònh tất chốt port set hệ thống reset, nên chân chốt dùng ngõ vào mà không cần phải set chốt Tuy nhiên, xóa chốt (ví dụ CLEAR P1.1) ta đọc liệu từ chân port trừ set chốt trở lại GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 101 Phần Hoạt động Port nối tiếp 2.1 GIỚI THIỆU Port nối tiếp chip 8051 hoạt động nhiều chế độ dãy tần số rộng Chức chủ yếu thực chuyển đổi song song sang nối tiếp với liệu xuất chuyển đổi nối tiếp sang song song với liệu nhập Port nối tiếp 8051 hoạt động song công (full duplex: thu phát đồng thời) đệm thu (receiver buffering) nhằm cho phép ký tự thu giữ ký tự thứ hai nhận (nghóa CPU đọc ký tự thứ trước ký tự thứ hai thu đầy đủ liệu không bò mất) 8051 có hai ghi chức đặc biệt cho phép phần mềm truy xuất đến port nối tiếp là: SBUF SCON Bộ đệm port nối tiếp (SBUF) điạ 99H chứa liệu để thu phát Thanh ghi điều khiển port nối tiếp (SCON) điạ 98H ghi có đòa bit chứa bit trạng thái bit điều khiển port nối tiếp Các bit điều khiển đặt chế độ hoạt động cho port nối tiếp, bit trạng thái báo cáo kết thúc việc phát thu ký tự Các bit trạng thái kiểm tra phần mềm lập trình để tạo ngắt GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 102 2.2 CÁC THANH GHI VÀ CHẾ ĐỘ HOẠT ĐỘNG CỦA PORT NỐI TIẾP 2.2.1 Thanh ghi điều khiển port nối tiếp Chế độ hoạt động port nối tiếp đặt cách ghi vào ghi chế độ port nối tiếp (SCON) đòa 98H Sau tóm tắt bit ghi SCON: Bit SCON.7 SCON.6 SCON.5 Ký hiệu SM0 SM1 SM3 Đòa 9FH 9EH 9DH SCON.4 SCON.3 REN TB8 9CH 9BH SCON.2 SCON.1 RB8 TI 9AH 99H SCON.0 RI 98H Mô tả Bit chế độ port nối tiếp Bit chế độ port nối tiếp Bit chế độ port nối tiếp Cho phép truyền thông xử lý chế độ 3, RI không bò tác động bit thứ thu Cho phép thu phải đặt lên để thu ký tự Bit phát, bit thứ phát chế độ 3, đặt xóa phần mềm B it thu, bit thứ thu Cờ ngắt phát Đặt lên kết thúc phát ký tự, xóa phần mềm Cờ ngắt thu Đặt lên kết thúc thu ký tự, xóa phần mềm Tóm tắt chế độ hoạt động port nối tiếp: SM0 0 1 SM1 1 Chế độ Mô tả Thanh ghi dòch UART bit UART bit UART bit GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được Tốc độ baud Cố đònh (Fosc /12 ) Thay đổi ( đặt timer ) Cố đònh (Fosc /12 Fosc/64 ) Thay đổi ( đặt timer ) SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 103 Trước sử dụng port nối tiếp, ta phải khởi động SCON cho chế độ, ví dụ lệnh sau: MOV SCON, #01010010B Sẽ khởi động port nối tiếp cho chế độ (SM0/SM1=0/1), cho phép thu (REN=1) cờ ngắt phát (TP=1) để phát sẳn sàng hoạt động 2.2.1.1 Chế độ (Thanh ghi dòch đơn bit) Chế độ chọn cách đưa bit vào SM1 SM2 ghi SCON Dữ liệu nối tiếp vào qua RXD TXD, bit phát thu với bit LSB Tốc độ baud cố đònh 1/12 tần số dao động chip Việc phát khởi động lệnh ghi liệu vào SBUF Dữ liệu dòch đường RXD (P3.0) với xung nhòp gửi đường TXD (P3.1) Mỗi bit phát xem hợp lệ (trên RXD) chu kỳ máy tín hiệu xung nhập xuống thấp S3P1 trở cao S6P1 (xin xem hình dưới) Một chu kỳ máy S1 OSC S2 P1 P2 P1 S3 P2 P1 S4 S5 S6 P2 P1 P2 P1 P2 P1 ALE Data Out Bit Data Hợp Lệ S3P1 Shift Clock WRITE to SBUF S6P1 Phóng to ALE Data Out RXD Shift Clock (TXD) GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 104 Hình 3: Giản đồ thời gian Port nối tiếp phát chế độ Việc thu khởi động ta cho phép thu (REN) bit ngắt thu (RI) Quy tắc tổng quát đặt REN bắt đầu chương trình để khởi động port nối tiếp, xoá RI để bắt đầu nhận liệu Khi RI bò xoá, xung nhòp đưa đường TXD chu kỳ máy liệu vào theo xung nhòp đường RXD Quá trình lấy xung nhòp cho liệu vào port nối tiếp xảy cạnh đường TXD Một chu kỳ máy Data out D0 D1 D2 D3 D4 D5 D6 D7 Shift clock Hình 4: Giản đồ thời gian phát nối tiếp chế độ 2.2.1.2 Chế độ (UART bit với tốc độ baud thay đổi được) Ở chế độ 1, port nối tiếp 8051 làm việc UART bit với tốc độ baud thay đổi Một UART (bộ thu phát đồng vạn năng) dụng cụ thu phát liệu nối tiếp với bit start mức thấp bit stop mức cao Đôi có thêm bit kiểm tra chẵn lẻ bit liệu cuối bit stop Hoạt động chủ yếu UART chuyển đổi song song sang nối tiếp liệu nhập Ở chế độ 1, 10 bit phát TXD thu RXD Những bit là: bit start (luôn 0), bit liệu (LSB đầu tiên) bit stop (luôn 1) Với hoạt động thu, bit stop đưa vào RB8 SCON Trong 8051 chế độ baud đặt tốc độ báo tràn timer Việc tạo xung nhòp đồng hóa ghi dòch port nối tiếp chế độ 1, thiết lập đếm bit chia cho 16, với ngõ xung nhòp tốc độ baud ngõ vào đếm chọn phần mềm Tốc độ baud ÷ 16 Xung nhòp tốc độ baud i tiếpVương Ngọc Dũng GVHD: TS Nguyễn Văn Giáp Thanh ghi dòch port nố SVTH: KS Đoàn Thế Thảo, KS Bùi Quang Được Ứng dụng xử lý ảnh điều khiển Trang 105 2.2.1.3 UART bit với tốc độ baud cố đònh (chế độ 2) Khi SM1=1 SM0=0, cổng nối tiếp làm việc chế độ 2, UART 9bit có tốc độ baud cố đònh, 11 bit phát thu: 1bit start, bit data, bit data thứ lập trình bit stop Bit thứ đưa vào TB8 ghi SCON (có thể bit Parity) Khi thu, bit thứ chứa RB8 Tốc độ baud chế độ 1/32 1/16 tần số dao động chip 2.2.1.4 UART bit với tốc độ baud thay đổi (chế độ 3) Chế độ giống chế độ ngoại trừ tốc độ baud lập trình cung cấp Timer Thật chế độ 1, 2, giống Cái khác biệt tốc độ baud (cố đònh chế độ 2, thay đổi chế độ 3) số bit data (8 bit chế độ 1, chế độ 3) 2.2.2 Khởi động truy xuất ghi cổng nối tiếp  Cho Phép Thu: Bit cho phép thu (REN=Receiver Enable) Trong SCON phải đặt lên phần mềm phép thu ký tự, thông thường việc thực đầu chương trình khởi động cổng nối tiếp Ta thực việc theo hai cách Lệnh: SETB REN ; đặt REN lên Hoặc lệnh MOV SCON,#XXX1XXXXB ;  Bit liệu thứ 9: Bit liệu thứ cần phát chế độ phải nạp vào TB8 phần mềm Bit liệu thứ thu đặt RB8 Phần mềm dùng không dùng bit liệu thứ (điều phụ thuộc vào đặc tính kỹ thuật thiết bò nối tiếp sử dụng)  Bit parity: Người ta thường sử dụng bit liệu thứ bit parity ký tự Như nhận xét chương trước, bit P chương trình đặt lên bò xoá chu kỳ máy nhằm thiết lập kiểm tra chẳn với bit tích lũy  Các cờ ngắt: GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 106 Hai cờ ngắt thu phát (RI TI) SCON đóng vai trò quan trọng truyền thông nối tiếp 8051 Lưu ý hai bit đặt lên phần cứng, phải xoá phần mềm 2.2.3 Tốc độ baud port nối tiếp Như nói, tốc độ baud cố đònh chế độ Trong chế độ luôn tần số dao động chip chia cho 12 Thông thường thạch anh ấn đònh tần số dao động chip sử dụng nguồn tạo xung nhòp khác Hình sau minh họa khác chế độ 0, 1, Dao động Xung nhòp ÷ 12 chip tốc độ baud a Chế độ ÷ 64 Dao động chip Dao động chip SMOD=0 ÷ 32 b Chế độ Xung nhòp tốc độ baud SMOD=1 ÷ 32 Xung nhòp tốc ÷ 16 SMOD=1 độ baud c Chế độ Hình 5: Các nguồn tạo xung nhòp cho port nối tiếp Mặc nhiên sau reset hệ thống, tốc độ baud chế độ tần số dao động chia cho 64 Tốc độ baud bò ảnh hưởng bit ghi điều khiển nguồn cung cấp (PCON): bit PCON bit SMOD Nếu đặt bit SMOD lên ta nâng gấp đôi tốc độ baud chế độ 1, Vì PCON không đònh đòa theo bit, nên để đặt bit SMOD lên ta cần phải thực lệnh sau: MOV A,PCON ; lấy giá trò thời PCON SETB ACC.7 ; đặt bit SMOD lên MOV PCON,A ; ghi giá trò ngược PCON GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 107 Tốc độ baud chế độ xác đònh tốc độ tràn timer Nhưng timer hoạt động tần số tương đối cao nên tốc độ tràn timer thường chia cho 32 (hoặc 16 SMOD =1 ) trước dùng làm tốc độ xung nhòp cho port nối tiếp Phần Chương trình điều khiển Robot 3.1 GIAO DIỆN CHƯƠNG TRÌNH Chương trình minh họa viết Visual C++ 6.0 hệ điều hành WindowXP Pro (hệ điều hành có nhân NT nên chương trình minh họa nên biên dòch WindowNT) Chương trình xây dựng mode Console-MFC để loại bỏ giao diện đồ họa nhằm mục đích tăng tối đa tốc độ tính toán Giao diện chương trình gồm có cửa sổ sau:  Cửa sổ Preview: cửa sổ hiển thò ảnh thu từ Camera chưa qua xử lý Cửa sổ có nhiệm vụ quan sát trình di chuyển thực Robot GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 108  Cửa sổ Proccess: cửa sổ có nhiệm vụ cung cấp hình ảnh trình xử lý, nội dung cụ thể cửa sổ thay đổi phần mềm Ví dụ ảnh mức xám tương ứng ảnh thu nhận từ Camera:  Cửa sổ Map: cửa sổ chứa thông tin đồ mà Camera thấy được, hiển thò đường di chuyển Robot chế độ giả lập Cửa sổ Update phát vật thể GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 109  Cửa sổ Graph: cửa sổ hiển thò Histogram ảnh dạng đồ thò:  Cửa sổ Status: cửa sổ chứa tất thông tin trình điều khiển Robot Bốn dòng thể trình lớn thực toán Các dòng chứa thông tin Robot (tọa độ Robot), vật cản (tọa độ, diện tích,…) mà Camera nhận biết GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 110  Sau hình điều khiển chương trình GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 111 3.2 CÁCH SỬ DỤNG CHƯƠNG TRÌNH GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 112 Để giao tiếp với chương trình điều khiển Robot, ta có quy đònh số phím tắt sau:          Camera chạy tới 20 xung : Camera chạy lui 20 xung : Chỉnh zero cho Camera : Lấy đồ toàn cục lần đầu: Xử lý đồ: Chạy giả lập: Cho Robot di chuyển tránh vật cản: Chọn vật cản để xem thông số: Chọn ảnh thò lên Proccess: [ ] / Enter Space bar S R +/1-9 Các bước thao tác chương trình là:      Chỉnh không cho Camera Lấy đồ toàn cục Xử lý đồ Chạy giả lập Chạy thực 3.3 MÃ NGUỒN CHƯƠNG TRÌNH GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 113 Vì code chương trình nhiều nên trình bày chương trình tìm đường di chuyển cho Robot, hàm xử lý khác xin xem source code đính kèm theo CD // chương trình tìm đường di chuyển ngắn ảnh Raster // sử dụng phương pháp tìm kiếm theo chiều rộng // vào ma trận ảnh vò trí xuất phát vò trí đến // ma trận đường di chuyển amap BOOL dFindWay(MImage *img,int xs,int ys,int xd,int yd,char *map) { POINT delta[8]; int m,n,sl = 1,sltam = 0,cnt = 1; POINT parr[5000],parrtam[5000]; BOOL lc = TRUE; unsigned int arrway[480][320]; char arrflag[480][320]; delta[0].x = -1;delta[0].y = 0;delta[1].x = 1;delta[1].y = 0; delta[2].x = 0;delta[2].y = -1;delta[3].x = 0;delta[3].y = 1; delta[4].x = -1;delta[4].y = -1;delta[5].x = -1;delta[5].y = 1; delta[6].x = 1;delta[6].y = -1;delta[7].x = 1;delta[7].y = 1; memset(arrflag,FALSE,sizeof(arrflag)); for (m=0;mheight;m++) { for (n=0;nwidth;n++) {arrway[m][n] = 10000;} } parr[0].x = xs;parr[0].y = ys;arrflag[ys][xs] = TRUE; arrway[ys][xs] = cnt;cnt++; while (lc) { for (m=0;m= 0) && ((parr[m].x + delta[n].x) < img->width) && ((parr[m].y + delta[n].y) < img->height) && (!arrflag[parr[m].y + delta[n].y][parr[m].x + delta[n].x]) && ((dGetPixel(img,parr[m].x + delta[n].x,parr[m].y + delta[n].y) == 0))) { sltam++; arrflag[parr[m].y + delta[n].y][parr[m].x + delta[n].x] = TRUE; parrtam[sltam-1].x = parr[m].x + delta[n].x; parrtam[sltam-1].y = parr[m].y + delta[n].y; GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang 114 if (arrway[parr[m].y + delta[n].y][parr[m].x + delta[n].x] > cnt) { arrway[parr[m].y + delta[n].y][parr[m].x + delta[n].x] = cnt; } if (((parr[m].x + delta[n].x) == xd) && ((parr[m].y + delta[n].y) == yd)) { lc = FALSE; } } } } if (sltam == 0) {lc = FALSE;} else{ sl = sltam;sltam = 0; memcpy(parr,parrtam,sl*8); cnt++; } } } memset(map,FALSE,img->height*img->width); if (arrflag[yd][xd] == TRUE) { cnt = arrway[yd][xd]; *(map + yd*img->width + xd) = TRUE; for (m=cnt;m>0;m ) { for (n=0;n= 0) && ((yd + delta[n].y) >= 0) && ((xd + delta[n].x) < img->width) && ((yd + delta[n].y) < img->height) && (arrway[yd + delta[n].y][xd + delta[n].x] == m-1)) { xd = xd + delta[n].x; yd = yd + delta[n].y; *(map + yd*img->width + xd) = TRUE; break; } } } return TRUE; } return FALSE; GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng [...]... Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh trong điều khiển Trang 15 Các phương pháp tiền xử lý ảnh là các phương pháp nhằm làm tăng chất lượng ảnh nhận được từ Camera, giúp cho các bước xử lý ảnh tiếp theo đạt được độ chính xác cao nhất Quá trình tiền xử lý bao gồm các bước sau (lý thuyết xin tham khảo tài liệu [1], [8], [13], [14]): Chuyển đổi ảnh thành mức xám Cân bằng Histogram (Histogram... Hình 2.6 Histogram của ảnh Hình 2.7 Ảnh sau khi điều chỉnh Histogram Ảnh này tuy vẫn chưa tốt nhưng rõ ràng là dễ phân biệt biên dạng vật thể hơn Do đó quá trình câm bằng Histogram của ảnh nhận được từ Camera là cần thiết vì nó làm tăng độ chính xác khi xử lý ảnh GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh trong điều khiển Trang 20 2.3.3 Tăng... Để minh họa cách sử dụng phép toán này trong quá trình xử lý ảnh ta sẽ xem một số ví dụ minh họa: GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh trong điều khiển Trang 28 Hình 2.18 Kết quả của phép Open lên ảnh nhò phân • Ví dụ trên cho thấy rằng Open có thể làm tăng chất lượng biên dạng, có thể loại bỏ nhiễu hạt tiêu trong ảnh Quá trình này có... khi xử lý) : Hình 2.9 Histogram sau khi co dãn độ tương phản Hình 2.10 Ảnh sau khi co dãn độ tương phản GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh trong điều khiển Trang 22 Rõ ràng là ảnh sau khi qua hai quá trình can thiệp vào Histogram đã trở nên dễ quan sát hơn Tuy nhiên ảnh ở giai đoạn này vẫn chưa đưa qua bước tách biên bởi vì trong ảnh. .. áp dụng các phép giao, phép hợp, phép bù,… với phần tử này lên ảnh gốc nhằm thu được ảnh kết quả có sự biến đổi về hình dáng biên dạng phù hợp • Các phép biến đổi cơ bản của Morphology là Erode và Dilate ([14]) Kết hợp hai phép biến đổi này ta sẽ có thêm Open và Close ([14]) Các ứng dụng của phép biến đổi này là khử nhiễu trong xử lý ảnh, xử lý biên dạng trong nhận dạng chữ viết, xử lý biên dạng trong. .. L là số giá trò xám cực đại Để minh họa kỹ thuật và áp dụng của nó trong quá trình tăng cường chất lượng ảnh ta xét một ảnh cụ thể sau: Hình 2.5 Ảnh nhận được từ Camera GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh trong điều khiển Trang 19 Ảnh trên có độ sáng thấp và độ tương phản thấp, điều này sẽ gây khó khăn cho việc tách biên các vật thể... Tách các nhiễu đốm nhỏ ra khỏi ảnh: các nhiễu này thường do điều kiện sáng không tốt sinh ra, nhiễu loại này phân bố đều trên ảnh và khi kết hợp với bóng dễ sinh ra biên dạng giả p dụng phép Dilate GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh trong điều khiển Trang 31 Hình 2.22 p dụng Morphology trong bài toán Từ ảnh 24 bit màu với nhiễu của môi... Dũng Ứng dụng xử lý ảnh trong điều khiển Trang 30 Hình 2.21 Close mở rộng biên dạng 2.3.5.5 Các áp dụng của Morphology trong Computer vision • Thông thường các phép toán Morphology không được áp dụng riêng rẽ mà chúng thường kết hợp với các phép toán khác như phép lọc, các phép toán đại số để có được kết quả theo yêu cầu • Trong giới hạn của bài toán đã đặt ra phép toán Morphology chỉ được sử dụng trong. .. GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh trong điều khiển Trang 17 p(fk) p(fk) nh tối nh sáng fk fk p(fk) p(fk) fk fk nh có độ tương phản thấp nh có độ tương phản cao Hình 2.4 Các Histogram tương ứng với bốn loại ảnh Trong cân bằng Histogram, điều mong muốn nhất là ảnh kết quả sẽ có được một Histogram phân bố đều Để cân bằng Histogram, ta sẽ biến... Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh trong điều khiển Trang 35 biệt về mức xám (gray-scale) Biên cũng được đònh nghóa là các điểm ảnh mà tại đó có sự thay đổi đột ngột về độ sáng (brightness) • Dò biên (Edge Detector) là tập hợp các phương pháp xử lý dùng để xác đònh các biến đổi về các góc cạnh (sharp) trong ảnh nhằm đưa ra biên dạng của vật thể • Có nhiều phương ... Dũng Ứng dụng xử lý ảnh điều khiển Trang Hình 1.1 Robot tự hành sử dụng Camera GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển. .. Trang THU NHẬN ẢNH VÀ TIỀN XỬ LÝ ẢNH Quá trình xử lý ảnh nhận ảnh từ Camera INPUT toàn trình xử lý Chng trình bày hai trình sau:  Thu nhận ảnh từ Camera  Tiền xử lý ảnh nhận (đưa ảnh nhận mức... pháp tiền xử lý ảnh 2.3 CÁC BƯỚC TIỀN XỬ LÝ ẢNH ĐƯC SỬ DỤNG TRONG BÀI TOÁN GVHD: TS Nguyễn Văn Giáp KS Đoàn Thế Thảo, KS Bùi Quang Được SVTH: Vương Ngọc Dũng Ứng dụng xử lý ảnh điều khiển Trang

Ngày đăng: 14/02/2016, 21:27

Từ khóa liên quan

Mục lục

  • Bit Data Hợp Lệ

    • Hình 4: Giản đồ thời gian phát nối tiếp ở chế độ 0

    • Xung nhòp tốc

    • Xung nhòp tốc

      • 1.2 CẤU TRÚC CỦA 8051

      • 1.3 SƠ LƯC VỀ CÁC CHÂN CỦA 8051

        • Phần 2

        • Tóm tắt các chế độ hoạt động của port nối tiếp:

        • S1 S2 S3 S4 S5 S6

          • Dao động Xung nhòp

          • SMOD=0

          • Hình 5: Các nguồn tạo xung nhòp cho port nối tiếp.

Tài liệu cùng người dùng

Tài liệu liên quan