やったこと
背景差分を利用して桃の領域を抽出しました。
(OpenCVのBackgroundSubtractorMOG関数を使用)



他の方法も検討しつつ、桃の領域で削れてしまった部分を抽出する方法と、影の部分を除去する方法を考えたいと思います。
今後の課題
・ファインチューニング用のプログラムの修正
(train・validationデータとtestデータで異なる桃からデータを選ぶようにする)
・桃の領域抽出について考える
やったこと
背景差分を利用して桃の領域を抽出しました。
(OpenCVのBackgroundSubtractorMOG関数を使用)
他の方法も検討しつつ、桃の領域で削れてしまった部分を抽出する方法と、影の部分を除去する方法を考えたいと思います。
今後の課題
・ファインチューニング用のプログラムの修正
(train・validationデータとtestデータで異なる桃からデータを選ぶようにする)
・桃の領域抽出について考える
やったこと
ファインチューニングの続きを行った。
評価はクロスバリデーションで行った。
・使用したモデル
EfficientNetB3とMLPを結合したモデル(元のモデル)
学習させる層はCNNの56層とMLPの全部の層
・ファインチューニングに使用したデータ
背景が黒色・緑色・段ボールの画像(23200枚)
糖度を平均値化したデータ
・評価結果
テストデータを8分割してクロスバリデーションで評価を行った。
ホールドアウトについては前回までと同じ方法で行った。
(8つのモデルのうち1つのモデルを使って評価)
評価方法 | MAE | RMSE | R2 |
---|---|---|---|
クロスバリデーション | 0.4890 | 0.5806 | 0.8324 |
ホールドアウト | 1.7434 | 2.3174 | -1.4641 |
クロスバリデーションの結果は背景が黒色のデータのみで学習した場合とさほど変わらなかった。
ホールドアウトの結果も前回までの結果とさほど変わらなかった。
今後の課題
・ファインチューニングの方針を考える
・桃の画像から桃の領域だけを抜き出す(背景差分で行う予定)
やったこと
ファインチューニングの続きを行なった。
・使用したモデル
背景が黒色のみの画像、糖度を平均値化したデータを使用して学習を行ったモデル
・ファインチューニングに使用したデータ
背景が緑色と段ボールの画像、糖度を平均値化したデータ
・評価結果
ー 背景が黒色・緑色のシート・段ボールのデータ計288セットを使用
ー それぞれ24エポック学習させた4つのモデルを評価して平均値を割り出した
ファインチューニングの方法 | MAE | RMSE | R2 |
---|---|---|---|
学習させる層を変えずに学習 | 1.8700 | 2.3644 | -1.5750 |
CNNの28層のみ学習 | 2.0658 | 2.5941 | -2.1216 |
MLPの最後の全結合層のみ学習 | 1.9848 | 2.4236 | -1.7476 |
CNN(28層)とMLP(最後の層)を学習 | 1.9862 | 2.5436 | -2.0011 |
結果としては、学習させる層を変えずに学習した場合に少し精度が良かったものの、どのパターンも評価結果にそれほど違いはなかった。
今後の課題
・2段階に分けずに、背景が黒い画像・緑色のシート・段ボールのデータセットをまとめて使用して再学習
やったこと
学習させる層を変更して2通りのファインチューニングを行った。
・使用したモデル
背景が黒色のみの画像、糖度を平均値化したデータを使用して学習を行ったモデル
・ファインチューニングに使用したデータ
背景が緑色と段ボールの画像、糖度を平均値化したデータ
CNNの上位28層と結合後のレイヤーのみ学習
・50エポックまでの学習過程
・評価結果
背景が黒色・緑色のシート・段ボールのデータ計288セットを使用して評価
MAE | MSE | R2 | |
昨年度 | 1.4862 | 1.9660 | -0.7930 |
今回 | 2.0658 | 2.5941 | -2.1216 |
MLPの最後の全結合層と結合後のレイヤーのみ学習
・40エポックまでの学習過程
・評価結果
背景が黒色・緑色のシート・段ボールのデータ計288セットを使用して評価
MAE | MSE | R2 | |
昨年度 | 1.4862 | 1.9660 | -0.7930 |
今回 | 1.6591 | 2.1330 | -1.1013 |
まとめ
学習させる層を変えた結果、どちらも誤差が大きくなった
今後の課題
どのようにファインチューニングを行っていくか考える