Compare commits
3 Commits
5e859c4f95
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 2a185affc3 | |||
| d5457e02ca | |||
| ce061d7840 |
@ -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'}
|
||||||
|
|||||||
@ -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
|
||||||
|
|||||||
@ -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")
|
||||||
|
|||||||
Reference in New Issue
Block a user