1. Trang chủ
  2. » Luận Văn - Báo Cáo

NGHIÊN cứu, THIẾT kế hệ THỐNG CẢNH báo NGỦ gật TRÊN XE ô tô

15 487 1

Đ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

Thông tin cơ bản

Định dạng
Số trang 15
Dung lượng 1,71 MB

Nội dung

 Với tất cả những ứng dụng trên thì phương pháp xử lý ảnh trong LabVIEW đều theo lưu đồ sau: Hình 2.7: Lưu đồ xử lý ảnh trong LabVIEW Hình 2.8: Sơ đồ kết nối các khối xử lý ảnh trong L

Trang 1

CHƯƠNG 2

TỔNG QUAN VỀ LabVIEW

2.1 LabVIEW là gì

LabVIEW (viết tắt của Laboratory Virtual Instrumentation Engineering Workbench) là môi trường ngôn ngữ đồ họa hiệu quả trong việc giao tiếp đa kênh giữ con người, thuật toán và các thiết bị

Gọi LabVIEW là ngôn ngữ đồ học hiệu quả vì về cách thức lập trình, LabVIEW khác với các ngôn ngữ C (hay Python, Basic, vv.) Thay vì sử dụng các từ vựng (từ khóa) cố định, LabVIEW sử dụng các khối hình ảnh sinh động và các dây nối để tạo

ra các lệnh và các hàm như trong hình 2.2 Đặc biệt, LabVIEW rất phù hợp đối với

kỹ sư, nhà khoa học, hay giảng viên Chính vì vậy LabVIEW trở thành một trong những công cụ phổ biến trong các ứng dụng thu thập dữ liệu từ các cảm biến, phát triển các thuật toán, và điều khiển thiết bị tại các phòng thí nghiệm trên thế giới

Hình 2.1: Giao diện LabVIEW

Trang 2

Hình 2.2: Hàm truyền trong LabVIEW

Hình 2.3: Giao diện điều khiển trong LabVIEW

Về ý nghĩa kỹ thuật, LabVIEW cũng được dùng để lập trình ra các chương trình (source code: mã nguồn) trên máy tính tương tự các ngôn ngữ lập trình dựa trên chữ (text – bassed language) như C, Python, Java, Basic, vv

Đồng thời, LabVIEW hỗ trợ các kỹ sư, nhà khoa học và sinh viên, vv Xây dựng (thực thi) các thuật toán một cách nhanh, gọn, sáng tạo, và dễ hiểu nhờ các khối hình ảnh có tính gợi nhớ và cách thức hoạt động theo kiểu dòng dữ liệu (date flow) lần lượt từ trái qua phải Các thuật toán này được áp dụng lên các mạch điện

và cơ cấu chấp hành thực nhờ vào việc kết nối hệ thống thật với LabVIEW thông qua nhiều chuẩn giao tiếp như chuẩn giao tiếp RS232 (giao tiếp qua cổng COM), chuẩn USB, chuẩn giao tiếp mạng TCP/IP, UDP, chuẩn GBIB, Vì vậy LabVIEW

là một ngôn ngữ giao tiếp đa kênh

Trang 3

2.2 Các ứng dụng của LabVIEW

LabVIEW được sử dụng trong các lĩnh vực đo lường, tự động hóa, cơ điện

tử, robotics, vật lý, toán học, sinh học, vật lý, ôtô, Nhìn chung:

- LabVIEW giúp kỹ sư kết nối bất kỳ cảm biến và bất kỳ cơ cấu chấp hành nào với máy tính

- LabVIEW có thể được sử dụng để xử lý các kiểu dữ liệu như tín hiệu tương

tự (analog), tín hiệu số (digital) hình ảnh (vision), âm thanh (audio)

- LabVIEW hỗ trợ các giao thức giao tiếp khác nhau như RS232, RS485, TCP/IP, PCI, PXI, và như vậy

- LabVIEW cũng có thể tạo ra các thực thi độc lập và các thư viện chia sẽ (ví dụ như viên liên kết động DLL), bởi vì LabVIEW là một trình biên dịch 32 – bit

Hình 2.4: Hệ thống đọc code tự động trong các dây chuyền sản xuất

Trang 4

Hình 2.5: Hệ thống quét bằng lưới để phân tích dòng chảy cho sản phẩm nhựa

Hình 2.6: Hệ thống phân loại sản phẩm trong sản xuất của công ty Bosch

Trang 5

 Với tất cả những ứng dụng trên thì phương pháp xử lý ảnh trong

LabVIEW đều theo lưu đồ sau:

Hình 2.7: Lưu đồ xử lý ảnh trong LabVIEW

Hình 2.8: Sơ đồ kết nối các khối xử lý ảnh trong LabVIEW

THU NHẬN ẢNH

(Vision

Acquisition)

XỬ LÝ ẢNH

(Vision Assistant)

XUẤT TÍN HIỆU

(NI VISA)

- Giao tiếp camera,

webcam

- Lựa chọn nguồn

ảnh

- Thiết lập thông số

ảnh

- Chọn thông số

xuất ra

- Lấy tín hiệu từ Vision Acquisition

- Phân tích, chỉnh sửa ảnh

- Trích chọn đặc điểm ảnh

- Chọn thông số xuất ra

- Lấy tín hiệu sau khi xử lý ảnh

- Giao tiếp với mạch điều khiển

- Đưa tín hiệu điều khiển vào cơ cấu chấp hành

Trang 6

2.3 Toolkits thu thập hình ảnh NI Vision Acquisition Software

Việc thu nhận ảnh trong môi trường LabVIEW được thực hiện riêng thông qua module Vision Acquisition Đây là một module mở rộng được lập trình với chức năng thực hiện việc tìm kiếm camera đang liên kết với máy, thu nhận ảnh, xuất ảnh nhận được về môi trường LabVIEW và đưa dữ liệu xuất sang môi trường

xử lý ảnh (Vision Assistant) Trong LabVIEW, module này tương ứng với hàm Vision Acquisititon nằm trong thư viện Vision Express

 Cách lấy hàm Vision Acquisition trong LabVIEW

Hình 2.9: Thực hiện hàm Vision Acquisition

Sau khi lấy hàm Vision Acquisition để lập trình thu nhận ảnh, double click vào

biểu tượng của hàm, giao diện lập trình sẽ mở ra và việc thực thi quá trình thu nhận ảnh được thiết lập hoàn toàn riêng biệt trên module này

Trang 7

Quá trình thu nhận ảnh được thực hiện qua 4 bước:

Hình 2.10: Quá trình thu nhận ảnh trong Vision Acquisition

- Bước đầu tiên: là chọn địa chỉ để lấy ảnh nguồn, Select Acquisition Source Vision Acquisition cho phép thực hiện xử lý ảnh tĩnh, ảnh động (trực tiếp từ camera hoặc lấy từ file video định dạng AVI )

Hình 2.11: Chọn camera hoặc thư mục chứa ảnh

- Bước 2: lựa chọn phương pháp thu thập ảnh, Select Acquisition type , là lựa

chọn cách thức mà phần mềm sẽ lấy ảnh bao gồm: lấy một ảnh, lấy ảnh liên tục, lấy ảnh liên tục sau một khoảng thời gian (lấy mẫu) với mỗi cách thức lấy ảnh, trên LabVIEW sẽ sinh ra kiểu vòng lặp tương ứng

CHỌN ẢNH

NGUỒN

PHƯƠNG PHÁP THU THẬP ẢNH

CÀI ĐẶT THÔNG

SỐ CHO ẢNH

THIẾT LẬP TÍN HIỆU VÀO/RA

Trang 8

Hình 2.12: Lựa chọn phương pháp thu thập ảnh

- Bước 3: cài đặt các thông số cho ảnh thu nhận, Configure Acquisition Setting

, là cài đặt các thông số cho ảnh sẽ thu nhận bao gồm: độ phân giải, chế độ chụp, các thông số về độ sáng, độ tương phản, không gian màu cho ảnh và kiểm tra các

thông số đã cài đặt bằng cách click vào nút test để xem ảnh và quyết định tiếp tục

hoặc quay lại chỉnh sửa các thông số cho thích hợp

Hình 2.13: Cài đặt các thông số thu nhận ảnh

Trang 9

- Bước 4: là bước cuối cùng và là bước quan trọng nhất Tại đây người lập

trình sẽ lựa chọn các thông số để thiết lập đầu vào/ra cho ảnh, Select Control/Indicator Các thông số đầu vào (control) chính là các thông số đã được

cài đặt ở bước 3, khi lựa chọn nó, phần mềm sẽ cho phép sửa chữa các thông số này ngay trên LabVIEW, nghĩa là có thể thay đổi các thông số này mà không cần quay

lại cửa sổ Vision Acquisition Các thông số đầu ra (Indicator) là các yếu tố kết quả

của quá trình thu nhận ảnh mà người lập trình mong muốn lấy ra để tiếp tục xử lý,

trong đó, quan trọng nhất là image out được chọn mặc định vì đây sẽ là yếu tố liên

kết sang module xử lý ảnh và hiển thị ảnh lên trên giao diện khi chạy phần mềm

Hình 2.14: Thiết lập các tín hiệu đầu vào/ra

2.4 Toolkits xử lý ảnh

2.4.1 Vision Development Module (VDM)

Đây là công cụ chung nhất cho việc tạo các hàm truyền xử lý các hình ảnh Ngoài ra VDM còn cho phép người dùng cài đặt thêm các công cụ xử lý ảnh mở rộng thêm từ tất cả nhà cung cấp phần mềm của LabVIEW

Trang 10

Hình 2.15: Các công cụ trong VDM Trong VDM còn cung cấp cho người sử dụng nhiều driver cho các loại camera vision trong các dây chuyền sản xuất Hay rất nhiều công cụ hỗ trợ như:

- Vision Utilities: cung cấp cho người dùng các tiện ích tách màu, sao chép điểm màu, chọn vùng cần phân tích màu,…

- Image Processing: xử lý tất cả các màu và hình ảnh đã phân tích ở công cụ tiện ích

- Machine Vision: cung cấp cho người sử dụng tất cả các công cụ tính năng của các camera vision trong dây chuyền sản xuất như: đếm sản phẩm, tính diện tích bề mặt,…

- Ngoài ra còn có các công cụ của NI nhằm cung cấp cho tất cả dòng sản phẩm

mà công ty NI đang có trên thị trường để tạo nên sự tương thích nhằm nâng cao hiệu suất, tính ổn định trong các dây chuyền tự động hóa

2.4.2 Module Vision Assistant

Sau khi xử lý các hình ảnh bằng VDM thì chúng ta bắt đầu thực hiện các bước tạo code cho các hình ảnh mà ta đã phân tích và xử lý trước đó

Trang 11

Hình 2.16: Thực hiện hàm Vision Assistant

Hình 2.17: Giao diện module Vision Assistant

Ảnh sau khi thu nhận bằng Vision Acquisition sẽ được đưa sang module Vision Assistant để xử lý Đây là bước quan trọng vì toàn bộ các công việc chính của xử lý

ảnh đều tập trung ở đây Xử lý ảnh là bước không chỉ yêu cầu người sử dụng các kỹ năng về lập trình mà còn là vấn đề tư duy để giải quyết vấn đề chính xác và làm cho chương trình đơn giản nhất vì chương trình càng tinh gọn, tốc độ xử lý càng nhanh

Trong LabVIEW, module này chính là hàm Vision Assistant nằm trong thư viện Vision Express, chung với Vision Acquisition

Trang 12

Tùy vào từng trường hợp, từng đặc điểm cần nhận dạng, từng loại camera mà người lập trình sẽ sử dụng các công cụ khác nhau Tuy nhiên, nhìn chung, quá trình

xử lý ảnh sẽ trải qua các bước:

Đầu tiên, ảnh khi mới đưa vào sẽ có chất lượng không cao, vì vậy, cần phải cải thiện chất lượng hình ảnh để làm đặc điểm cần nhận diện nổi lên rõ nét nhất Tùy vào ứng dụng mà lựa chọn công cụ thích hợp khi nâng cao chất lượng hình ảnh và làm nổi bật đặc điểm nhận dạng bằng cách thay đổi không gian màu Ảnh đầu vào

là một ảnh ở không gian RGB, để nhận dạng chính xác màu của vật thể, ảnh sẽ được chuyển sang một không gian màu khác sao cho đặc điểm của ảnh là nổi bật nhất

Đây là một ví dụ đơn giản để nâng cao chất lượng để làm nổi bật đặc điểm cần nhận dạng Những người có kinh nghiệm lập trình xử lý ảnh với Vision Assistant sẽ

có nhiều cách để cải thiện chất lượng hình ảnh bằng nhiều công cụ khác nhau trong phần mềm

Ảnh đầu vào có màu nâu trong không gian RGB

Hình 2.18: Xử lý ảnh đầu vào Qua ví dụ, có thể nhận thấy ở không gian màu đỏ làm ảnh nổi bật so với không gian màu xanh (vì màu vàng có giá trị đỏ trong không gian RGB cao)

Trang 13

Ảnh đầu vào sau khi chuyển sang không gian màu đỏ RGB-Red Plane

Hình 2.19: Kết quả sau khi xử lý ảnh đầu vào ở không gian đỏ

Ngoài ra, ở bước này cũng cho phép người trích chọn một phần ảnh để nhận diện Đa số ứng dụng trong xử lý ảnh công nghiệp không thực hiện trên toàn bộ ảnh nhận được mà chỉ cần nhận diện một đặc điểm ở một vị trí nào đó của ảnh, vì vậy phần mềm cho phép chọn ra một vùng nào đó gọi là ROI (Region Of Interest) của ảnh để xử lý, điều này không chỉ giúp việc nhận diện được chính xác mà còn giúp giảm dung lượng chương trình giúp chương trình chạy nhanh hơn

Tùy vào công cụ phần mềm sẽ cho phép xử lý trên ảnh có dung lượng lớn hoặc nhỏ, vì vậy phần mềm sẽ có công cụ để nén ảnh hoặc chuyển đổi kiểu ảnh tùy vào đầu vào và đầu ra của mỗi bước trong quá trình xử lý

Sau khi làm nổi bật đặc điểm cần nhận dạng, ảnh sẽ được xử lý tùy theo ứng dụng: nhận dạng, đo kích thước, đếm số lượng, nhận dạng chữ viết, đọc mã vạch

mà phần mềm hỗ trợ Và tùy vào bước xử lý sẽ có những nội dung mà người lập trình phải quy định để gán kết luận cho ảnh

Cuối cùng, các giá trị xử lý sẽ được lựa chọn qua bước select control, cũng giống như ở phần thu nhận ảnh, các giá trị của các bước trong quá trình xử lý sẽ được đưa ra để lập trình trên LabVIEW

Trang 14

Lựa chọn yếu tố đầu vào và đầu ra để kiểm soát quá trình xử lý ảnh

Hình 2.20: Chọn lựa tín hiệu đầu ra

2.4.3 Vision Builder for Automated Inspection (VBAI)

Hai công cụ trên đã giúp việc lập trình xử lý ảnh nhanh và hiệu quả cao trong LabVIEW Trong trường hợp bạn cần tạo ứng dụng mà hoàn toàn không muốn lập trình thì VBAI là công cụ để làm việc này

VBAI là một chương trình độc lập với LabVIEW, dùng để tạo ứng dụng xử

lý ảnh hoàn toàn bằng tùy chỉnh Mục tiêu của VBAI là đưa ra ứng dụng kiểm tra tự động hoàn chỉnh, từ thu ảnh đến xử lý đến kết quả (khác với mục tiêu của Vision Assistant là lập trình nghiên cứu và phân tích ý nghĩa từng công việc của xử lý ảnh)

Hình 2.21: Giao diện VBAI

Trang 15

Màn hình làm việc của VBAI khác Vision Assistant ở 3 điểm chính:

 Tích hợp chức năng thu ảnh vào cửa sổ các bước xử lý

 Flowchart tổng quan chương trình: cửa sổ này dùng để ra quyết định

Ví dụ: nếu tìm thấy vật thể A thì làm gì tiếp theo, không thấy A thì làm gì tiếp theo

 Khung các bước xử lý thể hiện các giá trị Pass/Fail và kết quả của từng bước xử lý và kết quả tổng kết

Hình 2.22: Ứng dụng VBAI trong hệ thống xử lý sản phẩm

Ngày đăng: 16/12/2016, 10:34

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w