#!/usr/bin/env python3 # -*- coding: utf-8 -*- import cv2 import os import sys # 添加项目根目录到Python路径 current_dir = os.path.dirname(os.path.abspath(__file__)) project_root = os.path.dirname(current_dir) sys.path.append(project_root) from utils.detect_dual_track_lines import auto_detect_dual_track_lines def test_images(): test_dir = 'res/path/dual' results = [] for img_file in sorted(os.listdir(test_dir)): if img_file.endswith('.png'): img_path = os.path.join(test_dir, img_file) print(f'\n处理图片: {img_path}') img = cv2.imread(img_path) result = auto_detect_dual_track_lines(img, observe=False, save_log=True) if result[0] is not None: print(f' 检测成功! 偏差: {result[0]["deviation"]}px, 石板路模式: {result[0]["stone_path_mode"]}') results.append((img_file, True, result[0]["deviation"])) else: print(f' 检测失败!') results.append((img_file, False, None)) print('\n检测结果汇总:') success_count = 0 for img_file, success, deviation in results: status = '成功' if success else '失败' if success: success_count += 1 dev_info = f'偏差: {deviation}px' if deviation is not None else '' print(f'{img_file}: {status} {dev_info}') success_rate = (success_count / len(results)) * 100 if results else 0 print(f'\n总成功率: {success_rate:.2f}% ({success_count}/{len(results)})') if __name__ == "__main__": test_images()