Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

C コード生成

ツールボックス関数、オブジェクト、およびブロックのための C/C++ コードおよび MEX 関数の生成

Computer Vision Toolbox™ のいくつかの関数では C/C++ コードを生成することができます。一般に、Computer Vision Toolbox ブロックから生成するコードは、ポータブル ANSI® C コードです。コードを生成したら、別のマシンに配布できます。

コード生成をサポートする関数の一覧、使用上の注意事項、制限については、以下を参照してください。

Computer Vision Toolbox の一部の関数では、コード生成に共有ライブラリの作成も含まれます。

コンピューター ビジョンの関数でコード生成を使用するには、次の手順に従います。

  1. Computer Vision Toolbox の関数を使用して、Computer Vision Toolbox の関数またはアプリケーションを通常どおりに作成します。

  2. コンパイラ命令 %#codegen を MATLAB® コードに追加します。

  3. MATLAB Coder™ アプリを開き、プロジェクトを作成して、作成したファイルをプロジェクトに追加します。MATLAB Coder では、作成したコードでコード生成の準備が整っているかどうかをチェックできます。たとえば、コード生成に対応していない関数がコードに含まれている場合があります。コード生成に必要な変更を行います。

  4. [コード生成] ダイアログ ボックスの [生成] をクリックして、コードを生成します。MEX ファイル、C/C++ 共有ライブラリ、C/C++ ダイナミック ライブラリ、C/C++ 実行可能ファイルのいずれかをビルドするよう選択できます。

    MATLAB Coder で特定された準備状態の問題がすべて解決済みであっても、ビルドに問題が発生する場合があります。準備状態のチェックでは、関数の依存関係のみを確認します。コードを生成しようとしたときに、コード生成でサポートされていないコーディング パターンが MATLAB Coder によって検出される場合があります。エラー レポートを確認して、正常にビルドできるように MATLAB コードを変更します。

コード生成の詳細は、MATLAB Coder ドキュメンテーションおよび特徴のマッチングとレジストレーションを使ったコード生成の紹介の例を参照してください。

メモ

Computer Vision Toolbox の機能を含む MATLAB コードからコードを生成するには、MATLAB Coder ソフトウェアが必要です。

ブロック

ToOpenCVConverts Simulink data types to OpenCV data types
FromOpenCVConverts OpenCV data types to Simulink data types

トピック

Computer Vision Toolbox OpenCV Interface for Simulink のインストールと使用

Simulink® へ OpenCV コードをインポートします。

OpenCV Importer を使用した RGB イメージのグレースケール イメージへの変換

OpenCV Importer アプリを使用した RGB からグレースケールへの変換。

Simulink における OpenCV コードを使用したさまざまな形状の描画

OpenCV Importer を使用して、さまざまな形状を描画します。

Simulink における OpenCV コードを使用した笑顔検出

OpenCV Importer を使用した笑顔検出。

特徴のマッチングとレジストレーションを使ったコード生成の紹介

この例では、MATLAB® Coder™ を使用して MATLAB ファイル用の C コードを生成する方法を説明します。

ステレオ ビデオからの深度推定のためのコード生成

この例では、MATLAB® Coder™ を使用して MATLAB 関数の C コードを生成する方法を説明します。

packNGo を使用した顔追跡のコード生成

この例では、関数 packNGo を用いてKLT アルゴリズムを使用した顔の検出と追跡の例からコードを生成する方法を説明します。

YOLO v2 を使用したオブジェクト検出のコードの生成

YOLO v2 を使用してオブジェクト検出用の CUDA® コードを生成します。

動画処理システムのマルチコア シミュレーション

この例では、Simulink® のデータフロー実行領域を使用して、動画処理システムを複数のコア上で実行する方法を説明します。