网站数据库空间大小,可以做两个网站指向同一个域名,国外响应式网站模板,软件开发模板1、边缘检测 针对的时灰度图像#xff0c;顾名思义#xff0c;检测图像的边缘#xff0c;是针对图像像素点的一种计算#xff0c;目的时标识数字图像中灰度变化明显的点#xff0c;图像的边缘检测#xff0c;在保留了图像的重要结构信息的同时#xff0c;剔除了可以认为…1、边缘检测 针对的时灰度图像顾名思义检测图像的边缘是针对图像像素点的一种计算目的时标识数字图像中灰度变化明显的点图像的边缘检测在保留了图像的重要结构信息的同时剔除了可以认为不相关的信息大幅度减少了数据量便于图像的传输和处理 边缘检查的方法大致可以分为两类基于查找的一类通过寻找图像一阶导数中最大值和最小值来检测边界包括Sobel算法、Roberts Cross算法等基于零穿越的一类通过寻找图像二阶导数零穿越来寻找边界包括Canny算法Laplacian算法等。 Sobel算法准确率比较低但是效率比较高 详细见下面网址
https://blog.csdn.net/great_yzl/article/details/119709699 Soble算法的核心就是Sobel算子该算子包含两组3x3的矩阵 对于图像而言取3行3列的图像数据将图像数据与对应位置的算子的值相乘再相加得到x方向的Gx和y方向的Gy将得到的Gx和Gy平方后相加再取算术平方根得到Gxy近似值为Gx和Gy绝对值之和将计算得到的Gxy与我们设定的阈值相比较Gxy如果大于阈值表示该点为边界点此点显示黑点否则显示白点。 2、实验设计 我们将Sobel算法在图像边缘检查中的实现分为4步第1步通过Gx、Gy的计算公式结合FIFO求和算法求取Gx、Gy的值第2步求得Gx、Gy的绝对值第3步将Gx、Gy带入Gxy计算公式求得Gxy的值第4步将求得的Gxy与设定的阈值相比较当Gxy大于等于阈值赋值rgb为黑色否则 rgb赋值为白色。 图片正在经过Sobel算法之后输出的图片相比于输入时的图片会少2行2列数据这是因为在求取Gx、Gy时要使用FIFO求和算法该算法只有在第2行或第2列数据输入时才开始执行第0、1行或第0、1列不会进行求和运算更无数据输出所以会缺失的2行2列。
2.1 实验目标 实验目标使用Matlab软件将图片转换为灰度图像并且将灰度图像的高 3 位取出存放为txt 文本 PC机通过串口RS232传输图片数据给FPGAFPGA通过Sobel算法检测出图片的边缘轮廓将处理后的图片在VGA显示器上显示出来。 实验要求VGA显示模式640x48060传入图片分辨率大小100x100。
2.2 图片预处理 在进行Sobel算法之前先要将图片进行一下预处理将彩色图片转换成灰度图像并且将灰度图像的高 3 位取出存放为txt 文本图解和代码
matlab代码
clc; %清理命令行窗口clear all; %清理工作区image imread(D:\FPGA\FPGA_Basic_Pro\sobel\matalb\curry_logo.bmp); %使用imread函数读取图片数据figure;imshow(image); %窗口显示图片
R image(:,:,1); %提取图片中的红色层生成灰度图像figure;imshow(R); %窗口显示灰色图像[ROW,COL] size(R); %灰色图像大小参数data zeros(1,ROW*COL); %定义一个初值为0的数组,存储转换后的图片数据for r 1:ROWfor c 1 : COLdata((r-1)*COLc) bitshift(R(r,c),-5); %红色层数据右移5位end
endfid fopen(D:\FPGA\FPGA_Basic_Pro\sobel\matalb\logo.txt,w); %打开或新建一个txt文件for i 1:ROW*COLfprintf(fid,%02x ,data(i)); %写入图片数据
end
fclose(fid);