Tìm kiếm một thuật toán phát triển vùng


8

Tôi làm việc với một bộ raster đại diện cho các giá trị đất và tôi muốn tự động tạo các đa giác với hình dạng ngẫu nhiên nhưng với kích thước nhất định và / hoặc giá trị đất được cho một điểm trung tâm của mỗi đa giác. Điểm trung tâm sẽ đóng vai trò là ô raster ban đầu (một pixel được gọi là ô hạt) sẽ thuộc về đa giác nhất định đó và sau đó thuật toán phát triển vùng sẽ bắt đầu thêm các pixel quanh một pixel cho đến khi ràng buộc về kích thước và / hoặc giá trị đất của một đa giác sẽ được thỏa mãn.

Có ai có bất kỳ ý tưởng về một thuật toán phát triển khu vực hiện có? hoặc ít nhất đó là lớp ArcObjects hoặc Giao diện mà tôi có thể làm việc cùng, để đọc giá trị của từng pixel, tạo một đa giác mới bằng cách thêm pixel mới vào nó?

Tôi hy vọng rằng những điều trên có ý nghĩa và ai đó có thể giúp tôi.

Biên tập

Về cơ bản, tôi dự định tự động tạo ra các đa giác với hình dạng thông thường và một loạt các ràng buộc như kích thước, giá trị đất, v.v ... bằng thuật toán di truyền (GA). Nhưng trước tiên tôi cần tạo một tập hợp các giải pháp ngẫu nhiên để cung cấp cho GA.So, ví dụ như trên khối đất, một khu vực được bao quanh bởi những con đường tôi đã nói 4 điểm trung tâm. Mỗi điểm trung tâm đại diện cho vị trí gần đúng của từng thửa đất mới. Ngoài ra, mỗi centroid được liên kết với các thuộc tính của từng thửa đất tức là kích thước và giá trị đất. Vì vậy, tôi muốn bắt đầu bởi mỗi centroid như một điểm giống của thuật toán phát triển vùng để bắt đầu tạo một hình dạng ngẫu nhiên cho mỗi bưu kiện dựa trên mỗi centroid.

Tôi hy vọng rằng những điều trên có ý nghĩa. Tôi mong đợi làm thế nào tôi có thể tạo thuật toán phát triển vùng này hoặc nếu đã có một thuật toán trong VBA và ArcObjects.


Bạn có thể nói điều gì đó về mục đích tạo ra các đa giác ngẫu nhiên? Rốt cuộc, có rất nhiều, rất nhiều loại ngẫu nhiên. Khá nhiều trong số chúng (chẳng hạn như các phương pháp đơn giản để tạo đa giác fractal ngẫu nhiên) dường như không được bạn quan tâm. Nếu bạn đang cố gắng mô phỏng bất cứ điều gì thực tế, quy trình sẽ phải kết hợp các khía cạnh của hiện tượng thực sự tạo ra các đa giác mà bạn quan tâm.
whuber

Khi bạn thêm một ô vào một vùng, bạn có muốn thêm ô liền kề có chi phí thấp nhất hoặc ô gần nhất với đa giác không?
Kirk Kuykendall

Tôi xin lỗi vì sự chậm trễ. Tôi đã không nhận thấy bình luận này. Mỗi lần tôi muốn thêm một ô liền kề trong vùng hiện tại cho đến khi một số ràng buộc sẽ được đáp ứng.
Demetris

Câu trả lời:


1

Một khoảng cách chi phí phân tích là một trong những cách tiếp cận: phân loại các raster dựa trên giá trị đất bắt đầu từ điểm giống, sau đó ngưỡng kết quả mà sẽ cung cấp cho bạn các khu vực chi phí tích lũy như một raster. Chỉ cần dịch raster đã phân loại đó thành một đa giác, và bạn sẽ nhận được kết quả của mình. Tùy thuộc vào chi tiết cụ thể về những gì bạn đang cố gắng thực hiện, bạn có thể thoát khỏi việc sử dụng chức năng Phân bổ chi phí với vị trí hạt giống và raster giá trị đất để đạt được sản lượng mong muốn.


Ý tưởng này rất hay vì nó thực sự liên quan đến đa giác với một cái gì đó có thật (giá trị đất). Nhưng làm thế nào "ngưỡng kết quả đó" (có lẽ có nghĩa là chọn tất cả các điểm có chi phí thấp hơn giá trị cố định) chuyển thành chi phí tích lũy được nhắm mục tiêu ? Ngoài ra, quy trình không phải là "ngẫu nhiên", nhưng đó không phải là vấn đề: người ta có thể ngẫu nhiên hóa các khía cạnh của lưới chi phí trước nên đầu ra sẽ hơi ngẫu nhiên.
whuber


0

Bạn có thể thử gdal_fillnodata .


Câu trả lời của bạn đã được gắn cờ trong hàng đánh giá là chất lượng thấp vì độ dài và nội dung của nó. Nếu bạn đề nghị rằng người hỏi câu hỏi này nên điều tra phần mềm thay thế thì tôi khuyên bạn nên chỉnh sửa câu trả lời của mình để cung cấp thêm chi tiết về lý do tại sao những gì anh ta đang cố gắng làm sẽ không hoạt động và tại sao những gì bạn đề xuất sẽ làm.
PolyGeo
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.