matlab中edge的用法,matlab中的edge函式入口引數如何設定?

時間 2021-09-08 16:32:34

1樓:沐振銳成歌

bw=edge(i)

採用灰度或一個二值化影象i作為它的輸入,並返回一個與i相同大小的二值化影象bw,在函式檢測到邊緣的地方為1,其他地方為0。bw=

edge(i,'sobel')

自動選擇閾值用sobel運算元進行邊緣檢測。bw=

edge(i,'sobel',thresh)

根據所指定的敏感度閾值thresh,用sobel運算元進行邊緣檢測,它忽略了所有小於閾值的邊緣。當thresh為空時,自動選擇閾值。bw=

edge(i,'sobel',thresh,direction)

根據所指定的敏感度閾值thresh,在所指定的方向direction上,用sobel

運算元進行邊緣檢測。direction可取的字串值為horizontal(水平方向)、vertical(垂直方向)或both(兩個方向)。

[bw,thresh]

=edge(i,'sobel',...)

返回閾值bw=

edge(i,'prewitt')

自動選擇閾值用prewitt運算元進行邊緣檢測。bw=

edge(i,'prewitt',thresh)

根據所指定的敏感度閾值thresh,用prewitt運算元進行邊緣檢測,它忽略了所有小於閾值的邊緣。當thresh為空時,自動選擇閾值。bw=

edge(i,'prewitt',thresh,direction)

根據所指定的敏感度閾值thresh,在所指定的方向direction上,用prewitt運算元進行邊緣檢測。direction可取的字串值為horizontal(水平方向)、vertical(垂直方向)或both(兩個方向)預設方向為both。

[bw,thresh]

=edge(i,'prewitt',...)

返回閾值bw=

edge(i,'roberts')

自動選擇閾值用roberts運算元進行邊緣檢測。bw=

edge(i,'roberts',thresh)

根據所指定的敏感度閾值thresh,用roberts運算元進行邊緣檢測,它忽略了所有小於閾值的邊緣。當thresh為空時,自動選擇閾值。

matlab中文論壇

[bw,thresh]

=edge(i,'roberts',...)

返回閾值bw=

edge(i,'log')

自動選擇閾值用log運算元進行邊緣檢測。

……很多啊,你還是help

edge一下,裡面有很多舉例。

2樓:

edge函式不能接收二進位制**,若是**格式為.tiff就直接可以用,

二進位制影象可以使用bwperim,但是是尋找影象的周邊的.

如果你一定要使用edge函式,可以使用double強制把你的二進位制影象轉換成double型的.

例如:ijpg = imread('1.jpg'); %讀取影象bw1=im2bw(ijpg,0.95);

bw2=double(bw1);

bw3=edge(bw2,'sobel');

3樓:匿名使用者

你可以參考help文件,有例子參考!

matlab中的edge函式入口引數如何設定?

4樓:匿名使用者

底下不是有錯誤分析嘛。要將資料格式轉化為double, single, uint8, uint16, uint32, int8, int16, int32, logical這幾種型別。

5樓:

這種情況下建議用bwperim來提取邊緣

6樓:戰狼

i= imread('d:\abc.jpg'); %讀入影象

matlab中break的用法

7樓:娛樂小八卦啊

break與continue的作用主要是終止迴圈。

break的作用主要用於終止包含它的最內部的那個迴圈for迴圈,但是也可以用於while迴圈;continue可以跳過單次迴圈。

break終止執行for或while迴圈。不執行迴圈中在break語句之後顯示的語句。

在巢狀迴圈中,break僅從它所發生的迴圈中退出。控制傳遞給該迴圈的end之後的語句。

提示1、break 語句完全退出 for 或 while 迴圈。要跳過迴圈中的其餘指令,並開始下一次迭代,請使用 continue 語句。

2、break 不是在 for 或 while 迴圈之外定義的。要退出函式,請使用 return。

擴充套件資料

break 和continue區別:

break和continue都是用來控制迴圈結構的,主要是停止迴圈。

break:

有時候我們想在某種條件出現的時候終止迴圈而不是等到迴圈條件為false才終止。

這時我們可以使用break來完成。break用於完全結束一個迴圈,跳出迴圈體執行迴圈後面的語句。

var str = "hello";

for (var item of str)

console.log(item);  // h e

}continue:continue和break有點類似,區別在於continue只是終止本次迴圈,接著還執行後面的迴圈,break則完全終止迴圈。可以理解為continue是跳過當次迴圈中剩下的語句,執行下一次迴圈。

var str = "hello";

for (var item of str)

console.log(item);  // h e o}

8樓:橙子好酸

是可以的; 在 for 迴圈或 while 迴圈結構中,有時並不需要執行到最後一次迴圈使用者就已經得到了所需要的結果,那麼後面的迴圈就變得多餘了,消耗了運算時間,並佔用了記憶體。 break 指令可進行對for 迴圈或 while 迴圈結構的終止,通過使用 break 指令,可以不必等迴圈的預定結束時刻,而是根據迴圈內部設定的終止項來判斷。若終止項滿足,則可以使用 break 中立退出迴圈。

若終止項未滿足,則照常執行至迴圈的預定結束時刻。

a(1)=1;

a(2)=1;

n=1000;

for i=3:n

a(i)=a(i-1)+a(i-2);

if a(i)>9999

[ i,a(i)]

break

endend

ans =

21 10946

9樓:隨墨楓飛

在matlab中,break 命令可以使包含 break 的最內層的 for 或 while 語句強制終止,立即跳出該結構,執行end 後面的命令;

break 命令一般也和 if 結構結合使用。

matlab中SIZE()的用法

灩麗 1 首先我們定義一個三維矩陣a,包含行數 列數和維度。使用命令a rand 2,3,3 建立一個2行3列3個維度的隨機矩陣。2 接著定義一個隨機矩陣b,包含行數和列數。使用命令b rand 4,5 建立一個4行5列的隨機矩陣b。3 size 函式可以獲取矩陣的大小,此處使用命令size a 獲...

matlab中stairs的用法

若存 matlab函式stairs簡介 函式簡介 在matlab中stairs函式用於繪製階梯狀圖,在影象處理中的直方圖均衡化技術中有很大的意義。在matlab的命令視窗中輸入doc stairs或者help stairs即可獲得該函式的幫助資訊。呼叫格式 stairs y stairs x,y s...

matlab中random函式的用法

飛鷹 y randn n 返回一個n n的隨機項的矩陣。如果n不是個數量,將返回錯誤資訊。y randn m,n 或 y randn m n 返回一個m n的隨機項矩陣。y randn m,n,p,或 y randn m n p.產生隨機陣列 感覺就是三維陣列,請看如下例子 南霸天 random格式...