第9回目の実例紹介になります。
1年半ぶりの今回は円形のワークに対するアプローチを紹介いたします。
形状抽出タスクには、円形状をチェックする機能が4つあります。
技術的に気になる方はこちら
円形状のチェック
円形度
- 円っぽい形をしているか判定
- 円周から求まる理想的な面積と実際の面積との比率
- 輪郭形状より面積が重要となるため凹凸の影響を受けにくい
真円度
- 真円との類似度を判定
- 外接円と内接円の直径の比率
- 輪郭形状の凹凸を検知しやすい
- 内接円/外接円の算出方法
- 最小二乗法
- 一般的な手法で傷や凹凸などのノイズに強い
- 最小領域
- 外接円を最小、内接円を最大にする手法で、傷や凹凸を検知しやすい
- 最大内接円
- 内接円を最大とする手法でで、外側に傷や凹凸がある時に検知しやすい
- 最小外接円
- 外接円を最小とする手法で、内側に傷や凹凸がある時に検知しやすい
- 最小二乗法
楕円の短径/長径
- 最小二乗法によるフィッテイングなので最も誤差が少ない部分を検出
- 短径を見ることで円の最も短い距離を測定
- 長径を見ることで円の最も長い距離を測定
う~ん、たくさんあって迷っちゃいますね…
文章を読んでも難しいと思うので、
以下のようなスプリングに対してそれぞれ試していきたいと思います。
下2つのスプリングが歪んでいるのでこれらを検知したいと思います。
正常
歪み小
歪み大
領域検出と形状抽出で歪んだスプリングを検出
-
スプリング検出用の領域検出を追加
高速化のため、グレー画像化及び前処理でサイズを1/4にしています。
-
スプリング領域のアノテーション及び学習
ここでは結果だけ表示します。
-
円形度用の形状抽出を追加
-
入力輪郭の入力タイプをスコアマップに変更(以降追加する形状抽出はすべてこの設定)
-
円形度を追加
円形度が上から0.97,0.90,0.55なので、歪みのみ検出できるように最大レートを0.82に設定
正常と歪み小の区別がつかなそうです。
歪み大は飛び出ている部分円周が伸びていて円っぽくないので、顕著に円形度が下がります。
-
真円度_最小二乗用の形状抽出を追加
-
真円度を追加して算出方法を最小二乗法に設定
真円度が上から0.94,0.79,0.64なので、歪みのみ検出できるように最大レートを0.80に設定
正常と歪み小も区別できそうです。
-
真円度_最小領域用の形状抽出を追加
-
真円度を追加して算出方法を最小領域に設定
真円度が上から0.96,0.94,0.72なので、歪みのみ検出できるように最大レートを0.95に設定
正常と歪み小の区別がつかなそうです。
-
真円度_最大内接円用の形状抽出を追加
-
真円度を追加して算出方法を最大内接円に設定
真円度が上から0.94,0.80,0.66なので、歪みのみ検出できるように最大レートを0.82に設定
正常と歪み小も区別できそうです。
-
真円度_最小外接円用の形状抽出を追加
-
真円度を追加して算出方法を最小外接円に設定
真円度が上から0.94,0.77,0.62なので、歪みのみ検出できるように最大レートを0.80に設定
正常と歪み小も区別できそうです。
-
楕円の短径用の形状抽出を追加
-
楕円の短径を追加
短径が上から454,402,396なので、歪みのみ検出できるように最大径を420に設定
正常と歪み小も区別できそうです。
-
楕円の長径用の形状抽出を追加
-
楕円の長径を追加
長径が上から464,463,458ですが、正常が463なのでもう区別が出来ません。
正常品を区別できるように最大径を462としますが、歪み大を検出することが出来ない状態です。
今回のケースを表でまとめると以下のような結果になりました。
正常 | 歪み小 | 歪み大 | 結果 | |
---|---|---|---|---|
円形度 | 0.97 | 0.90 | 0.55 | △ |
真円度-最小二乗法 | 0.94 | 0.79 | 0.64 | 〇 |
真円度-最小領域 | 0.96 | 0.94 | 0.72 | △ |
真円度-最大内接円 | 0.94 | 0.80 | 0.66 | 〇 |
真円度-最小外接円 | 0.94 | 0.77 | 0.62 | 〇 |
楕円の短径 | 454 | 402 | 390 | 〇 |
楕円の長径 | 463 | 464 | 458 | × |
今回のワークは円に対して圧がかかって変形しています。
そのため、真円度や楕円の短径が向いていそうですね。
変形は面積があまり変化しないので大きく形が変化しない限りは円形度では難しそうです。
バリや欠けの検出には真円度が向いていると思います。
領域そのものが増減してしまうケースには円形度が向いているかもしれません。
皆さんもこれを参考に是非色々試してみてください!
動画版もあります。