国产嵌入式实验箱操作教程_创龙教仪:5-12 边缘检测(LCD显示)

<数据集>咖啡叶片病害识别<目标检测> YOLO与VOC格式的咖啡叶片病害识别数据集,适用于YOLO系列、Faster Rcnn、SSD等模型训练,类别:Cercospora、Miner、Phoma、Rust,图片数量1744。文件中包含图片、txt标签、指定类别信息的yaml文件、xml标签,已将图片和txt标签划分为训练集、验证集和测试集,可直接用于YOLOv5、YOLOv6、YOLOv7、YOLOv8、YOLOv9、YOLOv10、YOLOv11、YOLOv12、YOLOv13、YOLOv26等YOLO系列算法的训练。 阅读详情

一、实验目的

学习Canny边缘检测的原理,掌握图像的读取方法,并实现在LCD上显示边缘检测前后的图像。

二、实验原理

边缘检测

在数字图像中,边缘是指图像局部变化最显著的部分,边缘主要存在于目标与目标,目标与背景之间,是图像局部特性的不连续性,如灰度的突变、纹理结构的图标、颜色的图标等。尽管图像的边缘点产生的原因各不相同,但他们都是图形上灰度不连续或灰度急剧变化的点,图像边缘分为阶跃状、斜坡状和屋顶状。

边缘其实就是图像上灰度级变化很快的点的集合。计算的方法是通过导数和微分的方式。

导数:连续函数上某点斜率,导数越大表示变化率越大,变化率越大的地方就越是“边缘”,但是在计算机中不常用,因为在斜率90度的地方,导数无穷大,计算机很难表示这些无穷大的东西。

微分:连续函数上x变化了dx,导致y变化了dy,dy值越大表示变化的越大,那么计算整幅图像的微分,dy的大小就是边缘的强弱了。微分与导数的关系:dy = f ‘(x) dx。

image.png

image.png

Canny 边缘检测

Canny边缘检测是从不同视觉对象中提取有用的结构信息并大大减少要处理的数据量的一种技术,目前已广泛应用于各种计算机视觉系统。边缘检测的一般标准包括:

(1)以低的错误率检测边缘,也即意味着需要尽可能准确的捕获图像中尽可能多的边缘。

(2)检测到的边缘应精确定位在真实边缘的中心。

(3)图像中给定的边缘应只被标记一次,并且在可能的情况下,图像的噪声不应产生假的边缘。

为了满足这些要求,Canny使用了变分法。Canny检测器中的最优函数使用四个指数项的和来描述,它可以由高斯函数的一阶导数来近似。

在目前常用的边缘检测方法中,Canny边缘检测算法是具有严格定义的、可以提供良好可靠检测的方法之一。由于它具有满足边缘检测的三个标准和实现过程简单的优势,成为边缘检测最流行的算法之一。

Canny 边缘检测算子是一个多级边缘检测算法,Canny 的目标是找到一个最优的边缘检测算法。最优边缘检测的含义是:

(1)最优检测:算法能够尽可能多地标识出图像中的实际边缘,漏检真实边缘的概率和误检非边缘的概率都尽可能小;

(2)最优定位准则:检测到的边缘点的位置距离实际边缘点的位置最近,或者是由于噪声影响引起检测出的边缘偏离物体的真实边缘的程度最小;

(3)检测点与边缘点一一对应:算子检测的边缘点与实际边缘点应该是一一对应。为了满足这些要求 Canny 使用了变分法(calculus of variations),这是一种寻找优化特定功能的函数的方法。最优检测使用四个指数函数项表示,但是它非常近似于高斯函数的一阶导数。

Canny 边缘检测的步骤

(1)应用高斯滤波来平滑图像,目的是去除噪声;

(2)找寻图像的强度梯度(intensity gradients);

(3)应用非最大抑制(non-maximum suppression)技术来消除边误检;

(4)应用双阈值的方法来决定可能的(潜在的)边界;

(5)利用滞后技术来跟踪边界。

例如,双阈值t1和t2(t1≦t2),则大于t2的点肯定是边缘,小于t1的点肯定不是边缘。t1和t2之间的点,通过已经确定的边缘点,发起搜索,可到达的点是边缘,不可到达的点不是边缘。

程序设计

程序流程设计中首先要进行外设使能配置,接着进行LCD管脚复用配置和LCD中断配置,然后进行LCD显示的初始化,最后读取工程目录下的BMP图像并进行边缘检测处理,并在 LCD 显示边缘检测前后的图像。

image.png

视频分析与视觉库

VLIB 是一个TI 的软件库,可加速视频分析开发并将性能提高多达 10 倍。VLIB 是针对 C6x DSP 内核优化的可扩展库。包括的40 多个内核的集合可以实现背景建模与减法、对象特征提取、追踪与识别和低级像素处理。

包括适用于 C64x+、C674x 和 C66x 处理器的 Windows 和 Linux 安装可执行文件。每个可执行文件安装一个组件包存储库、一个文档目录、一个 Eclipse 插件目录和一个扩展的组件目录结构,其中包含组件库、头文件和测试示例。

TMS320C6748处理器使用的是vlib_c674x_3_3_2_0。

将安装到CCS5.5 的安装路径,安装完成后会有相应的文件夹出现。源码所在路径:\vlib_c674x_3_3_2_0\packages\ti\vlib\src

image.png

三、操作现象

实验设备

本实验使用的硬件接口为LCD,所需硬件为实验板、仿真器、LCD和电源。

image.png

操作现象

硬件连接

(1)连接仿真器和电脑的USB接口,

(2)将拨码开关拨到DEBUG模式01111,连接实验箱电源,拨动电源开关上电。

image.png

软件操作

导入工程,选择Demo文件夹下的对应工程

编译工程,生成可执行文件

将CCS连接实验箱并加载程序

程序加载完成后点击运行程序

运行程序后,CCS的Console窗口会打印相关信息,同时LCD会显示标题。

稍等片刻后,图像处理完成,LCD会显示边缘检测处理前后的图像。

实验结束后,先点击黄色按钮暂停程序运行,再点击红色按钮退出CCS与实验箱的连接,最后实验箱断电即可。

image.png

image.png

《图像处理与计算机视觉》全套课件PDF(武汉工程大学) 获取 《图像处理与计算机视觉》全套课件PDF(武汉工程大学)::https://download.youkuaiyun.com/download/m0_54748666/93260852。《图像处理与计算机视觉》全套课件PDF(武汉工程大学)第二讲-图像及其表达与性质.pdf。第五讲-图像形态学变换.pdf。第四讲-图像数据压缩.pdf。第三讲-图像预处理.pdf。第六讲-图像分割.pdf。第七讲-目标识别.pdf。第一讲-导论.pdf。 阅读详情

相关推荐

边缘检测9种方法

基于MATLAB的程序包,完全实现边缘检测的9种方法,并且作图进行了对比。程序数据全部包含,直接运行就可以出结果。

【CanMV K230】边缘检测

我们熟悉了K230两个主要硬件(摄像头和显示器)的使用方法后,可以使用视觉例程了。分享加快了哦。

咸鱼菌 2633

C6678多核DSP开发——imglib应用之边缘检测

C6678多核DSP开发——imglib应用之边缘检测 前言:应用dspmcsdk工具下的image processing例程实现了图像边缘检测,之前是拿来用的,为了后续工作只好对该例程进行了分析和学习,以作为dsp开发和图像处理的入门例程。在网上查阅大量资料后发现dsp图像处理基本上都用到了两个强大的库,一个是imglib,另一个是vlib,image processing例程正是用到了img

学习雷锋好榜样 5132

无感无刷电机三段式启动避坑指南:从预定位到闭环切换的STM32代码实现

本文深入解析无感无刷电机的三段式启动流程,涵盖预定位、启动加速与闭环切换三大阶段。重点对比了恒频升压、恒压升频与升频升压三种核心启动策略的优劣,并提供了基于STM32的详细状态机代码实现与关键参数调试指南,帮助工程师有效规避启动失步、线圈过热等常见问题,实现稳定可靠的无感驱动。

herb5的博客 535

【RDMA】13. RDMA之用户态与内核态交互

原文:https://zhuanlan.zhihu.com/p/346708569 在“RDMA之Verbs”一文中我们说道,Verbs API分为用户态和内核态,分别以ibv_和ib_作为前缀。RDMA技术的最大的优势就在于用户态可以绕过内核,直接控制硬件收发数据,减少了系统调用和内存拷贝次数,所以大部分的RDMA应用都是用户态应用,即使用以ibv_为前缀的用户态Verbs API。 但是并非所有的用户态Verbs API都可以完全绕开内核,本文中我来讲解一下哪些API依赖于内核RDMA子系统(包括驱

我的笔记本 4285

VLIB中边缘检测算法学习

今天以这个为例子Canny Edge Detection,来学习一下VLIB中函数在DVRRDK中的使用例子。  Canny检测简介:相对于许多其它的边缘检测方法,比如sobel和Robert十字,Canny边缘检测器一般被认为是的首选de ,因为即使在含有噪声的图像中也能有较好的效果。 canny方法: 高斯图像平滑 2D梯度过滤 非最大抑制 滞后阈值 双阈值 边松弛 提供

OyutianO的专栏 2136

Macbook Pro上如何修改brew源

一、需求说明 我的macbook电脑安装了中科大的brew源码,发现安装gpg工具失败,其他工具可以正常安装,为了能将gpg安装成功,就找了找切换brew源的方案,记录如下。 二、切换至国内源 由于使用github默认源有可能存在路径远或者部分服务访问超时的原因,切换至国内源可以提速。 2.1 替换brew.git $ cd "$(brew --repo)" # 中国科大: $ git remote set-url origin https://mirrors.ustc.edu.cn/brew.git #

bufegar0的博客 1080

边缘检测

边缘检测的主要目的是找到图像中亮度变化显著的区域,这些区域通常对应于物体的边界,边缘检测相当于利用 Shader 代码自动给屏幕图像进行描边处理。

Go_Accepted的博客 1467

从零构建:Trinamic API在STM32上的深度移植与TMC-IDE通信实战

本文详细介绍了如何从零开始在STM32平台上深度移植Trinamic API,并实现与TMC-IDE工具的稳定通信。内容涵盖SPI底层驱动定制、寄存器配置、高级功能实现及调试技巧,重点解析了TMC5160芯片的集成实践,帮助开发者构建可靠的嵌入式运动控制系统。

w1x2y3的博客 254

优快云专栏限时活动!福利公告必读!

本人优快云付费专栏周排名27名专业博主,每周文章平均阅读量约7w以上!

FJN110的博客 3154

【Shader】屏幕后处理-利用卷积算子计算边缘检测

Shader "Edge Detection" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} _EdgeOnly ("Edge Only", Float) = 1.0 _EdgeColor ("Edge Color", Color) = (0, 0, 0, 1)

Zok93 675

DSP的CLA调试技巧

本文介绍了基于TMS320F28377D的CLA(Control Law Accelerator)开发实战教程,涵盖基础配置、编程、调试与优化全流程。主要内容包括:CLA核心特性及其作为实时控制协处理器的优势;开发环境搭建与工程配置要点;CLA任务调度、数据交换及编程约束;调试技巧如断点设置和性能分析方法;进阶应用案例(批量除法运算)及优化策略;以及推荐的学习资源和硬件平台。教程强调数据一致性和任务同步问题,为快速上手CLA开发提供实用指导。

1045

Unity——相机移动之(屏幕边缘检测)

功能: 类似LOL 红警 相机移动方式。 鼠标移动到屏幕边缘,相机随之移动。 当然还有可以加亿一点点细节,比如鼠标指针变化,滚轮推进拉远视野,中键平移视野等。(没做)。。。 效果图: 这里做了可视化数据(可以看到限定的屏幕距离),线框内为检测的距离。 代码: 复制脚本,直接挂载相机上就可以用。 using UnityEngine; /// &lt...

提莫队长 3310

飞牛fnNAS同步微信微信聊天记录

微信聊天记录如何备份到NAS?本文介绍了利用NAS虚拟机和同步工具实现微信记录自动备份的方法。通过在NAS上搭建"云电脑"长期运行微信PC端,并配置微力同步将聊天记录文件夹自动同步到NAS存储,解决了传统电脑备份的安全性问题。操作步骤包括:1)在NAS上安装虚拟机系统;2)登录微信PC端并同步手机记录;3)配置同步工具将微信记录文件夹同步到NAS。该方法尤其适合不常使用PC微信的用户,可实现记录永久保存和远程查看,更换手机时也能快速恢复历史记录。

dgnankai的专栏 4311

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

UnityShader-屏幕后处理之边缘检测

一、屏幕后处理原理 我的另外一篇文章有详细的介绍: UnityShader-屏幕后处理(调节亮度,饱和度,对比度) 二、卷积与卷积核 卷积核通常是一个四方形网格结构(例如2x2,3x3的方形区域),该方形区域每个方格都有一个权重值。当对图像中的某个像素进行卷积时,我们会把卷积核的中心位置放在该像素上,翻转核之后再依次计算核中每个元素和其覆盖的图形像素值的乘积并求和,得到的结果就是该位置的像素值。 ...

zzqlb博客 317

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

屏幕后处理-边缘检测

效果 原图 渲染图 思路 如上图所示,使用卷积核,计算屏幕图像每个点的像素和当前点周围的像素,进行卷积操作,可以得到梯度值。主要算法如下: for( int it=0;it<9; it++ ){ texColor = luminance(tex2D(_MainTex,i.uv[it])); //分别对九宫格,九个位置的颜色取样,并计算明亮度 edgeX += texColor * Gx[it];//将X轴方向的九个颜色的明亮度乘以梯度索引,并

qq_26489679的博客 720

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

图像处理(四):边缘检测(一):

利用0、45、90、135度模板,求图像梯度,然后计算最大值: 四个模板分别如下: 具体代码如下: #include #include using namespace cv; using namespace std; // 8领域 const int directions[9][2] = { { -1, -1 }, { -1, 0 }, { -1, 1 },

sinat_31425585的博客 1230

UnityShader屏幕后处理-边缘检测(3D)

边缘检测两个算法 1 片元着色器中计算每个纹素的卷积,设置阀值,判断该点是否为边缘,在边缘颜色与屏幕图片中做插值,如果为边缘则显示边缘颜色。 通常还会设置一个变量,是否改变出边缘外的颜色。 2 在片元着色器中将纹素重新转换到世界坐标,取得该纹素相对于相机的深度与法线,判断该纹素与周围纹素的深度与法线,如果差距过大(相对于自定义的阀值)则为边缘。 方法1适用于2d图片,方法2在3d的运用效果...

雪球的博客 1246

屏幕后期效果-卷积实现边缘检测

所需知识点: 卷积进行边缘检测的的基本原理:https://blog.youkuaiyun.com/u013555719/article/details/81121005 Shader "Unity Shaders Book/Chapter 12/Edge Detection" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} _...

l364244206的专栏 353

无人机航拍垃圾检测数据集深度学习 目标检测 无人机航拍 垃圾检测 环境卫生 YOLO格式 数据集发布9029期

无人机航拍垃圾检测数据集深度学习 目标检测 无人机航拍 垃圾检测 环境卫生 YOLO格式 数据集发布9029期

qq_2529413168的博客 211

YOLO算法室内环境玻璃瓶目标检测数据8979张:类别与标注速览

该数据集聚焦于室内环境中各类玻璃瓶的识别与定位,涵盖多种材质、颜色和形状的玻璃容器,适用于家庭、仓储、零售等场景下的物品管理与自动化识别需求。该数据集包含训练集7812张、验证集818张、测试集349张,共计8979张图像,分布结构合理,能够有效支持模型训练、调优与性能评估。落地场景大致有智能仓储管理系统、自动分拣设备、零售商品识别系统以及家庭安防监控等领域,尤其适用于需要对玻璃制品进行分类与追踪的工业与消费场景,具备良好的落地潜力与实用前景。数据量、场景复杂度、标注质量三样都过关,这份数据可以直接开训;

小秋的博客 232

OpenCV 车辆数量统计

涉及到的知识点:1)基本图像运算与处理2)形态学3)轮廓查找4)加载视频5)通过形态学识别车辆6)对车辆进行统计7)显示车辆统计信息。

ahccqw的博客 88

基于深度学习的猫图像目标检测方法研究:YOLOv8s模型海选、多种子对比训练与Django+ONNX部署实现详解

本课题基于深度学习研究猫图像目标检测问题。数据集含1000张猫图像、1188个标注框,按固定比例划分并冻结清单;训练前在多个候选族中短训海选,确定YOLOv8s为主模型,经学习率搜索与显存标定后完成150轮训练,验证集mAP50达到0.92,并以7个随机种子的对比实验验证稳定性。最优权重导出为ONNX接入Django系统,提供图片、视频、摄像头三种识别方式,配套识别记录管理与统计大屏,形成从训练到应用的完整闭环。

WEIXIN_JSJBSZDS的博客 197

计算机视觉主要任务分类:分类、检测、分割、生成全解

计算机视觉是一个高度多样化且仍在快速扩展的领域。本文的目标是为读者提供一份关于计算机视觉四大核心任务的全面指南。我们将从定义、数学描述、评估指标、经典算法和代表应用五个维度,对每个任务进行深入剖析。全文依次讲解图像分类:计算机视觉的基石、目标检测:定位与识别、图像分割:像素级理解、图像生成:从无到有的创造、四大任务的对比与内在联系等内容。

2602_96795563的博客 382

无人机影像落叶松林健康评估检测数据集 | 落叶松健康评估 林业病害监测 无人机航拍 密集目标检测9320期

本数据集聚焦于无人机航拍视角下的落叶松林健康状态评估与受损程度检测。 主要服务于林业病害监测、森林资源评估、火灾及风灾后的灾情定损。

qq_2529413168的博客 255
上一篇: TI C6000教学实验箱操作教程:5-8 直方图均衡化(LCD显示)
下一篇: 嵌入式教程_DSP教学实验箱操作:5-14 灰度图像二值化(LCD显示)
Tronlongtech
博客等级 码龄4年 687粉丝 102原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值