text_box — ANNOTATE text op

• Data kinds: image2d × text → image2d

• Call: import fullseye as fs; fs.ledger.text_box(img, text, xy, color='neutral', text_color=None, box_color=None, box_alpha=0.72, anchor='lt', pad=5, font_size=14, min_font_size=9, max_width=None, font_path=None, line_spacing=1.15, scheme='okabe_ito', min_contrast=2.0, border=0, border_color=None, style=None, wrap=True, bold=False, italic=False) (implementation को सीधे call करना हो तो import annotate; annotate.text_box(img, text, xy, color='neutral', text_color=None, box_color=None, box_alpha=0.72, anchor='lt', pad=5, font_size=14, min_font_size=9, max_width=None, font_path=None, line_spacing=1.15, scheme='okabe_ito', min_contrast=2.0, border=0, border_color=None, style=None, wrap=True, bold=False, italic=False), registry से लेना हो तो opsannotate.get("text_box"))

उपयोग

backing plate (अर्ध-पारदर्शी पट्टी) सहित text। बाहर निकलने पर चुपचाप काटा नहीं जाता, exception आता है।

Parameters

img : ndarray

(H,W) या (H,W,C), float [0,1]।

text : str

बनाई जाने वाली string।

xy : (x, y)

anchor की position (x=col, y=row, row नीचे की ओर)।

color : str or sequence

role name या RGB। text_color न दिया हो तो यही frame का रंग के रूप में

इस्तेमाल होता है, और text को पढ़ने में आसान default रंग मिलता है।

text_color, box_color : str/sequence or None

text का रंग और plate का रंग। None हो तो default (हल्का text × गहरी plate)। text का रंग None

होने पर, केवल तब जब हल्का default रंग वास्तव में नीचे दिखने वाले रंग के मुकाबले min_contrast से

नीचे जाए, अपने-आप गहरे text (plate के रंग) पर बदल जाता है -- ताकि plate के बिना

(box_alpha=0) सफ़ेद पृष्ठभूमि पर रखे ticks, colour bar और legend के labels

सफ़ेद में घुल न जाएँ। text_color स्पष्ट रूप से देने पर बदलाव नहीं होता

(रंग figure का अर्थ है, इसलिए मनमाने ढंग से नहीं बदला जाता; न पढ़ा जा सके तो exception)।

box_alpha : float

plate की opacity [0,1]। 0 हो तो plate नहीं बनती (tick labels के लिए)।

anchor : str

'lt','ct','rt','lm','cm','rm','lb','cb','rb' के 9 विकल्प।

pad : int

plate के अंदर का padding [px]।

max_width : int or None

text की wrap width। None हो तो 1 line ही रहती है।

wrap : bool

False हो तो wrap नहीं करता, 1 line में ही छोटा करके max_width में समाता है।

min_contrast : float

text और "वास्तव में उसके नीचे दिखने वाले रंग" के contrast ratio की निचली सीमा। इससे नीचे हो तो

ValueError (background में घुला text किसी को नहीं दिखता, इसलिए पास नहीं होने दिया जाता)।

सीमा (ईमानदारी से): तुलना plate के नीचे के औसत रंग से होती है, इसलिए

आधे सफ़ेद और आधे काले photo पर box_alpha=0 से रखने पर औसत

बीच का grey बन जाता है और जाँच पास हो जाती है (सफ़ेद हिस्से पर का text पढ़ा नहीं जाता)।

जहाँ पृष्ठभूमि अशांत हो, वहाँ box_alpha बढ़ाकर plate को असरदार बनाएँ --

यह जाँच "plate भूल गए" को पकड़ने के लिए है, और

"plate होने पर भी न पढ़ा जाए" तक की guarantee नहीं देती।

border : int

plate की frame line की मोटाई (0 पर frame नहीं)। रंग border_color या color है।

style : dict or None

frame line बनाने वाले imagedraw.draw_polyline को सीधे आगे भेजे जाने वाले arguments।

Returns

ndarray

समान shape का नया array।

Raises

ValueError

plate image से बाहर निकलती है / text नहीं समाता / contrast कम /

अज्ञात role name या anchor / negative padding।

उपयोग की विस्तृत guide

• figure_annotation family guide

पृष्ठभूमि guides (इस op के पीछे की physics और conventions)

• dataset_conventions — Training dataset के conventions — COCO / YOLO / VOC और visual inspection में सावधानियाँ

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• annotate_gallery — py -3.11 examples/annotate_gallery.py

• annotate_paper_tour — py -3.11 examples/annotate_paper_tour.py

• drawlist_deferred — py -3.11 examples/drawlist_deferred.py

• poc_active_contours — py -3.11 examples/poc_active_contours.py

• poc_agv_fleet — py -3.11 examples/poc_agv_fleet.py

• poc_air_hockey_intercept — py -3.11 examples/poc_air_hockey_intercept.py

• poc_ball_bounce — py -3.11 examples/poc_ball_bounce.py

• poc_beam_modal_video — py -3.11 examples/poc_beam_modal_video.py

• poc_cad_scan_deviation — py -3.11 examples/poc_cad_scan_deviation.py

• poc_camera_calibration — py -3.11 examples/poc_camera_calibration.py

• poc_camera_shake_deblur — py -3.11 examples/poc_camera_shake_deblur.py

• poc_connectome_across_worms — py -3.11 examples/poc_connectome_across_worms.py

• poc_crack_width_timeseries — py -3.11 examples/poc_crack_width_timeseries.py

• poc_ct_void_morphology — py -3.11 examples/poc_ct_void_morphology.py

• poc_dehazing — py -3.11 examples/poc_dehazing.py

• poc_dem_terrain — py -3.11 examples/poc_dem_terrain.py

• poc_diabolo_model_and_vision — py -3.11 examples/poc_diabolo_model_and_vision.py

• poc_dic_strain — py -3.11 examples/poc_dic_strain.py

• poc_driving_crossing — py -3.11 examples/poc_driving_crossing.py

• poc_driving_decisions — py -3.11 examples/poc_driving_decisions.py

• poc_driving_endless_map — py -3.11 examples/poc_driving_endless_map.py

• poc_driving_lateral — py -3.11 examples/poc_driving_lateral.py

• poc_driving_longitudinal — py -3.11 examples/poc_driving_longitudinal.py

• poc_driving_pass — py -3.11 examples/poc_driving_pass.py

• poc_driving_school — py -3.11 examples/poc_driving_school.py

• poc_driving_traffic — py -3.11 examples/poc_driving_traffic.py

• poc_driving_weather — py -3.11 examples/poc_driving_weather.py

• poc_emva1288_sensor — py -3.11 examples/poc_emva1288_sensor.py

• poc_eye_to_brain — py -3.11 examples/poc_eye_to_brain.py

• poc_focus_stacking — py -3.11 examples/poc_focus_stacking.py

• poc_food_cutting_measure — py -3.11 examples/poc_food_cutting_measure.py

• poc_granular_heap_repose — py -3.11 examples/poc_granular_heap_repose.py

• poc_graph_hierarchy_segmentation — py -3.11 examples/poc_graph_hierarchy_segmentation.py

• poc_interferometry_step — py -3.11 examples/poc_interferometry_step.py

• poc_kendama — py -3.11 examples/poc_kendama.py

• poc_leak_localization — py -3.11 examples/poc_leak_localization.py

• poc_lidar_terrain_change — py -3.11 examples/poc_lidar_terrain_change.py

• poc_livestock_body_volume — py -3.11 examples/poc_livestock_body_volume.py

• poc_machine_condition_fusion — py -3.11 examples/poc_machine_condition_fusion.py

• poc_malecns_activity_wave — py -3.11 examples/poc_malecns_activity_wave.py

• poc_measurement_system_analysis — py -3.11 examples/poc_measurement_system_analysis.py

• poc_mesh_quality_repair — py -3.11 examples/poc_mesh_quality_repair.py

• poc_motion_magnification — py -3.11 examples/poc_motion_magnification.py

• poc_multibeam_bathymetry — py -3.11 examples/poc_multibeam_bathymetry.py

• poc_panorama_drift — py -3.11 examples/poc_panorama_drift.py

• poc_particle_tracking — py -3.11 examples/poc_particle_tracking.py

• poc_peg_failure_recovery — py -3.11 examples/poc_peg_failure_recovery.py

• poc_peg_insertion_tactile — py -3.11 examples/poc_peg_insertion_tactile.py

• poc_photoelasticity — py -3.11 examples/poc_photoelasticity.py

• poc_powder_scoop_pour — py -3.11 examples/poc_powder_scoop_pour.py

• poc_print_warpage_risk — py -3.11 examples/poc_print_warpage_risk.py

• poc_pxrd_phase_peel — py -3.11 examples/poc_pxrd_phase_peel.py

• poc_registration_basin — py -3.11 examples/poc_registration_basin.py

• poc_river_surface_velocity — py -3.11 examples/poc_river_surface_velocity.py

• poc_rotation_invariance_audit — py -3.11 examples/poc_rotation_invariance_audit.py

• poc_rover_slip_risk_path — py -3.11 examples/poc_rover_slip_risk_path.py

• poc_segmentation_gauntlet — py -3.11 examples/poc_segmentation_gauntlet.py

• poc_stockpile_volume — py -3.11 examples/poc_stockpile_volume.py

• poc_strain_history — py -3.11 examples/poc_strain_history.py

• poc_structure_4d_deterioration — py -3.11 examples/poc_structure_4d_deterioration.py

• poc_superresolution_limits — py -3.11 examples/poc_superresolution_limits.py

• poc_swarm_obstacle_from_flow — py -3.11 examples/poc_swarm_obstacle_from_flow.py

• poc_table_tennis_bounce — py -3.11 examples/poc_table_tennis_bounce.py

• poc_table_tennis_rally_loop — py -3.11 examples/poc_table_tennis_rally_loop.py

• poc_table_tennis_spin — py -3.11 examples/poc_table_tennis_spin.py

• poc_tacscalib_sphere_lut — py -3.11 examples/poc_tacscalib_sphere_lut.py

• poc_template_tracking — py -3.11 examples/poc_template_tracking.py

• poc_timelapse_growth — py -3.11 examples/poc_timelapse_growth.py

• poc_traffic_counting — py -3.11 examples/poc_traffic_counting.py

• poc_ttc_rss — py -3.11 examples/poc_ttc_rss.py

• poc_world_terrain — py -3.11 examples/poc_world_terrain.py

• poc_wound_area_tracking — py -3.11 examples/poc_wound_area_tracking.py

• poc_xyt_event_surface — py -3.11 examples/poc_xyt_event_surface.py

वे अगले ops जिनसे type जुड़ता है (image2d को input के रूप में लेते हैं)

arrow · leader_line · label_points · crosshair · legend_box · color_bar · scale_bar · axes_frame

इसी category के (text)

measure_text


*Provenance: annotate.py — ANNOTATE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

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