最近一段时间一直在研究基于FPGA图像处理,乘着EEPW这个机会和大家交流一下,自己也顺便总结一下。主要是为了大家对用FPGA图像处理有个感性的认识,如果真要研究的话就得更加深入学习了。本人水平有限,如有错误,欢迎大家批评指正。

本文引用地址:http://www.eepw.com.cn/article/185312.htm

  基于软件的图像处理方法存在着一些局限性,尤其是计算速度和算法效率方面。所以大家很自然的就想到了FPGA作为嵌入式图像应用的平台。许多图像处理本身就是并行计算的,并且FPGA的编程硬件,本质上也是并行的。但是利用FPGA硬件进行图像处理存在很多的困难,需要学到很多的技巧。下面我介绍两几种比较基础的图像处理算法思想。

  单幅图像的点操作是图像处理中最简单的操作,输出值只取决于输入值,与位置无关,可以看作是一个函数的映射。从硬件实现的角度来说,最简单的方式就是通过一个实现函数的模块对输入的每个像素进行依次处理,也就是流水化处理。每个像素都是单独处理的,可以把图像分为若干部分,每个部分单独处理,所以点操作容易并行实现。点操作可作为读取图像和后续处理之间的一个桥梁。A:亮度调节;为了使图像变亮,可以增大输出像素值,可以通过加一个常量实现。类似地,变暗减小像素值。但是实际中,调节亮度要复杂的多,因为人的视觉系统是非线性的。B:对比度调节;图像的对比度受映射函数的斜率影响。斜率大于1增强,小于1则降低,可以通过乘以一个大于或者小于1的常数实现。C:同时调节亮度和对比度;一个简单的调节它们的点操作是:Q=aI+b=a(I+b’),a,b是控制亮度和对比度的任意常数。当Q超出范围怎么办?例如用8位表示像素值时,Q超出0~255,那么输出怎么办?默认情况下只取8位最低有效位并且忽略任何会导致值超出范围的溢出位。通常还需要进行饱和或者裁剪到极值效果会更好。

  直方图操作。使用直方图的图像处理有两个相关的主要步骤。第一步是建立直方图,第二步是从直方图中提取数据并用它来处理图像。A建立直方图:对每个像素值累计计数。通过计数器数组完成计算每个像素值出现的次数。这个方法的缺点是占用的硬件资源比较多,适合阈值后的直方图计算。可以使用双口存储器实现,可以大大减少逻辑资源的使用。B直方图均衡化(使用局部信息来分配那些在输出像素值的范围上具有大的计数值的输入值的像素来获得更平坦的直方图):实现直方图均衡化的映射是归一化累积直方图。直观地,如果输入点集合的计数值大于平均值,那么映射的斜率大于1,反之,小于1。

  局部滤波器。局部滤波器扩展点操作,以一个局部窗口内像素值的函数运算结果作为输出。窗口的大小、形状可以随意,但是一般都是采用奇数正方形的,我见过最多的就是3x3,5x5,7x7,这样的话中心就很容易确定。局部滤波器有去噪、边缘检测、边缘增强等。线性去噪有排序去噪,均值去噪,加权均值去噪等,边缘检测可以利用Prewitt,Sobel算子等,将这些算法在3x3窗口中实现,相对来说就比较容易了。也可以改进这些算法,是写小论文比较好的创新点。还有一些形态学滤波器,颜色滤波器,大致思想都一样,就是实现的时候算法改一下。

  我个人感觉基于FPGA的图像处理相对来说比较专业,比较难,同时这里面的知识也比较多,适合做研究。我最近看的一本书是《基于FPGA的嵌入式图像处理系统设计》,国外《Design for Embedded Image Processing on FPGAs》(作者Bailey)的翻译本,翻译水平一般,有些地方看中文版的看不懂,一看英文版的就明白了。我把英文版的电子文档上传到了eepw下载区。http://forum.eepw.com.cn/thread/243584/1。 初学者可以使用DSP Builder建立Simulink模型,然后它可以自动转换为VHDL或者verilog代码,然后再学习和修改那个代码,这样的话入门可以更快一点。如有错误,大家多多指正。

FPGA的图像处理技术,你知道多少?的更多相关文章

  1. FPGA的图像处理技术

    最近一段时间一直在研究基于FPGA的图像处理,乘着EEPW这个机会和大家交流一下,自己也顺便总结一下.主要是为了大家对用FPGA做图像处理有个感性的认识,如果真要研究的话就得更加深入学习了.本人水平有 ...

  2. FPGA与数字图像处理技术

    数字图像处理方法的重要性源于两个主要应用领域: 改善图像信息以便解释. 为存储.传输和表示而对图像数据进行处理,以便于机器自动理解. 图像处理(image processing): 用计算机对图像进行 ...

  3. HTML5图形图像处理技术研究

    摘要:图形图像处理平台大部分是传统的C/S架构的桌面应用程序,维护困难,共享性差,而B/S架构的Web程序具有易维护.易共享的优点.本文研究了基于HTML5的Web图形图像处理技术,用HTML5实现了 ...

  4. GDI+图形图像处理技术中Pen和Brush的简单使用和简单图形的绘制(C#)

    1.Graphics Graphics对象是GDI+绘图表面,因此在Windows窗体应用程序中要使用GDI+创建绘图,必须要先创建Graphics.在给窗体注册一个Paint事件后,Graphics ...

  5. FPGA与图像处理

    用FPGA做图像处理最关键的一点优势就是:FPGA能进行实时流水线运算,能达到最高的实时性.因此在一些对实时性要求非常高的应用领域,做图像处理基本就只能用FPGA.例如在一些分选设备中图像处理基本上用 ...

  6. 数字图像处理技术在TWaver可视化中的应用

    数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程.常用的图像处理方法有图像增强.复原.编码.压缩等,数 ...

  7. php图形图像处理技术

    图形图像处理技术,gd库的强大支持,PHP的图像可以是PHP的强项,PHP图形化类库,jpgraph是一款非常好用的强大的图形处理工具. 在PHP中加载GD库 gd官方网址下载: http://www ...

  8. GDI+图形图像处理技术——GDIPlus绘图基础

    GDI+概述 GDI在windows中定义为Graphis Device interface,及图形设备接口,是Windows API(application Programming Interfac ...

  9. 基于Qt的图像处理技术和算法

    https://blog.csdn.net/silangquan/article/details/41008183

随机推荐

  1. 如何在Fedora或CentOS上使用Samba共享

    如今,无论在家里或者是办公场所,不同的电脑之间共享文件夹已不是什么新鲜事了.在这种趋势下,现代操作系统通过网络文件系统的方式使得电脑间数据的交换变得简单而透明.如果您工作的环境中既有微软的Window ...

  2. Linux 测试网速

    Linux 测试网速 1.直接wget -O /dev/null http://speedtest.wdc01.softlayer.com/downloads/test10.zip 一个10M的文件, ...

  3. Android实现定时器的方法

    一.Handler 和 Thread package com.lstech.app; import android.app.Activity; import android.os.Bundle; im ...

  4. 1.4 Documents,Fields和Schema设计--目录

    1.4.1.Documents,Fields和Schema概述 1.4.2 solr字段类型 1.4.2 solr字段类型--(1.4.2.1)字段类型定义和字段类型属性 1.4.2 solr字段类型 ...

  5. [Adruino]XBEE 无线数据传输实际操作

    双轮小车制作实例代码 引用:http://hi.baidu.com/dlfla84/item/52b89017a6209c5cf1090e9b 双轮小车制作 2009-6-12 初步完成了串口数据缓存 ...

  6. Android学习笔记⑤——UI组件的学习TextView相关

    TextView是一个强大的视图组件,直接继承了View,同时也派生出了很多子类,TextView其作用说白了就是在布局中显示文本,有点像Swing编程中的JLabel标签,但是他比JLabel强大的 ...

  7. uva 12587 二分枚举

    思路:维护一个森林,二分枚举最小的最大值. #include<set> #include<map> #include<cmath> #include<queu ...

  8. 在centos7中添加一个新用户并授权

    参考地址:http://www.cnblogs.com/woshimrf/p/5906084.html 创建新用户 创建一个用户名为:zhangbiao [root@localhost ~]# add ...

  9. java基础-在dos控制台编写简易的java程序

    第一步:在文件夹中修改隐藏的文件扩展名,让其文件的扩展名全部显示: 第二步:在文件夹中新建一个text文件,将其扩展名属性改为Hello.java的文件扩展名: 第三步:点击右键打开方式用txt文本打 ...

  10. FusionCharts

    上一篇已经介绍了一款免费的JS图表插件,这一篇再介绍另一款图表插件,同样是免费的,同样是基于JS的,使用依然很简单.该插件的官方网站,貌似也是收费的,我们可以下载对应的免费版FusionCharts ...