2014-09-01 79 views
0

爲什麼這兩個圖像具有相同的熵?爲什麼這些圖像具有相同的熵?

這些圖像在MATLAB創建如下:

N = 50; 
Z1 = randi([0 1],N); 
Z2 = zeros(N); 
Z2(1:2:N,1:2:N) = 1; 
Z2(2:2:N,2:2:N) = 1; 
subplot(1,2,1) 
imshow(Z1,'InitialMagnification',800) 
subplot(1,2,2) 
imshow(Z2,'InitialMagnification',800); 

和他們的 「熵」 被計算爲:

entropy(Z1) 
entropy(Z2) 

這導致等於1.0000。

這是說,在幫助中,熵等於-sum(p。* log2(p)),其中p是從imshist返回的計數器。 我發現很難相信這張照片具有相同的「隨機性」,因爲我們看到其中一張是高度有序的,而另一張完全是隨機的。所以呢?

+0

我從來沒有使用過這些命令,但'p'是一個從'imhist'派生的數量,聽起來好像熵是由顏色決定的。在這種情況下,像素的位置並不重要。如果您不確定我的意思,請查看'imhist'的結果。 – fuesika 2014-09-01 16:01:57

回答

0

這是因爲entropy函數計算零階(經驗)熵。這意味着以獨立方式查看像素,而無需將其與周圍像素進行比較。

因此結構你在第二圖像中看到(像素的顏色取決於上的周圍像素)沒有考慮。相反,計算僅考慮黑白像素的比例(由imhist返回);這兩個圖像中的比例大致相同。

您也可以這樣看:當您計算(零階)熵時,空間結構會丟失,正如計算圖像直方圖時像素之間的空間關係丟失一樣。

作爲一個附註,結果熵實際上略高於Z1中的1,因爲當比例恰好爲1/2時零級熵最大化。與format long嘗試,你會看到類似這樣的:

>> format long 
>> entropy(Z1) 
ans = 
    0.999663421925701 
>> entropy(Z2) 
ans = 
    1 

這也可以稱爲一級熵。由於零階馬爾可夫鏈產生統計上獨立的值,所以將它稱爲「零階」從馬爾可夫鏈的角度來看是有意義的。另一方面,從「」的統計分佈的角度來看,名稱「一階」是有意義的。隨機過程的一階分佈定義了給定時刻/位置的可能值的概率,而不考慮與其他時刻/位置處的值的統計關係。

+0

謝謝!是的,這些圖片只是爲了解釋我的想法。我一直在分析時間序列,熵被認爲是一種複雜性度量。它被計算爲信號中的「重複某些長度爲N + 1的模式」的「重複某些長度爲N的模式」的-log的比率。這似乎甚至沒有接近(即使它被稱爲熵),事實上,熵應該幫助我們區分高度(或更高)信息內容中的隨機內容;那麼,是否有辦法考慮空間模式的重複? – 2014-09-01 16:42:14

+0

我只知道1D過程(時間序列)的一般定義,這是您提到的一個定義。 2D的擴展看起來在概念上很簡單,但可能很難實現。我不知道任何在1D情況下計算甚至「真」熵的內置Matlab函數 – 2014-09-01 18:42:46

相關問題