Giờ đây, bạn đã sẵn sàng bắt đầu viết JavaScript cho Earth Engine. Hãy bắt đầu bằng cách sao chép đoạn mã sau đây vào Trình chỉnh sửa mã:
Trình soạn thảo mã (JavaScript)
// Instantiate an image with the Image constructor. var image = ee.Image('CGIAR/SRTM90_V4'); // Zoom to a location. Map.setCenter(-112.8598, 36.2841, 9); // Center on the Grand Canyon. // Display the image on the map. Map.addLayer(image);
Nhấp vào nút Run (Chạy) ở đầu Trình chỉnh sửa mã và quan sát thấy một hình ảnh rất xám xuất hiện trên bản đồ. Đừng lo, bạn sẽ sớm làm cho nó trông đẹp hơn. Nếu bạn chưa quen với cú pháp của bất kỳ phần nào trong ví dụ này, hãy nhớ xem hướng dẫn về JavaScript cho Earth Engine.
Trình tạo hình ảnh
Điều mới mẻ đầu tiên trong ví dụ này là hàm khởi tạo hình ảnh
ee.Image()
. Đối số được cung cấp cho hàm khởi tạo là mã nhận dạng chuỗi của một hình ảnh trong danh mục dữ liệu Earth Engine. (Xem thẻ Docs (Tài liệu) ở bên trái Trình soạn thảo mã để xem danh sách đầy đủ các đối số có thể có cho hàm khởi tạo hình ảnh. Thẻ Tài liệu trình bày thông tin mới nhất về những việc mà Earth Engine có thể làm.)
Để khám phá một mã nhận dạng hình ảnh, hãy tìm kiếm trong danh mục dữ liệu Earth Engine bằng công cụ tìm kiếm ở đầu Trình chỉnh sửa mã. Ví dụ: nhập "độ cao" vào trường tìm kiếm và lưu ý rằng một danh sách các raster sẽ xuất hiện. Nhấp vào mục "SRTM Digital Elevation Data Version 4" (Dữ liệu độ cao kỹ thuật số SRTM phiên bản 4) để xem thêm thông tin về tập dữ liệu đó. Ở bên phải nội dung mô tả tập dữ liệu là trường Mã hình ảnh. Lưu ý rằng mã nhận dạng hình ảnh trong ví dụ được sao chép từ mã nhận dạng hình ảnh xuất hiện trong phần mô tả tập dữ liệu.
Ngoài cách sao chép và dán mã nhận dạng hình ảnh, bạn có thể sử dụng nút Nhập trên phần mô tả tập dữ liệu hoặc đường liên kết nhập ở bên phải kết quả tìm kiếm. Nếu bạn nhấp vào nút hoặc đường liên kết nhập, một biến sẽ tự động được tạo trong một phần đặc biệt có tên là "Nhập" ở đầu tập lệnh. Bạn có thể đổi tên biến bằng cách nhấp vào tên của biến đó trong phần nhập.
Định cấu hình bản đồ
Phần mới thứ hai của ví dụ này là lệnh gọi Map.setCenter()
. Phương thức này trên đối tượng Map
(đại diện cho màn hình Bản đồ trong Trình chỉnh sửa mã) sẽ đặt bản đồ ở giữa tại kinh độ, vĩ độ (tính bằng độ thập phân) và mức thu phóng đã cho, trong đó 1 là mức thu phóng để bản đồ hiển thị toàn bộ bề mặt Trái Đất. Các số lớn hơn sẽ phóng to từ đó. Khám phá tất cả các phương thức trên đối tượng Map
bằng cách kiểm tra phần Map (Bản đồ) trong thẻ Docs (Tài liệu) ở bên trái của Code Editor (Trình soạn thảo mã).
Thêm một lớp vào Bản đồ
Dòng cuối cùng trong ví dụ này cho biết: sử dụng phương thức addLayer()
của đối tượng Map
để thêm hình ảnh vào màn hình bản đồ trong Trình chỉnh sửa mã.
Xin chúc mừng! Bạn đã tạo tập lệnh Earth Engine đầu tiên. Trong phần tiếp theo, bạn sẽ tìm hiểu cách cải thiện hình ảnh đó.
Thông tin bổ sung: Hình ảnh trong Earth Engine
Hình ảnh trong Earth Engine (xem trang này để biết thêm thông tin chi tiết) được tạo thành từ một hoặc nhiều dải tần. Mỗi dải trong một hình ảnh đều có tên, giá trị pixel, độ phân giải pixel và phép chiếu riêng. Như bạn sẽ sớm nhận thấy, hình ảnh SRTM có một dải tần: "elevation".
Khi bạn thêm hình ảnh vào bản đồ bằng Map.addLayer()
, Earth Engine cần xác định cách ánh xạ các giá trị trong(các) dải hình ảnh thành màu sắc trên màn hình. Nếu bạn thêm một hình ảnh đơn sắc vào bản đồ, theo mặc định, Earth Engine sẽ hiển thị dải tần số ở thang độ xám, trong đó giá trị tối thiểu được chỉ định là màu đen và giá trị tối đa được chỉ định là màu trắng.
Nếu bạn không chỉ định giá trị tối thiểu và tối đa, Earth Engine sẽ sử dụng các giá trị mặc định. Ví dụ: hình ảnh bạn vừa thêm vào bản đồ sẽ xuất hiện dưới dạng hình ảnh thang độ xám được kéo giãn đến toàn bộ phạm vi dữ liệu hoặc số nguyên 16 bit có dấu [-32768, 32767]. (Các dải float
được kéo giãn thành [0, 1] và các dải byte
được kéo giãn thành [0, 255] theo mặc định).
Bạn có thể khám phá kiểu dữ liệu của hình ảnh bằng cách in và kiểm tra đối tượng hình ảnh trong thẻ Bảng điều khiển. Ví dụ: hãy dán nội dung sau vào sau mã trước đó:
Trình soạn thảo mã (JavaScript)
print('SRTM image', image);
Khi bạn nhấp vào Run (Chạy), hãy lưu ý rằng một đối tượng sẽ xuất hiện trong bảng điều khiển. Để kiểm tra các thuộc tính đối tượng, hãy mở rộng đối tượng bằng cách nhấp vào biểu tượng zippy () ở bên trái đối tượng hoặc thuộc tính. Mở rộng đối tượng hình ảnh, thuộc tính "bands", dải "elevation" tại chỉ mục "0" và thuộc tính "data_type" của dải "elevation" để khám phá rằng đó là loại dữ liệu
signed int16
.
Tuỳ chỉnh cách trực quan hoá lớp
Để thay đổi cách dữ liệu được kéo giãn, bạn có thể cung cấp một tham số khác cho lệnh gọi Map.addLayer()
. Cụ thể, tham số thứ hai, visParams
, cho phép bạn chỉ định giá trị tối thiểu và tối đa để hiển thị. Để khám phá những giá trị cần sử dụng, hãy kích hoạt thẻ Trình kiểm tra rồi nhấp vào bản đồ để nắm được phạm vi giá trị pixel. Ngoài ra, hãy sử dụng Trình quản lý lớp để kéo giãn dữ liệu một cách tương tác, sau đó quan sát giá trị tối thiểu và tối đa tương ứng với các mức kéo giãn độ lệch chuẩn hoặc phân vị. Giả sử thông qua thử nghiệm như vậy, bạn xác định rằng dữ liệu phải được kéo dài thành [0, 3000]. Để hiển thị hình ảnh bằng dải này, hãy sử dụng:
Trình soạn thảo mã (JavaScript)
Map.addLayer(image, {min: 0, max: 3000}, 'custom visualization');
Xin lưu ý rằng tham số visParams
là một đối tượng, có các thuộc tính chỉ định min
và max
. (Tìm hiểu thêm về các đối tượng JavaScript trong hướng dẫn về JavaScript hoặc tài liệu tham khảo bên ngoài này). Xin lưu ý rằng tham số thứ ba cho Map.addLayer()
là tên của lớp xuất hiện trong Layer manager (Trình quản lý lớp). Kết quả sẽ có dạng như Hình 1. Di chuột lên hộp Lớp ở bên phải để xem hiệu ứng của việc đổi tên lớp đó.

Để hiển thị một dải tần bằng bảng màu, hãy thêm một thuộc tính palette
vào đối tượng visParams
:
Trình soạn thảo mã (JavaScript)
Map.addLayer(image, {min: 0, max: 3000, palette: ['blue', 'green', 'red']}, 'custom palette');
Kết quả sẽ có dạng như Hình 2.

Ngoại lệ: Bảng màu
Bảng màu cho phép bạn đặt bảng phối màu cho hình ảnh một dải tần. Bảng màu là một danh sách các chuỗi màu được phân tách bằng dấu phẩy và được nội suy tuyến tính giữa các giá trị tối đa và tối thiểu trong các tham số trực quan hoá (hoặc giá trị mặc định theo loại dải tần, như mô tả trước đó). Ví dụ: những pixel nhỏ hơn hoặc bằng giá trị tối thiểu sẽ xuất hiện bằng màu đầu tiên trong danh sách; những pixel lớn hơn hoặc bằng giá trị tối đa sẽ xuất hiện bằng màu cuối cùng trong danh sách. Các màu trung gian được kéo dài tuyến tính thành các giá trị pixel trung gian.
Các màu được xác định bằng cách sử dụng lược đồ giá trị màu CSS theo tiêu chuẩn web (xem tài liệu tham khảo bên ngoài này để tìm hiểu thêm). Bạn có thể chỉ định màu theo tên hoặc dưới dạng chuỗi thập lục phân cho biết sự kết hợp giữa màu đỏ, xanh lục và xanh dương. Giá trị thấp nhất ở bất kỳ vị trí nào trong số 3 vị trí là 00 (biểu thị số thập phân 0), trong khi giá trị cao nhất là FF (biểu thị số thập phân 255). Chuỗi "000000" biểu thị màu đen, "FFFFFF" là màu trắng, "FF0000" là màu đỏ, "00FF00" là màu xanh lục và "0000FF" là màu xanh dương. Hãy xem phần Bảng màu để biết thêm thông tin chi tiết. Bạn có thể sử dụng các kiểu kéo giãn khác bằng cách dùng Styled Layer Descriptors (Bộ mô tả lớp có kiểu), như mô tả trong phần này.
Trong phần sau của hướng dẫn này, bạn sẽ tìm hiểu cách hiển thị hình ảnh nhiều dải tần. Nhưng trước tiên, hãy truy cập vào trang tiếp theo để tìm hiểu về cách thực hiện các phép tính bằng hình ảnh.