FC2カウンター FPGAの部屋 白線追従走行用畳み込みニューラルネットワークの製作12(テスト用画像ファイルとラベル・ファイルの作成)

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

FPGAの部屋

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

白線追従走行用畳み込みニューラルネットワークの製作12(テスト用画像ファイルとラベル・ファイルの作成)

白線追従走行用畳み込みニューラルネットワークの製作11(トレーニング用画像ファイルとラベル・ファイルの作成)”の続き。

前回は、画像ファイルを増やして、トレーニング用画像ファイルとラベル・ファイルの作成を行った。今回は、テスト用の画像を増やして、MNISTデータ形式のテスト用画像ファイルとテスト用ラベル・ファイルの作成を行った。

まずは、~/Vivado_HLS/PYNQ ディレクトリにVivado HLS 2016.4 の straight_test_dataset3 プロジェクトを作った。
その下に、test_images_170804 ディレクトリをコピーした。ここにはテスト用の画像が直進、左旋回、右旋回それぞれ5枚ずつ、計15枚入っている。これを55枚ずつに増やす。
test_images_170804 ディレクトリに increase_images_test をコピーした。
increase_images_test を下に貼っておく。

#!/bin/bash
# increase_image_test
# for test

max=5

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

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

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

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

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

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

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

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

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

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


./increase_images_test で実行した。
wlt_cnn_63_170823.png

テスト用の画像が直進、左旋回、右旋回それぞれ55 枚ずつに増えた。

straight_test_data.h と straight_test_data.cpp を用意した。これは、前回のC ソースコードの処理するファイル名を変更しただけだ。
wlt_cnn_64_170823.png

wlt_cnn_65_170823.png

C シミュレーションを行った。
wlt_cnn_66_170823.png

~/Vivado_HLS/PYNQ/straight_test_dataset3/solution1/csim/build に test_straight_run_image と test_straight_run_label が生成された。
wlt_cnn_67_170823.png

test_straight_run_image の内容に一部を示す。
wlt_cnn_68_170823.png

101d は 4125 を示し、テスト用画像が 4125 個あることを示す。
  1. 2017年08月23日 05:07 |
  2. DNN
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

トラックバック URL
http://marsee101.blog19.fc2.com/tb.php/3892-83a37812
この記事にトラックバックする(FC2ブログユーザー)