Kentaこちらの動画を参考にして自分の持っている画像の二値化を行ったら、エラーが出て、「入力がlogical(バイナリ)の場合は2次元でなければなりません。」といったメッセージが出たのですが、どういう意味かわかりません。アプリから「イメージの領域解析」を使ってファイルからイメージの読み込みを行ったのですが、「入力イメージのクラスはlogicalでなければなりません。この「入力はlogical」の意味がよく分かりません。ClipboardI=imread('onion.png');Ig=rgb2gray(I);b=imbinarize(Ig);こんにちは、logicalは、1か0かの値を持っていて、真が偽かなどの判別に使われることもあります。詳しくは、下のURLをご参照ください。読み込めば、うまくアプリを使用できます。自分で前処理をしておき、それをアプリに読み込ませるイメージと思います。はじめのエラーのほうは、あまり状況が想像できずわかりません。下のURLを実際に動かしながら変数の形などを見比べて、ご自身のものと比較すればわかると思います。Clipboard回答ありがとうございます。コマンドのようにしたら、画像を二値化して、アプリにも使えました。それともう一つお聞きしたいのですが、この画像を二値化する工程を複数枚の画像で行いたいのですが、どうしたらいいですか。フォルダにある200枚程の画像を二値化してアプリの分類学習器を使って画像の判別を行いたいと思っています。Clipboardよかったです。処理と検索すれば、下のような記事がありました。参考になれば幸いです。for文でループを作ってしまえば、あとは同様の操作をすればよいです。試してみて動かなかったらご連絡ください。strcat('./',num2str(i),'.jpg');A=imread(Imgfilename);image(A)end回答ありがとうございます。以上のコマンドを使用してみましたが、「関数または変数'Imgn'が認識されません。自分は以下のようにしています。Clipboard「ちなみにImgNが読み込む画像の数です.」と参考にされたWEBに書いています。「関数または変数'Imgn'が認識されません。」とありますし、Imgnを定義していないためエラーが出ているのではないでしょうか。40枚処理したいなら、Imgn=40;と宣言すればよいです。上のコードを拝見する限り、1.jpg...などと命名されているようなので、以下のようにすればよいと思います。下をもとにそちらのデータに合わせたり、保存をしたりする必要があるかもしれませんが、適宜変更いただければと思います。Clipboardi=1:200とやってみたらできました。確かによく考えたら読み込む数も指定しなければいけませんよね。回答して頂き、ありがとうございました。conversation。