MATLAB 影象直方圖

Ammar Ali 2022年5月11日
MATLAB 影象直方圖

本教程將討論使用 Matlab 中的 imhist() 函式計算影象的直方圖。

使用 MATLAB 中的 imhist() 函式計算影象的直方圖

影象直方圖顯示了數字影象中畫素顏色分佈的圖形表示。影象包含包含顏色值的畫素。在直方圖中,我們顯示影象中存在的顏色值,以檢查影象中顏色的分佈。

例如,我們可以檢查影象中哪種顏色豐富,哪種顏色很少出現。我們還可以使用影象直方圖一目瞭然地發現噪聲、剪裁值和背景。

我們可以使用 Matlab 的內建函式 imhist() 來計算影象的直方圖。首先,我們必須使用 imread() 函式讀取影象,然後將其傳遞給 imhist() 函式。imhist() 函式將返回直方圖計數和箱的位置,它還將繪製直方圖。

例如,讓我們使用 imhist() 函式來計算和繪製影象的直方圖。請參閱下面的程式碼。

I = imread('cat.jpg');
subplot(1,2,1)
imshow(I)
subplot(1,2,2)
imhist(I)

輸出:

影象直方圖

直方圖顯示影象中大量存在黑色。我們還可以指定 bin 的數量作為用於計算直方圖的第二個引數。bin 的數量應該是一個正整數。

輸入影象是任意維度的數值陣列。如果影象是 single 或 double 類,畫素值應該在 0 到 1 的範圍內。如果值不在範圍內,我們可以使用 rescale() 函式將值重新縮放到所需的範圍.

在索引影象的情況下,我們還可以在 imhist() 函式中傳遞一個顏色圖,用於計算影象的直方圖。

Author: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

相關文章 - MATLAB Image