1、一种基于 ARM 的图像处理系统的设计 摘 要 :基于 ARM 的图像处理系统与基于 PC 计算机的图像处理系统相比 , 体积更小、。本文介绍了基于 ARM 的图像处理系统硬件构成 , 分析了 LCD 控制器与CAMIF (, 重点介绍了基于 ARM 的图像处理系统软件实现算法。此系统利用 ADS1. 2开发环境和 C 实现颜色提取、灰度处理及边缘检测等功能。关键词 :图像处理 ;ARM ; ; 中图分类号 :TP319文献标识码 :B Design of Image Processing System B ased on ARM MA Jun 2qing 1,SONG Ai 2guo 1,
2、G AN Ying 2jun 2 (1. S out heast Universit y , N anj ing 210096, China; 2. N anj ing Forest ry Universit y , N anj ing 210037, China Abstract :Compared wit h image processing system based o n comp uters , system based on A RM is a faster , smaller and more flexible application. And it owns advantage
3、s of lower cost s. This paper introduces t he hardware of image processing system based on A RM , analyzes working p rinciples of L CD cont roller and CM IF (Camera Interface . In software aspect , it illust rates software algorit hm related to t he system 2design 2process in detail. The image p roc
4、essing software is designed and written by means of ADS1. 2soft 2ware developing platform and language C. Experimental result s show t hat t he system has real 2time color extraction , gray 2scale p rocessing , edge detection capabilities and so on. K eyw ords :image p rocessing ; A RM ; color ext r
5、action ; edge detection 本文介绍了笔者利用 ARM 嵌入式系统所设计的一种图像处理系统 , 该系统选用含有三星 S3C2440A 的 Y L2440开发板 , 将 J T A G 口、串口 P2和 US B HOST 接口与 PC 机、 PIO 并口、串口及 US B DEVICE 连接。 1 系统的硬件构成 1. 1 系统硬件总体框架 基于 A RM 的图像处理系统的硬件总体框架如 图 1所示。 S3C2440A 芯片以 ARM920T 为核心 , 工作频率高达 400M Hz , 并且集成了 L CD 控制器以及摄像头接口。 Y L2440开发板的两个标准五线串口波
6、特率为 115. 2kbp s , 外接 130万像素 CCD 摄像头 , 一个 50芯 L CD 接口引出了 L CD 控制器的全部信 号 , 资源丰富。基于 ARM 的图像处理系统 , 在充分利用上述资源的情况下 , 将图像处理程序利用引导装载程序Bootloader 进行 BOIS 加载 , 实现了多 种实时图像处理功能。 L CD 显示器选用 Y L2440 开发板的标准配置三星 3. 5寸触摸式 L TV350QV 2F05型 L CD 显示屏。 L CD 控制器以及 CAM IF 集成在 S3C2440A 核中。 图 1 基于 ARM 的图像处理系统硬件总体框架 1. 2 摄像头接
7、口 CAMIF 原理 系统的 CAM IF 接口包括 5个部分 :图像多路转换器 、获取单元、 R G B 格式转换模块、 DMA 的 P 通道和 ISR 中断控制器 , 如图 2所示以 ITU 2R BIT601格式进入 , 转换器 , 4R G B 转换模块 , G B Y 表示亮度分量 , Cb , Cr 表示红色色度分量。 CAM IF 中有两路相互独立的 DMA 通道 , 分别为 P 通道与 C 通道。系统所用的 P 通道将 R G B 图像经 A HB 总线存储到 PIP 存储器中 , 而 C 通道将 Y Cb Cr 以 4:2:0或 4:2:2图像用 M PEG 24和 H263
8、的格式经 A HB 总线存储到Codec 中。 图 2 CAMIF 架构框图 ITU 2R B T 601格式图像每一像素占用 8个字 节 , 其输入时钟序列如图 3所示。其相关信号和 CAM IF 其他接口信号的说明如表 1所示。 图 3 ITU 2R B T 601输入时钟时序图 1. 3 LCD 控制器原理 S3C2440A 内部已经集成了 LCD 控制器 , 因 此可以很方便地去控制各种类型的 L CD 屏幕。在 表 1 摄像头接口信号描述 信号名称 I/O 有效电平描述 CAM PCL K I 无像素时钟 , 由摄像头处理器控制 CAM VSYNC I 高 /低 电平帧同步 , 由摄
9、像头处理器控制 CAM HREF I 高 /低电平 水平信号 , 由摄像头处理器控制 CAM DA TA7:0I 无像素数据 , 由摄像头处理器控制 CL T 摄像头处理器的主时钟 /低电平 摄像头处理器的软件复位或掉电处理 注 :I/O 的输入输出方向是针对 AP 而言 SCS2440A 芯片中的 L CD 控制器包括将 L CD 的图 像数据从存于系统存储器中的视频缓冲器转化到 L CD 终端驱动器的过程逻辑 , 用于转换摄像数据并收集主要控制信号 , 如 V FRAM E , VL IN E , VCL K 和 VM 等。此外 , 包括配合摄像数据的数据端口VD23:0, 其结构如图 4
10、所示。 图 4 L CD 控制器的结构框图 LCD 控制器在单色 LCD 屏上支持单色、 2位或 4 位图形格式。并利用基于时间的高频算法和帧频控 制方法使其与 8位或 12位的超扭曲向列型液晶显示屏幕进行交互。当它与调色薄膜晶体管 (TFT 交互时 , 支持 2位、 16位或 256位图像显示。当与非调色式薄膜晶体管交互时 , 支持 16位和 24位逼真彩色图像显示。通过编程 ,LCD 控制器可以支持与水平和垂直像素数量有关的和与数据接口、转换时间 和更新速度的数据传输线宽度有关的多种要求。 2 系统的软件设计 本系统是动态的图像处理系统。系统通过摄像头采集到图像数据 , 经过处理后在 L
11、CD 屏上显示。如果此时没有中断输入 , 摄像头便不停地采集新数据 ,L CD 屏也将不断刷新显示新画面。软件系统实现以下功能 : 将摄像头采集到的数据不经过处理 7 6第 4期马俊青 , 宋爱国等 :一种基于 ARM 的图像处理系统的设计 直接在 L CD 屏上显示 ; 凸显所采集到的图像中绿 色部分 , 并将其余颜色全部置黑 ; 显示一幅设定好的静态图像 ; 凸显所采集到的图像中红色 部分并保留其余图像 ; 将彩色图像灰度化处理 ; 将彩色图像处理为底片模式 ; 进行边缘检测 ; 执行图像处理的暂停、继续及退出。 本系统运行主流程为 :引导装载程序 L CD 初始化 摄像头初始化 图像处理
12、。 2 . 1 引导装载程序 引导装载程序 Bootloader 储存在处理器内部的 Boot Internal SRAM (4kB , 是在Y L2440开发 , 包括对 2440核 I/O 接口端口 A 至端口 J 的初始化、 ISR 中断初始化、时钟信号的设定、 UAR T 初始化及 U SB 端口初始化等 工作。 2. 2 图像处理方法及程序实现 (1 颜色提取与增强如果要进行图像处理 , 首先要进行图像的灰度化。以便继续进行图像的分割处理。可以组合使用屏蔽字和移位操作来得到 R G B 各分量值。颜色提取程序的流程如图 5所示。 图 5 绝色提取程序流程图 (2 边缘检测 微分运算中
13、有一阶微分与二阶微分 , 这两种微分都可以用在边缘检测与提取中。而在数字图像中 , 数据是以一定间隔排列着 , 不可能进行真正意义上的微分运算。用相邻像素间的差值运算近似微分 , 故实际的运算应该是差分。用于进行像素间微分运算的系数组被称为微分算 子。这些微分算子有 多个种类 , 其中部分算子如表 2。实际的微分运算 , 就是计算目标像素及周围像素 , 分别乘上微分算子对应数值矩阵系数的和 , 其结果被用作微分运算后目标像素的灰度值。 表 2 采用梯度运算的微分算子 算子名称 一般差分 Roberts 算子 Sobel 算子 求 f x 的模板 0 000121 00000001 002121
14、01220221 1 y 00 010 0000 1021 212221 0001 2 1 系统选用 Robert s 微分算子。经微分运算后输 出的图像是对应于边缘强度的灰度 图像。如果要求表示边缘线或者在打印机上打印 , 有必要进行二值化处理。图 6为边缘检测程序流程图。 图 6 边缘检测程序流程图 3 引导装载程序加载与实验结果 该软件系统是直接通过 S3C2440A 中的 Boot 2 loader 程序加载运行。将串口、 USB 接口与电源线接 好后 , 其 DNW 的 COM 口选择 1通道 , 波特率设为 152kbps , 地址基址定义在0x32000000(SDRAM 。给开
15、发板上电后进入 Bootloader 界面。通过 USB 口加载编写好的图像处理程序后 ,LCD 显示人机交互界面。向 PC 键入相应数字后 , 系统便开始相应的图像处理。 4 结语 本文对 S3C2440A 芯片的有关图像处理硬件原 86 电气电子教学学报 第 31卷 理和应用设计进行了详细介绍 , 对相关的图像处理算法与程序设计进行了详细分析 , 设计的图像处理系统已成功地实现了基于 ARM 的各种实时图像处理功能。与普通的基于 PC 计算机的图像处理系统相比 ,ARM 嵌入式图像处理系统极大的简化了系统结构 , 缩短了开发周期 , 并且充分发挥了其速度快、体积小及应用灵活等特点。参考文献 :