画像関連ソフトウェアを選択する際に考慮すべき10項目
概要
ナショナルインスツルメンツは、10年近くにわたってマシンビジョンおよび画像処理製品を提供してきました。NI の画像処理ソフトウェアは、Vision 開発モジュールとVision Builder AIの2つのパッケージでご用意しています。Vision 開発モジュールは、ナショナルインスツルメンツの LabVIEW、LabWindows/CVIやC/C++、MicrosoftのVisual Basic とともに使用して、高機能な画像処理検査、アライメント、識別、および計測アプリケーションをプログラミングするための画像処理関数を多数収録しています。Vision Builder AI は、プログラミングすることなくマシンビジョンアプリケーションを構成、ベンチマーク、単体でもそのまま使用できるインタラクティブなソフトウェア環境です。いずれのソフトウェアパッケージもすべての NI Vision フレームグラバおよび NI Compact Vision System に対応しています。下記の各トピックでは、画像処理ソフトウェアを選ぶ際に考慮すべき項目を説明しています。
カメラの選択
アプリケーションに必要なカメラの仕様と画像処理システムとの互換性が重要で、アナログカメラでもVGA 以上の分解能や、30フレーム/秒より速いフレームレート、標準のアナログカメラより全体的に高い画質が求められるものも少なくありません。

ナショナルインスツルメンツのハードウェアおよびソフトウェアは、低コストの標準アナログカメラから高速ラインスキャンカメラまで、広範なカメラに対応しています。弊社Webサイトにある工業用カメラアドバイザ(英語)を使用して、お客様のアプリケーションに適したカメラや画像入力用のハードウェアをお選びいただけます。
ハードウェアの拡張性
画像アプリケーションにおいてカメラ選定は、とても大切なステップですが、カメラなど画像の入力部分の拡張性も非常に重要なポイントです。カメラの技術は急速な進化を続け、画質や機能の向上が目覚しく、システムの高性能化としてカメラのアップグレードや交換といった拡張性が重要になってきました。ナショナルインスツルメンツのNI-IMAQドライバソフトウェアは、すべてのNIフレームグラバをサポートし、1つの使いやすいインタフェースで数千にも及ぶカメラと通信することができます。アナログカメラからCamera Linkカメラにアップグレードしても、ソフトウェアには変更ありません。それはIEEE 1394カメラ対応NI-IMAQソフトウェアについても同じです。このソフトウェアも、フレームグラバなしで100を超えるIEEE 1394(FireWire)カメラと通信し、画像を集録することができます。
ナショナルインスツルメンツのドライバソフトウェアは多数のカメラに対応しているだけでなく、PCI、PXI/CompactPCIからNI Compact Vision Systemまで、すべてのNIハードウェアプラットフォーム上で動作します。そのため、研究室で安価なIEEE 1394(FireWire)カメラを接続したPCを使用しアプリケーションのプロトタイプを作成します。検証後、画像入力部または画像処理部のコードを一切変更せずに、そのまま製造部門等で工業用の堅牢なCompact Vision Systemに実装することもできます。
使いやすいソフトウェア
画像を取り込み後、次はそれを処理します。現在利用可能なアルゴリズムの種類を考えると、プログラミング言語で試行錯誤を繰り返して正しいツールを見つけるのは、大変時間と労力のかかる作業で効率的ではありません。そのため、アルゴリズムを最大限に活用するような画像処理ソフトウェアツールが必要となります。
多くのアプリケーションでは、完全なマシンビジョンシステムを構築するのにプログラミングが必要ですが、Vision Builder AI のようなプログラミング不要なソフトウェアでも、インタラクティブな操作環境でマシンビジョンアプリケーションを構成、ベンチマーク、そのまま使用することができます。C、Visual Basic、LabVIEW等でのプログラミングほど柔軟ではありませんが、Vision Builder AIには、パターンマッチング、OCR、DataMatrixリーダ、カラーマッチングなど、50ほどの一般的なマシンビジョンツールが含まれています。また、NI製品がサポートするすべてのカメラから画像を集録でき、イーサネット、シリアル、デジタル出力など一般的な工業用プロトコルを使用することで検査結果を他のデバイスに転送することもできます。
画像処理アプリケーションのプログラミングはVision Builder AIでの構成に比べ複雑ですが、ナショナルインスツルメンツのVision Assistantを使えば、LabVIEW、C、Visual Basicでのアプリケーション開発が簡単になります。Vision AssistantはVision開発モジュールに付属されているツールで、さまざまな画像処理関数を対話形式でアルゴリズムの検証や、アプリケーションに最適な関数を見つけたり、各関数が処理にかかる時間を確認したりすることができます。
アプリケーションの問題点の解決方法が決まったら、ボタンをクリックするだけで、そのまま実行可能なLabVIEW、LabWindows/CVI、C/C++、Visual Basicのコードが生成されます。コードを書く必要もなく即座に、画像処理アプリケーションの大半が完成してしまいます。Vision Assistantで生成されたコードは、単独で実行することも、より大きな工業用制御、データ集録、モーションコントロールシステムに組み込むこともできます。
画像処理の初心者でもエキスパートのインテグレータでも、Vision Assistantを使えば効率的で信頼性の高いアプリケーションを短時間で作成することができます。
参考資料:
Vision Assistantチュートリアル
アルゴリズムの幅と精度
画像処理ソフトウェアを選択する上で最も重要なのが、オブジェクトの特徴をサブピクセルレベルの高精度で正確に計測できるかという点です。コンピュータの処理能力が高くカメラの画素数が大きくても、ソフトウェアの精度に問題がある場合は、それらの性能を生かすことが出来ません。処理の速いコードをより高精度なコードに変更することは、高精度なコードをより速く実行することよりも難しくなります。
NIのVision開発モジュールおよびVision Builder AIには、高精度で信頼性の高い画像処理関数が多数含まれています。以下のセクションで、最も一般的な5つのマシンビジョンアプリケーション分野と、それらによく使用されるアルゴリズムを紹介します。
イメージの強調 – フィルタツールを使用して、エッジの強調や、ノイズの除去、周波数情報の抽出などを行うことができます。キャリブレーションツールは、レンズの歪みやカメラの配置による非線形および視点誤差を補正、画像キャリブレーションツールにより、計測値であるピクセル単位を、ミクロン、ミリメータなど実環境単位に変換する際に使用します。
有無の確認 – 最もシンプルな画像処理検査です。オブジェクトにおける特徴の有無を確認するには、カラーマッチング、パターンマッチング、またはヒストグラムツールを使用します。結果は、常にはい/いいえ、または合否で返されます。
特徴の検出 – 特徴の検出をすることで、オブジェクトのアライメントや正確な位置の特定ができ、その後の検査の基準となります。エッジ検出、グレースケールパターンマッチング、形状マッチング、幾何学マッチング、カラーパターンマッチングは、すべて特徴を検出するためのツールです。オブジェクトの位置(X、Y)と回転角度が、10分の1ピクセルの単位で返されます。幾何学マッチングは、重なり合ったオブジェクトやスケールされたオブジェクトでも検出可能です。
寸法測定 – 画像処理システムの最も一般的な利用目的は、寸法測定です。通常距離や直径、カウント数、角度、面積などを測定するには、エッジ検出、粒子解析、幾何学関数ツールなどを使用します。顕微鏡画像で細胞の総数を数えるにしても、ブレーキキャリパの2つのエッジ間の角度を求めるにしても、上記のツールは常に数値を返します。
対象物の識別 – この機能は、対象物の整合性、トラッキング、検証などで重要となります。一般的な識別方法としては、バーコードやDataMatrix、PDF 417などのデータコードの読み取りがあります。新機能としては、学習機能付きOCRやオブジェクトの分類などがあります。対象物の識別を行った場合、多くはテキストや文字列が結果として返されます。
すべてのNI Vision開発モジュールおよびVision Builder AIは、サブピクセルレベルの精度を有し、位置、距離、計測値などを10分の1ピクセルや10分の1度の精度で補間することができます。
NI画像処理アルゴリズムの機能や動作の仕組み、最適な使用方法等については、NI Vision Concepts Manual(英語)をご覧ください。
アルゴリズムの性能
画像処理システムを選択する上で精度と操作性がしばしば重視されますが、次に考慮されるものとして処理速度が挙げられます。数多くのアルゴリズムを選択し、それらを使用してアプリケーションをすばやく構築することができても、検査ツールの実行速度が遅ければ、多くの作業が無駄になってしまいます。
NIの画像処理ソフトウェアは、それぞれのソースを可能な限り最適化することにより、世界でも有数の処理速度を実現します。実際に、大手画像処理ソフトウェアメーカーと比較しても、下記の表に示すように多くのカテゴリで一貫して高い速度を誇っています。
| NI 画像処理ソフトウェア速度 (ms) |
大手メーカーの 画像処理ソフトウェア速度 (ms) |
速度比較 | |
| ヒストグラム | 0.91 | 2.03 | 2.2倍 |
| 幾何学変換 | 3.1 | 10.3 | 3.3倍 |
| モフォロジー | 1.8 | 5.9 | 3.3倍 |
| OCR | 3.3 | 5.9 | 1.8倍 |
| 幾何学マッチング | 93.0 | 149.8 | 1.6倍 |
| オブジェクトの分類 | 7.5 | – | – |
NI画像処理のベンチマークを行うには、Vision開発モジュール または Vision Builder AI の評価版をご請求いただき、付属の画像を使用してアプリケーションを実行してください。
他のデバイスとの統合
画像処理アプリケーションは、多くの場合制御システムの一部として組み込まれます。工業オートメーションでは、画像処理アプリケーションが他のデバイスに対する制御や通信などを行う場合があります。その中には、アクチュエータの制御による製品の仕分け、ロボット制御や、PLC、PAC(プログラマブルオートメーションコントローラ)などへの検査結果の転送、画像やデータのネットワークサーバへの保存、検査パラメータや結果のローカル/リモートユーザインタフェース間の通信などがあります。
また、科学分野における画像処理アプリケーションでは、画像処理とモーションステージや、データ集録、顕微鏡、特殊光学機器、高度なトリガなどを統合する必要がある場合があります。
当社では画像処理製品の他に工業用制御、データ集録、モーションコントロール製品を各種取り揃えており、これらのデバ経由で顕微鏡に接続したりすることも可能です。
画像処理とデータ集録やモーションコントローラとの統合に関する詳細は、「Integrating Measurements with Vision and Motion」ホワイトペーパー(英語)をご覧ください。
その他の一般的な工業用デバイスとの通信については、当社Webサイトの工業用ネットワークページを参照してください。
価格
画像処理ソフトウェアパッケージには、多くのバリエーションがあり、その多くはOEM向けで、開発ライブラリに含まれる各アルゴリズムを個別に販売しています。個々のアルゴリズムは低価格のように見えますが、画像処理開発パッケージ全体になるとかなりのコストになります。さらに各コンポーネントに発生するライセンス料やアプリケーションの運用コストなども加算されるため、コストが高くなると同時に複雑になります。
NI Vision開発モジュールには、画像処理アプリケーションのあらゆる難題を解決するアルゴリズムがすべて含まれているため、複数のソフトウェアバンドルを調べて購入して使用するといった作業が要りません。また、アプリケーションの運用も低コストで提供しており、1つの画像処理デプロイメントライセンスで、アルゴリズムの使用数に制限なく、実行ファイルを作成・配布することができます。さらに、NI Compact Vision Systemには、アプリケーションを実装するのに必要なライセンスがすべて含まれているためCompact Vision Systemの数に限らず、Vision開発モジュールまたはVision Builder AIを1つ購入するのみです。
パートナーおよびインテグレータ
ナショナルインスツルメンツでは、画像処理およびマシンビジョンのハードウェア・ソフトウェアを製造、販売しています。当社では提供していない照明、カメラ、光学機器に関しては、そのような製品を専門に提供する企業と提携しています。これらの機器の提供企業については、NI vision product partner ページをご覧ください。
この10年間で、当社の画像処理製品は、自動車部品検査からガン研究まで、数千におよぶ多種多様で複雑なアプリケーションのソリューションを提供してきました。NIの画像処理ツールはエンドユーザ向けに設計されていますが、もし大規模なアプリケーション構築の際にエキスパートの支援が必要な場合には、当社の600を超えるアライアンスパートナーによってコンポーネントの選択から完全なターンキーソリューションの構築まで、お客様のアプリケーション開発を支援しています。NI vision system integration(英語) ページで、お近くの画像処理コンサルタント/インテグレータを検索することができます。
技術サポート
ナショナルインスツルメンツでは画像処理ソフトウェアをお客様に直接販売しているだけではなく、製品サポートも行っております。技術者のサポートが必要な場合は、電話またはEメールで当社にご連絡ください。専門技術を持つアプリケーションエンジニアが対応いたします。
また、NI技術サポートWebサイト またはディスカッションフォーラム ユーザコミュニティは、24時間いつでもご利用いただけます。現在抱えている疑問や問題の解決方法が、以前のユーザにより提示されている場合もあります。
企業の将来性と安定性
マシンビジョンソフトウェアを購入する際は、現時点ではもちろんのこと、将来も引き続き使用できるソフトウェアを選択することが大切な要素になります。マシンビジョンソフトウェアを専門とした小規模プロバイダは数多く存在しますが、将来システムのアップグレードを行う際に、ソフトウェアのサポートや製品のアップグレードが行われているか否かは、ソフトウェアを選択する上で重要になります。
ナショナルインスツルメンツ は、30年近くにわたって成長を続けてきました。研究開発に多くの資金を投入し、画像処理ソフトウェア/ハードウェアのパイオニアとしての地位を確立し、今後も引き続きマシンビジョンおよび画像処理製品の拡張、強化を続けてまいります。
法律関連事項
本チュートリアル(以下「チュートリアル」という)は、National Instruments(以下「NI」という)によって作成されたものです。本チュートリアルは、NIにてサポートされていますが、本チュートリアルの内容に関するテストや検査が完全に行われていない可能性があり、チュートリアルの品質について、もしくは、関連製品およびドライバの各改訂版に対するサポート継続については、何らの保証も適用されません。本チュートリアルは、いかなる保証もなく「作成された状態のまま」で提供されており、ni.com/jpの使用条件に特別に規定されている特定の制約事項に従うものとします。 (http://ni.com/legal/termsofuse/japan/ja/)

