سؤال

لدي مجموعة من خط العرض/خط الطول أزواج خريطة معروفة x/y إحداثيات على (جغرافيا مشوهة) خريطة.

ثم أنا أكثر واحد خط العرض/خط الطول الزوج.أريد أن المؤامرة على خريطة أفضل ما هو ممكن.كيف يمكنني فعل هذا ؟

في البداية قررت إنشاء نظام من المعادلات الخطية الثلاث أقرب lat/long النقاط و حساب التحول من هذه, ولكن هذا لا يعمل بشكل جيد على الإطلاق.لأن هذا هو نظام خطي لا أستطيع استخدام المزيد من النقاط القريبة أيضا.

لا يمكنك أن تفترض أن الشمال هو:كل ما عليك هو القائم lat/long->x/y تعيينات.

تحرير:ليس إسقاط مركاتور ، أو أي شيء مثل ذلك.إنه تعسفا مشوهة عن القراءة (اعتقد خريطة مترو الانفاق).أريد أن استخدام فقط أقرب من 5 إلى 10 تعيينات بحيث التشويه على أجزاء أخرى من الخريطة لا يؤثر على الخرائط أحاول حساب.

كذلك الخريطة بأكملها في منطقة جغرافية صغيرة جدا لذلك ليس هناك حاجة للقلق حول العالم--مسطحة من الأرض الافتراضات هي جيدة بما فيه الكفاية.

هل كانت مفيدة؟

المحلول

هل هناك أي تفاصيل محددة عن نوع من التشويش ؟ إذا ، على سبيل المثال ، خطوط العرض وخطوط الطول هي "مشوهة" على خريطة 2D باستخدام إسقاط مركاتور ، التحويل الرياضيات متاحة بسهولة.

إذا كانت خريطة مشوهة حقا تعسفا ، وهناك الكثير من الأشياء التي يمكنك محاولة ، ولكن أبسط من المحتمل أن يكون لحساب المتوسط المرجح من القائمة الخاصة بك نقطة تعيينات.الأوزان الخاصة بك يمكن أن يكون مربع معكوس x/y المسافة من نقطة جديدة إلى كل من القائمة الخاصة بك نقاط.

بعض شبة الكود:

estimate-latitude-longitude (x, y)

    numerator-latitude := 0
    numerator-longitude := 0
    denominator := 0

    for each point,
        deltaX := x - point.x
        deltaY := y - point.y
        distSq := deltaX * deltaX + deltaY * deltaY
        weight := 1 / distSq

        numerator-latitude += weight * point.latitude
        numerator-longitude += weight * point.longitude
        denominator += weight

    return (numerator-latitude / denominator, numerator-longitude / denominator)

هذا الرمز سوف تعطي بسيطة نسبيا تقريب.إذا كنت يمكن أن يكون أكثر دقة حول طريقة إسقاط يشوه الإحداثيات الجغرافية ، وربما يمكنك أن تفعل أفضل من ذلك بكثير.

نصائح أخرى

حسنا.من وجهة نظري وجهة نظر ، بالنظر إلى أن تشويه "التعسفي" ، أي حل يتطلب منك أن نموذج هذه التعسفي التشويه, من الواضح أنك لا يمكن أن تحصل على "الإجابة".ومع ذلك ، فإن أي حل سوف تنطوي على فرض (عادة ضمنا) بعض نموذج من التشويه الذي قد أو قد لا تعكس حقيقة الوضع.

حيث يبدو أن تكون مهتمة أكثر النماذج التي تفترض نوعا من المحلية استمرار تشويه الخرائط الخيار الأكثر وضوحا هو واحد كنت قد حاولت بالفعل:الخطية interpolaton بين أقرب نقطة.الذهاب أبعد من ذلك سوف تتطلب أكثر تطورا الرياضية و التحليل العددي المعرفة.

أنت غير صحيحة ، ومع ذلك ، في افتراض لا يمكن توسيع هذا إلى المزيد من النقاط.يمكنك باستخدام الأقل-تربيع نهج خطأ.العثور على الخطية الجواب أن يقلل الخطأ من النقاط الأخرى.وربما هذا هو الأكثر مباشرة إلى الأمام التمديد.وبعبارة أخرى ، تأخذ 5 أقرب نقطة و محاولة الخروج مع والتقريب الخطي الذي يقلل الخطأ من تلك النقاط.واستخدام ذلك.وأود أن محاولة هذا المقبل.

إذا كان هذا لا يعمل, ثم تولي الخطي فوق منطقة ن نقطة مكسورة.عند هذه النقطة سوف تحتاج إلى الترقية إلى إما من الدرجة الثانية أو مكعب نموذج.الرياضيات هو الذهاب الى الحصول المحمومة في هذه النقطة.

المشكلة هي أن المجال يمكن أن تكون مشوهة عدد من الطرق ، وبعد كل تلك النقاط المعروفة على خط الاستواء, دعنا نقول, لن تساعدك على الخريطة نقطة أبعد.

تحتاج أفضل 'إغلاق' نقطة ، ثم يمكنك أن تفترض هذه النقاط الثلاث هي على الطائرة مع الرابع والقيام الاستيفاء-مع العلم أن المسافة من الطول هي وظيفة وليس ثابت.

يممم.ربما أنا في عداد المفقودين شيئا عن السؤال هنا, ولكن إذا كان لديك طويلة/lat معلومات لديك أيضا اتجاه الشمال ؟

يبدو أنك تحتاج إلى خريطة الإحداثيات الجيوديسية إلى المتوقعة في نظام الإحداثيات.على سبيل المثال osgb إلى wgs84.

الرياضيات المعنية غير تافهة ، ولكن قانون يأتي من بضعة أسطر فقط.لو كان لدي المزيد من الوقت كنت بعد أكثر ولكن أنا في حاجة إلى الاستحمام لذا سوف تكون مملة رابط ويكيبيديا الدخول الذي هو جيد جدا.

ملاحظة:بعد دش تحريرها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top