如果将训练好的模型实时检测我的屏幕,并且在我的屏幕上进行打框? #14322
JackMikeLi
started this conversation in
General
Replies: 3 comments 2 replies
-
|
@JackMikeLi 你好!感谢你的提问 😊 要实现实时检测屏幕并直接在屏幕上显示预测结果,你可以使用OpenCV的 import cv2
import numpy as np
from ultralytics import YOLO
from mss import mss
# 加载自定义训练的YOLO模型
model = YOLO("path/to/your/custom_model.pt")
# 初始化屏幕捕获
sct = mss()
# 定义屏幕捕获区域
monitor = {"top": 0, "left": 0, "width": 1920, "height": 1080}
while True:
# 捕获屏幕
img = np.array(sct.grab(monitor))
# 转换颜色格式,从BGRA到BGR
img = cv2.cvtColor(img, cv2.COLOR_BGRA2BGR)
# 使用YOLO模型进行预测
results = model(img)
# 获取预测结果并绘制在图像上
annotated_img = results[0].plot()
# 显示带有预测框的屏幕内容
cv2.imshow("Screen Detection", annotated_img)
# 按下 'q' 键退出
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# 释放资源
cv2.destroyAllWindows()请确保你已经安装了 pip install mss这个代码会捕获整个屏幕,并使用YOLO模型进行实时检测,然后在屏幕上显示带有预测框的结果。如果你有任何进一步的问题或需要更多帮助,请随时告诉我们! |
Beta Was this translation helpful? Give feedback.
0 replies
-
|
非常感谢您的回复
运行之后会循环弹出如下图的窗口,这与我实际需求不符,再次请问您有何种办法能解决这类问题?非常感谢
~hero
***@***.***
…------------------ 原始邮件 ------------------
发件人: "ultralytics/ultralytics" ***@***.***>;
发送时间: 2024年7月10日(星期三) 晚上6:59
***@***.***>;
***@***.******@***.***>;
主题: Re: [ultralytics/ultralytics] 如果将训练好的模型实时检测我的屏幕,并且在我的屏幕上进行打框? (Discussion #14322)
@JackMikeLi 你好!感谢你的提问 😊
要实现实时检测屏幕并直接在屏幕上显示预测结果,你可以使用OpenCV的cv2.imshow函数来显示带有预测框的屏幕内容。以下是一个示例代码,展示如何使用YOLO模型对屏幕进行实时检测并显示结果:
import cv2 import numpy as np from ultralytics import YOLO from mss import mss # 加载自定义训练的YOLO模型 model = YOLO("path/to/your/custom_model.pt") # 初始化屏幕捕获 sct = mss() # 定义屏幕捕获区域 monitor = {"top": 0, "left": 0, "width": 1920, "height": 1080} while True: # 捕获屏幕 img = np.array(sct.grab(monitor)) # 转换颜色格式,从BGRA到BGR img = cv2.cvtColor(img, cv2.COLOR_BGRA2BGR) # 使用YOLO模型进行预测 results = model(img) # 获取预测结果并绘制在图像上 annotated_img = results[0].plot() # 显示带有预测框的屏幕内容 cv2.imshow("Screen Detection", annotated_img) # 按下 'q' 键退出 if cv2.waitKey(1) & 0xFF == ord('q'): break # 释放资源 cv2.destroyAllWindows()
请确保你已经安装了mss库,可以通过以下命令安装:
pip install mss
这个代码会捕获整个屏幕,并使用YOLO模型进行实时检测,然后在屏幕上显示带有预测框的结果。如果你有任何进一步的问题或需要更多帮助,请随时告诉我们!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
1 reply
-
|
非常感谢您的回复,问题已经解决,再次感谢您!
~hero
***@***.***
…------------------ 原始邮件 ------------------
发件人: "ultralytics/ultralytics" ***@***.***>;
发送时间: 2024年7月11日(星期四) 凌晨2:15
***@***.***>;
***@***.******@***.***>;
主题: Re: [ultralytics/ultralytics] 如果将训练好的模型实时检测我的屏幕,并且在我的屏幕上进行打框? (Discussion #14322)
你好 @JackMikeLi,
感谢你的反馈!要实现实时检测屏幕并直接在屏幕上显示预测结果,你可以使用OpenCV的cv2.imshow函数来显示带有预测框的屏幕内容。以下是一个示例代码,展示如何使用YOLO模型对屏幕进行实时检测并显示结果:
import cv2 import numpy as np from ultralytics import YOLO from mss import mss # 加载自定义训练的YOLO模型 model = YOLO("path/to/your/custom_model.pt") # 初始化屏幕捕获 sct = mss() # 定义屏幕捕获区域 monitor = {"top": 0, "left": 0, "width": 1920, "height": 1080} while True: # 捕获屏幕 img = np.array(sct.grab(monitor)) # 转换颜色格式,从BGRA到BGR img = cv2.cvtColor(img, cv2.COLOR_BGRA2BGR) # 使用YOLO模型进行预测 results = model(img) # 获取预测结果并绘制在图像上 annotated_img = results[0].plot() # 显示带有预测框的屏幕内容 cv2.imshow("Screen Detection", annotated_img) # 按下 'q' 键退出 if cv2.waitKey(1) & 0xFF == ord('q'): break # 释放资源 cv2.destroyAllWindows()
请确保你已经安装了mss库,可以通过以下命令安装:
pip install mss
这个代码会捕获整个屏幕,并使用YOLO模型进行实时检测,然后在屏幕上显示带有预测框的结果。如果你有任何进一步的问题或需要更多帮助,请随时告诉我们!
另外,如果你遇到任何问题,请提供一个最小可复现的示例代码,这将有助于我们更快地诊断和解决问题。你可以参考这个链接获取更多信息:https://docs.ultralytics.com/help/minimum_reproducible_example
希望这能帮助到你!😊
— Ultralytics Team
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
在使用自定义训练集得到的模型后,在我尝试将他实时检测自己的屏幕并进行打框标注时,由于代码会另外生成一个窗口test显示大框信息,然而我想让打框的预测结果直接显示在我的屏幕上,我想知道如何调整代码以以让模型对我的屏幕进行预测打框?
任何回复和反馈都是十分感激的!!!
Beta Was this translation helpful? Give feedback.
All reactions