dsp ti 图像处理 - CSDN
  • TI dsp,CCS3.1,实验程序,图像处理源代码,9个-TI dsp 来自网上,很适合初学者!
  • 本文以TI TMS320C54X DSP 为例描述了DSP 作为优秀的数字信号处理平台所具备的特点,并在此基础上介绍了利用Altera 公司提供的数字信号处理开发工具DSP Builder 和现代DSP 技术, 在Matlab/Simulink 环境中建立了JPEG ...
  • 基于DSP的数字图像处理(1) var $tag=数字图像处理,dsp芯片,预处理,模式匹配,识别; var $tag_code=23ca84b655eca51427e1802336071ffb; 目 录引 言. 1第1章 数字图像处理的应用及现状. 21
    基于DSP的数字图像处理(1)

    目  录

    引 言. 1

    第1章  数字图像处理的应用及现状. 2

    1.1 数字图像处理的内容. 2

    1.2 数字图像处理的应用. 3

    1.3图像处理与图像识别. 3

    1.4 VPM642图像处理开发板. 4

    1.5 论文组织. 4

    第2章  SEED-VPM642及其图像处理模块. 5

    2.1 SEED-VPM642开发板简介. 5

    2.2 DSP特点. 6

    2.3  TMS320DM642芯片结构. 7

    2.4视频解码芯片YVP5150AM1 9

    2.5 视频处理模块. 10

    2.6 图像采集与数据处理过程. 12

    2.7 EDMA配置. 12

    2.8 CCS集成开发环境. 14

    第3章  图像的预处理及其识别. 15

    3.1 YUV,YCbCr与RBG颜色模型. 15

    3.2图像的平滑处理. 16

    3.2.1邻域平均滤波. 16

    3.2.2中值滤波. 17

    3.3 阈值处理和边缘检测. 21

    3.3.1二值化和阈值处理. 21

    3.3.2微分法边缘检测. 24

    3.3.3 Sobel边缘检测算子. 27

    3.4 细线化. 29

    3.5 几何校正. 31

    3.5.1 图像放缩. 31

    3.5.2 图像旋转. 32

    3.6 图像定位与分隔. 34

    3.6.1  图像定位. 34

    3.6.2 图形切割算法. 35

    3.7 特征提取. 36

    3.8 模式匹配. 36

    第4章 总结. 39

    参考文献. 40

    致谢. 42

     


    引言

    自从上世纪60年代美国喷气推进实验室对航天探测器“徘徊者7号”发回的几千张月球照片进行处理得到清晰逼真的图像之后,数字图像处理技术在科学研究、工业生产和管理部门中得到越来越多的应用。在图像识别、目标跟踪、机器人导航、自动驾驶、交通监视等领域中的应用也极大地促进了图像处理技术的发展。图像处理理论的发展特别是实时图像处理对数字图像处理器提出了较高的要求,图像处理系统必须具有强大的运算功能,DSP的发展正好能满足这一发展的要求。DSP的发展,使得在许多速度要求较高,算法较复杂的场合,取代MCU或其它处理器,而成本有可能更低。

    图像识别技术是图像处理技术的高层次应用,也是模式识别的一个分支,最初从文字识别开始,然后逐步发展到识别静止图像和运动图像,接下来是对三维物体的处理和识别。图像识别技术广泛的用于军事,医学,交通,工业生产等领域,例如,字符识别,医学诊断,遥感图像解释,导航与制导,人脸与指纹识别,污染监测,工业生产检测等等。近年来国际上对这一领域给予了极大地重视,有关图像识别的理论算法也取得了较大的进展,如人工神经元网络,遗传算法等在图像识别的研究中取得了可喜的成果。现在,研究高性能,多用途的图像分析识别系统乃是有待我们努力解决的课题。

    本文从图像处理的现状入手,概括介绍了TI公司DM642 型号的DSP的性能及其图像处理模块的应用,以较大篇幅介绍了关于图像处理的基础理论以及基于DSP的图像处理算法的实现。最后,以这些理论算法为基础,对所采图像中数字、符号信息进行识别,并取到了较为满意的效果。

     

     

     

     

     

    第1章  数字图像处理的应用及现状

         数字图像处理是指使用数字计算机来加工、处理图像,就其处理目的而言可分为:恢复退化图像的本来面目、改善视觉效果、突出图像中目标物的某些特征、提取目标物的特征参数。

    数字图像信息有以下几个特点:⑴信息量大,一幅大小为512×512的二维图像信息量为: bit,这就对计算机的速度和内存容量提出了要求。⑵相关性大,常常有大批像素具有相同或接近的灰度。因此,数据信息压缩的潜力很大。⑶占用频带较宽,如电视图像的带宽约5.6MHz,而语音带宽仅为4kHz左右。这对频带压缩技术提出很高要求。

    1.1 数字图像处理的内容

    数字图像处理学科所涉及的知识面十分广阔,具体方法种类繁多,应用也极为普遍,但从学科研究内容上可以分为以下几个方面:

    (1)图像数字化。将模拟图像转化为计算机可用的离散的图像数据。

    (2)图像变换。改变图像的表示域或表示数据,如傅立叶变换,沃尔什变换,离散余弦变换等,将空间域处理转换为变换域处理。

    (3)图像增强。改善图像的质量和视觉效果,或突出感兴趣的部分,以便于人或机器分析,理解图像内容。

    (4)图像复原。对退化图像进行处理,使处理结果尽量接近原始未失真图像。

    (5)图像分割。根据灰度或几何特性选定的特征,将图像划分为几个有意义的部分,对有意义的部分继续处理分析,提取有用信息,以便进一步做模式识别、机器视觉等处理。

    (6)图像描述和分析。也称图像理解,是对给定的或已分割的的图像区域的属性及各区域之间的关系用更为简单明确的数值、符号或图形来表征,它们反应图像的重要信息和主要特征,有利于人或机器对原图像的分析和理解。

    (7)图像数据压缩。减少图像数据量,以便节省传输和处理时间以及存储容量。编码是压缩技术中最重要且比较成熟的方法。

    (8)图像分类。图像经过某些预处理,再进行特征提取、分割,进而按一定的判据进行判决分类

    (9)图像重建。它利用摄像,X射线或超声波在三维物体中的投射或散射信息,应用一定的算法来构造物体某断层面的二维图像或由多个断面构成三维图像。例如计算机断层扫描成像技术,俗称CT(computer tomography)技术。

    1.2 数字图像处理的应用

     目前,数字图像处理已应用于许多领域。在遥感方面,以数字图像处理为基础,发展了多光谱图像遥感,SAR图像遥感和微波图像遥感,以及与这些遥感技术相对应的技术。目前,人们利用数字图像处理技术处理分析遥感图像,可以有效的进行资源勘探和调查、农业和城市土地规划、作物估产、气象预报、灾害及军事目标监视等。

    在医学方面,无论是临床诊断还是病理研究都大量采用图像处理技术,如X光照片的分析,血球计数,染色体分类等。

    在工业和工程方面,图像处理技术已有效的应用于无损探伤、质量检测和过程控制等方面,如应力分析、流场分析、机械零件检测和识别、印刷电路板疵病检查等。

    在军事方面,图像处理技术的应用上最有价值和迫切需求的是飞行导航、导弹打靶的景物图像制导和寻的。该技术是通过判读侦查照片,进行图像匹配识别和跟踪。

    另外,人像、指纹以及其他痕迹的处理和识别,以及跟踪、监视、交通监控、事故分析等都已在不同程度上使用的图像处理技术的成果。

    目前,数字图像处理研究最为活跃的一个领域视基于模式识别的机器人“计算机视觉” ,该技术已发展到制造具备视觉、听觉和触觉反馈的智能机器人,它将在诸多方面起到重要作用。

    1.3图像处理与图像识别

    图像处理着重强调对给定的图像进行某些变换,从而得到清晰图像的过程。虽然人们常用图像处理泛指各种图像技术,但比较狭义的图像处理主要满足于对图像进行各种加工以改善图像的视觉效果并为自动识别打下基础,或对图像进行压缩编码以减少所需存储空间或传输时间,满足设定传输通路的要求。对含有噪声的图像,要去除噪声,滤去干扰,提高信噪比;对信息微弱的图像进行灰度变换等增强处理;对已经退化的图像进行复原;对失真的图像进行几何校正等变换。

    图像识别就是对经过上述处理的图像进行特征抽取,如抽取图像的边缘、线及轮廓,进行区域分割等,然后根据图形的几何及纹理等特征利用模式匹配、判别函数、决定树、图像匹配等识别理论对图像进行分类,并对整个图像做结构上的分析。

    随着目前对智能化的要求越来越高,图像识别已经而且会继续成为一个备受关注的研究方向。

    1.4 VPM642图像处理开发板

    大量数据的处理和现代图像处理算法要求图像处理系统必须具有强大的运算功能,特别是实时图像处理的场合,对硬件提出更高的要求。SEED-VPM642是一款专为各种视频应用而推出的开发板,核心芯片是TI最新推出的面向多媒体处理领域的数字信号处理器TMS320DM642。DM642建立在C64x DSP核基础上,采用德州仪器公司开发的第二代高性能的先进的超长指令字结构VeloeiTl,在600MHz的时钟频率下,DM642每秒可以进行24亿次16位的乘累加或48亿次的8位的乘累加。这样强大的运算能力使得DM642可以进行实时多视频图像处理。它的增强型直接内存存取 (EDMA)对DSP图像处理系统是非常重要的,它可以在没有CPU参与的情况下完成映射存储空间中数据搬移。

    1.5 论文组织

    论文第一章介绍了数字图像处理的内容、应用及现状,并由图像处理对硬件要求的提高而引入DSP。第二章介绍DSP开发板的硬件结构和开发环境,重点介绍了VPM642开发板的图像处理模块及其图像采集过程。第三章讲述了图像处理理论及算法,并在此基础之上,实现简单的图像识别。

     

     

     

     

    第2章  SEED-VPM642及其图像处理模块

    2.1 SEED-VPM642开发板简介

        SEED-VPM642是一款专为各种视频应用而开发的PCI插卡或带10/100M以太网接口的独立的模板,(见图2.1)其上包含:专用于数字媒体应用的高性能32位定点DSP  TMS320DM642,其工作主频高达720MHz,处理性能可达5760MIPS,可实时实现多路视频/音频的编码运算,如:MPEG4、H.264、G.729等;多路视/音频接口:4路PAL/NTSC制标准复合或Y/C模拟视频输入,1路PAL/NTSC制标准复合或Y/C模拟视频输出,4路标准的麦克风输入或Audio Line In立体声输入,4路标准的Audio Line Out立体声输出;2路可编程切换的RS232/RS422/RS485异步接口,8路数字输入,8路数字输出,用于云台控制和环境检测;大容量本地储存:标准的ATA硬盘接口,方便本地存储,实现数字录像机功能;高速数据传输接口:标准的32位、33MHz、支持主/从模式的PCI 2.2总线或10/100M以太网接口,方便实现数字视频服务器功能;实时时钟,为数字视频/音频提供实时时基信息;软/硬加密功能,更好的保护开发者知识产权。

                     48ab2a61t6e92a97ce5fc

     

    图2.1  SEED-VPM642开发板

    2.2 DSP特点

    为适应快速数字信号处理运算的要求,DSP芯片普遍采用了特殊的硬件和软件结构,以提高数字信号处理的运算速度,并且多数DSP运算操作可以在一个指令周期内完成。DSP芯片的结构特征主要是指:

    ① 哈佛(Harverd)结构及改进的哈佛结构

    哈佛结构不同于冯·诺依曼(Von Neuman)结构的并行体系结构,其主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。与两个存储器相对应的是系统中设置了程序总线和数据总线两条总线,从而使数据的吞吐率提高了一倍。而冯·诺曼结构则是将指令、数据、地址存储在同一存储器中,统一编址,依靠指令计数器提供的地址来区分是指令、数据还是地址。取指令和取数据都访问同一存储器,数据吞吐率低。

    在哈佛结构中,由于程序和数据存储器在两个分开的空间中,因此取指和执行能完全重叠运行。为了进一步提高运行速度和灵活性,TMS320系列DSP芯片在基本哈佛结构的基础上作了改进,一是允许数据存放在程序存储器中,并被算术运算指令直接使用,增强了芯片的灵活性;二是指令存储在高速缓冲器(Cache)中,当执行此指令时,不需要再从存储器中读取指令,节约了一个指令周期的时间。

    ② 专用的硬件乘法器

    在通用微处理器中,乘法是由软件实现的,实际上是由时钟控制的一连串移位运算。而在数字信号处理中,乘法和加法是最重要的运算,提高乘法运算的速度就是提高DSP的性能。在DSP芯片中,有专门的硬件乘法器(DM642有两个乘法器,其他只有一个),使得一次或者两次乘法运算可以在一个单指令周期中完成。大大提高了运算速度。

    ③ 指令系统的流水线结构

    在流水线操作中,一个任务被分成若干子任务,这样,他们在执行时可以相重叠,与哈佛结构相关,DSP芯片广泛采用流水线以减少指令执行时间,从而增强了处理器的处理能力,把指令周期减小到最小值,同时也就增加了信号处理器的吞吐量。

    第一代TMS320处理器采用二级流水线,第二代采用三级流水线,而第三代则采用四级流水线。也就是说,处理器可以并行处理2~6条指令,每条指令处于流水线上的不同阶段。在三级流水线操作中,取指、译码和执行操作可以独立地处理,这可使指令执行能完全重叠。在每个指令周期内,三个不同的指令处于激活状态,每个指令处于不同的阶段。

    ④ 片内外两级存储结构

    在片内外两级存储器结构中,片内存储器虽然不可能具有很大的容量,但速度快,可以多个存储器块并行访问。片外存储器容量大,但速度慢,结合他们各自优势,实际应用中,一般将正在运行的指令和数据放在内存储器中,暂时不用的数据和程序放在外部存储器中。片内存储器的访问速度接近寄存器访问速度,因此DSP指令中,采用存储器访问指令取代寄存器访问指令,而且可以采用双操作数和三操作数来完成多个存储器同时访问,使指令系统更加优化。

    ⑤特殊的DSP指令

    DSP的另一个特征就是采用特殊的DSP指令,不同系列的DSP都具备一些特殊的DSP操作指令,以充分发挥DSP算法和各系列特殊设计的功能。

    ⑥快速指令周期

    哈佛结构、流水线操作、专用的硬件乘法器、特殊的DSP指令再加上集成电路的优化设计,可使DSP芯片的指令周期在200ns 以下。TMS320系列处理器的指令周期已经从第一代的200ns降低至现在的2ns 以下。快速的指令周期使得DSP芯片能够实时实现许多DSP应用。

    2.3      TMS320DM642芯片结构

    DM642 (TMS320DM642)型处理器是TI公司最新推出的面向多媒体处理领域的数字信号处理器(DSP)。 DM642建立在C64x DSP核基础上,采用德州仪器公司开发的第二代高RS232性能的先进的超长指令字结构VeloeiTl.2TM, 含有双数据通路、8个运算单元,每周期可执行8条32-bit指令,支持4个16-bit和8个8-bit连乘加MAC指令,有64个寄存器,取数/存数的数据通道为64-bit。在600MHz的时钟频率下,每秒最多可完成4.8 G次操作,具备在线编程功能,带有的丰富外围接口可以与多种存储器相连,可以直接与网络连接。DM642每秒可以进行24亿次16位的乘累加或48亿次的8位的乘累加,这样强大的运算能力使得DM642可以进行实时多视频图像处理。

    DM542结构框图如图2.2,其外部端口包括:

     

     

    图2.2  DM642结构框图

    ·三路可配置的视频端口,可以进行视频输入输出,数据流输入的无缝连接

    ·VCXO interpolated control port (VIC),内插控制接口

    · 10/100 Mbps ethernet MAC (EMAC),光纤接口

    ·Management data input/output (MDIO) module,数据输入输出控制模组

    ·Inter-Integrated Circuit (I2C) bus Module,I2C总线模组

    ·Multichannel audio serial port (McASP),多通道音频端口

    ·Two multichannel buffered serial ports (McBSPs),多通道缓冲端口

    ·3个32位通用定时器

    ·host port interface (HPI16/HPI32),用户可配置16位,32位主机接口

    ·66 MHz 32-bit peripheral component interconnect (PCI),PCI总线

    ·General-purpose input/output (GPIO) port,通用输入输出端口

    ·64-bit external memory interface (EMIF),64位外部存储器接口

    DM642采用两级Cache结构,1级程序缓存(L1P)是128K的直接映射的缓冲区,1级数据缓存(L1D)是128K的设置相关联的2块缓冲区。2级存储器/缓存包括2M的程序数据存储空间。2级存储器可以配置为映射存储区,缓冲区,或者两者的结合。

    增强的直接存取器访问(EDMA)控制器处理二级(L2)缓存控制器和 DSP 的片外设备之间的所有数据传输。这些数据传输包括高速缓存服务,无缓存内存存取,用户定义数据传输和基本传输。C64x EDMA 最多可支持64 个EDMA 通道,这些通道服务于片外设备和外部存储器。

    内部时钟信号都可以通过内部锁相环电路PLL产生,Power down 电源管理模块可以控制可部分的工作模式,以降低功耗。

    2.4视频解码芯片YVP5150AM1

    TVP5150A 芯片是一款超低功耗NTSC/PAL/SECAM视频解码器。TVP5150A 解码器将 NTSC, PAL, 和 SECAM 视频信号转换为8位ITU-R BT.656信号。在典型运行条件下,该解码器的功耗是115mW,而在低功耗模式下,功耗仅有1mW,是的它在便携式设备中得到大量应用。TVP5150A 解码器需要一个外部晶振,可以再I2C总线下进行编程,内核电压1.8V,I/O电压3.3V。

    TVP5150A 解码器将基带模拟视频转换为数字YCbCr 4:2:2 复合视频,同样支持合成及S-Video输入。内部带有9位A/D转换器,输出为8位4:2:2格式或8位ITU-R BT.656格式。解码器时钟频率为14.31818M,由晶振分频所得。内部寄存器的读写采用总线控制。下图为TVP5150A与DSP的连接电路图,由于TVP5150A的输入信号为0.75VPP,而外部输入信号一般为1VPP,所以外部视频输入与TVP5150A之间串接18Ω和56Ω到地分压电阻网络,以达到TVP5150A输入电平要求。本系统采用复合视频信号输入,CYBS/Y0作为复合视频输入,CYBS/C0接地。

     

     

    图2.3 解码芯片与DSP连接电路图

    2.5 视频处理模块

    DM642型数字信号处理器可实时处理4路模拟视频和音频输入、l路模拟/数字视频和1路模拟音频信号输出,适应PAL/NTSC标准复合视频CVBS或分量视频Y/C格式的模拟信号输入,可适应PAL/NTSC标准S端子或数字RGB模拟/数字信号输出,可适应标准麦克风或立体声音频模拟输入及标准立体声音频模拟输出,具有对多路采集数据进行实时处理和分析的功能,可实现数据和图像叠加显示。视频框图如图2.4。

     

    图2.4 视频端口配置

       视频接口可工作在三种状态:视频捕获模式,视频显示模式,TSI捕获模式。如图示,每个视频端口包括A,B通道,两通道共有5120字节的缓冲器。对于视频捕获模式,端口可以作为2个8/10位通道来捕获BT.656或RAW原始图像格式;或者作为单通道8/10位的BT.656,8/10位RAW,16/20位的Y/C视频格式,16/20位的RAW原始图像格式,8位的TSI格式。对于视频显示模式下,端口可以在单通道方式下显示:8/10位的BT.656,8/10位RAW,16/20位的Y/C视频格式,16/20位RAW。

    视频捕获操作方式如下:模块对输入的图像数据采样,并将其存入图像的FIFO里面,当FIFO里的数据达到一定数量后,将出发DMA通道将数据从FIFO送入DSP存储器中。某些情况下,在图像数据输入后进行色彩分离(YC信号分离),这就需要多个FIFO和多通道DMA来进行数据传输。视频捕获和视频显示有多种方式,这里仅介绍BT.656 捕获和显示方式。

    BT.656 捕获方式中,TVP5150A 解码器将基带模拟视频转换为数字YCbCr 4:2:2 复合视频,系统捕获8位或10位的4:2:2的亮度、色彩复合信号进入单一的数据流中。视频信号转换为Cb,Y,Cr,Y,Cb,Y,Cr,……的形式,其中,序列Cb,Y,Cr表示同位置的亮度和色彩样本,接下来的Y值对应于下一个亮度样本。数据流以这种方式分离后,各分量分别以打包的形式进入各自所对应的FIFO中,为进一步进入DSP内存中的缓冲器做准备。打包和采样的顺序依赖于采样位数(8为或10位)以及DSP的模式(big-endianess 和little-endianess)。每个通道的数据线都是10位,对于8位操作,输入的数据按高位对齐(9-2位),低2位忽略。

    BT.656 视频显示方式下,将输出一通道复合数据流的8位Y/C或者10位的4:2:2同位置亮度色度信号。像素点成对输出,每对包含两个亮度采样和两个色度采样。显示时要连接SAA7120视频译码器,如下图示。

     

    图2.5  8位Y/C显示方式连接

    2.6 图像采集与数据处理过程

    TMS320DM642有三个可配置的视频端口:VP0、VP1和VP2,与视频采集芯片连接,该系统将VP0口与之连接,采用8位ITU-R BT.656模式。将VPxD2~9,直接与A/D芯片的8根输出管脚相连。输入的PAL/NTSC模拟信号经过视频解码芯片A/D后形成的数字视频信号直接进入相应的视频端口中。采集8 bit ITU-R BT.656数据时,视频端口接收A/D的亮度与色度的复合数据流(YUV422,称为packet格式:Cb,Y,Cr,Y,Cb,Y,Cr ),然后将它分解成三个单独的数据流(planar格式),分别是Y,U,V,再将分离后的数据打包存放到各自的FIFO中。

    将FIFO分成3部分,其中为亮度数据Y分量分配的FIFO为1280B,为每个色度数据分量分配FIFO为640B;每个FIFO都有相关的存储器映射地址:YSRC,CBSRC和CRSRC;EDMA将使用这些地址作为数据搬运操作的源地址。每个视频端口最多可以使用六个EDMA通道,当某个FIFO的计数器到达VCTHRLDn寄存器设置的数值时,就可以触发相应的EDMA(增强的直接存储器存取控制器)事件。

    图像获取模式下,使用YEVT, CbEVT,  CrEVT事件来告知DMA控制器将buffer中的图像采样数据复制到DSP的存储器中。产生事件的号码是VCxTHRLD中的VCTHRLDn设置的。在每个YEVT, DMA 使用YSRC定位源地址,将数据从Ybuffer里面送入DSP存储器中;类似的,在每个CBSRC ,CrEVT,DMA分别使用CBSRC和CRSRC定位各自源地址,将数据从各自buffer里面送到DSP存储器中。对于每4个Y采样,对应于2个Cb 采样和2个 Cr采样,所以Cb 和 Cr的buffer空间是Y空间的一半。

    2.7 EDMA配置

    EDMA配置是为了从FIFO搬运数据到SDRAM中,采用1D/2D传输,即源地址不变,而目的地址则在每次传输后按索引值自动更新。我们为每一场设置一个EDMA参数,并将这些参数连接起来,一次传输任务的结束会自动从参数RAM中装载下一次传输需要的参数,从而实现某些复杂数据流的传输。

    初始EDMA参数设置:数据源地址;数据目的地址:第一行起始地址;数据单元计数:一行的采样点数:每行像素数;阵列计数:一场的采样行数;阵列索引:一场采样点数的两倍(两场按行交叉存放);参数连接地址:下一组EDMA参数。格式如图2.7所示。

    可选参数设置:优先级:用户设置;数据单元子长:32bit;1D/2D源/目的地址传输;源/目的地址更新模式:源地址不更新,目的地址按阵列索引更新;传输结束中断:使能每帧的底场结束中断,并设置中断码;顶场禁止;EDMA事件连接:使能所有EDMA参数的连接。

    通过以上参数设置后三个EDMA通道分别负责从视频端口FIFO中搬运Y、Cb和Cr三个分量到SDRAM中;EDMA每启动一次,从FIFO中搬运一行的采集数据到SDRAM中,并在搬运完毕后自动更新目的地址;EDMA阵列计数值到0后启动参数连接,从参数RAM中装载下一次传输需要的参数,若使用了传输结束中断,则执行EDMA中断服务程序。

     

    EDMA参数存储结构

    Option(可选参数)

    Word 0

    SRC Adress(源地址)

    Word 1

    Array/Frame count

    (帧/阵列计数)

    Element count

    (数据单元计数)

    Word 2

    Dst address(目的地址)

    Word 3

    Array/Frame index

    (帧/阵列索引)

    Element index

    (数据单元索引)

    Word 4

    Element count reload

    (数据计数的重加载)

    Link address

    (连接地址)

    Word 5

    图2.7  EDMA参数配置存储结构

    模拟视频输入PAL或NTSC都是按场隔行扫描,因此数据可以按照场模式进行存储,即先存储顶场再存储底场,在存储器中是单独的两场图像;或者按帧模式进行存储,即顶场和底场按行交叉存储,将两场图像拼成一帧图像。

    按帧模式存储时,在SDRAM中申请一帧缓存,然后为每一帧中的每一场的亮度和色度分量指定存储地址,两场地址相差一个象素行,首先采集顶场,然后采集底场,两场按行交叉存放形成完整的一帧。

    在DSP中开辟三个存储数据段,分别存放这些数据:capChaAYSpacecap,ChaACbSpace,capChaACrSpace。段定义如下:

    #pragma DATA_SECTION(capChaAYSpace, ".capChaAYSpace")

    Uint8 capChaAYSpace[720*576];

    #pragma DATA_SECTION(capChaACbSpace, ".capChaACbSpace")

    Uint8 capChaACbSpace[360*576];

    #pragma DATA_SECTION(capChaACrSpace, ".capChaACrSpace")

    Uint8 capChaACrSpace[360*576];

    由于摄像头采用镜像方式成像,摄像头扫描时,先扫描到的是图片的最底端,所以EDMA传输时应将最先采到的数据送入存储区的高地址处。Y采样时,由于每行为720像素,EDMA每次传输的数据单元数应为720字节,即Y目的基地址应为最高地址-720。目的地址按阵列索引更新方式应为,每次目的地址减去720字节的位置。Cb,Cr采样与之类似。

    2.8 CCS集成开发环境

     CCS(Code Composer Studio)提供了环境配置,源文件编辑,程序调试,跟踪和分析等工具,可以帮助用户在一个软件环境下,完成编译,编译链接,调试和数据分析等工作。CCS可以工作在两种模式下——软件仿真器和与硬件开发板相结合的在线编程。前者可以脱离DSP芯片,在PC机上模拟DSP的工作机制,主要用于前期算法调试。后者实时运行在DSP芯片上。

    CCS操作界面如下图,关于CCS的使用,详见参考文献[3],在此不再赘述。

    展开全文
  • TI官方给的用于DSP平台的图像处理库,包括许多现成的图像处理函数,可以直接调用
  • TI给我们提供了一些图像处理中经常使用的一些库函数,ImgLib。我们可以在自己的工作中使用。 方法如下: 设置Include路径: 在Build Options中的Basic中的Preprocessing中设置Include Search Path: 我们可以...

    TI给我们提供了一些图像处理中经常使用的一些库函数,ImgLib。我们可以在自己的工作中使用。

    方法如下:

    1. 设置Include路径:
      在Build Options中的Basic中的Preprocessing中设置Include Search Path:
      我们可以使用相对路径或者绝对路径:
      相对路径:如:../../../C6000/imglib/include
      绝对路径:$(Install_dir)/C6400/imglib/include
    2. 设置Lib路径:
      Linker->Basic中的Library Search Path设置路径:
      我们可以使用相对路径或者绝对路径:
      ../../../C6000/imglib/lib
      $(Install_dir)/C6400/imglib/lib
    3. 设置库文件:
      Linker->Basic中的Include Libraries 中:
      img64x.lib
    4. 包含头文件
      找到我们要使用的函数所在的h文件如img_sobel.h
      在我们的程序中包含:#include "img_sobel.h"

      现在我们就可以使用"img_sobel.h"文件中的函数:
      IMG_sobel(m_dbFrameBuffer,m_dbFrameBufferTemp,SIMGWIDTH,SIMGHEIGHT);
    展开全文
  • C6000 DSP技术深度探索-图像处理算法仿真到硬件实现踩过的那些坑写在前面图像处理算法-仿真篇DSP硬件移植篇-挖坑篇DSP硬件移植篇-坑的种类 写在前面 时间如白马过隙,今天登录CSDN,发现距离自己上次发布的博客已经过...

    C6000 DSP技术深度探索-图像处理算法仿真到硬件实现踩过的那些坑

    写在前面

    时间如白马过隙,今天登录CSDN,发现距离自己上次发布的博客已经过了三年有余,但依然记得当时注册CSDN时的想法,学习大神的经验,通过撰写博客记录自己工作中的点滴,提升自己的文字编辑能力,却发现很多事情坚持下来真的不容易,一方面自己工作中难于使用网络,另一方面,作为一名有娃的程序员,自己的时间少的可怜,工作之余还要担负带娃的职责,即使不带娃,娃也不会给你一个安安静静上网码字的机会。

    图像处理算法-仿真篇

    说起图像处理算法仿真,肯定离不开MATLAB,MATLAB以其强大的科学计算仿真能力和数据可视化能力,为图像处理算法的仿真提供了强大的工具基础,针对图像及视频数据处理,MATLAB提供了专业的图像处理工具箱,里面提供了各种常用的图像处理算法以及图像可视化工具。在我的工作中,对于一些简单的算法原理,直接可以使用MATLAB提供的函数即可,对于绝大多数想法需要自己进行设计,以源码的形式完成各种仿真,以方便后期向硬件平台的移植工作。

    DSP硬件移植篇-挖坑篇

    工作多年,深知一套正规的软件开发流程、软件编程规范及好的编程习惯的重要性,奈何始终无法从一而终的贯彻执行,经常是虎头蛇尾,最终挖了一些需要自己付出深刻代价才能填掉的坑,与在MATLAB平台仿真不同,硬件移植过程更需要我们考虑更多的东西,首先要对我们所使用的硬件平台的资源做到心中有数,最少要清楚有多少一级存储资源,多少二级存储资源,多少片外存储资源,使用的硬件接口有哪些(串口、网络、SRIO、GPIO、SPI),其次要对C语言及数据结构有一个深入的了解,此外还要了解所使用硬件平台的一些特性,如 针对TI公司的多核DSP,要对其编译器和优化原理有一些深入的了解,这才能在你的算法移植完成,无法满足实时处理要求时进行深度的优化。

    DSP硬件移植篇-坑的种类

    1. 硬件接口:出现问题,首先要确保不是硬件接口的问题,这个确定的方式比较简单,通过数据源端构建测试数据流来对DSP端进行验证,常用的做法就是发送递增数据,或者其他有规律方便定位问题的数据
    2. 语言篇:这里的坑可多可少,就要看每个人的水平和实际的项目经历,作为程序员,不要害怕出错,可以通过不断为自己填坑和为他人填坑,来提高自己的能力。
    3. 编程中最害怕的问题就是程序跑飞的问题,如果可以排除硬件的问题(如看门狗等),则基本可以断定是内存访问越界的问题,涉及到内存访问越界,基本逃不出数组和指针的使用问题,如果代码量不算大,可以约个好友,一起把代码从头到尾核查一遍;如果比较大,则可以逐步屏蔽新增的代码,直至定位到出问题的代码段,范围缩小后,配合单步调试定位出错原因。
    4. 算法移植过程中另外的一个问题就是,对于MATLAB和DSP 中的图像访问方式不太一样,此外MATLAB作为一种脚本语言,操作及存储数据时,一般不需要定义数据类型,而DSP中使用C语言作为编程语言,需要严格确定数据类型,这还涉及到定点与浮点数据的确定及转换问题
    展开全文
  • 实时图像处理技术,尤其是基于多核DSP+FPGA架构的实时图像处理技术,因为该种方案本身所具有种种优点,又成为了现今各项图像处理新技术研究中的备受关注的焦点 红外图像 细胞图像 图像拼接 2.总体设计方案: FPGA...

    1.需求分析

    • 实时图像处理技术,尤其是基于多核DSP+FPGA架构的实时图像处理技术,因为该种方案本身所具有种种优点,又成为了现今各项图像处理新技术研究中的备受关注的焦点
    • 红外图像
    • 细胞图像
    • 图像拼接

    2.总体设计方案:

    FPGA负责完成视频图像采集、显示的逻辑控制;DSP负责完成图像拼接算法的实现;并利用FPGA内部FIFO与DSP的EMIFA接口直接通信,实现FPGA与DSP之间的数据交换。

    2.1 DSP与FPGA的通信接口设计

    • 该框架基于数据流模式进行处理器内部的核间数据交互,采用了高速传输接口SRIO与FPGA之间进行通信。
    • 多核DSP与FPGA之间可选用uPP传输模式或者RapidIO高速数据通道进行双工数据通信。
    • PciE

    2.2 图像采集接口

    • FPGA读采集图像时所需的标准接口Camera Link协议模块
    • 该系统的数字图像输入前端由SDI数字输入端、USB3.0传输模块、PAL制视频图像采集模块共同构成。

     

    2.3 FPGA作为系统的主控制单元(除了做图像高速采集协处理器外,还起到类似ARM的作用?)

    • FPGA对图像进行显示的标准接口HDMI模块
    • FPGA实现PAL制式或DVI制式的视频图像采集,将采集到的图像数据传给DSP,接收DSP回传的结果并显示输出。

     

    3.应用例子

    • 基于XILINX V6系列FPGA和TI TMS320C6657双核DSP的实时图像处理系统。系统选用TI多核DSP作为图像数据运算的主处理器,用以实现数字图像实时处理的核心算法。系统选用XILINX公司Virtex系列高端FPGA作为协处理器和系统的主控制单元,用来协调系统中各个外设功能模块,并完成图像采集和显示控制的功能。
    • 为了完成图像目标点的检测和确认,同时实现FPGA与DSP之间的通信数据高速传输,文中基于高速DSP芯片TMS320C6455提出了一种数字图像处理系统设计方案
    • 以TMS320C6657 DSP和XC6VLX240T FPGA为核心芯片,设计了一套基于图像处理的硬件系统平台
    • TI TMS320C6657双核DSP + Artix-7 FPGA
    • 基于视频的车辆异常行为检测系统设计与开发:采用2片ADI公司TigerSHARC系列——ADSP TS201芯片作为核心处理器;两片Xilinx公司的Spartan-6系列FPGA芯片XC6SLX100-3CSG484I,作为通信传输和接口控制的核心处理器
    • 选用TI公司TMS320C6000系列DSP和Altera公司的Cyclone II系列FPGA作为核心器件

    关键词:多核DSP; TMS320C6657; 核间通信; 硬件系统平台; 图像匹配;

    展开全文
  • 基于DSP和FPGA的通用图像处理平台设计 时间:2009-07-24 10:13:57 来源:国外电子元器件 作者:孙浩,陈安,胡跃明 华南理工大学 摘要:设计一种基于DSP和FPGA架构的通用图像处理平台,运用FPGA实现微...
  • TI DSP DM642下对图像做二值化处理的使用实例,有很强的参考价值
  • ➢ SOM-XM5728是信迈科技基于 TI AM5728 处理器的工业级核心板,采用沉金无铅、十层板、工业级设计,可应用于运动控制系统、机器视觉处理系统、图像识别系统、音频分析系统、视频分析系统,高端测量仪器等行业应用。...
  • 6678多核图像处理

    2020-07-30 23:31:58
    6678多核图像处理 具体解释https://blog.csdn.net/yunge812/article/details/80901855
  • 基于FPGA+DSP的实时图像处理平台的设计与实现[日期:2008-8-7]来源:电子技术应用 作者:鲁昌华,石洪源,梁银海,殷 俊[字体:大 中 小] 药品灌装生产前必须对药用玻璃瓶进行检测,把不合格品剔除,才能进行药品的...
  • TI DSP系列分类

    2017-05-04 13:31:08
    首先上图,TI官网产品结构树,由此可见TI当前主推和热门使用的DSP处理器。 ---------------------------------------------------------------------------------------------------------------------- TI DSP从...
  • 1、引言 完成某一特定任务的图像处理系统,其硬件方案大体上有三种:使用通用计算机[1]、使用ASIC(Application Specific Integrated Circuit)[2]和使用DSP(Digital Signal Processor)[3]。使用通用计算机的方案...
  • 做了这么多年的DSP处理器开发,兜兜转转,感觉最后活下来的貌似也就剩下这两家,ADI和TI。单单就DSP来说,TI是超级大户,众所周知的大,ADI是迷你小众,用的人比较少,行业应用也比较少,但他仍然坚强的活着,并活的...
  • TES601是北京青翼科技的一款基于FPGA与DSP协同处理架构的双目交汇视觉图像处理系统平台,该平台采用1片TI的KeyStone系列多核浮点/定点DSP TMS320C6678作为核心处理单元,来完成视觉图像处理算法,采用1片Xilinx的...
  • 一引言  DSP有两种解释:一种是数字信号处理器... DSP是一种特别适合于进行数字信号处理运算的微处理器,其主机应用是实时快速地实现各种数字信号处理算法。根据数字信号处理的要求,DSP芯片一般具有如下主...
  • TI DSP FFT算法的应用

    2013-10-01 17:39:41
    这篇文章是应一些找我讨论DSP的同学所写,贴在这里大家一起学习。 曾有不少论坛上的同学(包括DSP算法讨论群里的一些同学)问过我关于TI的FFT库的使用,这里我将我使用过的一些经验说一下。 TI的这个FFT库在计算...
  • 本文主要介绍在TIDSP平台,尤其是非对称多核的Davinci和OMAP平台上基于Gstreamer的多媒体处理框架,对GPP+DSP+视频协处理器VICP的多核架构,Gstreamer的插件设计来进行音视频codec的任务分工和调度。数字信号...
  • 可以从多核开发套件的图像处理demo文件夹C:\ti\mcsdk_2_01_02_06\demos\image_processing中导入工程,读BMP图像主要是两个文件mcip_bmp_utils.c和mcip_bmp_utils.h,我的代码也是“拿来主义”,大部分与TI源代码相同...
1 2 3 4 5 ... 20
收藏数 2,230
精华内容 892
热门标签
关键字:

dsp ti 图像处理