一.Sobel簡(jiǎn)介
-
一句話可以概況為,分別求水平與豎直梯度,然后求平方和再開方(近似的話就直接求絕對(duì)值之和),最后與設(shè)定的閾值進(jìn)行比較,大于的話就賦值為0,小于的話就賦值為255。
-
x方向梯度dx的求法:3*3的圖像矩陣與下面的矩陣在對(duì)應(yīng)位置相乘然后相加
-
y方向梯度dy的求法:同上
二.代碼實(shí)現(xiàn)
0] Sobel_px ,Sobel_nx; :
0] Sobel_py ,Sobel_ny; :
0] Sobel_x; :
0] Sobel_y; :
0] Sobel_data; :
//x方向的梯度
assign Sobel_x = (Sobel_px > Sobel_nx) ? (Sobel_px - Sobel_nx) : (Sobel_nx - Sobel_px);
//y方向的梯度
assign Sobel_y = (Sobel_py > Sobel_ny) ? (Sobel_py - Sobel_ny) : (Sobel_ny - Sobel_py);
(Sobel_x+Sobel_y>'d135)?'d0:'d255; =
clk_9M or negedge rst)
begin
= 1'b0) =
begin
Sobel_px <= 'd0;
Sobel_nx <= 'd0;
end
else if(cur_x >= 'd100 && cur_x <= 'd199 && cur_y >= 'd50)
begin
Sobel_nx <= data_line_11 + data_line_21 + data_line_21 + data_line_31;
Sobel_px <= data_line_13 + data_line_23 + data_line_23 + data_line_33;
end
else
begin
Sobel_nx <= 'd0;
Sobel_px <= 'd0;
end
end
clk_9M or negedge rst)
begin
= 1'b0) =
begin
Sobel_py <= 'd0;
Sobel_ny <= 'd0;
end
else if(cur_x >= 'd100 && cur_x <= 'd199 && cur_y >= 'd50)
begin
Sobel_py <= data_line_11 + data_line_12 + data_line_12 + data_line_13;
Sobel_ny <= data_line_31 + data_line_32 + data_line_32+ data_line_33;
end
else
begin
Sobel_ny <= 'd0;
Sobel_py <= 'd0;
end
end
審核編輯:湯梓紅
-
FPGA
+關(guān)注
關(guān)注
1643文章
21969瀏覽量
614275 -
sobel
+關(guān)注
關(guān)注
0文章
12瀏覽量
8020
原文標(biāo)題:FPGA實(shí)現(xiàn)Sobel邊緣檢測(cè)
文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
基于FPGA的Sobel邊緣檢測(cè)工作原理
基于FPGA的Sobel邊緣檢測(cè)的實(shí)現(xiàn)
基于FPGA的邊緣檢測(cè)和Sobel算法
從zynq_base_trd_14_4調(diào)試“sobel_cmd_linux”時(shí)出錯(cuò)
【正點(diǎn)原子FPGA連載】第七章OV5640攝像頭Sobel邊緣檢測(cè)-領(lǐng)航者ZYNQ之HLS 開發(fā)指南
【米爾MYS-8MMX開發(fā)板免費(fèi)試用】-VI.Sobel邊緣檢測(cè)(ZMJ)
時(shí)間戳的簡(jiǎn)介與實(shí)現(xiàn)
迅為iTOP-RK3568開發(fā)板Sobel 算子邊緣檢測(cè)
淺述Sobel算子在HLS上的實(shí)現(xiàn)教程

評(píng)論