質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Keras

Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

3回答

1040閲覧

初めての機械学習に使うデータセットについての質問(実務)

NS78

総合スコア11

Keras

Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/09/10 03:15

解決したいこと

お菓子を生産ラインを自動化するため、お菓子に欠けがあるかどうか判定するためのソフトウェアを開発することになり、画像処理及び機械学習が素人なので現在を勉強しています。深層学習で判別させるようと考えておりまして、単純に定点観測し、下記の画像のように欠けがあるかないかの判定を行うだけです。

■欠けなし
イメージ説明

■欠けあり
イメージ説明

データセットについての質問

欠けがあるかないかの判定は赤枠の列のみ判定したく、他の列に欠けがあるかどうかは考慮しません。取り合えず、欠けのない写真、欠けのある写真を撮影しまくっているのですが、こういった場合、モデルに与える画像データはOpenCVなどで赤枠の列のみトリミングして取り出して、正解ラベル(欠けなし)と不正解ラベル(欠けなし)と分けた方が良いのでしょうか?

それとも他の列に欠けがあったとしても赤枠の列に欠けがなければ正解ラベルとし、赤枠列のみ欠けがある場合は不正解ラベルとして学習させた方が良いのでしょうか?

アルゴリズムの選定についての質問

アルゴリズムを全て理解しているわけでなく、取敢えず、参考書に記述されていた、KerasのSequentialモデルから試してみようかと思っておりますが、今回のように定点観測でバックグランドがほぼ変わらないような画像で、小さな変化だけで判定するような場合はどういった方法が最適でしょうか?

申し訳ございません。本来は自分で試行錯誤しながら最適解を見つけていくものだとは思いますが、何かアドバイスだけでもいただけると助かります。

お忙しいところ恐縮ですがご意見いただけると幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

私なら、以下のことを試してみます。

  1. あとの輪郭検出処理を行いやすいようにお菓子の乗っている台の色を赤か緑のようなお菓子とは極端に違う色に塗る。
  2. 赤枠内の画像で輪郭検出を行い、それぞれの輪郭の中の面積を抽出する。(これは簡単)
  3. それぞれの輪郭の面積が期待される面積の最小値よりも小さいものを欠けがあるお菓子と判断する。

この方が開発は早いでしょうし、精度もかなり良いと思います。

投稿2021/09/10 10:16

ppaul

総合スコア24666

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

NS78

2021/09/14 06:41

返信遅れまして申し訳ございません。 ご回答ありがとうございます。 1:勝手に黒がよいと思っておりましたが、赤や緑でも試してみます。 2,3:座標指定し、赤枠のみを抽出し、輪郭を抽出できるようにしてみました。これから、面積を計算してみて、どれくらいの精度で良/不良判定できるか試してみたいと思います。 貴重なご意見ありがとうございました。 大変助かります。
fana

2021/09/14 07:35 編集

どんな欠けを扱うのか(=どんな物は扱わなくてもよいのか)が明確になっていればよいのですが. 例示されているような,輪郭が明らかに変わるような欠け方だけを扱うのであれば,輪郭形状由来の情報で判定できるでしょう. 逆に言えば,そういう方法では 例えば,ど真ん中に浅い穴(=欠け)があるような輪郭自体は元の円形のままな不良品は扱えない可能性がありますね. (ところで,このお菓子は何なの? すごい美味しそうなんだけど)
guest

0

僕なら、画像データは赤枠の中からお菓子1つ1つを抽出したものにしますね。
赤枠で固定で切り出して、後は物体検出で切り出します。
機械学習は万能ではないので、問題は簡単な方がやりやすいはずです。

あとは、良/不良の画像を沢山あつめて学習させればいいと思います。方式を選ぶのは、速度と精度のバランスで。

投稿2021/09/10 04:34

TakaiY

総合スコア12765

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

NS78

2021/09/14 06:38

返信遅れまして申し訳ございません。 ご回答ありがとうございます。 固定して切り出すように致しました。 内容承知いたしました。先ずはたくさん画像データを集め、方法は試行錯誤して選定したいと思います。
guest

0

機械学習関連は素人ですので,有効なアドバイスとなるかどうかわかりませんが,

まずは「機械学習無しで」どこまで対応できるかを検討されてみてはどうでしょうか?
それの結果として

AとBとCあたりの処理はOKだが,Dが厳しい!「Dのとこはもう機械学習に頼るしか!」となったら,そこの問題(D)を学習機で扱う,という感じで.

なんだろう,話を絞り込むというか.
何がINで何がOUTか とかが明確になるのではないかな,と.

投稿2021/09/10 03:38

fana

総合スコア11658

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

NS78

2021/09/14 06:36 編集

返信遅れまして申し訳ございません。 ご回答ありがとうございます。 アドバイスありがとうございます。 もう少し明確に絞り込んでみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問