45 lines
1.4 KiB
Python
45 lines
1.4 KiB
Python
import ktc
|
|
import os
|
|
import shutil
|
|
import subprocess
|
|
|
|
# 設定 `.bie` 和 `.nef` 的存放目錄
|
|
onnx_dir = "runs/train/exp24/weights/"
|
|
bie_file = os.path.join(onnx_dir, "input.kdp720.scaled.bie") # 確保 `.bie` 路徑正確
|
|
|
|
# 確保 `.bie` 檔案存在
|
|
if not os.path.exists(bie_file):
|
|
raise FileNotFoundError(f"❌ Error: BIE file not found at {bie_file}")
|
|
|
|
print(f"✅ Found BIE file: {bie_file}")
|
|
|
|
# 初始化 ModelConfig
|
|
km = ktc.ModelConfig(20008, "0001", "720", bie_path=bie_file)
|
|
|
|
# 執行 `.nef` 轉換
|
|
nef_model_path = ktc.compile([km])
|
|
|
|
# 打印出 `.nef` 生成的路徑
|
|
print(f"🔍 Generated NEF file at: {nef_model_path}")
|
|
|
|
# 確保 `.nef` 轉換成功
|
|
if not nef_model_path or not os.path.exists(nef_model_path):
|
|
raise RuntimeError(f"❌ Error: NEF model was not generated at {nef_model_path}")
|
|
|
|
# 確保目標資料夾存在
|
|
os.makedirs(onnx_dir, exist_ok=True)
|
|
|
|
# 移動 `.nef` 到指定資料夾
|
|
nef_save_path = os.path.join(onnx_dir, os.path.basename(nef_model_path))
|
|
shutil.copy(nef_model_path, nef_save_path)
|
|
|
|
# **立即檢查 `.nef` 是否真的存在**
|
|
if os.path.exists(nef_save_path):
|
|
print(f"\n✅ NEF file successfully saved to: {nef_save_path}")
|
|
else:
|
|
raise RuntimeError(f"❌ Error: NEF file NOT found in {nef_save_path} after copying!")
|
|
|
|
# **執行 `ls` 指令來確認 Python 內部真的看到 `.nef`**
|
|
print("\n🔍 Listing files in target directory:")
|
|
subprocess.run(["ls", "-lh", onnx_dir])
|