2013-02-05 7 views
5

मैं किसी अन्य व्यक्ति से कुछ मैटलैब कोड के साथ काम कर रहा हूं, मैं लाइन q = [q; क्यूई ']। मुझे लगता है कि मुझे इसे हटाने में सक्षम होना चाहिए, ताकि q = distribuc ...यह मुख्य प्रतीक क्या करता है - MATLAB?

function [ q ] = ObtainHistogramForEachTarget(state, numberOfTargets, image, q) 

    for i=1 : numberOfTargets 
     qi = distribucion_color_bin_RGB2(state(i).xPosition,state(i).yPosition,state(i).size,image,2); 
     q = [q; qi']; 
    end 
end 

क्या कोई मुझे यह समझा सकता है?

+1

मैं स्मृति से लगता है कि यह, मैं जाँच करने की आवश्यकता होगी एक मैट्रिक्स के लिए एक स्थानांतरण प्रतिनिधित्व करता है। – legrandviking

+2

मैं ''' ''' के साथ '' 'को प्रतिस्थापित करूंगा क्योंकि पहला एक जटिल संयोग हस्तांतरण है और बाद वाला एक नियमित रूप से एक नियमित हस्तांतरण है। – ja72

+1

@ ja72 यदि आप जटिल संख्याओं के साथ कभी काम नहीं करते हैं तो एक सरल '' 'पर्याप्त होना चाहिए। चूंकि पूछताछ 'i' से अधिक हो जाता है, यह चीजों को सरल रखने के लिए सुरक्षित होना चाहिए। –

उत्तर

8

MATLAB में मैट्रिक्स में हेरफेर करने के लिए कई अंतर्निहित फ़ंक्शन हैं। विशेष चरित्र, ', प्राइम के लिए एक मैट्रिक्स के हस्तांतरण को दर्शाता है।

बयान A = [ 1 2 3;4 5 6;7 8 9]' मैट्रिक्स का उत्पादन

A = 
    1 4 7 
    2 5 8 
    3 6 9 

आशा है कि यह

+7

ध्यान दें कि '।' का हस्तांतरण किया गया है और '' जटिल संयोग हस्तांतरण है। जटिल डेटा के साथ काम करते समय अंतर बहुत महत्वपूर्ण है। – shoelzer

4

में मदद करता है मैटलैब की मदद

मदद ctranspose
'परिसर संयुग्म पक्षांतरित से।
एक्स 'एक्स

B = ctranspose(A) is called for the syntax A' (complex conjugate 
transpose) when A is an object. 
2

के जटिल संयुग्म पक्षांतरित [X ; Y] वाक्य रचना दो मैट्रिक्स खड़ी संयोजित करता है। तो वह लाइन पहले से गणना की गई q पर केवल गणना किए गए परिणाम जोड़ रही है। यदि आपने बस q को फिर से सौंप दिया है, तो आप लूप के माध्यम से फ़ंक्शन पहले से ही किए गए सभी कंप्यूटेशंस को हटा देंगे।

आगे एस्ट्रोफ़े ' एक जटिल संयोग करता है और एक मैट्रिक्स को स्थानांतरित करता है। मुझे लगता है कि distribucion_color_bin_RGB2 शायद एक वास्तविक मूल्यवान कॉलम वेक्टर लौटाता है, और लेखक इसे परिणाम मैट्रिक्स में जोड़ने से पहले क्षैतिज पर फ़्लिप करना चाहता था।

जैसा कि @ ja72 ने बताया है, डिफ़ॉल्ट रूप से .' (बस स्थानांतरित करें) का उपयोग करना बेहतर है और ' केवल तभी होता है जब आप वास्तव में एक जटिल संयोग का मतलब रखते हैं, भले ही आप अपने डेटा को वास्तविक होने की उम्मीद करते हों।

0

आमतौर पर ए 'मैट्रिक्स ए का हस्तांतरण होता है, लेकिन यह संयुग्मित संक्रमित होता है। यह वास्तविक मैट्रिक्स के लिए काम करता है, जटिल मैट्रिक्स

ट्रांसपोज़ (ए) असली ट्रांसपोज़ फ़ंक्शन है, दोनों आर मैट्रिक्स और सी मैट्रिक्स के लिए काम करता है।

मैं आमतौर पर एक का उपयोग करें ', यह आसान है, लेकिन मैं अपने आदत बदल जब तक मैं FFT परिवर्तन में बग का सामना