Abstract
Markov random field models provide a robust formulation of low-level vision problems. Among all these problems, stereo vision remains the most investigated field. The belief propagation (BP) method provides accurate result in stereo vision problems. However, the algorithm remains slow for practical use. This paper describes a case study on the parallelization of belief propagation for stereo matching using the “Multi-core Software APIs” (MSA) on embedded MPSoC environments. MSA is a library-based middleware providing an asynchronous remote procedure call (RPC) mechanism. It supplies a function-offloading programming model to hide the underlying interprocessor communication and configuration detail from programmers. Furthermore, MSA provides a set of stream-specific APIs for supporting a streaming-function remoting mechanism on heterogeneous multi-core architectures. Our experiments shows that the BP method for stereo matching can be adapted from a single core program to a multi-core one for embedded MPSoC environments rapidly.
Similar content being viewed by others
References
Butenhof DR (1997) Programming with POSIX threads. Addison-Wesley, Reading
Chang DCW (2006) PAC digital signal processor. In: Proceedings of fall microprocessor forum
Kuan C-B, Lee JK (2010) Simd intrinsic supports for vliw dsp processors with distributed register files. In: CPC’10: the 15th workshop on compilers for parallel computing
Chrysanthakopoulos G, Singh S (2005) An asynchronous messaging library for c#. In: Synchronization and concurrency in object-oriented languages (SCOOL)
Dean J, Ghemawat S (2004) Mapreduce: simplified data processing on large clusters. In: OSDI’04: proceedings of the 6th conference on symposium on operating systems design & implementation. USENIX Association, Berkeley, p 10
Felzenszwalb PF, Huttenlocher DP (2006) Efficient belief propagation for early vision. Int J Comput Vis 70:41–54. http://portal.acm.org/citation.cfm?id=1138215.1138220
Hsieh KY, Liu YC, Wu PW, Chang SW, Lee JK (2008) Enabling streaming remoting on embedded dual-core processors. In: Parallel processing, 2008, ICPP ’08, 37th International Conference on, pp 35–42
Kuchen H (2002) A skeleton library. In: Euro-Par ’02: proceedings of the 8th international Euro-par conference on parallel processing. Springer, London, pp 620–629
Lai C, Hsieh K, Lai S, Lee J (2008) Parallelization of belief propagation method on embedded multicore processors for stereo vision. In: IEEE/ACM/IFIP workshop on embedded systems for real-time multimedia, ESTImedia 2008, pp 39–44
Lin YC, Tang CL, Wu CJ, Hung MY, You YP, Moo YC, Chen SY, Lee JK (2005) Compiler supports and optimizations for PAC VLIW DSP processors. In: Proceedings of the 18th international workshop on languages and compilers for parallel computing
Matsuzaki K, Iwasaki H (2006) A library of constructive skeletons for sequential style of parallel programming. In: InfoScale’ 06: proceedings of the 1st international conference on scalable information systems. ACM international conference proceeding series, vol 152. ACM Press, New York, p 13
McCool MD, Wadleigh K, Henderson B, Lin HY (2006) Performance evaluation of gpus using the rapidmind development platform. In: SC ’06: proceedings of the 2006 ACM/IEEE conference on supercomputing. ACM Press, New York, p 181
Murray AB, Cole M, Gilmore S, Hillston J (2005) Flexible skeletal programming with eskel. In: 11th intl Euro-par: parallel and distributed computing, Lisbon. LNCS, vol 3648. Springer, Berlin, pp 761–770
Qualcomm: The snapdragon platform (2010) http://www.qctconnect.com/products/snapdragon.html
Reid AD, Flautner K, Evans EG, Lin Y (2008) Soc-c: efficient programming abstractions for heterogeneous multicore systems on chip. In: CASES ’08: proceedings of the 2008 international conference on compilers, architectures and synthesis for embedded systems. ACM Press, New York, pp 95–104
Reinders J (2007) Intel threading building blocks. O’Reilly, Sebastopol
Sun J, Zheng N, Shum H (2003) Stereo matching using belief propagation. IEEE Trans Pattern Anal Mach Intell 25(7):787–800
Thies W, Karczmarek M, Amarasinghe S (2002) Streamit: a language for streaming applications. In: Horspool RN (ed) Compiler construction. Lecture notes in computer science, vol 2304. Springer, Berlin/Heidelberg. Chap. 14, pp 49–84
Texas Instruments Omap™ 4 mobile applications platform (2009)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Li, JJ., Chen, CK., Wu, TY. et al. Case study: stereo vision experiments with multi-core software API on embedded MPSoC environments. J Supercomput 61, 103–117 (2012). https://doi.org/10.1007/s11227-011-0650-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-011-0650-0