MATLAB 2018bインストールmexopencv(VS 2017コンパイル)



Matlab 2018b Install Mexopencv



コンピューターがMATLAB2016bをインストールする前は、VS 2017を特定する方法はありませんが、関係者はこの問題を解決するパッチがあると述べていますが、それでも最新の2018bです。 2018b認識VS2017は問題ありませんが、mexopencv.make()コマンドを使用するとエラーが発生します

Error using mex Unknown MEX argument '-R2017b-largeArrayDims'. Error in mexopencv.make (line 97) if ~opts.dryrun, eval(cmd) end

文字通りの意味は、プログラムがフィールド「-R2017b-largeArrayDims」を認識できないことです。この場合の最初の反応は、make.mの関連するステートメントの2017を直接2018に変更することですが、それは無効であるか、同じエラーが報告されます。

そこで、プログラムを注意深く読んだ後、別の方法を試しました。 make.mの275〜281行が見つかりました(以下を参照)。このセクションでは、MATLABのバージョン情報を判断し、「-R2017b」を「-largeArrayDims」に追加します。 、この段落をコメントアウトすると、フィールドは「-largeArrayDims」のままになります。これは2018bが認識しているフィールドであり、make.mを再実行すると、プログラムがスムーズに実行されます。

% real/imaginary storage format for complex arrays % if ~mexopencv.isOctave() && ~verLessThan('matlab', '9.4') % % keep using the 'separate complex storage', as opposed to the % % 'interleaved complex storage' introduced in R2017a % % (see MX_HAS_INTERLEAVED_COMPLEX) % mex_flags = ['-R2017b' mex_flags] % end

mexopencvをインストールするときは、OpenCV、MATLAB、およびコンパイラのバージョンを一致させる必要があります。間違っていると、エラーが発生します。初心者として、ここであなたの壁を共有し、役立つことを願っています。