fullseye

random_defects — OPTICS scene op

使い方

部品にランダムな欠陥を作る(傷・割れ・ピット・しみ・打痕・異物)。

外観検査 AI の学習データはこれが本体。1 回の呼び出しで count 件を引き、 種類・位置・向き・大きさ・コントラスト・深さをすべて振る。seed を固定すれば 決定的なので、同じデータセットを再現できる。

kinds から選ぶ。表面の欠陥(scratch/crack/pits/blob/stain)は面の変調として 貼られ、foreign(異物)は部品の上に置かれた別の物体になる ―― 異物は影を 落として部品を隠すが傷は隠さない、という違いを型で分けている。

height_um は (最小, 最大) の深さ [µm]。albedo_defects=False にすると 色は一切変えず凹凸だけの欠陥になり、ドーム照明では消えて暗視野で立つ (=照明を選ぶ意味が出る、いちばん難しい学習データ)。

返り値 dict: part(欠陥を貼った部品)/ objects(異物のプリミティブ、 シーンにそのまま足す)/ labels(1 件ごとの種類・位置 [mm]・大きさ)。

ファミリ共通の入力契約(fail-closed)

optics の全 op は入力を検証してから計算する(黙って通さない):

詳しい使い方ガイド

背景知識ガイド(この op の手前にある物理・規約)

参考(サンプルデータ・文献)

実行できる例(この op を実際に呼ぶ検証済みサンプル)

型が繋がる次の op(table を入力に取れる)

abcd_matrix · wavefront_stats · paraxial_trace · seidel_coefficients · spot_stats · tolerance_analysis · wavefront_from_opd · spot_diagram

同カテゴリ(scene)

scene_material · scene_plane · scene_sphere · scene_box · scene_cylinder · surface_defect · surface_finish · scene_difference


Provenance: optscene.py — OPTICS operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.