我是MATLAB的新手。我有6個直方圖,它們是通過將圖像細分爲多個補丁而創建的。我如何合併這些補丁來製作一個直方圖(即連接6個直方圖)?在MATLAB中連接直方圖
我曾嘗試這樣的代碼:
subplot(3,4,1)
imhist(Patch1)
subplot(3,4,2)
imhist(Patch2)
subplot(3,4,3)
imhist(Patch3)
subplot(3,4,4)
imhist(Patch4)
我是MATLAB的新手。我有6個直方圖,它們是通過將圖像細分爲多個補丁而創建的。我如何合併這些補丁來製作一個直方圖(即連接6個直方圖)?在MATLAB中連接直方圖
我曾嘗試這樣的代碼:
subplot(3,4,1)
imhist(Patch1)
subplot(3,4,2)
imhist(Patch2)
subplot(3,4,3)
imhist(Patch3)
subplot(3,4,4)
imhist(Patch4)
您可以連接所有的補丁到單一載體中,然後調用imhist
這個矢量。你提到你有六個直方圖當你的代碼只顯示四。因此,我會假設其他直方圖來自Patch5
和Patch6
。知道這一點,代碼將簡單地爲:
patch = [Patch1(:); Patch2(:); Patch3(:); Patch4(:); Patch5(:); Patch6(:)];
imhist(patch);
直方圖與您正在查看的圖像的維度不可知。它只會計算您在使用的數據強度級別上遇到的像素數量。因此,我們可以簡單地將每個補丁的所有這些像素放入一個單獨的矢量中,然後對該矢量進行直方圖分析。這將很好地工作,因爲這將忽略每個補丁的尺寸,所以我們不必構建新圖像並對新構建的圖像進行直方圖。
@ user3777182 - 不客氣。如果我以任何方式幫助你,請考慮接受我的答案。點擊左側上方和下方箭頭下方的複選標記圖標。 – rayryeng
你想連接圖像或連接直方圖嗎? –
@VictorMay - OP希望計算一個直方圖,表示所有拼貼的亮度等級。 「連接」在OP的部分是一個誤用。我會說這是**將所有補丁中的所有信息合併在一起。 – rayryeng
那麼爲什麼將圖像細分爲補丁呢? –