weight/cfg๋ฅผ pb ๋ชจ๋ธ๋ก ๋ณํํ ์ ์์ต๋๋ค.
./flow --model tiny-yolo-voc-original.cfg --load tiny-yolo-voc.weights --savepb
...
AssertionError: labels.txt and tiny-yolo-voc-original.cfg indicate inconsistent class numbers
์ด https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/android/src/org/tensorflow/demo/DetectorActivity.java#L69
๋ํ ์๋ํ์ง ์์ต๋๋ค:
./flow --model tiny-yolo-voc-original.cfg --load tiny-yolo-voc.weights --savepb --verbalise=True
ERROR - Invalid argument: --verbalise=True
์ฒซ ๋ฒ์งธ ๋ฌธ์ ์ ๊ด๋ จํ์ฌ darkflow๊ฐ ๊ธฐ๋ณธ .cfg
์ด๋ฆ ์ค ํ๋๋ฅผ ๋ณผ ๋ ์์ฒด ๋ฐฐ์ด(๋๋ COCO ๋ฐ์ดํฐ ์ธํธ์ ๊ฒฝ์ฐ ์ธ๋ถ ํ์ผ)์์ ๋ ์ด๋ธ์ ๋ก๋ํฉ๋๋ค. ์ฆ, ์ธ์๋ .cfg
๋ณผ ๋ labels.txt
์ค์ ๋ ๊ฒ์ ๋ฌด์ํฉ๋๋ค. ์ฌ๊ธฐ ์์ ์ธ์๋ .cfg
์ด๋ฆ์ด ๋ฌด์์ธ์ง ํ์ธํ ์ ์์ต๋๋ค. ๊ทํ์ ๊ฒฝ์ฐ ํด๋น ๋ฐฐ์ด์ ์๋ ์ธ์ํ ์ ์๋ .cfg
์ด๋ฆ tiny-yolo-voc-original.cfg
์ ์ฌ์ฉํ๊ณ ์์ต๋๋ค. ๋ฐ๋ผ์ darkflow๋ labels.txt
์์ ๋ ์ด๋ธ์ ๋ก๋ํ๋ ค๊ณ ์๋ํ๊ณ ๊ทํ์ ๊ฒฝ์ฐ ์๋ชป๋ ์์ ๋ ์ด๋ธ์ ์ฐพ๊ณ ์์ต๋๋ค. VOC ๋ ์ด๋ธ์ ๋ก๋ํ๋ ค๋ ๊ฒฝ์ฐ .cfg
ํ์ผ ์ด๋ฆ์ tiny-yolo-voc.cfg
๋ก ๋ณ๊ฒฝํ์ฌ VOC ๋ ์ด๋ธ์ ์ธ์ํ๊ณ darkflow๋ฅผ ์๋์ผ๋ก ๋ก๋ํ๊ฑฐ๋ VOC ๋ ์ด๋ธ์ labels.txt
์๋์ผ๋ก ๋ณต์ฌํฉ๋๋ค.
๋ ๋ฒ์งธ ๋ฌธ์ ์ ๊ด๋ จํ์ฌ ์ ๋ darkflow์ ๋ํ ์ฌ์ฉ์ ์ง์ CLI ํธ๋ค๋ฌ๋ฅผ ์์ฑํ์ผ๋ฉฐ =
์ฌ์ฉํ์ฌ ๊ฐ์ ํ ๋นํ๋ ๊ฒ์ ํ์ฌ ์ง์๋์ง ์์ต๋๋ค. --verbalise
๋ฅผ true ๋ก ์ค์ ํ๋ ค๋ฉด --verbalise
์์ฒด๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ --verbalise true
.
์์์ด์. ๋๋ ๋ํ 1๊ฐ์ ํด๋์ค๋ก ํ๋ จ๋ ์์ yolo๋ฅผ ๋ณํํ๋ ค๊ณ ์๋ํ์ง๋ง ํ ์ ์์์ต๋๋ค(labels.txt๋ฅผ ํธ์งํ๊ณ ํ๋์ ์ด๋ฆ๋ง ๋ฃ์๋๋ผ๋). ์๋ํ๋ฉด cfg์ ์ด๋ฆ์ด tiny-yolo-voc.cfg
์ด๋ฉด darkflow๊ฐ ๊ฒ์ํ๊ธฐ ๋๋ฌธ์
๋๋ค. ์์ฒด ๋ฐฐ์ด์์. ๋ค๋ฅธ ์ด๋ฆ์ผ๋ก ์ด๋ฆ์ ๋ฐ๊พธ์๊ณ ์๋ํ์ต๋๋ค.
๊ฐ์ฌ ํด์!
์๋
ํ์ธ์, ์ ๋ ํ์ฌ ํ ํด๋์ค๋ฅผ ํ๋ จํ๊ณ ์์ง๋ง ํ๋ จ ์ค์ yolo-small.weights ํ์ผ์ ๋ก๋๊ฐ ๋ก๋๋์ง ์์ต๋๋ค.
์ด๊ฒ์ ๋ด ๋ช
๋ น์
๋๋ค:yolo-me-small.cfg --load bin/yolo-small.weights --train --annotation CAR/Annotations --dataset CAR/JPEGImages
์ค๋ฅ:
./cfg/yolo-qr-small.cfg ๊ตฌ๋ฌธ ๋ถ์
cfg/yolo-qr-small.cfg ๊ตฌ๋ฌธ ๋ถ์
bin/yolo-qr-small.weights ๋ก๋ ์ค...
์ญ์ถ์ (๊ฐ์ฅ ์ต๊ทผ ํธ์ถ ๋ง์ง๋ง):
ํ์ผ "./flow", 6ํ,
cliHandler(sys.argv)
cliHandler์ ํ์ผ "/home/xwlab/darkflow/darkflow/cli.py", 22ํ
tfnet = TFNet(FLAGS)
ํ์ผ "/home/xwlab/darkflow/darkflow/net/build.py", 58ํ, __init__
๋คํฌ๋ท = ๋คํฌ๋ท(FLAGS)
ํ์ผ "/home/xwlab/darkflow/darkflow/dark/darknet.py", 27ํ, __init__
self.load_weights()
load_weights์ ํ์ผ "/home/xwlab/darkflow/darkflow/dark/darknet.py", 82ํ
wgts_loader = loader.create_loader( ์ธ์)create_loader์ ํ์ผ "/home/xwlab/darkflow/darkflow/utils/loader.py", 105ํload_type(๊ฒฝ๋ก, cfg) ๋ฐํํ์ผ "/home/xwlab/darkflow/darkflow/utils/loader.py", 19ํ, __init__self.load( ์ธ์)
ํ์ผ "/home/xwlab/darkflow/darkflow/utils/loader.py", 77ํ, ๋ก๋ ์ค
Walker.offset, Walker.size)
AssertionError: 360624512๋ฐ์ดํธ ์์, 375881736 ๋ฐ๊ฒฌ
๋ด ๋ฌธ์ ๋ labels.txt
ํ์ผ์์ ํํ ๋ธ๋ ์ดํฌ๋ผ์ธ์ ์ ๊ฑฐํ๋ ๊ฒ์ด์์ต๋๋ค. ์๋ก์ด ๋น ์ค์ ์ถ๊ฐ ํด๋์ค๋ก ๊ณ์ฐํ์ต๋๋ค.
60๊ฐ์ ํํฐ๊ฐ ์๋ 7๊ฐ์ ํด๋์ค cfg ํ์ผ์ ์ฌ์ฉํ์ต๋๋ค. ๋ผ๋ฒจ
๋ ์ด๋ธ.txt
.txt ํ์ผ์๋ 7๊ฐ์ ํด๋์ค๊ฐ ํฌํจ๋์ด ์์ง๋ง ๋ค์๊ณผ ๊ฐ์ ์ค๋ฅ๊ฐ ์์ต๋๋ค.
AssertionError:labels.txt ๋ฐ cfg/tiny-yolo-voc-7c.cfg๋ ์ผ์นํ์ง ์๋ ํด๋์ค ๋ฒํธ๋ฅผ ๋ํ๋
๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์ฒซ ๋ฒ์งธ ๋ฌธ์ ์ ๊ด๋ จํ์ฌ darkflow๊ฐ ๊ธฐ๋ณธ
.cfg
์ด๋ฆ ์ค ํ๋๋ฅผ ๋ณผ ๋ ์์ฒด ๋ฐฐ์ด(๋๋ COCO ๋ฐ์ดํฐ ์ธํธ์ ๊ฒฝ์ฐ ์ธ๋ถ ํ์ผ)์์ ๋ ์ด๋ธ์ ๋ก๋ํฉ๋๋ค. ์ฆ, ์ธ์๋.cfg
๋ณผ ๋labels.txt
์ค์ ๋ ๊ฒ์ ๋ฌด์ํฉ๋๋ค. ์ฌ๊ธฐ ์์ ์ธ์๋.cfg
์ด๋ฆ์ด ๋ฌด์์ธ์ง ํ์ธํ ์ ์์ต๋๋ค. ๊ทํ์ ๊ฒฝ์ฐ ํด๋น ๋ฐฐ์ด์ ์๋ ์ธ์ํ ์ ์๋.cfg
์ด๋ฆtiny-yolo-voc-original.cfg
์ ์ฌ์ฉํ๊ณ ์์ต๋๋ค. ๋ฐ๋ผ์ darkflow๋labels.txt
์์ ๋ ์ด๋ธ์ ๋ก๋ํ๋ ค๊ณ ์๋ํ๊ณ ๊ทํ์ ๊ฒฝ์ฐ ์๋ชป๋ ์์ ๋ ์ด๋ธ์ ์ฐพ๊ณ ์์ต๋๋ค. VOC ๋ ์ด๋ธ์ ๋ก๋ํ๋ ค๋ ๊ฒฝ์ฐ.cfg
ํ์ผ ์ด๋ฆ์tiny-yolo-voc.cfg
๋ก ๋ณ๊ฒฝํ์ฌ VOC ๋ ์ด๋ธ์ ์ธ์ํ๊ณ darkflow๋ฅผ ์๋์ผ๋ก ๋ก๋ํ๊ฑฐ๋ VOC ๋ ์ด๋ธ์labels.txt
์๋์ผ๋ก ๋ณต์ฌํฉ๋๋ค.๋ ๋ฒ์งธ ๋ฌธ์ ์ ๊ด๋ จํ์ฌ ์ ๋ darkflow์ ๋ํ ์ฌ์ฉ์ ์ง์ CLI ํธ๋ค๋ฌ๋ฅผ ์์ฑํ์ผ๋ฉฐ
=
์ฌ์ฉํ์ฌ ๊ฐ์ ํ ๋นํ๋ ๊ฒ์ ํ์ฌ ์ง์๋์ง ์์ต๋๋ค.--verbalise
๋ฅผ true ๋ก ์ค์ ํ๋ ค๋ฉด--verbalise
์์ฒด๋ฅผ ์ฌ์ฉํ๊ฑฐ๋--verbalise true
.