10-26-2011 03:42 AM
raw形式の画像データをbit数を変えずに数値化(配列)にできるのでしょうか?
できればサンプルも御願いします.
10-28-2011 02:11 AM
シュウ 様
平素より弊社製品をご使用いただき誠に有難うございます。
日本ナショナルインスツルメンツ技術部の星と申します。
こちらLabVIEWをご使用の前提でお話しますが、
Vision Development Moduleをお持ちの場合はIMAQ ReadFile.viで開き、
IMAQ ImageToArray.viを使用して配列に変換できるはずです。
IMAQ ReadFileを呼び出す際はヘルプにも記載されておりますが、
Image入力データの画像サイズを読み取る画像ファイルのサイズと合わせる必要がございます。
こちらはIMAQ SetImageSizeで設定できます。
また、File Options入力でRead Raw Fileに設定し、
その他の読み取る画像に関する設定も行う必要がございますので、
お使いの画像のRAW形式についての知識が要求されます。
Visionを使用しない場合でもやはりRAW形式の画像はカメラの種類にもよって形式が異なりますので、
一概に読み取り方法は定義できないのですが、
基本的にはバイナリかASCIIで保存されていて画像の高さ、幅情報などのヘッダ情報を除けば画像データにアクセスできるはずです。
LabVIEWではバイナリファイルから読み取る関数でバイナリファイルを読み取れまして、
テキストファイルから読み取るやスプレッドシートファイルから読み取るでASCIIを読み取ることができます。
読み取ったファイルのデータを配列に変換する為には文字列をバイト配列に変換関数や、
スプレッドシート文字列を配列に変換関数などの工夫が必要です。
これらの関数は関数パレットの右上の検索機能で確認できまして、
関数を選択した上でCtrl+Hを押して詳細ヘルプを開くことによって関数の概容が確認できます。
更に詳細ヘルプからオンラインヘルプをクリックすることによってより詳しい情報とサンプルも確認できます。
下記リンクが参考になるかと思いますのでよろしければご参照ください。
リンク先では英語になりますことご了承ください。
Cannot Open u16 RAW (binary) Image in Vision
http://forums.ni.com/t5/Machine-Vision/Cannot-Open-u16-RAW-binary-Image-in-Vision/m-p/1531648?requir...
read the raw image file
http://forums.ni.com/t5/LabVIEW/read-the-raw-image-file/td-p/505871?requireLogin=False
宜しくお願いします。
日本ナショナルインスツルメンツ株式会社
星 大輝