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

より高度な学習ベースの自動ホワイトバランスアルゴリズム。続きを読む...

#include <opencv2/xphoto/white_balance.hpp>

Collaboration diagram for cv::xphoto::LearningBasedWB:

公開メンバ関数

virtual void extractSimpleFeatures (InputArray src, OutputArray dst)=0
 アルゴリズムの特徴抽出部分を実装する。
 
virtual int getHistBinNum () const =0
 アルゴリズムが内部で使用する3次元RGBヒストグラムの1次元あたりのサイズを定義する。ビット深度の高い画像では、ビン数を増やすことが有効なことが多い(例: 12ビット画像に対して256ビン)。
 
virtual int getRangeMaxVal () const =0
 入力画像が取りうる最大値(例: 8ビット画像で255、12ビット画像で4095)
 
virtual float getSaturationThreshold () const =0
 飽和ピクセルを判定するために使用するしきい値。すなわち、少なくとも1つのチャンネルが \(\texttt{saturation_threshold}\times\texttt{range_max_val}\) を超えるピクセルは無視される。
 
virtual void setHistBinNum (int val)=0
 アルゴリズムが内部で使用する3次元RGBヒストグラムの1次元あたりのサイズを定義する。ビット深度の高い画像では、ビン数を増やすことが有効なことが多い(例: 12ビット画像に対して256ビン)。
 
virtual void setRangeMaxVal (int val)=0
 入力画像が取りうる最大値(例: 8ビット画像で255、12ビット画像で4095)
 
virtual void setSaturationThreshold (float val)=0
 飽和ピクセルを判定するために使用するしきい値。すなわち、少なくとも1つのチャンネルが \(\texttt{saturation_threshold}\times\texttt{range_max_val}\) を超えるピクセルは無視される。
 
- Public Member Functions inherited from cv::xphoto::WhiteBalancer
virtual void balanceWhite (InputArray src, OutputArray dst)=0
 入力画像にホワイトバランスを適用する。
 
- Public Member Functions inherited from cv::Algorithm
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 アルゴリズムの状態をクリアする。
 
virtual bool empty () const
 Algorithm が空の場合(たとえば開始直後や読み込みに失敗した後)に true を返す。
 
virtual String getDefaultName () const
 
virtual void read (const FileNode &fn)
 ファイルストレージからアルゴリズムの引数を読み込む。
 
virtual void save (const String &filename) const
 
void write (const Ptr< FileStorage > &fs, const String &name=String()) const
 
virtual void write (FileStorage &fs) const
 アルゴリズムの引数をファイルストレージに保存する。
 
void write (FileStorage &fs, const String &name) const
 

Additional Inherited Members

- Static Public Member Functions inherited from cv::Algorithm
template<typename _Tp >
static Ptr< _Tpload (const String &filename, const String &objname=String())
 ファイルからアルゴリズムを読み込む。
 
template<typename _Tp >
static Ptr< _TploadFromString (const String &strModel, const String &objname=String())
 文字列からアルゴリズムを読み込む。
 
template<typename _Tp >
static Ptr< _Tpread (const FileNode &fn)
 ファイルノードからアルゴリズムを読み込む。
 
- Protected Member Functions inherited from cv::Algorithm
void writeFormat (FileStorage &fs) const
 

詳細説明

より高度な学習ベースの自動ホワイトバランスアルゴリズム。

GrayworldWB と同様に、このアルゴリズムは入力画像の各チャンネルに異なるゲインを適用することで動作するが、そのゲインの計算は単純なグレーワールド仮定に比べてやや複雑である。アルゴリズムの詳細は [58] を参照。

飽和ピクセルをマスクアウトするため、この関数は次の条件を満たすピクセルのみを使用する:

\[ \frac{\textrm{max}(R,G,B)}{\texttt{range_max_val}} < \texttt{saturation_thresh} \]

現在は CV_8UC3 型および CV_16UC3 型の画像をサポートする。

メンバ関数詳解

◆ extractSimpleFeatures()

virtual void cv::xphoto::LearningBasedWB::extractSimpleFeatures ( InputArray src,
OutputArray dst )
pure virtual
Python:
cv.xphoto.LearningBasedWB.extractSimpleFeatures(src[, dst]) -> dst

アルゴリズムの特徴抽出部分を実装する。

[58] に従って、入力画像に対して以下の特徴を計算する:

  1. 平均的な (R,G,B) タプルの色度
  2. 最も明るい (R,G,B) タプルの色度(飽和ピクセルは無視する)
  3. 支配的な (R,G,B) タプル(RGBヒストグラムで最も高い値を持つもの)の色度
  4. 色度パレットのモード。このパレットは、RGBヒストグラムに従って最も一般的な300色を取り出し、それらを色度平面に射影することで構築される。モードはパレット内で最も密度の高い点であり、Epanechnikovカーネル関数を用いた単純な固定バンド幅のカーネル密度推定器によって計算される。
引数
src入力の3チャンネル画像(BGR色空間を想定)。
dst上で列挙した特徴に対応する4つの (r,g) 色度タプルの配列。

◆ getHistBinNum()

virtual int cv::xphoto::LearningBasedWB::getHistBinNum ( ) const
pure virtual
Python:
cv.xphoto.LearningBasedWB.getHistBinNum() -> retval

アルゴリズムが内部で使用する3次元RGBヒストグラムの1次元のサイズを定義する。ビット深度の高い画像ではビンの数を増やすことがしばしば有用である(例: 12ビット画像では256ビン)。

参照
setHistBinNum

◆ getRangeMaxVal()

virtual int cv::xphoto::LearningBasedWB::getRangeMaxVal ( ) const
pure virtual
Python:
cv.xphoto.LearningBasedWB.getRangeMaxVal() -> retval

入力画像が取り得る最大値(例: 8ビット画像では255、12ビット画像では4095)

参照
setRangeMaxVal

◆ getSaturationThreshold()

virtual float cv::xphoto::LearningBasedWB::getSaturationThreshold ( ) const
pure virtual
Python:
cv.xphoto.LearningBasedWB.getSaturationThreshold() -> retval

飽和ピクセルを判定するために使用するしきい値。すなわち、少なくとも1つのチャンネルが \(\texttt{saturation_threshold}\times\texttt{range_max_val}\) を超えるピクセルは無視される。

参照
setSaturationThreshold

◆ setHistBinNum()

virtual void cv::xphoto::LearningBasedWB::setHistBinNum ( int val)
pure virtual
Python:
cv.xphoto.LearningBasedWB.setHistBinNum(val) -> None

アルゴリズムが内部で使用する3次元RGBヒストグラムの1次元のサイズを定義する。ビット深度の高い画像ではビンの数を増やすことがしばしば有用である(例: 12ビット画像では256ビン)。

参照
getHistBinNum

◆ setRangeMaxVal()

virtual void cv::xphoto::LearningBasedWB::setRangeMaxVal ( int val)
pure virtual
Python:
cv.xphoto.LearningBasedWB.setRangeMaxVal(val) -> None

入力画像が取り得る最大値(例: 8ビット画像では255、12ビット画像では4095)

参照
getRangeMaxVal

◆ setSaturationThreshold()

virtual void cv::xphoto::LearningBasedWB::setSaturationThreshold ( float val)
pure virtual
Python:
cv.xphoto.LearningBasedWB.setSaturationThreshold(val) -> None

飽和ピクセルを判定するために使用するしきい値。すなわち、少なくとも1つのチャンネルが \(\texttt{saturation_threshold}\times\texttt{range_max_val}\) を超えるピクセルは無視される。

参照
getSaturationThreshold

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