import tkinter as tk
from tkinter import filedialog
from ultralytics import YOLO
from PIL import Image, ImageTk
# 创建GUI应用程序窗口
root = tk.Tk()
root.title("行为分类检测")
# 创建函数来进行行为分类检测并显示结果
def perform_classification():
# 选择图片文件
file_path = filedialog.askopenfilename(filetypes=[("JPEG files", "*.jpg")])
if file_path:
# 加载图片并进行行为分类推理
model = YOLO(r'E:\ultralytics-mainmg\runs\classify\train5\weights\last.pt')
results = model(file_path, save=False)
# 显示推理结果
result_text = "推理结果: \n\n"
print(results)
for result in results:
#print(result)
behavior_names = result.names
behavior_probs = result.probs
print(behavior_probs)
top1_prediction = behavior_probs.top1
#result_text += "行为名称: {}\n概率: {}\n\n".format(behavior_names, behavior_probs)
result_text += "行为名称: {}\n概率: {}\n最优预测值: {}\n\n".format(behavior_names, behavior_probs,
behavior_names[top1_prediction])
result_label.config(text=result_text)
# 显示所选图片
img = Image.open(file_path)
img.thumbnail((400, 400))
img_tk = ImageTk.PhotoImage(img)
img_label.config(image=img_tk)
img_label.image = img_tk
# 创建按钮,点击按钮时选择图片并进行行为分类检测
classify_button = tk.Button(root, text="选择图片并开始推理", command=perform_classification)
classify_button.pack(pady=20)
# 创建标签用于显示推理结果
result_label = tk.Label(root, text="", justify="left")
result_label.pack(pady=20)
# 创建标签用于显示图片
img_label = tk.Label(root)
img_label.pack(pady=20)
# 运行应用程序
root.mainloop()
yolov8分类ui 简单版
最新推荐文章于 2024-05-18 14:47:53 发布