मैं वर्तमान में खगोलीय डेटा के साथ काम कर रहा हूं जिसमें मेरे पास धूमकेतु छवियां हैं। कैप्चर (ट्वाइलाइट) के समय के कारण मैं इन छवियों में पृष्ठभूमि आकाश ढाल को हटाना चाहता हूं। ऐसा करने वाला पहला प्रोग्राम मैंने मैप्लोट्लिब के "जीनपूट" (एक्स, वाई) से उपयोगकर्ता चुने गए अंकों को प्रत्येक समन्वय (जेड) के लिए डेटा खींच लिया और फिर साइपी के "ग्रिडाटा" के साथ डेटा को एक नई सरणी में ग्रिड किया।पायथन 3 डी बहुपद सतह फिट, आदेश निर्भर
चूंकि पृष्ठभूमि को केवल थोड़ा अलग माना जाता है, इसलिए मैं इस एक्स (वाई, वाई, जेड) बिंदुओं के सेट के लिए 3 डी कम ऑर्डर बहुपद फिट करना चाहता हूं। हालांकि, "griddata" किसी इनपुट आदेश के लिए अनुमति नहीं देता:
griddata(points,values, (dimension_x,dimension_y), method='nearest/linear/cubic')
एक और समारोह है कि इस्तेमाल किया जा सकता है या विकासशील एक एल ई ऐज़ वर्गों फिट है कि मुझे आदेश पर नियंत्रण कर पाएँगे के लिए एक विधि पर कोई भी विचार?
इस समस्या के लिए एक बहुत ही सुंदर समाधान है। मैंने आपके सुझाए गए कोड का उपयोग एक अंडाकार पैराबोलॉइड फिट करने के लिए किया है जिसमें थोड़ा सा संशोधन है जिसे मैं साझा करना चाहता हूं। मैं 'z = a * (x-x0) ** 2 + b * (y-y0) ** 2 + c' रूप में केवल रैखिक समाधान फिट करने में रूचि रखता था। मेरे परिवर्तनों का पूरा कोड देखा जा सकता है [यहां] (http://www.nublia.com/dev/stackoverflow/stow_polyfit2d.py)। – regeirk
नोट: numpy के हाल के संस्करणों के लिए, नीचे @ klaus का जवाब देखें। मेरे मूल उत्तर 'polyvander2d', आदि के समय मौजूद नहीं था, लेकिन वे इन दिनों जाने का रास्ता हैं। –
क्या यह वास्तव में एक तीसरा क्रम बहुपद है? जब तक कि मैं इसे गलत समझ नहीं पा रहा हूं लेकिन क्या यह ऑर्डर 6 के 'एक्स ** 3 * वाई ** 3' शब्द नहीं होगा? – maxymoo