Câu hỏi chung
Tôi gặp vấn đề và cần được trợ giúp!
Đăng câu hỏi theo hướng dẫn này, cung cấp nhiều thông tin nhất có thể (xem hướng dẫn của Stack Overflow về cách đặt câu hỏi hay). Điều này thường có nghĩa là:
gửi đường liên kết đến một tập lệnh trong Trình soạn thảo mã (nhấp vào nút "Lấy đường liên kết" để lấy đường liên kết đó)
chia sẻ mọi thành phần cần thiết để chạy tập lệnh
đối với các tác vụ hàng loạt không thành công, hãy báo cáo mã của tác vụ không thành công. Mã tác vụ có dạng như sau:
4C25GIJBMB52PXTEJTF4JLGL
. Bạn có thể tìm thấy các tác vụ này trong thẻ Task (Tác vụ) của Text Editor (Trình soạn thảo mã). Tìm hiểu thêm.
Tôi có thể đọc về cấu trúc Earth Engine ở đâu?
Xem bài báo này: Gorelick et al. 2017.
Có hướng dẫn nào về Earth Engine không phải do Google tạo không?
Xem trang EDU và Tài nguyên đào tạo.
Có hướng dẫn nào về cảm biến từ xa được đề xuất không?
Xem khoá học điện tử miễn phí này của Ujaval Gandhi, bao gồm một video giới thiệu về cảm biến từ xa.
Lập trình Earth Engine
Một số lỗi lập trình thường gặp là gì?
Xem hướng dẫn gỡ lỗi.
Tại sao tôi không thể sử dụng toán học cơ bản như ee.Image("image") * 2
?
Trong EE, bạn không nên kết hợp các đối tượng hoặc thao tác phía máy chủ và phía máy khách. Tất cả các thao tác trên đối tượng EE đều được thực hiện phía máy chủ. Mọi phép tính phía máy khách sẽ không thực hiện được như bạn dự định. Hãy xem trang này để biết thêm chi tiết.
Làm cách nào để sử dụng vòng lặp for
hoặc câu lệnh if/else
?
Lập trình Earth Engine được thực hiện bằng ngôn ngữ hàm, vì vậy, bạn nên biểu thị các vòng lặp và toán tử có điều kiện bằng các khái niệm tương đương như map
hoặc filter
. Hãy xem trang này để biết thêm thông tin.
Làm cách nào để hiển thị nhãn văn bản trong hình ảnh hoặc video?
Không có tính năng hỗ trợ tích hợp cho nhãn văn bản, nhưng bạn có thể:
- Sử dụng gói JS của bên thứ ba. Xem ví dụ
- Sử dụng gói Python của bên thứ ba geemap.
- Sử dụng QGIS để đưa hình ảnh EE vào bằng trình bổ trợ QGIS EE
Tôi có thể sử dụng một số bảng màu tiêu chuẩn không?
Sử dụng gói JS của bên thứ ba ee-palettes.
Làm cách nào để tạo trang web của riêng tôi sử dụng Earth Engine?
Sử dụng Ứng dụng Earth Engine cho các ứng dụng cơ bản. Trong các trường hợp phức tạp hơn, bạn có thể tạo các ứng dụng App Engine chạy bằng EE.
Mã nhận dạng trên Maps hoạt động như thế nào?
Mã bản đồ (được gọi là mapid
trong toàn bộ API) là các khoá cho phép ứng dụng tìm nạp thẻ thông tin bản đồ. Mỗi mã nhận dạng là một hàm băm được tạo bằng cách cung cấp biểu thức hình ảnh cho điểm cuối getMapId
. Mã nhận dạng thu được là các khoá trỏ đến cả biểu thức hình ảnh và thông tin xác thực của người dùng sẽ được dùng để tạo thẻ thông tin ở giai đoạn sau.
Việc yêu cầu thẻ thông tin bản đồ liên quan đến việc chỉ định vị trí của thẻ thông tin (x
, y
, zoom
) cũng như mapid
(khoá cho hình ảnh và thông tin xác thực). Bạn có thể sử dụng lại cùng một mã nhận dạng để tải nhiều thẻ thông tin trên bản đồ. Không có giới hạn về việc sử dụng lại các khoá mapid
, nhưng các khoá này sẽ hết hạn sau vài giờ. Chúng tôi không công bố khung thời gian cụ thể về thời gian tồn tại của mã nhận dạng, nhưng mọi mã bạn viết phải có khả năng thích ứng với việc mã nhận dạng hết hạn.
Việc tạo mã nhận dạng này liên quan đến việc lưu trữ một lượng nhỏ dữ liệu và xác thực thông tin xác thực, vì vậy, tốt nhất bạn nên sử dụng lại các mã nhận dạng này càng lâu càng tốt. Không có hạn mức API nào liên kết cụ thể với điểm cuối getMapId
, nhưng bất kỳ quy trình công việc nào liên quan đến việc tạo các đối tượng mapid
với tốc độ gần bằng tốc độ tìm nạp thẻ thông tin có thể đang gặp sự cố. Earth Engine không có điểm cuối API để xoá, liệt kê hoặc quản lý các mã nhận dạng này, vì đây là các tài nguyên tạm thời.
Tại sao ee.Algorithms.If()
in cả trường hợp đúng và sai?
function a() { print("true"); }
function b() { print("false"); }
// Prints 'true' and 'false'.
ee.Algorithms.If(true, a(), b());
Thuật toán If()
hoạt động giống như mọi thuật toán khác trên Earth Engine ở chỗ tất cả các đối số của thuật toán phải được đánh giá trước khi thuật toán có thể chạy.
Thuật toán này nhận được cả kết quả trueCase
và falseCase
, sau đó chọn và trả về một kết quả dựa trên đối số condition
, nhưng cả hai đường dẫn đều phải được thực thi để các giá trị đó được truyền vào thuật toán ở bước đầu tiên.
Tôi gặp lỗi "Kích thước tải trọng yêu cầu vượt quá giới hạn"
Bạn đang cố gửi một yêu cầu rất lớn đến Earth Engine. Điều này thường xảy ra khi mã sử dụng nhiều vòng lặp "for" phía máy khách hoặc tạo một FeatureCollection từ nhiều đối tượng hình học. Trong trường hợp sau, thay vì tạo các hình học như vậy trong tập lệnh, hãy tạo một tệp CSV chứa các hình học đó rồi tải tệp đó lên một thành phần bảng.
Sự khác biệt giữa ee.Image.clip()
và ee.Filter.bounds()
là gì?
Xem luồng GIS Stack Exchange này.
Hàm ee.Image.clip()
che các pixel không giao nhau với một ee.Geometry
hoặc ee.Feature
nhất định, làm cho các pixel đó trong suốt trong hình ảnh trực quan và bị loại trừ trong phép tính. Bạn có thể coi việc này là cắt bỏ các điểm ảnh khỏi hình ảnh.
Hàm ee.Filter.bounds()
sẽ lọc các đối tượng ee.Image
ra khỏi ee.ImageCollection
dựa trên giao điểm hình ảnh với ee.Geometry
hoặc ee.Feature
. Phương thức này dùng để giới hạn phạm vi phân tích chỉ bao gồm những hình ảnh giao nhau với một vùng nhất định, giúp tối ưu hoá biểu thức.
Làm cách nào để chuyển đổi pixel hình ảnh thành tập hợp tính năng, với một tính năng trên mỗi pixel?
Sử dụng hàm ee.Image.sample()
. Xem ví dụ về cách sử dụng trên trang tham khảo API của hàm.
Sự khác biệt giữa ee.ImageCollection.merge()
và ee.ImageCollection.combine()
là gì?
Hàm ee.ImageCollection.merge()
sẽ hợp nhất tất cả hình ảnh từ hai tập hợp thành một tập hợp, bất kể hình ảnh tương ứng của chúng có trùng lặp băng tần, siêu dữ liệu, CRS hay tỷ lệ hay không. Đây là tập hợp hợp nhất của hai tập hợp. Phương thức combine()
kết hợp các dải hình ảnh trùng khớp từ hai bộ sưu tập thành một bộ sưu tập duy nhất. Các hình ảnh trùng khớp có cùng một mã nhận dạng (tài sản system:index
). Đây là một phép nối nội bộ của hai bộ sưu tập dựa trên mã nhận dạng hình ảnh, trong đó các dải tần số từ hình ảnh trùng khớp được kết hợp. Đối với hình ảnh trùng khớp, các dải từ hình ảnh phụ sẽ được thêm vào hình ảnh chính (không bắt buộc phải ghi đè). Nếu không có hình ảnh nào khớp, hệ thống sẽ trả về một tập hợp trống.
Làm cách nào để lọc bộ sưu tập hình ảnh theo nhiều khoảng thời gian?
Xem luồng GIS Stack Exchange này.
merge()
nhiều bộ sưu tập với nhau hoặc sử dụng ee.Filter.or()
.
Làm cách nào để tạo vùng giới hạn xung quanh một điểm nhất định?
// Buffer the point by a chosen radius and then get the bounding box.
var LNG = -117.298;
var LAT = 45.162;
var point = ee.Geometry.Point([LNG, LAT]);
var buffer = point.buffer(30000); // half of box width as buffer input
var box = buffer.bounds(); // draw a bounding box around the buffered point
Map.centerObject(box);
Map.addLayer(point);
Map.addLayer(box);
// Map the buffer and bounds procedure over a point feature collection.
var pointCol = ee.FeatureCollection([
ee.Feature(ee.Geometry.Point([LNG + 1, LAT])),
ee.Feature(ee.Geometry.Point([LNG - 1, LAT]))
]);
var boxCol = pointCol.map(function(feature) {
var box = feature.buffer(30000).bounds();
return feature.setGeometry(box.geometry());
});
Map.addLayer(boxCol);
Data Catalog
Bạn có thể thêm tập dữ liệu X không?
Gửi lỗi yêu cầu tập dữ liệu theo hướng dẫn yêu cầu tập dữ liệu.
Bạn cũng có thể tải dữ liệu lên thư mục gốc của Earth Engine. Xem phần Nhập dữ liệu đường quét và Nhập dữ liệu bảng.
Tập dữ liệu hiện có có phiên bản mới
Gửi lỗi về tập dữ liệu theo hướng dẫn yêu cầu về tập dữ liệu và cho biết rằng bạn đang yêu cầu cập nhật tập dữ liệu.
Tập dữ liệu hiện có không được cập nhật hoặc thiếu thành phần
Trước khi báo cáo vấn đề, hãy xác minh (nếu có thể) rằng các thành phần được chọn thực sự tồn tại trên trang web của nhà cung cấp tập dữ liệu. Hãy xem hướng dẫn về trường hợp thiếu hình ảnh để biết thêm thông tin.
Nếu bạn đang tìm một thành phần bằng cách lọc ImageCollection
, hãy đảm bảo rằng bộ lọc của bạn không quá hạn chế.
Cụ thể, hãy lưu ý rằng:
ESA không sản xuất Sentinel-2 SR (dữ liệu cấp 2) cho các cảnh cấp 1 ban đầu.
Landsat không có phạm vi bao phủ trên toàn thế giới trước năm 2000.
Tập dữ liệu hiện có có giá trị không chính xác
Đăng trên diễn đàn dành cho nhà phát triển. Thêm một tập lệnh giúp thu phóng vào độ phân giải gốc của thành phần và giúp bạn thấy rõ những giá trị không chính xác. Giải thích chính xác vị trí bạn quan sát thấy giá trị thay thế.
Tôi có thể hỏi về tập dữ liệu ở đâu khác?
Nếu bạn có câu hỏi về các tập dữ liệu của NASA, hãy xem diễn đàn NASA Earth Data.
Nếu bạn có câu hỏi về các hộp công cụ hoạt động trên tập dữ liệu Copernicus, hãy xem diễn đàn S1, S2 và S3.
Danh mục EE có kích thước bao nhiêu?
Kể từ tháng 10 năm 2023, danh mục này sẽ chứa hơn 1.000 tập dữ liệu. Kích thước của tệp này trên ổ đĩa là hơn 90 petabyte (sau khi tính đến việc nén không mất dữ liệu).
Dữ liệu trong EE được cập nhật với tần suất như thế nào?
Thông thường, tất cả các tập dữ liệu đang diễn ra đều được cập nhật ít nhất hằng ngày (mặc dù không phải tất cả các tập dữ liệu như vậy đều có dữ liệu mới hằng ngày). Một số tập dữ liệu được cập nhật nhiều lần trong ngày. Tuy nhiên, không có chính sách nào đảm bảo rằng các tài sản mới nhất sẽ có trong danh mục.
Làm cách nào để xem nội dung của danh mục EE theo phương thức lập trình?
Danh sách tập dữ liệu được xuất ở định dạng STAC sang một bộ chứa Google Cloud Storage gs://earthengine-stac
.
Tệp mục nhập là catalog.json.
Tôi có thể sử dụng dữ liệu hoặc hình ảnh của Google Maps để phân tích không?
Google không cấp phép hoặc bán dữ liệu bản đồ cơ sở để phân tích.
Làm cách nào để tìm ngày truyền dẫn một thành phần?
Thuộc tính thành phần 'system:version'
là dấu thời gian truyền dẫn, được định dạng là micrô giây kể từ thời gian bắt đầu của hệ thống Unix. Sau đây là ví dụ chuyển đổi dấu thời gian truyền dẫn của hình ảnh Landsat sang định dạng mà con người có thể đọc được.
var image = ee.Image('LANDSAT/LC08/C02/T1_L2/LC08_044034_20210508');
print('Ingest date', ee.Date(image.getNumber('system:version').divide(1000)));
Danh mục Earth Engine có siêu dữ liệu JSON-LD không?
Có, siêu dữ liệu JSON-LD được nhúng trong các trang HTML của danh mục. Ví dụ: Trang Sentinel-2 chứa khối sau:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1,
"name": "Earth Engine Data Catalog",
"item": "https://developers.google.com/earth-engine/datasets"
},{
"@type": "ListItem",
"position": 2,
"name": "Harmonized Sentinel-2 MSI: MultiSpectral Instrument, Level-1C",
"item": "https://developers.google.com/earth-engine/datasets/catalog/COPERNICUS_S2_HARMONIZED"
}]
}
</script>
Landsat
Thuật toán simpleComposite
được triển khai như thế nào?
Cách triển khai phía máy chủ tương đương với mã JavaScript này.
Làm cách nào để tạo ảnh tổng hợp không có mây từ dữ liệu độ phản chiếu bề mặt của Landsat?
Dữ liệu Landsat cấp 2 (độ phản chiếu bề mặt) có một số dải chất lượng có thể dùng để che mây và các hiện tượng hình ảnh không mong muốn khác. Ví dụ về việc sử dụng các dải này để xử lý hình ảnh Landsat 8 SR và tạo một tổng hợp trung bình không có mây được cung cấp trong bài đăng này trên GIS Stack Exchange. Quy trình tương tự được dùng để tạo một thành phần kết hợp không có đám mây để sử dụng trong các ví dụ về phân loại có giám sát trong Hướng dẫn dành cho nhà phát triển.
Có cần điều chỉnh độ phản chiếu bề mặt Landsat trên nhiều cảm biến không?
Roy et al., 2016 bao gồm một phân tích về sự khác biệt về độ phản chiếu giữa TOA Landsat 7-8 và độ phản chiếu bề mặt. Họ đã xuất bản các hệ số OLS và RMA để người đọc có thể chuyển đổi giá trị độ phản chiếu của dữ liệu của một cảm biến sang một cảm biến khác. Dòng cuối cùng của bài báo nêu rõ: "Mặc dù sự khác biệt về cảm biến khá nhỏ, nhưng chúng có thể có tác động đáng kể tuỳ thuộc vào ứng dụng dữ liệu Landsat". Tuy nhiên, phân tích này dựa trên dữ liệu thu thập trước.
Những điểm cải tiến được thực hiện trong quá trình xử lý lại Tập hợp 1 và Tập hợp 2 có thể ảnh hưởng đến mối quan hệ giữa các cảm biến, nhưng theo như chúng tôi biết, chưa có phân tích nào tương tự như Roy và cộng sự (2016) cho dữ liệu Tập hợp 1 hoặc Tập hợp 2. Mặc dù không có phân tích chính thức, nhưng dường như có sự đồng thuận chung giữa các người dùng Landsat có ảnh hưởng rằng không cần điều chỉnh dữ liệu của Tập hợp 2, Cấp 2 (độ phản chiếu bề mặt). Ví dụ: trong phần trả lời một câu hỏi liên quan đến việc cần điều chỉnh Tập hợp 2, Cấp 2, Mike Wulder thuộc Nhóm khoa học Landsat lưu ý rằng tuỳ thuộc vào bản chất của ứng dụng mà bạn quan tâm (bao gồm cả việc lập bản đồ và phát hiện sự thay đổi về thảm thực vật), các sản phẩm phản xạ bề mặt của Tập hợp 2 rất phù hợp và đáng tin cậy mà không cần điều chỉnh giữa các cảm biến.
Làm cách nào để che đám mây và bóng mây trong hình ảnh MSS?
Mô-đun msslib của bên thứ ba cho Trình soạn thảo mã JavaScript bao gồm việc triển khai thuật toán MSScvm cũng như các hàm hữu ích khác để khám phá và chuẩn bị dữ liệu MSS.
Quản lý Dữ liệu
Ai sở hữu dữ liệu mà tôi tải lên?
Theo Điều khoản dịch vụ của Earth Engine, khách hàng sở hữu dữ liệu mà họ tải lên Earth Engine.
Tôi không thể tải dữ liệu lên!
Kiểm tra trạng thái tác vụ tải lên trong ngăn Tasks (Việc cần làm) ở góc trên bên phải của Code Editor (Trình soạn thảo mã). Bạn cũng có thể xem trang tác vụ chuyên dụng.
Nếu không có tác vụ nào, có thể bạn đã thử tải tệp lên thông qua Trình chỉnh sửa mã, nhưng do sự cố mạng nên tệp không bao giờ tải lên xong, vì vậy, tác vụ không bao giờ được tạo. Hãy thử dùng một trình duyệt hoặc máy tính khác.
Nếu có tác vụ không thành công, hãy kiểm tra lỗi mà tác vụ đó hiển thị. Nếu không có thông báo lỗi cụ thể, trước tiên, hãy xác minh rằng tệp của bạn không bị hỏng bằng cách chạy gdalinfo
cho tệp đường quét hoặc ogr2ogr
cho tệp vectơ.
Các lệnh này sẽ cố gắng đọc tất cả dữ liệu từ tệp nguồn và
hiển thị lỗi nếu tệp bị hỏng.
Ví dụ về lệnh gọi gdalinfo:
gdalinfo -mm -stats -checksum file.tif
Ví dụ về lệnh gọi ogr2ogr sẽ chuyển đổi in.shp
thành out.csv
:
ogr2ogr -lco GEOMETRY=AS_WKT -f CSV out.csv in.shp
Nếu tệp có vẻ hợp lệ, hãy đăng mã tác vụ không thành công dưới dạng văn bản (không phải dưới dạng ảnh chụp màn hình) trên danh sách gửi thư cho nhà phát triển.
Mã tác vụ có định dạng như sau: 4C25GIJBMB52PXTEJTF4JLGL
. Nếu có thể, hãy đặt tệp nguồn của bạn ở chế độ công khai. Nếu đó là tệp riêng tư, hãy chỉ chia sẻ tệp đó với earthengine@google.com
nếu bạn muốn nhóm Earth Engine kiểm tra tệp đó. Nếu không thể chia sẻ tệp nguồn, ít nhất bạn cũng phải cung cấp kết quả của gdalinfo -mm -stats -checksum
.
Nếu Earth Engine không hỗ trợ một phép chiếu nhất định, bạn sẽ cần chiếu lại dữ liệu trước khi tải lên bằng cách sử dụng, ví dụ: gdalwarp
.
Làm cách nào để tải tệp lên ở định dạng NetCDF hoặc một định dạng đường quét khác không được hỗ trợ?
Bạn chỉ có thể tải tệp GeoTIFF lên Earth Engine. Bạn có thể chuyển đổi các định dạng khác tương thích với GDAL sang GeoTIFF bằng cách sử dụng gdal_translate
. Ví dụ:
gdal_translate -co COMPRESS=DEFLATE file.nc file.tif
Xin lưu ý rằng một số tệp NetCDF hoặc HDF bao gồm nhiều tập dữ liệu con có thể được phát hiện bằng gdalinfo
. Lệnh gdal_translate
trong trường hợp này sẽ có dạng như sau (lưu ý đường dẫn giữa dấu ngoặc kép):
gdal_translate HDF4_EOS:EOS_GRID:"/tmp/MCD12Q1.A2001001.h00v08.005.2011055224312.hdf":MOD12Q1:Land_Cover_Type_1 file.tif
Đôi khi, các tệp NetCDF không mang một phép chiếu mà GDAL nhận dạng. Trong trường hợp này, bạn cần đặt chế độ chiếu và phạm vi không gian trong dòng lệnh gdal_translate
. Ví dụ:
gdal_translate -a_srs EPSG:4326 -a_ullr -180 90 180 -90 file.nc file.tid
Tôi có thể sử dụng thuật toán nén nào cho tệp GeoTIFF đã tải lên?
Để tải lên, bạn có thể nén tệp GeoTIFF bằng DEFLATE, JPEG, JPEG-XL/JXL, LERC, LERC_DEFLATE, LERC_ZSTD, LZMA, LZW, WEBP hoặc ZSTD. Để đọc COG trực tiếp, bạn có thể sử dụng DEFLATE, JPEG, LZW hoặc ZSTD. ZSTD là một lựa chọn tổng thể phù hợp vì có thể giải nén nhanh chóng mà vẫn cung cấp khả năng nén tốt cho hầu hết hình ảnh.
Để áp dụng tính năng nén ZSTD khi sử dụng gdal_translate
, hãy thêm các tuỳ chọn sau. Nếu dữ liệu có giá trị dấu phẩy động, hãy thay đổi PREDICTOR
thành 3.
gdal_translate in.tif out.tif \
-co COPY_SRC_OVERVIEWS=YES \
-co TILED=YES \
-co BLOCKXSIZE=512 \
-co BLOCKYSIZE=512 \
-co COMPRESS=ZSTD \
-co PREDICTOR=2 \
-co ZSTD_LEVEL=22 \
-co INTERLEAVE=BAND \
-co NUM_THREADS=ALL_CPUS
Quá trình truyền dẫn dữ liệu đường quét của tôi đã chạy nhiều ngày nhưng vẫn chưa hoàn tất.
Sử dụng gdalinfo
, hãy kiểm tra xem tệp của bạn có đặt tuỳ chọn GDAL sau đây hay không: INTERLEAVE=PIXEL
. Đối với các tệp có tuỳ chọn này và nhiều dải tần, quá trình truyền dẫn có thể không bao giờ hoàn tất vì bố cục của các tệp đó khiến quá trình đọc diễn ra rất chậm.
Hãy thử chuyển đổi các tệp đó sang bố cục xen kẽ băng tần trước khi tải lên:
gdal_translate -co "INTERLEAVE=BAND" src.tif dst.tif
Các tệp ảnh quét mà tôi tải lên không khớp với bản đồ cơ sở.
Nếu dữ liệu bị lệch một chút so với bản đồ cơ sở, thì phép chiếu có thể có một toạ độ không chính xác (giả định về hình dạng của Trái Đất).
Điều này thường xảy ra với phép chiếu sin không thể được mã hoá đầy đủ trong siêu dữ liệu GDAL. Khi bạn biết giá trị dự đoán mục tiêu (ví dụ: SR-ORG:6974
đối với các tệp sử dụng phép chiếu sin MODIS), hãy đặt cờ --crs
trong quá trình tải lên bằng dòng lệnh hoặc trường crs
của tệp kê khai tải lên.
Nếu dữ liệu có vẻ bị méo nhiều hoặc ở vị trí hoàn toàn sai, thì phép chiếu hoặc phép biến đổi affine có thể không chính xác.
Raster của tôi chỉ xuất hiện ở bán cầu Đông.
Có thể bạn đã tải một ảnh quét toàn cầu có phạm vi kinh độ [0, 360] lên. Tuy nhiên, Earth Engine yêu cầu các điểm ảnh phải nằm trong khoảng [-180, 180]. Hoán đổi nửa trái và nửa phải của đường quét trước khi nhập. Xem các đề xuất này trên GIS Stack Exchange.
Tại sao hình ảnh phân loại đã nhập của tôi trông có đốm?
Có thể bạn đã sử dụng chính sách tạo kim tự tháp MEAN
mặc định.
Đối với hình ảnh phân loại, bạn nên sử dụng chính sách tạo kim tự tháp MODE
. Đối với hình ảnh QA/mặt nạ bit, bạn nên sử dụng chính sách tạo kim tự tháp SAMPLE
.
Tôi gặp lỗi sau: Không thể áp dụng giá trị dữ liệu -128.0 cho dải #0 thuộc loại Short<0, 255>.
GDAL không thể coi các dải một byte là chứa số nguyên có dấu, vì vậy, GDAL sẽ đọc các dải đó dưới dạng số nguyên không dấu. Điều này sẽ xung đột với giá trị âm không có dữ liệu.
Nếu giá trị của bạn thực sự là số nguyên đã ký, hãy sử dụng tính năng tải tệp kê khai lên và thêm giá trị này vào phần tập hợp thẻ thông tin chứa tệp của bạn: data_type: "INT8"
Nếu giá trị của bạn là số nguyên không dấu, thì tệp của bạn sẽ có giá trị nodata không hợp lệ. Bạn có thể ghi đè giá trị này khi tải lên bằng giá trị dữ liệu chính xác (hoặc một giá trị không bao giờ xảy ra, nếu có). Bạn cũng có thể sử dụng gdal_translate -a_nodata
để thay đổi giá trị nodata hoặc gdal_edit.py -unsetnodata
để xoá giá trị này.
Làm cách nào để tải tệp lên ở định dạng GeoJSON hoặc một định dạng vectơ không được hỗ trợ khác?
Sử dụng ogr2ogr
để dịch các định dạng tương thích với OGRE sang CSV hoặc SHP. Ví dụ:
or2ogr -f "ESRI Shapefile" file.shp file.kml
Xin lưu ý rằng trong tệp CSV tải lên, cột hình học có thể chứa GeoJSON.
Tôi muốn tải dữ liệu lên bằng Python hoặc tải nhiều tệp lên cùng một lúc.
Sử dụng tính năng tải lên bằng dòng lệnh. Trước tiên, bạn phải đặt các tệp nguồn vào bộ chứa GCS (Google Cloud Storage) để tải lên. Bạn sẽ không phải trả phí khi sử dụng GCS nếu nằm trong giới hạn của gói miễn phí – hãy xem trang giá.
Tôi muốn tải một ảnh ghép đường quét lớn được chia thành nhiều ô lên.
Nếu tất cả các tệp đều có cùng chế độ chiếu và kích thước pixel, bạn chỉ cần tải tất cả các tệp đó lên cùng một thành phần — các tệp sẽ tự động được ghép lại với nhau.
Nếu các tệp có các phép chiếu hoặc kích thước pixel khác nhau, thì bạn không thể ghép các tệp đó thành một thành phần đường quét. Thay vào đó, hãy tải từng thẻ thông tin lên dưới dạng một thành phần riêng biệt vào cùng một ImageCollection
có thể được tạo ảnh ghép bằng ImageCollection.mosaic()
Tôi đang cố gắng tải một ảnh ghép lên và gặp lỗi về các thẻ thông tin không khớp.
Thẻ thông tin cho ảnh ghép đường quét của Earth Engine phải có cùng một phép chiếu và kích thước pixel. Ngoài ra, các thẻ thông tin phải căn chỉnh chính xác theo ranh giới pixel.
Tôi đang cố gắng tải một tệp lên từ một bộ chứa GCS, nhưng Earth Engine không tìm thấy tệp đó.
Có thể bạn đã sử dụng các Tài khoản Google khác nhau để tải lên GCS và để kết nối với Earth Engine. Đảm bảo tài khoản bạn dùng để kết nối với Earth Engine có thể đọc được tệp GCS. Nếu việc đăng nhập nhiều lần trên trình duyệt khiến bạn khó hiểu, hãy kết nối với Earth Engine trong một cửa sổ trình duyệt ẩn danh.
Tôi muốn xuất nhiều thành phần cùng một lúc.
Bạn phải xuất riêng từng hình ảnh.
Tôi muốn di chuyển hoặc xoá Folder
hoặc ImageCollection
bằng một lệnh duy nhất.
Trước tiên, bạn phải di chuyển hoặc xoá từng thành phần, sau đó di chuyển hoặc xoá thư mục hoặc bộ sưu tập mẹ. Nếu có nhiều tài sản con, hãy viết một vòng lặp shell hoặc Python để lặp lại các tài sản đó.
Tôi muốn truy cập trực tiếp vào dữ liệu Earth Engine từ bên ngoài EE.
QGIS có một trình bổ trợ Earth Engine.
GDAL có một trình điều khiển Earth Engine.
Các hệ thống khác có thể sử dụng API REST của EE.
Tôi muốn cập nhật một phần tài sản Earth Engine mà không cần nhập lại toàn bộ tài sản đó.
Không thể cập nhật dữ liệu vectơ hoặc đường quét được tải lên EE. Bạn chỉ có thể cập nhật các thuộc tính siêu dữ liệu của thành phần.
Tôi sắp mất quyền truy cập vào tài khoản của mình. Tôi nên làm gì với tài sản của mình?
Nếu chính sách của tài khoản ban đầu cho phép chuyển dữ liệu, vui lòng chia sẻ tài sản của bạn với một tài khoản khác, sau đó sao chép tài sản để tài khoản mới sở hữu. Sử dụng tiện ích sao chép dòng lệnh nếu có nhiều thành phần cần di chuyển.
Nếu một tài khoản bị xoá, thì bạn sẽ không truy cập được vào các tài sản mà tài khoản đó sở hữu.
Hình ảnh đã xuất của tôi nằm sai vị trí.
Đối với một số phép chiếu, chẳng hạn như sin hoặc hình nón, tệp GeoTIFF đôi khi không thể lưu trữ tất cả các thông số chiếu cần thiết. Điều này dẫn đến việc tệp đã xuất xuất hiện ở sai vị trí khi xem trong các công cụ GIS trên máy tính hoặc được nhập lại vào EE.
Để khắc phục vấn đề này, hãy chỉ định một tham số crs
xuất được biết là hoạt động tốt với các tệp GeoTIFF. Ví dụ: sử dụng mã EPSG cho vùng UTM chứa khu vực bạn quan tâm.
Tôi nên sử dụng vị trí bộ chứa nào trong Cloud Storage để lưu trữ thành phần COG?
Câu trả lời phụ thuộc vào mục tiêu bạn đang cố gắng tối ưu hoá. Nếu bạn đang tối ưu hoá để truy cập vào tính năng điện toán có độ trễ thấp, thì vị trí bộ chứa GCS tốt nhất để lưu trữ tài sản COG là US-CENTRAL*. Hãy xem trang Vị trí bộ chứa để biết thông tin về các yếu tố cần cân nhắc khác.
Các thành phần tập hợp tính năng đã xuất không giữ lại các thuộc tính mà tôi đã đặt.
Không có hàm Export.table.*
nào giữ lại các thuộc tính cấp bảng trong kết quả.
Đối với nhiều định dạng đầu ra (ví dụ: CSV, GeoJSON), không có hỗ trợ cho siêu dữ liệu như vậy. Hàm Export.table.toAsset
có thể hỗ trợ các thuộc tính cấp bảng, nhưng hiện không hỗ trợ.
Các bảng được xuất sang Drive ở định dạng CSV sẽ được chuyển đổi sang định dạng XLSX.
Tuỳ thuộc vào chế độ cài đặt Google Drive, các bảng CSV mà bạn xuất từ Earth Engine có thể được chuyển đổi thành tệp XLSX với các hiệu ứng ngoài mong muốn, chẳng hạn như chuyển đổi loại dữ liệu. Hãy làm theo các bước sau để sửa đổi hành vi cho các lần xuất tiếp theo.
- Trong Google Drive trên web, hãy nhấp vào biểu tượng bánh răng Cài đặt ở trên cùng bên phải.
- Nhấp vào Cài đặt.
- Di chuyển đến và xoá mục "Chuyển đổi tệp đã tải lên sang định dạng của trình chỉnh sửa Google Tài liệu".
Trình soạn thảo mã
Tôi không thể đăng nhập vào Trình soạn thảo mã vì trình soạn thảo này nhắc tôi sử dụng sai tài khoản.
Đăng xuất, chọn tài khoản đã đăng ký sử dụng Earth Engine trong trang "Chọn tài khoản", sau đó chọn lại chính tài khoản đó trong trang "Chọn tài khoản để tiếp tục đến Trình chỉnh sửa mã Earth Engine" thứ hai (từ ngữ chính xác có thể khác).
Tôi muốn chụp ảnh màn hình một bản đồ toàn cầu, nhưng không thích phép chiếu Web Mercator.
Hình chiếu bản đồ được sử dụng trong Trình chỉnh sửa mã là Web Mercator ("EPSG:3857"). Hiệu ứng này làm tăng kích thước của các vật thể ở xa đường xích đạo, khiến các khu vực có vĩ độ cao trông lớn hơn nhiều so với thực tế so với các khu vực gần đường xích đạo. Bạn không thể thay đổi phép chiếu của canvas bản đồ trong Trình soạn thảo mã, nhưng bạn có thể "vẽ" hình ảnh trong phép chiếu mà bạn chọn lên canvas Web Mercator bằng phương thức ee.Image.changeProj
.
Hãy xem trang tham chiếu API của phương thức này để biết ví dụ về cách hiển thị DEM toàn cầu cho bản đồ Trình chỉnh sửa mã theo tỷ lệ chiếu Robinson.
Xin lưu ý rằng bạn chỉ nên sử dụng kỹ thuật này cho mục đích trực quan hoá, vì công cụ vẽ và trình kiểm tra của Trình soạn thảo mã vẫn đang hoạt động trong Web Mercator.
Tập lệnh của tôi không lưu (Script error: Unknown commit
).
Nếu bạn nhận được thông báo Script error: Unknown commit
khi lưu tập lệnh, thì điều đó có thể có nghĩa là kho lưu trữ mà bạn đang lưu không đồng bộ.
Nguyên nhân gây ra trạng thái này rất đa dạng và khó xác định. Để giải quyết vấn đề này, hãy thử làm mới danh sách tập lệnh bằng nút ở góc trên bên phải của thẻ Tập lệnh. Nếu cách đó không hiệu quả, hãy thử tạo một kho lưu trữ mới bằng cách nhấn vào nút Mới trong thẻ Tập lệnh và lưu tập lệnh của bạn vào đó (bạn có thể cần di chuyển tập lệnh vào kho lưu trữ mới từ kho lưu trữ không đồng bộ).