らんだむな記憶

blogというものを体験してみようか!的なー

darknet-ocr (1)

漢字とかの検出 - らんだむな記憶 の継続調査のようなもの。

dnn/text.py#L68

def detect_lines(image,scale=600, ...):
    ...
    return text_lines, scores

でテキスト領域のバウンディングボックスと確信度を返している。text_lines(28, 8) のサイズなどのテンソルとして返ってくる。バウンディングボックスが 28 個ということなのだが、何故座標成分は 8 なのか?ということについては、helper/image.py#L244-L250

    boxes = []
    for box in text_recs:
           x1,y1 = (box[0],box[1])
           x2,y2 = (box[2],box[3])
           x3,y3 = (box[6],box[7])
           x4,y4 = (box[4],box[5])
           boxes.append([x1,y1,x2,y2,x3,y3,x4,y4])

より、(x, y) のペアが 4 つ入っている形だからということである。

例えば、[6, 27, 152, 13, 153, 29, 7, 43] が得られた場合、

\begin{align*}
\begin{matrix}
(7, 43) & (153, 29) \\
(6, 27) & (152, 13)
\end{matrix}
\end{align*}

という 4 頂点を表していることになる。