سؤال

لنفترض لدي مصفوفة التحويل التعسفي ومثل،

A =

    0.9966    0.0007   -6.5625
    0.0027    0.9938    1.0598
         0         0    1.0000

ومجموعة من النقاط بحيث من إحداثيات س وص يتم تمثيل X وY على التوالي.

وافترض،

[Xf Yf] = tformfwd(maketform('projective',A),X,Y);

والآن،

[Xff Yff] = tformfwd(maketform('projective',inv(A)),Xf,Yf);
[Xfi Yfi] = tforminv(maketform('projective',A),Xf,Yf); 

و[Xff Yff] و[Xfi Yfi] يبدو أن بالضبط نفس الشيء (والتي يجب).

هل tforminv هناك فقط للراحة أو أنا في عداد المفقودين شيء هنا؟

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

المحلول

وأنا أمهد هذا بقوله فإنني <م> أفضل تخمين ...

وانه من الممكن ان tforminv قد تؤدي التحول دون تشكيل الواقع مصفوفة معكوس. على سبيل المثال، يمكنك حل نظام المعادلات الخطية Ax = b بطريقتين:

x = inv(A)*b;
x = A\b;

واستنادا إلى وثائق ل inv أو الخيار الثاني ( باستخدام تقسيم المصفوفة المشغل) يمكن أن تؤدي بشكل أفضل "من كل وقت التنفيذ والعددية جهة نظر دقة" لأنها "تنتج الحل باستخدام القضاء جاوس، دون تشكيل معكوس". tforminv قد تفعل شيئا من هذا القبيل، وبالتالي تظهر سلوك أفضل بشكل عام مقارنة مع مرور معكوس مصفوفة ل tformfwd .

إذا كنت تميل إلى ذلك، ربما يمكنك محاولة عدد من مصفوفات التحول المختلفة واختبار النهجين (tforminv أو tformfwd وinv) لمعرفة مدى دقة النتائج وسرعة يتم احتساب كل منهما.

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