Hội nghị địa lý hàng loạt trong ArcMap / ArcPy?


9

Tôi có khoảng 50 bản đồ pdf mà tôi muốn theo lô địa lý và / hoặc georectify. Tôi đã lưu một cái dưới dạng jpg và tham chiếu địa lý theo cách thủ công và muốn tự động hóa phần còn lại ở cùng một vị trí và có cùng mức độ.

nhập mô tả hình ảnh ở đây

Độ dốc mật độ sẽ thay đổi trong từng trường hợp, nhưng bản đồ (được lưu dưới dạng jpg bây giờ) sẽ có cùng mức độ cho tất cả 50 trường hợp.

Có ai biết liên kết đến một hướng dẫn từng bước chỉ liên quan đến xử lý hàng loạt trong Arcmap 10.2 không? Tôi đang nghĩ đến việc sử dụng Warp từ Mã tệp hoặc có thể là tùy chọn Autoregistration , nhưng không chắc bắt đầu từ đâu?

Mã mẫu là:

import arcpy
arcpy.WarpFromFile_management(
"\\cpu\data\raster.img", "\\cpu\data\warp_out.tif",
"\\cpu\data\gcpfile.txt", "POLYORDER2", "BILINEAR")

Họ có chiếm cùng một không gian không? Các tập tin có liền kề nhau không?

Bạn có thể chỉnh sửa câu hỏi của mình để bao gồm một liên kết đến Mã bọc từ Tệp mà bạn đề cập không?
PolyGeo

Các tập tin vật lý được đặt trong cùng một thư mục. Dữ liệu bản đồ chiếm cùng một không gian trên tất cả 50 ví dụ.
Codurfer

Câu trả lời:


15

Trong trường hợp của bạn (jpg raster và chính xác cùng mức độ cho tất cả các raster), công cụ Warp From File vẫn hoạt động tốt.

Nếu bạn chưa lưu tệp liên kết, bạn nên thực hiện việc này trước: Georeference one raster trong ArcMap, nhấp vào nút Xem Bảng liên kết và lưu các liên kết vào tệp văn bản bằng nút Lưu:

Xem bảng liên kết Sau đó, có các tùy chọn khác nhau:

  • Batch : Bạn có thể sử dụng Warp from file tool ở chế độ Batch bằng cách nhấn chuột phải vào hộp công cụ:

Lô hàng

  • arcpy : Thay đổi các biến trong đoạn mã sau và chạy nó theo cách bạn muốn. Tôi sẽ chỉ sao chép / dán nó vào Cửa sổ Python trong ArcMap hoặc ArcCatalog.
import arcpy, os

# Variables
arcpy.env.workspace = r"C:\InFolder"    # Folder with rasters to be georeferenced"
OutF = r"C:\OutFolder"                  # Output folder
Suf = "_georef"                         # Suffix added to the output (if necessary)
Ext = ".jpg"                            # Format of the output rasters
LinkFile = r"C:\linkfile.txt"           # Your link file
Transf = "POLYORDER0"                   # Transformation type - to choose from:
                                        #"POLYORDER0", "POLYORDER1", "POLYORDER2", "POLYORDER3", "ADJUST SPLINE" or "PROJECTIVE"
Resampl = "NEAREST"                     # Resampling type - to choose from:
                                        # "NEAREST", "BILINEAR", "CUBIC" or "MAJORITY"

# Process
ListRas = arcpy.ListRasters()
for ras in ListRas:
    basename = arcpy.Describe(ras).baseName
    outpath = os.path.join(OutF, basename + Suf + Ext)
    arcpy.WarpFromFile_management(ras, outpath, LinkFile, Transf, Resampl)
    print "Georeferenced {} successfully".format(basename)
  • ModelBuilder : bạn có thể lặp lại các trình quét với Trình lặp Rasters (Chèn> Trình lặp> Trình quét). Sử dụng% Name% .png trong đường dẫn đầu ra để đặt đầu ra của bạn được đặt tên giống như đầu vào (hoặc% Name% _suffix.png):

nhập mô tả hình ảnh ở đây


Cảm ơn bạn. Tôi sẽ thử nó tối nay và sẽ cập nhật với kết quả.
Codurfer
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.