調整前に失敗を分類する
液位判定の不安定さは、画像処理前、境界選択中、処理結果の出力後に発生します。しきい値変更の前に元画像とイベント記録で失敗を分類します。観察できる境界を誤った液位に分類した状態、観察不能で確認へ回した状態、実行失敗、別のボトルへの結果対応を分けます。それぞれ修正方法が異なり、報告でも別に残します。Reviewは確認済みの充填不足ではなく、低い既定数値は空ボトルの証明ではありません。量産の症状と再現できる開発ケースを、現在のアルゴリズムに合う正解へ変更せず保持します。
同じ資料を正確に再処理する
固定した同じ元画像、ROI変換、処理版、正解区分を再処理し、処理自体が再現するかを調べます。画面の処理名だけでなく実際の入力前処理とランタイム識別を記録します。同じ資料で出力が変わる場合は、搬送を疑う前に自動前処理、版固定されていない依存関係、要求と結果の対応を確認します。保存画像は安定して新しいフレームだけが変わるなら、取得と材料条件を比較します。難しいフレームを隣の都合のよい画像に差し替えません。再処理は証拠の層を絞りますが、元画像が正しいボトルイベントを表す証明ではありません。
ボトル壁の説明を検証する
識別した空の対照ボトルを許容姿勢範囲で回転させ、撮影構成は保持します。液体なしで残る線は壁反射、成形継ぎ目、背景かもしれません。同じ容器設計の目的境界と比べます。次の対照比較では照明角度だけを変え、飽和領域を含む両元画像を残します。競合線が液体でなく壁へ追従するなら、コントラストしきい値で誤った面をさらに安定して選ぶだけかもしれません。光学修正は実際の低液位と通常の壁変動で試し、プレビューがきれいになっただけで採用しません。
壁の線と液面境界を分ける
明暗変化を液面と扱う前に、同じ容器幾何と空容器の対照を比較します。
- 元の全ボトル画像
- 定義した観察領域
- 競合する壁や反射の線
- 目的の可視液面境界
撮影時刻と液体の動きを分ける
設備で合意した静止・移動サンプル群を使い、容器の動きと液体の動きを分けます。トリガー時刻、実露光、搬送条件、液面が現れる領域を確認します。外側のボトルエッジが鮮明で内部面だけが動くなら一般的な画像ぶれとは別の調査を示唆しますが、それだけでは原因を特定しません。同じボトルを基準撮影イベントと提案イベントで比較し、正解区分を変えません。遅延画像も対象ボトルに対応する必要があります。静定の遅延が間隔変更でイベント対応を壊す場合があるため、中断と再開も確認します。
import math
state = result['rules']['Decision']
raw_number = result['number']
measurement_valid = (
state in ('Pass', 'Fail')
and result['geometry']['Validity'] == 'Valid'
and type(raw_number) in (int, float)
and math.isfinite(raw_number)
)
record = {
'image_id': source_image_id,
'workflow_revision': frozen_revision,
'raw_state': state,
'raw_number': raw_number,
'trusted_ratio': raw_number if measurement_valid else None,
}
# Diagnostic record only; missing fields raise errors. Validate event identities before integration.ROIと座標変更を確認する
カメラ移動、ROI改訂、画像拡縮、容器基準の変更で座標の基準が変わったかを調べます。局所ROIの可視高さ比は、高さや位置が異なるROIの比と直接比較できません。宣言領域を完全な元画像へ重ね、許容姿勢全体で目的境界が領域内に残るかを確認します。原点と寸法を診断記録に残します。境界が欠けていたら判定区間を緩めず、幾何や撮影で観察を回復します。校正は失われたピクセルを補わず、公称尺度は曲面壁越しの物理容量を成立させません。
妥当性と古い結果を確認する
数値、幾何、規則を要求と画像識別とともに確認します。確認した液位処理は曖昧または不足した境界をReviewにし、数値の既定値を有効測定として扱いません。UI、キャッシュ、下流対応が現在のイベント表示へ前ボトルの比を残していないかを調べます。試験環境で欠落・遅延結果を模擬し、明示的な非合格状態を保つかを確認します。下の診断記録は保存項目の説明であり、完全な連携実装ではありません。未知状態と実行エラーは定義した処理を使い、都合のよい液位区分へ自動変換しません。 信頼する比はPassまたはFail、幾何のValid、有限数値がすべて必要で、それ以外の状態には信頼する測定を持たせません。
診断記録表を保持する
失敗ごとに正解区分、全画像識別、イベント識別、ROI変換、処理版、実設定、型付き出力、疑う機構を記録します。切り分ける対照条件と説明を否定する観察も加えます。元の失敗出力を候補結果と並べ、未解決例も保持します。表は光学、時刻、座標、結果対応の確認を分け、普遍的なしきい値を定めません。Reviewと実行失敗は元の予定分母に含めます。選んだ画像の再処理成功だけで、実際のライン症状を生じた容器と運転条件の証拠を置き換えません。
| 失敗の兆候 | 切り分け条件 | 保存する証拠 |
|---|---|---|
| 空ボトルでも線が残る | 同じ設計と姿勢、変更しないカメラ | 全画像と競合境界の注記 |
| 搬送開始で変動する | 同じボトル、定義した静止・移動イベント | イベント時刻、露光、元フレーム |
| ROI改訂後に比が変わる | 同じ元画像へ両ROIを重ねる | ROI変換と元の座標基準 |
| 現在イベントが前結果を表示する | 試験環境で欠落・遅延結果を注入 | 非合格状態と要求・画像・結果識別 |
固定した群で修正を確認する
固定開発群で修正を確認してから候補を選び、その後に事前合意した限界で独立した受入資料を使います。低液位不良を隠す、未報告Reviewを増やす、古い画像を再利用することなく問題が改善したかを確かめます。変更構成を固定し、受け手が両挙動を再現できるよう基準を残します。境界が観察不能のままなら限界を保持し、別視点や測定原理を検討します。Deyi Visionは対応フローの証拠検討を支援できますが、この診断は配布ランタイムや量産設備を認証しません。可視液位の修正を容量の検証として示しません。
再現可能な原因確認
失敗を保存し、都合のよい合格フレームではなく管理した比較を使います。
- 失敗資料と正解を固定する
- 競合する説明を示す
- 切り分ける対照を試す
- 修正を確認するか未解決の限界を保持する
出典と技術資料
出典は、本記事の手法と限界を確認するための資料です。確認例は選定の参考であり、量産での受入判定には実際のサンプルによる証拠が必要です。
- Exposure TimeBasler確認日
- Triggered Image AcquisitionBasler確認日
- Deyi Vision Vision WorkbenchDeyi Vision確認日
部品と選定の参考資料
- machine vision software · 英語の参考資料
- マシンビジョン受け入れテストチェックリスト
- 自動外観検査
- マシンビジョンシステム
- バッテリータブ溶接高さ検査
- バルーフ ビジョンセンサ 代替
- データロジック バーコードリーダ 代替
- Banner Vision Sensor Alternative · 英語の参考資料
- 可視の組立検証で起きる失敗を切り分ける
- EAN-13 追跡:重複と読取欠落
- 可視液位検査のカメラ設定と撮影条件を確認する
- 可視液面境界の照明とROIを比較して設定する
- 混同行列で検査しきい値を設定する
- レーザープロファイルの基準面と欠測処理を確認する
- OCR ラベル照合:判読不能と誤文字
- 開封状態の包装内容検査に向けたカメラ設定
- 開いた包装内容の照明とROIを選ぶ手順
- 包装内容の誤った完全性判定を切り分ける
- 封口・接着剤外観:欠落の排錯
- SKU・色分選:チャンネルと変動の排錯
- 表面欠陥検査:誤警報の切り分け

