OpenCVメモ(文字の検出と認識その1)
OpenCVを使った文字の検出と認識を試してみる。
使用したOpenCVのバージョンは「4.0.1」
% pkg-config --modversion opencv4 4.0.1
公式サイトを見ると、「text」モジュールに関しては、「Detection」と「Recognition」の2つに分類されている。
まずは「Detection」
デモコードを動かしてみる。
使用した画像(236 x 303)
拡大 + グレースケール変換
拡大 + 2値化(しきい値120)
検出を実行。2段階に分けて実施する。
Ptr<ERFilter> er_filter1 = createERFilterNM1(loadClassifierNM1("trained_classifierNM1.xml"), 1, // thresholdDelta = 1 0.0006f, // minArea(% of image size) = 0.00025 0.0008f, // maxArea(% of image size) = 0.13 0.2, // minProbability = 0.4, true, // nonMaxSuppression = true 0.1); // minProbabilityDiff = 0.1 Ptr<ERFilter> er_filter2 = createERFilterNM2(loadClassifierNM2("trained_classifierNM2.xml"), 0.3); // minProbability = 0.3
各channelごとの抽出されたRegion
(参考)各channelごとの抽出されたRegion(filterNM1のみ)