3次元以上の配列のmatlab coderでの取り扱い

1 Ansicht (letzte 30 Tage)
Ma
Ma am 13 Feb. 2017
Kommentiert: Ma am 14 Feb. 2017
matlab coderで関数mファイルをmexファイルに変換する際に関しての質問です。 アプリとしてmatlab coderを利用し、ダイアログに従ってmexファイルを作成する際に、matlab coderではなく自分で引数のデータ型を選ぶことが出来ると思います。その際に、可能であれば3次元以上の配列(例えばL×M×Nの配列)を利用したいのですが、どうもで2次元の配列(つまり行列)までしか対応していないように思われます。
実際、3次元以上の配列にはmatlab coderもしくはmexは対応していないのでしょうか?どうぞ宜しくお願い致します。

Akzeptierte Antwort

Kei Otsuka
Kei Otsuka am 13 Feb. 2017
Bearbeitet: Kei Otsuka am 13 Feb. 2017
コード生成の際にMATLAB Coder Appをお使いということですと、 入力の型を定義する画面上ではデフォルトで2次元配列の選択肢しかありませんが、 ご自身でx記号を置いていただく事で次元を拡張することができます。
もしくは、コマンドラインでも引数の次元を指定してMEX生成が可能ですので、 参考にしてみてください。 以下はmyEdgeというユーザー定義関数に対して、引数として4次元配列(391x518x3x2)を 与えてMEXを生成した例になります。
cfg = coder.config('mex')
dtype = coder.typeof(uint8(0),[391 518 3 2])
codegen -config cfg myEdge -args dtype
  1 Kommentar
Ma
Ma am 14 Feb. 2017
こんな簡単にできるなんて知りませんでした。感動しました。大変助かります。有り難うございました。

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Testing Frameworks finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by