こんにちは、matlab のモンタージュ コマンドを使用して画像を表示しています。しかし、私は問題に直面しています。私が使用するコマンドを以下に示します。
dirOutput = dir('C:\Users\DELL\Desktop\book chapter\Journal chan vese\robust
contour initialization\book for document\4 phase\*.jpg');
fileNames = {dirOutput.name}'
montage(fileNames, 'Size', [1 6]);
export_fig combined1.jpg -r300
6枚の画像があります(すべてグレースケール)。ただし、コマンド プロンプトはすぐに次のようなエラーをスローします。
//Error using montage>getImagesFromFiles (line 349)
//FILENAMES must contain images that are the same size.
//Error in montage>parse_inputs (line 225)
// [I,cmap] = getImagesFromFiles(varargin{1});
//Error in montage (line 112)
//[I,cmap,mSize,indices,displayRange] = parse_inputs(varargin{:});
//Error in montage_pics (line 3)
//montage(fileNames, 'Size', [1 6]);
ここに私の画像のいくつかをアップロードしています:
はっきりとわかるように、すべての画像はグレースケールです。次に、画像サイズを読み取ると、次のようになります。
1.128X128 2.128X128*3 3.128X128*3 4.128X128 5.128X128*3 6.128X128*3. そのため、一部の画像は実際のカラー画像として扱われます。
私の質問は、そのような画像にモンタージュ コマンドを使用する方法です。もう 1 つの問題は、モンタージュ コマンドが常に同様のサイズの画像を必要とすることです。だから私はこの抜け穴を避けたかったのです。
もちろん、ソフトウェア ツールを使用して画像を必要な形式に変換することもできますが、それは悪い方法です。以下のコードを元のコードに追加すると、この問題が解決すると思います
%Read Each Image
I=imread('image');
I=imresize(I,[128 128]);
I=I(:,:,1);
%Apply montage command
ただし、このコードを元のコードに統合できませんでした。この問題を解決するのを手伝ってください。あなたの貴重な提案と助けを前もって感謝します。