1. 程式人生 > >Carsten Steger 高斯平滑邊緣

Carsten Steger 高斯平滑邊緣

論文思路

一、 對直線(一維曲線的檢測)


1. 真實影象常常包含噪聲,對影象進行平滑去噪(高斯平滑):

                      

2. 對去噪後的影象求一階導數,得到影象的一階響應



3. 對一階響應再次求導數,得到二階響應:



4.將原圖進行泰勒展開,保留前三項,(係數分別為原圖的各階響應)



4.對原圖的泰勒展開式求一階導數,並令一階導數為0, 得到,



對於

且 大於使用者設定閾值的點,選為一維邊緣點。


二、對曲線(二維曲線的檢測)


1.對原圖進行高斯濾波後求一階二階偏導,和二階混合偏導,


該步驟可通過原圖卷積適當的高斯核(對高斯核求一階二階偏導和二階混合偏導後形成的高斯核) 

4. 構造Hessian 矩陣,



5. 求Hessian矩陣的特徵值和特徵向量,其中對應最大特徵值的特徵向量(長度歸一化):

,其中

6. 二維邊緣點位置:


其中,


其中



三、 把點串成線


1.根據求出來的法向量,


得到線的方向為 ,在8領域畫素點選取。

例如 , 當直線的方向在範圍內,領域縮小為 ,即8連通域中選取如下點


2.判斷條件,兩個點的亞畫素位置和角度差,


使得

最小的點即是邊緣點,文中採用 .。

3.繼續在領域中尋找曲線上的點,直到最好的匹配候選點已經被另一條曲線選中。此時,把該點標記為連線點,並且包含該點的線從該點處分裂成兩條線。

相關推薦

Carsten Steger 平滑邊緣

論文思路 一、 對直線(一維曲線的檢測) 1. 真實影象常常包含噪聲,對影象進行平滑去噪(高斯平滑):                        2. 對去噪後的影象求一階導數,得到影象的一階響應 3. 對一階響應再次求導數,得到二階響應: 4.

Extracting Lines Using Differential Geometry and Gaussian Smooth--Carsten Steger 使用微分幾何和平滑進行邊緣提取

在csdn中編輯公式參考: http://blog.csdn.net/gateway6143/article/details/23134225 論文思路 一、 對直線(一維曲線的檢測) 1. 真實影象常常包含噪聲,對影象進行平滑去噪(高斯平滑):           

OPENCV入門教程十三:GaussianBlur平滑

OPENCV入門教程十三:GaussianBlur高斯平滑   一、目標 學習如何使用OpenCV中的函式,學習對影象的高斯平滑操作,學習GaussianBlur()函式的使用 二、函式說明 函式原型: void GaussianBlur(InputArray sr

【數字影象處理】七.MFC影象增強之影象普通平滑平滑、Laplacian、Sobel、Prewitt銳化詳解

        程式碼如下:void CImageProcessingView::OnTxzqPtph2() { if(numPicture==0) { AfxMessageBox("載入圖片後才能影象增強(平滑)!",MB_OK,0); return; } AfxMessageBox("影象

python+opencv實現平滑濾波

功能: 建立兩個滑動條來分別控制高斯核的size和σ的大小,這個程式是在閾值分割的那個程式上改動的。閾值分割程式在這 注意:由於σ=0時,opencv會根據視窗大小計算出σ,所以,從0滑動σ的滑動條

Python-openCV平滑

對於可分離式卷積核可通過先進行x方向卷積再進行y方向卷積進行影象卷積計算 #coding=utf-8 import cv2 import numpy as np from scipy import signal def gauss_blur(img,sigma,H,W):

c#實現影象影象卷積與濾波——平滑

使用C#語言編寫高斯平滑。 一、線性濾波與卷積的基本概念 2D卷積需要4個巢狀迴圈4-double loop,所以它並不快,除非我們使用很小的卷積核。這裡一般使用3×3或者5×5。而且,對於濾波器,也有一定的規則要求: 1)濾波器的大小應該是奇數,這樣它才有一箇中心

圖像的平滑濾波

itl 等於 生成 二維 出了 說明 權重 實現 mes 1:高斯平滑與濾波的作用 通過高斯平滑使整個圖片過渡均勻平滑,去除細節,過濾掉噪聲。 2:高斯平滑濾波器簡介 高斯平滑濾波器被使用去模糊圖像,和均值濾波器差不多,但是和均值濾波器不一樣的地方就是核不同。均值濾波

基於opencv下對視頻的灰度變換,濾波,canny邊緣檢測處理,同窗體顯示並保存

rmi 其他 AS info ali 利用 測試結果 14. 中間 如題:使用opencv打開攝像頭或視頻文件,實時顯示原始視頻,將視頻每一幀依次做灰度轉換、高斯濾波、canny邊緣檢測處理(原始視頻和這3個中間步驟處理結果分別在一個窗口顯示),最後將邊緣檢測結果保存為一個

7.邊緣檢測:2D運算——回顧、濾波器2D的導數、Sigma對導數的影響_1

目錄 回顧 高斯濾波器2D的導數 Sigma對導數的影響 回顧 我們要完成我們的邊緣檢測這個單元,然後它會被用在你以後要做的事情上。 上單元我們講了邊的概念以及它們是如何與梯度和函式導數的大小相關的。 我們還記得,如果你大腦的某個部分脫落了,應該是梯度是什麼。 我

Python2.7 + OpenCV3.4 縮放、模糊、Canny邊緣提取

摘要 因學習OpenCV需求,進行縮放、高斯模糊、Canny邊緣提取測試。 配置 系統:Windows7 x64 Python:2.7.14 PyCharm:2017.1.1 OpenCV:3.4.4 函式 影象縮放 輸入的影象存在大小不一定適配的問題,該函式通過設定

OpenCV入門:平滑處理 — 模糊

平滑處理 — 高斯模糊 相關函式: C++: void GaussianBlur(InputArray src, OutputArray dst, Size ksize, double sigmaX, double s

【拜小白opencv】30-平滑處理3線性濾波之——濾波

常言道“溫故而知新”,寫此文章就是對自己目前學習內容的小小的總結與記錄。 本文力求用最簡潔的語言,詳細的程式碼將此部分內容講解清楚,但由於博主同樣是剛剛接觸OpenCV,或許表達上有些瑕疵,還望讀

[Python影象處理] 四.影象平滑之均值濾波、方框濾波、濾波及中值濾波

該系列文章是講解Python OpenCV影象處理知識,前期主要講解影象入門、OpenCV基礎用法,中期講解影象處理的各種演算法,包括影象銳化運算元、影象增強技術、影象分割等,後期結合深度學習研究影象識別、影象分類應用。希望文章對您有所幫助,如果有不足之處,還請

matlab 影象加入噪聲和平滑處理練習

影象加入高斯噪聲和平滑處理程式碼 a=imread('lena.jpg'); subplot(221); imshow(a); title ('原始影象'); Inoise=imnoise(a,'ga

opencv for python (13) 影象卷積及影象平滑(平均、模糊、中值模糊、雙邊濾波)

影象卷積 卷積函式 cv2.filter2D(img,-1,kernel) 第一個引數是原影象 第二個引數目標影象的所需深度。如果是負數,則與原影象深度相同 第三個引數是卷積核心 import cv2 import numpy as np

OpenCV差分技術實現影象邊緣檢測

效果圖 原始碼 邊緣是影象中畫素亮度變化明顯的點。 高斯差分演算法步驟 將影象轉為灰度影象 // 原圖置灰 Imgproc.cvtColor(src, grayM

OpenCV計算機視覺學習(4)——影象平滑處理(均值濾波,濾波,中值濾波,雙邊濾波)

如果需要處理的原圖及程式碼,請移步小編的GitHub地址   傳送門:請點選我   如果點選有誤:https://github.com/LeBron-Jian/ComputerVisionPractice   “平滑處理”(smoothing)也稱“模糊處理”(bluring),是一項簡單且使用頻率很高的影象

POJ 1222 消元更穩

ems 方程 pac wap 效果 row while 自由 方便 大致題意:   有5*6個燈,每個燈只有亮和滅兩種狀態,分別用1和0表示。按下一盞燈的按鈕,這盞燈包括它周圍的四盞燈都會改變狀態,0變成1,1變成0。現在給出5*6的矩陣代表當前狀態,求一個能全部使燈滅的

[Luogu P2973&BZOJ 1778][USACO10HOL]趕小豬DOtP(消元+期望)

http ios iostream 爆炸 head swa sca 選擇 main Description 一個無向圖,節點1有一個炸彈,在每個單位時間內,有可能在這個節點炸掉,也有p/q的概率隨機選擇一條出去的路到其他的節點上。問最終炸彈在每個節點上爆炸的概率。 So