0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【紫光同創(chuàng)國產(chǎn)FPGA教程】【第十六章】SOBEL邊緣檢測例程

FPGA技術(shù)專欄 ? 來源:芯驛電子科技 ? 作者:芯驛電子科技 ? 2021-02-24 14:46 ? 次閱讀

原創(chuàng)教程由芯驛電子科技(上海)有限公司(ALINX)創(chuàng)作,版權(quán)歸本公司所有,如需轉(zhuǎn)載,需授權(quán)并注明出處(alinx.com)。

適用于板卡型號:

PGL22G/PGL12G

1. 實驗簡介

本實驗將在例程“OV5640攝像頭HDMI顯示例程”的基礎(chǔ)上實現(xiàn)視頻圖像邊緣檢測的實驗。在很多應(yīng)用場合,我們只需要采集到圖像的棱廓特征的信息,而不需要全部的視頻圖像,這樣就需要用到SOBEL邊緣檢測的算法。

2. 實驗原理

2.1邊緣檢測原理和算法

邊緣是圖像最基本的特征,其在計算機視覺、圖像分析等應(yīng)用中起著重要的作用,這是因為圖像的邊緣包含了用于識別的有用信息,是圖像分析和模式識別的主要特征提取手段。

在圖像中,“邊緣”指的是臨界的意思。一幅圖像的“臨界”表示為圖像上亮度顯著變化的地方,邊緣指的是一個區(qū)域的結(jié)束,也是另一個區(qū)域的開始?!斑吘夵c”指的是圖像中具有坐標(biāo)[x,y],且處在強度顯著變化的位置上的點。

常用的邊緣檢測算法大多是以原始圖像灰度值為基礎(chǔ),通過考察圖像的每個像素的某個鄰域內(nèi)灰度的變化,利用邊緣一階或二階導(dǎo)數(shù)的規(guī)律來檢測邊緣。下圖左邊為原始的黑白灰度的圖像,通過邊緣檢測算法后變成了右邊的圖像。

實現(xiàn)邊緣檢測有很多不同的方法,也一直是圖像處理中的研究熱點,人們期望找到一種抗噪強、定位準(zhǔn)、不漏檢、不誤檢的檢測算法。其中Sobel算子效果較好,邊緣檢測算法比較簡單,實際應(yīng)用中效率比canny邊緣檢測效率要高,但是邊緣不如Canny檢測的準(zhǔn)確,但是很多實際應(yīng)用的場合,sobel邊緣卻是首選,尤其是對效率要求較高,而對細紋理不太關(guān)心的時候。本實驗就采用Sobel的算法來實現(xiàn)視頻圖像的邊緣檢測。

2.2 sobel簡介

sobel是一個梯度的計算,如下圖所示,是x和y方向的3x3窗口的卷積。

o4YBAGA19luARuWXAAAIKpWx83E485.jpg

梯度計算公式

pIYBAGA19lyAdql5AAAENKJbTV0868.jpg

,簡化的近似計算

o4YBAGA19lyADOZFAAAEAUKFqxs669.jpg

對于圖像,如下圖:P1到P9為3x3的9個像素點,簡化公式計算:

pIYBAGA19l2AfOsSAAAFBwjAD_U557.jpgo4YBAGA19l6AXuTgAAAFTAAbq7A917.jpg3x3圖像窗口

為了進一步簡化計算,我們把算子進行簡化,調(diào)整為如下所示

pIYBAGA19l6ACB7YAAAH0eyemb4055.jpg

3. 程序設(shè)計

本實驗的重點是sobel算法的實現(xiàn),首先需要一個3x3的像素窗口,本實驗利用xilinx提供的VHDL程序,做了一個3行的圖像緩存,這樣就可以輕松實現(xiàn)3x3的窗口。

然后按照簡化公式,采用絕對值的方式計算sobel。

always@(posedgepclk)begin
	x1<={2'b00,p11}+{2'b00,p31}+{1'b0,p21,1'b0};
	x3?<={2'b00,p13}+{2'b00,p33}+{1'b0,p23,1'b0};
	
	y1?<={2'b00,p11}+{2'b00,p13}+{1'b0,p12,1'b0};
	y3?<={2'b00,p31}+{2'b00,p33}+{1'b0,p32,1'b0};endalways@(posedge?pclk)begin
	abs_x?<=(x1?>x3)?x1-x3:x3-x1;
	abs_y<=(y1?>y3)?y1-y3:y3-y1;
	abs_g<=?abs_x?+?abs_y;end

計算完成以后,要進行簡單的二值化處理,將sobel值和閾值對比,產(chǎn)生黑白的二值化圖像。

always@(posedgepclk)begin
	data_out<=(abs_g?>threshold)?8'h00:8'hff;end

4. 實驗現(xiàn)象

1)將攝像頭模塊插入開發(fā)板,保證1腳對齊,1腳在焊盤形狀和其他引腳是有明顯區(qū)別的,是方形的。

OV5640攝像頭模塊連接開發(fā)板連接圖

2)連接好HDMI顯示器。

3)下載實驗程序,可以看到只有邊沿信息的黑白視頻輸出。注意:ov5640模塊焦距是可調(diào)的,如果焦距不合適,圖像會模糊,旋轉(zhuǎn)鏡頭,可以調(diào)節(jié)焦距。攝像頭模塊要輕拿輕放,不要用手觸摸元器件。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1620

    文章

    21510

    瀏覽量

    598898
  • 算法
    +關(guān)注

    關(guān)注

    23

    文章

    4552

    瀏覽量

    92020
  • 邊緣檢測
    +關(guān)注

    關(guān)注

    0

    文章

    91

    瀏覽量

    18161
  • sobel
    +關(guān)注

    關(guān)注

    0

    文章

    12

    瀏覽量

    7871
  • 紫光同創(chuàng)
    +關(guān)注

    關(guān)注

    5

    文章

    78

    瀏覽量

    27446
收藏 人收藏

    評論

    相關(guān)推薦

    基于FPGASobel邊緣檢測工作原理

    Sobel 邊緣檢測的工作原理是檢測圖像在水平和垂直方向上的梯度變化。為此,將兩個卷積濾波器應(yīng)用于原始圖像,然后組合這些卷積濾波器的結(jié)果以確定梯度的大小。
    發(fā)表于 12-14 11:34 ?1321次閱讀

    2024新品|紫光同創(chuàng)盤古系列FPGA開發(fā)板套件,100%國產(chǎn)化方案

    專業(yè)廠商紫光同創(chuàng)生態(tài)合作伙伴,小眼睛科技一直深耕FPGA產(chǎn)品和解決方案,基于紫光同創(chuàng)器件,推出100%
    發(fā)表于 12-28 14:18

    國產(chǎn)FPGA介紹-紫光同創(chuàng)

    紫光同創(chuàng)紫光集團旗下紫光國微的子公司,成立于2013年,有十余年可編程邏輯器件研發(fā)經(jīng)歷,布局覆蓋高中低端FPGA產(chǎn)品。 早在2015年,
    發(fā)表于 01-24 10:45

    紫光同創(chuàng)FPGA有哪些型號

    請問紫光同創(chuàng)FPGA有哪些型號?分別用于什么場景?
    發(fā)表于 01-24 10:48

    基于FPGA的實時邊緣檢測系統(tǒng)設(shè)計,Sobel圖像邊緣檢測,FPGA圖像處理

    60 為閾值得到圖8(a)和(b)。 通過對比可以看出,使用 FPGA 進行Sobel邊緣檢測能夠?qū)崿F(xiàn)與 MATLAB 相近的檢測效果,驗
    發(fā)表于 05-24 07:45

    至芯科技之a(chǎn)ltera 系列FPGA教程 第十六篇 下載配置文件

    至芯科技之a(chǎn)ltera 系列FPGA教程 第十六篇 下載配置文件
    發(fā)表于 08-11 03:35

    基于FPGASobel邊緣檢測的實現(xiàn)

    我們在此基礎(chǔ)上修改,從而實現(xiàn),基于FPGA的動態(tài)圖片的Sobel邊緣檢測、中值濾波、Canny算子邊緣
    發(fā)表于 08-29 15:41

    基于FPGA邊緣檢測Sobel算法

    轉(zhuǎn)帖摘要: 針對嵌入式軟件無法滿足數(shù)字圖像實時處理速度問題,提出用硬件加速器的思想,通過FPGA實現(xiàn)Sobel邊緣檢測算法。通過乒乓操作、并行處理數(shù)據(jù)和流水線設(shè)計,大大提高算法的處理速
    發(fā)表于 11-29 08:57

    紫光同創(chuàng)簡介

    本帖最后由 DamonXZ 于 2018-5-26 23:56 編輯 紫光同創(chuàng)紫光集團旗下公司,注冊資金1.5億元,總投資5億元,是是國家高新技術(shù)企業(yè),已通過ISO9001-2015
    發(fā)表于 05-26 10:58

    基于紫光同創(chuàng)FPGA的多路視頻采集與AI輕量化加速的實時目標(biāo)檢測系統(tǒng)

    基于紫光同創(chuàng)FPGA的多路視頻采集與AI輕量化加速的實時目標(biāo)檢測系統(tǒng)#2023集創(chuàng)賽#紫光同創(chuàng)#
    發(fā)表于 11-02 17:51

    紫光同創(chuàng)FPGA開發(fā)套件,高性能國產(chǎn)FPGA方案

    紫光同創(chuàng)FPGA開發(fā)套件,高性能國產(chǎn)FPGA方案,100%國產(chǎn)化,全系列產(chǎn)品,方案可定制,滿足多
    發(fā)表于 11-16 17:25

    第十六講 編碼器

    第十六講 編碼器 編碼編碼器編碼原則6.3.1 二進制編碼器一、定義二、邏輯電路圖三、輸出邏輯函數(shù)四、列真值
    發(fā)表于 03-30 16:21 ?5979次閱讀
    <b class='flag-5'>第十六</b>講 編碼器

    單片機c語言教程第十六章--C51指針的使用

    單片機c語言教程第十六章--C51指針的使用 指針就是指變量或數(shù)據(jù)所在的存儲區(qū)地址。如一個字符型的變量 STR 存放在內(nèi)存單元DATA 區(qū)的 51H 這個地址中,那么 DATA 區(qū)的 51
    發(fā)表于 04-15 09:44 ?1940次閱讀
    單片機c語言教程<b class='flag-5'>第十六章</b>--C51指針的使用

    sobel_FPGA l邊緣檢測

    sobel_FPGA l邊緣檢測.源代碼。
    發(fā)表于 05-03 16:42 ?9次下載

    視頻_高速放大器設(shè)計指南 第十六

    視頻_高速放大器設(shè)計指南 第十六
    發(fā)表于 03-05 15:34 ?0次下載