Sobel 滤波器设计示例

建议用于:

  • 设备:不详

  • Quartus®:v17.1

author-image

作者

此示例用开放计算语言 (OpenCL™) 实施了一个简单的 Sobel 滤波器。该示例包含单个工作项内核,该内核实现了 Sobel 算子以检测输入 RGB 图像(每个分量 8 位)中的边缘并输出单色图像。内核代码很有启发性,展示了如何有效地描述滑动窗口行缓冲区。这是一种可用于许多其他图像过滤应用程序的技术。

此示例还有一个交互式主机应用程序。主机应用程序让您可以在显示输入图像或过滤图像之间进行选择。边缘检测阈值也可以动态调整,所选阈值作为参数传递给 OpenCL™ 内核。

Sobel 滤波器性能

特性

  • 可视化互动主机
  • 高效的 2D 滑动窗口线缓冲区
  • 一个工作项目内核

下载

该设计示例提供 OpenCL 设备 (.cl) 和主机应用程序的源代码。为了编译主机应用程序,Linux* 包包含一个 Makefile,Windows 包包含一个 Microsoft Visual Studio 2010 项目。

本示例提供以下下载:

该设计的使用受硬件参考设计许可协议中条款和条件的管理和约束。

软件和硬件要求

此设计示例需要以下工具:

  • 英特尔® FPGA 软件 v17.1 或更高版本
  • 英特尔® FPGA SDK for OpenCL 17.1 或更高版本
  • Linux:GNU Make 和 gcc
  • Windows:Microsoft Visual Studio 2010
  • 主机应用程序需要开放图形库 (OpenGL) 进行显示

要下载英特尔设计工具,请访问 OpenCL 下载页面。对底层操作系统的要求与英特尔 FPGA SDK for OpenCL 的要求相同。

Sobel 滤波器显示。

OpenCL 和 OpenCL 标识是苹果公司的商标,需获得 Khronos 的许可方能使用。

*产品基于已发布的 Khronos 规范,并已通过 Khronos 一致性测试流程。最新的一致性状态信息可以在 www.khronos.org/conformance 上找到。