Phƣơng pháp xử lý ảnh bằng nền tảng trực tuyến Google EarthEngine

Một phần của tài liệu ỨNG DỤNG CÔNG NGHỆ VIỄN THÁM VÀ NỀN TẢNG GOOGLE EARTH ENGINE NGHIÊN CỨU NHIỆT ĐỘ BỀ MẶT TỈNH BÌNH ĐỊNH (Trang 39 - 45)

CHƢƠNG 3 PHƢƠNG PHÁP NGHIÊN CỨU

3.3. Phƣơng pháp xử lý ảnh bằng nền tảng trực tuyến Google EarthEngine

Sử dụng các thuật tốn lập trình trên nền tảng ngơn ngữ JavaScript trên giao diện nền tảng Web trực tuyến để làm việc, bao gồm các bƣớc xử lý cơ bản: nhập dữ liệu ảnh, xử lý ảnh, phân tích ảnh và xuất kết quả, .v.v. Tùy theo mục tiêu nghiên cứu mà có những phân tích ảnh khác nhau. Đối với mục tiêu nghiên cứu của đề tài khảo sát nhiệt

29

độ bề mặt đất thì dựa trên dữ liệu chr số thực vật (NDVI) và chỉ số nhiệt độ bề mặt (LST) theo thời gian để hỗ trợ cho việc khảo sát nhiệt độ bề mặt đất và thành lập mối tƣơng quan giữa nhiệt độ bề mặt (LST) và chỉ số thực vật (NDVI). Phƣơng pháp này bao gồm các quy trình sau:

Nhập bộ dữ liệu ảnh landsat 8 và vùng nghiên cứu vào Google Earth Engine (GEE)

Bộ dữ liệu ảnh đƣợc sử dụng trong đề tài có dạng “USGS Landsat 8 TOA Reflectance (Orthorectified)”, điểm nối bật của bộ sƣu tập này là đã đƣợc Google Earth Engine hiệu chỉnh khí quyển. bộ sƣu tập này có tên ID là :

“LANDSAT/LC08/C01/T1_TOA”.

Chuyển dữ liệu shapefile của vùng nghiên cứu (tỉnh Bình Định) vào định dạng KML trên ArcGis, sử dụng ID của KML trên Google Fusion Tables để kết nối với nền tảng Google Earth Engine.

Hình 3.4. Nhập bộ dữ liệu Landsat 8 TOA

Lọc ảnh theo vùng nghiên cứu và thời gian nghiên cứu

Lọc bộ ảnh trong một năm bất lỳ và sử dụng địa chỉ ID của tỉnh Bình Định đã đƣợc kết nối với nền tảng Google Earth Engine qua công cụ Google Fusion Tables cắt bộ dữ liệu ảnh để hạn chế thời gian xử lý.

Loại bỏ mây cho ảnh vệ tinh

Dữ liệu tập ảnh thu nhận đƣợc là liên tục trong năm, nên có một tháng dữ liệu ảnh có mây che phủ, nên khơng thể tiến hành phân tích ảnh bƣớc kế tiếp. vì vậy phải tiến hành xử lý mây để quá trình xử lý đạt độ chính xác cao.

//chọn ngƣỡng mây var cloud_thresh = 30;

30 //xây dựng hàm lọc mây

var cloudfunction = function(image){ // tính kênh chỉ số mây

Var CloudScore = ee.Algorithms.Landsat.simpleCloudScore(image); //tách riêng kênh chỉ số mây

var quality = CloudScore.select('cloud');

// Tạo raster nhị phân với 1 là vƣợt ngƣỡng mây, 0 là dƣới ngƣỡng mây var cloud01 = quality.gt(cloud_thresh);

// Tạo lớp mặt nạ của những pixel vƣợt ngƣỡng mây var cloudmask = image.mask().and(cloud01.not()); // Áp mặt nạ để loại bỏ điểm mây

return image.updateMask(cloudmask); };

// Chạy hàm loại bỏ mây cho ảnh l8img = l8img.map(cloudfunction);

Hình 3.5. Lọc mây cho ảnh Landsat 8 TOA

Phân tích chỉ số NDVI cho tập dữ liệu ảnh

Sử dụng đoạn code sau để phân tích chỉ số thực vật cho tập ảnh vệ tinh: //tạo hàm tính chỉ số NDVI cho ảnh Landsat 8

function L8NDVI(img) {

var ndvi =img.normalizedDifference(['B5','B4']).rename('NDVI'); return img.addBands(ndvi);

31 // Tính chỉ số thực vật cho ảnh landsat8 var l8ndvi = l8img.map(L8NDVI);

var ndvi_l8 = l8ndvi.select("NDVI").max().clip(binhdinh); print(l8ndvi);

//hiển thị màu cho chỉ sô NDVI

var ndviParams_l8 = {min: -1, max: 1, palette: ['blue', 'white', 'green']}; // thể hiện bản đồ chỉ số thực vật

Map.addLayer(ndvi_l8, ndviParams_l8, 'NDVIl8');

Hình 3.6. Tính chỉ số NDVI cho ảnh Landsat 8

Phân tích chỉ số LST cho tập dữ liệu ảnh

//nhập dữ liệu nhiệt độ sáng trong một năm var temps2013 = l8.filterBounds(binhdinh) .filterDate('20**-1-1', '20**-12-31') .select('B10');

// chuyển đổi nhiệt độ thành độ C.

temps2013 = temps2013.map(function(image) { return image.addBands( image.subtract(273.16). select([0], ['Band10'])); }); print(temps2013);

// thể hiện bản đồ chỉ số nhiệt độ trong một năm

32

0000ff,32cd32,ffff00,ff8c00,ff0000 "}, "ảnh nhiệt độ");

// chọn khu vực nghiên cứu kết hợp với band 10 để tiến hành xuất ảnh var studyArea1 = studyarea.select('Band10');

print(studyArea1);

Hình 3.7. Tính chỉ số nhiệt độ bề mặt

Phân lớp các đối tƣợng trong ảnh để tiến hành thành lập biểu đồ

//khai báo lớp đối tƣợng đặt trƣng là thành phố var city = ee.Feature( // tp quy nhơn.

ee.Geometry.Point([109.14710998535156, 13.78314260370316]), {label: 'City'});

//khai báo lớp đối tƣợng đặt trƣng là rừng var forest = ee.Feature( // bình định Forest.

ee.Geometry.Point([109.13492202758789, 13.763375516867432]), {label: 'Forest'});

// tiến hành xây dựng biếu đồ phân bố chỉ số nhiệt độ của rừng và thành thị

var tempTimeSeries = ui.Chart.image.seriesByRegion( temps2013, Regions, ee.Reducer.mean(), 'Band10', 200, 'system:time_start', 'label')

.setChartType('ScatterChart') .setOptions({

title: 'Nhiệt độ theo thời gian ở các khu vực của Bình Định', vAxis: {title: 'Nhiệt Độ (Celsius)'},

33 lineWidth: 1, pointSize: 4, series: { 0: {color: COLOR.CITY}, 1: {color: COLOR.FOREST} }}); // thể hiện bản đồ lớp rừng với thành phố

Map.addLayer(forest, {color: COLOR.FOREST}) Map.addLayer(city, {color: COLOR.CITY});

Xuất dữ liệu ảnh từ Google Earth Engine

Kết quả giải đoán từ GEE sẽ đƣợc xuất sang Google Drive để thuận tiện trong việc biên tập bản đồ trên ArcGis

// Export the image NDVI Export.image.toDrive({ image: ndvi_l8, description: "NDVI_20**", region: binhdinh, scale: 30, crs:'EPSG:32649', folder: 'GEE export', maxPixels: 1e13}); // Export the image LST Export.image.toDrive({ image: studyArea1, description: "TEMP_20**", region: binhdinh, scale: 30, crs:'EPSG:32649', folder: 'GEE export', maxPixels: 1e13});

34

Hình 3.8. Xuất dữ liệu LST & NDVI

Một phần của tài liệu ỨNG DỤNG CÔNG NGHỆ VIỄN THÁM VÀ NỀN TẢNG GOOGLE EARTH ENGINE NGHIÊN CỨU NHIỆT ĐỘ BỀ MẶT TỈNH BÌNH ĐỊNH (Trang 39 - 45)

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

(88 trang)