数字图像处理试验指导书new1_第1页
数字图像处理试验指导书new1_第2页
数字图像处理试验指导书new1_第3页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1.1图像点实验图像反色实验实验目的1熟悉视频显示程序的运行过程、控制过程,搞清数据处理、传输途径;2. 结合实例学习如何在视频显示程序中增加图像处理算法;3了解图像反色的算法和用途;4了解RF-5程序框架。实验内容1. 系统初始化;2. RF-5程序框架实现;3. 反色算法实现。实验背景知识将图像按象素进行求反,取得类似照相底片效果。求反处理的图像与原始图“黑 白颠倒,可以看清原始图中灰黑区域的情况。求反的图像一般用于数字图像的 初步处理。爆始图像反色卅的图像设Da表示输入图像的灰度,Db表示输出图像的灰度。灰度变换方程为:DB=f(DA)=255-DA程序简介程序包含文件介绍1. main

2、.c:实验的主程序。系统使用到资源、CSL、BIOS以及任务初始化2. appData.c SCOM 模块初始化。3. tskVideol nput .c:视频输入任务初始化及输入任务处理。4. tskVideoOutput.c:视频输出任务初始化及输出任务处理。5. DEC643.ge:系统初始化。6. *h :程序使用的头文件。7. *lib :程序使用的库文件。8.li nk_dm642 d: 库文件连接命令文件。9. VideoReverseloop2.tc: BIOS 配置文件。10. VideoReverseloop2cfg d DSP存储器及资源分配与程序各段的连接关系。程序架构

3、简介实验例程采用RF-5 参考设计框架5实现视频的采集、处理及显示。程序使 用2个任务模块,视频采集任务以及视频处理输出任务。系统流程图一初始化模块介绍1. 系统初始化模块功能介绍:初始化CSL以及BIOS设置 64K 的 CACHE ,并将其映射到 EMIF 的 CE0 及 CE1 空间设置 DMA 优先级序列,长度2. RF-5 模块初始化初始化 RF-5 框架中用于内部单元传递消息的 SCOM 模块3. 任务模块初始化启动任务存储空间分配及管理二任务模块介绍1. 输入任务输入任务从输入设备驱动程序获得视频图像,使用FVID 视频驱动程序提供的 FVID_exchange 函数调用输入设备

4、按照 4:2:2 格式获取一帧视频图像。 然后发送采集完成消息到输出设备; 最后等待输出任务发送输出完成消息后, 进 行下次数据采集处理。2. 输出任务 输出任务接到采集完成消息后,对采集到图像信息进行处理。处理完成后使 用 FVID 视频驱动程序提供的 FVID_exchange 函数调用显示设备实现图像 显示。最后发送输出完成消息给输入任务。然后等待下次的采集完成消息。为使实验效果明显, 本试验只对屏幕方框区域内的图像进行反色处理。 具 体详见:tskVideoOutput.c程序中进行画矩形边框函数 drawRectangle,反色处 理函数见: tskVideoOutput.c 程序中

5、 videoReverse。1.1.1.5 实验准备首先将光盘下 03. Examples of Program 04. SEED-DTK643 实验程序目录下的3.6.1 VideoReverse 的文件夹拷贝到 D 盘根目录下。1. 将 DSP 仿真器与计算机连接好;2. 将 DSP 仿真器的 JTAG 插头与 SEED-DEC643 元的 J1 相连接;3. 翻开 SEED-DTK643 的电源。观察 SEED-DTK_MBoard 单元的+ 5V,+ 3.3V, 15V,15V 的电源指示灯灯以及 SEED-DEC643 的电源指示灯 D1 是否均 亮;假设有不亮的,请断开电源,检查电

6、源。4. 将视频转接线与 DEC643 的 J13 接好,将摄像头的输出接入到 VinY ;将 PAL 制式的显示器 链接到 VoutB 上。实验步骤1翻开CCS,进入CCS的操作环境。2. 装载 VideoReverseloop2.pjt。3. 运行程序,观察显示。实验结果 可以观察到,屏幕方框区域内的图像有类似照相底片效果,到达了设计要求。 思考实验程序由于只处理亮度信号, 所以只在任务中处理了亮度数据, 而色差信号 数据未作处理。您是否能将它们也进行取反处理后输出?图像灰度实验1.121实验目的1熟悉视频显示程序的运行过程、控制过程,搞清数据处理、传输途径;2. 结合实例学习如何在视频显

7、示程序中增加图像处理算法;3. 理解和掌握图像的灰度显示原理和应用;4了解RF-5程序框架。实验内容1. 系统初始化;2. RF-5程序框架实现;3. 灰度显示算法实现。实验背景知识灰度图gray-scale imgc5是指将图像按照灰度等级的数目来划分后形成的图像。 灰度模式最多使用256级灰度来表现图像,图像中的每个像素有一个 0黑色 到255 白色之间的亮度值。实现灰度图的方法比拟简单,将UV分量的值赋为0x80,丫分量值保持不变即可。程序简介程序包含文件介绍1. main.c:实验的主程序。系统使用到资源、CSL、BIOS以及任务初始化2. appData.c SCOM 模块初始化。3

8、. tskVideol nput .c:视频输入任务初始化及输入任务处理。4. tskVideoOutput.c:视频输出任务初始化及输出任务处理。5. DEC643.gel:系统初始化。6. Grayscaleloop2.tc: BIOS 配置文件。7. *h :程序使用的头文件。8. *lib :程序使用的库文件。9.li nk_dm642 d: 库文件连接命令文件。10. Grayscaleloop2cfg d DSP存储器及资源分配与程序各段的连接关系。程序架构简介实验例程采用RF-5 参考设计框架5实现视频的采集、处理及显示。程序使 用2个任务模块,视频采集任务以及视频处理输出任务。

9、系统流程图一初始化模块介绍1系统初始化模块功能介绍:初始化CSL以及BIOS设置64K的CACHE,并将其映射到 EMIF的CEO及CE1空间设置DMA优先级序列,长度2. RF-5 模块初始化初始化 RF-5 框架中用于内部单元传递消息的 SCOM 模块3. 任务模块初始化启动任务存储空间分配及管理一任务模块介绍1. 输入任务输入任务从输入设备驱动程序获得视频图像,使用 FVID 视频驱动程序提 供的 FVID_exchange 函数调用输入设备按照 4:2:2 格式获取一帧视频图像。 然后发送采集完成消息到输出设备; 最后等待输出任务发送输出完成消息后, 进 行下次数据采集处理。2. 输出

10、任务输出任务接到采集完成消息后, 对采集到图像信息进行处理。 处理完成后使用 FVID 视频驱动程序提供的FVID_exchange函数调用显示设备实现图像显示。 最后发送输出完成消息给输入任务。然后等待下次的采集完成消息。为使实验效果明显,本试验只对屏幕方框区域内的图像进行处理。具体详见: tskVideoOutput.c程序中进行画矩形边框函数drawRectangle,灰度处理函数见:tskVideoOutput.c 程序中 removeColor 。1.1.2.5 实验准备首先将光盘下 03. Examples of Program 04. SEED-DTK643 实验程序目录下 的

11、3.6.2 Grayscale 的文件夹拷贝到 D 盘根目录下。1. 将 DSP 仿真器与计算机连接好;2. 将 DSP 仿真器的 JTAG 插头与 SEED-DEC643 元的 J1 相连接;3. 翻开 SEED-DTK643 的电源。观察 SEED-DTK_MBoard 单元的 5V, 3.3V, 15V,15V 的电源指示灯灯以及 SEED-DEC643 的电源指示灯 D1 是否均亮;假设有不亮的,请断开电源,检查电源。4. 将视频转接线与 DEC643 的 J13 接好,将摄像头的输出接入到 VinY ;将 PAL 制式的显示器链接到 VoutB 上。实验步骤1翻开CCS,进入CCS的

12、操作环境。2. 装载 Grayscaleloop2cfg.pjt。3. 运行程序,观察显示。实验结果矩形框内的图像是经过处理后的,方框外的图像是未经处理的。思考 了解灰度图的使用范围,以及对灰度图的处理方式有哪一些?/* 平滑处理平均模板 */void AverageSmoothint i,j;float fTemp;int intTemp;for (i=intALines;i<intDLines;i+)for (j=intAPixels;j<intDPixels;j+)/ * 用平均模板进行处理 */f Temp = (*(Uint8 *)(srcFrameBuf + (i-1)

13、*numPixels + (j-1) +(*(Uint8 *)(srcFrameBuf + (i-1)*numPixels + j) +(*(Uint8 *)(srcFrameBuf + (i-1)*numPixels + (j+1) +(*(Uint8 *)(srcFrameBuf + i*numPixels + (j-1) +(*(Uint8 *)(srcFrameBuf + i*numPixels + j) +(*(Uint8 *)(srcFrameBuf + i*numPixels + (j+1) +(*(Uint8 *)(srcFrameBuf + (i+1)*numPixels +

14、 (j-1) +(*(Uint8 *)(srcFrameBuf + (i+1)*numPixels + j) +(*(Uint8 *)(srcFrameBuf + (i+1)*numPixels + (j+1);intTemp = ( int )(fTemp/9 + 0.5);if (intTemp<0) intTemp = 0;if (intTemp>255) intTemp = 255;*(Uint8 *)(disFrameBuf->frame.iFrm.y1 + i*numPixels + j) = intTemp;图像阈值分割实验目的1熟悉视频显示程序的运行过程、控制

15、过程,搞清数据处理、传输途径;2. 结合实例学习如何在视频显示程序中增加图像处理算法;3. 理解和掌握图像的域值分割的原理和应用;4了解RF-5程序框架。实验内容1. 系统初始化;2. RF-5程序框架实现;3图像的域值分割算法实现。实验背景知识灰度的阈值变换可以将一幅灰度图像转换成黑白二值图像。它的操作过程是先由用户指定一个阈值,如果图像中期权像素的灰度值小于该阈值, 那么将该像 素的灰度值设置为0,否那么灰度值设置为255。灰度的阈值变换的变换函数表达式如下:(255(2 7)其中T为指定的阈值。原始懼像阈伍分割頂的图像程序简介程序包含文件介绍1. main.c:实验的主程序。系统使用到资

16、源、CSL、BIOS以及任务初始化2. appData.c SCOM 模块初始化。3. tskVideolnput.c:视频输入任务初始化及输入任务处理。4. tskVideoOutput.c:视频输出任务初始化及输出任务处理。5. DEC643.ge:系统初始化。6. Thresholdloop2.tcf: BIOS 配置文件。7. *h :程序使用的头文件。8. *lib :程序使用的库文件。9.li nk_dm642 d: 库文件连接命令文件。10. Thresholdloop2cfg d: DSP存储器及资源分配与程序各段的连接关系。程序架构简介实验例程采用RF-5 参考设计框架5实现

17、视频的采集、处理及显示。程 序使用2个任务模块,视频采集任务以及视频处理输出任务。系统流程图一初始化模块介绍1系统初始化模块功能介绍:初始化 CSL 以及 BIOS设置 64K 的 CACHE ,并将其映射到 EMIF 的 CE0 及 CE1 空间设置 DMA 优先级序列,长度2. RF-5 模块初始化初始化 RF-5 框架中用于内部单元传递消息的 SCOM 模块3. 任务模块初始化启动任务存储空间分配及管理二任务模块介绍1. 输入任务输入任务从输入设备驱动程序获得视频图像,使用FVID 视频驱动程序提供的 FVID_exchange 函数调用输入设备按照 4:2:2 格式获取一帧视频图像。

18、然后发送采集完成消息到输出设备; 最后等待输出任务发送输出完成消息后, 进 行下次数据采集处理。2. 输出任务输出任务接到采集完成消息后, 对采集到图像信息进行处理。 处理完成后使 用 FVID 视频驱动程序提供的 FVID_exchange 函数调用显示设备实现图像 显示。最后发送输出完成消息给输入任务。然后等待下次的采集完成消息。为使实验效果明显,本试验只对屏幕方框区域内的图像进行处理。 具体详见:tskVideoOutput.c程序中进行画矩形边框函数drawRectangle,阈值处理函数见:tskVideoOutput.c 程序中 threshold 。/*二值化阈值初始化 */Ui

19、 nt8 in tThreshold = 0x80;/更改此值来进行阈值的设定1.1.3.5 实验准备首先将光盘下 03. Examples of Program 04. SEED-DTK643 实验程序目录下的3.6.3 Threshold 的文件夹拷贝到 D 盘根目录下。1. 将 DSP 仿真器与计算机连接好;2. 将 DSP 仿真器的 JTAG 插头与 SEED-DEC643 元的 J1 相连接;3. 翻开 SEED-DTK643 的电源。观察 SEED-DTK_MBoard 单元的+ 5V,+ 3.3V, 15V,15V 的电源指示灯灯以及 SEED-DEC643 的电源指示灯 D1

20、是否均 亮;假设有不亮的,请断开电源,检查电源。4. 将视频转接线与 DEC643 的 J13 接好,将摄像头的输出接入到 VinY ;将 PAL 制式的显示器链接到 VoutB 上。1.1.3.6 实验步骤1翻开CCS,进入CCS的操作环境。2. 装载 Thresholdloop2.pjt。3. 运行程序,观察显示。实验结果矩形框内的图像是经过处理后的,方框外的图像是未经处理的。思考更改阈值intThreshold的值,注意在0255之间后,看看效果有什么不同?灰度图的线性变换实验目的1熟悉视频显示程序的运行过程、控制过程,搞清数据处理、传输途径;2. 结合实例学习如何在视频显示程序中增加图

21、像处理算法;3. 理解和掌握的线性变换的原理和应用;4了解RF-5程序框架。实验内容1. 系统初始化;2. RF-5程序框架实现;3图像的线性变换算法实现。实验背景知识灰度的线性变换就是将图像中所有的点的灰度按照线性灰度变换函数进行变换。 该线性灰度变换函数f (x)是一个一维线性函数:/(,r) =灰度变换方程为:Z?=f(DA) = fA*DA +fB式中参数fA为纯属函数的斜率,fB为纯属函数的在y轴的载距,Da表示 输入图像的灰度,Db表示输出图像的灰度。当 fA>1时,输出图像的比照度将增大;当fA<1时,输出图像的比照度将减小;当 fA=1且fB工0时,操 作仅使所有像

22、素的灰度值上移或下移,其效果是使整个图像更暗或更亮;如果 fA<0,暗区域将变亮,亮区域将变暗,点运算完成了图像求补运算。特殊情况下,当fA=1,fB=0时,输出图像和输入图像相同;当 fA=-1,fB=255时,输 出图像的灰度正好反转。线性变换晞的惘像(M*載屋1.1.4.4 程序简介1.1.4.4.1 程序包含文件介绍1. main.c:实验的主程序。系统使用到资源、CSL、BIOS以及任务初始化。2. appData.c:SCOM 模块初始化。3. tskVideol nput .c:视频输入任务初始化及输入任务处理。4. tskVideoOutput.c:视频输出任务初始化及输

23、出任务处理。5. DEC643.gel:系统初始化。6. LinerTransloop2.tcf: BIOS 配置文件。7. *h :程序使用的头文件。8. *.lib :程序使用的库文件。9.link_dm642 d: 库文件连接命令文件。10. LinerTransloop2cfg d: DSP 存储器及资源分配与程序各段的连接关系。1.1.4.4.2 程序架构简介实验例程采用RF-5 参考设计框架5实现视频的采集、处理及显示。程序使用 2个任务模块,视频采集任务以及视频处理输出任务。系统流程图泵统初始化RF-5模块初始化任务模块初始化心动BIOS任务调度心动一初始化模块介绍1系统初始化模

24、块功能介绍:初始化CSL以及BIOS设置64K的CACHE,并将其映射到 EMIF的CE0及CE1空间设置DMA优先级序列,长度2. RF-5模块初始化初始化RF-5框架中用于内部单元传递消息的SCOM模块3. 任务模块初始化启动任务存储空间分配及管理二任务模块介绍1. 输入任务输入任务从输入设备驱动程序获得视频图像,使用FVID 视频驱动程序提 供的 FVID_exchange 函数调用输入设备按照 4:2:2 格式获取一帧视频图像。 然后发送采集完成消息到输出设备; 最后等待输出任务发送输出完成消息后, 进 行下次数据采集处理。2. 输出任务输出任务接到采集完成消息后, 对采集到图像信息进

25、行处理。 处理完成后使用 FVID (视频驱动程序)提供的FVID_exchange函数调用显示设备实现图像显示。 最后发送输出完成消息给输入任务。然后等待下次的采集完成消息。为使实验效果明显,本试验只对屏幕方框区域内的图像进行处理。具体详见: tskVideoOutput.c 程序中进行画矩形边框函数 drawRectangle(), 灰度线性变换 处理函数见: tskVideoOutput.c 程序中 linerTrans ()。/* 线性变换参数设置 */int intFA = 2;/斜率int intFB = -128;/截距实验准备首先将光盘下 03. Examples of Pro

26、gram 04. SEED-DTK643 实验程序目录下 的 3.6.4 LinerTrans 的文件夹拷贝到 D 盘根目录下。1. 将 DSP 仿真器与计算机连接好;2. 将 DSP 仿真器的 JTAG 插头与 SEED-DEC643 元的 J1 相连接;3. 翻开 SEED-DTK643 的电源。观察 SEED-DTK_MBoard 单元的 5V, 3.3V, 15V, 15V 的电源指示灯灯以及 SEED-DEC643 的电源指示灯 D1 是否均亮;假设有不亮的,请断开电源,检查电源。4. 将视频转接线与 DEC643 的 J13 接好,将摄像头的输出接入到 VinY ;将 PAL 制式

27、的显示器链接到 VoutB 上。实验步骤1翻开CCS,进入CCS的操作环境。2. 装载 LinerTransloop2.pjt。3. 运行程序,观察显示。实验结果 矩形框内的图像是经过处理后的,方框外的图像是未经处理的。思考 设定不同的斜率值和截距值,显示效果将会怎样呢?灰度窗口变换实验目的1熟悉视频显示程序的运行过程、控制过程,搞清数据处理、传输途径;2. 结合实例学习如何在视频显示程序中增加图像处理算法;3. 理解和掌握的灰度窗口变换的原理和应用;4了解RF-5程序框架。实验内容1. 系统初始化;2. RF-5程序框架实现;3图像的灰度窗口变换算法实现。实验背景知识灰度窗口变换slicin

28、g是将某一区间的灰度级和其它局部背景分开。我们用下 图说明灰度窗口变换的原理。其中g1old,g2old称为灰度窗口。255-IIi iII Il0Qloliig2o1d255探昭井議的尿度酣LI变换的臨理简除背駅的姒箜懈LJ变换的原豐灰度窗口变换有两种,一种是去除背景的,一种是保存背景的。前者把不在灰度 窗口范围内的象素都赋值为 0,在灰度窗口范围内的象素都赋值为255,这也能实现灰度图的二值化;后者是把不在灰度窗口范围内的象素保存原灰度值,在灰度窗口范围内的象素都赋值为255。本试验采用的是去除背景的灰度窗口变换。灰度窗口变换可以检测出在某一灰度窗口范围内的所有象素,是图象灰度分析中的一个

29、有力工具。程序简介程序包含文件介绍1. main.c:实验的主程序。系统使用到资源、CSL、BIOS以及任务初始化。2. appData.c SCOM 模块初始化。3. tskVideoInput.c:视频输入任务初始化及输入任务处理。4. tskVideoOutput .c:视频输出任务初始化及输出任务处理。5. DEC643.gel:系统初始化。6. WindowTransloop2.tcf: BIOS 配置文件。7. *h:程序使用的头文件。8. *lib :程序使用的库文件。9.li nk_dm642 d: 库文件连接命令文件。10. WindowTransloop2cfg d: DS

30、P存储器及资源分配与程序各段的连接关系。程序架构简介实验例程采用RF-5 参考设计框架5实现视频的采集、处理及显示。程序 使用2个任务模块,视频采集任务以及视频处理输出任务。系统流程图系统初始化RF-5模块切孙i化任务模块初始化启动采集完成消息筲侍输出处成消息处那数据厂显玉输岀数据输出立成消息一初始化模块介绍1系统初始化模块功能介绍:初始化CSL以及BIOS设置64K的CACHE,并将其映射到 EMIF的CEO及CE1空间设置DMA优先级序列,长度2. RF-5 模块初始化初始化 RF-5 框架中用于内部单元传递消息的 SCOM 模块3. 任务模块初始化启动任务存储空间分配及管理二任务模块介绍

31、3. 输入任务输入任务从输入设备驱动程序获得视频图像,使用 FVID 视频驱动程序提 供的 FVID_exchange 函数调用输入设备按照 4:2:2 格式获取一帧视频图像。 然后发送采集完成消息到输出设备; 最后等待输出任务发送输出完成消息后, 进 行下次数据采集处理。4. 输出任务输出任务接到采集完成消息后,对采集到图像信息进行处理。处理完成后使用 FVID 视频驱动程序提供的 FVID_exchange 函数调用显示设备实现图像 显示。最后发送输出完成消息给输入任务。然后等待下次的采集完成消息。为使实验效果明显, 本试验只对屏幕方框区域内的图像进行处理。 具体详见: tskVideoO

32、utput.c程序中进行画矩形边框函数 drawRectangle,灰度拉伸处理函 数见: tskVideoOutput.c 程序中 windowTrans 。/* 灰度窗口参数 */Uint8 intL = 0x40;Uint8 intU = 0xC0;实验准备首先将光盘下 03. Examples of Program 04. SEED-DTK643 实验程序目录下的3.6.5 WindowTrans 的文件夹拷贝到 D 盘根目录下。1. 将 DSP 仿真器与计算机连接好;2. 将 DSP 仿真器的 JTAG 插头与 SEED-DEC643 元的 J1 相连接;3. 翻开 SEED-DTK

33、643 的电源。观察 SEED-DTK_MBoard 单元的+ 5V,+ 3.3V, 15V,15V 的电源指示灯灯以及 SEED-DEC643 的电源指示灯 D1 是否均 亮;假设有不亮的,请断开电源,检查电源。4. 将视频转接线与 DEC643 的 J13 接好,将摄像头的输出接入到 VinY ;将 PAL 制式的显示器链接到 VoutB 上。实验步骤1翻开CCS,进入CCS的操作环境。2. 装载 WindowTransloop2.pjt。3. 运行程序,观察显示。实验结果 矩形框内的图像是经过处理后的,方框外的图像是未经处理的。思考改变第一点和第二点的 X 、Y 坐标,显示效果将会怎样呢

34、?灰度拉伸1.161实验目的1熟悉视频显示程序的运行过程、控制过程,搞清数据处理、传输途径;2. 结合实例学习如何在视频显示程序中增加图像处理算法;3. 理解和掌握的灰度拉伸的原理和应用;4了解RF-5程序框架。实验内容1. 系统初始化;2. RF-5程序框架实现;3. 灰度拉伸变换算法实现。实验背景知识灰度拉伸和灰度的线性变换有点类似,都用到了灰度的线性变换。但不同之处 在于灰度拉伸不是完全的线性,而是分段进行线性变换。它的灰度变换函数表达 式如下:=*才一石+ X曲占 x心255-k才255形険度拉伸变换函数灰度拉伸可以更加灵活的控制输出灰度直方图的分布,它可以有选择的拉伸某段灰度区间以改

35、善输出图像。如果一图像灰度集中在较暗的区域而导致图像偏暗,可以用灰度拉伸功能来拉伸斜率1物体灰度敬意以改善图像;同样如 果图像灰度集中在较亮的区域而导致图像偏亮,也可以用灰度拉伸功能来压缩斜率V1物体灰度区间以改善图像质量。下列图是将第一点和第二点的坐标作如下设置后的进行灰度拉伸后的效果:Uint8 intXI = 70;/ 第一点 X 坐标Uint8 intY1 = 30;/ 第一点 丫坐标Uint8 intX2 = 180;/ 第二点 X 坐标Uint8 intY2 = 220;/ 第二点 Y 坐标原始图像坂垸拉伸后的图像程序简介程序包含文件介绍1. main.c:实验的主程序。系统使用到

36、资源、CSL、BIOS以及任务初始化。2. appData.c SCOM 模块初始化。3. tskVideol nput .c:视频输入任务初始化及输入任务处理。4. tskVideoOutput.c:视频输出任务初始化及输出任务处理。5. DEC643.gel:系统初始化。6. GrayStretchloop2.tcf: BIOS 配置文件。7. *.h :程序使用的头文件。8. *.lib :程序使用的库文件。9.li nk_dm642 d: 库文件连接命令文件。10. GrayStretchloop2cfg d: DSP存储器及资源分配与程序各段的连接关系。程序架构简介实验例程采用RF-

37、5 参考设计框架5实现视频的采集、处理及显示。程序使 用2个任务模块,视频采集任务以及视频处理输出任务。系统流程图一初始化模块介绍1系统初始化模块功能介绍:初始化CSL以及BIOS设置64K的CACHE,并将其映射到 EMIF的CE0及CE1空间设置DMA优先级序列,长度2. RF-5模块初始化初始化RF-5框架中用于内部单元传递消息的 SCOM模块3. 任务模块初始化启动任务存储空间分配及管理二任务模块介绍1. 输入任务输入任务从输入设备驱动程序获得视频图像,使用FVID 视频驱动程序提 供的 FVID_exchange 函数调用输入设备按照 4:2:2 格式获取一帧视频图像。 然后发送采集

38、完成消息到输出设备; 最后等待输出任务发送输出完成消息后, 进 行下次数据采集处理。2. 输出任务输出任务接到采集完成消息后, 对采集到图像信息进行处理。 处理完成后使用 FVID (视频驱动程序)提供的FVID_exchange函数调用显示设备实现图像显示。 最后发送输出完成消息给输入任务。然后等待下次的采集完成消息。为使实验效果明显,本试验只对屏幕方框区域内的图像进行处理。具体详见: tskVideoOutput.c程序中进行画矩形边框函数 drawRectangle(),灰度拉伸处理函 数见: tskVideoOutput.c 程序中 grayStretch ()。/* 灰度拉伸参数 *

39、/*注意: intX1!=0,intX2!=255,intX1<intX2, intY1<intY2*/Uint8 intX1 = 70;/第一点 X 坐标Uint8 intY1 = 30;/第一点 Y 坐标Uint8 intX2 = 180;/第二点 X 坐标Uint8 intY2 = 220;/第二点 Y 坐标实验准备首先将光盘下 03. Examples of Program 04. SEED-DTK643 实验程序目录下 的 3.6.6 GrayStretch 的文件夹拷贝到 D 盘根目录下。1. 将 DSP 仿真器与计算机连接好;2. 将 DSP 仿真器的 JTAG 插头

40、与 SEED-DEC643 元的 J1 相连接;3. 翻开 SEED-DTK643 的电源。观察 SEED-DTK_MBoard 单元的 5V, 3.3V, 15V,15V 的电源指示灯灯以及 SEED-DEC643 的电源指示灯 D1 是否均亮;假设有不亮的,请断开电源,检查电源。4. 将视频转接线与 DEC643 的 J13 接好,将摄像头的输出接入到 VinY ;将 PAL 制式的显示器链接到 VoutB 上。实验步骤1翻开CCS,进入CCS的操作环境。2. 装载 GrayStretchloop2.pjt。3. 运行程序,观察显示。实验结果 矩形框内的图像是经过处理后的,方框外的图像是未

41、经处理的。思考改变第一点和第二点的 X、 Y 坐标,显示效果将会怎样呢?1.1.7 直方图实验目的1. 熟悉视频显示程序的运行过程、控制过程,搞清数据处理、传输途径;2. 结合实例学习如何在视频显示程序中增加图像处理算法;3. 理解和掌握直方图的原理和应用;4. 了解 RF-5 程序框架。实验内容1. 系统初始化;2. RF-5 程序框架实现;3. 直方图算法实现。实验背景知识 有时我们需要知道一幅图中的灰度分布情况,这时就可以采用灰度直方图(histogram)来表示。 一般情况下灰度直方图中的横坐标表示灰度值,纵坐标表示该灰度值出现的次数(频率)。所以说,灰度直方图(histogram)是

42、灰度级的函 数,它表示图象中具有每种灰度级的象素的个数, 反映图象中每种灰度出现的频 率。直方图是多种空间域处理技术的根底。 直方图的操作能有效的用于图像增强, 除了提供有用的图像统计资料, 直方图固有的信息还可以用在其他图像处理中, 如图像的分割与压缩等。由于各灰度出现的频率可能相差很大, 所以如何将结果显示在有限的窗口范 围内, 是一个必须考虑的问题。我们这里的做法是,将每行偶数点像素的灰度 值分为大于 0x80 与小于 0x80 两局部进行统计。 然后根据统计值将每行的灰度 直方图进行显示。1.1.7.4 程序简介程序包含文件介绍1. main.c:实验的主程序。系统使用到资源、CSL、

43、BIOS以及任务初始化。2. appData.c:SCOM 模块初始化。3. tskVideoInput.c:视频输入任务初始化及输入任务处理。4. tskVideoOutput .c:视频输出任务初始化及输出任务处理。5. DEC643.gel:系统初始化。6. Histogramloop2.tcf: BIOS 配置文件。7. *.h:程序使用的头文件。8. *.lib :程序使用的库文件。9.link_dm642 d: 库文件连接命令文件。10. Histogramloop2cfg d: DSP 存储器及资源分配与程序各段的连接关系。程序架构简介实验例程采用RF-5 (参考设计框架5)实现

44、视频的采集、处理及显示。程序 使用 2 个任务模块,视频采集任务以及视频处理输出任务。系统流程图一初始化模块介绍1系统初始化模块功能介绍:初始化CSL以及BIOS设置64K的CACHE,并将其映射到 EMIF的CE0及CE1空间设置DMA优先级序列,长度2. RF-5模块初始化初始化RF-5框架中用于内部单元传递消息的 SCOM模块3. 任务模块初始化启动 任务存储空间分配及管理二任务模块介绍1. 输入任务输入任务从输入设备驱动程序获得视频图像,使用FVID 视频驱动程序提供 的 FVID_exchange 函数调用输入设备按照 4:2:2 格式获取一帧视频图像。 然 后发送采集完成消息到输出

45、设备; 最后等待输出任务发送输出完成消息后, 进行 下次数据采集处理。2. 输出任务 输出任务接到采集完成消息后,对采集到图像信息进行处理。处理完成后使用FVID 视频驱动程序提供的FVID_exchange函数调用显示设备实现图像显示。 最后发送输出完成消息给输入任务。然后等待下次的采集完成消息。 为使实验效果明显,本试验显示屏分为左右两局部进显示处理。实验准备首先将光盘下 03. Examples of Program 04. SEED-DTK643 实验程序目录下的3.6.7 Histogram 的文件夹拷贝到 D 盘根目录下。1. 将 DSP 仿真器与计算机连接好;2. 将 DSP 仿

46、真器的 JTAG 插头与 SEED-DEC643 元的 J1 相连接;3. 翻开 SEED-DTK643 的电源。观察 SEED-DTK_MBoard 单元的 5V,3.3V, 15V, 15V 的电源指示灯灯以及 SEED-DEC643 的电源指示灯 D1 是否均 亮;假设有不亮的,请断开电源,检查电源。4. 将视频转接线与 DEC643 的 J13 接好,将摄像头的输出接入到 VinY ;将 PAL 制式的显示器链接到 VoutB 上。实验步骤1翻开CCS,进入CCS的操作环境。2. 装载 Histogramloop2.pjt。3. 运行程序,观察显示。实验结果 显示屏分为左右两局部,左半

47、局部为直方图的显示,右半局部为图像灰度显示。 思考将灰度阈值改变, 进行灰度统计看灰度图效果。 此外, 考虑一下还有没有其他的 直方图显示处理方法。灰度均衡实验目的1熟悉视频显示程序的运行过程、控制过程,搞清数据处理、传输途径;2. 结合实例学习如何在视频显示程序中增加图像处理算法;3. 理解和掌握的灰度均衡的原理和应用;4了解RF-5程序框架。实验内容1. 系统初始化;2. RF-5程序框架实现;3. 灰度均衡算法实现。实验背景知识灰度均衡有时也称直方图均衡,目的是通过点运算使输入图像转换为在每一级上都有相同的像素点数的输出图像即输出的直方图是平的。这对于在进行图像比拟或分割之前将图像转化为

48、一致的格式是十分有益的。按照图像的概率密 度函数PDF,归一化到单位面积的直方图的定义:其中Hx为直方图,Ao为图像的面积。设转换前图像的概率密度函数为 Prr,转换后图像的概率密度函数为 Ps s,转换函数为s=fr。由概率论知识,我们可以得到:ds这样,如果想使转换后图像的概率密度函数为1 即直方图为平的,那么必须满足:ds等式两边对r积分,可得:=/(t) = j-HWu该转换公式被称为图像的累积分布函数CDF。上面的分式是被归一化后推 导出的,对于没有归一化的情况,只要乘以最大灰度值 DMax,对于灰度图就 255即可。灰度均衡的转换公式为:DU戶迭丫“曲对于离散图像,转换公式为:n

49、da5 = /=/<式中Hi为第i级灰度的像素个数原始1闿像灰度均衡处理后的国像程序简介程序包含文件介绍1. main.c:实验的主程序。系统使用到资源、CSL、BIOS以及任务初始化。2. appData.c SCOM 模块初始化。3. tskVideol nput .c:视频输入任务初始化及输入任务处理。4. tskVideoOutput.c:视频输出任务初始化及输出任务处理。5. DEC643.gel:系统初始化。: BIOS 配置文件。7. *h :程序使用的头文件。8. *lib :程序使用的库文件。9.li nk_dm642 d: 库文件连接命令文件。10. InteEqua

50、lizeloop2cfg d: DSP存储器及资源分配与程序各段的连接关系。程序架构简介实验例程采用RF-5 参考设计框架5实现视频的采集、处理及显示。程序使 用2个任务模块,视频采集任务以及视频处理输出任务。系统流程图系统初始化RF-5模块初始化一初始化模块介绍1系统初始化模块功能介绍:初始化CSL以及BIOS设置64K的CACHE,并将其映射到 EMIF的CE0及CE1空间设置DMA优先级序列,长度2. RF-5模块初始化初始化RF-5框架中用于内部单元传递消息的 SCOM模块3. 任务模块初始化启动任务存储空间分配及管理二任务模块介绍1. 输入任务输入任务从输入设备驱动程序获得视频图像,

51、使用FVID 视频驱动程序提 供的 FVID_exchange 函数调用输入设备按照 4:2:2 格式获取一帧视频图像。 然后发送采集完成消息到输出设备; 最后等待输出任务发送输出完成消息后, 进 行下次数据采集处理。2. 输出任务输出任务接到采集完成消息后, 对采集到图像信息进行处理。 处理完成后使用 FVID (视频驱动程序)提供的FVID_exchange函数调用显示设备实现图像显示。 最后发送输出完成消息给输入任务。然后等待下次的采集完成消息。为使实验效果明显,本试验只对屏幕方框区域内的图像进行处理。具体详见: tskVideoOutput.c程序中进行画矩形边框函数 drawRect

52、angle(),灰度均衡处理函 数见: tskVideoOutput.c 程序中 inteEqualize ()。实验准备首先将光盘下 03. Examples of Program 04. SEED-DTK643 实验程序目录下的3.6.8 InteEqualize 的文件夹拷贝到 D 盘根目录下。1. 将 DSP 仿真器与计算机连接好;2. 将 DSP 仿真器的 JTAG 插头与 SEED-DEC643 元的 J1 相连接;3. 翻开 SEED-DTK643 的电源。观察 SEED-DTK_MBoard 单元的+ 5V,+ 3.3V, 15V,15V 的电源指示灯灯以及 SEED-DEC6

53、43 的电源指示灯 D1 是否均 亮;假设有不亮的,请断开电源,检查电源。4. 将视频转接线与 DEC643 的 J13 接好,将摄像头的输出接入到 VinY ;将 PAL 制式的显示器链接到 VoutB 上。实验步骤1翻开CCS,进入CCS的操作环境。2. 装载 InteEqualizeloop2.pjt。3. 运行程序,观察显示。实验结果 矩形框内的图像是经过处理后的,方框外的图像是未经处理的。思考1.2图像的几何变换图像平移121.1实验目的1熟悉视频显示程序的运行过程、控制过程,搞清数据处理、传输途径;2. 结合实例学习如何在视频显示程序中增加图像处理算法;3了解图像平移的算法和用途;

54、4了解RF-5程序框架。实验内容1. 系统初始化;2. RF-5程序框架实现;3图像平移算法实现。实验背景知识平移变换大概是几何变换中最简单的一种了。IS 2.1平移的示意图如图2.1所示,初始坐标为x0,yO的点经过平移tx,ty以向右,向下 为正方向后,坐标变为x1,y1。这两点之间的关系是 x1=x0+tx; y1=yO+ty. 以矩阵的形式表示为: X11 I 0 tx,r0y=01 p(1)10 0 11我们更关心的是它的逆变换:这样,平移后的图像上的每一点都可以在原图像中找到对应的点。例如,对于新图中的0,0像素,代入上面的议程组,可以求出对应原图中的点,可以直接 将它的像素值统一设置为 0或者255对于灰度图就是黑色或白色。同样,假设 有点不在原图中,也就说明原图中有点被移出显示区域。如果不想丧失被移出的局部图像,可以将新生成的图像扩大|tx|,高度扩大|ty|。121.4程序简介程序包含文件介绍1. main.c:实验的主程序。系统使用到资源、CSL、BIOS以及任务初始化。2. appData.c SCOM 模块初始化。3. tskVideol n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论