2013-09-05 33 views
1

我使用MATLAB進行圖像處理和我碰到一個代碼附帶的指令:困難Matlab12b功能imshow()

imshow(pixel_labels,[]); 

在執行時給它一個二進制圖像。

我有檢查Mathworks.com的功能的指南,最相似的使用模式是

imshow(I,[low,high]); 

,但他們不說這個案子的事情,其中​​數組是空的([]

我試圖將其刪除:

imshow(pixel_labels); 

,但我看到的是一個白板。我想知道第一個用例(imshow(pixel_labels,[]))中發生了什麼,我希望從那裏我會理解爲什麼我會在最後一個用例中獲得白板。

回答

2

如果鍵入在MATLAB help imshow,第一段讀取:

IMSHOW(I,[LOW HIGH])顯示灰度圖像I,指定 顯示 範圍我在[LOW HIGH] 。值LOW(以及任何小於LOW的值) 顯示爲黑色,值HIGH(以及任何大於HIGH的值)顯示爲 白色。兩者之間的值顯示爲中間灰度級數 ,使用默認的灰度級數。如果對 [LOW HIGH]使用空矩陣([]),則IMSHOW使用[min(I(:))max(I(:))];即 中的最小值I顯示爲黑色,最大值顯示爲白色。

因此[]只是[min(pixel_labels(:)) max(pixel_labels(:))]的簡寫。