Phase 11
This commit is contained in:
commit
c5bcb95d74
172 files changed
+9487
No files matched your search
@@ -0,0 +1,302 @@
|
||||
application:
|
||||
name: pedestrian-signage-system
|
||||
version: "0.11.0"
|
||||
window_name: "Pedestrian Detection"
|
||||
exit_key: "q"
|
||||
screenshot_key: "s"
|
||||
pause_key: "p"
|
||||
experiment:
|
||||
experiment_id: phase1_default
|
||||
location: unknown
|
||||
operator: unknown
|
||||
notes: ""
|
||||
input:
|
||||
type: camera
|
||||
camera_id: 0
|
||||
video_path: null
|
||||
width: 1280
|
||||
height: 720
|
||||
fps: 30
|
||||
backend: auto
|
||||
horizontal_flip: false
|
||||
max_consecutive_read_failures: 5
|
||||
detector:
|
||||
model_path: yolo11n.pt
|
||||
device: auto
|
||||
confidence_threshold: 0.40
|
||||
iou_threshold: 0.50
|
||||
image_size: 640
|
||||
person_class_id: 0
|
||||
max_detections: 30
|
||||
half_precision: false
|
||||
use_agnostic_nms: false
|
||||
tracker:
|
||||
enabled: true
|
||||
type: bytetrack
|
||||
track_high_thresh: 0.50
|
||||
track_low_thresh: 0.10
|
||||
new_track_thresh: 0.60
|
||||
match_thresh: 0.80
|
||||
track_buffer_frames: 30
|
||||
min_confirmed_frames: 3
|
||||
max_missed_frames: 30
|
||||
fuse_score: true
|
||||
track_management:
|
||||
trajectory_max_points: 120
|
||||
direction_window_points: 5
|
||||
minimum_direction_displacement_pixels: 20
|
||||
region_entry_confirm_frames: 2
|
||||
region_exit_confirm_frames: 3
|
||||
minimum_visible_frames_for_count: 5
|
||||
minimum_duration_sec_for_count: 0.3
|
||||
require_region_entry_for_count: true
|
||||
require_trigger_crossing_for_count: true
|
||||
crossing:
|
||||
enabled: true
|
||||
count_once_per_track: true
|
||||
deadband_pixels: 8
|
||||
minimum_displacement_pixels: 15
|
||||
minimum_track_points: 3
|
||||
require_confirmed_track: true
|
||||
tracking_logging:
|
||||
enabled: true
|
||||
log_frame_tracks: true
|
||||
log_events: true
|
||||
log_summaries: true
|
||||
flush_interval_frames: 30
|
||||
directory: data/logs/tracking
|
||||
face:
|
||||
enabled: true
|
||||
backend: mediapipe
|
||||
process_every_n_frames: 1
|
||||
max_persons_per_frame: 3
|
||||
require_confirmed_track: true
|
||||
process_only_inside_region: false
|
||||
roi_height_ratio: 0.60
|
||||
roi_expand_ratio: 0.20
|
||||
min_roi_width: 40
|
||||
min_roi_height: 40
|
||||
static_image_mode: false
|
||||
max_num_faces: 1
|
||||
refine_landmarks: true
|
||||
min_detection_confidence: 0.40
|
||||
min_tracking_confidence: 0.40
|
||||
head_pose:
|
||||
enabled: true
|
||||
method: solvepnp
|
||||
smoothing_enabled: true
|
||||
smoothing_method: ema
|
||||
ema_alpha: 0.4
|
||||
max_abs_angle: 120.0
|
||||
face_logging:
|
||||
enabled: true
|
||||
log_frame_faces: true
|
||||
log_summaries: true
|
||||
flush_interval_frames: 30
|
||||
directory: data/logs/face
|
||||
turn_detection:
|
||||
enabled: true
|
||||
signage_yaw_direction: positive
|
||||
baseline_strategy: first_valid
|
||||
baseline_window_sec: 0.8
|
||||
baseline_min_samples: 3
|
||||
subtle_threshold_deg: 10.0
|
||||
weak_threshold_deg: 20.0
|
||||
medium_threshold_deg: 35.0
|
||||
strong_threshold_deg: 50.0
|
||||
min_subtle_duration_sec: 0.20
|
||||
min_turn_duration_sec: 0.30
|
||||
max_pose_gap_sec: 0.30
|
||||
min_pose_samples_for_evaluation: 5
|
||||
min_face_detection_rate_for_evaluation: 0.20
|
||||
min_pose_estimation_rate_for_evaluation: 0.20
|
||||
face_appearance_enabled: true
|
||||
face_missing_before_appearance_sec: 0.30
|
||||
weak_or_higher_is_turn: true
|
||||
turn_logging:
|
||||
enabled: true
|
||||
log_frame_turns: true
|
||||
log_events: true
|
||||
log_summaries: true
|
||||
flush_interval_frames: 30
|
||||
directory: data/logs/turn
|
||||
audio:
|
||||
enabled: true
|
||||
backend: pygame
|
||||
file_path: assets/audio/prompt.wav
|
||||
volume: 0.8
|
||||
overlap_policy: skip
|
||||
voice_prompt:
|
||||
enabled: true
|
||||
mode: prompt
|
||||
trigger_strategy: trigger_line_crossing
|
||||
require_confirmed_track: true
|
||||
require_inside_region: true
|
||||
skip_if_already_turned: true
|
||||
one_prompt_per_track: true
|
||||
global_cooldown_sec: 3.0
|
||||
minimum_track_age_sec: 0.3
|
||||
response_window_sec: 3.0
|
||||
fixed_position_axis: x
|
||||
fixed_position_value: 640
|
||||
fixed_position_direction: decreasing
|
||||
voice_logging:
|
||||
enabled: true
|
||||
log_decisions: true
|
||||
log_events: true
|
||||
log_summaries: true
|
||||
flush_interval_frames: 30
|
||||
directory: data/logs/voice
|
||||
person_state:
|
||||
enabled: true
|
||||
min_track_duration_sec: 0.5
|
||||
require_trigger_crossing_for_completion: false
|
||||
require_voice_eligibility_for_voice_analysis: true
|
||||
mark_not_evaluable_as_excluded: false
|
||||
finalize_on_track_lost: true
|
||||
keep_completed_state_after_response: true
|
||||
person_state_logging:
|
||||
enabled: true
|
||||
log_frame_states: true
|
||||
log_events: true
|
||||
log_summaries: true
|
||||
flush_interval_frames: 30
|
||||
directory: data/logs/person_state
|
||||
unified_logging:
|
||||
enabled: true
|
||||
directory: data/logs/unified
|
||||
log_unified_events: true
|
||||
log_person_analysis_table: true
|
||||
log_session_summary: true
|
||||
log_consistency_issues: true
|
||||
flush_interval_frames: 30
|
||||
include_tracking_events: true
|
||||
include_turn_events: true
|
||||
include_voice_events: true
|
||||
include_person_state_events: true
|
||||
include_face_events: false
|
||||
important_events_only: false
|
||||
camera_position_note: ""
|
||||
run_consistency_checks: true
|
||||
analysis:
|
||||
enabled: true
|
||||
input_directory: data/logs/unified
|
||||
output_directory: data/analysis
|
||||
recursive: true
|
||||
include_prompt_condition: true
|
||||
include_control_condition: true
|
||||
valid_voice_analysis_only: true
|
||||
response_level_threshold: weak
|
||||
response_rate_test: auto
|
||||
numeric_test: mannwhitney
|
||||
yaw_metric_denominator: valid_turn_analysis
|
||||
generate_plots: true
|
||||
overwrite_outputs: true
|
||||
alpha: 0.05
|
||||
gui:
|
||||
enabled: false
|
||||
default_config_path: config/experiment.yaml
|
||||
default_analysis_input: data/logs/unified
|
||||
default_analysis_output: data/analysis
|
||||
preview_max_fps: 15
|
||||
remember_last_paths: false
|
||||
show_opencv_window_when_gui: false
|
||||
auto_run_analysis_after_experiment: false
|
||||
experiment_protocol:
|
||||
default_output_markdown: docs/experiment_protocol.md
|
||||
default_output_yaml: data/experiment_notes/experiment_protocol.yaml
|
||||
voice_prompt_text: "こんにちは。こちらをご覧ください。"
|
||||
privacy_note: "顔認証・個人識別は行わず、track_idは実行中だけの一時IDとして扱う。"
|
||||
planned_session_duration_min: 10
|
||||
quality_check:
|
||||
enabled: true
|
||||
min_valid_voice_analysis_rate: 0.5
|
||||
max_not_evaluable_rate: 0.4
|
||||
max_no_pose_rate: 0.4
|
||||
require_prompt_and_control: true
|
||||
require_camera_position_note: true
|
||||
require_plots: false
|
||||
pilot_report:
|
||||
enabled: true
|
||||
output_markdown: data/analysis/pilot_report.md
|
||||
presentation_summary:
|
||||
enabled: true
|
||||
output_markdown: data/analysis/midterm_summary.md
|
||||
pilot_diagnostics:
|
||||
enabled: true
|
||||
target_valid_records_per_condition: 20
|
||||
min_valid_records_per_condition: 5
|
||||
min_valid_voice_analysis_rate: 0.5
|
||||
max_not_evaluable_rate: 0.4
|
||||
max_no_pose_estimated_rate: 0.4
|
||||
max_condition_valid_count_ratio: 2.0
|
||||
min_sessions_per_condition: 1
|
||||
require_camera_position_note: true
|
||||
ready_requires_prompt_and_control: true
|
||||
output_report: data/analysis/pilot_diagnostic_report.md
|
||||
output_metrics_csv: data/analysis/pilot_diagnostic_metrics.csv
|
||||
output_recommendations_csv: data/analysis/improvement_recommendations.csv
|
||||
output_session_quality_csv: data/analysis/session_quality_summary.csv
|
||||
calibration_history:
|
||||
enabled: true
|
||||
path: data/calibration_history/calibration_history.csv
|
||||
display:
|
||||
enabled: true
|
||||
show_bounding_boxes: true
|
||||
show_confidence: true
|
||||
show_detection_count: true
|
||||
show_fps: true
|
||||
show_timestamp: true
|
||||
show_frame_number: true
|
||||
show_evaluation_region: true
|
||||
show_trigger_line: true
|
||||
show_track_ids: true
|
||||
show_trajectories: true
|
||||
show_movement_direction: true
|
||||
show_tracking_counters: true
|
||||
trajectory_max_points: 30
|
||||
show_face_roi: true
|
||||
show_head_pose: true
|
||||
show_face_landmarks: false
|
||||
show_face_counters: true
|
||||
show_turn_status: true
|
||||
show_yaw_delta: true
|
||||
show_turn_counters: true
|
||||
show_voice_status: true
|
||||
show_voice_counters: true
|
||||
show_person_state: true
|
||||
show_person_state_counters: true
|
||||
resize_scale: 1.0
|
||||
evaluation_region:
|
||||
enabled: true
|
||||
coordinate_mode: normalized
|
||||
x1: 0.05
|
||||
y1: 0.05
|
||||
x2: 0.95
|
||||
y2: 0.95
|
||||
trigger_line:
|
||||
enabled: true
|
||||
orientation: vertical
|
||||
coordinate_mode: normalized
|
||||
position: 0.50
|
||||
logging:
|
||||
runtime_log_enabled: true
|
||||
detection_log_enabled: true
|
||||
log_every_frame: true
|
||||
log_empty_frames: true
|
||||
flush_interval_frames: 30
|
||||
runtime_log_directory: data/logs/runtime
|
||||
detection_log_directory: data/logs/detections
|
||||
output:
|
||||
save_video: false
|
||||
video_directory: data/output/videos
|
||||
video_codec: mp4v
|
||||
screenshot_directory: data/output/screenshots
|
||||
performance:
|
||||
skip_frames: 0
|
||||
fps_average_window: 30
|
||||
warn_fps_threshold: 10.0
|
||||
debug:
|
||||
enabled: false
|
||||
show_raw_model_output: false
|
||||
print_detections: false
|
||||
Reference in new issue
Block a user