Các thành phần chính của hệ thống xử lý ảnh

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu ứng dụng công nghệ mạng nơron tế bào vào bài toán phân đoạn ảnh (Trang 28 - 33)

Theo quan điểm của hệ thống xử lý trên máy tính số, hệ thống gồm các đầu đo (thu nhận ảnh); bộ số hóa ; máy tính số; Bộ hiển thị; Bộ nhớ.

Một hệ thống xử lý ảnh cơ bản có thể gồm: máy tính cá nhân kèm theo vỉ mạch chuyển đổi đồ hoạ VGA hoặc SVGA, đĩa chứa các ảnh dùng để kiểm tra các thuật toán và một màn hình có hỗ trợ VGA hoặc SVGA.

- VGA: là độ phân giải hiển thị 640 pixel (điểm ảnh) chiều ngang và 480 pixel chiều dọc khung hình. VGA cho tổng số 307.000 điểm ảnh độc lập trên toàn bộ khung hình.

- SVGA: là độ phân giải hiển thị 800 pixel (điểm ảnh) chiều ngang và 600 pixel chiều dọc khung hình. SVGA cho tổng số 480,000 điểm ảnh độc lập trên toàn bộ khung hình.

1.3. Ngôn ngữ Matlab

1.3.1. Giới thiệu chung về Matlab

Đầu đo Bộ số hóa Máy tính số Bộ nhớ

Matlab là một công cụ tính toán trong kỹ thuật, đặc biệt là các bài toán về ma trận. Matlab còn cung cấp các toolboxes chuyên dụng để giải quyết những vấn đề cụ thể như là xử lý ảnh, xử lý ảnh số tín hiệu, mô phỏng,...

Matlab cung cấp Image Processing toobox, chuyên về xử lý ảnh. Có thể nói Matlab là một công cụ lợi hại giúp cho việc thực hiện các giải thuật xử lý ảnh nhanh chóng và dễ hiểu.

Matlab tạo điều kiện thuận lợi cho: - Các khoá học về toán học.

- Các kỹ sư, các nhà nghiên cứu khoa học.

- Dùng Matlab để tính toán, nghiên cứu tạo ra các sản phẩm tốt nhất trong sản xuất.

1.3.2. Ngôn ngữ lập trình Matlab và ứng dụng trong mô phỏng

Hệ thống giao diện của Matlab được chia thành 5 phần:

- Môi trường phát triển: Đây là nơi đặt các thanh công cụ, các phương tiện giúp sử dụng các lệnh và các file, ta có thể liệt kê một số như sau.

- Desktop.

- Command Window. - Command History.

- Browsers for viewinghelp.

Thư viện, các hàm toán học bao gồm các cấu trúc như tính tổng, sin cosin atan, atan2 etc..., các phép tính đơn giản đến các phép tính phức tạp như tính ma trận nghịch đảo, trị riêng, chuyển đổi fourier, laplace, symbolic library.

Ngôn ngữ Matlab, đó là các ngôn ngữ cao về ma trận và mảng, với các dòng lệnh, các hàm, cấu trúc dữ liệu vào, có thể lập trình hướng đối tượng.

Đồ hoạ trong Matlab. Bao gồm các câu lệnh thể hiện đồ họa trong môi trường 2D và 3D, tạo các hình ảnh chuyển động, cung cấp các giao diện tương tác giữa người sử dụng và máy tính.

Giao tiếp với các ngôn ngữ khác. Matlab cho phép tương tác với các ngôn ngữ khác như C, Fortran

1.3.3. Các công cụ để cài đặt mô phỏng tính toán 1.3.3.1. Đọc và ghi dữ liệu ảnh 1.3.3.1. Đọc và ghi dữ liệu ảnh

- Đọc một ảnh đồ hoạ

Hàm imread đọc một ảnh từ bất kỳ định dạng nào được trợ giúp trong bất kỳ chiều sâu bit nào được trợ giúp. Hầu hết các file ảnh sử dụng 8 bit để chứa giá trị của pixel. Khi chúng được đọc vào bộ nhớ, Matlab chứa chúng dưới dạng uint8. Với các file trợ giúp 16 bít dữ liệu, PNG và TIFF, Matlab chứa chúng dưới dạng uint16.

- Đọc nhiều ảnh từ một file đồ hoạ

Matlab trợ giúp một số định dạng file đồ hoạ chẳng hạn như: HDF và TIFF, chúng chứa nhiều ảnh. Theo mặc định, imread chỉ trợ giúp ảnh đầu tiên trong file. Để nhập thêm các ảnh từ file, sử dụng cú pháp được trợ giúp bởi định dạng file. Chẳng hạn, khi được sử dụng với TIFF, ta có thể sử dụng một giá trị chỉ số với imread để chỉ ra ảnh mà ta muốn nhập vào.

Khi file chứa nhiều ảnh theo một số kiểu nhất định chẳng hạn theo thứ tự thời gian, ta có thể lưu ảnh trong Matlab dưới dạng mảng 4 chiều. Tất cả các ảnh phải có cùng kích thước.

- Ghi một ảnh đồ hoạ

Hàm imwrite sẽ ghi một ảnh tới một file đồ hoạ dưới một trong các định dạng được trợ giúp. Cấu trúc cơ bản nhất của imwrite sẽ yêu cầu một biến ảnh và tên file. Nếu ta gộp một phần mở rộng trong tên file, Matlab sẽ nhận ra định dạng mong muốn từ nó.

- Chỉ ra định dạng phụ - Tham số đặc biệt

Khi sử dụng imwrite với một số định dạng đồ hoạ, ta có thể chỉ ra các tham số phụ. Chẳng hạn, với định dạng PNG ta có thể chỉ ra độ sâu bit như một tham số phụ.

Để biết thêm các cấu trúc khác của hàm xem phần trợ giúp trực tuyến của Matlab.

- Đọc và ghi ảnh nhị phân theo định dạng 1 bit

Trong một số định dạng file, một ảnh nhị phân có thể được lưu trong một định dạng 1 bit. Nếu định dạng file trợ giúp nó, Matlab ghi ảnh nhị phân như ảnh 1 bit theo mặc định. Khi ta đọc một ảnh nhị phân với định dạng 1 bit, Matlab đại diện nó trong không gian làm việc như một mảng lôgic.

1.3.3.2. Lớp lƣu trữ của file matlab

Hàm imwrite sử dụng luật sau đây để quyết định lớp lưu trữ được sử dụng trong ảnh kết quả:

- Logical: Nếu định dạng ảnh ra được chỉ rõ là trợ giúp ảnh 1 bit, hàm imwrite tạo một file ảnh 1 bit. Nếu định dạng ảnh ra được chỉ rõ là không trợ giúp ảnh 1 bit (như JPEG), hàm imwrite chuyển ảnh tới một ảnh thuộc lớp uint8.

- Uint8: Nếu định dạng ảnh ra được chỉ rõ là trợ giúp ảnh 8 bit, hàm imwrite tạo một ảnh 8 bit

- Uint16: Nếu định dạng ảnh ra được chỉ rõ trợ giúp ảnh 16 bit (PNG hoặc TIFF), hàm imwrite tạo một ảnh 16 bit. Nếu định dạng ảnh ra không trợ giúp ảnh 16 bit, hàm chuyển đổi dữ liệu ảnh tới lớp uint8 và tạo một ảnh 8 bit. - Double: Matlab chuyển dữ liệu ảnh tới dạng uint8 và tạo một ảnh 8 bit bởi vì hầu hết các file ảnh sử dụng định dạng 8 bit.

Hàm imfinfo cho phép ta có thể nhận được thông tin về một file ảnh được trợ giúp bởi toolbox.

Cú pháp: imfinfo(filename,fmt)

Các thông tin được cung cấp bởi hàm imfinfo là: filename, filemodedate, filesize, format, formatversion, width, height, bitdepth, colortype … Thông tin mà ta nhận được phụ thuộc vào kiểu của file nhưng nó luôn bao gồm những thông tin sau:

- Tên của file ảnh. - Định dạng file ảnh.

- Số version của định dạng file. - Ngày sửa đổi file gần nhất. - Kích thước file tính theo byte. - Chiều rộng ảnh tính theo pixel. - Chiều cao ảnh tính theo pixel. - Số lượng bít trên một pixel. - Kiểu ảnh: RGB, chỉ số …

1.3.3.4. Hiển thị ảnh

Để hiển thị một ảnh sử dụng hàm imview, dùng hàm imview, chỉ rõ ảnh mà ta muốn hiển thị. Ta có thể sử dụng imview để hiển thị một ảnh mà đã được nhập vào trong không gian làm việc của Matlab.

moonfig = imread('moon.tif'); imview(moonfig);

File ảnh phải có mặt trong thư mục hiện tại hoặc trong đường dẫn của Matlab. Cấu trúc này có thể hữu ích cho việc quét qua nhiều ảnh. Tuy nhiên, lưu ý, khi sử dụng cấu trúc này, dữ liệu ảnh không được lưu trong không gian làm việc của Matlab.

Candy là phần mềm sử dụng hỗ trợ để cài đặt, kiểm thử phần mềm

- Cài đặt Candy

- Bước 1: Cài đặt Candy

Vào link website (http://www-inst.eecs.berkeley.edu/~ee129/) tải phần cài đặt, lưu lại vào máy tính.

Click “Candy_Setup.exe” và tiến hành cài đặt.

- Bước 2: Chạy ứng dụng;

Giao diện chính của Candy

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu ứng dụng công nghệ mạng nơron tế bào vào bài toán phân đoạn ảnh (Trang 28 - 33)

Tải bản đầy đủ (PDF)

(80 trang)