カフェを使用して自分の写真と完全な写真分類をトレーニングする

プロセスを簡単に説明してください:

1.画像データを取得します。

2. Pythonプログラムを使用してtrain.txtとtest.txtを生成します。2つのtxtの各行は、画像名+スペース+カテゴリです(カテゴリは数字で表されます)

3.スクリプトを使用してlmdb形式に変換する

4.モデルパラメータ、prototxtファイル、トレーニングを変更し、caffemodelを取得します

5. opencvでC ++プログラムを実行して、トレーニング済みモデルを呼び出し、テスト結果(画像クラス名)を出力します

詳細な手順:

https://www.cnblogs.com/david97/p/8961850.html  
カフェトレーニングステージ、私はこのブログを参照していますが、最初にtrain.txtとtest.txtを取得し始めたときに、このブログをフォローしなかった他のすべての写真する

このブログを参照することをお勧めします。主な手順の概要は次のとおりです(パスは独自のものに変更されています)。

1.画像データを取得し、画像をtrainフォルダーとtestフォルダーに入れます。

2. Pythonスクリプトを使用してファイル名を取得し、画像名をtrain.txtおよびtest.txtに取得します。ファイル名に応じて、検索および置換機能を使用して、ファイル名の後にラベルを書き込みます。01(3つある場合は0から開始する必要があります)カテゴリごとに、0 1 2)を使用して、create_img_dbフォルダーに配置します。

ファイル名をtxtファイルに取得するPythonプログラム:(パスを自分のパスに変更します) 

import os

def ListFilesToTxt(dir, file, wildcard, recursion):
    exts = wildcard.split(" ")
    files = os.listdir(dir)
    for name in files:
        fullname = os.path.join(dir, name)
        if (os.path.isdir(fullname) & recursion):
            ListFilesToTxt(fullname, file, wildcard, recursion)
        else:
            for ext in exts:
                if (name.endswith(ext)):
                    file.write(name + "\n")
                    break

def Test():

    dir = "D:/images/total"

    outfile = "D:/images/total/imgName.txt"
    wildcard = ".txt .exe .dll .lib .bmp"

    file = open(outfile, "w")
    if not file:
        print ("cannot open the file %s for writing" % outfile)
    ListFilesToTxt(dir, file, wildcard, 1)

    file.close()

Test()

 

3. create_db.sh(D:\ software_engineer \ caffe-master \ create_img_db)を変更して実行し、lmdb形式に変換します。同時に、イメージサイズを変換し、順序を入れ替えます

(私は126 * 82データの使用を開始しました。テストの最後に、opencvはエラーを報告しましたが、解決できませんでした。後で、ここで32 * 32に変更されました。私の簡単な例では、画像を減らしても精度に影響しませんでした。さらに、 、最終テスト中に画像を変更する必要はありません)

4.画像の平均値を計算します(このステップは実行できません。実行しませんでした)。

5. caffe-master \ examples \ testImgでcaffeファイル(train_val.prototxt、solver.prototxt、deploy.prototxt)を準備し、内部のパラメーターを変更します

6. d / software_engineer / caffe-master / Build / x64 / Releaseフォルダーをトレーニングして、コマンドラインを開きます(右クリック、ここでgit bash)。

执行./caffe.exe train --solver = D:/software_engineer/caffe-master/examples/testImg/solver.prototxt

7.テスト(3つの方法)

1. opencv3.3 DNNモジュール(使いやすい)、コードは次のブログにありますhttps://blog.csdn.net/sinat_41852207/article/details/88197593

2.(カフェにはテスト分類ツールが付属しています)

3. Pythonプログラムを使用する

4.c ++インターフェイス

 

 

元の記事を59件公開 いいね46 30,000回以上訪問

おすすめ

転載: blog.csdn.net/sinat_41852207/article/details/88194744