Hiển thị hình ảnh dạng lưới

Một phần của tài liệu Nghiên cứu thuật toán filterwrapper tìm tập rút gọn của bảng quyết định không đầy đủ và ứng dụng phát hiện tàu thuyền từ ảnh vệ tinh. (Trang 71)

Người dùng có thể xem các hình ảnh phía trước hoặc phía sau dưới dạng lưới bằng cách nhấn nút Ảnh trước, Ảnh sau.

Sau khi đã chọn được độ dài cạnh ô vuông hợp lý, người dùng ấn vào nút Phân tách hình ảnh, lúc này một thư mục mới được sinh ra chứa tồn bộ hình ảnh sau khi

đã phân tách. Tên thư mục được đặt theo cấu trúc <tên thư mục ảnh được

chọn>_<kích thước cửa sổ>. Ví dụ, người dùng chọn thư mục có tên “train”, hình

ảnh sau khi phân tách sẽ được lưu tại thư mục “train_80” Phần 2: Gán nhãn dữ liệu

Chọn Tiền xử lý dữ liệu > Gán nhãn dữ liệu Giao diện ban đầu của tác vụ gán nhãn dữ liệu:

Hình 3.7. Giao diện của tác vụ Gán nhãn dữ liệu

Các thành phần chính:

- Chọn thư mục: Người dùng lựa chọn thư mục hình ảnh được phân tách thực

hiện từ bước Nạp dữ liệu.

- Nhãn: Nhãn dữ liệu hình ảnh, người dùng nhập 1 nếu hình ảnh chứa tàu -

thuyền, người dùng nhập 0 nếu hình ảnh khơng có tàu - thuyền.

- ID: Số thứ tự của hình ảnh đang hiển thị trên màn hình so với các hình ảnh

khác trong thư mục mà người dùng chọn tại mục Chọn thư mục.

- Lưu: Lưu nhãn mà người dùng vừa nhập tại mục Nhãn vào tệp txt.

- Cửa sổ trước: Màn hình sẽ hiển thị hình ảnh có ID nhỏ hơn một đơn vị so

với hình ảnh đang hiển thị trên màn hình hiện tại.

- Cửa sổ sau: Màn hình sẽ hiển thị hình ảnh có ID lớn hơn một đơn vị so với

hình ảnh đang hiển thị trên màn hình hiện tại.

- Tìm kiếm: Chức năng tìm kiếm hình ảnh theo ID, người dùng nhập giá trị ID

và nhấn nút Tìm kiếm, màn hình sẽ hiển thị hình ảnh và thơng tin nhãn của hình ảnh tương ứng với ID mà người dùng vừa nhập.

- Trở về màn hình chính: Khi nhấn vào nút này, màn hình tiền xử lý dữ liệu sẽ

đóng lại và màn hình chính sẽ hiện ra.

Trên màn hình hiện ra, thực hiện chọn thư mục chứa hình ảnh đã được phân tách

ở Phần 1. Nhập đường dẫn chứa hình ảnh bằng cách nhấn vào nút và chọn đường dẫn mong muốn. Màn hình sẽ hiển thị như sau:

Hình 3.8. Gán nhãn cho từng ơ lưới

Hình ảnh gốc ban đầu sẽ được hiển thị dưới dạng lưới (các đường kẻ màu

trắng), ơ vng màu đỏ thể hiện việc hình ảnh đã được phân tách tương ứng với vị trí

ơ vng đỏ cần được người dùng gán nhãn.

Người dùng thực hiện nhập dữ liệu vào ơ Nhãn với 1 nếu hình ảnh trong ô vuông màu đỏ chứa tàu - thuyền hoặc 0 nếu trong ô vuông màu đỏ không chứa tàu - thuyền. Sau khi nhập nhãn xong, người dùng cần ấn nút Lưu để lưu lại thông tin vừa

nhập. Thực hiện việc gán nhãn cho các hình ảnh cịn lại bằng cách nhấn vào nút Cửa sổ trước và Cửa sổ sau để chuyển tới ảnh trước đó và ảnh sau đó.

Người dùng có thể tìm kiếm nhanh hình ảnh với ID của hình ảnh. Nhập số ID của hình ảnh cần tìm kiếm, sau đó nhấn nút Tìm kiếm, trên màn hình sẽ hiện ra hình ảnh và thơng tin tương ứng với ID mà người dùng vừa nhập.

Phần 3: Chuyển đổi thành dư liệu thuộc tính Chọn Tiền xử lý dữ liệu > Hiển thị thuộc tính

Giao diện ban đầu của tác vụ Hiển thị thuộc tính.

Hình 3.9. Giao diện của tác vụ Hiển thị thuộc tính

Các thành phần chính:

- Chọn thư mục: Người dùng chọn thư mục chứa hình ảnh và tệp txt chứa

nhãn của hình ảnh tương ứng.

- Hiển thị thuộc tính: Màn hình sẽ hiện ra một bảng dữ liệu chứa thơng tin của

hình ảnh. Bảng dữ liệu gồm n hàng và m cột. Trong đó: n là số lượng hình ảnh có trong thư mục mà người dùng chọn, m là số lượng thuộc tính ứng với mỗi hình ảnh.

- Lưu: Lưu bảng giá trị thuộc tính vừa hiển thị trên màn hình dưới dạng csv.

- Trạng thái: Đưa ra trạng thái của chương trình khi thực hiện một nhiệm vụ

nào đó.

- Trở về màn hình chính: Khi nhấn vào nút này, màn hình tiền xử lý dữ liệu sẽ

đóng lại và màn hình chính (mục 3.2) sẽ hiện ra.

Trên màn hình hiện ra, thực hiện chọn thư mục chứa hình ảnh và nhãn đã được hoàn thành ở phần Gán nhãn dữ liệu. Nhập đường dẫn bằng cách nhấn vào nút

và chọn đường dẫn mong muốn. Sau khi nhập đường dẫn xong, người dùng nhấn nút Hiển thị thuộc tính, trên màn hình sẽ hiển thị như sau:

Hình 3.10. Bảng thuộc tính của dữ liệu hình ảnh

Sau khi trích xuất thuộc tính xong, bảng hiển thị thuộc tính sẽ hiện ra. Người dùng thực hiện lưu giá trị các thuộc tính trong bảng vào tệp csv bằng cách nhấn nút Lưu.

Tên của tệp csv được lưu theo định dạng list_features_<tên thư mục chứa ảnh đã

phân tách>.csv Ví dụ, người dùng chọn thư mục chứa ảnh đã phân tách có tên là

3.4.2 Huấn luyện mơ hình

Nhiệm vụ chính của tác vụ này là sử dụng các dữ liệu vừa được tạo ra từ tác vụ

Tiền xử lý dữ liệu để thực hiện huấn luyện mơ hình. Trong Huấn luyện mơ hình có 3

mục chính:

+ Rút gọn thuộc tính + Huấn luyện mơ hình + Kiểm thử mơ hình

Hình 3.11. Các thành phần trong Huấn luyện mơ hình

Phần 1: Rút gọn thuộc tính

Chọn Huấn luyện mơ hình > Rút gọn thuộc tính Giao diện chính của tác vụ Rút gọn thuộc tính

Hình 3.12. Giao diện của tác vụ Rút gọn thuộc tính

Các thành phần chính:

- Chọn tệp csv: Người dùng chọn tệp csv chứa thơng tin thuộc tính được sinh

ra tại phần Hiển thị thuộc tính.

- Hiển thị thuộc tính: Hiển thị thông tin trong tệp csv mà người dùng chọn

- Rút gọn thuộc tính: Thực hiện thuật tốn rút gọn số lượng thuộc tính so với

ban đầu. Mục đích: giảm khối lượng tính tốn, giảm thời gian xử lý các thuật tốn và đảm bảo vẫn giữ được các giá trị thuộc tính quan trọng.

- Lưu: Lưu các giá trị thuộc tính sau khi đã thực hiện rút gọn thuộc tính dưới

dạng tệp csv và lưu giá trị vị trí quan trọng dưới dạng tệp csv.

- Trạng thái: Đưa ra trạng thái của chương trình khi thực hiện một nhiệm vụ

nào đó.

- Trở về màn hình chính: Khi nhấn vào nút này, màn hình tiền xử lý dữ liệu sẽ

đóng lại và màn hình chính sẽ hiện ra.

Trên màn hình hiện ra, người dùng thực hiện chọn tệp csv chứa các giá trị thuộc tính đã được lưu trong bước Tiền xử lý dữ liệu. Nhập đường dẫn bằng cách nhấn vào

nút và chọn đường dẫn mong muốn. Sau khi nhập đường dẫn xong, trên màn hình hiện lên 2 nút để người dùng chọn:

+ Hiển thị thuộc tính: Hiển thị các giá trị thuộc tính trước khi áp dụng thuật tốn rút gọn thuộc tính.

+ Rút gọn thuộc tính: Hiển thị các giá trị thuộc tính sau khi áp dụng thuật tốn rút gọn thuộc tính, số lượng các thuộc tính sẽ giảm đi so với số lượng thuộc tính ban đầu. Trên màn hình sẽ hiển thị các giá trị thuộc tính theo dạng bảng tương tự như phần Hiển thị thuộc tính trong Bước 1.

Lưu ý: Chương trình sẽ cần một lượng thời gian (tùy thuộc vào độ lớn của lượng dữ liệu thuộc tính cần rút gọn) để thực thi thuật toán rút gọn thuộc tính, người dùng sau khi nhấn nút “Rút gọn thuộc tính” cần chờ đợi để thuật toán thực hiện, tránh việc nhấn nút nhiều lần có thể dẫn đến cách hiện tượng đơ máy, treo máy, …

Sau khi rút gọn thuộc tính xong, người dùng nhấn nút Lưu để thực hiện lưu các giá trị thuộc tính đã được rút gọn vào tệp csv. Tên của tệp csv được lưu theo định dạng

<tên tệp csv ban đầu>_new.csv; Ví dụ người dùng chọn tệp csv ban đầu có tên list_features_train_80.csv thì tệp csv lưu các thuộc tính đã được rút gọn sẽ có tên list_features_train_80_new.csv; Một tệp csv khác cũng được tạo ra để lưu vị trí các

thuộc tính có tính quan trọng cao nhất với định dạng tên <tên tệp csv ban

đầu>_new_index.csv

Phần 2: Huấn luyện mơ hình

Chọn Huấn luyện mơ hình > Huấn luyện mơ hình Giao diện chính của tác vụ Huấn luyện mơ hình

Hình 3.13. Giao diện của tác vụ Huấn luyện mơ hình

Các thành phần chính:

- Chọn tệp csv: Người dùng chọn tệp csv chứa dữ liệu các giá trị thuộc tính sau

khi đã thực hiện rút gọn thuộc tính tại phần Rút gọn thuộc tính.

- Huấn luyện mơ hình: Chương trình sẽ sử dụng dữ liệu trong tệp csv để huấn

luyện mơ hình phân lớp SVM.

- Lưu mơ hình: Lưu mơ hình SVM đã được huấn luyện dưới dạng tệp .sav

- Trạng thái: Đưa ra trạng thái của chương trình khi thực hiện một nhiệm vụ

nào đó.

- Trở về màn hình chính: Khi nhấn vào nút này, màn hình tiền xử lý dữ liệu sẽ

đóng lại và màn hình chính sẽ hiện ra.

Trên màn hình hiện ra, người dùng thực hiện chọn tệp csv chứa các giá trị thuộc

tính đã được rút gọn. Nhập đường dẫn bằng cách nhấn vào nút và chọn đường dẫn mong muốn. Người dùng nhấn nút Huấn luyện mơ hình để thực hiện huấn luyện mơ hình phân lớp SVM với tập thuộc tính vừa chọn ở phần trên, màn hình giao diện sẽ hiển thị như sau:

Hình 3.14. Huấn luyện mơ hình phân lớp

Sau khi huấn luyện mơ hình xong, thơng báo sẽ được hiển thị tại mục Trạng thái Đồ thị biểu diễn sự phân bố của các giá trị thuộc tính trong khơng gian. Trong đó chấm màu xanh tương ứng với nhãn 1 (có tàu thuyền) và chấm màu đỏ tương ứng với nhãn 0 (khơng có tàu thuyền).

Người dùng thực hiện lưu mơ hình SVM vừa huấn luyện được bằng cách nhấn vào nút

Lưu mơ hình. Tên của tệp lưu mơ hình SVM vừa huấn luyện có định dạng <tên tệp

csv chứa thuộc tính đã rút gọn>.sav; Ví dụ người dùng chọn tệp chứa dữ liệu đầu vào

cho mơ hình SVM có tên là list_features_train_80_new.csv thì tên mơ hình được lưu sẽ có tên list_features_train_80_new.sav

Phần 3: Kiểm thử mơ hình

Chọn Huấn luyện mơ hình > Kiểm thử mơ hình Giao diện chính của tác vụ Kiểm thử mơ hình

Hình 3.15. Giao diện của tác vụ Kiểm thử mơ hình

Các thành phần chính:

- Chọn thư mục ảnh: Người dùng chọn thư mục chứa hình ảnh với nhiệm vụ

kiểm tra độ chính xác của mơ hình SVM

- Chọn tệp csv vị trí: Người dùng chọn tệp csv chứa giá trị các vị trí quan

trọng của chuỗi các thuộc tính

- Chọn mơ hình SVM: Người dùng chọn mơ hình SVM được lưu tại phần Huấn luyện mơ hình.

- Chạy mơ hình: Thực hiện kiểm thử độ chính xác của mơ hình SVM trên tập

dữ liệu được lựa chọn tại mục Chọn thư mục hình ảnh

- Trạng thái: Đưa ra trạng thái của chương trình khi thực hiện một nhiệm vụ

nào đó.

- Trở về màn hình chính: Khi nhấn vào nút này, màn hình tiền xử lý dữ liệu sẽ

đóng lại và màn hình chính sẽ hiện ra.

Trên màn hình hiện ra, người dùng thực hiện chọn các mục sau:

- Chọn thư mục ảnh: Người dùng chọn thư mục chứa hình ảnh kiểm thử (đã

kiểm thử này, người dùng cần thực hiện các bước tương tự trong mục Tiền xử

lý dữ liệu > Nạp dữ liệu và Tiền xử lý dữ liệu > Gán nhãn dữ liệu.

- Chọn tệp csv vị trí: Người dùng thực hiện chọn tệp csv chứa thơng tin vị trí

của các thuộc tính quan trọng được tạo ra tại mục Rút gọn thuộc tính.

- Chọn mơ hình SVM: Người dùng chọn tệp lưu mơ hình SVM được lưu ở

phần Huấn luyện mơ hình. Người dùng nhấn nút Chạy mơ hình để thực hiện kiểm thử độ chính xác của mơ hình phân lớp SVM với tập thuộc tính mới được tạo ra từ mục Chọn thư mục ảnh, màn hình giao diện sẽ hiển thị như sau:

Hình 3.16. Giao diện Kiểm thử mơ hình phân lớp

Sau khi quá trình kiểm thử thực hiện xong, tại phần Trạng thái sẽ hiển thị độ chính xác của mơ hình SVM với tệp dữ liệu mới. Đồ thị biểu diễn sự phân bố của các giá trị thuộc tính trong khơng gian. Trong đó chấm màu xanh tương ứng với nhãn 1 (có tàu thuyền) và chấm màu đỏ tương ứng với nhãn 0 (khơng có tàu thuyền).

3.4.3 Thực thi mơ hình

Nhiệm vụ chính của tác vụ này là sử dụng mơ hình SVM để đưa ra dự đốn có tàu - thuyền hay khơng có tàu - thuyền trên hình ảnh. Trong “Thực thi mơ hình” chỉ có 1

mục chính:

Hình 3.17. Các thành phần trong Dự đốn tàu thuyền

Chọn Thực thi mơ hình > Dự đốn tàu thuyền Giao diện chính của tác vụ Dự đốn tàu thuyền:

Các thành phần chính:

- Chọn ảnh: Người dùng chọn hình ảnh cần dự đốn có tàu thuyền hay khơng.

- Chọn mơ hình: Người dùng chọn mơ hình SVM

- Chọn csv vị trí: Người dùng chọn tệp csv chứa giá trị các vị trí quan trọng

trong tập thuộc tính của các hình ảnh.

- Hiển thị lưới: Màn hình sẽ hiện ra các ơ lưới với kích thước bằng với kích

thước của hình ảnh được sử dụng để huấn luyện mơ hình SVM.

- Hiển thị thuộc tính: Màn hình sẽ hiện ra một bảng dữ liệu chứa thơng tin của

hình ảnh. Bảng dữ liệu gồm n hàng và m cột. Trong đó: n là số lượng hình ảnh có trong thư mục mà người dùng chọn, m là số lượng thuộc tính ứng với mỗi hình ảnh.

- Dự đốn nhãn: Sử dụng mơ hình SVM đã có để đưa ra dự đốn có tàu hay

khơng có tàu trên hình ảnh.

- Thơng tin dự đốn: Hiển thị thơng tin “Có tàu” nếu mơ hình dự đốn trên

hình ảnh có tàu - thuyền hoặc hiển thị thơng tin “Khơng có tàu” nếu mơ hình dự đốn trên hình ảnh khơng có tàu - thuyền.

- Trở về màn hình chính: Khi nhấn vào nút này, màn hình tiền xử lý dữ liệu sẽ

đóng lại và màn hình chính (mục 3.2) sẽ hiện ra.

Trên màn hình hiện ra, người dùng thực hiện chọn các tệp và hình ảnh cần thiết:

- Chọn ảnh: Chọn hình ảnh mà người dùng muốn xác định trên ảnh đó có tàu

thuyền hay khơng.

- Chọn mơ hình: Chọn mơ hình SVM được lưu ở phần Huấn luyện mơ hình.

- Chọn csv vị trí: Chọn tệp csv chứa thơng tin vị trí của các thuộc tính quan

trọng được tạo ra tại phần Rút gọn thuộc tính.

Sau khi nhập đầy đủ 3 thơng tin trên, 3 nút sẽ được bật trên màn hình:

- Hiển thị lưới: Hình ảnh sẽ được chia thành các ô lưới với độ dài mỗi ô bằng

với kích thước hình ảnh được sử dụng để huấn luyện mơ hình svm.

- Hiển thị thuộc tính: Một cửa sổ sẽ hiện ra, trên cửa sổ này hiển thị một bảng

các thuộc tính của hình ảnh mà người dùng chọn để dự đoán.

- Dự đoán nhãn: Khi người dùng nhấn vào nút này, chương trình sẽ sử dụng

mơ hình SVM để đưa ra dự đốn có tàu hay khơng có tàu trên mỗi ơ lưới của hình ảnh ban đầu. Chương trình dừng lại khi phát hiện ơ lưới nào đó được dự đốn là có tàu - thuyền và đưa ra thơng báo là “Có tàu”. Ngược lại, nếu tất cả các ơ

lưới đều được dự đốn là khơng có tàu - thuyền thì chương trình sẽ đưa ra thơng báo là “Khơng có tàu” tại mục Thơng tin dự đốn

Hình 3.19. Dự đốn tàu thuyền

Tập dữ liệu kiểm thử gồm 400 hình ảnh, trong đó có 200 ảnh có tàu và 200 ảnh

Một phần của tài liệu Nghiên cứu thuật toán filterwrapper tìm tập rút gọn của bảng quyết định không đầy đủ và ứng dụng phát hiện tàu thuyền từ ảnh vệ tinh. (Trang 71)

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

(92 trang)
w