Compare commits

...

3 Commits

Author SHA1 Message Date
2a185affc3 更新cls的推理修复 2026-01-08 17:42:25 +08:00
d5457e02ca 更新最新直接用point_diff_main 2026-01-08 17:38:48 +08:00
ce061d7840 更新最新直接用point_diff_main 2026-01-08 17:25:14 +08:00
10 changed files with 10 additions and 9 deletions

View File

@ -5,10 +5,10 @@ from ultralytics import YOLO
# ====================== 用户配置 ====================== # ====================== 用户配置 ======================
#MODEL_PATH = '/home/hx/yolo/ultralytics_yolo11-main/runs/train/exp_ailai2/weights/best.pt' #MODEL_PATH = '/home/hx/yolo/ultralytics_yolo11-main/runs/train/exp_ailai2/weights/best.pt'
MODEL_PATH = 'best.pt' MODEL_PATH = 'pointn.pt'
IMAGE_SOURCE_DIR = '/media/hx/04e879fa-d697-4b02-ac7e-a4148876ebb0/dataset/1/20251226' # 验证集图片目录 IMAGE_SOURCE_DIR = '/media/hx/04e879fa-d697-4b02-ac7e-a4148876ebb0/dataset/1/test' # 验证集图片目录
LABEL_DIR = '/media/hx/04e879fa-d697-4b02-ac7e-a4148876ebb0/dataset/1/20251226' # 标签目录(与图片同名 .txt LABEL_DIR = '/media/hx/04e879fa-d697-4b02-ac7e-a4148876ebb0/dataset/1/test' # 标签目录(与图片同名 .txt
OUTPUT_DIR = '/media/hx/04e879fa-d697-4b02-ac7e-a4148876ebb0/dataset/1/20251226/output_images' OUTPUT_DIR = '/media/hx/04e879fa-d697-4b02-ac7e-a4148876ebb0/dataset/1/test/output_images'
IMG_EXTENSIONS = {'.png', '.jpg', '.jpeg', '.bmp', '.tiff', '.tif', '.webp'} IMG_EXTENSIONS = {'.png', '.jpg', '.jpeg', '.bmp', '.tiff', '.tif', '.webp'}

View File

@ -46,7 +46,7 @@ def init_rknn_model(model_path):
ret = rknn_lite.load_rknn(model_path) ret = rknn_lite.load_rknn(model_path)
if ret != 0: if ret != 0:
raise RuntimeError(f'Load model failed: {ret}') raise RuntimeError(f'Load model failed: {ret}')
ret = rknn_lite.init_runtime(core_mask=RKNNLite.NPU_CORE_0) ret = rknn_lite.init_runtime()
if ret != 0: if ret != 0:
raise RuntimeError(f'Init runtime failed: {ret}') raise RuntimeError(f'Init runtime failed: {ret}')
_global_rknn_instance = rknn_lite _global_rknn_instance = rknn_lite

View File

@ -37,7 +37,7 @@ def init_rknn_once(model_path):
print(f"[ERROR] Failed to load RKNN: {ret}") print(f"[ERROR] Failed to load RKNN: {ret}")
_rknn_instance = None _rknn_instance = None
return None return None
ret = _rknn_instance.init_runtime(core_mask=RKNNLite.NPU_CORE_0) ret = _rknn_instance.init_runtime()
if ret != 0: if ret != 0:
print(f"[ERROR] Failed to init RKNN runtime: {ret}") print(f"[ERROR] Failed to init RKNN runtime: {ret}")
_rknn_instance = None _rknn_instance = None
@ -173,8 +173,8 @@ def visualize_result(image, keypoints, bbox, fixed_point, offset_info, save_path
# ====================== 主函数 ====================== # ====================== 主函数 ======================
def calculate_offset_from_image(image_path, visualize=False): def calculate_offset_from_image(orig, visualize=False):
orig = cv2.imread(image_path)
if orig is None: if orig is None:
return {'success': False, 'message': f'Failed to load image: {image_path}'} return {'success': False, 'message': f'Failed to load image: {image_path}'}
@ -213,7 +213,8 @@ def calculate_offset_from_image(image_path, visualize=False):
# ====================== 示例调用 ====================== # ====================== 示例调用 ======================
if __name__ == "__main__": if __name__ == "__main__":
image_path = "11.jpg" image_path = "11.jpg"
result = calculate_offset_from_image(image_path, visualize=False) orig = cv2.imread(image_path)
result = calculate_offset_from_image(orig, visualize=False)
if result['success']: if result['success']:
print(f"Center point: ({result['cx']:.1f}, {result['cy']:.1f})") print(f"Center point: ({result['cx']:.1f}, {result['cy']:.1f})")
print(f"Offset: DeltaX={result['dx_mm']:+.2f} mm, DeltaY={result['dy_mm']:+.2f} mm") print(f"Offset: DeltaX={result['dx_mm']:+.2f} mm, DeltaY={result['dy_mm']:+.2f} mm")