1
Mô hình dữ liệu GIS (không gian)
BỘ MÔN GIS & TÀI NGUYÊN
Nội dung
Mô hình thông tin- dữ liệu địa lý
Lớp dữ liệu (không gian, thuộc tính)
Mô hình dữ liệu (không gian, thuộc tính)
Mô hình vector
Khái niệm
Cấu trúc dữ liệu: Spaghetti, Topology
Mô hình raster
Khái niệm
Cấu trúc dữ liệu: mã hóa từng ô, mã hóa đoạn chạy
So sánh vector, raster
Ưu điểm
Nhược điểm
Chuyển đổi vector và raster
Vector Raster
Raster Vector
2Mô hình thông tin - dữ liệu địa lý
3
Thế giới thực
Mô hình nhận thức
Mô hình dữ liệu không gian
GIS
n lớp
thông tin Mô hình dữ liệu thuộc tính
Không gian: Mô tả vị trí của đối tượng, có thể là vị trí tương đối (so với đối tượng không gian khác) hoặc vị trí tuyệt đối (so với hệ tọa độ).
Thuộc tính: Mô tả đặc tính của đối tượng.
●
Cặp hàng, cột (pixel)
●
Cặp tọa độ X, Y
Thế giới thực và mô hình dữ liệu không gian
Bản đồ giấy
Bản đồ số
Vector
Raster
4
Điểm
●
Chấm mực
Đường
Vệt mực kéo dài
Vùng
Vệt mực kéo dài và lấp đầy
Chuỗi tọa độ X, Y Chuỗi tọa độ X, Y tạo thành đường bao
Chuỗi pixel Chuỗi pixel trong đường bao
Điểm
Một cặp tọa độ (x, y)
0D
Đường
Chuỗi các điểm có thứ tự với 2 điểm đầu, cuối không trùng nhau, có thể có điểm trung gian
1D (chiều dài)
Vùng
Các đường kết nối không trùng nhau nhưng có chung 2 điểm đầu, cuối
Chuỗi các điểm có thứ tự với 2 điểm đầu, cuối trùng nhau, có ít nhất 1 điểm trung gian
2D (chiều dài, chiều rộng)
Mô hình vector
Thể hiện các đối tượng rời rạc (có ranh giới tách biệt rõ ràng ngoài thực tế) sử dụng 3 phần tử hình học.
5
● 1 (x1, y1) 1
●
2
● (x4, y4) (x1, y1)
(x2, y2) (x3, y3) I
● ●
1
●
2
● I
II A
● ●
●
● ● 1≡2
● III
B
● ●
●
● ●
●
Thế giới thực và mô hình vector
6
Thế giới thực
Mô hình vector
Trong không gian lớp học, cái gì là rời rạc?
7
Mô hình vector
Đối tượng dạng điểm
8
Mô hình vector
Đối tượng dạng đường
9
Mô hình vector
Đối tượng dạng vùng
10
Mô hình vector
Tỉ lệ bản đồ xác định kích thước và hình dạng của các đối tượng.
11
Mô hình vector
12
Điểm ↔ Vùng
Mô hình vector
13
Đường ↔ Vùng
Mô hình vector
Tỉ lệ bản đồ (M) Kích thước thực tế nhỏ nhất (L) 1/500 500 x 0,5 mm = 250 mm = 0,25 m
1/24.000 24.000 x 0,5 mm = 12.000 mm = 12 m 1/250.000 250.000 x 0,5 mm = 125.000 mm = 125 m
… …
1/M M x 0,5 mm = L
14
0,5 mm là khoảng cách nhỏ nhất mà mắt người có thể phân biệt 2 điểm riêng biệt.
Một đối tượng hình chữ nhật với chiều dài 10 m, chiều rộng 5 m có thể được thể hiện dưới dạng điểm, đường, vùng trong mô hình vector theo các tỉ lệ khác nhau.
1/20.000 1/10.000
Vùng
≥ 1/10.000 Điểm
< 1/20.000
Đường
[1/20.000; 1/10.000)
.
L
min/ 0,5 mm = 5 m/ 0,5 mm L
max/ 0,5 mm = 10 m/ 0,5 mm
Tỉ lệ bản đồ
Bài tập 1
Cho một thửa đất hình vuông với kích thước thực tế là 250 m x 250 m. Biết mắt người có thể phân biệt 2 điểm riêng biệt với khoảng cách nhỏ nhất là 0,5 mm.
Trong mô hình vector, hãy xác định cách thể hiện phù hợp cho thửa đất trên theo tỉ lệ bản đồ?
Ở tỉ lệ bản đồ 1/1.000, thửa đất trên sẽ được thể hiện dưới dạng điểm, đường hay vùng trong mô hình vector?
15
Hết giờ (5 phút)
Mô hình vector
Cấu trúc dữ liệu Spaghetti
Điểm mã hóa bởi một cặp tọa độ x, y
Đường mã hóa bởi một chuỗi cặp tọa độ x, y
Vùng mã hóa bởi một chuỗi cặp tọa độ x, y với điểm đầu và điểm cuối trùng nhau
17
. 10 . 20
1 2 30
40
Đối tượng Mã số Vị trí
Điểm 10 1 1
20 2 4
Đường 1 5 0,5 7 0,7
2 6 1,5 7 1,7 8 6
Vùng 30 3 5,5 3 6,5 4 6,5 4 5,5 3 5,5 40 3 2 3,2 4,5 6 1,8 3 2
Hệ tọa độ Oxy Cấu trúc Spaghetti
Spaghetti?
Bài tập 2
Cho cấu trúc dữ liệu Spaghetti như bảng dưới đây. Hãy phác họa các đối tượng trên trong hệ tọa độ Oxy?
18
Đối tượng Mã số Vị trí
Điểm 1 1 3
2 2 4
Đường 3 1 2 3 4
4 6 5 5 1 3 0 5 3 5 3 6 4 6
Vùng 6 3 2 4 2 4 4 3 2
7 1 0 1 1 3 2 3 0 1 0
Hết giờ (5 phút)
x
y
O
Mô hình vector
Cấu trúc dữ liệu Spaghetti
Ưu điểm:
Cấu trúc đơn giản hiển thị, in ấn đối tượng dễ dàng.
Nhược điểm:
Cạnh của các vùng lân cận được lưu trữ hơn 1 lần dư thừa dữ liệu, biên tập dữ liệu không nhất quán.
Quan hệ không gian giữa các đối tượng không được mã hóa phân tích dữ liệu khó khăn.
20
1●
2●
3●
4●
● 1
● 2
● 3
● 4 A+
+C
+B +D
E+
x
y I
II
Đối tượng Mã số Vị trí
Vùng I 3 1 4 3,5 2 2,5 3 1
II 1,5 1 3 1 2 2,5 0,5 2,5 1,5 1
. N3 . N2
Mô hình vector
Cấu trúc dữ liệu Topology
Tọa độ đường lưu trữ tọa độ của các đường
Topology vùng lưu trữ các đường tạo nên vùng
Topology nút lưu trữ các nút tạo nên đường
Topology đường lưu trữ quan hệ giữa nút, vùng với đường
21
A
Đường X, Y đầu X, Y trung gian X, Y cuối
a1 2 3 1 1
a2 1 1 4 2 2 3
a3 2 3 3 5; 5 4 4 2
Hệ tọa độ Oxy Cấu trúc Topology
Tọa độ đường
a1 N1 .
a2 a2 N4 . a3
. N5
a3 a3
Vùng Đường
A a1, a2
B a3
Topology vùng
B
Nút Đường
N1 a1, a2, a3 N2 a1, a2 N3 a2, a3
N4 a3
N5 a3
Topology nút
Đường Nút bắt đầu
Nút kết thúc
Vùng bên trái
Vùng bên phải
a1 N1 N2 A
a2 N2 N1 A B
a3 N1 N3 B
Topology đường
Topology?
Nhược điểm:
Cấu trúc phức tạp hiển thị, in ấn đối tượng khó khăn.
Mô hình vector
Cấu trúc dữ liệu Topology
Ưu điểm:
Cạnh của các vùng lân cận được lưu trữ chỉ 1 lần tối ưu dữ liệu, biên tập dữ liệu nhất quán.
Quan hệ không gian giữa các đối tượng được mã hóa phân tích dữ liệu đơn giản.
22
1●
2●
3●
4●
● 1
● 2
● 3
● 4 A+
+C
+B +D
E+
x
y a
b
c d
e
f I II
Vùng Đường
I a, b, c
II d, e, f
Topology vùng
Đường Nút bắt đầu
Nút kết thúc
Vùng bên trái
Vùng bên phải
a A D I II
b A B I
c B D I
d A E II
e E C II
f C D II
Topology đường
Mô hình raster
Thể hiện các đối tượng liên tục (không có ranh giới tách biệt rõ ràng ngoài thực tế) sử dụng pixel.
23
Hàng Cột
Pixel
Số hàng
Số cột
Số cột x số hàng
= số pixel
Thế giới thực và mô hình raster
24
Thế giới thực
Mô hình raster
Mô hình raster
25
Trong không gian lớp học, cái gì là liên tục?
26
Mô hình raster
Kích thước pixel
Được xác định cụ thể, không đổi.
Diện tích raster = diện tích pixel x số pixel
Tỉ lệ nghịch với độ chính xác không gian của dữ liệu.
27
Thế giới thực 71 m²
Kích thước 1 m 16 x 16 pixel
73 m²
Kích thước 2 m 8 x 8 pixel
76 m²
Kích thước 4 m 4 x 4 pixel
80 m²
Kích thước pixel tăng dần Độ chính xác không gian giảm dần
Diện tích raster có 5 hàng, 10 cột,
kích thước pixel 20 m là bao nhiêu?
Mô hình raster
Giá trị của pixel
Định lượng (numerical) | Định tính (non-numerical)
Khuyết dữ liệu: NO DATA
28
Có bao nhiêu pixel có giá trị trên 2?
Với kích thước pixel 10 m, diện tích
pixel có giá trị trên 2 là bao nhiêu?
Mô hình raster
Hệ tọa độ
Tọa độ thực được thiết lập ở góc trên bên trái (hệ tọa độ địa lý/ hệ tọa độ chiếu).
29
Hàng Cột
Tọa độ hàng/ cột được đánh tăng dần từ góc trên trái theo chiều trái sang phải, trên xuống dưới (hệ tọa độ hàng cột).
x= 10 y= 10
A ● 1 2 ..
1 2 ..
x
y
Vị trí X Y
Góc trên phải (B)
XA YA+ số cột *
kích thước pixel Góc dưới
trái (C)
XA– số hàng * kích thước pixel
YA
Góc dưới phải (D)
XA– số hàng * kích thước pixel
YA+ số cột * kích thước pixel Tâm pixel
hàng m, cột n (E)
XA– (m – 0,5) * kích thước pixel
YA+ (n – 0,5) * kích thước pixel
●B
●C ●D
●E
Xác định tọa độ hàng cột của điểm E?
Với kích thước pixel 1 m, xác định tọa độ
chiếu của các điểm B, C, D, E?
Bài tập 3
Trong hệ tọa độ Oxy (đơn vị:
km), cho raster thể hiện giá trị độ cao (m) với kích thước pixel 10 km, góc trên bên
trái A (200, 400), xác định:
Số pixel của raster?
Diện tích raster (km²)?
Tọa độ chiếu của 3 góc còn lại (B, C, D)?
Tọa độ chiếu của tâm pixel tại hàng 3, cột 4?
Số pixel có độ cao trên 3 m?
30
Hết giờ (5 phút)
x
y
A B
C D
Mô hình raster
Cấu trúc dữ liệu mã hóa từng ô
Giá trị pixel ghi theo ma trận hàng cột
Áp dụng tốt khi giá trị pixel biến thiên liên tục
Cấu trúc dữ liệu mã hóa đoạn chạy
Giá trị pixel lân cận được gom nhóm
Áp dụng tốt khi giá trị pixel đồng nhất, ít khác biệt
32
A A A A
B C C C
D D A A
Mã hóa từng ô Raster
A A A A B C C C D D A A
Mã hóa đoạn chạy Giá trị Độ dài Hàng
A 4 0
B 1 1
C 3 1
D 2 2
A 2 2
Bài tập 4
Cho raster lưu trữ độ cao như hình bên. Hãy mô tả raster theo cấu trúc dữ liệu mã hóa đoạn chạy?
Cho cấu trúc dữ liệu mã hóa đoạn chạy của raster lưu trữ nhiệt độ như hình bên. Hãy chuyển đổi sang cấu trúc dữ liệu mã hóa từng ô?
33
2 3 1 0
0 0 0 5
5 5 5 5
4 3 3 3
2 2 0 0
Hết giờ (5 phút)
Giá trị Độ dài Hàng
22 3 0
24 1 0
25 2 1
23 2 1
26 4 2
Vector
Cấu trúc dữ liệu phức tạp (Shapefile,…)
Raster
Cấu trúc dữ liệu đơn giản (ASCII GRID,…)
35
Vector
Cấu trúc dữ liệu phức tạp (Shapefile,…)
Dung lượng nhỏ gọn
Raster
Cấu trúc dữ liệu đơn giản (ASCII GRID,…)
Dung lượng khá lớn
36
6 điểm Lưu trữ 6 giá trị 8 pixel Lưu trữ 8 giá trị
Vector
Cấu trúc dữ liệu phức tạp (Shapefile,…)
Dung lượng nhỏ gọn
Thích hợp cho topology
Phù hợp cho quản lý thuộc tính
Raster
Cấu trúc dữ liệu đơn giản (ASCII GRID,…)
Dung lượng khá lớn
Cần thiết cho hình ảnh
Ưu tiên cho phân tích dữ liệu
37
Không gian
IDX,Y X,Y X,Y
…
IDRừng ID Lúa ID Nước
Thuộc tính
…1 Rừng
2 Lúa
3 Nước
Vector
Cấu trúc dữ liệu phức tạp (Shapefile,…)
Dung lượng nhỏ gọn
Thích hợp cho topology
Phù hợp cho quản lý thuộc tính
Chất lượng đồ họa tốt
Raster
Cấu trúc dữ liệu đơn giản (ASCII GRID,…)
Dung lượng khá lớn
Cần thiết cho hình ảnh
Ưu tiên cho phân tích dữ liệu
Chất lượng đồ họa kém
38
Chuyển đổi vector và raster
39
Chuyển đổi vector sang raster
Khai báo kích thước pixel của raster: 1 m, …
Xác định góc trên bên trái của raster: Trùng với điểm giao nhau giữa hai giá trị X lớn nhất và Y nhỏ nhất của vector.
Từ góc trên bên trái, phác họa phạm vi của raster: Chứa toàn bộ vector với hàng cuối và cột cuối chứa ít nhất 1 điểm.
40
x
y 1●
2●
3●
4●
● 1
● 2
● 3
● 4 +A
+C
+B
x
y 1●
2●
3●
4●
● 1
● 2
● 3
● 4 +A
+C
+B
x
y 1●
2●
3●
4●
● 1
● 2
● 3
● 4 +A
+C
+B
+D +D
+E
● ● ●
Chuyển đổi vector sang raster
Ánh xạ các đối tượng vector qua raster
Điểm Pixel:
Tọa độ điểm thuộc pixel nào thì lấy pixel đó.
Nếu điểm thuộc ranh giới nhiều pixel thì lấy theo thứ tự ưu tiên:
pixel trên trái > pixel trên phải > pixel dưới trái > pixel dưới phải.
41
x
y 1●
2●
3●
4●
● 1
● 2
● 3
● 4 +A
+C
+B
Chuyển đổi vector sang raster
Ánh xạ các đối tượng vector qua raster
42
x
y 1●
2●
3●
4●
● 1
● 2
● 3
● 4 +A
+C
+B +D
Đường Chuỗi pixel:
Đường đi qua các pixel nào thì lấy các pixel đó.
Vùng Chuỗi pixel:
Vùng chiếm ≥ ½ diện tích pixel thì lấy pixel đó.
x
y 1●
2●
3●
4●
● 1
● 2
● 3
● 4 +A
+C
+B +D
+E
Bài tập 5
Chuyển sang 3 lớp raster với kích thước pixel 1 m cho 3 lớp vector sau:
Lớp vector điểm chứa A (4, 1), B (3/2, 3/2), C (2, 4)
Lớp vector đường chứa DE với D (3, 3/2), E (0, 4)
Lớp vector vùng chứa FGH với F (3, 2), G (4, 4), H (4, 5/2)
Tất cả tọa độ đều thuộc hệ tọa độ Oxy (đơn vị: m)
43
Hết giờ (5 phút)
x
y
Chuyển đổi raster sang vector
Raster Điểm
Tọa độ tâm của từng pixel thành từng điểm.
Raster Đường
Nối tâm của các chuỗi pixel (cùng giá trị) thành từng đường, ưu tiên khoảng cách gần nhất.
45
x
y 1●
2●
3●
4●
● 1
● 2
● 3
● 4 +A
+C
+B
x
y 1●
2●
3●
4●
● 1
● 2
● 3
● 4 A
C
B
D
Chuyển đổi raster sang vector
Raster Vùng
Nối đường bao của các chuỗi pixel (cùng giá trị) thành từng vùng.
46
x
y 1●
2●
3●
4●
● 1
● 2
● 3
● 4 A
C
B
D
F E
G
Bài tập 6
Trong hệ tọa độ Oxy (đơn vị: m), cho lớp raster chứa giá trị lượng mưa (mm). Giá trị N nghĩa là khuyết dữ liệu.
Chuyển raster trên sang lớp vector dạng điểm theo giá trị lượng mưa. Trả lời các câu hỏi sau:
47
Hết giờ (5 phút)
10 20 20 20 50 10 20 40 N 30 10 20 N 40 30 10 20 20 20 30 10 10 10 0 30
x
y 1●
2●
3●
4●
● 1
● 2
● 3
● 4 5●
● 5 0●
Tổng số điểm trong lớp vector là bao nhiêu?
Có bao nhiêu điểm có lượng mưa 10 mm?
Tọa độ X, Y của điểm có lượng mưa lớn nhất là bao nhiêu?
Tọa độ X, Y của điểm có lượng mưa nhỏ
nhất là bao nhiêu?
Bài tập về nhà
Trong hệ tọa độ Oxy (đơn vị: m), cho lớp raster chứa giá trị lượng mưa (mm). Giá trị N nghĩa là khuyết dữ liệu.
Chuyển raster trên sang lớp vector dạng đường theo giá trị lượng mưa? Tổng số đường trong lớp vector là bao nhiêu?
Chuyển raster trên sang lớp vector dạng vùng theo giá trị lượng mưa? Tổng số vùng trong lớp vector là bao nhiêu?
49
10 20 20 20 30 10 20 40 N 30 10 20 40 40 30 10 20 20 20 30 10 10 10 10 30
x
y 1●
2●
3●
4●
● 1
● 2
● 3
● 4 5●
●
5
0●
Yêu cầu cần đạt
Mô hình vector thể hiện các đối tượng rời rạc sử dụng 3 phần tử hình học: điểm, đường, vùng.
Tỉ lệ bản đồ ảnh hưởng đến việc hiển thị đối tượng dưới dạng điểm, đường, vùng.
Mô hình vector có thể biểu diễn bằng cấu trúc dữ liệu Spaghetti, Topology.
Mô hình raster thể hiện các đối tượng liên tục sử dụng pixel.
Kích thước pixel ảnh hưởng đến độ chính xác không gian của đối tượng.
Mô hình raster có thể biểu diễn bằng cấu trúc dữ liệu mã hóa từng ô, mã hóa đoạn chạy.
Có thể chuyển đổi qua lại giữa vector và raster.
51