Bản Đồ Lâm NghiệpGIS · Lâm nghiệp Việt Nam

Gán CRS và Reproject: hai việc khác nhau mà 90% người mới nhầm

Gán hệ tọa độ chỉ sửa lời khai báo, reproject tính lại toàn bộ tọa độ. Phân biệt hai việc, lưu đúng sang Shapefile và tránh làm hỏng dữ liệu gốc.

Admin 14/10/2026 7 phút đọc
Cửa sổ Save Vector Layer as: định dạng ESRI Shapefile, đường dẫn file, hệ tọa độ EPSG 9212 VN-2000 TM-3 106-15, bảng mã UTF-8QGIS

Lớp lô rừng mở lên bị lệch. Bạn vào menu, thấy chữ "Export", chọn hệ VN-2000 cho file mới, bấm OK — và lớp mới còn lệch tệ hơn, gán lại hệ nào cũng không khớp. Chuyện này xảy ra vì QGIS có hai thao tác nghe giống nhau nhưng làm việc ngược nhau: gán hệ tọa độ và đổi hệ tọa độ. Chọn nhầm cái thứ hai khi cần cái thứ nhất là cách nhanh nhất để làm hỏng dữ liệu thật.

Đây là bài 3 trong series Chuyển MapInfo sang QGIS và hệ tọa độ VN-2000. Hai bài trước: Hệ tọa độ VN-2000 trong QGIS và Vì sao dữ liệu bị lệch trong QGIS.

Hai việc khác nhau thế nào


Gán hệ tọa độ (Set / Assign CRS)

Đổi hệ tọa độ (Reproject)

Làm gì

Sửa lời khai báo "dữ liệu này thuộc hệ nào"

Tính lại toàn bộ tọa độ X, Y sang hệ khác

Con số tọa độ trong file

Giữ nguyên

Thay đổi

Dùng khi

Lớp thiếu khai báo hoặc khai báo sai

Cần đưa dữ liệu sang hệ khác, ví dụ VN-2000 sang WGS 84

Ví von

Dán đúng nhãn lên hộp

Đổ đồ sang một hộp khác

Quy tắc chỉ có một câu: lớp bị lệch chỗ mà tọa độ vốn đúng thì gán, không đổi. Đổi hệ tọa độ dựa trên lời khai báo hiện tại của lớp — khai báo sai thì kết quả tính lại cũng sai theo, và lần này sai thật trong file.

Gán hệ tọa độ cho lớp

Có hai mức: gán tạm cho phiên làm việc, và ghi hẳn vào dữ liệu.

Gán tạm — nhanh, dùng để thử xem múi nào khớp:

  1. Nhấp phải lớp trong Layers Panel, chọn Layer CRS.
  2. Dòng mờ trên cùng cho biết hệ lớp đang khai báo. Bên dưới là các hệ dùng gần đây — chọn luôn nếu có, ví dụ Set to EPSG:9212.
  3. Chưa có trong danh sách thì chọn Set Layer CRS…, gõ mã EPSG hoặc VN-2000 vào ô lọc rồi chọn.

Menu Layer CRS: dòng mờ trên cùng là hệ đang khai báo, bên dưới là các hệ dùng gần đây như Set to EPSG:9212 và lựa chọn Set Layer CRS

Menu Layer CRS: dòng mờ trên cùng là hệ đang khai báo, bên dưới là các hệ dùng gần đây như Set to EPSG:9212 và lựa chọn Set Layer CRS

Gán tạm thì tắt QGIS là mất. Bật nền ảnh vệ tinh kiểm tra, thấy khớp rồi thì ghi hẳn vào dữ liệu theo một trong hai cách dưới.

Ghi hẳn bằng Assign Projection — mở Processing Toolbox, tìm thuật toán Assign Projection, chọn lớp cần sửa và mã EPSG vừa thử đúng, bấm Run. Thuật toán chỉ gán nhãn, không đổi tọa độ, và tạo ra lớp kết quả mang sẵn hệ tọa độ đúng.

Ghi hẳn bằng cách lưu ra file mới — xem mục kế tiếp.

Lưu ra Shapefile: cùng hệ là ghi nhãn, khác hệ là đổi tọa độ

Cửa sổ Save Features As… là chỗ hai việc dễ nhầm nhất, vì cùng một ô CRS làm được cả hai:

  • Ô CRS giống hệ lớp đang khai báo → QGIS không tính lại gì, chỉ ghi hệ tọa độ vào file mới (với Shapefile là tệp .prj đi kèm). Đây là cách lưu hẳn kết quả gán.
  • Ô CRS khác hệ lớp đang khai báo → QGIS đổi toàn bộ tọa độ sang hệ mới.

Các bước lưu một lớp đã gán đúng hệ sang Shapefile:

  1. Nhấp phải lớp, chọn Export ▸ Save Features As…
  2. Format: chọn ESRI Shapefile.
  3. File name: chọn thư mục và đặt tên file.
  4. CRS: để đúng hệ vừa gán — ví dụ EPSG:9212 - VN-2000 / TM-3 106-15 cho dữ liệu Quảng Trị lập trước 2025.
  5. Encoding: chọn UTF-8 để giữ đúng chữ tiếng Việt.
  6. Bấm OK.

Menu chuột phải trên lớp, chọn Export rồi Save Features As

Menu chuột phải trên lớp, chọn Export rồi Save Features As

Cửa sổ Save Vector Layer as: định dạng ESRI Shapefile, đường dẫn file, hệ tọa độ EPSG 9212 VN-2000 TM-3 106-15, bảng mã UTF-8

Cửa sổ Save Vector Layer as: định dạng ESRI Shapefile, đường dẫn file, hệ tọa độ EPSG 9212 VN-2000 TM-3 106-15, bảng mã UTF-8

Khi nào mới thật sự cần đổi hệ tọa độ

Chỉ khi lớp đã khai báo đúng và bạn cần dữ liệu ở một hệ khác. Mấy tình huống hay gặp trong lâm nghiệp:

  • Gửi cho phần mềm hoặc thiết bị chỉ đọc kinh độ, vĩ độ: máy GPS, Google Earth, ứng dụng điện thoại — đổi sang WGS 84 (EPSG:4326).
  • Gộp dữ liệu hai tỉnh khác kinh tuyến trục: đổi một bên sang kinh tuyến trục của bên kia trước khi gộp.
  • Dữ liệu đang ở WGS 84 / UTM zone 48N (EPSG:32648): nếu đã khớp nền vệ tinh thì đổi thẳng sang múi VN-2000 của tỉnh. Nếu chưa khớp, tài liệu tập huấn hướng dẫn lưu qua VN-2000 / UTM zone 48N (EPSG:3405) trước rồi mới đổi tiếp.

Cách làm: lưu ra file mới bằng Save Features As… với ô CRS là hệ đích, hoặc dùng thuật toán Reproject Layer trong Processing Toolbox. Luôn giữ lại file gốc.

Có cần đổi hệ để các lớp chồng lên nhau không?

Không. QGIS tự chuyển các lớp khác hệ về hệ của dự án ngay lúc hiển thị (on-the-fly), nên lớp VN-2000, điểm GPS WGS 84 và nền ảnh vệ tinh Web Mercator vẫn chồng đúng lên nhau mà file không bị đụng tới. Chỉ đổi hệ dữ liệu khi cần giao file cho nơi khác ở hệ khác.

Công cụ gán hàng loạt cho nhiều lớp VN-2000

Mở cả chục lớp MapInfo một lúc thì gán từng lớp rất lâu. Công cụ VN2000 Fixer (trong bộ plugin VN Field GIS Basic dùng ở khoá tập huấn) quét tất cả lớp vector đang mở, đề xuất hệ VN-2000 phù hợp cho từng lớp, và gán hàng loạt các lớp bạn tích chọn. Có tuỳ chọn tải sẵn nền Google Hybrid để kiểm tra khớp ngay sau khi áp dụng.

Hộp thoại VN2000 Fixer: nút Quét tất cả lớp, bảng kết quả gồm hệ hiện tại và hệ đề xuất, tuỳ chọn tải nền Google Hybrid để kiểm tra

Hộp thoại VN2000 Fixer: nút Quét tất cả lớp, bảng kết quả gồm hệ hiện tại và hệ đề xuất, tuỳ chọn tải nền Google Hybrid để kiểm tra

Công cụ này cũng chỉ gán — không đổi tọa độ. Kết quả vẫn cần lưu ra file như mục trên nếu muốn giữ lâu dài.

Lỗi thường gặp

  • Lưu ra Shapefile xong, mở lại vẫn báo "unnamed": khi lưu, ô CRS đang để một hệ khác với hệ đã gán, hoặc lưu từ một lớp chưa gán. Kiểm tra lại hệ của lớp trước khi lưu.
  • Đổi hệ xong lớp lệch xa hơn trước: lớp gốc đang khai báo sai mà đem đổi hệ. Bỏ file mới, quay lại file gốc, gán đúng trước rồi mới đổi.
  • Diện tích lô tính ra số rất nhỏ: lớp đang ở hệ địa lý (WGS 84, đơn vị độ). Diện tích phải tính trên hệ phẳng đơn vị mét như VN-2000.
  • Xuất xong bên khác mở bị lỗi chữ tiếng Việt: ô Encoding chưa chọn UTF-8.

Câu hỏi thường gặp

Gán CRS có làm thay đổi tọa độ trong file không? Không. Chỉ thay lời khai báo. Vì vậy gán sai thì gán lại là xong, không mất gì.

Đổi hệ tọa độ rồi có quay lại được không? Quay lại được nếu lần đổi đó đúng — đổi ngược về hệ cũ. Không cứu được nếu đã đổi từ một lớp khai báo sai; khi đó phải lấy lại file gốc.

Nên dùng Set Layer CRS hay Assign Projection? Dùng Set Layer CRS để thử nhanh xem múi nào khớp. Thử đúng rồi thì dùng Assign Projection hoặc lưu ra file để ghi hẳn.

Bài tiếp theo

Bài 4: Chuyển MapInfo TAB sang Shapefile không lỗi font, đúng hệ chiếu — gán hệ tọa độ và chuyển bảng mã tiếng Việt trong một lần làm.

―――

Bài viết biên soạn lại từ tài liệu tập huấn "Ứng dụng QGIS trong quản lý tài nguyên rừng" – Dự án Quản lý rừng bền vững và Bảo tồn đa dạng sinh học (VFBC/USAID), Quảng Trị 2024. Tác giả: Vũ Văn Thái.

Bài liên quan