TI DSP库VLIB介绍及DM8168DSP库使用

转载请注明:http://blog.csdn.net/guo8113/article/details/23841111

VLIB Introduction

The Texas Instruments VLIB is an optimizedImage/Video Processing Functions Library for C programmers using c674x devices.It includes many C-callable, assembly-optimized, general-purpose image/videoprocessing routines.

运行这些实例的速度要比用ANSI C编写的同样代码效率高,性能可提高10倍,可以大大减少开发时间。

可供用于:

  • 背景建模&相减

  • 物体特征提取

  • 跟踪与检测

  • 低级像素处理(low-levelpixel processing

安装之后,预编译的库有:

  • vlib.lib : Main optimized vlib library
  • vlib_cn.lib : C Natural Implementation of vlib library
  • common.lib : Common functions required for testing kernels.

 

Integration

对于单核或者多核系统,集成时需要以下步骤:

在系统代码中调用API

        需要包含vlib.h

编译代码

        编译时,编译器需要能够搜索packages目录,以找到kernelheaders

链接VLIB

        -lvlib库所在的目录

 

 

支持的函数:

  1. Exponentially-Weighted Running Mean of a Video
  2. Exponentially-Weighted Running Variance of a Video
  3. Uniformly-Weighted Running Mean of a Video
  4. Uniformly-Weighted Running Variance of a Video
  5. Statistical Background Subtraction
  6. Mixture of Gaussians Background Modeling for Grayscale Video
  7. Image Extraction From Background Models (8-Bit)
  8. Packing and Unpacking of Binary Mask Images
  9. Morphological Dilation
  10. Morphological Erosion
  11. Connected Components Labeling
  12. Canny Edge Detection
  13. Image Pyramid
  14. Gaussian 5x5 Pyramid Kernel
  15. Gradient 5x5 Pyramid Kernel
  16. Recursive IIR Filter: Horizontal, First-Order
  17. Recursive IIR Filter: Vertical, First-Order
  18. Integral Image
  19. Hough Transform for Lines
  20. Harris Corner Score
  21. Non-Maximal Suppression (mask output)
  22. Non-Maximal Suppression (list output)
  23. Lucas-Kanade Feature Tracking (Sparse Optical Flow)
  24. Normal Flow
  25. Kalman Filter
  26. Nelder-Mead Simplex
  27. Legendre Moments
  28. Histogram
  29. Bhattacharya Distance
  30. L1 Distance
  31. Color Space Conversions
  32. SAD Based Disparity
  33. Image Rescaling
  34. Histogram Equalization
  35. Hog Cell
  36. Good Features to Track
  37. L2_normalization
  38. Gradients, Magnitude, and Orientation
  39. Hysteresis Thresholding
  40. Grayscale Morphology

参考:VLIB User's Manual (c674x)

下面是参照网友如何将库加入到DVRRDK中:

lib库需是elf格式的,用ccs5.2可编译elf格式lib库,lib库如何生成具体见1.1.2
1、把Jupitercar.lib拷贝到
/home/DVRRDK/DVRRDK_04.00.00.03/dvr_rdk/mcfw/src_bios6/alg/va/lib
2、rules_c674.mk里添加imglib2_elf.lib所在的路径
在/home/DVRRDK/DVRRDK_04.00.00.03/dvr_rdk/makerules
下打开rules_c674.mk在里面添加:
LIB_PATHS += $(RTSLIB_PATH)  \
             $(fc_INCLUDE)/ti/sdo/fc/ecpy/lib/debug/ecpy.ae674 \
             $(dvr_rdk_PATH)/mcfw/src_bios6/alg/scd/lib/scd.ae674\
             $(dvr_rdk_PATH)/mcfw/src_bios6/alg/va/lib/vlib.ae674\
           $(dvr_rdk_PATH)/mcfw/src_bios6/alg/va/lib/Jupitercar.lib\          
最后一个$(dvr_rdk_PATH)/mcfw/src_bios6/alg/va/lib/Jupitercar.lib\是我添加进去的。



本人从事DM8168 DSP开发。

倡导开源,推进发展。



你可能感兴趣的:(dm8168)