2010-10-27 79 views

回答

12

組合圖像可以很容易地使用concatenation來完成:

image3 = [image1 image2]; %# Concatenate horizontally 

然後你就可以使用任何功能IMAGEIMAGESC,或IMSHOW可視化image3

image(image3); %# Display the image in a figure window 


注意:

你沒有提及你正在處理的圖像類型,只是它們是像素數據的二維矩陣。這意味着它們可以是binary images(具有0或1的像素值),grayscale images(具有表示從黑到白的範圍的像素值)或indexed color images(具有表示指數到色圖中的像素值)。

對於二進制和灰度圖像,上述解決方案應該可以正常工作。但是,如果每張圖像都有自己獨特的colormap,索引的彩色圖像可能會更加複雜。如果圖像從一個文件中使用函數IMREAD加載,你可以得到的彩色地圖,像這樣:現在

[image1,map1] = imread('image1.png'); %# Image and colormap for image file 1 
[image2,map2] = imread('image2.png'); %# Image and colormap for image file 2 

,如果map1map2包含的顏色不同的安排,兩個圖像不能這麼容易結合。一個解決辦法是首先將圖像轉換爲使用功能IND2RGB 3維truecolor images,然後使用功能CAT結合他們:

image1 = ind2rgb(image1,map1); %# Convert image 1 to RGB 
image2 = ind2rgb(image2,map2); %# Convert image 2 to RGB 
image3 = cat(2,image1,image2); %# Concatenate the images along dimension 2 

並且如上所述,現在你可以查看image3

+0

CAT參數尺寸不一致............「爲什麼我在連接時出現此錯誤」 – chee 2010-11-27 15:42:20

+0

@chee:這意味着您的圖像沒有相同的行數或您可能會嘗試將二維圖像與三維圖像連接起來。 – gnovice 2010-11-27 18:03:29

+0

bt wt如果我想以任何方式加入它們? – chee 2010-11-30 16:45:11

1

如果您只是想並排查看這兩幅圖像,則可以使用subplot在同一幅圖中顯示多幅圖像(或圖形)。

相關問題