OpenCV 4.13.0
Open Source Computer Vision
読み込み中...
検索中...
見つかりません
🤖 AIによる機械翻訳(非公式) — これは OpenCV 4.13.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。
cv::FileStorage クラス

ファイルへの/からのデータの書き込みまたは読み込みに必要なすべての情報をカプセル化したXML/YAML/JSONファイルストレージクラス。 さらに...

#include <opencv2/core/persistence.hpp>

Collaboration diagram for cv::FileStorage:

公開型

enum  Mode {
  READ = 0 ,
  WRITE = 1 ,
  APPEND = 2 ,
  MEMORY = 4 ,
  FORMAT_MASK = (7<<3) ,
  FORMAT_AUTO = 0 ,
  FORMAT_XML = (1<<3) ,
  FORMAT_YAML = (2<<3) ,
  FORMAT_JSON = (3<<3) ,
  BASE64 = 64 ,
  WRITE_BASE64 = BASE64 | WRITE
}
 ファイルストレージのモード さらに...
 
enum  State {
  UNDEFINED = 0 ,
  VALUE_EXPECTED = 1 ,
  NAME_EXPECTED = 2 ,
  INSIDE_MAP = 4
}
 

公開メンバ関数

 FileStorage ()
 コンストラクタ。
 
 FileStorage (const String &filename, int flags, const String &encoding=String())
 
virtual ~FileStorage ()
 デストラクタ。release() を呼び出す
 
void endWriteStruct ()
 ネストした構造の書き込みを終了する (startWriteStruct() と対にすること)
 
FileNode getFirstTopLevelNode () const
 トップレベルのマッピングの最初の要素を返す。
 
int getFormat () const
 現在の形式を返す。
 
virtual bool isOpened () const
 ファイルが開かれているかどうかを確認する。
 
virtual bool open (const String &filename, int flags, const String &encoding=String())
 ファイルを開く。
 
FileNode operator[] (const char *nodename) const
 
FileNode operator[] (const String &nodename) const
 トップレベルのマッピングの指定された要素を返す。
 
virtual void release ()
 ファイルを閉じ、すべてのメモリバッファを解放する。
 
virtual String releaseAndGetString ()
 ファイルを閉じ、すべてのメモリバッファを解放する。
 
FileNode root (int streamidx=0) const
 トップレベルのマッピングを返す。
 
void startWriteStruct (const String &name, int flags, const String &typeName=String())
 ネストした構造 (シーケンスまたはマッピング) の書き込みを開始する。
 
void write (const String &name, const Mat &val)
 これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは受け取る引数のみが異なる。
 
void write (const String &name, const std::vector< String > &val)
 これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは受け取る引数のみが異なる。
 
void write (const String &name, const String &val)
 これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは受け取る引数のみが異なる。
 
void write (const String &name, double val)
 これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは受け取る引数のみが異なる。
 
void write (const String &name, int val)
 バインディングで使用するための簡略化された書き込みAPI。
 
void write (const String &name, int64_t val)
 これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは受け取る引数のみが異なる。
 
void writeComment (const String &comment, bool append=false)
 コメントを書き込む。
 
void writeRaw (const String &fmt, const void *vec, size_t len)
 複数の数値を書き込む。
 

静的公開メンバ関数

static String getDefaultObjectName (const String &filename)
 指定されたファイル名に対して正規化されたオブジェクト名を返す。
 

公開変数類

std::string elname
 
Ptr< Impl > p
 
int state
 

詳細説明

ファイルへの/からのデータの書き込みまたは読み込みに必要なすべての情報をカプセル化したXML/YAML/JSONファイルストレージクラス。

samples/cpp/tutorial_code/core/file_input_output/file_input_output.cpp, samples/cpp/tutorial_code/features2D/Homography/decompose_homography.cpp, samples/cpp/tutorial_code/features2D/Homography/homography_from_camera_displacement.cpp, および samples/cpp/tutorial_code/features2D/Homography/pose_from_homography.cpp

列挙型メンバ詳解

◆ Mode

ファイルストレージのモード

列挙値
READ 

値、ファイルを読み込み用に開く

WRITE 

値、ファイルを書き込み用に開く

APPEND 

値、ファイルを追記用に開く

MEMORY 

フラグ、ソースからデータを読み込む、または内部バッファ(FileStorage::release によって返される)へデータを書き込む

FORMAT_MASK 

フォーマットフラグ用のマスク

FORMAT_AUTO 

フラグ、自動フォーマット

FORMAT_XML 

フラグ、XML形式

FORMAT_YAML 

フラグ、YAML形式

FORMAT_JSON 

フラグ、JSON形式

BASE64 

フラグ、デフォルトでrawdataをBase64で書き込む。(WRITE_BASE64の使用を検討すること)

WRITE_BASE64 

フラグ、WRITEとBASE64の両方を有効にする

◆ State

列挙値
UNDEFINED 

初期状態または未初期化状態。

VALUE_EXPECTED 

現在の位置で値を期待している。

NAME_EXPECTED 

現在の位置でキー/名前を期待している。

INSIDE_MAP 

マップ(キーと値のペアの集合)の内部にいることを示す。

構築子と解体子の詳解

◆ FileStorage() [1/2]

cv::FileStorage::FileStorage ( )
Python:
cv.FileStorage() -> <FileStorage object>
cv.FileStorage(filename, flags[, encoding]) -> <FileStorage object>

コンストラクタ。

フルコンストラクタはファイルを開く。あるいは、デフォルトコンストラクタを使用してから FileStorage::open を呼び出すこともできる。

◆ FileStorage() [2/2]

cv::FileStorage::FileStorage ( const String & filename,
int flags,
const String & encoding = String() )
Python:
cv.FileStorage() -> <FileStorage object>
cv.FileStorage(filename, flags[, encoding]) -> <FileStorage object>

これはオーバーロードされたメンバ関数で、便宜のために提供されている。上記の関数とは受け取る引数のみが異なる。ファイルを開く。

引数の説明は FileStorage::FileStorage を参照。このメソッドはファイルを開く前に FileStorage::release を呼び出す。

引数
filename開くファイルの名前、またはデータを読み込む文字列。ファイルの拡張子(.xml、.yml/.yaml、.json)によってその形式(それぞれXML、YAML、JSON)が決まる。また、圧縮ファイルを扱うために .gz を付加することもできる。例: myHugeMatrix.xml.gz。FileStorage::WRITEFileStorage::MEMORY の両フラグが指定された場合、source は出力ファイル形式(例: mydata.xml、.yml など)を指定するためだけに使われる。ファイル名にはパラメータを含めることもできる。FileStorage::BASE64 フラグの代わりに、"*?base64" という形式(例: "file.json?base64" (大文字小文字を区別))を使うこともできる。
flags動作モード。FileStorage::Mode のいずれか
encodingファイルのエンコーディング。なお、UTF-16のXMLエンコーディングは現在サポートされていないため、代わりに8ビットエンコーディングを使用すること。

◆ ~FileStorage()

virtual cv::FileStorage::~FileStorage ( )
virtual

デストラクタ。release() を呼び出す

メンバ関数詳解

◆ endWriteStruct()

void cv::FileStorage::endWriteStruct ( )
Python:
cv.FileStorage.endWriteStruct() -> None

ネストした構造の書き込みを終了する (startWriteStruct() と対にすること)

◆ getDefaultObjectName()

static String cv::FileStorage::getDefaultObjectName ( const String & filename)
static

指定されたファイル名に対して正規化されたオブジェクト名を返す。

引数
filenameファイルの名前
戻り値
正規化されたオブジェクト名。

◆ getFirstTopLevelNode()

FileNode cv::FileStorage::getFirstTopLevelNode ( ) const
Python:
cv.FileStorage.getFirstTopLevelNode() -> retval

トップレベルのマッピングの最初の要素を返す。

戻り値
トップレベルのマッピングの最初の要素。

◆ getFormat()

int cv::FileStorage::getFormat ( ) const
Python:
cv.FileStorage.getFormat() -> retval

現在の形式を返す。

戻り値
現在の形式。FileStorage::Mode を参照

◆ isOpened()

virtual bool cv::FileStorage::isOpened ( ) const
virtual
Python:
cv.FileStorage.isOpened() -> retval

ファイルが開かれているかどうかを確認する。

戻り値
オブジェクトが現在のファイルに関連付けられている場合は true、そうでない場合は false。ファイルを開こうとした後にこのメソッドを呼び出すのは良い習慣である。
samples/cpp/tutorial_code/core/file_input_output/file_input_output.cpp.

◆ open()

virtual bool cv::FileStorage::open ( const String & filename,
int flags,
const String & encoding = String() )
virtual
Python:
cv.FileStorage.open(filename, flags[, encoding]) -> retval

ファイルを開く。

引数の説明は FileStorage::FileStorage を参照。このメソッドはファイルを開く前に FileStorage::release を呼び出す。

引数
filename開くファイルの名前、またはデータを読み込む文字列。ファイルの拡張子(.xml、.yml/.yaml、.json)によってその形式(それぞれXML、YAML、JSON)が決まる。また、圧縮ファイルを扱うために .gz を付加することもできる。例: myHugeMatrix.xml.gz。FileStorage::WRITEFileStorage::MEMORY の両フラグが指定された場合、source は出力ファイル形式(例: mydata.xml、.yml など)を指定するためだけに使われる。ファイル名にはパラメータを含めることもできる。FileStorage::BASE64 フラグの代わりに、"*?base64" という形式(例: "file.json?base64" (大文字小文字を区別))を使うこともできる。
flags動作モード。FileStorage::Mode のいずれか
encodingファイルのエンコーディング。なお、UTF-16のXMLエンコーディングは現在サポートされていないため、代わりに8ビットエンコーディングを使用すること。
samples/cpp/tutorial_code/core/file_input_output/file_input_output.cpp.

◆ operator[]() [1/2]

FileNode cv::FileStorage::operator[] ( const char * nodename) const
Python:
cv.FileStorage.getNode(nodename) -> retval

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ operator[]() [2/2]

FileNode cv::FileStorage::operator[] ( const String & nodename) const
Python:
cv.FileStorage.getNode(nodename) -> retval

トップレベルのマッピングの指定された要素を返す。

引数
nodenameファイルノードの名前。
戻り値
指定された名前を持つ Node

◆ release()

virtual void cv::FileStorage::release ( )
virtual
Python:
cv.FileStorage.release() -> None

ファイルを閉じ、すべてのメモリバッファを解放する。

ストレージに対するすべてのI/O操作が完了した後にこのメソッドを呼び出すこと。

samples/cpp/tutorial_code/core/file_input_output/file_input_output.cpp.

◆ releaseAndGetString()

virtual String cv::FileStorage::releaseAndGetString ( )
virtual
Python:
cv.FileStorage.releaseAndGetString() -> retval

ファイルを閉じ、すべてのメモリバッファを解放する。

ストレージに対するすべてのI/O操作が完了した後にこのメソッドを呼び出すこと。ストレージがデータの書き込み用に開かれており、FileStorage::WRITE が指定されていた場合

◆ root()

FileNode cv::FileStorage::root ( int streamidx = 0) const
Python:
cv.FileStorage.root([, streamidx]) -> retval

トップレベルのマッピングを返す。

引数
streamidxストリームの0始まりのインデックス。ほとんどの場合、ファイル内のストリームは1つだけである。ただし、YAMLは複数のストリームをサポートしているため、複数存在することがある。
戻り値
トップレベルのマッピング。

◆ startWriteStruct()

void cv::FileStorage::startWriteStruct ( const String & name,
int flags,
const String & typeName = String() )
Python:
cv.FileStorage.startWriteStruct(name, flags[, typeName]) -> None

ネストした構造 (シーケンスまたはマッピング) の書き込みを開始する。

引数
name構造体の名前。シーケンス(いわゆる「配列」)に書き込む場合は、空文字列を渡す。
flags構造体の型 (FileNode::MAP または FileNode::SEQ (どちらもオプションで FileNode::FLOW を付加可能))。
typeName格納する型のオプション名。これを設定した効果はストレージ形式に依存する。すなわち、その形式が型情報の格納に関する仕様を持つ場合、このパラメータが使用される。

◆ write() [1/6]

void cv::FileStorage::write ( const String & name,
const Mat & val )
Python:
cv.FileStorage.write(name, val) -> None

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ write() [2/6]

void cv::FileStorage::write ( const String & name,
const std::vector< String > & val )
Python:
cv.FileStorage.write(name, val) -> None

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ write() [3/6]

void cv::FileStorage::write ( const String & name,
const String & val )
Python:
cv.FileStorage.write(name, val) -> None

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ write() [4/6]

void cv::FileStorage::write ( const String & name,
double val )
Python:
cv.FileStorage.write(name, val) -> None

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ write() [5/6]

void cv::FileStorage::write ( const String & name,
int val )
Python:
cv.FileStorage.write(name, val) -> None

バインディングで使用するための簡略化された書き込みAPI。

引数
name書き込むオブジェクトの名前。シーケンス(いわゆる「配列」)に書き込む場合は、空文字列を渡す。
val書き込むオブジェクトの値。

◆ write() [6/6]

void cv::FileStorage::write ( const String & name,
int64_t val )
Python:
cv.FileStorage.write(name, val) -> None

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

◆ writeComment()

void cv::FileStorage::writeComment ( const String & comment,
bool append = false )
Python:
cv.FileStorage.writeComment(comment[, append]) -> None

コメントを書き込む。

この関数はコメントをファイルストレージに書き込む。コメントはストレージの読み込み時にスキップされる。

引数
comment書き込むコメント。単一行または複数行
appendtrue の場合、関数はコメントを現在の行の末尾に置こうとする。それ以外で、コメントが複数行の場合、または現在の行の末尾に収まらない場合、コメントは新しい行から始まる。

◆ writeRaw()

void cv::FileStorage::writeRaw ( const String & fmt,
const void * vec,
size_t len )

複数の数値を書き込む。

指定された形式の1つ以上の数値を、現在書き込み中の構造に書き込む。通常はこのメソッドの代わりに演算子 << を使う方が便利である。

引数
fmt各配列要素の仕様。format specification を参照
vec書き込む配列へのポインタ。
len書き込む uchar 要素の数。

メンバ変数詳解

◆ elname

std::string cv::FileStorage::elname

◆ p

Ptr<Impl> cv::FileStorage::p

◆ state

int cv::FileStorage::state

このクラス詳解は次のファイルから抽出されました: