【图像处理】基于FPGA verilog 边缘检测图像处理sobel算子实现

项目:【基于FPGA verilog 边缘检测图像处理sobel算子实现

项目介绍:Sobel 边缘检测算子是一阶导数,Sobel边缘检测算法的实现是利用3*3个上下左右相邻的像素点进行计算的,根据上下左右像素点的值计算出图像的水平和垂直的梯度,然后将水平和垂直梯度根据对应的算法计算出梯度值,如果这个梯度值大于设定的阀值,那么这个像素点就是边缘部分,否则就认为该像素点不是图像的边缘部分。如图1为3×3区域相邻的像素点,图2为Sobel水平梯度算子,图3为Sobel垂直梯度算子。

【图像处理】基于FPGA verilog 边缘检测图像处理sobel算子实现_第1张图片

【图像处理】基于FPGA verilog 边缘检测图像处理sobel算子实现_第2张图片

【图像处理】基于FPGA verilog 边缘检测图像处理sobel算子实现_第3张图片

GX = (G3+2 *G6 + G9 ) - (G1 +2 *G4 + G7 )

GY = (G7+2* G8 + G9 ) - (G1 +2* G2 + G3 )

| G | =(GX^2+ GY^2)^1/2

判断| G |是否大于阈值,若大于阈值让他为FF否则为00.

项目构架:

【图像处理】基于FPGA verilog 边缘检测图像处理sobel算子实现_第4张图片

RTL图:

【图像处理】基于FPGA verilog 边缘检测图像处理sobel算子实现_第5张图片

结果展示:

【图像处理】基于FPGA verilog 边缘检测图像处理sobel算子实现_第6张图片

                 原图

 

 

 

【图像处理】基于FPGA verilog 边缘检测图像处理sobel算子实现_第7张图片

                 结果图

因为阈值不同,所以显示的效果不一样,有兴趣的同学可以调一下阈值自己实现一下。

 

本文为原创博客,未经允许请勿盗用谢谢!  转载请标注地址:https://blog.csdn.net/qq_40261818/article/details/82084701

你可能感兴趣的:(【图像处理】基于FPGA verilog 边缘检测图像处理sobel算子实现)