Làm Quen Với GEE và Tìm Hiểu Về Dữ Liệu PII

Chạy một đoạn mã ví dụ và xem xét các kết quả

This introductory training is part of the official training materials prepared by the United States Department of Agriculture.

Google Earth Engine làm việc thông qua Giao Diện Trực tuyến của Ứng Dụng JavaScript (API) được gọi là Code Editor. Trên giao diện này, người dùng có thể viết và chạy các tập lệnh/script để chia sẻ và lặp lại các quy trình phân tích cũng như xử lý dữ liệu không gian địa lý. Code Editor giúp người dùng thực hiện toàn bộ các chức năng có trong Earth Engine. Trong bài tập này, chúng ta sẽ bắt đầu tìm hiểu về Code Editor và một số khái niệm cơ bản trong lập trình với JavaScript. Hiểu biết cơ bản về lập trình/coding và JavaScript là yêu cầu đầu tiên để sử dụng Earth Engine.

Chạy script mẫu và tìm hiểu kết quả

1. Click vào tab Scripts tại thanh menu bên trái và expand/mở rộng nhóm script mẫu.

2. Kéo xuống dưới cho đến khi thấy nhóm Image. Click vào biểu tượng đầu mũi tên để mở nhóm này nếu cần thiết.

 

script1.jpg

3. Chọn script/tập lệnh Normalized Difference trong danh sách các mẫu script/tập lệnh (nằm trong nhóm Image). Script/tập lệnh sẽ được copy vào cửa sổ làm việc của Code Editor.
4. Hình dưới đây biểu thị script/tập lệnh sẽ hiện lên trên cửa sổ Code Editor (khu vực giữa màn hình)

 

ndvipanel

Script/Tập Lệnh là gì?

Script/tập lệnh là một chuỗi những chỉ dẫn cho máy tính nhằm thực hiện một quy trình nào đó. Nó cũng giống như công thức nấu ăn – gồm các bước mà đầu bếp sẽ lần lượt làm theo để hoàn thành món ăn. Trong Code Editor mà chúng ta đang làm việc, những chỉ dẫn được viết dưới dạng các câu lệnh theo ngôn ngữ JavaScript. Máy tính sẽ thực hiện lần lượt theo các câu lệnh đó.

Khi script/tập lệnh trở nên phức tạp hơn, nó có thể được so sánh với nội quy lao động hoặc hướng dẫn sử dụng xe hơi. Có rất nhiều thông tin ở đó – tuy nhiên chúng ta chỉ sử dụng một phần thông tin để thực hiện theo, tại một thời điểm nào đó. Ví dụ, nếu người lao động muốn biết cần làm gì khi còi báo cháy ngừng hoạt động – họ không cần phải đọc từ trang mở đầu. Các script/tập lệnh được thiết kế giống như nội quy lao động hoặc hướng dẫn sử dụng xe nhằm giúp người đọc dễ dàng tìm và thực hiện theo một phần thông tin cụ thể nào đó. Trong trường hợp sử dụng script/tập lệnh, người đọc ở đây chính là máy tính không phải người lao động. Và thay vì bảng mục lục và các phụ lục của sách, script/tập lệnh thiết kế các element/phần tử trong đó bao gồm các câu lệnh điều kiện.

 

5. Đọc script/tập lệnh Normalized Difference, từng dòng một (hoặc từng lệnh một) để hiểu tính năng của script/tập lệnh này:
i. Dòng 1 đến 6 là ghi chú hoặc chú thích, lập trình viên đã thêm vào để mô tả về script/tập lệnh. Các dòng chú thích được bắt đầu bằng hai dấu gạch chéo //. Code Editor không chạy các dòng chú thích có ký hiệu này.

ii. Dòng 8 bao gồm 2 phần, khai báo và gán giá trị cho biến, được gọi là img. Giá trị được gán cho biến này là một ảnh MODIS
ee.Image(‘MOD09GA/MOD09GA_005_2012_03_09’).

iii. Dòng 9 giúp thực hiện một số bước, khai báo và gán một giá trị cho biến, gọi là ndvi. Nó còn được gọi là hàm NormalizedDifference của Earth Engine và áp dụng hàm này cho biến “img” được định nghĩa ở dòng 8. Hai band/kênh phổ ảnh “sur_refl_b02” và “sur_refl_b01” là những tham số đầu vào/đối số được sử dụng cho phép tính toán NormalizedDifference. Hai band này tương ứng với band hồng ngoài và band đỏ của ảnh MODIS, như vậy kết quả phép tính toán là một ảnh chỉ số thực vật NDVI (Normalized Difference Vegetation Index). Kết quả ảnh NDVI này được gán cho biến ndvi.

panel2

iv. Dòng 10-12 để khai báo: biến, bảng màu và gán cho biến đó một dãy giá trị màu (các giá trị này thuộc hệ màu: thập lục phân) để biểu diễn kết quả ảnh NDVI. Hệ màu thập lục phân có từ màu trắng (FFFFFF) đến các màu nâu (ví dụ CE7E45), các màu vàng (ví dụ FCD163) đến các sắc màu xanh (ví dụ 529400) cho tới màu tối (011301)

Ghi chú: Bạn có thể đọc thêm về code cho bảng màu thập lục phân tại http://www.colorhexa.com/.

v. Dòng 14 đưa phần trung tâm bản đồ về khu vực nghiên cứu. Các tham số, giá trị trong ngoặc đơn là kinh độ và vĩ độ của thành phố Kansas, Hoa Kỳ; giá trị thứ ba thể hiện mức độ phóng to thu nhỏ của bản đồ.

 

panel3.jpg

vi. Dòng 15-17 thêm dữ liệu vào cửa sổ hiển thị kết quả bản đồ (phần dưới của màn hình). Hai ảnh được đưa vào- biến img, ảnh MODIS nguyên gốc, và biến ndvi, ảnh đã qua phép tính toán normalized difference từ dòng 9. Chúng ta sẽ thảo luận về các thông số của hàm addLayer ở những phần sau trong buổi học này.

6. Click vào Run phía trên bên phải của cửa sổ code editor để chạy script Normalized Difference.

i. Bạn sẽ thấy ảnh MODIS và kết quả ảnh NDVI xuất hiện trên cửa sổ hiển thị kết quả bản đồ (phía dưới cùng màn hình của bạn)

7. Quan sát kết quả trên cửa sổ hiển thị kết quả bản đồ sử dụng các công cụ map viewer

i. Click hoặc Di Chuột vào nút Layers phía góc trên bên phải của sổ hiển thị kết quả bản đồ (như hình sau)

ii. Tắt bật lớp NDVI tại box/ô vuông nhỏ cạnh NDVI trong cửa sổ Layers

iii. Click và di chuyển slider-bar/thanh trượt điều chỉnh độ mờ rõ của lớp NDVI để cùng lúc thấy ảnh MODIS phía dưới (như hình sau, bạn còn thấy menu visualization parameters giúp điều chỉnh các thông số hiển thị)

 

panel4

8. Sử dụng Inspector Panel để xem các giá trị trong ảnh NDVI

i. Click vào tab Inspector tab tại thanh công cụ phía trên bên phải màn hình

(a) Di chuyển con trỏ xung quanh bản đồ. Chú ý rằng con trỏ của bạn chuyển thành hình chữ thập

 

inspector.jpg

ii. Click vào bất cứ đâu trên bản đồ và đọc các giá trị hiển thị tại cửa sổ phía dưới tab Inspector

(a) Đó là các giá trị của một pixel tại một điểm xác định:

(i) Giá trị của các band/kênh phổ ảnh MODIS được hiển thị phía dưới tên ảnh MODIS

(ii) Giá trị NDVI được tính toán

 

inspector2.jpg

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s