導航:首頁 > 源碼編譯 > roberts演算法參

roberts演算法參

發布時間:2023-06-12 22:46:39

⑴ 圖像分割演算法總結

       圖像處理的很多任務都離不開圖像分割。因為圖像分割在cv中實在太重要(有用)了,就先把圖像分割的常用演算法做個總結。

        接觸機器學習和深度學習時間已經不短了。期間看過各種相關知識但從未總結過。本文過後我會盡可能詳細的從工程角度來總結,從傳統機器學習演算法,傳統計算機視覺庫演算法到深度學習目前常用演算法和論文,以及模型在各平台的轉化,量化,服務化部署等相關知識總結。

        圖像分割常用演算法大致分為下面幾類。由於圖像的能量范函,邊緣追蹤等方法的效果往往只能解決特定問題,效果並不理想,這里不再闡述。當然二值化本身也可以分割一些簡單圖像的。但是二值化演算法較多,我會專門做一個文章來總結。這里不再贅述。

        1.基於邊緣的圖像分割演算法:

            有利用圖像梯度的傳統演算法運算元的sobel,roberts,prewitt,拉普拉斯以及canny等。

            這些演算法的基本思想都是採用合適的卷積運算元,對圖像做卷積。從而求出圖像對應的梯度圖像。(至於為什麼通過如圖1這樣的運算元卷積,即可得到圖像的梯度圖像,請讀者復習下卷積和倒數的概念自行推導)由於圖像的邊緣處往往是圖像像素差異較大,梯度較大地方。因此我們通過合適的卷積核得到圖像的梯度圖像,即得到了圖像的邊緣圖像。至於二階運算元的推導,與一階類似。優點:傳統運算元梯度檢測,只需要用合適的卷積核做卷積,即可快速得出對應的邊緣圖像。缺點:圖像邊緣不一定準確,復雜圖像的梯度不僅僅出現在圖像邊緣,可以能出現在圖像內部的色彩和紋理上。

             也有基於深度學習方法hed,rcf等。由於這類網路都有同一個比較嚴重的缺陷,這里只舉例hed網路。hed是基於FCN和VGG改進,同時引出6個loss進行優化訓練,通過多個層輸出不同scale的粒度的邊緣,然後通過一個訓練權重融合各個層的邊緣結果。hed網路結構如下:

可以得到一個比較完整的梯度圖像,可參考github的hed實現。優點:圖像的梯度細節和邊緣完整性,相比傳統的邊緣運算元要好很多。但是hed對於邊緣的圖像內部的邊緣並不能很好的區分。當然我們可以自行更改loss來嘗試只擬合外部的圖像邊緣。但最致命的問題在於,基於vgg的hed的網路表達能力有限,對於圖像和背景接近,或者圖像和背景部分相融的圖片,hed似乎就有點無能為力了。

        2.基於區域分割的演算法:

            區域分割比較常用的如傳統的演算法結合遺傳演算法,區域生長演算法,區域分裂合並,分水嶺演算法等。這里傳統演算法的思路是比較簡單易懂的,如果有無法理解的地方,歡迎大家一起討論學習。這里不再做過多的分析。

            基於區域和語意的深度學習分割演算法,是目前圖像分割成果較多和研究的主要方向。例如FCN系列的全卷積網路,以及經典的醫學圖像分割常用的unet系列,以及rcnn系列發展下的maskrcnn,以及18年底的PAnet。基於語意的圖像分割技術,無疑會成為圖像分割技術的主流。

            其中,基於深度學習語意的其他相關演算法也可以間接或直接的應用到圖像分割。如經典的圖像matting問題。18年又出現了許多非常優秀的演算法和論文。如Deep-Image-Matting,以及效果非常優秀的MIT的 semantic soft segmentation(sss).

            基於語意的圖像分割效果明顯要好於其他的傳統演算法。我在解決圖像分割的問題時,首先嘗試用了hed網路。最後的效果並不理想。雖然也參考github,做了hed的一些fine-tune,但是還是上面提到的原因,在我多次嘗試後,最終放棄。轉而適用FCN系列的網路。但是fcn也無法解決圖像和背景相融的問題。圖片相融的分割,感覺即需要大的感受野,又需要未相融部分原圖像細節,所以單原FCN的網路,很難做出准確的分割。中間還測試過很多其他相關的網路,但都效果不佳。考慮到感受野和原圖像細節,嘗試了resnet和densenet作為圖像特徵提取的底層。最終我測試了unet系列的網路:

                unet的原始模型如圖所示。在自己拍照爬蟲等手段採集了將近1000張圖片。去掉了圖片質量太差的,圖片內容太過類似的。爬蟲最終收集160多張,自己拍照收集200張圖片後,又用ps手動p了邊緣圖像,採用圖像增強變換,大約有300*24張圖片。原生unet網路的表現比較一般。在將unet普通的卷積層改為resnet後,網路的表達能力明顯提升。在將resnet改為resnet101,此時,即使對於部分相融的圖像,也能較好的分割了。但是unet的模型體積已經不能接受。

                在最後階段,看到maskrcnn的實例分割。maskrcnn一路由rcnn,fasterrcnn發展過來。於是用maskrcnn來加入自己的訓練數據和label圖像進行訓練。maskrcnn的結果表現並不令人滿意,對於邊緣的定位,相比於其他演算法,略顯粗糙。在產品應用中,明顯還不合適。                

        3.基於圖的分割演算法

            基於深度學習的deepgrab,效果表現並不是十分理想。deepgrab的git作者backbone採用了deeplabv2的網路結構。並沒有完全安裝原論文來做。

論文原地址參考: https://arxiv.org/pdf/1707.00243.pdf

整體結構類似於encode和decoder。並沒有太仔細的研究,因為基於resent101的結構,在模型體積,速度以及deeplab的分割精度上,都不能滿足當前的需求。之前大致總結過計算機視覺的相關知識點,既然目前在討論移動端模型,那後面就分模塊總結下移動端模型的應用落地吧。

由於時間實在有限。這里並沒有針對每個演算法進行詳細的講解。後續我會從基礎的機器學習演算法開始總結。

⑵ 最小一乘法 (Least Absolutely Deviation)中y=a+bx中a、b的值一般是怎麼確定的,希望能用公式表示出來

沒有解析方法解,人們都是用數值方法解的。



下面是英文網路上摘來的關於LAD的詞條。


裡面寫明了:LDA雖然看上去和二乘法差不多,但是卻沒有解析最優解(二乘法有解析最優解),但是人們開發了很多種數值遞歸解法,最常用的是單純形(SimplexBased)方法,可化為線性規劃的問題(例如BarrodaleandRoberts演算法)。

⑶ 圖片處理-opencv-10.圖像銳化與邊緣檢測

 

Roberts運算元又稱為交叉微分演算法,它是基於交叉差分的梯度演算法,通過局部差分計算檢測邊緣線條。常用來處理具有陡峭的低雜訊圖像,當圖像邊緣接近於正45度或負45度時,該演算法處理效果更理想。其缺點是對邊緣的定位不太准確,提取的邊緣線條較粗。

Prewitt是一種圖像邊緣檢測的微分運算元,其原理是利用特定區域內像素灰度值產生的差分實現邊緣檢測。由於Prewitt運算元採用3 3模板對區域內的像素值進行計算,而Robert運算元的模板為2 2,故Prewitt運算元的邊緣檢測結果在水平方向和垂直方向均比Robert運算元更加明顯。Prewitt運算元適合用來識別雜訊較多、灰度漸變的圖像。

dst = filter2D(src, ddepth, kernel[, dst[, anchor[, delta[, borderType]]]])

RSobel運算元是一種用於邊緣檢測的離散微分運算元,它結合了高斯平滑和微分求導。該運算元用於計算圖像明暗程度近似值,根據圖像邊緣旁邊明暗程度把該區域內超過某個數的特定點記為邊緣。Sobel運算元在Prewitt運算元的基礎上增加了權重的概念,認為相鄰點的距離遠近對當前像素點的影響是不同的,距離越近的像素點對應當前像素的影響越大,從而實現圖像銳化並突出邊緣輪廓。Sobel運算元的邊緣定位更准確,常用於雜訊較多、灰度漸變的圖像。

Sobel運算元根據像素點上下、左右鄰點灰度加權差,在邊緣處達到極值這一現象檢測邊緣。對雜訊具有平滑作用,提供較為精確的邊緣方向信息。因為Sobel運算元結合了高斯平滑和微分求導(分化),因此結果會具有更多的抗噪性,當對精度要求不是很高時,Sobel運算元是一種較為常用的邊緣檢測方法。

dst = Sobel(src, ddepth, dx, dy[, dst[, ksize[, scale[, delta[, borderType]]]]])

在進行Sobel運算元處理之後,還需要調用convertScaleAbs()函數計算絕對值,並將圖像轉換為8點陣圖進行顯示

dst = convertScaleAbs(src[, dst[, alpha[, beta]]])

拉普拉斯(Laplacian)運算元是n維歐幾里德空間中的一個二階微分運算元,常用於圖像增強領域和邊緣提取。它通過灰度差分計算鄰域內的像素,基本流程是:判斷圖像中心像素灰度值與它周圍其他像素的灰度值,如果中心像素的灰度更高,則提升中心像素的灰度;反之降低中心像素的灰度,從而實現圖像銳化操作。在演算法實現過程中,Laplacian運算元通過對鄰域中心像素的四方向或八方向求梯度,再將梯度相加起來判斷中心像素灰度與鄰域內其他像素灰度的關系,最後通過梯度運算的結果對像素灰度進行調整。

Laplacian運算元分為四鄰域和八鄰域,四鄰域是對鄰域中心像素的四方向求梯度,八鄰域是對八方向求梯度。當鄰域內像素灰度相同時,模板的卷積運算結果為0;當中心像素灰度高於鄰域內其他像素的平均灰度時,模板的卷積運算結果為正數;當中心像素的灰度低於鄰域內其他像素的平均灰度時,模板的卷積為負數。對卷積運算的結果用適當的衰弱因子處理並加在原中心像素上,就可以實現圖像的銳化處理。

dst = Laplacian(src, ddepth[, dst[, ksize[, scale[, delta[, borderType]]]]])

由於Sobel運算元在計算相對較小的核的時候,其近似計算導數的精度比較低,比如一個33的Sobel運算元,當梯度角度接近水平或垂直方向時,其不精確性就越發明顯。Scharr運算元同Sobel運算元的速度一樣快,但是准確率更高,尤其是計算較小核的情景,所以利用3*3濾波器實現圖像邊緣提取更推薦使用Scharr運算元

Scharr運算元又稱為Scharr濾波器,也是計算x或y方向上的圖像差分,在OpenCV中主要是配合Sobel運算元的運算而存在的。Scharr運算元的函數原型如下所示,和Sobel運算元幾乎一致,只是沒有ksize參數.

dst = Scharr(src, ddepth, dx, dy[, dst[, scale[, delta[, borderType]]]]])

Canny邊緣檢測運算元(多級邊緣檢測演算法)是一種被廣泛應用於邊緣檢測的標准演算法,其目標是找到一個最優的邊緣檢測解或找尋一幅圖像中灰度強度變化最強的位置。最優邊緣檢測主要通過低錯誤率、高定位性和最小響應三個標准進行評價。

Canny運算元的實現步驟如下:

edges = Canny(image, threshold1, threshold2[, edges[, apertureSize[, L2gradient]]])

LOG(Laplacian of Gaussian)邊緣檢測運算元也稱為Marr&Hildreth運算元,它根據圖像的信噪比來求檢測邊緣的最優濾波器。該演算法首先對圖像做高斯濾波,然後再求其拉普拉斯(Laplacian)二階導數,根據二階導數的過零點來檢測圖像的邊界,即通過檢測濾波結果的零交叉(Zero crossings)來獲得圖像或物體的邊緣。

LOG運算元該綜合考慮了對雜訊的抑制和對邊緣的檢測兩個方面,並且把Gauss平滑濾波器和Laplacian銳化濾波器結合了起來,先平滑掉雜訊,再進行邊緣檢測,所以效果會更好。 該運算元與視覺生理中的數學模型相似,因此在圖像處理領域中得到了廣泛的應用。它具有抗干擾能力強,邊界定位精度高,邊緣連續性好,能有效提取對比度弱的邊界等特點。

⑷ 數字圖像處理(四) 數字增強

  本節主要目的是介紹圖像增強的一些基本概念。來源於東北大學 魏穎教授的數字圖像課程筆記。

  將圖像中像素亮度(灰度級別)看成是一個隨機變數, 則其分布情況反映了圖像的統計特性,這可用Probability Density Function (PDF)來刻畫和描述,表現為 灰度直方圖 (Histogram)。
  灰度直方圖是灰度級的函數,表示圖像中 具有某種灰度級的像素的個數 ,反映了圖像中每種灰度出現的頻率。
  灰度直方圖的 橫坐標是灰度級 縱坐標是該灰度級出現的頻度 ,它是圖像最基本的統計特徵。

  直方圖均衡化處理是以 累積分布函數 變換法為基礎的直方圖修正法。假定變換函數為

  式中: 是積分變數,而 就是 的累積分布函數。
  累積分布函數是 的函數,並且單調地從0增加到1, 所以這個變換函數滿足關於 在 內單值單調增加。在 內有 的兩個條件。可以推導出,變換後的變數s的定義域內的概率密度是均勻分布的。
  用 的累積分布函數作為變換函數,可產生一幅 灰度級分布具有均勻概率密度 的圖像。

  考慮到灰度變換不影響像素的位置分布,也不會增減像素數目。所以有

  應用到離散灰度級,設一幅圖像的像素總數為 ,分 個灰度級。

  第 個灰度級出現的頻數。第 個灰度級出現的概率 其中 , 。形式為:

  直方圖均衡化,力圖使 等長區間 內出現的像素數接近相等。

  圖像由像素組成,視覺效果與像素的灰度有關。從而可以通過改變像素灰度值來改變圖像的視覺效果。 灰度變換 是一種點操作,賦予每個像素新的灰度值,關鍵在於設計變換函數(映射規則)。本節主要介紹三種灰度變換方法: 線性灰度變換 分段線性變換 非線性變換

  1. 線性灰度變換

  當圖象成象時曝光不足或過度, 或由於成象設備的非線性和圖象記錄設備動態范圍太窄等因素。都會產生對比度不足的弊病,使圖象中的細節分辨不清。這時可將灰度范圍線性擴展。
  設 灰度范圍為 , 灰度范圍為 。

  假定原圖像 的灰度范圍為 ,希望變換後圖像 的灰度范圍擴展至 ,則線性變換可表示為:

  為了突出感興趣的目標或灰度區間,相對抑制不感興趣的灰度區域,可採用分段線性變換。常用的三段線性變換法數學表達式如下:

  雜訊可以理解為「妨礙人們感覺器官對所接收的信源信息理解的因素」。例如,一幅黑白圖像,其亮度分布假定為 , 那麼對其起干擾作用的亮度分布 便稱為圖像雜訊。

  雜訊在理論上可以定義為「不可預測, 只能用概率統計方法來認識的隨機誤差」。將圖像雜訊看成是多維隨機過程是合適的,描述雜訊的方法完全可以借用隨機過程及其概率分布函數和概率密度函數。
  但在很多情況下,這種描述方法很復雜,甚至不可能,而且實際應用往往也不必要,通常是用其 數字特徵 即均值方差 相關函數 等進行處理。

  圖像雜訊按其產生的原因可分為 外部雜訊 內部雜訊 。外部雜訊是指系統外部干擾從電磁波或經電源傳進系統內部而引起的雜訊,如電氣設備、天體放電現像等引起的雜訊。主要外部干擾如下:
(1) 由光和電的基本性質所引起的雜訊。
(2) 電器的機械運動產生的雜訊。如, 各種接頭因抖動引起的電流變化所產
生的雜訊;磁頭、磁帶抖動引起的抖動雜訊等。
(3) 元器件材料本身引起的雜訊。如, 磁帶、 磁碟表面缺陷所產生的雜訊
(4) 系統內部設備電路所引起的雜訊。如, 電源系統引入的交流雜訊,偏轉
系統和箝位電路引起的雜訊等。

  圖像雜訊從 統計特性 可分為 平穩雜訊 非平穩雜訊 兩種。統計特性不隨時間變化的雜訊稱為平穩雜訊;統計特性隨時間變化的雜訊稱為非平穩雜訊。
  另外,按雜訊和信號之間的關系可分為 加性雜訊 乘性雜訊
  假定信號為 ,雜訊為 ,如果混合疊加波形是 形式,則稱其為加性雜訊;如果疊加波形為 形式, 則稱其為乘性雜訊。
  為了分析處理方便,往往將乘性雜訊近似認為加性雜訊,而且總是 假定信號和雜訊是互相獨立 的。

   (1)高斯雜訊

  高斯雜訊是一種源於電子電路雜訊和由低照明度或高溫帶來的感測器雜訊。高斯雜訊也常稱為正態雜訊,符合高斯分布。是自然界中最常見的雜訊。高斯雜訊可以通過空域濾波的平滑濾波方法來消除。

  椒鹽雜訊又稱雙極脈沖雜訊,其概率密度函數為:

  椒鹽雜訊是指圖像中出現的雜訊只有兩種灰度值,分別為a和b,通常情況下脈沖雜訊總是數字化為允許的最大或最小值,所以負脈沖以黑點(類似胡椒)出現在圖像中,正脈沖以白點(類似鹽)出現在圖像中。

  出現位置是隨機的,但雜訊的幅值是基本相同的。

  出現在位置是一定的(每一點上),但雜訊的幅值是隨機的。

  改善降質圖像的方法有兩類: 圖像增強 圖像復原

  (1) 圖像增強 :不考慮圖像降質的原因, 只將圖像中感興趣的部分加以處理或突出有用的圖像特徵,故改善後的圖像並不一定要去逼近原圖像。主要目的是要提高圖像的可懂度。(2) 圖像復原 :針對圖像降質的具體原因,設法補償降質因素,使改善後的圖像盡可能地逼近原始圖像。

  圖像增強處理的方法基本上可分為 空間域法 頻域法 兩大類。

  (1) 空間域法
  在原圖像上直接進行數據運算,對像素的灰度值進行處理。它又分為兩類:點運算和局部運算點運算:對圖像作逐點運算局部運算:在與處理像點鄰域有關的空間域上進行運算。

  (2) 頻域法
  在圖像的變換域上進行處理, 增強感興趣的頻率分量, 然後進行反變換,得到增強了的圖像。

  線性濾波器是線性系統和頻域濾波概念在空域的自然延伸。其特徵是結果像素值的計算由下列公式定義:

  其中: 是模板的系數 是被計算像素及其鄰域像素的值。就是利用模板(濾波器)進行的卷積運算。

   主要線性空域濾波器 :主要包括 低通濾波器 高通濾波器 帶通濾波器 低通 濾波器主要用於:鈍化圖像、去除雜訊; 高通 濾波器 主要用於邊緣增強、邊緣提取; 帶通 濾波器主要用於刪除特定頻率。

   非線性濾波器的定義 :使用模板進行結果像素值的計算,結果值直接取決於像素鄰域的值,而 不使用乘積和 的計算。 主要非線性濾波器有 :中值濾波、最大值濾波、最小值濾波。

  線性平滑濾波器: 均值濾波器

  分別採用 像素的方形均值濾波器得到的平滑結果。

  模板尺寸越大,圖像越模糊,圖像細節丟失越多

  低通空域濾波的缺點和問題如果圖像處理的目的是去除雜訊,那麼,線性平滑低通濾波在 去除雜訊的同時也鈍化了邊和尖銳的細節

   統計濾波器是非線性濾波 :濾波器模板包圍的圖像區域中像素排序,統計排序結果代替中心像素的值; 中值濾波器是應用最廣泛的統計濾波器 ;中值濾波對一定類型的隨機雜訊(如椒鹽雜訊)提供了優秀的去噪能力,比小尺寸的線性平滑濾波器的模糊程度明顯低。

   中值濾波的原理

  用模板區域內像素的中值,作為結果值 ;強迫突出的亮點(暗點)更象它周圍的值,以消除孤立的亮點(暗點)

中值濾波演算法的實現

   在去除雜訊的同時,可以比較好地保留邊的銳度和圖像的細節。對於椒鹽雜訊,中值濾波效果比均值濾波效果好;對於高斯雜訊,均值濾波效果比中值濾波效果好。

   最大值濾波可以去除圖像中的暗斑,同時也會使亮斑增大;最小值濾波可以去除圖像中的亮斑 ,同時也會增大暗斑。

   圖像邊緣是圖像的基本特徵之一,它包含對人類視覺和機器識別有價值的物體圖像邊緣信息。

   邊緣是圖像中特性(如像素灰度、紋理等)分布的 不連續處 ,圖像周圍特性有階躍變化或屋脊狀變化的那些像素集合。圖像邊緣存在於目標與背景、目標與目標、基元與基元的邊界,它標示出目標物體或基元的實際含量,是圖像識別信息最集中的地方。

   圖像銳化就是要 突出圖像邊緣 抑制圖像中非邊緣信息 使圖像輪廓更加清晰 。由於邊緣占據圖像的高頻成分,所以邊緣增強通常屬於 高通濾波

   這里介紹三個方法:(1) 基本高通濾波模板;(2) 高頻補償濾波;(3) 圖像微分,包括:一階微分—梯度法;二階微分—拉普拉斯運算元;

   (1) 基本高通濾波模板

   我們先介紹高通濾波模板: 圖像銳化是要增強圖像頻譜中的高頻部分 ,就相當於 從原圖像中減去它的低頻分量 ,即原始圖像經平滑處理後所得的圖像。選擇不同的平滑方法,會有不同的圖像銳化結果。

  或:

   為原象, 為平滑後圖像 為輸出圖像。

  設計模板系數的原則:1)中心系數為正值,外圍為負值;2)系數之和為0

   基本高通空域濾波的缺點和問題 :高通濾波在增強了邊的同時,丟失了圖像的層次和亮度。

   (2) 高頻補償濾波(提升濾波)

  彌補高通濾波的缺陷,在增強邊和細節的同時,不丟失原圖像的低頻成分。

  高頻補償比高通的優點是很明顯的,即增強了邊緣,又保留了層次。雜訊對結果圖像的視覺效果有重要的影響,高頻補償在增強了邊的同時也增強了雜訊。

   (3) 圖像微分

   均值產生鈍化 的效果,而 均值與積分 相似,由此而聯想到, 微分 能不能產生相反的效果,即 銳化 的效果呢?結論是肯定的。圖像微分主要有一階微分和二階微分。

   Roberts交叉梯度運算元

  採用梯度微分銳化圖像,同時會使雜訊、條紋等得到增強,Sobel運算元則在一定程度上克服了這個問題。

(1) 對圖像中的隨機雜訊有一定的平滑作用。
(2) 邊緣兩側元素得到了增強,邊緣顯得 粗而亮

  對數字圖像來講, 的二階偏導數可表示為:

  採用拉普拉斯運算元對圖像的增強的基本方法可表示為:

   頻率 平面與圖像 空域 特性的 關系

  圖像 變化平緩的部分 靠近頻率平面的圓心,這個區域為 低頻區域 ;圖像中的 邊、雜訊、變化陡峻的部分 ,以放射方向離開頻率平面的圓心,這個區域為 高頻區域

(1) 用 乘以給定的圖像 ,計算出它的傅立葉變換 。
(2) 選擇一個變換函數 (頻域濾波器)乘以 。
(3) 計算(2)的反DFT:
(4) 取(3)的實部
(5)用 乘以(4)的結果

  頻域增強與空域增強的關系:1. 在實踐中,小的空間模板比傅立葉變換用得多得多,因為它們易於實現。2. 對於很多在空域上難以表述清楚的問題,對頻域概念的理解就顯得十分重要。在圖像壓縮中更體會到。

  這里我們介紹頻域濾波器的三種濾波器:1)低通濾波;2)高通濾波;3)同態濾波。

   (1)平滑(低通)濾波

  頻域低通濾波的基本思想 , 是需要鈍化圖像的傅立葉變換形式, 是選取的一個濾波器變換函數 是通過 減少 的高頻部分,來得到的結果運用傅立葉逆變換得到鈍化後的圖像。

   理想低通濾波器的定義

   平滑(低通)濾波—理想低通濾波

  (1)整個能量的92%被一個半徑為5的小圓周包含,大部分尖銳的細節信息都存在於被去掉的8%的能量中。(2)小的邊界和其它尖銳細節信息被包含在頻譜的至多0.5%的能量中。(3)被鈍化的圖像被一種非常嚴重的振鈴效果——理想低通濾波器的一種特性所影響。

  理想低通濾波器的平滑作用非常明顯,但由於變換有一個陡峭的波形,它的反變換 有強烈的振鈴特性,使濾波後圖像產生模糊效果。因此這種理想低通濾波實用中不能採用。

⑸ 在圖像處理中有哪些演算法

太多了,去找本書看看吧!給個大概的介紹好了
圖像處理主要分為兩大部分:
1、圖像增強
空域方法有 直方圖均衡化
灰度線性變化
線性灰度變化
分段線性灰度變化
非線性灰度變化(對數擴展
指數擴展)

圖像平滑
領域平均法(加權平均法
非加權領域平均法)
中值濾波
圖像銳化
Roberts運算元
Sobel運算元
拉普拉斯運算元

頻域方法有
低通濾波
理想低通濾波
巴特沃斯低通濾波
指數低通濾波
梯形低通濾波
高通濾波
理想高通濾波
巴特沃斯高通濾波
指數高通濾波
梯形高通濾波
彩色圖像增強(真彩色、假彩色、偽彩色增強)
2、圖像模糊處理
圖像模糊處理
運動模糊(維納濾波
最小均方濾波
盲卷積
……


高斯模糊(維納濾波
最小均方濾波
盲卷積
……

圖像去噪處理
高斯雜訊
(維納濾波
樣條插值
低通濾波
……

椒鹽雜訊
(中值濾波
……

⑹ Matlab關於圖像邊緣提取,用Sobel運算元、Roberts運算元、Prewitt運算元,加QQ詳談 急用!!

4.2.1 Roberts演算法原理

Roberts運算元是一種最簡單的運算元,是一種利用局部差分運算元尋找邊緣的運算元,他採用對角線方向相鄰兩象素之差近似梯度幅值檢測邊緣。檢測垂直邊緣的效果好於斜向邊緣,定位精度高,對雜訊敏感,無法抑制雜訊的影響。

4.2.2 演算法流程

Roberts運算元在2×2領域上計算對角導數

(4-1)

成為Roberts交叉運算元。在實際應用中為了簡化計算,用梯度函數的Roberts絕對值來近似

(4-2)另外還可以用Roberts 最大運算元來計算

(4-3)

上式能夠提供較好的不變性邊緣取向。對於同等長度但取向不同的邊緣,應用Roberts最大值運算元比應用Roberts交叉運算元所得到的合成幅度變化小。Roberts邊緣檢測運算元的卷積運算元為

Roberts 邊緣運算元方向模版

由上面兩個卷積運算元對圖像運算後,代入(3-7)式,可求得圖像的梯度幅度值,然後選取門限TH,做如下判斷>TH,為階躍狀邊緣點為一個二值圖像,也就是圖像的邊緣圖像。4.4.1 Prewitt 演算法原理

Prewitt邊緣運算元是一種邊緣樣板運算元。Prewitt 從加大邊緣檢測運算元的模板大小出發,由2×2 擴大到3×3 來計算差分運算元,採用Prewitt 運算元不僅能檢測邊緣點,而且能抑制雜訊的影響。
Prewitt 採用計算偏微分估計的方法,由式(4-9)所示的兩個卷積運算元形成了Prewitt邊緣運算元,樣板運算元由理想的邊緣子圖像構成,依次用邊緣樣板去檢測圖像,與被檢測區域最為相似的樣板給出最大值,用這個最大值作為運算元的輸出

(4-9)

另一種方法是,可以將Prewitt運算元擴展到八個方向,每個模版對特定的邊緣方向做出最大響應,所有8個方向中最大值作為邊緣幅度圖像的輸出,這些運算元樣板由離線的邊緣子圖像構成。依次用邊緣樣板去檢測圖像,與被檢測區域最為相似的的樣板給出最大值。定義Prewitt 邊緣檢測的運算元模版如下:

(1)1方向 (2)2方向 (3)3方向 (4)4方

⑺ 數學難題

數碼相機定位(數學建模) 我們組的答案,文章中的有些公式復制不上,大家就湊和這看吧,呵呵

數碼相機定位

【摘要】 雙目測試法的數碼相機定位,精度准確的關鍵在於對相機內外參數的標定[1]。在不考慮切向畸和變徑向畸變的前提下建立理想的針孔成像模型,通過基於Sobel運算元圖像的邊緣檢測法確定靶標上偏移以後的象上成像邊緣在平面中的坐標,然後根據基於隨機Hough變換的圖形檢測法確定成像上的靶標的圓心的坐標,採用傳統的線性法求出相機參數初值,再用最小二乘法進行線性擬合優化初值,利用投影成像的幾何關系容易得出要特徵點在相機坐標系的坐標,進而求出相機的相對位置。

【關鍵詞】雙目測試 相機標定 線性法 靶標定位最小二乘法 Sobel運算元邊緣檢測 隨機Hough變換

一、 模型的基本假設與符號說明

1.模型的基本假設:

(1)假設拍攝時光線正常。

(2)假設 , 位於圖像中心[2]

(3)假設成像過程嚴格遵守針孔成像模型無幾何畸變

(4)假設實體靶標平面平行與世界坐標系的Ow-XwYw即 =0

2.符號說明:

(1) 以實物的固定點為原點建立世界坐標系Ow-XwYwZw。

(2) Pw表示實物上的觀測點。

(3) 以O為原點建立以像素為單位的像平面的坐標系O-UV。

(4) 以主光軸和像平面的交點為原點建立以mm為單位的像平面物理坐標系O1-XY。

(5) Pd 為實際在像平面上的影像。

(6) 以相機的固定點為原點建立相機的坐標系Oc-XcYcZc.

二、 模型的建立

1.相機成像模型

相機的成像過程可以用傳統的針孔成像模型來模擬,那麼建立模型如圖1所示包含世界坐標系Ow-XwYwZw、相機坐標系Oc-XcYcZc、像平面坐標系O-UV(像素單位)、像平面物理坐標系O1-XY(毫米單位)。Pw(Xw,Yw,Zw) 為世界坐標系中點Pw的坐標,Pc (Xc,Yc,Zc)為同一點在相機坐標系下的坐標, Pu(u,v)為理想針孔模型下Pw的像點坐標, Pu(x,y)則為理想情況下的像平面物理坐標。

圖1-1

1.1針孔成像模型

根據針孔成像原理,世界坐標點Pw(Xw,Yw,Zw)到理想坐標點Pu(u,v)的齊次變換如下:

= (1-1)

其中A為內參矩陣,[R T]為相機外參矩陣,和T分別為平板相對相機的旋轉矩陣和平移矩陣。定義如下[3]:

, ,

其中 , 分別分別表示在x方向和y方向上像點的物理坐標到圖像坐標的比例系數, 、 表示主光軸與像平面交點的圖像坐標。設世界坐標系的0-XY面平行於平板,則 =0,代入公式(1-1)式可得:

(1-2)

進一步消去s即可得到理想針孔成像的數學模型:

(1-3)

而實際像點物理坐標 到實際像點 的關系如下:

(1-4)

那麼由公式(1-3)、(1-4)可得理想像點的物理坐標與世界坐標之間的關系:

(1-5)

2.相機標定模型

從實際成像模型可以看出需要標定的有6個外部參數,即旋轉矩陣中反映的繞3個坐標軸的旋轉角以及平移矩陣中沿3個坐標軸方向的位移,4個內部參數,即 、 , 。這里採用逐步推導求解的方法。

2.1投影矩陣模型

根據題意可知 在圖像中心,所以選擇其為初值,由公式(1-2)可得

(1-6)

那麼可以設投影矩陣

(1-7)

則(1-9)可以重寫為

(1-8)

將(1-8)消去 ,移項整理得

(1-9)

其中 T

每組像點與世界坐標點可以確定一個方程組,8組對應點則可求出未知參數 ,而圖像坐標的取值存在誤差,實際標定點應該多於8個,然後統計結果用正態分布來獲取最接近實際值的結果。

2.2轉換矩陣模型(外部參數)

先利用旋轉矩陣R的正交性,通過變換可得

然後便可根據(1-7)求出旋轉矩陣R和平移矩陣T。

2.3內部參數模型

根據轉換矩陣模型可計算出 ,則由消去S的理想針孔成像模型(1-3)解得 。

3.求取成像坐標的模型的建立

依據圖像處理演算法得到的圖象二值化、高通濾波、Sobel邊緣運算元的處理結果,再用Sobel運算元進行處理後,又對它進行了二值化處理,最終得到了成像邊緣上的一個點在成像平面上的坐標,把坐標值D[0][0]存放到數組D[m][n]中。如此重復有限次,獲得圖象邊緣上的足夠多的點,並把點的坐標值D[i][j]保存到數組D[m][n]中。在數組D[m][n]中任意取三點D[X1][Y1]、D[X2][Y2]、D[X3][Y3]根據基於隨機Hough變換為基礎直接提取橢圓的技術獲取橢圓的重心這個重心就是實際圖像對應的靶標Pd

3.1圖像邊緣檢測

採用邊緣檢測來在實際的成像中取出任意多個份額有效的點常用的邊緣檢測運算元有五種(梯度演算法、Prewitt,Sobel,Roberts,Robins.Mar-Hildret等)在這里主要採用梯度運算元,其優點是簡單有效。

3.1.1邊緣檢測演算法的基本步驟:

1)濾波:改善與雜訊有關的邊緣檢測器的性能;一般濾波器降導

致了邊緣的損失;增強邊緣和降低雜訊之間需要折衷。

2)增強:將鄰域強度值有顯著變化的點突顯出來,邊緣增強一般

是通過計算梯度幅值來完成的。

3)檢測:最簡單的邊緣檢測判據是梯度幅值閥值。

4)定位:邊緣的位置和方位在子像素解析度上估計,在平面坐標系中確定實際成像點的坐標。

3.2定理公式的整理

Sobel運算元是一種一階微分運算元,它利用像素鄰近區域的梯度值來計算1個像素的梯度,然後根據一定的閾值來取捨。它由下式給出:

M= (2)

其中的偏導數用下式計算

Sx=(a2+ca3+a4)-(a0+cd7+a6)

Sy=(a0+ca1+a2)+(a6+ca5+a4)

其中常熟c=2。Sx、Sy+可用卷積模板來實現,如下圖:

-1
0
1

Sx=
-2
0
2

-1
0
1

(圖3-1 卷積模板x)

1
2
1

Sy=
0
0
0

-1
-2
-1

(圖3-2 卷積模板y)

圖像中的每個點都用這兩個模板做卷積。一個模板對通常的

垂直邊緣響應最大.而另一個對水平邊緣響應最大。兩個卷積的最大值作為該點的輸出值。運算結果是1幅邊緣幅度圖像。此運算元對灰度漸變雜訊較多的圖像處理得較好

a0
A1
A2

A7
[i.j]
A3

A6
A5
A4

(圖3-3 際對應的坐標)

對於平面中不規則圖形可以用以及差分代替一階微分

求梯度時對於平方和運算及開方運算,可以用兩個分量的

絕對值之和表示,即:

Sobel梯度運算元是先做成加權平均,再微分,然後求梯度,即:

G[f(x,y)]=|Δxf(x,y) |+|Δyf(x,y) |

上述各式中像素之間的關系見下圖:

f(x-1,y-1)
f(x,y-1)
F(x+1,y_1)

f(x-1,y)
f(x,y)
f(x+1,y)

f(x-1,y+1)
f(x,y+1)
f(x+1,y+1)

(圖3-4 像素關系表)

3.3.基於隨機Hough變換的橢圓型檢測法求橢圓中心模型

演算法簡要描述如下:設D為圖像空間的邊緣點集;P為參數空間的參數單元集,是動態鏈表結構。從D中隨機采樣5點,計算這5點所確定的二次曲線參數P,看是否存在一參數PC和P的誤差在容許范圍之內。若有,則將參數單元PC的計數值score加1並將參數單元PC更新;若沒有,則在P中插入新的參數單元P。當參數單元PC的計數值score達到指定閡值Nt(它是一個很小的數,例如2, 3)時,該參數對應的橢圓成為候選橢圓,判斷該候選橢圓是否為真實橢圓,若是,則說明已檢測到了一個橢圓,將落在該橢圓上的點從D中去掉,並釋放P中所有參數單元佔用的內存,然後繼續檢測下一個橢圓;否則,說明該侯選的橢圓為虛假橢圓,從P中去掉該參數單元,繼續檢測。

4.1具體標定的過程

二次曲線在空間坐標系中的表示:

Ax2+Bxy+Cy2+2Dx+2Ey+F=0 (4-1)

其中(x,y)為圖像控制項的坐標,A、B、C、D、E、F是二次曲線的參數,其中F是自由參數。

B2-AC<0 (4-2)

B2-AC<0且A=C (4-3)

若A、B、C滿足(1-2)二次曲線為橢圓,若A, B, C滿足(1-3)則二次曲線為圓。

將隨機Hough變換(RHT)直接用於橢圓檢測時,需隨機采樣5個點,由方程(1-1)得5個方程,由它們構成關於參數的線形方程組,對其進行求解,若有解且該解滿足式(1-1),則對該解(也就是求得的參數)進行累積。

4.2橢圓中心提取方法

本演算法是利用由橢圓的極點一極線性質開發的三點組到橢圓參數的收斂映射,是一個以隨機Hough變換為基礎直接提取橢圓的技術。

橢圓的基本性質

定義:若橢圓上的任意兩點P和Q的切線交於點N,則稱這兩點間的連線PN為點A所對應的極線,點A為弦PN所對應的極點,三角形APN為橢圓的極三角形。如下圖所示:

(圖 3-5 橢圓中心的確定示意圖)

性質1:如圖3-5所示,極點A、極線P口的中點E與橢圓中心。共線。

性質2:如圖3-5所示,若點D為射線OA與弧PN的交點,則過點D的切線平行

性質3:如圖3-5所示,若三點組K, P和N在橢圓上,則此三點組所對應的3個極三角形APN, BPK, CNK的極線邊PN, KP,NK上的中線延長線必共點於橢圓的中心Oo

利用橢圓方程和橢圓的極點一極線性質可推導出橢圓點的方向和中心位置所應滿足的約束條件。這樣,就可以確定橢圓中心位置。即靶標象Pu的坐標。

在圖像上(如下圖3-6)根據上述的「求取成像坐標的模型的建立」利用邊緣取點法,求取有限組點坐標數據記錄到無窮大的一個二維數組D[i][j]記錄到下表中

(圖3-6 成像照片上的一個變形後的形狀)

A'
B'
C'
D'
E'

X坐標
Y坐標
X坐標
Y坐標
X坐標
Y坐標
X坐標
Y坐標
X坐標
Y坐標

102.8
56.9
137.4
61.3
212.8
77.1
87.0
178.8
192.8
180.1

103.6
56.6
139.3
59.4
215.2
68.8
87.4
173.4
198.3
170.2

107.2
54.9
148.7
55.6
220.4
63.8
94.7
106.7
202.5
167.4

112.7
52.5
155.1
57.4
229.2
69.7
99.4
164.9
215.8
169.6

118.0
52.9
162.1
64.3
233.6
64.5
105.7
165.7
216.9
177.3

120.5
53.9
160.8
76.3
238.4
72.7
109.6
167.5
213.2
184.3

126.1
72.6
155.2
81.4
235.2
82.1
112.4
170.0
207.8
188.6

126.8
71.5
151.5
83.1
228.7
87.6
114.1
173.7
202.3
189.2

115.9
81.1
140.1
79.8
223.0
88.5
112.7
180.9
197.6
186.8

108.1
80.1
139.6
79.6
215.3
84.9
108.9
185.1
193.6
182.3

102.8
76.1
136.7
75.5
213.6
82.3
93.3
188.3
192.7
177.9

112.1
65.4
145.3
64.2
220.1
72.1
102.3
179.2
205.1
179.6

113.4
66.8
148.6
69.3
225.4
75.2
100.1
176.9
205.5
177.3

(表3-7 實際測量數據)

然後根據上述的「基於隨機Hough變換的橢圓型檢測法求橢圓中心模型」確定不規則圖形的中心。分別如下:

推算的靶標象的坐標
靶標象對應的坐標

X坐標
Y坐標
X坐標
Y坐標

A'
112.1
65.4
113.4
66.8

B'
145.3
64.2
148.6
69.3

C'
220.1
72.1
225.4
75.2

D'
102.3
179.2
100.1
176.9

E'
205.1
179.6
205.5
177.3

(表3-8 實際靶標的位置和計算的到的靶標 )

4.求兩相機距離d的模型

4.1求平面夾角

(圖4-1 兩平面夾角)

如上圖4-1所示:在以左相機為基準的空間坐標系中原圖象所在的平面可以通過世界坐標系和基準坐標系的轉換公式(1-3)得到其在基準坐標系中的平面表示公式:

(4-1)

即上圖中的CDEF平面在基準坐標系中的表示

又由於平面ABCD和基準平面的xy平面相平行,故平面ABCD的坐標表示也可以求出設其表示公式如下:

(4-2)

應為兩平面無限延伸會得到一個交線(假設不是在特設的情況下兩平面)通過公式()和公式()可以求出一條交線CD在空間坐標系中的表示,其公式表示:

下面利用空間點到直線的距離即圖中直線O』Oc』和直線OO』的距離。在由點Oc點O、點O』構成的三角形平面中直線O』Oc』、 直線OO』和直線OOc的三角形中根據餘弦定理知道角∠OO』Oc的角度即兩個平面平面ABCD和平面CDEF間的面夾角。

4.2

(圖4-2 求取d的示意圖))

圖中點說明:(此圖為從整個空間上方的俯視圖)

Oc:左側相機的光學中心即三維原點

Oc』:右側相機的三維原點

O: 實際物體所在三位坐標的原點該點在平面ABCD中

Pu: 左面相機理想成像點

Pu』: 右面相機理想點成像

直線OO』:Oc和Oc』在平面ABCD中的投影

平面ABCD: 空間俯視後對原圖象的平面

通過點Pu向原圖象ABCD做垂線,在直角三角形P』PuO和平面ABCD的三垂線定理計算出O』』O與OcO的夾角∠O』』OOc.同理可以求出∠O』OOc』,則根據平角定理可以求出∠OcOoC』:

∠OcOoC』=Л-∠O』OOc』-∠O』』OOc

在三角形O』OOc』中已經知道兩邊和兩邊夾角利用餘弦定理可以求得相機的相對位置d:

三、 模型的求解

1. 相機成像模型和相機標定模型的求解

求解針孔成像模型必然要先進行相機內外參數的標定即相機標定模型。在引入先前的假設 在圖像中心後求的投影矩陣,通過投影矩陣D分離其參數可以簡化計算。然後根據多組對應點利用公式(9)即可求得D的參數。這里假設世界坐標的原點為靶標的中心(即正方形中心),則可得對應點的結果:

A
C
D
E

X坐標
Y坐標
X坐標
Y坐標
X坐標
Y坐標
X坐標
Y坐標

世界坐標系的坐標
-50
50
50
50
50
-50
-50
-50

像平面的坐標
113.4
66.8
225.4
75.2
100.1
176.9
205.5
177.3

用MATLAB求得

在利用投影矩陣的變換求得 後,便可通過(7)來求得轉換矩陣 ,進而由(1-3)求出 。

2.成像坐標模型的求解

3.兩相機距離d模型的求解

四、 模型檢驗方法和評價

五、 參考文獻

[1]馬頌德,張正友.《計算機視覺——計算理論與演算法基礎[M]》.北京:科學出版社,1998

[2] 毛劍飛 鄒細勇 諸靜. 改進的平面模板兩步法標定攝像機 中國圖象圖形學報:A輯.2004,9(7).-846-852

[3]Heikkila J.Geometric camera calibration using Circular control

points l-J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(10):1066~ 1077.

Tag標簽: 數學建模,數碼相機定位,雙面定位

⑻ Matlab邊緣檢測問題

用mesh語句似乎可以,具體也不了解你的情況,感覺怪怪的,發一段我以前些的程序,用羅伯特運算元寫的,把運算元一改就是sobel了。兩種邊緣檢測近似演算法奉上:
clc
close all
clear all
%%%生成高斯平滑濾波模板%%%
%%%%%%%%%%%%%%%%%%%%%%%%%
hg=zeros(3,3); %設定高斯平滑濾波模板的大小為3*3
delta=0.5;
for x=1:1:3
for y=1:1:3
u=x-2;
v=y-2;
hg(x,y)=exp(-(u^2+v^2)/(2*pi*delta^2));
end
end
h=hg/sum(hg(:));
%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%讀入圖像%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%

f = imread('1111.tif'); % 讀入圖像文件
f=rgb2gray(im2double(f));
imshow(f)
title('原始圖像');
[m,n]=size(f);
ftemp=zeros(m,n);
rowhigh=m-1;
colhigh=n-1;
%%%高斯濾波%%%
for x=2:1:rowhigh-1
for y=2:1:colhigh-1
mod=[f(x-1,y-1) f(x-1,y) f(x-1,y+1); f(x,y-1) f(x,y) f(x,y+1);f(x+1,y-1) f(x+1,y) f(x+1,y+1)];
A=h.*mod;
ftemp(x,y)=sum(A(:));
end
end
f=ftemp
figure,imshow(f)
title('通過高斯濾波器後的圖像');

% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %%%利用roberts運算元進行邊緣檢測%%%
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
sx=[-1 -2 -1;0 0 0;1 2 1];
sy=[-1 0 1;-2 0 2;-1 0 1];
for x=2:1:rowhigh-1
for y=2:1:colhigh-1
mod=[f(x-1,y-1) f(x-1,y) f(x-1,y+1); f(x,y-1) f(x,y) f(x,y+1);f(x+1,y-1) f(x+1,y) f(x+1,y+1)];
fsx=sx.*mod;
fsy=sy.*mod;
ftemp(x,y)=sqrt((sum(fsx(:)))^2+(sum(fsy(:)))^2);
end
end
fr=im2uint8(ftemp);
figure,imshow(fr)
title('用roberts運算元邊緣檢測的原始圖像');

%%%域值分割%%%
TH1=60; %設定閾值
for x=2:1:rowhigh-1
for y=2:1:colhigh-1
if (fr(x,y)>=TH1)&((fr(x,y-1) <= fr(x,y)) & (fr(x,y) > fr(x,y+1)) )
fr(x,y)=200;
elseif(fr(x,y)>=TH1)&( (fr(x-1,y) <=fr(x,y)) & (fr(x,y) >fr(x+1,y)))
fr(x,y)=200;
else fr(x,y)=50;
end
end
end
figure,imshow(fr)
title('用roberts運算元邊緣檢測並細化後的圖像');
%%%%%%%%%%%%%%%%%%%%%%%%%%
利用第一種近似演算法進行邊緣檢測%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%3*3的sobel運算元%%%%%%%%
sx=[-1 -2 -1;0 0 0;1 2 1];
sy=[-1 0 1;-2 0 2;-1 0 1];
%sx=[0 1 2;-1 0 1;-2 -1 0];
%sy=[-2 -1 0;-1 0 1;0 1 2];
for x=2:1:rowhigh-1
for y=2:1:colhigh-1
mod=[f(x-1,y-1) f(x-1,y) f(x-1,y+1); f(x,y-1) f(x,y) f(x,y+1);f(x+1,y-1) f(x+1,y) f(x+1,y+1)];
fsx=sx.*mod;
fsy=sy.*mod;
ftemp(x,y)=abs(sum(fsx(:)))+abs(sum(fsy(:)));
end
end
fs=im2uint8(ftemp);
figure,imshow(fs)
title('用第一種近似演算法進行邊緣檢測的原始圖像');
%%%域值分割%%%
TH2=200; %設定閾值
for x=2:1:rowhigh-1
for y=2:1:colhigh-1
if (fs(x,y)>=TH2)&((fs(x,y-1) <= fs(x,y)) & (fs(x,y) > fs(x,y+1)) )
fs(x,y)=200;
elseif(fs(x,y)>=TH2)&( (fs(x-1,y) <=fs(x,y)) & (fs(x,y) >fs(x+1,y)))
fs(x,y)=200;
else fs(x,y)=50;
end
end
end
figure,imshow(fs)
title('採用第一種近似演算法進行邊緣檢測後的圖像');

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%利用第二種近似演算法進行邊緣檢測%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%3*3的sobel運算元%%%%%%%%
sx=[-1 -2 -1;0 0 0;1 2 1];
sy=[-1 0 1;-2 0 2;-1 0 1];
%sx=[0 1 2;-1 0 1;-2 -1 0];
%sy=[-2 -1 0;-1 0 1;0 1 2];
for x=2:1:rowhigh-1
for y=2:1:colhigh-1
mod=[f(x-1,y-1) f(x-1,y) f(x-1,y+1); f(x,y-1) f(x,y) f(x,y+1);f(x+1,y-1) f(x+1,y) f(x+1,y+1)];
fsx=sx.*mod;
fsy=sy.*mod;
ftemp(x,y)=max(abs(sum(fsx(:))),abs(sum(fsy(:))));
end
end
fs=im2uint8(ftemp);
figure,imshow(fs)
title('用第二種近似演算法進行邊緣檢測的原始圖像');
%%%域值分割%%%
TH2=200; %設定閾值
for x=2:1:rowhigh-1
for y=2:1:colhigh-1
if (fs(x,y)>=TH2)&((fs(x,y-1) <= fs(x,y)) & (fs(x,y) > fs(x,y+1)) )
fs(x,y)=200;
elseif(fs(x,y)>=TH2)&( (fs(x-1,y) <=fs(x,y)) & (fs(x,y) >fs(x+1,y)))
fs(x,y)=200;
else fs(x,y)=50;
end
end
end
figure,imshow(fs)
title('採用第二種近似演算法進行邊緣檢測後的圖像');

⑼ sobel銳化演算法 式子怎麼計算

Sobel演算法與Priwitt演算法的思路相同,屬於同一類型,因此處理效果基本相同。Roberts演算法的模板為2*2,提取出的信息較弱。 單方向銳化經過後處理之後,也可以對邊界進行增強。 Priwitt與Sobel相比,有一定的抗干擾性。圖像效果比較干凈

閱讀全文

與roberts演算法參相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:758
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:672
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:486
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:383
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:350
風翼app為什麼進不去了 瀏覽:779
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:151
伊克塞爾文檔怎麼進行加密 瀏覽:893
app轉賬是什麼 瀏覽:163