Thuật toán sử dụng trong luận văn: Biến đổi Hough

Một phần của tài liệu HỌ VI ĐIỀU KHIỂN PIC VÀ VI ĐIỀU KHIỂN PIC18F67J60 (Trang 71)

Biến đổi Hough là một kỹ thuật thƣờng sử dụng nhận dạng một hình dạnh cụ thể nhƣ đƣờng thẳng, hình tròn, hình tam giác … trong một ảnh. Biến đổi hough ngày nay đƣợc ứng dụng nhiều trong các lĩnh vực, đặc biệt trong lĩnh vực y học. Ƣu điểm chính của kỹ thuật biến đổi Hough là nó nhận dạng một cách toàn cục nên không bị ảnh hƣởng bởi nhiễu ảnh.

5.4.2 Lý thuyết

Trong quá trình xử lý ảnh, một vấn đề cơ bản nhƣng rất thƣờng gặp là phải nhận dạng các đƣờng thẳng, hình tròn hay các đa giác. Thông thƣờng, ta phải tiền xử lý ảnh trƣớc bằng thuật toán phát hiện biên, và các góc từ đó nhận dạng ra hình dạng của vật. Tuy nhiên, nếu trong ảnh đó, do nhiễu nên mất đi một hay nhiều pixel khiến biên của vật không liên tục thì biên của vật cũng không liên tục dẫn đến nhiều khó khăn. Vì lý do này, biến đổi hough ra đời.

Về cơ bản, biến đổi hough dựa vào việc ƣớc tính các tham số từ các đƣờng ranh giới, rồi trên cơ sở xác nhận các tập hợp các tham số nào thỏa một ngƣỡng cho phép. Trên cơ sở này, phép biến đổi Hough có thể nhận dạng rất đa dạng các hình dạng khác nhau.

5.4.3 Biến đổi Hough nhận dạng đƣờng thẳng

Trong không gian ảnh, một đƣờng thẳng có phƣơng trình sau : y=mx+b và đƣợc vẽ bằng các điểm ảnh (x,y) thỏa phƣơng trình.

Ta có 2 tham số là m và b. Từ đó một đƣờng thẳng sẽ trở thành 1 điểm (m,b) trong không gian tham số. Tuy nhiên, phƣng trình này không tốt cho việc tính toán do trƣờng hợp các đƣờng thẳng thẳng đứng sẽ làm cho tham số m và b trở nên không xác định. Vì thế, để tiện cho việc tính toán, phép biến đổi Hough chọn 2 tham số khác cho đƣờng thẳng là r and θ (theta).

Hình 5.13: Biểu diễn đƣờng thẳng bằng r và θ

Với r là khoảng cách từ đƣờng thẳng tới gốc tọa độ và θ là góc giữa vector từ góc giữa pháp tuyến của đƣờng thẳng với trục hoành

Khi đó phƣơng trình đƣờng thẳng đƣợc viết lại nhƣ sau:

Hay ở dạng khác là r = xcosθ + ysinθ

Không gian Hough – không gian tham số ở trƣờng hợp này là mặt phẳng (r, θ) với và .

Ta có:

Một đƣờng thẳng ở không gian ảnh (x,y) khi biến đổi Hough sẽ là 1 điểm trong không gian tham số (r, θ) và ngƣợc lại.

Tập hợp các đƣờng thẳng qua 1 điểm trong không gian ảnh (x,y) khi biến đổi Hough sẽ trở thành 1 đƣờng cong hình sin trong không gian tham số và tuân theo phƣơng trình:

Giả sử ta từ 2 điểm trên không gian ảnh, thì giao điểm của 2 đƣờng cong tạo từ 2 điểm ấy giao nhau tại 1 điểm trên không gian tham số. Điểm giao ấy chính là tham số của đƣờng thẳng đi qua 2 điểm ấy trong không gian ảnh.

Tập hợp các điểm của một đƣờng thẳng sẽ đƣợc biến đổi thành tập hợp các đƣờng cong, giao điểm chung của các đƣờng con này chính là nghiệm tham số của bài toán.

Hình 5.14: Phép chuyển hough 1 đƣờng thăng sang mặt phẳng tham số

Trên cơ sở này, bài toán đƣợc chuyển từ việc tìm thao số của đƣờng thẳng sang tìm giao điểm của các đƣờng cong.

Trên cơ sở này, quy trình nhận dạng một đƣờng thẳng áp dụng phép biến đổi Hough nhƣ sau:

1. Tiền xử lý ảnh, chuyển ảnh cần nhận dạng về dạng nhị phân của các đƣờng biên, ranh giới.

Hình 5.15: Ảnh ban đầu và sau khi tìm biên

2. Quét toàn bộ các điểm ảnh, mỗi điểm ảnh khi chuyển qua không gian tham số là một đƣờng cong hình sin.

3. Mức xám của không gian tham số (Accumulator - xem nhƣ là 1 ảnh) tăng lên tƣơng ứng với số đƣờng cong đi qua điểm đó. Quá trình này có thể xem nhƣ mỗi điểm ảnh trên hình ban đầu sẽ bầu chọn (vote) cho một tập tham số (r, θ).

Hình 5.16: Không gian hough trƣớc và sau khi cân chỉnh lƣợc đồ xám

4. Cuối cùng, những điểm nào có mức xám vƣợt qua ngƣỡng mà ta quy định là tham số đƣờng thẳng nhận dạng đƣợc.

Hình 5.17: Các đƣờng thẳng nhận dạng đƣợc

5. Từ các đƣờng thẳng, ta đƣa chúng qua một bộ lọc gồm nhiều điều kiện: khoảng cách giữa 2 đƣờng gần nhau, độ dài ngắn nhất… cùng với việc đối chiếu với ảnh mẫu để cắt những đƣờng này thành những đoạn thẳng đúng.

Trƣờng hợp đƣờng biên bị đứt đoạn do nhiễu:

Hình 5.18: Phép biến đổi Hough với ảnh bị đứt đoạn Trƣờng hợp ảnh thu đƣợc bị nhiễu muối tiêu

Hình 5.19: Phép biến đổi Hough với ảnh bị muối tiêu Nhƣ vậy, phép biến đổi hough rất ít bị ảnh hƣởng bởi nhiễu.

5.4.4 Biến đổi Hough nhận dạng đƣờng tròn

Tƣơng tự nhƣ nhận dạng đƣờng thẳng, biến đổi Hough cũng có thể dùng để nhận dạng các đƣờng cong nhƣ parabol, đƣờng elip, đƣờng tròn …

Phƣơng trình đƣờng tròn đƣợc tham số hóa nhƣ sau:

Trong đó điểm (a,b) là tọa độ tâm đƣờng tròn và r là bán kính đƣờng tròn. Phƣơng trình này có thể viết đơn giản nhƣ sau (Với θ ):

Nhƣ vậy, bài toán trở thành tìm bộ ba tham số (a,b,r) của đƣờng tròn. Không gian tham số Hough sẽ là không gian 3D. Việc này khiến cho quá trình tìm trở nên phức tạp hơn và tốn nhiều thời gian hơn.

Trƣớc hết, ta xét trƣờng hợp đơn giản, ta chỉ tìm các đƣờng tròn có bán kính xác định. Nhƣ vậy, không gian tham số trở thành mặt phẳng.

Hình 5.20: Biến đổi hough tìm đƣờng tròn với R xác định

Ứng với mỗi điểm, sau khi biến đổi hough, sẽ trở thành một hình tròn (hình nét đứt trên hình vẽ). Nhƣ vậy, tâm của hình tròn chính là giao điểm của các hình tròn đứt.

Mở rộng hơn, trong trƣờng hợp bán kính R không xác định, mỗi điểm qua phép biến đổi sẽ trở thành bề mặt một hình nón ngƣợc trong không gian tham số (a,b,r).

Quá trình xử lý tiếp theo tƣơng tự nhƣ với trƣờng hợp đƣờng thẳng. Các đƣờng tròn có biên không trùng nhau Các đƣờng tròn có biên trùng chồng lên nhau Ảnh gốc Ảnh nhị phân đã loại bỏ nền Ành đƣờng biên Kết quả các đƣờng tròn Nhận xét Các đƣờng tròn nhận khá chính xác Các đƣờng tròn nhận dạng đƣợc đã có sai lệch, tùy vào phần đƣờng biên bị mất.

CHƢƠNG 6: THIẾT KẾ VÀ THI CÔNG MÔ HÌNH PHẦN CỨNG 6.1 Giới thiệu về Robot

6.1.1 Định nghĩa Robot công nghiệp

Hiện nay có nhiều định nghĩa về robot ta có thể điểm qua một số định nghĩa sau: - Định nghĩa theo tiêu chuẩn AFNOR ( Pháp):

Robot công nghiệp là một cơ cấu chuyển động tự động có thể lập trình , lặp đi lặp lại các chƣơng trình, tổng hợp các chƣơng trình đặt ra trên các trục tọa độ, có khả năng định vị, định hƣớng , di chuyển các đối tƣợng vật chất : chi tiết,d ao cụ , gá lắp… theo những hành trình thay đổi đƣợc chƣơng trình hóa nhằm thực hiện các nhiệm vụ công nghệ khác nhau.

- Định nghĩa theo RIA ( Robot Istitute of American ):

Robot là một tay máy vạn năng có thể lập đi lập lại các chƣơng trình đƣợc thiết kế đi chuyển vật liệu, chi tiết, dụng cụ hoặc thiết bị chuyên dùng thông qua các chƣơng trình chuyển động có thể thay đổi để hoàn thành các nhiệm vụ khác nhau.

Có thể nói Robot công nghiệp là một máy tự động linh hoạt thay thế từng hoạt động cơ bắp và hoạt động trí tuệ của con ngƣời trong nhiều khả năng thích nghi khác nhau. Robot công nghiệp các khả năng chƣơng trình hóa linh hoạt trên trục chuyển động , biểu thị cho số trục tự do của chúng . Robot công nghiệp đƣợc trang bị những bàn tay máy hoặc các cơ cấu chấp hành, giải quyết những nhiệm vụ xác định trong các quá trình công nghệ, hoặc trực tiếp tham gia thực hiện các nguyên công hoặc phục vụ các quá trình tháo lắp gia công với thao tác cầm nắm vận chuyển và trao đổi các đối tƣợng với các trạm công nghệ. Trong một hệ thống máy tự động linh hoạt, đƣợc gọi là “ Hệ thống tự động linh hoạt robot hóa” cho phép thích ứng nhanh với thao tác đơn giản khi nhiệm vụ sản xuất thay đổi.

6.1.2 Bậc dự do của Robot

Bậc tự do là khả năng chuyển động của cơ cấu ( chuyển động tịnh tiến hoặc quay ). Để dịch chuyển đƣợc một vật thể trong không gian, cơ cấu chấp hành của robot phải đạt đƣợc một số bậc tự do. Nói chung cơ hệ của robot là một cơ cấu hở , do bậc tự do của nó có thể tính theo công thức :

W = 6n – ∑ (6.1)

Ở đây: n – Số khâu động;

Đối với các cơ cấu có các khâu đƣợc nối với nhau bằng khớp quay hoặc tịnh tiến ( khớp động loại 5) thì số bậc tự do bằng số khâu động. Đối với các khâu hở, số bậc tự do bằng tổng số bậc tự do của các khớp động.

Để định vị và định hƣớng khâu chấp hành cuối một cách tùy ý trong không gian 3 chiều robot cần có 6 bậc tự do, trong đó 3 bậc tự do để định vị và 3 bậc tự do để định hƣớng. Một số công việc đơn giản nâng hạ, sắp xếp … ta có thể yêu cầu bậc tự do ít hơn. Các robot hàn, sơn … thƣờng yêu cầu 6 bậc tự do. Trong một số trƣờng hợp cần sự khéo léo, linh hoạt hoặc khi cần phải tối ƣu hóa quỹ đạo … ngƣời ta dùng robot với số bậc tự do nhiều hơn 6.

6.1.3 Hệ tọa độ

Mỗi robot thƣờng gồm nhiều khâu và liên kết với nhau qua nhiều khớp tạo thành một xích động học xuất phát từ một khâu cơ bản đứng yên. Hệ tọa độ gắn với khâu cơ bản gọi là hệ tọa độ cơ bản ( hay hệ tọa độ chuẩn). Các hệ tọa độ trung gian khác gắn với các khâu động gọi là hệ tọa độ suy rộng. Trong từng thời điểm hoạt động , các tọa độ suy rộng xác định cấu hình của robot bằng cách chuyển dịch hài hoặc các chuyển dịch góc của các khớp tịnh tiến hoặc khớp quay. Các hệ tọa độ suy rộng còn đƣợc gọi là biến khớp.

Hình 6.1: Các tọa độ suy rộng của robot.

Các hệ tọa độ gắn trên các khâu của robot phải tuân theo quy tắc bàn tay phải: Dùng tay phải , nắm hai ngón tay út và tay áp út vào lòng bàn tay, xòe 3 ngón : cái , trỏ , giữa theo 3 phƣơng vuông góc với nhau. Nếu chọn ngón cái là phƣơng của trục z thì ngón trỏ chỉ phƣơng chiều trục x và ngón giữa sẽ biểu thị phƣơng chiều trục y.

Hình 6.2: Quy tắc bàn tay phải xác định trục tọa độ cho robot.

6.1.4 Trƣờng công tác của Robot

Trƣờng công tác ( hay vùng làm việc, không gian công tác ) của robot là toàn bộ thể tích đƣợc quét bới khâu chấp hành cuối khi robot thực hiện các chuyển động có thể. Trƣờng công tác bị ràng buộc bởi các thông số hình học của robot cũng nhƣ các ràng buộc cơ học của các khớp; ví dụ: một khớp quay có thể chuyển động nhỏ hơn một góc 3600. Ngƣời ta thƣờng dùng hai hình chiếu để mô tả trƣờng công tác của một robot.

Hình 6.3: Biểu diễn trƣờng công tác của một robot.

6.1.5 Cấu trúc cơ bản của Robot công nghiệp

a. Các thành phần cơ bản của Robot công nghiệp

Một robot công nghiệp thƣờng bao gồm thành phần chính nhƣ : cánh tay robot, nguồn động lực, dụng cụ gắn lên khâu chấp hành cuối, các cảm biến , bộ điều khiển, thiết bị dạy học,

máy tính … các phần mền lập trình cũng nên đƣợc coi là một thành phần của hệ thống robot. Mối quan hệ giữa các thành phần robot trong hình sau:

Hình 6.4: Các thành phần chính của hệ thống robot.

Cánh tay robot ( tay máy ) là kết cấu cơ khí gồm một khâu liên kết với nhau bằng các khớp động để có thể tạo nên những chuyển động cơ bản của robot.

Nguồn động lực là các động cơ điện ( một chiều hoặc động cơ bƣớc) , các hệ thống xy lanh khí nén, thủy lực để tạo động lực cho tay máy hoạt động.

Dụng cụ thao tác đƣợc gắn trên khâu cuối của robot, dụng cụ của robot có thể có nhiều kiểu khác nhau nhƣ : dạng bàn tay để nắm bắt đối tƣợng hoặc công cụ làm việc nhƣ mỏ hàn, đá mài, phun sơn…

Thiết bị dạy học dùng để dạy cho robot các thao tác cần thiết thao yêu cầu của quá trình làm việc, sau đó robot tự lặp lại các động tác đã đƣợc dạy để làm việc ( phƣơng pháp lập trình kiểu dạy học ).

Các phần mền để lập trình và các chƣơng trình điều khiển robot đƣợc cài đặt trên máy tính. Dùng để điều khiển robot thông qua bộ điều khiển. Bộ điều khiển còn đƣợc gọi là Mô đun điều khiển điều khiển, nó còn đƣợc kết nối với máy tính. Một mođun các cảm biến giúp robot nhận biết trạng thái của bản than, xác định vị trí của đối tƣợng làm việc hoặc các dò tìm khác; điều khiển các băng tải hoặc cơ cấu cấp phôi hoạt động phối hợp với robot…

Nguồn động lực Thiết bị dạy học Bộ điều khiển và máy tính Các cảm biển Các chƣơng trình Cánh tay robot Dụng cụ thao tác

b. Kết cấu của tay máy

Nhƣ đã nói ở trên, tay máy là thành phần quan trọng, nó quyết định khả năng làm việc của robot. Các kết cấu của nhiều tay máy đƣợc phỏng theo cấu tạo và chức năng của tay ngƣời; tuy nhiên ngày nay, tay máy đƣợc thiết kế rất đa dạng, nhiều cánh tay robot có hình dáng rất khác tay ngƣời. Trong thiết kế và sử dụng tay máy, chúng ta cần quan tâm đến các thông số hình – động học, là những thông số liên quan tới khả năng làm việc của robot nhƣ: tầm với ( hay trƣờng công tác), số bậc tự do ( thể hiện sự khéo léo linh hoạt của robot), độ cứng vững, tải trọng vật nâng, lực kẹp…

Các khâu của robot thƣờng đƣợc thực hiện hai hƣớng chuyển động cơ bản:

- Chuyển động tịnh tiến theo hƣớng x,y,z trong không gian Descarde, thông thƣờng tạo nên các hình khối, các chuyển động này thƣờng ký hiệu là T ( translation) hoặc P ( Prismatic ).

- Chuyển động quay quanh các trục x, y, z ký hiệu là R ( Roatation).

Tùy thuộc vào số khâu và sự tổ hợp các khâu chuyển động ( R và T ) mà tay máy có các cấu khác nhau với vùng làm việc khác nhau. Các kết cấu thƣờng gặp của robot là robot kiểu tọa độ Dercarde, tọa độ trụ, tọa độ cầu, robot kiểu Scara, hệ tọa độ góc ( phỏng sinh)…

Robot kiểu tọa độ Dercarde: là tay máy có 3

chuyển động cơ bản tịnh tiến theo phƣơng của các trục hệ tọa độ gốc ( cấu tình T.T.T). Trƣờng công tác có dạng khối chữ nhật. Do kết cấu đơn giản. loại tay máy này có độ cứng vững cao, độ chính xác cơ khí dễ đảm bảo vì vậy nó thƣờng dùng để vận chuyển phôi liệu, lắp ráp, hàn trong mặt phẳng.

Robot kiểu tọa độ trụ: Vùng làm việc của robot có dạng hình trị rỗng. Thƣờng khớp

thứ nhất chuyển động quay. Ví dụ : robot 3 bậc tự do, cấu hình R.T.T nhƣ hình vẽ. Có nhiều robot kiểu tọa độ trụ nhƣ : robot Versetran của hãng AMF ( Hoa Kỳ).

Robot kiểu tọa độ cầu: Vùng làm việc của robot có dạng hình cầu, thƣờng độ cứng

vững của loại robot này thấp hơn so với hai loại trên. Ví dụ robot 3 bậc tự do, cấu hình R.R.R hoặc R.R.T làm việc theo kiểu tọa độ cầu.

Hình 6.7: Robot kiểu tọa độ cầu

Robot kiểu hệ tọa độ góc : ( hệ tọa độ phỏng sinh): đây là kiểu robot đƣợc sử dụng nhiều hơn cả. Ba chuyển động đầu tiển là các chuyển động quay, trục quay thứ nhất vuông góc với 2 trục kia. Các chuyển động định hƣớng khác cũng là chuyển động quay. Vùng làm việc của tay máy này gần giống một phần khối cầu. Tất cả các khâu đều nằm trong mặt phẳng thẳng đứng nên các tính toán cơ bản là bài toán phẳng. Ƣu điểm của loại robot là hoạt động theo hệ tọa độ góc là gọn nhẹ, tức là có vùng làm việc lớn hơn so với kích cỡ của bản than robot, độ linh hoạt cao.

Các robot hoạt động theo hệ tọa độ góc nhƣ : robot PUMA của hãng Unimation – Nokia ( Hoa Kỳ - Phần Lan ), IRb – 6 ( Thụy Điển ) , Toshiba , Mittsubishi, Mazak (Nhật Bản)….

Ví dụ một robot hoạt động theo hệ tọa độ góc ( hệ tọa độ phỏng sinh) có cấu hình

Một phần của tài liệu HỌ VI ĐIỀU KHIỂN PIC VÀ VI ĐIỀU KHIỂN PIC18F67J60 (Trang 71)