FC2カウンター FPGAの部屋 カーブ、直線用白線間走行用畳み込みニューラルネットワーク6(テスト用画像を増やす)
fc2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

カーブ、直線用白線間走行用畳み込みニューラルネットワーク6(テスト用画像を増やす)

カーブ、直線用白線間走行用畳み込みニューラルネットワーク5(トレーニング用データの生成)”の続き。

前回は、学習画像をMNISTのデータ形式に変換した。テスト用の画像を”カーブ、直線用白線間走行用畳み込みニューラルネットワーク2(本格的なデータ収集)”で収集した。今回は、それの画像を増やすことにした。

カーブ、直線用白線間走行用畳み込みニューラルネットワーク4(学習画像を増やす)”と同様に imagemagic を使ってバッチ・ファイルを起動して、画像を増やしていて、17倍に増やしている。元の画像が1組あるので、直進が 35 X 18 = 630 枚になる。右旋回と左旋回は 12 X 18 = 216 枚になる予定だ。合計のテスト用画像は 1062 枚になるはずだ。

imagemagic を使ったバッチ・ファイル increase_image_test2 を示す。

#!/bin/bash
# increase_images2

straight_max=35
lr_turn_max=12

# contrast
for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp -contrast straight_test$(expr $i + $straight_max).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp -contrast left_turn_test$(expr $i + $lr_turn_max).bmp
    convert right_turn_test$i.bmp -contrast right_turn_test$(expr $i + $lr_turn_max).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp -contrast -contrast straight_test$(expr $i + $straight_max \* 2).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp -contrast -contrast left_turn_test$(expr $i + $lr_turn_max \* 2).bmp
    convert right_turn_test$i.bmp -contrast -contrast right_turn_test$(expr $i + $lr_turn_max \* 2).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp -contrast -contrast -contrast straight_test$(expr $i + $straight_max \* 3).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp -contrast -contrast -contrast left_turn_test$(expr $i + $lr_turn_max \* 3).bmp
    convert right_turn_test$i.bmp -contrast -contrast -contrast right_turn_test$(expr $i + $lr_turn_max \* 3).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp +contrast straight_test$(expr $i + $straight_max \* 4).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp +contrast left_turn_test$(expr $i + $lr_turn_max \* 4).bmp
    convert right_turn_test$i.bmp +contrast right_turn_test$(expr $i + $lr_turn_max \* 4).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp +contrast +contrast straight_test$(expr $i + $straight_max \* 5).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp +contrast +contrast left_turn_test$(expr $i + $lr_turn_max \* 5).bmp
    convert right_turn_test$i.bmp +contrast +contrast right_turn_test$(expr $i + $lr_turn_max \* 5).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp +contrast +contrast +contrast straight_test$(expr $i + $straight_max \* 6).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp +contrast +contrast +contrast left_turn_test$(expr $i + $lr_turn_max \* 6).bmp
    convert right_turn_test$i.bmp +contrast +contrast +contrast right_turn_test$(expr $i + $lr_turn_max \* 6).bmp
done

# blur
for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp -blur 10x1.5 straight_test$(expr $i + $straight_max \* 7).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp -blur 10x1.5 left_turn_test$(expr $i + $lr_turn_max \* 7).bmp
    convert right_turn_test$i.bmp -blur 10x1.5 right_turn_test$(expr $i + $lr_turn_max \* 7).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp -blur 10x2 straight_test$(expr $i + $straight_max \* 8).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp -blur 10x2 left_turn_test$(expr $i + $lr_turn_max \* 8).bmp
    convert right_turn_test$i.bmp -blur 10x2 right_turn_test$(expr $i + $lr_turn_max \* 8).bmp
done

# gaussian-blur
for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp -blur 10x1.5 straight_test$(expr $i + $straight_max \* 9).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp -gaussian-blur 10x1.5 left_turn_test$(expr $i + $lr_turn_max \* 9).bmp
    convert right_turn_test$i.bmp -blur 10x1.5 right_turn_test$(expr $i + $lr_turn_max \* 9).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp -blur 10x2 straight_test$(expr $i + $straight_max \* 10).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp -gaussian-blur 10x2 left_turn_test$(expr $i + $lr_turn_max \* 10).bmp
    convert right_turn_test$i.bmp -blur 10x2 right_turn_test$(expr $i + $lr_turn_max \* 10).bmp
done

#gamma
for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp -gamma 1.5 straight_test$(expr $i + $straight_max \* 11).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp -gamma 1.5 left_turn_test$(expr $i + $lr_turn_max \* 11).bmp
    convert right_turn_test$i.bmp -gamma 1.5 right_turn_test$(expr $i + $lr_turn_max \* 11).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp -gamma 0.75 straight_test$(expr $i + $straight_max \* 12).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp -gamma 0.75 left_turn_test$(expr $i + $lr_turn_max \* 12).bmp
    convert right_turn_test$i.bmp -gamma 0.75 right_turn_test$(expr $i + $lr_turn_max \* 12).bmp
done

#noise
for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp +noise Gaussian straight_test$(expr $i + $straight_max \* 13).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp +noise Gaussian left_turn_test$(expr $i + $lr_turn_max \* 13).bmp
    convert right_turn_test$i.bmp +noise Gaussian right_turn_test$(expr $i + $lr_turn_max \* 13).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp +noise Impulse straight_test$(expr $i + $straight_max \* 14).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp +noise Impulse left_turn_test$(expr $i + $lr_turn_max \* 14).bmp
    convert right_turn_test$i.bmp +noise Impulse right_turn_test$(expr $i + $lr_turn_max \* 14).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp +noise Gaussian straight_test$(expr $i + $straight_max \* 15).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp +noise Gaussian left_turn_test$(expr $i + $lr_turn_max \* 15).bmp
    convert right_turn_test$i.bmp +noise Gaussian right_turn_test$(expr $i + $lr_turn_max \* 15).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp +noise Impulse straight_test$(expr $i + $straight_max \* 16).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp +noise Impulse left_turn_test$(expr $i + $lr_turn_max \* 16).bmp
    convert right_turn_test$i.bmp +noise Impulse right_turn_test$(expr $i + $lr_turn_max \* 16).bmp
done

for ((i=0; i < $straight_max; i++)); do
    convert straight_test$i.bmp +noise Laplacian straight_test$(expr $i + $straight_max \* 17).bmp
done
for ((i=0; i < $lr_turn_max; i++)); do
    convert left_turn_test$i.bmp +noise Laplacian left_turn_test$(expr $i + $lr_turn_max \* 17).bmp
    convert right_turn_test$i.bmp +noise Laplacian right_turn_test$(expr $i + $lr_turn_max \* 17).bmp
done


ircrease_image_test2 を実行すると、画像が 1,062 枚に増えた。テスト用として画像を切り出すときに 25 倍に増えるので、 26,550 枚になるはずだ。
curve_tracing_cnn_33_171216.jpg
  1. 2017年12月16日 05:30 |
  2. DNN
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/4005-ea7d2eb5
この記事にトラックバックする(FC2ブログユーザー)