/ / ++ में 3 डी कनवल्शन - सी ++, 3 डी, क्यूडा, कनविक्शन

सी ++ में 3 डी संकल्प - सी ++, 3 डी, कुडा, संकल्प

मैं 3 डी कन्वेंशन लागू करने वाले कुछ स्रोत कोड की तलाश कर रहा हूं। आदर्श रूप से, मुझे C ++ कोड या CUDA कोड की आवश्यकता है। मैं "" सराहना करता हूं कि अगर कोई मुझे एक अच्छे और तेज कार्यान्वयन के लिए इंगित कर सकता है :-)

चियर्स

उत्तर:

जवाब के लिए 3 № 1

आप समझते हैं कि आम तौर पर एक एफएफटी का उपयोग करके दृढ़ विश्वास किया जाता है? उदाहरण के लिए देखें, http://en.wikipedia.org/wiki/Convolution

तो आप एक fft पुस्तकालय की जरूरत है।

दृढ़ संकल्प की गणना करने के लिए सबसे तेज़ विधि पता चलता है http://www.fftw.org/ (एक पारंपरिक सीपीयू के लिए)।

क्यूडा के लिए, कफ का उपयोग करें - http://www.gsic.titech.ac.jp/~ccwww/tebiki/tesla_e/tesla6_e.html


जवाब के लिए 0 № 2

क्या आप एक पंजीकृत डेवलपर हैं? यदि ऐसा है तो आपको 3.0 एसडीके डाउनलोड करना चाहिए और एफडीडीटी 3 डी नमूने की जांच करनी चाहिए जो एक स्पष्ट फाइनेंसिंग डिफरेंस ऐप के लिए लागू किए गए 3 डी कनविक्शन को दर्शाता है। 2.3 SDK में 3dfd नामक एक नमूना था जो समान था (और अब बदल दिया गया है)।

यदि आपकी आवेग प्रतिक्रिया कम है तो एफएफटी के बजाय इस दृष्टिकोण का उपयोग करना अधिक कुशल हो सकता है।


जवाब के लिए 0 № 3

इंटेल का एक बहुत अच्छा उदाहरण है - एसएसई + ओपनएमपी और इसके एक सीरियल संस्करण का उपयोग करना। कोड मुख्य रूप से धारावाहिक और एक समानांतर दृष्टिकोण को प्रोफाइल करने के लिए है, लेकिन एक अच्छे तरीके से किया जाता है। http://software.intel.com/en-us/articles/16bit-3d-convolution-sse4openmp-implementation-on-penryn-cpu/