Font Size: a A A

Implementing OpenCV With Parallel Optimization On TI6678 DSP Platform

Posted on:2018-08-11Degree:MasterType:Thesis
Country:ChinaCandidate:J LiFull Text:PDF
GTID:2428330623450633Subject:Electronic Science and Technology
Abstract/Summary:PDF Full Text Request
Digital Signal Processing(DSP)is widely used in various industrial fields and military equipment fields.OpenCV is a common open source image processing algorithm library.However there are few implementations for the OpenCV transplantation and optimization on a DSP platform.Transplantation of OpenCV to DSP can reduce the difficulty and access threshold of DSP image application development,improve the efficiency of DSP image application development,and promote the expansion of military image processing application.In this paper,OpenCV image processing library has been successfully spotted on a certain type of chip spot tracking detection of the rapid development and application.This paper achieves the OpenCV porting and optimization on the TI6678 DSP platform.And single-core OpenCV running performance is beyond the existing TI AM572 x EVM and 66AK2 H EVM ARM+DSP platform to run Linux implementation of the OpenCV solution.On the basis of single-core optimization,this paper also proposes a parallel scheme combining OpenMP and OpenCV in combination with the parallel support of OpenCV and the parallel support of TI6678,and also proposes a general method of parallel transformation of these OpenCV functions on TI6678.This paper selects several OpenCV functions for parallel transformation to achieve multi-core acceleration,to prove the effectiveness of modified methods.Again,this article found a performance bottleneck for running OpenMP on the TI6678.Beginning with the phenomenon that the execution efficiency of OpenMP single-core program in TI6678 is slower than that of CCS program,the control process of OpenMP program on TI6678 is analyzed.The conclusion that the control time is relatively small compared with the memory access time is obtained through design experiments.And then analyze the OpenMP implementation process,prove write through impact may play a factor in performance through the memory experiment.Finally,this paper proposes a parallel IPCMP method,which replaces the OpenMP support in the parallel level of OpenCV,and implements a custom parallel mode on OpenCV.By analyzing the characteristics of OpenCV functions that can conceal or not consider Cache coherency of shared memory accesses,we prove that this part of functions does not use the feasibility of writing direct parallelism.Combined with the features of inter-core communication and shared memory management on TI6678,the performance of multi-core parallelism using the IPCMP OpenCV program proposed in this paper is better than the OpenCV function supported by OpenMP in TI6678 Dramatically improved.At the same time compared to TI's ARM + TI6678 solution has obvious performance advantages.
Keywords/Search Tags:TMS320C6678, OpenCV, OpenMP, Multi-core parallelism
PDF Full Text Request
Related items