6-01 conf-2〜6層のEXCEL化(続き)
●データを並び替えて整理する
Module06で行う処理のイメージを図6‐05に示します。このように100行×126列だったものを600行×21列に並び替えます。21というのは種族(人、馬、自動車など)の数、600というのはBBOXの数(10×10=100)に各BBOXの形状の数(6)を掛けたものです。 |
図6-05 並び替えのイメージ。100行×21×6列を600行×21列にする
●各列が種族に対応するように並び替え
図6‐06はModule06の実行結果です。outChシートは600行×21列、各列が種族に対応し(*1)、各行はBBOXの位置と形状に対応します。
(*1)種族は21あり、左端の列が'background'(背景)、右に行くに従って'aeroplane',
'bicycle', 'bird', 'boat', 'bottle', 'bus', 'car', 'cat', 'chair', 'cow',
'diningtable', 'dog', 'horse', 'motorbike', 'person', 'pottedplant', 'sheep',
'sofa', 'train', 'tvmonitor'と続く。 |
図6‐06 outChシートが生成
●SoftMax関数の整数版
Module07を実行する前にinCh00〜inCh63, im2col00〜im2col63, im2col00_confW3〜im2col63_confW3など消せるシートを削除しておきましょう。シートが多すぎるとVBAがとても遅くなります。
Module07はこの処理を行います。全ての得点が0以上になるように最低点を減算する処理です。その結果は図6‐07のようになります。上記のように消せるシートを削除しても15分程度かかると思います。 |
図6‐07 outOffsetシートが生成。各行の最低点が0になっている
●foundと書かれたら物体検出
Module08ではいよいよ物体検出の判定を行います。outOffsetシートの各行の「突出具合」を見て、閾値を超えたらD列に"found"と記します。 |
図6‐08 conf-3層目の物体検出のようす
ここではconf-3層目をEXCEL化しましたが、それ以外の層は以下からダウンロードし、実行してみてください。次節ではこれらEXCELの結果とPythonの結果を比較します。 |
表6‐01 クリックしてダウンロード
層 |
EXCELファイル |
入力CSV |
係数の種類 |
2 |
SSD_conf2.xlsm |
lay15out.zip |
8種(±1,2,4,8) |
4 |
SSD_conf4.xlsm |
ex4out.zip |
8種(±1,2,4,8) |
5 |
SSD_conf5.xlsm |
ex6out.zip |
8種(±1,2,4,8) |
6 |
SSD_conf6.xlsm |
ex8out.zip |
8種(±1,2,4,8) |
最初のページへ
目次へ戻る |