OpenCV 4.12.0
開源計算機視覺
載入中...
搜尋中...
無匹配項
cv::dnn::TextRecognitionModel 類參考

此類表示文字識別網路的高階 API。 更多...

#include <opencv2/dnn/dnn.hpp>

cv::dnn::TextRecognitionModel 的協作圖

公共成員函式

 TextRecognitionModel ()
 
 TextRecognitionModel (const Net &network)
 從深度學習網路建立文字識別模型。建構函式之後呼叫 setDecodeType()setVocabulary() 以初始化解碼方法。
 
 TextRecognitionModel (CV_WRAP_FILE_PATH const std::string &model, CV_WRAP_FILE_PATH const std::string &config="")
 從以支援格式之一表示的網路建立文字識別模型。建構函式之後呼叫 setDecodeType()setVocabulary() 以初始化解碼方法。
 
const std::string & getDecodeType () const
 獲取解碼方法。
 
const std::vector< std::string > & getVocabulary () const
 獲取識別的詞彙表。
 
std::string recognize (InputArray frame) const
 給定 input 幀,建立輸入 blob,執行網路並返回識別結果。
 
void recognize (InputArray frame, InputArrayOfArrays roiRects, std::vector< std::string > &results) const
 給定 input 幀,建立輸入 blob,執行網路並返回識別結果。
 
TextRecognitionModelsetDecodeOptsCTCPrefixBeamSearch (int beamSize, int vocPruneSize=0)
 "CTC-prefix-beam-search" 解碼使用設定解碼方法選項。
 
TextRecognitionModelsetDecodeType (const std::string &decodeType)
 設定將網路輸出轉換為字串的解碼方法。
 
TextRecognitionModelsetVocabulary (const std::vector< std::string > &vocabulary)
 設定識別的詞彙表。
 
- 從 cv::dnn::Model 繼承的公共成員函式
 Model (模型) ()
 
 Model (const Model &)=default
 
 Model (const Net &network)
 從深度學習網路建立模型。
 
 Model (CV_WRAP_FILE_PATH const String &model, CV_WRAP_FILE_PATH const String &config="")
 從以支援格式之一表示的深度學習網路建立模型。modelconfig 引數的順序無關緊要。
 
 Model (Model &&)=default
 
ModelenableWinograd (bool useWinograd)
 
Impl * getImpl () const
 
Impl & getImplRef () const
 
NetgetNetwork_ ()
 
NetgetNetwork_ () const
 
 operator Net & () const
 
Modeloperator= (const Model &)=default
 
Modeloperator= (Model &&)=default
 
void predict (InputArray frame, OutputArrayOfArrays outs) const
 給定 input 幀,建立輸入 blob,執行網路並返回輸出 blobs
 
ModelsetInputCrop (bool crop)
 設定幀的 crop 標誌。
 
ModelsetInputMean (const Scalar &mean)
 設定幀的均值。
 
void setInputParams (double scale=1.0, const Size &size=Size(), const Scalar &mean=Scalar(), bool swapRB=false, bool crop=false)
 設定幀的預處理引數。
 
ModelsetInputScale (const Scalar &scale)
 設定幀的 scalefactor 值。
 
ModelsetInputSize (const Size &size)
 設定幀的輸入大小。
 
ModelsetInputSize (int width, int height)
 
ModelsetInputSwapRB (bool swapRB)
 設定幀的 swapRB 標誌。
 
ModelsetOutputNames (const std::vector< String > &outNames)
 設定幀的輸出名稱。
 
ModelsetPreferableBackend (dnn::Backend backendId)
 
ModelsetPreferableTarget (dnn::Target targetId)
 

附加繼承的成員

- 從 cv::dnn::Model 繼承的保護屬性
Ptr< Impl > impl
 

詳細描述

此類表示文字識別網路的高階 API。

TextRecognitionModel 允許設定預處理輸入影像的引數。TextRecognitionModel 從具有訓練權重和配置的檔案建立網路,設定預處理輸入,執行前向傳遞並返回識別結果。對於 TextRecognitionModel,支援 CRNN-CTC。

示例
samples/dnn/text_detection.cpp.

建構函式 & 解構函式文件

◆ TextRecognitionModel() [1/3]

cv::dnn::TextRecognitionModel::TextRecognitionModel ( )
Python
cv.dnn.TextRecognitionModel(網路) -> <dnn_TextRecognitionModel 物件>
cv.dnn.TextRecognitionModel(model[, config]) -> <dnn_TextRecognitionModel 物件>

◆ TextRecognitionModel() [2/3]

cv::dnn::TextRecognitionModel::TextRecognitionModel ( const Net & 網路)
Python
cv.dnn.TextRecognitionModel(網路) -> <dnn_TextRecognitionModel 物件>
cv.dnn.TextRecognitionModel(model[, config]) -> <dnn_TextRecognitionModel 物件>

從深度學習網路建立文字識別模型。建構函式之後呼叫 setDecodeType()setVocabulary() 以初始化解碼方法。

引數
[輸入]網路Net 物件

◆ TextRecognitionModel() [3/3]

cv::dnn::TextRecognitionModel::TextRecognitionModel ( CV_WRAP_FILE_PATH const std::string & model,
CV_WRAP_FILE_PATH const std::string & config = "" )
inline
Python
cv.dnn.TextRecognitionModel(網路) -> <dnn_TextRecognitionModel 物件>
cv.dnn.TextRecognitionModel(model[, config]) -> <dnn_TextRecognitionModel 物件>

從以支援格式之一表示的網路建立文字識別模型。建構函式之後呼叫 setDecodeType()setVocabulary() 以初始化解碼方法。

引數
[輸入]model二進位制檔案包含訓練權重
[輸入]config文字檔案包含網路配置
此函式的呼叫圖如下

成員函式文件

◆ getDecodeType()

const std::string & cv::dnn::TextRecognitionModel::getDecodeType ( ) const
Python
cv.dnn.TextRecognitionModel.getDecodeType() -> retval

獲取解碼方法。

返回
解碼方法

◆ getVocabulary()

const std::vector< std::string > & cv::dnn::TextRecognitionModel::getVocabulary ( ) const
Python
cv.dnn.TextRecognitionModel.getVocabulary() -> retval

獲取識別的詞彙表。

返回
詞彙表 相關詞彙表

◆ recognize() [1/2]

std::string cv::dnn::TextRecognitionModel::recognize ( InputArray frame) const
Python
cv.dnn.TextRecognitionModel.recognize(frame) -> retval
cv.dnn.TextRecognitionModel.recognize(幀, roiRects) -> 結果

給定 input 幀,建立輸入 blob,執行網路並返回識別結果。

引數
[輸入]frame輸入影像
返回
文字識別結果

◆ recognize() [2/2]

void cv::dnn::TextRecognitionModel::recognize ( InputArray frame,
InputArrayOfArrays roiRects,
std::vector< std::string > & results ) const
Python
cv.dnn.TextRecognitionModel.recognize(frame) -> retval
cv.dnn.TextRecognitionModel.recognize(幀, roiRects) -> 結果

給定 input 幀,建立輸入 blob,執行網路並返回識別結果。

引數
[輸入]frame輸入影像
[輸入]roiRects感興趣文字檢測區域的列表 (cv::Rect, CV_32SC4)。ROI 將被裁剪為網路輸入
[輸出]結果一組文字識別結果。

◆ setDecodeOptsCTCPrefixBeamSearch()

TextRecognitionModel & cv::dnn::TextRecognitionModel::setDecodeOptsCTCPrefixBeamSearch ( int beamSize,
int vocPruneSize = 0 )
Python
cv.dnn.TextRecognitionModel.setDecodeOptsCTCPrefixBeamSearch(beamSize[, vocPruneSize]) -> retval

"CTC-prefix-beam-search" 解碼使用設定解碼方法選項。

引數
[輸入]beamSize搜尋的波束大小
[輸入]vocPruneSize最佳化大型詞彙表搜尋的引數,在每個搜尋步驟中僅獲取前 vocPruneSize 個標記,vocPruneSize <= 0 表示停用此剪枝。

◆ setDecodeType()

TextRecognitionModel & cv::dnn::TextRecognitionModel::setDecodeType ( const std::string & decodeType)
Python
cv.dnn.TextRecognitionModel.setDecodeType(decodeType) -> retval

設定將網路輸出轉換為字串的解碼方法。

引數
[輸入]decodeType將網路輸出轉換為字串的解碼方法,目前支援的型別
  • "CTC-greedy" 基於 CTC 的方法的輸出的貪婪解碼
  • "CTC-prefix-beam-search" 基於 CTC 的方法的輸出的字首波束搜尋解碼

◆ setVocabulary()

TextRecognitionModel & cv::dnn::TextRecognitionModel::setVocabulary ( const std::vector< std::string > & 詞彙表)
Python
cv.dnn.TextRecognitionModel.setVocabulary(詞彙表) -> retval

設定識別的詞彙表。

引數
[輸入]詞彙表網路的關聯詞彙表。

此類文件是從以下檔案生成的