91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

Canny算子計(jì)算流程

FPGA之家 ? 來源:FPGA之家 ? 作者:FPGA之家 ? 2022-07-04 09:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Canny算子計(jì)算流程:

高斯濾波和Sobel算子已經(jīng)在前面講過,所以這里主要討論非最大值抑制和滯后分割電路設(shè)計(jì)

非最大值一直電路設(shè)計(jì)

非最大值抑制主要是對(duì)Sobel運(yùn)算的計(jì)算結(jié)果進(jìn)行開窗,在當(dāng)前像素的3x3鄰域找到梯度方向上的最大值,若當(dāng)前像素為整個(gè)方向上的最大值,則將該像素點(diǎn)歸為潛在的邊緣點(diǎn)。否則,直接置為非邊緣點(diǎn)。

9eb2f532-fb2e-11ec-ba43-dac502259ad0.jpg

我們首先要明白當(dāng)前像素的梯度值位于哪一個(gè)象限,假定其位于第一象限,則有

9ecc15b2-fb2e-11ec-ba43-dac502259ad0.png

假定該點(diǎn)計(jì)算結(jié)果為result,則有

9eea5784-fb2e-11ec-ba43-dac502259ad0.png

不妨再列出第二象限的計(jì)算公式

9eff2e7a-fb2e-11ec-ba43-dac502259ad0.png

9f0ff606-fb2e-11ec-ba43-dac502259ad0.png

設(shè)計(jì)的難點(diǎn)在于梯度方向上兩個(gè)潛在極大值的插值運(yùn)算f算子。有兩點(diǎn)值得我們注意:

1)f算子中包含除法,這是在FPGA中不容易處理的。

2)前兩個(gè)象限的除法運(yùn)算的分子和分母是顛倒的,這是不容易設(shè)計(jì)的。

所以就需要進(jìn)行算法的等效轉(zhuǎn)換,首先想到的就是將除法轉(zhuǎn)換為乘法運(yùn)算,這個(gè)是比較容易實(shí)現(xiàn)的,以第一象限公式為例,兩邊同時(shí)乘以x,則有

9f274388-fb2e-11ec-ba43-dac502259ad0.png

9f38b99c-fb2e-11ec-ba43-dac502259ad0.png

對(duì)于第二象限,兩邊同時(shí)乘以y,則有

9f4fa10c-fb2e-11ec-ba43-dac502259ad0.png

9f274388-fb2e-11ec-ba43-dac502259ad0.png

不等式右邊第一項(xiàng)系數(shù)為當(dāng)前x與y方向梯度值的較小值,第二項(xiàng)系數(shù)為當(dāng)前x與y方向梯度的較大值與較小值之差,不等式左邊系數(shù)為當(dāng)前x與y方向梯度值的較大值。因此,將公式變換如下:

9f82378e-fb2e-11ec-ba43-dac502259ad0.png

9f9200e2-fb2e-11ec-ba43-dac502259ad0.png

上式中,Mmax代表當(dāng)前x與y方向梯度值的較大值,Mmin代表當(dāng)前x與y方向梯度值的較小值。C0,C1,C2,C3,則分別代表4個(gè)插值元素。對(duì)于8個(gè)不同的象限,插值元素的索引號(hào)如下表所示:

Index of C0 Index of C1 Index of C2 Index of C3
第1,5象限 2 5 6 3
第2,6象限 2 1 6 7
第3,7象限 0 1 8 7
第4,8象限 0 3 8 5

這樣,就可以實(shí)現(xiàn)4個(gè)主象限的計(jì)算一致性,同時(shí)將轉(zhuǎn)換為FPGA所擅長(zhǎng)的乘法和加法運(yùn)算。

在查表得到插值元素時(shí),需要知道當(dāng)前的象限信息,得到象限信息的最簡(jiǎn)單辦法就是通過查詢x與y方向梯度值的符號(hào)。同時(shí),需要得到兩個(gè)值的比較關(guān)系。需要注意的是,我們需要Sobel運(yùn)算結(jié)果的x與y方向的輸出,以及模值輸出,實(shí)際上并不需要方向計(jì)算。

第一階段的計(jì)算電路如圖所示:

9faa1916-fb2e-11ec-ba43-dac502259ad0.jpg

首先將Sobel的x和y方向的計(jì)算結(jié)果通過Cordic模塊輸出兩個(gè)值的絕對(duì)值的較大值Max和較小值Min,以及輸入坐標(biāo)的象限信息Quadrant_info。接著為了得到當(dāng)前像素的8個(gè)插值元素,即當(dāng)前窗口,我們需要將上面三個(gè)數(shù)據(jù)及Sobel的模值結(jié)果Mudule送入win_buf得到窗口緩存。我們需要的是當(dāng)前窗口的9個(gè)元素Mudule(8:0),以及上面三個(gè)數(shù)據(jù)的當(dāng)前值Max(4),Min(4),Quadrant_info(4)。

第二階段的計(jì)算電路如圖所示:

9fc22236-fb2e-11ec-ba43-dac502259ad0.jpg

第二階段的計(jì)算將象限信息和當(dāng)前窗口像素送入查找表,由查找表電路得到C0,C1,C2,C3輸出。然后在此基礎(chǔ)上做f算子,得到的結(jié)果與中心窗口值與Max的乘積進(jìn)行比較。最后,在比較的結(jié)果上進(jìn)行分割。

審核編輯 :李倩

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

    關(guān)注

    0

    文章

    132

    瀏覽量

    26721
  • Canny
    +關(guān)注

    關(guān)注

    0

    文章

    14

    瀏覽量

    9912

原文標(biāo)題:Canny

文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    功率器件熱設(shè)計(jì)基礎(chǔ)(三)—— 結(jié)溫計(jì)算完整流程與工程實(shí)用方法

    承接前兩講:(一)穩(wěn)態(tài)熱阻Rth(二)熱容、瞬態(tài)熱阻Zth(t)、脈沖溫升這一講進(jìn)入真正工程化內(nèi)容:從器件datasheet→熱阻網(wǎng)絡(luò)→結(jié)溫計(jì)算→裕量判定→設(shè)計(jì)改進(jìn)一套可直接用于項(xiàng)目評(píng)審、仿真輸入
    的頭像 發(fā)表于 03-01 15:21 ?58次閱讀
    功率器件熱設(shè)計(jì)基礎(chǔ)(三)—— 結(jié)溫<b class='flag-5'>計(jì)算</b>完整<b class='flag-5'>流程</b>與工程實(shí)用方法

    一文掌握瑞芯微RK系列NPU算子支持全景:覆蓋6大平臺(tái),新增硬件加速算子,嵌入式AI開發(fā)不踩坑

    在嵌入式 AI 領(lǐng)域,瑞芯微(Rockchip)RK 系列 NPU 憑借低功耗、高兼容性的特性,廣泛應(yīng)用于智能監(jiān)控、邊緣計(jì)算、物聯(lián)網(wǎng)設(shè)備等場(chǎng)景。近期發(fā)布的《RKNN Compiler Support
    的頭像 發(fā)表于 02-06 16:33 ?1041次閱讀
    一文掌握瑞芯微RK系列NPU<b class='flag-5'>算子</b>支持全景:覆蓋6大平臺(tái),新增硬件加速<b class='flag-5'>算子</b>,嵌入式AI開發(fā)不踩坑

    如何在TensorFlow Lite Micro中添加自定義操作符(2)

    上一篇中,小編給大家抽絲剝繭的介紹了在TFLm中實(shí)現(xiàn)一個(gè)算子所涉及的文件,以及每個(gè)文件的具體作用,包括:功能實(shí)現(xiàn),算子解析等。那么本篇就帶著大家一起看下注冊(cè)機(jī)制是怎么實(shí)現(xiàn)的?我們還是先以
    的頭像 發(fā)表于 12-26 10:53 ?1131次閱讀

    借助 AI 從流程可視化到流程優(yōu)化的 6 個(gè)步驟

    借助 Minitab Solution Center與 Simul8,將日常流程損耗轉(zhuǎn)化為可量化的效能提升 生活各處都看到流程的影子,無論是逛雜貨店、排隊(duì)買咖啡,還是收拾行李準(zhǔn)備度假。你是否曾發(fā)現(xiàn)
    的頭像 發(fā)表于 12-16 13:51 ?240次閱讀

    使用6e00系列的芯片,clc計(jì)算流程求解?

    的output_value是0x9c38,是0x13870的一半,實(shí)際輸出是50% ,這個(gè)結(jié)果似乎與手冊(cè)給的流程結(jié)果不符,是哪里出問題了呢
    發(fā)表于 11-09 23:06

    深入解析面向不同市場(chǎng)的多樣化Arm計(jì)算子系統(tǒng)

    如果你曾基于 Arm 技術(shù)開發(fā)過產(chǎn)品,很大機(jī)會(huì)已經(jīng)感受到了 Arm 計(jì)算子系統(tǒng) (Arm Compute Subsystems, Arm CSS) 所帶來的強(qiáng)勁性能。
    的頭像 發(fā)表于 09-06 14:09 ?1026次閱讀
    深入解析面向不同市場(chǎng)的多樣化Arm<b class='flag-5'>計(jì)算子</b>系統(tǒng)

    CoWoP封裝的概念、流程與優(yōu)勢(shì)

    本文介紹了CoWoP(Chip?on?Wafer?on?Substrate)封裝的概念、流程與優(yōu)勢(shì)。
    的頭像 發(fā)表于 08-12 10:49 ?2901次閱讀
    CoWoP封裝的概念、<b class='flag-5'>流程</b>與優(yōu)勢(shì)

    西門子 Veloce CS 助力 Arm Neoverse 計(jì)算子系統(tǒng)驗(yàn)證與確認(rèn)

    西門子數(shù)字化工業(yè)軟件近日宣布,Veloce Strato CS 與Veloce proFPGA CS 已被 Veloce 的長(zhǎng)期合作伙伴 Arm 部署應(yīng)用,作為Arm Neoverse 計(jì)算子
    的頭像 發(fā)表于 08-06 09:26 ?2908次閱讀

    自動(dòng)化計(jì)算機(jī)的功能與用途

    工業(yè)自動(dòng)化是指利用自動(dòng)化計(jì)算機(jī)來控制工業(yè)環(huán)境中的流程、機(jī)器人和機(jī)械,以制造產(chǎn)品或其部件。工業(yè)自動(dòng)化的目的是提高生產(chǎn)率、增加靈活性,并提升制造過程的質(zhì)量。工業(yè)自動(dòng)化在汽車制造中體現(xiàn)得最為明顯,其中許多
    的頭像 發(fā)表于 07-15 16:32 ?745次閱讀
    自動(dòng)化<b class='flag-5'>計(jì)算</b>機(jī)的功能與用途

    進(jìn)迭時(shí)空同構(gòu)融合RISC-V AI CPU的Triton算子編譯器實(shí)踐

    Pytorch已能做到100%替換CUDA,國(guó)內(nèi)也有智源研究院主導(dǎo)的FlagGems通用算子庫(kù)試圖構(gòu)建起不依賴CUDA的AI計(jì)算生態(tài),截至今日,F(xiàn)lagGems已進(jìn)入Pyto
    的頭像 發(fā)表于 07-15 09:04 ?1878次閱讀
    進(jìn)迭時(shí)空同構(gòu)融合RISC-V AI CPU的Triton<b class='flag-5'>算子</b>編譯器實(shí)踐

    一文看懂芯片的設(shè)計(jì)流程

    引言:前段時(shí)間給大家做了芯片設(shè)計(jì)的知識(shí)鋪墊(關(guān)于芯片設(shè)計(jì)的一些基本知識(shí)),今天這篇,我們正式介紹芯片設(shè)計(jì)的具體流程。芯片分為數(shù)字芯片、模擬芯片、數(shù)模混合芯片等多種類別。不同類別的設(shè)計(jì)流程也存在一些
    的頭像 發(fā)表于 07-03 11:37 ?2577次閱讀
    一文看懂芯片的設(shè)計(jì)<b class='flag-5'>流程</b>

    基于LockAI視覺識(shí)別模塊:C++輪廓檢測(cè)

    (); return 0; } 3.3 識(shí)別多邊形 3.3.1 流程圖 3.3.2 核心代碼解析 預(yù)處理:包括灰度轉(zhuǎn)換、高斯模糊、Canny邊緣檢測(cè) cv::cvtColor(src, gray, cv
    發(fā)表于 05-22 10:05

    DP主站轉(zhuǎn)485操作流程

    ?DP主站轉(zhuǎn)485操作流程
    的頭像 發(fā)表于 04-27 09:11 ?953次閱讀
    DP主站轉(zhuǎn)485操作<b class='flag-5'>流程</b>

    CPU的各種指令和執(zhí)行流程

    在集成電路設(shè)計(jì)中,CPU的指令是指計(jì)算機(jī)中央處理單元(CPU)用來執(zhí)行計(jì)算任務(wù)的基本操作指令集。這些指令是CPU能夠理解并執(zhí)行的二進(jìn)制代碼,它們?cè)?b class='flag-5'>計(jì)算機(jī)內(nèi)部由硬件控制并按順序執(zhí)行,從而實(shí)現(xiàn)計(jì)算
    的頭像 發(fā)表于 04-18 11:24 ?2636次閱讀

    CAN報(bào)文流程解析

    CAN報(bào)文流程解析,直流充電樁上的CAN通訊解析過程
    發(fā)表于 03-24 14:03 ?10次下載