お客様: 大手化学メーカー様
ご依頼内容
- 回転する被写体を撮影した動画から、表面の全周を1枚に開いた展開画像を作りたい、というご相談。
- 表面に現れる線状の欠陥を、自動で検出して、数値で残したい。
- まずはGUIを付けず、ロジック中心のコードとして受け取りたい。
- 初期の評価で見通しを立てたうえで、現場の監視に使える形まで育てたい。
課題
- 回転の速度と、曲面の見かけの寸法を補正して、全周の画像をつなぐこと。
- 帯を切り出す周期に由来する、継ぎ目と縞模様を抑えること。
- 焦点距離、表面の反射、照明のむらが一定しない撮影条件でも、処理を成り立たせること。
- 線状の欠陥を、学習データを必要としない軽量な処理で検出し、実カメラの入力にも対応すること。
ソリューション
- 動画中の複数のマーカーの通過から、1周あたりのフレーム数を推定した。
- 各フレームから曲面上の帯を切り出し、弧長に合わせて補正しながら、順に連結した。
- 曲面の見かけの長さを余弦で補正し、真の弧長に合わせて、帯の画像をリサイズした。
- 隣接する帯を重ねてブレンドし、周波数解析により、周期的な継ぎ目の成分を除去した。
- 撮影に立ち会い、照明と反射の条件を確認したうえで、処理の前提を決めた。
- 線状の欠陥は、本来まっすぐな線からのずれと捉え、線を水平に補正して、1次元のプロファイルに変換した。
- プロファイルに最小二乗で基準の直線を当て、その残差のピークから、欠陥の本数と位置を検出した。
- 深層学習を使わず、直線からのずれを、現場で意味を説明できる統計量として扱った。
- 静止画、動画、実カメラの入力に対応し、統計値を逐次CSVに保存した。
- カメラの校正と、シリアル通信による信号の受信を追加し、入力のモードを切り替えられるようにした。



結果
- 専用の機構を使わない簡易な撮影の動画から、表面全周の展開画像を生成できるようになった。
- 線状欠陥の本数、位置、絶対残差和、平均二乗誤差をCSVに出力し、目視に頼っていた表面の評価を、数値で比較できるようにした。
- 実カメラによる実時間の動作と、装置との連携まで対応し、監視の用途にも使える形になった。
- 展開画像の作成と、線状欠陥の検出を独立した処理としたため、用途に応じて別々に実行できるようになった。
ひとこと
- 回転する物体の表面を1枚に開く処理は、撮影の幾何をどこまで補正するかで、結果が変わります。回転の速度、曲面の見かけの寸法、切り出しの周期といった、画像そのものには写っていない条件を、順に打ち消していく必要があります。
- 撮影の条件と画像処理の両方を見ないと、うまくいかない原因を切り分けられないので、光学の知識も持っている人が、現場の条件から一緒に詰めるのが良いと思います。
- 本件では、学習データを集めることよりも、直線からのずれという説明できる指標で、欠陥の本数と位置を数えられることを優先しました。判定の根拠を現場で説明する必要がある検査では、こちらの方が扱いやすいと考えています。
- 「見た目では分かる欠陥を、数値として残したい」というご相談は、検査の現場からよくいただきます。撮影条件の検討から、アルゴリズムの実装、実時間の装置連携までを、一式でお引き受けしています。
お問い合わせ
開発事例にご興味ありましたら、お気軽にお問い合わせ下さい。
下記の、「今すぐお問い合わせ」をクリックして、フォームにご記入下さい。
早急に回答致します。


